@charset "shift_jis";
:root{
	--base_color :#848176;
	--ff-mincho: 'Noto Serif JP', serif;
}

.ff-mincho{
	font-family: var(--ff-mincho);
}
.main{
	font-family: "yu-gothic-pr6n", sans-serif;
	text-align: center;
	font-size: 1.6rem;
	background-color:#f7f6f3;
}
.sp-only{
	display: none;
}
.mv-sp{
	display: none;
}
.mv{
	display: flex;
	justify-content: center;
	position: relative;
	height:600px;
	background-image: url(../images/common/mv.jpg);
	background-repeat: no-repeat;
	background-position:top;
	background-size: cover;
	text-align: left;
	font-weight: bold;
	position: relative;
	.mv_text-container{
		position: absolute;
		width: 55.7%;
		left:0;
		top:0;
		bottom:0;
		height:100%;
		padding:0;
		.mv-title::before{
			content:url(../images/common/the-ring.png);
			margin: 0 auto 20px;
		}
		.mv-title{
			display: flex;
			flex-direction: column;
			position: relative;
			margin: 150px auto 0;
			.mv-title-jp-wrap{
				position: relative;
				width: 15em;
                margin: 0 auto;
				text-align: center;
				.wed-plaza-only{
					width:158px;
					height:157px;
					display:flex;
					align-items: center;
					justify-content: center;
					color: #fff;
					background: url(../images/common/plaza-only-bg.png) no-repeat;
					text-align: center;
					position: absolute;
					right: -135px;
					top: -125px;
					font-size: 20px;
					font-weight: bold;
				}
			}
			.mv-title-jp{
				margin: 0 auto;
			}
			.mv-title-eng{
				margin: 20px auto 0;
			}
		}
		.mv-description{
			color:var(--base_color);
			font-size: 24px;
			margin-top: 25px;
			text-align: center;
		}
	}
}
.anchor-nav{
	background-color:#c4c1b2;
	width:100vw;
	ul{
		width:600px;
		margin: 0 auto;
		display: flex;
		align-items: center;
	}
	.nav-item{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 200px;
		height: 70px;
		font-weight: bold;
		font-size: 18px;
		gap: 25px;
		a{
			height: 100%;
            display: flex;
            align-items: center;
			color: #fff;
			.nav-item-line{
				height:30px;
				width:200px;
				display: block;
				border-right: 1px solid #fff;
			}
		}
	}
	.nav-item.active{
		background-color: #c8b67f;
	}
	.nav-item:first-child{
		a{
			.nav-item-line{
				border-left: 1px solid #fff;
			}
		}
	}
}
.data-item-list{
	margin:90px 0 60px;
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	.data-item{
		.-none{
			display: none;
		}
		width:362px;
		display: block;
		background-color: #fff;
		padding:10px 10px 20px 10px;
		box-sizing: border-box;
		.data-item-title{
			color:#64615d;
			background-color:#e8e7e3;
			position: relative;
			height:40px;
			line-height: 40px;
			.data-item-tag{
				background-color:#cf8484;
				padding: 5px 0.4em;
				line-height: 1;
				color: #fff;
				font-size: 14px;
				position: absolute;
				left:0;
				top:7px;
			}
			.data-item-title-main{
				font-size: 16px;
			}
		}
		.data-item-chapel{
			text-align: left;
			font-size: 18px;
			color:#64615d;
			padding: 24px 0;
			line-height:1;
		}
		.data-item-price{
			margin-bottom: 24px;
			.data-item-price-note{
				background-color:#da8e8e;
				color: #fff;
				font-weight: bold;
				font-size: 16px;
				.data-item-price-note-main{
					font-size: 20px;
				}
			}
			.data-item-price-main{
				background-color:#f3f3f1;
				color:#64615d;
				font-size: 24px;
				font-weight: bold;
				padding: 24px 0;
				line-height:1;
			}
		}
		.data-item-term{
			display: flex;
			color:#6a6763;
			font-size: 14px;
			margin-bottom:10px;
			align-items: center;
			.data-item-term-label{
				border: 1px solid;
				padding:5px 10px;
				line-height:1;
			}
			.data-item-term-main{
				margin-left: 1em;
				line-height: 1;
			}
		}
		.data-item-term:last-child{
			margin-bottom: 0;
		}
		.data-item-note{
			color:#6a6763;
			font-size: 14px;
			text-align: left;
		}
		.data-item-note-main{
			margin-top: 20px;
		}
	}
}
.data-item-more{
	display: none;
}

