@charset "utf-8";

/*==============================================

	wedding bestrate

==============================================*/

.page_head .en {
	text-align: center;
}
.page_head .title {
	font-size: 1.6rem;
	margin-bottom: 20px;
}
.page_head .sub {
	text-align: center;
	font-size: 2rem;
	line-height: 3.3rem;
	letter-spacing: 0.1rem;
	margin-top: 30px;
}
.page_head .en img {
	display: inline-block;
}

.cover img {
	width: 100%;
}

.caption {
	margin-top: 80px;
}
.caption .text {
	text-align: center;
	font-size: 1.4rem;
	line-height: 3rem; /* 214.286% */
	letter-spacing: 0.07rem;
}

.rewards {
	margin: 120px auto;
	max-width: 1200px;
}
.rewards > h2 {
	text-align: center;
	font-size: 2rem;
	line-height: 3.3rem;
	letter-spacing: 0.1rem;
	margin-bottom: 80px;
	padding-bottom: 10px;
	border-bottom: 1px solid #C9C9C4;
}
.rewards_list {
	display: flex;
	gap: 60px 30px;
	margin-bottom: 60px;
	flex-wrap: wrap;
}
.rewards_list li {
	width: calc((100% - 60px) / 3);
}
.rewards_list li .sub {
	margin-top: 15px;
	margin-bottom: 15px;
}
.rewards_list li .sub span {
	color: #FFF;
	font-size: 1.2rem;
	letter-spacing: 0.06rem;
	background-color: #B4A698;
	padding: 2px 10px;
	display: inline-block;
	display: inline-block;
}
.rewards_list li h3 {
	color: #B4A698;
	font-size: 1.7rem;
	line-height: 2.7rem; /* 158.824% */
	letter-spacing: 0.085rem;
	margin-bottom: 15px;
}
.rewards_list li .text {
	margin-bottom: 0;
}
.rewards_list li img {
	width: 100%;
}
.rewards .btn {
	text-align: center;
}
.rewards .btn a {
	display: inline-block;
}


.recommends {
	margin: 120px auto;
}
.recommends .inner {
	display: flex;
	padding-left: calc((100% - 1200px) / 2);
	padding-right: calc((100% - 1200px) / 2);
	align-items: flex-end;
}
.recommends .inner .img {
	width: 500px;
}
.recommends .inner .exp {
	width: calc(100% - 500px);
	padding-left: 100px;
}

.recommends .inner .exp .text {
	margin-bottom: 0;
}
.recommends .inner .exp h2 {
	color: #BA856A;
	font-size: 2rem;
	line-height: 3.3rem; /* 165% */
	letter-spacing: 0.1rem;
	padding-bottom: 10px;
	position: relative;
	margin-bottom: 30px;
}
.recommends .inner .exp h2::before {
	content: '';
	position: absolute;
	bottom: 0;
	width: 100vw;
	height: 1px;
	background-color: #C9C9C4;
}
.recommends .inner .exp .voice {
	font-size: 1.5rem;
	line-height: 2.7rem; /* 180% */
	letter-spacing: 0.075rem;
	padding: 15px 20px;
	position: relative;
	margin-bottom: 5px;
}
.recommends .inner .exp .voice::before,
.recommends .inner .exp .voice::after {
	content: '';
	position: absolute;
	top: 0;
	width: 100vw;
	height: 1px;
	width: 20px;
	height: 24px;
	border-top: 1px solid #BA856A;
	border-left: 1px solid #BA856A;
	left: 0;
}

.recommends .inner .exp .voice::after {
	border: none;
	border-right: 1px solid #BA856A;
	border-bottom: 1px solid #BA856A;
	bottom: 0;
	right: 0;
	left: auto;
	top: auto;
}
.recommends .inner .exp .box {
	margin-top: 30px;
	margin-bottom: 50px;
}
.recommends .inner .exp .box .btn {
	margin-top: 30px;
}
.recommends .inner .exp .note {
	border: 1px solid #C9C9C4;
	padding: 20px 30px;
}
.recommends .inner .exp .note h3 {
	color: #BA856A;
	font-size: 1.3rem;
	line-height: 2.7rem; /* 207.692% */
	letter-spacing: 0.065rem;
	margin-bottom: 10px;
}
.rewards .btn {
	width: calc(100% - 60px);
	margin: 0 auto;
}

.bridalfair {
	margin-top: 0;
}

@media screen and (max-width: 736px) {


	main .page_head .title {
		font-size: 1.6rem;
	}
	.page_head .sub {
		font-size: 1.8rem;
	}
	.caption {
		padding: 0 30px;
		margin-top: 60px;
	}
	.rewards {
		margin-bottom: 100px;
		margin-top: 70px;
	}

	.rewards > h2 {
		margin-bottom: 40px;
	}
	.rewards_list {
		padding: 0 30px;
		margin-top: 30px;
		margin-bottom: 40px;
		gap: 40px;
	}
	.rewards_list li {
		width: 100%;
	}

	.recommends {
		margin-top: 100px;
	}
	.recommends .inner {
	flex-direction: column;
	}
	.recommends .inner .img {
		width: 100%;
	}
	.recommends .inner .exp {
		width: 100%;
	}
	.recommends .inner .exp {
		padding: 0 30px;
		margin-top: 40px;
	}
	.recommends .inner .exp .voice {
		text-align: center;
		font-size: 1.5rem;
	}
	.reserve_bg_wrap {
		margin-top: -70px;
	}

}