@charset "utf-8";
/* CSS Document */

.page_ttl_wrap {
	padding: 0px;
}

section:not(.pickup) {
	padding: 0px;
}


section.reason .sec_inner {
	background: #F8E5EA;
	padding-bottom: 20vw;
}

@media screen and (min-width: 768px) {
	section.reason .sec_inner {
		padding-top: 6%;
	}
}

.reason_list_wrap {
	background: #FFF;
	border-radius: 40px;
	padding: 6%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	max-width: 1000px;
	width: 100%;
	margin: 0px auto;
}

.reason_list {
	width: 100%;
}

.reason_list li {
	font-size: clamp(18px,2.2vw,32px);
	font-weight: bold;
	border-bottom: 2px dashed #B7002C;
	padding: 10px 10px 10px 50px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	line-height: 140%;
}

.reason_list li::before {
	content: '';
	background: url("../images/reservation/icon_sakura.svg");
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	width: 39px;
	height: 37px;
	left: 0px;
	position: absolute;
}

.reason_list li > small {
	font-size: clamp(16px,1.6vw,22px);
	font-weight: 500;
	top: 3px;
}

.reason_txt {
	font-size: clamp(15px,2.8vw,28px);
	font-weight: bold;
	text-align: center;
	line-height: 160%;
	margin-top: 40px;
}

.property_btn {
	background: #242A39;
}

.testimonials_wrap {
	margin-top: 50px;
}

.testimonials_ttl {
	display: flex;
	justify-content: center;
}

.testimonials_ttl > span {
	color: #B7002C;
	font-size: clamp(26px,3.6vw,36px);
	font-family: "fot-tsukuardgothic-std", sans-serif;
	font-weight: bold;
	display: flex;
	justify-content: center;
	line-height: 130%;
}

.testimonials_ttl > span::after {
	content: '';
	background: url("../images/reservation/testimonials_ttl_bottom.svg");
	background-repeat: no-repeat;
	background-size: 100% auto;
	display: inline-block;
	width: 100%;
	height: 14px;
	bottom: -20px;
	position: absolute;
}

.testimonials_fukidashi {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 30px;
	max-width: 1000px;
	width: 100%;
	margin: 50px auto;
}

.testimonials_fukidashi > dt {
	width: 160px;
}

.testimonials_fukidashi > dd {
	max-width: 700px;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.fukidashi_box > p {
	background: #FFF;
	padding: 30px;
	width: 100%;
	border: 2px solid #000;
	border-radius: 20px;
	display: flex;
	align-items: center;
}

.fukidashi_box > p::before {
	content: '';
	background: url("../images/reservation/testimonials_fukidashi.svg");
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	width: 44px;
	height: 27px;
	left: -30px;
	position: absolute;
}

.fukidashi_box > p > span {
	display: flex;
	width: 90%;
	margin: 0px auto;
	font-size: clamp(14px,1.5vw,15px);
	font-family: "fot-tsukuardgothic-std", sans-serif;
	font-weight: bold;
	line-height: 180%;
}

.testimonials_reason_ttl {
	color: #B7002C;
	font-size: clamp(20px,3vw,30px);
	font-family: "fot-tsukuardgothic-std", sans-serif;
	font-weight: bold;
	display: flex;
	flex-direction: column;
	align-items: center;
	line-height: 130%;
	text-align: center;
}

.testimonials_reason_ttl::before {
	content: '';
	background: url("../images/reservation/testimonials_arrow.svg");
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	width: 74px;
	height: 43px;
	top: 0px;
	position: relative;
	padding-bottom: 20px;
}

.testimonials_reason_img {
	max-width: 700px;
	width: 100%;
	margin: 30px auto 0px;
}


section.recommend .red_ttl {
    font-size: clamp(20px,3vw,40px);
}

section.recommend .red_ttl_inner {
	z-index: 1;
}

section.recommend .red_ttl::after {
    content: '';
	background: url("../images/reservation/recommend_ttl_img.png");
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	width: 300px;
	height: 355px;
	bottom: -31px;
	left: 60%;
	position: absolute;
	z-index: -1;
}

section.recommend .red_ttl > big {
    font-size: clamp(30px,5vw,70px);
	top: 2px;
}


.recommend_list {
	max-width: 1000px;
	width: 100%;
	margin: 0px auto;
}

.recommend_list li {
	border-bottom: 2px dashed #B7002C;
	padding: 20px 20px;
	display: flex;
	font-size: clamp(16px,2.2vw,22px);
}

.recommend_list li::before {
	color: #B7002C;
	font-size: clamp(20px,3vw,30px);
	font-family: "aktiv-grotesk", sans-serif;
	font-weight: bold;
	top: 20px;
	left: 3%;
	position: absolute;
}

.recommend_list_inner {
	width: 92%;
	margin-left: auto;
}

.recommend_txt {
	font-weight: bold;
}

.recommend_caution {
	color: #B7002C;
}

.recommend_caution > p:not(.no_kome_mark) {
	text-indent: -1em;
	margin-left: 1em;
}

section.flow .sec_inner {
	padding: 0px 0px 100px;
}

.flow_ttl {
	text-align: center;
	font-size: clamp(20px,3vw,30px);
	font-family: "fot-tsukuardgothic-std", sans-serif;
	font-weight: bold;
	color: #B7002C;
	margin: 30px 0px;
}



.flow_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 6vw;
	max-width: 1200px;
	width: 100%;
	margin: 8vw auto;
}