.from-agency-msg{
	background: url(/wed/campaign/plaza-plan/images/common/from-agency-msg-bg.jpg) no-repeat;
	background-position-x: right;
	background-size: cover;
	max-width: 1500px;
	width:100vw;
	height:420px;
	display: flex;
    justify-content: center;
    align-items: center;
	margin: 106px auto 0;
	.from-agency-msg-title{
		font-size: 26px;
		font-weight: bold;
		text-shadow: 1px 1px 10px #ffc895;
        filter: drop-shadow(1px 1px 10px #ffc895);
		line-height: 43px;
	}
}


.store-list{
	position: relative;
	.store_list__container{
		padding-top: 89px;
	}
	.select_nav__item.is-current a{
		background-color:#a7a182;
	}
	.button-common{
		background-color:#a7a182;
		border: none;
	}
	.button-common:hover{
		color: #34251e;
	}
	.button-common:hover::after{
		border-color: #34251e;
	}
	.store_list__container{
		margin-top: 0;
	}
}

.note-list-ul{
	li{
		margin-left:1em;
		text-indent:-1em;
	}
}

.hawaii .country,  .okinawa .country{
	display: none;
}

.footnote{
	margin: auto;
	text-align: left;
	font-size: 75%;
}
.device--pc {
	.footnote{
		width: 760px;
	}
}

.contact{
	padding-bottom: 80px;
	h3 span{
		display: block;
		font-size: 2.8rem
	}
	h3 .fs-sm{
		font-size: 90%;
	}
	.contact_title{
		padding: 15px 0;
		border-top: 1px solid var(--color);
		border-bottom: 1px solid var(--color);
	}
	.contact_item a{
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 60px;
		font-weight: bold;
		letter-spacing: 0.1em;
		transition: .2s ease-in-out;
		will-change: transform;
	}
	.contact_item a::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 20px;
		width: 12px;
		height: 12px;
		margin-top: -7px;
		transform: rotate(45deg);
		transition: .1s ease-out;
	}
	.shop{
		grid-template-columns: 1fr 1fr 1fr;
		gap: 20px;
		.contact_item a{
			background-color: var(--color1);
			color: #ffffff;
		}
		.contact_item a::after {
			border-top: solid 2px #ffffff;
			border-right: solid 2px #ffffff;
		}
	}
	.area{
		grid-template-columns: 1fr 1fr 1fr 1fr;
		gap: 20px;
		.contact_item a{
			background-color: var(--color4);
			color: var(--color1);
			border: 1px solid var(--color1);
		}
		.contact_item a::after {
			border-top: solid 2px var(--color1);
			border-right: solid 2px var(--color1);
		}
	}
}
.device--pc{
	.shop{
		.contact_item a:hover{
			background-color: #ffffff;
			border: solid 1px var(--color);
			color: var(--color);
		}
		.contact_item a:hover::after {
			border-top: solid 2px var(--color);
			border-right: solid 2px var(--color);
		}
	}
	.area{
		grid-template-columns: 1fr 1fr 1fr 1fr;
		.contact_item a:hover{
			background-color: #ffffff;
			border-color: var(--color);
			color: var(--color);
		}
		.contact_item a:hover::after {
			border-top: solid 2px var(--color);
			border-right: solid 2px var(--color);
		}
	}
}


/* 
 add contents
==================================================== */
.add_section .section_heading{
	position: relative;
	margin-bottom: 50px;
	font-family: 'Noto Serif JP', serif;
	font-size: 3.65rem;
	text-align: center;
	font-weight: 500;
}
.add_section .section_heading .jp {
	position: relative;
	z-index: 1;
}
.add_section .section_heading .en {
	position: absolute;
	top: -20px;
	left: 0;
	right: 0;
	margin: auto;
	font-family: 'Satisfy', cursive;
	color: #ffff;
	font-size: 8.0rem;
	font-style: italic;
	line-height: 1.1;
	letter-spacing: 0.1em;
	text-transform: capitalize;
}
.button.-brown{
	width: 456px;
	height: 80px;
	background-color: #734a16;
	font-size: 2.4rem;
	transition: .2s ease-out;
	will-change: transform;
}
.button.-brown ::after {
	top: 50%;
	right: 20px;
	width: 12px;
	height: 12px;
	margin-top: -7px;
	border-top: solid 2px #ffffff;
	border-right: solid 2px #ffffff;
	border-bottom: none;
	transform: rotate(45deg);
	transition: .1s ease-out;
}
.button.-brown span::before {
	content: "";
	display: inline-block;
	width: 24px;
	height: 100%;
	margin-right: 20px;
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto;
}
.device--pc .button.-brown:hover{
	filter: brightness(1.2);
}
.device--pc .button.-brown:hover::after {
	transform: rotate(45deg) translate(2px, -2px);
}


