@charset "UTF-8";

/*ceremony
----------------------------------------*/
.ceremony_wrap {
	max-width: calc(50% + 55.2rem);
	margin: 0 0 0 auto;
	display: flex;
	gap: 10.9rem;
	margin-bottom: 18.8rem;
}
.ceremony_ttl {
	width: 10rem;
	padding: 15rem 0 0;
}
.ceremony_ttl h2 {
	position: sticky;
	top: 24.1rem;
	left: 0;
	display: flex;
	gap: .7rem;
	font-weight: 400;
	color: #164114;
}
.ceremony_ttl h2 span:first-child {
	font-size: 3rem;
	display: block;
	writing-mode: vertical-rl;
	letter-spacing: .5em;
	margin: -.5rem 0 0 -.7rem;
}
.ceremony_ttl h2 span.en {
	font-size: 1.3rem;
	display: block;
	writing-mode: vertical-rl;
	letter-spacing: .1em;
}
.ceremony_contents {
	flex: 1;
	padding-top: 14rem;
}
.ceremony_intro {
	margin-bottom: 10.4rem;
}
.ceremony_intro h3 {
	font-size: 2.3rem;
	letter-spacing: .15em;
	font-weight: 400;
	margin-bottom: 2.2rem;
}
.ceremony_intro p {
	font-size: 1.4rem;
	letter-spacing: .1em;
	line-height: 2.2;
}
.ceremony_item + .ceremony_item {
	margin-top: 7.7rem;
}
.ceremony_item_img {
	overflow: hidden;
}
.ceremony_item_slide {
	width: 84.5rem;
}
.ceremony_item_slide .slick-track::after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	clear: both;
}
.ceremony_item_slide figure {
	width: 84.2rem;
	float: left;
	margin-right: .3rem;
}
.ceremony_item_slide .slick-dots {
	display: flex;
	gap: .5rem;
	margin-top: 1.9rem;
}
.ceremony_item_slide .slick-dots button {
	display: block;
	appearance: none;
	width: .5rem;
	height: .5rem;
	border-radius: 50%;
	padding: 0;
	margin: 0;
	border: 0;
	background: #DAD1C5;
	overflow: hidden;
	text-indent: -99rem;
}
.ceremony_item_slide .slick-dots .slick-active button {
	background: #B99C76;
}
.ceremony_item_txt {
	padding: 3.6rem 0 0;
}
.ceremony_item_txt h3 {
	font-size: 2.3rem;
	font-weight: 400;
	letter-spacing: .15em;
	margin-bottom: 2.9rem;
}
.ceremony_item_txt h4 {
	font-size: 1.8rem;
	font-weight: 400;
	letter-spacing: .15em;
	margin-bottom: 1.2rem;
	line-height: 2.05;
}
.ceremony_item_txt p {
	font-size: 1.3rem;
	letter-spacing: .1em;
	line-height: 2.1538;
}
.ceremony_item_spec {
	border-top: .1rem solid #DAD1C5;
	margin-top: 3.7rem;
	padding: 2.5rem 0 0;
}
.ceremony_item_spec span {
	margin-left: 3rem;
}
.ceremony_item_spec p {
	font-size: 1.3rem;
	letter-spacing: .1em;
	line-height: 2.2;
}
@media only screen and (max-width: 768px) {
	.ceremony_wrap {
		max-width: none;
		display: block;
		margin-bottom: 7rem;
	}
	.ceremony_ttl {
		display: none;
	}
	.ceremony_contents {
		padding-top: 5rem;
	}
	.ceremony_intro {
		margin: 0 2.4rem 8rem 3.3rem;
	}
	.ceremony_item + .ceremony_item {
		margin-top: 8rem;
	}
	.ceremony_item_slide {
		width: auto;
	}
	.ceremony_item_slide figure {
		width: auto;
		margin-right: 0;
	}
	.ceremony_item_slide .slick-dots {
		margin: 1.9rem 2.6rem 0;
	}
	.ceremony_item_txt {
		padding: 3rem 0 0 2.6rem;
	}
	.ceremony_item_txt h3 {
		margin: 0 3.3rem 1rem 0;
	}
	.ceremony_item_txt h4 {
		margin: 0 3.2rem 1.5rem 0;
	}
	.ceremony_item_txt p {
		margin-right: 3.3rem;
		font-size: 1.3rem;
		letter-spacing: .1em;
		line-height: 2.1538;
	}
	.ceremony_item_spec {
		margin: 1.9rem 0 0 2.6rem;
		padding: 2.4rem 0 0;
	}
	.ceremony_item_spec span {
		margin-left: 0;
	}
	.ceremony_item_spec span + span {
		margin-left: 3rem;
	}
}

/*banquet
----------------------------------------*/
.banquet .ceremony_item_txt h3 {
	font-size: 1.4rem;
	font-weight: 400;
	letter-spacing: .15em;
	margin-bottom: 2.9rem;
}
.banquet .ceremony_item_txt h3 .en2 {
	font-size: 2.5rem;
	font-weight: 400;
	letter-spacing: .15em;
	margin-bottom: 2.9rem;
	margin-right: 1.9rem;
}
@media only screen and (max-width: 768px) {
	.banquet .ceremony_item_txt h3 {
		margin-bottom: 1.6rem;
	}
}