.flow_list::before {
	content: '';
	background: #CCCCCC;
	display: inline-block;
	width: 1px;
	height: 100%;
	top: 20px;
	left: 5px;
	position: absolute;
	z-index: -1;
}

.flow_list li {
	display: flex;
	font-family: "aktiv-grotesk", sans-serif;
	gap: 2vw;
	width: 100%;
}

.flow_num {
	font-size: clamp(26px,4vw,40px);
	font-weight: bold;
	color: #B7002C;
	width: 230px;
}

.flow_num > span {
	display: flex;
	align-items: center;
	line-height: 1.3;
	width: 100%;
}

.flow_num > span::before {
	content: '';
	background: #B7002C;
	display: inline-block;
	width: 13px;
	height: 13px;
	position: relative;
	border-radius: 30px;
	margin-right: 10px;
	top: -4px;
}

.flow_inner {
	display: flex;
	justify-content: space-between;
	max-width: 980px;
	width: 100%;
	gap: 2vw;
}

.flow_content {
	max-width: 500px;
	width: 100%;
}

.flow_content_ttl {
	font-size: clamp(20px,3vw,30px);
	font-weight: bold;
	color: #B7002C;
	line-height: 130%;
}

.flow_content_txt {
	font-size: clamp(14px,1.6vw,16px);
	line-height: 180%;
	margin: 20px 0px;
}

.flow_content_txt > span {
	color: #B7002C;
	display: flex;
	text-indent: -1em;
	margin-left: 1em;
}

.flow_link_btn_wrap {
	display: grid;
	grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
	gap: 10px;
	margin-bottom: 10px;
}

.flow_link_btn {
	font-size: clamp(15px,1.8vw,18px);
	border: 1px solid #000;
	border-radius: 50px;
	max-width: 400px;
	background: #FFF;
	color: #000;
	overflow: hidden;
}

.flow_link_btn a:hover {
	background: #000;
	color: #FFF;
	opacity: 1;
 }

.flow_link_btn a {
	padding: 17px 10px 15px;
	width: 100%;
	display: flex;
	justify-content: center;
	line-height: 1;
}

.flow_img {
	max-width: 400px;
	width: 100%;
}

.flow_img img {
	border-radius: 10px;
}



@media screen and (max-width: 1254px) {
	.flow_inner {
		padding-left: 25px;
	}
}



@media screen and (max-width: 980px) {
	.reason_list li {
		padding-left: 40px;
	}
	
	.reason_list li::before {
		width: 28px;
		height: 26px;
		top: 13px;
	}
	
	.reason_txt {
		margin-top: 20px;
	}
	
	.reason_list li > small {
		top: 0px;
	}
	
	.flow_list li {
		flex-wrap: wrap;
	}
	
	.flow_list li.goukakumae_search {
		margin-top: 10vw;
	}
	
	.flow_list li.goukakumae_search::before {
		top: -9vw;
	}
	
	.flow_inner {
		flex-wrap: wrap;
	}
	
	.flow_content {
		max-width: 360px;
	}
	
	section.recommend .red_ttl::after {
		width: 156px;
		height: 185px;
		left: 50%;
	}
}



@media screen and (max-width: 768px) {
	.reason_img {
		display: none;
	}
	
	.flow_content {
		max-width: 100%;
	}
	
	.fukidashi_box > p::before {
		left: 50%;
		top: -20px;
		transform: rotate(90deg);
	}
	
	.flow_content_txt {
		margin: 10px 0px;
	}
}


@media screen and (max-width: 400px) {
	.flow_list li.goukakumae_search {
		margin-top: 13vw;
	}
	
	.flow_list li.goukakumae_search::before {
		top: -11vw;
	}

}