/* photo 
====================================================*/
.reserve_link_list{
	display: flex;
	justify-content: center;
	margin-top: 100px;
	padding-bottom: 100px;
}
.reserve_link_list .button.-brown{
	margin: 0 40px;
}
.reserve_link_list .online .button span::before {
	background-image: url(/wed/photo/images/icon-online_reserve.png);
}
.reserve_link_list .visit .button span::before {
	background-image: url(/wed/campaign/photo2024/images/icon-visit_reserve.png);
}

.button.-brown span{
	left: -12px;
	display: flex;
	height: inherit;
	align-items: center;
}
/*------------------------------------*/

/* area
====================================================*/
.campaign{
	padding-top: 90px;
    padding-bottom: 90px;
	font-family: "yu-gothic-pr6n", sans-serif;
}
[data-area="home"] .campaign{
	margin-top: 70px;
}
.device--pc .campaign .cassette_image{
	width: 650px;
	height: 384px;
}
.device--pc .campaign .cassette_image img{
	position: absolute;
	width: 100%;
}
.device--pc .campaign .cassette_item{
	align-items: center;
}
.device--pc .campaign .cassette_detail{
	margin-top: 0;
}
.campaign .button_container{
	text-align: right;
}
.campaign .button.-primary span{
	left: 0;
}
.campaign .button {
	margin-top: 70px;
}

.campaign .button.-primary {
	width: 340px;
	height: 65px;
	background: #bcb9aa;
	transition: .2s ease-out;
	will-change: transform;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.device--pc .button.-primary:hover{
	color:#bcb9aa;
	background-color: #fff;
	border: 1px solid #bcb9aa;
}
.device--pc .button.-primary:hover::before{
	background: #fff;
}
.device--pc .button.-primary:not(.accordion-button):hover::after{
	right: 12px;
    width: 38px;
}
.campaign .detail-container {
	background-color: #ffffff;
	text-align: left;
}
.wedding-campaign-title{
	font-size: 36px;
    background: url(/wed/campaign/plaza-plan/images/common/wedding_fair.png) no-repeat;
    width: 12em;
    margin: 0 auto;
    text-align: center;
    background-size: contain;
    height: 85px;
    background-position: center;
	font-weight: 500;
}

/* toyou
====================================================*/
/* .toyou{
	font-family: var(--font-gothic);
} */
.toyou-point {
	padding: 110px 0;
}
.toyou-point .section_lead{
	font-size: 2.0rem;
}
.toyou-point-list {
	margin: 50px auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.toyou-point-item {
	width: calc(33.3% - 25px);
	padding: 12px 13px 40px;
	margin-right: 25px;
	box-shadow: 7px 10px #DBC3C3;
	border: 1px solid #E79696;
}
.toyou-point-item:nth-child(-n+3) {
margin-bottom: 44px;
}
.toyou-point-item:nth-child(3n),
.toyou-point-item:last-child {
margin-right: 0;
}
.toyou-point-item img {
	width: 100%;
}
.toyou-point-title {
	font-size: 20px;
	margin: 28px 0 42px;
	color: #836154;
	line-height: 1.6;
	text-align: center;
}
.toyou-point-lead {
	font-size: 16px;
	line-height: 1.6;
}
/* ----------------------------------------- */
.toyou-area {
	padding: 110px 0 150px;
}
.toyou-area-list {
	max-width: 1120px;
	width: 100%;
	margin: 60px auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	column-gap: 35px;
	row-gap:50px;
}
.toyou-area-list li {
	width: calc((100% - 70px) / 3);
}
.toyou-area-list a{
	transition: .2s ease-in-out;
	will-change: transform;
}
.toyou-area-list li img {
	height: 235px;
    object-fit: cover;
}
.toyou-area-country {
	font-size:18px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	background-color: #bcb9aa;
	line-height: 24px;
	padding: 7px 0;
}
.area-button-wrapper {
	display: flex;
	justify-content: center;
	margin-top: 130px;
}
.area-button-wrapper a {
	display: inline-block;
	width: 480px;
	height: 90px;
	line-height: 90px;
	background: #E79696;
	color: #fff;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	position: relative;
}
.device--pc .toyou-area-list a:hover{
	filter: brightness(1.1);
}

.add_section.campaign{
	.button.-primary::after{
		right: 10px;
	}
}
.coming-soon-block{
	margin-top: 80px;
}
.campaign-fair-banner-link{
	margin-top: 65px;
	display: block;
	cursor: pointer;
}