/*-------------------- pc --------------------*/
/*---------- base > width:1440px ----------*/
.first_area{
	margin-bottom:124px;
}
.first_wrap{
	max-width:1120px;
	margin:0 auto;
	padding:0 20px;
	box-sizing:content-box;

	.text{
		margin-top:48px;

		p{
			font-family:"IBM Plex Sans JP", sans-serif;
			font-weight:500;
			font-size:16px;
			line-height:28px;
			text-align:center;
		}
	}
	.container{
		display:grid;
		gap:72px;
		margin:64px 0;

		.row{
			display:grid;
			grid-template-columns:repeat(2, 1fr);
			align-items:center;

			.img{
				img{
					width:100%;
				}
			}
			.box{
				padding:0 60px;

				h3{
					margin-bottom:21px;
					font-family:"IBM Plex Sans JP", sans-serif;
					font-weight:600;
					font-size:22px;
					line-height:33px;

					span{
						color:#c50018;
					}
				}
				p{
					font-family:"IBM Plex Sans JP", sans-serif;
					font-weight:500;
					font-size:16px;
					line-height:28px;

					&.note{
						margin-top:24px;
						font-size:14px;
						line-height:20px;
						color:#6b6f75;
					}
				}
			}
		}
	}
}

.search_area{
	padding:96px 0;
	background:url('../images/top/search_back.webp') center / cover no-repeat;
}
.search_wrap{
	max-width:1280px;
	margin:0 auto;
	padding:0 20px;
	box-sizing:content-box;

	.title_sp{
		display:none;
	}
}
.search_headline{
	display:flex;
	justify-content:center;
	align-items:center;
	max-width:1120px;
	margin:0 auto 48px;
	padding:32px 0;
	border-top:1px solid #646974;
	border-bottom:1px solid #646974;

	h2{
		font-family:"IBM Plex Sans JP", sans-serif;
		font-weight:600;
		font-size:22px;
		line-height:33px;
		color:#ffffff;
	}
}
.search_partition{
	display:flex;
	justify-content:center;
	position:relative;
	max-width:1120px;
	margin:0 auto 48px;
	
	h3{
		display:flex;
		justify-content:center;
		align-items:center;
		gap:8px;
		font-family:"IBM Plex Sans JP", sans-serif;
		font-weight:600;
		font-size:22px;
		line-height:33px;
		color:#ffffff;

		img{
			width:24px;
		}
	}
	&:before{
		content:'';
		position:absolute;
		top:50%;
		left:0;
		transform:translateY(-50%);
		width:333px;
		height:1px;
		background-color:#646974;
	}
	&:after{
		content:'';
		position:absolute;
		top:50%;
		right:0;
		transform:translateY(-50%);
		width:333px;
		height:1px;
		background-color:#646974;
	}
}
/* .search_map{
	display:grid;
	grid-template-columns:40.625% 53.75%;
	align-items:center;
	gap:56px;
	margin-bottom:72px;

	.map{
		position:relative;
		padding:0 0 14px 16px;

		img{
			opacity:0.5;
		}
		a{
			position:absolute;
			padding:7px 16px 5px 36px;
			font-family:"IBM Plex Sans JP", sans-serif;
			font-weight:600;
			font-size:16px;
			line-height:28px;
			color:#32373e;
			background:url('../images/common/red_circle_white_arrow.png') center left 12px / 16px no-repeat;
			background-color:#ffffff;
			outline:1px solid #646974;
			border:1px solid #646974;
			border-radius:24px;
			transition:0.3s;

			&:hover{
				color:#c50018;
				border-color:#c50018;
			}
			&.link1{
				top:13%;
				left:39%;
			}
			&.link2{
				top:59%;
				left:75%;
			}
			&.link3{
				top:29%;
				left:37%;
			}
			&.link4{
				top:74%;
				left:64%;
			}
			&.link5{
				top:43%;
				left:35%;
			}
			&.link6{
				top:54%;
				left:16%;
			}
			&.link7{
				top:80%;
				left:36%;
			}
			&.link8{
				bottom:0;
				left:21%
			}
		}
	}
	.title_sp{
		display:none;
	}
	.container{
		display:flex;
		gap:32px;

		.column{
			display:grid;
			gap:42px;

			.box{
				.pref{
					margin-bottom:9px;
					padding-bottom:7px;
					border-bottom:1px solid #6b6f75;

					a{
						padding-left:32px;
						font-family:"IBM Plex Sans JP", sans-serif;
						font-weight:500;
						font-size:18px;
						line-height:28px;
						color:#ffffff;
						background:url('../images/common/red_circle_white_arrow.png') center left 0 / 20px no-repeat;
					}
				}
				ul{
					display:flex;
					gap:16px;

					li{
						position:relative;

						&:not(:last-child){
							&:before{
								content:'';
								position:absolute;
								top:50%;
								right:-8.5px;
								transform:translateY(-50%);
								width:1px;
								height:12px;
								background-color:#ffffff;
								opacity:0.3;
							}
						}
						a{
							font-family:"IBM Plex Sans JP", sans-serif;
							font-weight:500;
							font-size:14px;
							line-height:24px;
							text-decoration:underline;
							color:#ffffff;
							transition:0.3s;

							&:hover{
								opacity:0.7;
							}
						}
					}
				}
			}
		}
	}
} */
.search_container{
	display:grid;
	grid-template-columns:repeat(5, 1fr);
	gap:20px 17px;
	max-width:1120px;
	margin:0 auto;

	a{
		display:flex;
		justify-content:center;
		align-items:center;
		height:80px;
		padding:5px 0;
		background-color:#ffffff;
		border-radius:60px;
		overflow:hidden;
		transition:0.3s;

		&:hover{
			outline:1px solid #c50018;
			opacity: 0.7;
		}
		img{
			width:100%;
			height:100%;
			object-fit:contain;
		}
	}
}
.search_sp_modal{
	display:none;
}

.arrival_area{
	padding:96px 0;
	background:url('../images/top/arrival_back.webp') top -2px center / cover no-repeat;
	overflow:hidden;
}
.arrival_wrap{
	max-width:1120px;
	margin:0 auto;
	padding:0 20px;
	box-sizing:content-box;

	.more_link{
		margin-top:48px;
	}
}

.banner_area{
	padding-top:124px;
}
.banner_wrap{
	max-width:800px;
	margin:0 auto;

	img{
		width:100%;
		transition:0.3s;

		&:hover{
			opacity:0.7;
		}
	}
}

.relation_area{
	padding-top:124px
}
.relation_wrap{
	max-width:1120px;
	margin:0 auto;
	padding:0 20px;
	box-sizing:content-box;

	.container{
		display:grid;
		grid-template-columns:repeat(3, 1fr);
		gap:20px;
		margin-top:48px;

		.box{
			position:relative;
			transition:0.3s;

			&:hover{
				opacity:0.7;
			}
			.img{
				position:relative;
				border-radius:4px;
				overflow:hidden;

				&:before{
					content:'';
					position:absolute;
					top:0;
					left:0;
					width:100%;
					height:100%;
					background:linear-gradient(transparent, #32373e);
					opacity:0.5;
					z-index:1;
				}
				img{
					width:100%;
				}
			}
			h3{
				position:absolute;
				bottom:8px;
				right:16px;
				left:16px;
				font-family:"IBM Plex Sans JP", sans-serif;
				font-weight:600;
				font-size:20px;
				line-height:30px;
				color:#ffffff;
				background:url('../images/common/white_circle_red_arrow.png') center right / 24px no-repeat;
				z-index:2;
			}
		}
	}
}

.fixed_area{
    display:flex;
    justify-content:center;
    gap:20px;
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    padding:16px;
    background-color:rgba(223, 226, 229, 0.8);
    z-index:3000;
}
.fixed_box{
    width:100%;
    max-width:590px;

    a{
		display:block;
        padding:21px 0 19px;
        font-family:"IBM Plex Sans JP", sans-serif;
        font-weight:600;
        font-size:16px;
        line-height:24px;
		text-align:center;
        color:#32373e;
		background: url('../images/common/red_circle_white_arrow.png') center right 20px / 24px no-repeat;
        background-color: #ffffff;
        border-radius:32px;
        transition:0.3s;

        &:hover{
            opacity:0.7;
        }
    }
}




/*-------------------- pc-spの間 --------------------*/
/*---------- base > width:1440px ----------*/
@media(max-width:1439px) and (min-width:769px){
	.first_area{
		margin-bottom:8.611vw;
	}
	.first_wrap{
		/* max-width:77.778vw; */
		margin:0 auto;
		padding:0 1.389vw;
		box-sizing:content-box;
	
		.text{
			margin-top:3.333vw;

			p{
				font-family:"IBM Plex Sans JP", sans-serif;
				font-weight:500;
				font-size:1.111vw;
				line-height:1.944vw;
				text-align:center;
			}
		}
		.container{
			display:grid;
			gap:5vw;
			margin:4.444vw 0;
	
			.row{
				display:grid;
				grid-template-columns:repeat(2, 1fr);
				align-items:center;
	
				.img{
					img{
						width:100%;
					}
				}
				.box{
					padding:0 4.167vw;
	
					h3{
						margin-bottom:1.458vw;
						font-family:"IBM Plex Sans JP", sans-serif;
						font-weight:600;
						font-size:1.528vw;
						line-height:2.292vw;
	
						span{
							color:#c50018;
						}
					}
					p{
						font-family:"IBM Plex Sans JP", sans-serif;
						font-weight:500;
						font-size:1.111vw;
						line-height:1.944vw;
	
						&.note{
							margin-top:1.667vw;
							font-size:0.972vw;
							line-height:1.389vw;
							color:#6b6f75;
						}
					}
				}
			}
		}
	}
	
	.search_area{
		padding:6.667vw 0;
		background:url('../images/top/search_back.webp') center / cover no-repeat;
	}
	.search_wrap{
		/* max-width:88.889vw; */
		margin:0 auto;
		padding:0 1.389vw;
		box-sizing:content-box;

		.title_sp{
			display:none;
		}
	}
	.search_headline{
		display:flex;
		justify-content:center;
		align-items:center;
		/* max-width:77.778vw; */
		margin:0 auto 3.333vw;
		padding:2.222vw 0;
		border-top:0.069vw solid #646974;
		border-bottom:0.069vw solid #646974;
	
		h2{
			font-family:"IBM Plex Sans JP", sans-serif;
			font-weight:600;
			font-size:1.528vw;
			line-height:2.292vw;
			color:#ffffff;
		}
	}
	.search_partition{
		display:flex;
		justify-content:center;
		position:relative;
		/* max-width:77.778vw; */
		margin:0 auto 3.333vw;
		
		h3{
			display:flex;
			justify-content:center;
			align-items:center;
			gap:0.556vw;
			font-family:"IBM Plex Sans JP", sans-serif;
			font-weight:600;
			font-size:1.528vw;
			line-height:2.292vw;
			color:#ffffff;
	
			img{
				width:1.667vw;
			}
		}
		&:before{
			content:'';
			position:absolute;
			top:50%;
			left:0;
			transform:translateY(-50%);
			width:23.125vw;
			height:0.069vw;
			background-color:#646974;
		}
		&:after{
			content:'';
			position:absolute;
			top:50%;
			right:0;
			transform:translateY(-50%);
			width:23.125vw;
			height:0.069vw;
			background-color:#646974;
		}
	}
	/* .search_map{
		display:grid;
		grid-template-columns:40.625% 53.75%;
		align-items:center;
		gap:3.889vw;
		margin-bottom:5vw;
	
		.map{
			position:relative;
			padding:0 0 0.972vw 1.111vw;
	
			img{
				opacity:0.5;
			}
			a{
				position:absolute;
				padding:0.486vw 1.111vw 0.347vw 2.5vw;
				font-family:"IBM Plex Sans JP", sans-serif;
				font-weight:600;
				font-size:1.111vw;
				line-height:1.944vw;
				color:#32373e;
				background:url('../images/common/red_circle_white_arrow.png') center left 0.833vw / 1.111vw no-repeat;
				background-color:#ffffff;
				outline:0.069vw solid #646974;
				border:0.069vw solid #646974;
				border-radius:1.667vw;
				transition:0.3s;
	
				&:hover{
					color:#c50018;
					border-color:#c50018;
				}
				&.link1{
					top:13%;
					left:39%;
				}
				&.link2{
					top:59%;
					left:75%;
				}
				&.link3{
					top:29%;
					left:37%;
				}
				&.link4{
					top:74%;
					left:64%;
				}
				&.link5{
					top:43%;
					left:35%;
				}
				&.link6{
					top:54%;
					left:16%;
				}
				&.link7{
					top:80%;
					left:36%;
				}
				&.link8{
					bottom:0;
					left:21%
				}
			}
		}
		.container{
			display:flex;
			gap:2.222vw;

			.column{
				display:grid;
				gap:2.917vw;
	
				.box{
					.pref{
						margin-bottom:0.625vw;
						padding-bottom:0.486vw;
						border-bottom:0.069vw solid #6b6f75;
	
						a{
							padding-left:2.222vw;
							font-family:"IBM Plex Sans JP", sans-serif;
							font-weight:500;
							font-size:1.25vw;
							line-height:1.944vw;
							color:#ffffff;
							background:url('../images/common/red_circle_white_arrow.png') center left 0 / 1.389vw no-repeat;
						}
					}
					ul{
						display:flex;
						gap:1.111vw;
	
						li{
							position:relative;
	
							&:not(:last-child){
								&:before{
									content:'';
									position:absolute;
									top:50%;
									right:-0.59vw;
									transform:translateY(-50%);
									width:0.069vw;
									height:0.833vw;
									background-color:#ffffff;
									opacity:0.3;
								}
							}
							a{
								font-family:"IBM Plex Sans JP", sans-serif;
								font-weight:500;
								font-size:0.972vw;
								line-height:1.667vw;
								text-decoration:underline;
								color:#ffffff;
								transition:0.3s;
	
								&:hover{
									opacity:0.7;
								}
							}
						}
					}
				}
			}
		}
	} */
	.search_container{
		display:grid;
		grid-template-columns:repeat(5, 1fr);
		gap:1.389vw 1.181vw;
		/* max-width:77.778vw; */
		margin:0 auto;
	
		a{
			display:flex;
			justify-content:center;
			align-items:center;
			height:5.556vw;
			padding:0.347vw 0;
			background-color:#ffffff;
			border-radius:4.167vw;
			overflow:hidden;
			transition:0.3s;
	
			&:hover{
				outline:0.069vw solid #c50018;
			}
			img{
				width:100%;
				height:100%;
				object-fit:contain;
			}
		}
	}
	.search_sp_modal{
		display:none;
	}
	
	.arrival_area{
		padding:6.667vw 0;
		background:url('../images/top/arrival_back.webp') top -0.139vw center / cover no-repeat;
		overflow:hidden;
	}
	.arrival_wrap{
		/* max-width:77.778vw; */
		margin:0 auto;
		padding:0 1.389vw;
		box-sizing:content-box;

		.more_link{
			margin-top:48px;
		}
	}
	
	.banner_area{
		padding-top:8.611vw;
	}
	.banner_wrap{
		/* max-width:55.556vw; */
		margin:0 auto;
		width: 95%;
	
		img{
			width:100%;
			transition:0.3s;
	
			&:hover{
				opacity:0.7;
			}
		}
	}
	
	.relation_area{
		padding-top:8.611vw
	}
	.relation_wrap{
		/* max-width:77.778vw; */
		margin:0 auto;
		padding:0 1.389vw;
		box-sizing:content-box;
	
		.container{
			display:grid;
			grid-template-columns:repeat(3, 1fr);
			gap:1.389vw;
			margin-top:3.333vw;
	
			.box{
				position:relative;
				transition:0.3s;
	
				&:hover{
					opacity:0.7;
				}
				.img{
					position:relative;
					border-radius:0.278vw;
					overflow:hidden;
	
					&:before{
						content:'';
						position:absolute;
						top:0;
						left:0;
						width:100%;
						height:100%;
						background:linear-gradient(transparent, #32373e);
						opacity:0.5;
						z-index:1;
					}
					img{
						width:100%;
					}
				}
				h3{
					position:absolute;
					bottom:0.556vw;
					right:1.111vw;
					left:1.111vw;
					font-family:"IBM Plex Sans JP", sans-serif;
					font-weight:600;
					font-size:1.389vw;
					line-height:2.083vw;
					color:#ffffff;
					background:url('../images/common/white_circle_red_arrow.png') center right / 1.667vw no-repeat;
					z-index:2;
				}
			}
		}
	}
}





/*-------------------- sp --------------------*/
/*---------- デザインベースはwidth:375px ----------*/
@media(max-width:768px){
	.first_area{
		margin-bottom:17.067vw;
	}
	.first_wrap{
		padding:0 4.267vw;
	
		.text{
			margin-top:8.533vw;

			p{
				font-size:3.733vw;
				line-height:6.4vw;
			}
		}
		.container{
			gap:10.667vw;
			margin:8.533vw 0 9.067vw;
	
			.row{
				grid-template-columns:1fr;
				gap:6.4vw;
				
				.img{
					order:1;
				}
				.box{
					order:2;
					padding:0;
	
					h3{
						margin-bottom:4vw;
						font-size:4.8vw;
						line-height:6.933vw;
					}
					p{
						font-size:4.267vw;
						line-height:7.467vw;
	
						&.note{
							margin-top:5.333vw;
							font-size:3.2vw;
							line-height:4.8vw;
						}
					}
				}
			}
		}
	}
	
	.search_area{
		padding:12.8vw 0;
	}
	.search_wrap{
		padding:0 4.267vw;

		.link{
			border:1px solid #cccfd1;
			border-radius:1.067vw;
			overflow:hidden;

			.title_sp{
				display:block;
				padding:7.2vw 4.267vw 6.667vw;
				background:url('../images/common/red_circle_white_plus.png') center right 4.267vw / 6.4vw no-repeat;
				background-color:#ffffff;
				
				&.active{
					background:url('../images/common/red_circle_white_minus.png') center right 4.267vw / 6.4vw no-repeat;
					background-color:#ffffff;
				}
				h3{
					font-family:"IBM Plex Sans JP", sans-serif;
					font-weight:600;
					font-size:4.267vw;
					line-height:6.4vw;
					color:#32373e;
				}
			}
			.container{
				display:none;
				padding:0 4vw 7.467vw;
				background-color:#ffffff;
				border-radius:0;
				
				&.active{
					display:block;
				}
				.column{
					display:grid;
					gap:4.533vw;
					padding:0;
		
					&:last-child{
						margin-top:4.533vw;
					}
					.box{
						.pref{
							margin-bottom:2.4vw;
							padding-bottom:1.867vw;
							border-color:#cccfd1;
		
							a{
								position:relative;
								padding-left:4.267vw;
								font-weight:600;
								font-size:4.267vw;
								line-height:7.467vw;
								color:#32373e;
								background:none;
		
								&:before{
									content:'';
									position:absolute;
									top:50%;
									left:0;
									transform:translateY(-50%);
									width:1.067vw;
									height:4.267vw;
									background-color:#c50018;
								}
							}
						}
						ul{
							flex-wrap:wrap;
							gap:2.4vw 4.267vw;
		
							li{
								&:not(:last-child){
									&:before{
										right:-2.133vw;
										height:3.733vw;
										background-color:#cccfd1;
									}
								}
								a{
									font-size:3.733vw;
									line-height:6.4vw;
									text-decoration:underline;
									color:#0356cb;
								}
							}
						}
					}
				}
			}
		}
	}
	.search_headline{
		margin:0 auto 10.667vw;
		padding:6.4vw 0;
		
		h2{
			font-size:4.8vw;
			line-height:7.467vw;
		}
	}
	.search_partition{
		margin-bottom:7.467vw;
		padding:5.333vw 0;
		
		h3{
			gap:2.133vw;
			font-size:4.267vw;
			line-height:6.4vw;
	
			img{
				width:5.333vw;
			}
		}
		&.area{
			&:before{
				width:21.867vw;
			}
			&:after{
				width:21.867vw;
			}
		}
		&.house{
			&:before{
				width:13.333vw;
			}
			&:after{
				width:13.333vw;
			}
		}
	}
	/* .search_map{
		grid-template-columns:1fr;
		gap:0;
		margin-bottom:12.267vw;
	
		.map{
			margin-bottom:12.8vw;
			padding:0 0 13.6vw;
	
			a{
				padding:2.133vw 3.2vw 1.867vw 9.6vw;
				font-size:3.733vw;
				line-height:5.333vw;
				
				&.link1{
					top:4%;
					left:28%;
				}
				&.link2{
					top:52%;
					left:76%;
				}
				&.link3{
					top:22%;
					left:22%;
				}
				&.link4{
					top:67%;
					left:60%;
				}
				&.link5{
					top:38%;
					left:24%;
				}
				&.link6{
					top:50%;
					left:0;
				}
				&.link7{
					top:75%;
					left:28%;
				}
				&.link8{
					bottom:0;
					left:4%
				}
			}
		}
		.container{
			display:none;
			padding:7.733vw 4vw 7.467vw;
			background-color:#ffffff;
			border-top:1px solid #cccfd1;
			
			&.active{
				display:block;
			}
			.column{
				display:grid;
				gap:4.533vw;
				padding:0;
	
				&:last-child{
					margin-top:4.533vw;
				}
				.box{
					.pref{
						margin-bottom:2.4vw;
						padding-bottom:1.867vw;
	
						a{
							position:relative;
							padding-left:4.267vw;
							font-weight:600;
							font-size:4.267vw;
							line-height:7.467vw;
							color:#32373e;
							background:none;
	
							&:before{
								content:'';
								position:absolute;
								top:50%;
								left:0;
								transform:translateY(-50%);
								width:1.067vw;
								height:4.267vw;
								background-color:#c50018;
							}
						}
					}
					ul{
						flex-wrap:wrap;
						gap:2.4vw 4.267vw;
	
						li{
							&:not(:last-child){
								&:before{
									right:-2.133vw;
									height:3.733vw;
									background-color:#cccfd1;
								}
							}
							a{
								font-size:3.733vw;
								line-height:6.4vw;
								text-decoration:underline;
								color:#0356cb;
							}
						}
					}
				}
			}
		}
	} */
	.search_container{
		grid-template-columns:repeat(2, 1fr);
		gap:4.267vw 2.933vw;
	
		a{
			height:14.4vw;
			padding:1.067vw 0 0.8vw;
		}
	}
	.search_sp_modal{
		display:none;
	}
	
	.arrival_area{
		padding:12.8vw 0;
	}
	.arrival_wrap{
		padding:0 6.4vw;

		.more_link{
			margin-top:8.533vw;
		}
	}
	
	.banner_area{
		padding-top:17.067vw;
	}
	.banner_wrap{
		padding:0 4.267vw;
	}
	
	.relation_area{
		padding-top:17.067vw;
	}
	.relation_wrap{
		padding:0 4.267vw;
	
		.container{
			grid-template-columns:1fr;
			gap:6.4vw;
	
			.box{
				.img{
					height:32vw;
	
					img{
						width:100%;
						height:100%;
						object-fit:cover;
					}
				}
				h3{
					bottom:1.6vw;
					right:4.267vw;
					left:4.267vw;
					font-size:4.267vw;
					line-height:6.4vw;
					background:url('../images/common/white_circle_red_arrow.png') center right / 5.333vw no-repeat;
				}
			}
		}
	}

	.fixed_box{
		a{
			line-height:14px;
		}
	}

    /* .first_area{
        margin-bottom:64px;
    }
    .first_wrap{
        padding:0 16px;

        .container{
            gap:40px;
            margin:32px 0 34px;

            .row{
                grid-template-columns:1fr;
                gap:24px;
                
                .img{
                    order:1;
                }
                .box{
                    order:2;
                    padding:0;
    
                    h3{
                        margin-bottom:15px;
                        font-size:18px;
                        line-height:26px;
                    }
                    p{
                        font-size:16px;
                        line-height:28px;
    
                        &.note{
                            margin-top:20px;
                            font-size:12px;
                            line-height:18px;
                        }
                    }
                }
            }
        }
    }

    .search_area{
        padding:48px 0;
    }
    .search_wrap{
        padding:0 16px;
    }
    .search_headline{
        margin:0 auto 40px;
        padding:24px 0;
        
        h2{
            font-size:18px;
            line-height:28px;
        }
    }
    .search_partition{
        margin-bottom:28px;
        padding:20px 0;
        
        h3{
            gap:8px;
            font-size:16px;
            line-height:24px;

            img{
                width:20px;
            }
        }
        &.area{
            &:before{
                width:82px;
            }
            &:after{
                width:82px;
            }
        }
        &.house{
            &:before{
                width:50px;
            }
            &:after{
                width:50px;
            }
        }
    }
    .search_map{
        grid-template-columns:1fr;
        gap:40px;
        margin-bottom:46px;
    
        .map{
            padding:0 0 51px;
    
            a{
                padding:8px 12px 7px 36px;
                font-size:14px;
                line-height:20px;
                
                &.link1{
                    top:4%;
                    left:28%;
                }
                &.link2{
                    top:52%;
                    left:76%;
                }
                &.link3{
                    top:22%;
                    left:22%;
                }
                &.link4{
                    top:67%;
                    left:60%;
                }
                &.link5{
                    top:38%;
                    left:24%;
                }
                &.link6{
                    top:50%;
                    left:0;
                }
                &.link7{
                    top:75%;
                    left:28%;
                }
                &.link8{
                    bottom:0;
                    left:3%
                }
            }
        }
        .container{
            display:block;
            padding-bottom:28px;
            background-color:#ffffff;
            border-radius:4px;
            overflow:hidden;

            .title_sp{
                display:flex;
                justify-content:center;
                margin-bottom:29px;
                padding:13px 0 11px;
                background-color:#6b6f75;
                
                h3{
                    font-family:"IBM Plex Sans JP", sans-serif;
                    font-weight:600;
                    font-size:16px;
                    line-height:24px;
                    color:#ffffff;
                }
            }
            .column{
                display:grid;
                gap:17px;
                padding:0 15px;

                &:last-child{
                    margin-top:17px;
                }
                .box{
                    .pref{
                        margin-bottom:9px;
                        padding-bottom:7px;

                        a{
                            position:relative;
                            padding-left:16px;
                            font-weight:600;
                            font-size:16px;
                            line-height:28px;
                            color:#32373e;
                            background:none;

                            &:before{
                                content:'';
                                position:absolute;
                                top:50%;
                                left:0;
                                transform:translateY(-50%);
                                width:4px;
                                height:16px;
                                background-color:#c50018;
                            }
                        }
                    }
                    ul{
                        flex-wrap:wrap;
                        gap:9px 17px;
    
                        li{
                            &:not(:last-child){
                                &:before{
                                    right:-8px;
                                    height:14px;
                                    background-color:#cccfd1;
                                }
                            }
                            a{
                                font-size:14px;
                                line-height:24px;
                                text-decoration:underline;
                                color:#0356cb;
                            }
                        }
                    }
                }
            }
        }
    }
    .search_container{
        grid-template-columns:repeat(2, 1fr);
        gap:16px 11px;
    
        a{
            height:54px;
            padding:4px 0 3px;
        }
    }
    .search_sp_modal{
        display:none;
    }
    
    .arrival_area{
        padding:48px 0;
    }
    .arrival_wrap{
        padding:0 24px;
    }
    .arrival_headline{
        margin-bottom:24px;
        padding:21px 0 18px;

        h2{
            font-size:18px;
            line-height:28px;
        }
    }
    .arrival_slider{
        margin-bottom:32px !important;

        .slide_arrow{
            width:50px;
            height:40px;
        }
        .prev_arrow{
            left:-16px;
        }
        .next_arrow{
            right:-16px;
        }
        .slick-dots{
            gap:12px;
            margin-top:24px;
            
            li{
                button{
                    width:6px;
                    height:6px;
                }
            }
        }
    }
    .arrival_box{
        margin:0 8px;
        padding:0 24px 20px;
        border-radius:4px;
        
        .logo{
            img{
                width:148px;
            }
        }
        .img{
            margin-bottom:20px;
            border-radius:4px;
            overflow:hidden;

            img{
                width:100%;
                transition:0.3s;
            }
        }
        .detail{
            h3{
                margin-bottom:8px;
                padding-bottom:8px;
                font-size:16px;
                line-height:24px;
                letter-spacing:-0.32px;
                background:url('../images/common/red_arrow_right.png') top 3px right 0 / 20px no-repeat;
            }
            .price_main{
                gap:4px;
                margin-bottom:2px;
                font-size:13px;
                line-height:32px;
                
                span{
                    font-size:24px;
                    line-height:32px;
                }
            }
            .price_sub{
                gap:14px;
                margin-bottom:9px;

                dl{
                    gap:12px;
                    
                    dt{
                        font-size:12px;
                        line-height:18px;
                        
                        &:before{
                            right:-6px;
                            width:1px;
                            height:12px;
                        }
                    }
                    dd{
                        font-size:12px;
                        line-height:18px;
                    }
                }
            }
            ul{
                gap:8px;

                li{
                    padding:4px 12px 2px;
                    font-size:12px;
                    line-height:18px;
                }
            }
        }
    }
    
    .banner_area{
        padding-top:64px;
    }
    .banner_wrap{
        padding:0 16px;
    }
    
    .relation_area{
        padding-top:64px
    }
    .relation_wrap{
        padding:0 16px;

        .container{
            grid-template-columns:1fr;
            gap:24px;
    
            .box{
                .img{
                    height:120px;

                    img{
                        width:100%;
                        height:100%;
                        object-fit:cover;
                    }
                }
                h3{
                    bottom:6px;
                    right:16px;
                    left:16px;
                    font-size:16px;
                    line-height:24px;
                    background:url('../images/common/white_circle_red_arrow.png') center right / 20px no-repeat;
                }
            }
        }
    } */
}

/* task142 -- #header is position:fixed, so an anchor landing drops the section title
   behind it. Same treatment and same value as /sale/#kaitori-service (ledger B29). */
#property-search {
    scroll-margin-top: calc(var(--sumstock-header-h, 100px) + 24px);
}
