@charset "UTF-8";

/* Custom Properties
============================================================================= */
:root {
	/* Parts Color */
	--fair-cc-day:#322828;
	--fair-cc-saturday:#326E82;
	--fair-cc-sunday:#8B1A1E;
	--fair-cc-ichioshi:#E17FA3;
	--fair-cc-button-A:#888064;

	--fair-cc-bg-A:#E7E5E3;
	--fair-cc-bg-B:#E7E5E3;
	--fair-cc-bg-C:#888064;

	--fair-cc-A:#282828;
	--fair-cc-B:#E7E5E3;
	--fair-cc-C:#C2C2C2;
	--fair-cc-D:#888064;
	--fair-cc-E:#B5B5B5;

	/* Header height */
	--fair-header-height:.80rem;
	--fair-header-height-change:var(--fair-header-height);

	/* Font family */
	--fair-ff-A:"source-han-serif-jp-subset", sans-serif;
	--fair-ff-B:"garamond-premier-pro-display", serif;

	/* Letter Spacing Base */
	--fair-ls-A:.10em;

	/* Text Size Set */
	--fair-base-lh:1.5;
	--fair-base-ls:0;

	--fair-text-fs-A:.14rem;
	--fair-text-ls-A:0;
	--fair-text-lh-A:2;

	--fair-text-fs-B:.13rem;
	--fair-text-ls-B:.01em;
	--fair-text-lh-B:1.7;

	--fair-text-fs-C:.16rem;
	--fair-text-ls-C:0;
	--fair-text-lh-C:2;

	/* Heading Size Set */
	--fair-heading-fs-A:.16rem;
	--fair-heading-ls-A:0;
	--fair-heading-lh-A:1.7;

	--fair-heading-fs-B:.20rem;
	--fair-heading-ls-B:0;
	--fair-heading-lh-B:1.7;

	/* Thumbnail Aspect Ratio */
	--fair-thumbnaile-ratio-A:3/2;
	--fair-thumbnaile-ratio-B:1/1;
	--fair-thumbnaile-ratio-C:16/9;

	/* Section Padding Block */
	--fair-pd-b-A:1.00rem;
	--fair-pd-b-B:.65rem;

	/* Shadow */
	--fair-shadow-A:0 0 .14rem rgba(0,0,0,.1);

	/* Radius */
	--fair-radius-A:.10rem;
	--fair-radius-B:.05rem;

	/* Hover Duration */
	--fair-t-duration-A:.5s;
	--fair-t-duration-B:1s;
}
body.headerMenuUp {
	--fair-header-height-change:0rem;
}
@media print, screen and (min-width: 641px) {
	/* PC Width */
	:root {
		--fair-width-pc-A:8.30rem;
		--fair-width-pc-B:11.40rem;
		--fair-width-pc-C:10.00rem;
	}
}
@media screen and (max-width: 640px) {
	:root {
		/* Section Padding Block */
		--fair-pd-b-A:.40rem;
		--fair-pd-b-B:.40rem;

		/* SP Inline Padding */
		--fair-pd-i-sp-A:.24rem;
		--fair-pd-i-sp-B:.10rem;

		/* Header Height */
		--fair-header-height:.70rem;

		/* Heading Size Set */
		--fair-text-fs-A:.12rem;
		--fair-text-ls-A:0;
		--fair-text-lh-A:1.5;

		--fair-text-fs-C:.15rem;
		--fair-text-ls-C:0;
		--fair-text-lh-C:1.8;

		--fair-heading-fs-A:.14rem;
		--fair-heading-ls-A:.02em;
		--fair-heading-lh-A:1.7;

		--fair-heading-fs-B:.15rem;
		--fair-heading-ls-B:0;
		--fair-heading-lh-B:1.56;

		/* Shadow */
		--fair-shadow-A:0 0 .07rem rgba(0,0,0,.1);

		/* Radius */
		--fair-radius-A:.05rem;
	}
}
body {
	/* ScrollBar Width *JavascriptOverwrite */
	--fair-scrollbar-w:0px;
}

/* Rondomark Common Overwrite
============================================================================= */
*[id]:target {
	scroll-margin-top:var(--fair-header-height);
}
.mod_main {
	overflow:visible;
}
[data-simplebar] .simplebar-track.simplebar-horizontal {
	height:4px;
}
[data-simplebar] .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
	height:100%;
}
[data-simplebar] .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
	height:100%;
	background-color:var(--fair-cc-D);
	border-radius: 1.00rem;
}
[data-simplebar] .simplebar-track.simplebar-horizontal .simplebar-scrollbar::before {
	content:none;
}


/* Rondomark Common Style Inheritance
============================================================================= */


/* Device Display */
@media print, screen and (min-width: 641px) { /* SP Hidden */
	[data-sc-sp] {
		display:none!important;
	}
}
@media screen and (max-width: 640px) { /* PC Hidden */
	[data-sc-pc] {
		display:none!important;
	}
}

:where(.fair_l-container :is(h1,h2,h3,h4,h5,h6,dt,button,a)) {
	font-weight:500;
}

/* object-fit */
.of {
	overflow:hidden;
}
.of img {
	object-fit:cover;
	background-size: cover;
	background-position: center center;
	width: 100%;
	height: 100%;
}

/* line-clamp */
:is(._line-clamp,.line_clamp) {
	display: -webkit-inline-box;
	-webkit-box-orient: vertical;
	text-align:left;
	overflow: hidden;
}
:is(._line-clamp,.line_clamp)._line1 {
	-webkit-line-clamp: 1;
}
:is(._line-clamp,.line_clamp)._line2 {
	-webkit-line-clamp: 2;
}
:is(._line-clamp,.line_clamp)._line3 {
	-webkit-line-clamp: 3;
}
@media screen and (max-width: 640px) {
	:is(._line-clamp,.line_clamp)._sp-line1 {
		-webkit-line-clamp: 1;
	}
	:is(._line-clamp,.line_clamp)._sp-line2 {
		-webkit-line-clamp: 2;
	}
	:is(._line-clamp,.line_clamp)._sp-line3 {
		-webkit-line-clamp: 3;
	}
	:is(._line-clamp,.line_clamp)._sp-line4 {
		-webkit-line-clamp: 4;
	}
}


/* Javascript .fair_js-×××
============================================================================= */

/* Accordion
----------------------------------------------------------------------------- */
.fair_js-accordion-button {
	cursor: pointer;
	font-weight:500;
}
@media print, screen and (min-width: 641px) {
	.fair_js-accordion-button:not(.__sp) {
		cursor: pointer;
	}
}
@media screen and (max-width: 640px) {
	.fair_js-accordion-button:not(.__pc) {
		cursor: pointer;
	}
}

.fair_js-accordion-target {
	overflow: hidden;
	position: relative;
}
.fair_js-accordion-target[aria-hidden=true] {
	height: 0;
}
.fair_js-accordion-target[aria-hidden=false] {
	z-index: 1;
}

/* Modal
----------------------------------------------------------------------------- */

/* Modal Basic
----------------------------------------------------------------------------- */
html.__modal-active {
	overflow-y:hidden !important;
}
.fair_js-modal_container {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	box-sizing: border-box;
	margin: auto;
	z-index: 2;
	width: 100%;
	height: 100%;
	z-index: 2500000000;
	opacity: 0;
	transition: opacity .5s;
	position: fixed;
	inset:0;
	-webkit-tap-highlight-color: transparent !important;
	overflow: hidden;
	visibility: visible;
}
.fair_js-modal_container:focus {
	outline: none !important;
}
.__modal-active .fair_js-modal_container {
	opacity: 1;
	pointer-events: auto;
	overflow-y: scroll;
	overscroll-behavior-y: contain;
}
.__modal-noclick .fair_js-modal_container {
	pointer-events: none !important;
}
.fair_js-modal_wrap {
	display: flex;
	align-items: center;
	margin: auto 0;
	padding-top: .80rem;
	padding-bottom: .80rem;
	position: relative;
	transition: height 0.5s;
}
@media print, screen and (min-width: 641px) {
	.fair_js-modal_wrap {
		width: 7.40rem;
	}
}
@media screen and (max-width: 640px) {
	.fair_js-modal_wrap {
		width: calc(100% - .32rem);
	}
}
.fair_js-modal_inner {
	flex-shrink: 0;
	box-sizing: border-box;
	width: 100%;
	background-color: #fff;
	position: relative;
	outline: none;
	transition: opacity 0.5s;
	opacity:0;
	pointer-events: none;
	border-radius:var(--fair-radius-A);
}
.__modal-contents-active .fair_js-modal_inner {
	opacity:1;
	pointer-events: auto;
}
.fair_js-modal-close {
	display:flex;
	align-items: center;
	justify-content: center;
	width:.25rem;
	height:auto;
	aspect-ratio: 1/1;
	border:0;
	background:none;
	appearance: none;
	position:absolute;
	top:.28rem;
	right:.28rem;
	cursor: pointer;
	z-index:2;
}
.fair_js-modal-close i {
	display:flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height:auto;
	aspect-ratio: 1/1;
	position:relative;
}
.fair_js-modal-close::before,
.fair_js-modal-close::after {
	content:"";
	display:block;
	width:100%;
	border-bottom:1px solid #000;
	position:absolute;
}
.fair_js-modal-close::before {
	transform:rotate(-45deg);
}
.fair_js-modal-close::after {
	transform:rotate(45deg);
}
@media screen and (max-width: 640px) {
	.fair_js-modal-close {
		top:.20rem;
		right:.20rem;
	}
}

.fair_js-modal-overlay {
	z-index: 2000000000;
	position: fixed;
	top: -.50rem;
	left: 0;
	width: 100%;
	height: calc(100% + 1.00rem);
	background-color: #333;
	mix-blend-mode: multiply;
	pointer-events:none;
	transition:opacity .5s;
	opacity:0;
}
.__modal-active .fair_js-modal-overlay {
	opacity:1;
	pointer-events:auto;
}
@-webkit-keyframes ball-spin-fade-loader {
	50% {
		opacity: 0.3;
		-webkit-transform: scale(0.4);
		transform: scale(0.4);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@keyframes ball-spin-fade-loader {
	50% {
		opacity: 0.3;
		-webkit-transform: scale(0.4);
		transform: scale(0.4);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
.fair_js-modal-loading {
	width: .05rem;
	height: .05rem;
	margin: auto;
	position: absolute;
	inset:0;
}
.fair_js-modal-loading > div {
	-webkit-animation-fill-mode: both;
	position: absolute;
	width: .15rem;
	height: .15rem;
	border-radius: 100%;
	background-color: #fff;
	margin: 2px;
}
.fair_js-modal-loading > div:nth-child(1) {
	top: .25rem;
	left: 0;
	-webkit-animation: ball-spin-fade-loader 1s -0.96s infinite linear;
	animation: ball-spin-fade-loader 1s -0.96s infinite linear;
}
.fair_js-modal-loading > div:nth-child(2) {
	top: 17.045.45rem;
	left: 17.045.45rem;
	-webkit-animation: ball-spin-fade-loader 1s -0.84s infinite linear;
	animation: ball-spin-fade-loader 1s -0.84s infinite linear;
}
.fair_js-modal-loading > div:nth-child(3) {
	top: 0;
	left: .25rem;
	-webkit-animation: ball-spin-fade-loader 1s -0.72s infinite linear;
	animation: ball-spin-fade-loader 1s -0.72s infinite linear;
}
.fair_js-modal-loading > div:nth-child(4) {
	top: -17.045.45rem;
	left: 17.045.45rem;
	-webkit-animation: ball-spin-fade-loader 1s -0.6s infinite linear;
	animation: ball-spin-fade-loader 1s -0.6s infinite linear;
}
.fair_js-modal-loading > div:nth-child(5) {
	top: -.25rem;
	left: 0;
	-webkit-animation: ball-spin-fade-loader 1s -0.48s infinite linear;
	animation: ball-spin-fade-loader 1s -0.48s infinite linear;
}
.fair_js-modal-loading > div:nth-child(6) {
	top: -17.045.45rem;
	left: -17.045.45rem;
	-webkit-animation: ball-spin-fade-loader 1s -0.36s infinite linear;
	animation: ball-spin-fade-loader 1s -0.36s infinite linear;
}
.fair_js-modal-loading > div:nth-child(7) {
	top: 0;
	left: -.25rem;
	-webkit-animation: ball-spin-fade-loader 1s -0.24s infinite linear;
	animation: ball-spin-fade-loader 1s -0.24s infinite linear;
}
.fair_js-modal-loading > div:nth-child(8) {
	top: 17.045.45rem;
	left: -17.045.45rem;
	-webkit-animation: ball-spin-fade-loader 1s -0.12s infinite linear;
	animation: ball-spin-fade-loader 1s -0.12s infinite linear;
}


/* Layout .fair_l-×××
============================================================================= */

/* Container
----------------------------------------------------------------------------- */
.fair_l-container {
	overflow:visible;
}
.fair_l-container,
.fair_js-modal_container,
.fair_include-osusume {
	/* padding-top:var(--fair-header-height); */
	font-family:var(--fair-ff-A);
	font-size:var(--fair-text-fs-A);
	font-weight:500;
	font-feature-settings: initial;
	letter-spacing:var(--fair-base-ls);
	line-height:var(--fair-base-lh);
}
	:where(.fair_l-container a) {
		color:inherit;
	}

@media (pointer: fine), (hover: hover) {
	.fair_l-container a[href^="tel:"] {
		pointer-events:none;
	}
}
/* Container Reset */
:where(.fair_l-container *) {
	box-sizing: border-box;
	line-height:inherit;
	font-size:inherit;
	letter-spacing:inherit;
}
:where(.fair_l-container img) {
	display:block;
	max-width:100%;
	height:auto;
}
:where(.fair_l-container button) {
	font-family:inherit;
	color:inherit;
}


/* Fair Header
----------------------------------------------------------------------------- */
.fair-header {
	display:flex;
	justify-content:center;
	align-items:center;
	line-height:1;
	height:2.24rem;
}
.fair-header-heading {
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	gap:.16rem;
	font-weight:400;
}
.fair-header-heading > .ja {
	font-family:source-han-serif-japanese, serif;
	font-size:.32rem;
	letter-spacing: .2em;
}
.fair-header-heading > .en {
	font-family:Amiri, serif;
	font-size:.14rem;
	letter-spacing: .14em;
	color:var(--fair-cc-D);
}
@media screen and (max-width: 640px) {
	.fair-header {
		padding-top:.24rem;
		height:1.52rem;
	}
	.fair-header-heading {
		gap:.12rem;
	}
	.fair-header-heading > .ja {
		font-size:.32rem;
		letter-spacing: .05em;
	}
	.fair-header-heading > .en {
		font-size:.12rem;
	}
}


/* Common Headings
----------------------------------------------------------------------------- */
.fair_l-h2-A {
	margin-bottom:.48rem;
	font-size:.20rem;
	line-height:1.5;
	letter-spacing: var(--fair-ls-A);
	text-align: center;
}
@media screen and (max-width: 640px) {
	.fair_l-h2-A {
		margin-bottom:.20rem;
		font-size:.18rem;
		line-height:1.5;
	}
}
.fair_l-h2-B {
	margin-bottom:.20rem;
	font-size:.16rem;
	line-height:1.5;
	letter-spacing: var(--fair-ls-A);
	text-align: center;
	font-weight:500;
}
@media screen and (max-width: 640px) {
	.fair_l-h2-B {
		margin-bottom:.16rem;
		font-size:.14rem;
		line-height:1.5;
	}
}

/* Button
----------------------------------------------------------------------------- */
.fair_l-button-more {
	display:flex;
	margin-top:.64rem;
	margin-inline:auto;
	cursor: pointer;
}
.fair_l-button-more i {
	display:flex;
	justify-content: center;
	align-items: center;
	width:.14rem;
	height:.14rem;
	position:absolute;
	right:0;
}
.fair_l-button-more i::before,
.fair_l-button-more i::after {
	content:"";
	display:block;
	background-color:var(--fair-cc-button-A);
	border-radius: 1px;
	width:100%;
	height:1px;
	position:absolute;
}
.fair_l-button-more i::after {
	transition-duration:var(--fair-t-duration-A);
	transition-property: transform;
	transform:rotate(90deg);
}
.fair_l-button-more.__more-close i::after {
	transform:rotate(0deg);
}
@media screen and (max-width: 640px) {
	.fair_l-button-more {
		margin-top:.32rem;
	}
}

:is(.fair_l-button-A,.fair_l-button-B) {
	display:flex;
	justify-content: center;
	align-items: center;
	height:.50rem;
	font-size:var(--fair-heading-fs-A);
	position:relative;
}
:is(.fair_l-button-A,.fair_l-button-B)[disabled] {
	background-color:var(--fair-cc-C);
	pointer-events: none;
}
:is(.fair_l-button-A,.fair_l-button-B)[disabled].-arrow::after {
	content:none;
}
:is(.fair_l-button-A,.fair_l-button-B).-arrow::after {
	content:"";
	display:block;
	width:.08rem;
	height:auto;
	aspect-ratio:7/11;
	mask-image:url(/wedding/common/img/ico_arrow.svg);
	mask-position:center;
	mask-size: contain;
	mask-repeat: no-repeat;
	position:absolute;
	right:.20rem;
}
.fair_l-button-A {
	border:1px solid;
	color:var(--fair-cc-button-A);
}
.fair_l-button-A.-arrow::after {
	background-color:var(--fair-cc-button-A);
}
.fair_l-button-A.-type_B {
	color:var(--fair-cc-button-A);
}
.fair_l-button-B {
	background-color:var(--fair-cc-button-A);
	color:#fff;
}
.fair_l-button-B.-arrow::after {
	background-color:#fff;
}
@media screen and (max-width: 640px) {
	:is(.fair_l-button-A,.fair_l-button-B) {
		height:.40rem;
	}
	:is(.fair_l-button-A,.fair_l-button-B).-arrow::after {
		right:.10rem;
	}
}

/* Label
----------------------------------------------------------------------------- */
.fair_l-label {
	display:flex;
	justify-content: center;
	align-items: center;
	padding-block:.2em;
	border-radius:1.00rem;
	line-height:1;
	color:#fff;
}
.fair_l-label.-ichioshi {
	background-color:var(--fair-cc-ichioshi);
}

/* Conversion
----------------------------------------------------------------------------- */
.fair_l-conversion-A .fair_l-h2-B {
	margin-bottom:.28rem;
}
.fair_l-conversion-A-contents {
	border-top:1px solid var(--fair-cc-D);
}
.fair_l-conversion-A-contents-item {
	display:flex;
	border-bottom:1px solid var(--fair-cc-D);
	align-items: center;
	padding-block:.12rem;
}
.fair_l-conversion-A-contents-item-time {
	letter-spacing: .1em;
}
.fair_l-conversion-A-contents-item-remaining {
	margin-left:auto;
	padding: .06rem .12rem 4px;
    border-radius: 1.00rem;
    font-size: .16rem;
    line-height: 1;
    background-color: var(--fair-cc-B);
}
.fair_l-conversion-A-contents-item .fair_l-button-B {
	margin-left:.48rem;
	width:1.60rem;
	height:.50rem;
}
.fair_l-conversion-A-contents-note {
	margin-top:.20rem;
	text-align: center;
}
@media print, screen and (min-width: 641px) {
	.fair_l-conversion-A-contents-item {
		padding-inline: .24rem;
	}
}
@media screen and (max-width: 640px) {
	.fair_l-conversion-A .fair_l-h2-B {
		margin-bottom:.16rem;
	}
	.fair_l-conversion-A-contents-item {
		padding:.12rem;
	}
	.fair_l-conversion-A-contents-item-time {
		font-size:.12rem;
		letter-spacing: .1em;
	}
	.fair_l-conversion-A-contents-item-remaining {
		padding: .06rem .08rem;
        font-size: .12rem;
        line-height: 1;
	}
	.fair_l-conversion-A-contents-item .fair_l-button-B {
		margin-left:.16rem;
		width:1.00rem;
		height:.40rem;
	}
	.fair_l-conversion-A-contents-note {
		margin-top:.16rem;
	}
}

/* Reserve Limit
----------------------------------------------------------------------------- */
.fair_l-reservelimit-A {

}
.fair_l-reservelimit-A-heading {
	font-weight: 500;
	text-align: center;
}
.fair_l-reservelimit-A-tel {
	display:flex;
	flex-direction: column;
	align-items: center;
	margin-block-start: .16rem;
}
.fair_l-reservelimit-A-tel-number {
	font-size:.33rem;
	line-height:1.3;
	letter-spacing: .04em;
	font-family:var(--fair-ff-B);
	letter-spacing: .05em;
	font-weight:300;
	color:var(--fair-cc-D);
}
.fair_l-reservelimit-A-tel-number small {
	font-size:.75em;
}
.fair_l-reservelimit-A-tel-businesshour {
}
@media print, screen and (min-width: 641px) {
	.fair_l-reservelimit-A-tel {
		padding-block:.28rem;
		background-color:var(--fair-cc-B);
	}
}
@media screen and (max-width: 640px) {
	.fair_l-reservelimit-A-heading {
		position:relative;
	}
	.fair_l-reservelimit-A-heading::after {
		/* content:""; */
		display:block;
		margin-block-start:.12rem;
		margin-inline:auto;
		height:.24rem;
		width:1px;
		background-color:var(--fair-cc-button-A);
	}
	.fair_l-reservelimit-A-tel {
		margin-block-start: .12rem;
	}
	.fair_l-reservelimit-A-tel-number {
		font-size:.34rem;
	}
	.fair_l-reservelimit-A-tel-number small {
		font-size:.24rem;
	}
	.fair_l-reservelimit-A-tel-businesshour {
		display:grid;
		justify-items: center;
	}
	.fair_l-reservelimit-A-tel-businesshour > span {
		font-size:.12rem;
	}
}


/* Modal
----------------------------------------------------------------------------- */
.fair_l-modal-A {
}
.fair_l-modal-A-header {
	display:flex;
	align-items: center;
	gap:.24rem;
	border-top-left-radius:var(--fair-radius-A);
	border-top-right-radius:var(--fair-radius-A);
	background-color:var(--fair-cc-bg-B);
}
.fair_l-modal-A-header-img {
	flex-shrink: 0;
	width:.90rem;
}
.fair_l-modal-A-header-img img {
	height:auto;
	aspect-ratio:var(--fair-thumbnaile-ratio-B);
}
.fair_l-modal-A-header-date .date {
   font-size:.24rem;
   letter-spacing: .1em;
}
.fair_l-modal-A-header-date .week {
   font-size:.20rem;
   color:var(--fair-cc-day);
}
.fair_l-modal-A-header-date .week.-saturday {
   color:var(--fair-cc-saturday);
}
.fair_l-modal-A-header-date .week.-sunday {
   color:var(--fair-cc-sunday);
}
@media print, screen and (min-width: 641px) {
	.fair_l-modal-A {
	}
	.fair_l-modal-A-header {
		padding:.40rem .50rem .20rem;
	}
	.fair_l-modal-A-contents {
		padding:.30rem .70rem .50rem;
	}
}
@media screen and (max-width: 640px) {
	.fair_l-modal-A-header {
		padding-block:.50rem .16rem;
		gap:.12rem;
	}
	.fair_l-modal-A-header-img {
		flex-shrink: 0;
		width:.90rem;
	}
	.fair_l-modal-A-header-date .date {
	   font-size:.15rem;
	}
	.fair_l-modal-A-header-date .week {
	   font-size:.13rem;
	   color:var(--fair-cc-day);
	}
	.fair_l-modal-A-contents {
		padding-block:.24rem .36rem;
	}
}




/* Hold Time
----------------------------------------------------------------------------- */
.fair_l-holdtime {
	display:flex;
	gap:.16rem;
	font-size:.16rem;
	letter-spacing: .05em;
	line-height:1.10em;
	background-color:var(--fair-cc-B);
}
.fair_l-holdtime-heading {
	display:flex;
	align-items: center;
	padding:.08rem .10rem;
	flex-shrink: 0;
	color:#fff;
	background-color:var(--fair-cc-D);
}
.fair_l-holdtime-time {
	display:flex;
	align-items: center;
	flex-wrap:wrap;
	flex:1;
	padding-block:.08rem;
	line-height:1.25;
}
.fair_l-holdtime-time span {
	line-height: inherit;
}
.fair_l-holdtime-time > span:not([class]):not(:first-child)::before {
	content:"/";
}
.fair_l-holdtime-time > span:not([class]):last-child::after,
.fair_l-holdtime-time > .more::before {
	/* content:"～"; */
}
.fair_l-holdtime-heading > span {
	font-family:var(--fair-ff-A) !important;
	font-weight:500 !important;
}
@media screen and (max-width: 640px) {
	.fair_l-holdtime {
		gap:.08rem;
		font-size:.12rem;
	}
	.fair_l-holdtime-heading {
		padding:.06rem .06rem;
	}
	.fair_l-holdtime-time {
		padding-block:.06rem;
		padding-right:.08rem;
	}
}


/* General ._fair-×××
============================================================================= */

/* Text ._t-
----------------------------------------------------------------------------- */
._t-justify {
	text-align: justify;
}
._t-left {
	text-align: left;
}
._t-right {
	text-align: right;
}
._t-right > img {
	margin-inline-start: auto;
}
._t-center {
	text-align: center;
}
._t-center > img {
	margin-inline: auto;
}
@media (min-width:7.68rem) {
	._t-pc-justify {
		text-align: justify;
	}
	._t-pc-left {
		text-align: left;
	}
	._t-pc-right {
		text-align: right;
	}
	._t-pc-right > img {
		margin-inline-start: auto;
	}
	._t-pc-center {
		text-align: center;
	}
	._t-pc-center > img {
		margin-inline: auto;
	}
}
@media (max-width:7.67rem) {
	._t-sp-justify {
		text-align: justify;
	}
	._t-sp-left {
		text-align: left;
	}
	._t-sp-right {
		text-align: right;
	}
	._t-sp-right > img {
		margin-inline-start: auto;
	}
	._t-sp-center {
		text-align: center;
	}
	._t-sp-center > img {
		margin-inline: auto;
	}
}

/* PC Contents Width
----------------------------------------------------------------------------- */
@media print, screen and (min-width: 641px) {
	[class*="_fair-w-pc-"] {
		margin-inline:auto;
		max-width:100%;
	}
	._fair-w-pc-A {
		width:var(--fair-width-pc-A);
	}
	._fair-w-pc-B {
		width:var(--fair-width-pc-B);
	}
	._fair-w-pc-C {
		width:var(--fair-width-pc-C);
	}
}

/* SP Contents Padding
----------------------------------------------------------------------------- */
@media screen and (max-width: 640px) {
	._fair-pd-i-sp-A {
		padding-inline:var(--fair-pd-i-sp-A);
	}
	._fair-nm-i-sp-A {
		margin-inline:calc(var(--fair-pd-i-sp-A) * -1);
	}
	._fair-pd-i-sp-B {
		padding-inline:var(--fair-pd-i-sp-B);
	}
	._fair-nm-i-sp-B {
		margin-inline:calc(var(--fair-pd-i-sp-B) * -1);
	}
}

/* Week Color
----------------------------------------------------------------------------- */
._fair-week6 {
	color:var(--fair-cc-saturday);
}
._fair-week7 {
	color:var(--fair-cc-sunday);
}

/* Fair Link Hover
----------------------------------------------------------------------------- */
@media (hover) {
/* Normal Hover */
	._fair-hover-A {
		transition-property:opacity;
		transition-duration: var(--fair-t-duration-A);
	}
	._fair-hover-A:hover {
		opacity:.7;
	}

/* Img Hover */
	._fair-pc-img-hover .of img {
		transition-property:transform;
		transition-duration: var(--fair-t-duration-A);
	}
	._fair-pc-img-hover:hover .of img {
		transform:scale(1.05);
	}
}


/* Text Set
----------------------------------------------------------------------------- */
/* Text */
._fair-text-A {
	font-size:var(--fair-text-fs-A);
	line-height:var(--fair-text-lh-A);
	letter-spacing:var(--fair-text-ls-A);
}
._fair-text-B {
	font-size:var(--fair-text-fs-B);
	line-height:var(--fair-text-lh-B);
	letter-spacing:var(--fair-text-ls-B);
}
._fair-text-C {
	font-size:var(--fair-text-fs-C);
	line-height:var(--fair-text-lh-C);
	letter-spacing:var(--fair-text-ls-C);
}
/* Heading */
._fair-heading-A {
	font-size:var(--fair-heading-fs-A);
	line-height:var(--fair-heading-lh-A);
	letter-spacing:var(--fair-heading-ls-A);
}
._fair-heading-B {
	font-size:var(--fair-heading-fs-B);
	line-height:var(--fair-heading-lh-B);
	letter-spacing:var(--fair-heading-ls-B);
	font-weight:500;
}



/* Include Contents .fair_include-×××
============================================================================= */

/* OSUSUME FAIR
----------------------------------------------------------------------------- */
.fair_include-osusume {
	overflow:hidden;
	padding-top:var(--fair-pd-b-A);
	position:relative;
}
.fair_include-osusume-splide {
	--osusume-gap:.40rem;
		overflow:visible;
}
.fair_include-osusume-splide_track {
	overflow:visible;
}
.fair_include-osusume-splide_list {
}
.fair_include-osusume-splide-item {
}
.fair_include-osusume-splide-item > a {
	display:block;
}
.fair_include-osusume-splide-item > a {
}

.fair_include-osusume-splide-item-img img {
	height:auto;
}
.fair_include-osusume-splide-item-date {
	display:flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom:.12rem;
	border-bottom:1px solid var(--fair-cc-D);
	/* border-bottom:1px solid var(--fair-cc-D); */
	/* padding-bottom:.08rem; */
	font-size:.22rem;
	letter-spacing: var(--fair-ls-A);
	line-height:1;
}
.fair_include-osusume-splide-item-date > .event {
	font-weight:500;
	color:var(--fair-cc-day);
}
.fair_include-osusume-splide-item-date > .date {
}
.fair_include-osusume-splide-item-date > .date > small {
	font-size:.15rem;
}
.fair_include-osusume-splide-item-date > .capacity {
	padding:.06rem .12rem 4px;
	border-radius: 1.00rem;
	font-size:.16rem;
	line-height:1;
	background-color:var(--fair-cc-B);
}
.fair_include-osusume-splide-item-time {
	color:var(--fair-cc-D);
}
@media print, screen and (min-width: 641px) {
	.fair_include-osusume::before,
	.fair_include-osusume::after {
		content:"";
		display:block;
		background-color:#fff;
		width:calc(50% - (var(--fair-width-pc-A) + .70rem) / 2);
		opacity:.85;
		height:100%;
		position:absolute;
		top:0;
		z-index:10;
	}
	.fair_include-osusume::before {
		left:0;
	}
	.fair_include-osusume::after {
		right:0;
	}
	.fair_include-osusume .fair_l-h2-A {
		margin-bottom:.40rem;
	}
	.fair_include-osusume-splide-arrow {
		width:var(--osusume-gap);
		height:var(--osusume-gap);
		position:absolute;
		top:1.10rem;
		z-index:20;
	}
	.fair_include-osusume-splide-arrow.-prev {
		left:calc(var(--osusume-gap) * -1);
		transform:scaleX(-1);
	}
	.fair_include-osusume-splide-arrow.-next {
		right:calc(var(--osusume-gap) * -1);
	}
	.fair_include-osusume-splide-arrow svg {
		fill:var(--fair-cc-D);
		width:.16rem;
		height:auto;
	}
	.fair_include-osusume-splide.splide.is-initialized:not(.is-active) .fair_include-osusume-splide_list {
		justify-content: center;
		display:flex;
	}
	.fair_include-osusume-splide-item {
		display:flex;
		flex-direction: column;
	}
	.fair_include-osusume-splide-item-date {
		padding-block:.16rem .10rem;
		/* height:.56rem; */
	}
	.fair_include-osusume-splide-item-img img {
		aspect-ratio:var(--fair-thumbnaile-ratio-B);
	}
	.fair_include-osusume-splide-item-title {
		margin-top:.08rem;
	}
	.fair_include-osusume-splide-item-description {
		margin-top:4px;
	}
	.fair_include-osusume-splide.splide.is-initialized:not(.is-active) .fair_include-osusume-splide_list {
		gap:var(--osusume-gap);
	}
	.fair_include-osusume-splide.splide.is-initialized:not(.is-active) .fair_include-osusume-splide-item {
		width:calc(100% / 3 - var(--osusume-gap) * 2 / 3);
	}
}
@media screen and (max-width: 640px) {
	.fair_include-osusume {
		padding-bottom:.40rem;
	}
	.fair_include-osusume-splide {
		--osusume-height:1.25rem;
		--osusume-gap:.20rem;
	}
	.fair_include-osusume-splide {
		overflow:hidden;
		/* height:calc(var(--osusume-height) * 2 + var(--osusume-gap)); */
	}
	.fair_include-osusume-splide_list {
	}
	.fair_include-osusume-splide-item.__sp-hide {
		display:none;
	}
	.fair_include-osusume-splide-item:not(:first-child) {
		padding-top:var(--osusume-gap);
	}
	.fair_include-osusume-splide-item > a {
		display:flex;
		align-items: center;
		gap:.16rem;
	}
	.fair_include-osusume-splide-item-img {
		flex-shrink: 0;
		width:var(--osusume-height);
	}
	.fair_include-osusume-splide-item-img img {
		aspect-ratio:var(--fair-thumbnaile-ratio-B);
	}
	.fair_include-osusume-splide-item_text {
		flex:1;
	}
	.fair_include-osusume-splide-item-date {
		margin-bottom:.06rem;
		padding-bottom:.08rem;
		font-size:.18rem;
		letter-spacing: var(--fair-ls-A);
		line-height:1;
	}
	.fair_include-osusume-splide-item-date > .capacity {
		padding:4px .08rem 3px;
		font-size:.13rem;
		line-height:1;
		background-color:var(--fair-cc-B);
	}
	.fair_include-osusume-splide-item-date > .event {
		font-weight:500;
		color:var(--fair-cc-day);
	}
	.fair_include-osusume-splide-item-title {
		margin-block:.08rem -.2em;
		font-weight:500;
		font-size:.14rem;
		line-height:1.4;
	}
	.fair_include-osusume-splide-item-date > .date {
	}
	.fair_include-osusume-splide-item-date > .date > small {
		font-size:.13rem;
	}
}

/* Benefits
----------------------------------------------------------------------------- */
.fair_include-benefits {
	padding-block:.80rem 1.00rem;
	background-color:var(--fair-cc-C);
	position:relative;
	z-index: 1;
}
.fair_include-benefits_inner {
	display:flex;
	flex-direction: column;
	gap:.24rem;
}
.fair_include-benefits-item {
	--rr-size:.20rem;
	padding:.40rem .80rem;
	background-color:var(--fair-cc-D);
	position:relative;
	z-index: 1;
}
.fair_include-benefits-item,
.fair_include-benefits-item::before,
.fair_include-benefits-item::after {
	mask-image:
		linear-gradient(0deg, transparent var(--rr-size), #000 var(--rr-size), #000 calc(100% - var(--rr-size)), transparent calc(100% - var(--rr-size))),
		linear-gradient(90deg, transparent var(--rr-size), #000 var(--rr-size), #000 calc(100% - var(--rr-size)), transparent calc(100% - var(--rr-size))),
		url(/wedding/fair-assets/svg/lt.svg),
		url(/wedding/fair-assets/svg/rt.svg),
		url(/wedding/fair-assets/svg/rb.svg),
		url(/wedding/fair-assets/svg/lb.svg)
	;
	mask-repeat:no-repeat;
	mask-size:100%,100%,calc(var(--rr-size) + .01rem),calc(var(--rr-size) + .01rem),calc(var(--rr-size) + .01rem),calc(var(--rr-size) + .01rem);
	mask-position:left top,left top,left top,right top,right bottom,left bottom;
}
.fair_include-benefits-item::before,
.fair_include-benefits-item::after {
	content:"";
	margin:auto;
	position:absolute;
}
.fair_include-benefits-item::before {
	background-color:#EDE8E0;
	z-index:-2;
	inset:1px;
}
.fair_include-benefits-item::after {
	background-color:#fff;
	z-index:-1;
	inset:.10rem;
}
.fair_include-benefits-item-heading {
	margin-bottom:.24rem;
	font-size:.20rem;
	letter-spacing: .1em;
	line-height:1;
	font-weight:500;
	color:var(--fair-cc-D);
}
.fair_include-benefits-item-img {
	aspect-ratio: 279/190;
}
.fair_include-benefits-item-img img {
	height:100%;
}
.fair_include-benefits-item-contents {
	font-size:.14rem;
	line-height:1.7;
	letter-spacing: -.02em;
}
.fair_include-benefits-shuttle_bus {
	display:grid;
	background-color:#fff;
}
.fair_include-benefits-shuttle_bus .img img {
	width:100%;
}
.fair_include-benefits-shuttle_bus .text {
	padding-left:.40rem;
}
.fair_include-benefits-shuttle_bus .text-heading {
	margin-bottom:.16rem;
	color:var(--fair-cc-D);
	font-weight:500;
	font-size:.18rem;
	letter-spacing: 0;
	line-height:1;
}
.fair_include-benefits-shuttle_bus .text-description {
	font-size:.13rem;
	line-height:2;
}
.fair_include-benefits-bg {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	z-index: -1;
	pointer-events: none;
}
@media print, screen and (min-width: 641px) {
	.fair_include-benefits-item {
		display:grid;
		grid-template-columns: 2.50rem 1fr;
		grid-template-rows:1fr auto auto auto 1fr;
		column-gap: .32rem;
	}
	.fair_include-benefits-item-heading {
		grid-row:2/3;
	}
	.fair_include-benefits-item-img {
		grid-row:1/-1;
		grid-column:1/2;
		height:1.70rem;
	}
	.fair_include-benefits-item-contents.-heading {
		grid-row:3/4;
	}
	.fair_include-benefits-item-contents.-description {
		grid-row:4/5;
	}
	.fair_include-benefits-shuttle_bus {
		grid-template-columns:1fr 1fr;
		grid-auto-flow:column;
		align-items: center;
		margin-top:.60rem;
		margin-inline:auto;
		width:6.00rem;
	}
	.fair_include-benefits-shuttle_bus .img {
		grid-column: 2/3;
	}
}
@media screen and (max-width: 640px) {
	.fair_include-benefits {
		margin-bottom:0;
		padding-block:.40rem;
	}
	.fair_include-benefits_inner {
		gap:.32rem;
	}
	.fair_include-benefits-item {
		padding:.32rem .24rem .40rem;
	}
	.fair_include-benefits-item-heading {
		text-align: center;
		display:grid;
		grid-template-rows:auto .12rem;
		justify-items: center;
		gap:.12rem;
		margin-bottom:.12rem;
		font-size:.18rem;
		letter-spacing: .1em;
	}
	.fair_include-benefits-item-heading::after {
		content:"";
		width:1px;
		background-color:var(--fair-cc-D);
	}
	.fair_include-benefits-item-img {
		margin-bottom:.16rem;
	}
	.fair_include-benefits-item-contents {
		display:flex;
		justify-content: center;
		font-size:.12rem;
		line-height:1.8;
	}
	.fair_include-benefits-shuttle_bus {
		margin-top:.48rem;
		margin-inline:auto;
		width:2.80rem;
	}
	.fair_include-benefits-shuttle_bus .img {
	}
	.fair_include-benefits-shuttle_bus .img img {
		width:100%;
	}
	.fair_include-benefits-shuttle_bus .text {
		padding:.24rem;
	}
	.fair_include-benefits-shuttle_bus .text-heading {
		margin-bottom:.12rem;
		font-size:.16rem;
	}
	.fair_include-benefits-shuttle_bus .text-description {
		font-size:.12rem;
		line-height:1.8;
	}
}



/* Archive Common Contents .fair_archive-×××
============================================================================= */

/* Wrapper
----------------------------------------------------------------------------- */
.fair_archive_wrap {
	padding-top:var(--fair-pd-b-A);
}
@media screen and (max-width: 640px) {
	.fair_archive_wrap {
	}
}

/* Archive Banners
----------------------------------------------------------------------------- */
.fair_archive-banners {
	display:flex;
	gap:.40rem;
	margin-bottom:.80rem;
}
.fair_archive-banners-item {
}
.fair_archive-banners img {
	max-width:100%;
	height:auto;
}
@media (min-width:641px) {
	.fair_archive-banners {
		justify-content: center;
	}
}
@media screen and (max-width:640px) {
	.fair_archive-banners {
		align-items: center;
		flex-direction: column;
		gap:.20rem;
		margin-bottom:.40rem;
	}
	.fair_archive-banners img {
		width:3.00rem;
	}
}

/* Tab
----------------------------------------------------------------------------- */
.fair_archive-tab {
	display:flex;
	justify-content: center;
	border-bottom:1px solid var(--fair-cc-button-A);
}
.fair_archive-tab-item {
	display:flex;
	justify-content: center;
	align-items: center;
	border-top-left-radius:var(--fair-radius-A);
	border-top-right-radius:var(--fair-radius-A);
	border-inline:1px solid var(--fair-cc-button-A);
	border-top:1px solid var(--fair-cc-button-A);
	background-color:rgb(from var(--fair-cc-button-A) r g b / .03);
	height:.70rem;
	font-size:.20rem;
	letter-spacing: .1em;
	font-weight:500;
}
p.fair_archive-tab-item {
	border-inline-color:var(--fair-cc-button-A);
	border-top-color:var(--fair-cc-button-A);
	background-color:var(--fair-cc-button-A);
	color:#fff;
}
@media (hover) {
	a.fair_archive-tab-item {
		transition-duration: var(--fair-t-duration-A);
		transition-property: background-color;
	}
	a.fair_archive-tab-item:hover {
		background-color:rgb(from var(--fair-cc-button-A) r g b / .5);
	}
}
@media print, screen and (min-width: 641px) {
	.fair_archive-tab-item {
		width:3.28rem;
	}
}
@media screen and (max-width: 640px) {
	.fair_archive-tab-item {
		flex:1;
		font-size:.13rem;
		height:.44rem;
	}
}


/* Contents Section
----------------------------------------------------------------------------- */
.fair_archive-contents {
}
@media print, screen and (min-width: 641px) {
	.fair_archive-contents {
		padding-block:.60rem;
		background-color:var(--fair-cc-bg-B);
	}
}
@media screen and (max-width: 640px) {
	p.fair_archive-tab-item {
	}
}


/* Calendar Contents .fair_calendar-×××
============================================================================= */

/* Calendar
----------------------------------------------------------------------------- */
.fair_calendar {
}
.fair_calendar-table {
	box-sizing: border-box;
	width: 100%;
}
.fair_calendar-table :is(.thead,.tbody-tr) {
	display: flex;
	width: 100%;
}
.fair_calendar-table :is(.th,.td) {
	flex: 1;
}
.fair_calendar-table-hide_wrap {
	overflow: hidden;
}
.fair_calendar-table-hide_wrap[aria-hidden=true] {
	height: 0;
}
.fair_calendar-table-hide_wrap .tbody {
	overflow: hidden;
}
.fair_calendar-table-hide_wrap .tbody[aria-hidden=true] {
	height: 0;
}
.fair_calendar-table .tbody {
	display: block;
}
.fair_calendar-table-day {
	font-size:.20rem;
	line-height:1;
}
:where(.fair_calendar-table .td.day6 .fair_calendar-table-day) {
	color: var(--fair-cc-saturday);
}
:where(.fair_calendar-table .tbody .td:is(.day7,.holiday) .fair_calendar-table-day) {
	color: var(--fair-cc-sunday);
}
.fair_calendar-table-day > span .month {
	display: inline;
}
.fair_calendar-table-day > span .month:after {
	content: "/";
}
@media print, screen and (min-width: 641px) {
	.fair_calendar-table {
		background-color:#fff;
		border-top:1px solid var(--fair-cc-E);
		border-inline:1px solid var(--fair-cc-E);
	}
	.fair_calendar-table .thead {
		border-bottom: 1px solid var(--fair-cc-E);
		position:sticky;
		top:var(--fair-header-height-change);
		z-index:100;
		font-size:.20rem;
		transition-duration:var(--fair-t-duration-B);
		transition-property:top;
	}
	.fair_calendar-table .th {
		display:flex;
		justify-content: center;
		align-items: center;
		background-color:var(--fair-cc-day);
		height:.50rem;
		color:#fff;
	}
	.fair_calendar-table .th:not(:first-child) {
		border-left:1px solid #fff;
	}
	.fair_calendar-table .tbody-tr {
		border-bottom:1px solid var(--fair-cc-E);
	}
	.fair_calendar-table .td:not(:first-child) {
		border-left:1px solid var(--fair-cc-E);
	}
	.fair_calendar-table .th.day6 {
		background-color:var(--fair-cc-saturday);
	}
	.fair_calendar-table .th.day7 {
		background-color:var(--fair-cc-sunday);
	}
	.fair_calendar-table .td {
		padding:.12rem .12rem .32rem;
	}
	.fair_calendar-table .td:not([rel]) {
		background-color: #D1D1D1;
	}
	.fair_calendar-table-fairgroup {
		display:flex;
		flex-direction: column;
		gap:.24rem;
		margin-top:.28rem;
	}
	.fair_calendar-table-fairgroup-img {
		margin-bottom:.10rem;
		aspect-ratio: var(--fair-thumbnaile-ratio-B);
		position:relative;
	}
	.fair_calendar-table-fairgroup .fair_l-label {
		margin-inline:auto;
		font-size:.11rem;
		max-width:.72rem;
		position:absolute;
		inset-inline:.08rem;
		bottom:.04rem;
	}
	.fair_calendar-table-fairgroup-title {
		min-height:4.5em;
		font-size:.12rem;
		line-height:1.5;
	}
	.fair_calendar-table-fairgroup-other {
		display: block;
		width: 100%;
		text-align: center;
		font-size: .13rem;
		font-weight: 500;
		color: var(--fair-cc-button-A);
		text-decoration: underline;
	}
	.fair_calendar-table-fairgroup-other:hover {
		text-decoration: none;
	}
}
@media screen and (max-width: 640px) {
	.fair_calendar {
		border-bottom:2px solid var(--fair-cc-button-A);
		padding-block:.32rem;
		background-color:var(--fair-cc-bg-A);
		position:relative;
	}
	.fair_calendar::before,
	.fair_calendar::after {
		content:"";
		margin-inline:auto;
		border-inline-style:solid;
		border-inline-color:transparent;
		width:0;
		height:0;
		position:absolute;
		inset-inline: 0;
	}
	.fair_calendar::before {
		border-inline-width:.11rem;
		border-top:.18rem solid var(--fair-cc-button-A);
		top:100%;
	}
	.fair_calendar::after {
		top:calc(100% - 2px);
		border-inline-width:.10rem;
		border-top:.17rem solid var(--fair-cc-bg-A);
	}
	.fair_calendar-sp_note {
		margin-inline:auto;
		padding:.1em .16rem;
		border-radius:1.00rem;
		width:fit-content;
		background-color:var(--fair-cc-bg-C);
		font-size:.14rem;
		text-align: center;
		color:#fff;
	}
	.fair_calendar-table {
		margin-top:.24rem;
	}
	.fair_calendar-table .thead {
		margin-bottom:.08rem;
	}
	.fair_calendar-table .th {
		font-size:.17rem;
		font-weight:500;
		line-height: 1;
		text-align: center;
	}
	.fair_calendar-table .th.day6 {
		color:var(--fair-cc-saturday);
	}
	.fair_calendar-table .th.day7 {
		color:var(--fair-cc-sunday);
	}
	.fair_calendar-table .td {
	}
	.fair_calendar-table-day {
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius:var(--fair-radius-A);
		flex-direction: column;
		align-items: center;
		box-sizing: border-box;
		height:auto;
		aspect-ratio: 1/1;
		font-size:.13rem;
	}
	.fair_calendar-table .td[rel] .fair_calendar-table-day {
		margin:4px;
		border:1px solid var(--fair-cc-E);
		transition-duration: 0.5s;
		transition-property: color,background-color,border-color;
		background-color:#fff;
	}
	.fair_calendar-table .td[rel].__current .fair_calendar-table-day {
		background-color:var(--fair-cc-button-A);
		border-color:var(--fair-cc-button-A);
		color:#fff;
	}
	.fair_calendar-table .td[rel].day6.__current .fair_calendar-table-day {
		background-color:var(--fair-cc-saturday);
		border-color:var(--fair-cc-saturday);
	}
	.fair_calendar-table .td[rel]:is(.day7,.holiday).__current .fair_calendar-table-day {
		background-color:var(--fair-cc-sunday);
		border-color:var(--fair-cc-sunday);
	}
	.fair_calendar-table .td[rel] .fair_calendar-table-day:has(.month) {
		font-size:.11rem;
	}
	.fair_calendar-table .td[rel] .fair_calendar-table-day span {
		position: relative;
	}
	.fair_calendar-table .td:not([rel]) {
		pointer-events: none;
	}
	.fair_calendar-table .td:not([rel]) .fair_calendar-table-day span {
		color:var(--fair-cc-E);
	}
	.fair_calendar-table-fairgroup {
		display: none;
	}
}

/* SP Fair List
----------------------------------------------------------------------------- */
@media screen and (max-width: 640px) {
	.fair_calendar-sp_fair {
		padding-block:.50rem var(--fair-pd-b-A);
	}
	.fair_calendar-sp_fair-heading {
		margin-bottom:.28rem;
		text-align: center;
		font-size:.16rem;
		letter-spacing: .1em;
		font-weight: 500;
		line-height: 1;
	}
	.fair_calendar-sp_fair-subheading {
		margin-block:.4em .28rem;
		text-align: center;
		font-size:.16rem;
	}
	.fair_calendar-sp_fair-subheading::before {
		content:"〈";
		margin-right:.5em;
	}
	.fair_calendar-sp_fair-subheading::after {
		content:"〉";
		margin-left:.5em;
	}
	.fair_calendar-sp_fair-list {
		border-top:1px solid var(--fair-cc-D);
	}
	.fair_calendar-sp_fair-list-item {
		padding-block:.20rem;
		border-bottom:1px solid var(--fair-cc-D);
	}
	.fair_calendar-sp_fair-list-item > a {
		display:flex;
		flex-wrap:wrap;
		gap:.08rem .15rem;
		position:relative;
	}
	.fair_calendar-sp_fair-list-item-heading {
		position:relative;
		padding-right:.20rem;
		width:100%;
	}
	.fair_calendar-sp_fair-list-item-heading::after {
		content:"";
		margin-block:auto;
		display:block;
		width:.08rem;
		height:auto;
		aspect-ratio:7/11;
		background-color:var(--fair-cc-D);
		mask-image:url(/wedding/common/img/ico_arrow.svg);
		mask-position:center;
		mask-size: contain;
		mask-repeat: no-repeat;
		position:absolute;
		inset-block:0;
		right:0;
	}
	.fair_calendar-sp_fair-list-item-img {
		flex-shrink: 0;
		width:.88rem;
	}
	.fair_calendar-sp_fair-list-item-img > img {
		height:auto;
		aspect-ratio: var(--fair-thumbnaile-ratio-B);
	}
	.fair_calendar-sp_fair-list-item_text {
		display:flex;
		flex-direction: column;
		justify-content: center;
		gap:.08rem;
		width:calc(100% - .88rem - .16rem);
	}
}

/* List Contents .fair_list-×××
============================================================================= */

/* Day Block
----------------------------------------------------------------------------- */
.fair_list {
	display:flex;
	flex-direction: column;
	gap:.32rem;
}
.fair_list-dayblock {
	width: 100%;
	/* filter:drop-shadow(var(--fair-shadow-A)); */
}
.fair_list-dayblock-day {
	display:flex;
	background-color:var(--fair-cc-day);
	color:#fff;
	text-align: center;
	line-height: 1;
}
.saturday > .fair_list-dayblock-day {
	background-color:var(--fair-cc-saturday);
}
.sunday > .fair_list-dayblock-day {
	background-color:var(--fair-cc-sunday);
}
.fair_list-dayblock-contents {
	padding-bottom:1px;
	background-color:#fff;
}
@media print, screen and (min-width: 641px) {
	.fair_list-dayblock {
		display:flex;
	}
	.fair_list-dayblock-day {
		justify-content: center;
		flex-shrink: 0;
		align-items: flex-start;
		border-top-left-radius:var(--fair-radius-A);
		border-bottom-left-radius:var(--fair-radius-A);
		width:.90rem;
	}
	.fair_list-dayblock-day_inner {
		display:block;
		padding-block:.24rem;
		position:sticky;
		top:var(--fair-header-height-change);
		transition-duration:var(--fair-t-duration-B);
		transition-property:top;
	}
	.fair_list-dayblock-day_inner > span {
		display:block;
	}
	.fair_list-dayblock-day_inner > span:nth-child(1) {
		font-size:.20rem;
		letter-spacing: .1em;
	}
	.fair_list-dayblock-day_inner > span:nth-child(2) {
		margin-top:.10rem;
		font-size:.15rem;
	}
	.fair_list-dayblock-contents {
		flex:1;
		border-top-right-radius:var(--fair-radius-A);
		border-bottom-right-radius:var(--fair-radius-A);
		padding-inline:.40rem;
	}
}
@media screen and (max-width: 640px) {
	.fair_list {
		gap:.16rem;
		padding-block:.30rem .32rem;
	    background-color: var(--fair-cc-bg-B);
	}
	.fair_list-dayblock-day {
		align-items: center;
		border-top-left-radius:var(--fair-radius-A);
		border-top-right-radius:var(--fair-radius-A);
		padding-left:var(--fair-pd-i-sp-A);
		height:.35rem;
		position:sticky;
		top:var(--fair-header-height-change);
		z-index:10;
		transition-duration:var(--fair-t-duration-B);
		transition-property:top;
	}
	.fair_list-dayblock-day_inner > span:nth-child(1) {
		font-size:.18rem;
		letter-spacing: .1em;
	}
	.fair_list-dayblock-day_inner > span:nth-child(2) {
		font-size:.14rem;
	}
	.fair_list-dayblock-contents {
		border-bottom-left-radius:var(--fair-radius-A);
		border-bottom-right-radius:var(--fair-radius-A);
	}
}

/* List Item
----------------------------------------------------------------------------- */
.fair_list-item {
	padding-block:.40rem;
	border-bottom:1px solid var(--fair-cc-D);
}

.fair_list-dayblock-contents > .fair_list-item:first-child:last-child {
	border-bottom:0;
}
.fair_list-item-img img {
	height:auto;
	aspect-ratio: var(--fair-thumbnaile-ratio-B);
}
.fair_list-item .fair_l-label {
	padding:.4em .20rem .45em;
	line-height:1;
	width:fit-content;
}
.fair_list-item-links {
	display:flex;
	width:100%;
	gap:.20rem;
}
.fair_list-item-links > * {
	flex:1;
}
.fair_list-item-more {
	display:flex;
	margin:.24rem auto .32rem;
}
.fair_list-item-more[aria-expanded="false"] .close {
	display:none;
}
.fair_list-item-more[aria-expanded="true"] .open {
	display:none;
}
.fair_list-item-more::after {
}
.fair_list-item-more[aria-expanded="true"]::after {
}
.fair_list-item-more i {
	display:flex;
	justify-content: center;
	align-items: center;
	width:.14rem;
	height:.14rem;
	position:absolute;
	right:0;
}
.fair_list-item-more i::before,
.fair_list-item-more i::after {
	content:"";
	display:block;
	background-color:var(--fair-cc-button-A);
	border-radius: 1px;
	width:100%;
	height:1px;
	position:absolute;
}
.fair_list-item-more i::after {
	transition-duration:var(--fair-t-duration-A);
	transition-property: transform;
	transform:rotate(90deg);
}
.fair_list-item-more[aria-expanded="true"] i::after {
	transform:rotate(0deg);
}
@media print, screen and (min-width: 641px) {
	.fair_list-item {
		display:flex;
		flex-wrap:wrap;
		gap:.30rem .40rem;
	}
	.fair_list-item-img {
		flex-shrink: 0;
		width:2.80rem;
	}
	.fair_list-item_text {
		display:flex;
		flex-direction: column;
		justify-content: flex-start;
		width:calc(100% - 2.80rem - .40rem);
	}
	.fair_list-item-title {
		margin-bottom:calc(.5em - .5lh);
	}
	.fair_l-label + .fair_list-item-title {
		margin-top:.08rem;
	}
	.fair_list-item-summary {
		margin-top:.04rem;
		line-height:1.7;
	}
	.fair_list-item-summary > span {
	}
	.fair_list-item .fair_l-holdtime {
		margin-top:auto;
	}
	.fair_list-item .fair_l-holdtime + .fair_l-holdtime {
		margin-top:.08rem;
	}
	.fair_list-item-links {
		margin-inline:auto;
		width:5.60rem;
		gap:.40rem;
	}
	.fair_list-item-more {
		width:3.20rem;
	}

}
@media screen and (max-width: 640px) {
	.fair_list-item {
		border-bottom-style:dashed;
		padding-block:.20rem;
		display:grid;
		grid-template-rows:auto .08rem auto .08rem auto .06rem auto .04rem auto .16rem auto;
		grid-template-columns:1.10rem .16rem 1fr;
	}
	.fair_list-item_text {
		display:contents;
	}
	.fair_list-item .fair_list-item-img {
		grid-row:5/10;
		grid-column:1/2;
	}
	.fair_list-item .fair_l-label {
		grid-row:1/2;
		grid-column:1/4;
		padding-inline:.12rem;
	}
	.fair_list-item .fair_list-item-title {
		grid-row:3/4;
		grid-column:1/4;
	}
	.fair_list-item .fair_list-item-title:first-child {
		margin-top:-.10rem;
	}
	.fair_list-item-title > a {
		padding-right:.20rem;
		position:relative;
	}
	.fair_list-item-title > a::after {
		content:"";
		margin-block:auto;
		display:block;
		width:.08rem;
		height:auto;
		aspect-ratio:7/11;
		background-color:var(--fair-cc-D);
		mask-image:url(/wedding/common/img/ico_arrow.svg);
		mask-position:center;
		mask-size: contain;
		mask-repeat: no-repeat;
		position:absolute;
		inset-block:0;
		right:0;
	}
	.fair_list-item .fair_list-item-summary {
		grid-row:5/6;
		grid-column:3/4;
		margin-top:calc(.5em - .5lh);
	}
	.fair_list-item .fair_l-holdtime {
		grid-row:7/8;
		grid-column:3/4;
	}
	.fair_list-item .fair_l-holdtime + .fair_l-holdtime {
		grid-row:9/10;
		grid-column:3/4;
	}
	.fair_list-item .fair_l-holdtime-heading {
		padding-block:.03rem;
	}
	.fair_list-item .fair_l-holdtime-time {
		padding-block:.03rem;
	}
	.fair_list-item .fair_list-item-links {
		grid-row:12/13;
		grid-column:1/4;
	}

	.fair_list-item-links {
		gap:.10rem;
	}
	.fair_list-item-more {
		margin-block:.16rem .24rem;
		width:2.50rem;
	}
	.fair_list-item-more > span {
		font-size:.13rem;
		letter-spacing: 0;
	}
}

/* List Pager
----------------------------------------------------------------------------- */
.cms_common-single_pager {
	margin-top:.20rem;
}
:is(.cms_common-single_pager-prev,.cms_common-single_pager-next):first-child:last-child {
	grid-column:1/2;
}
@media print, screen and (min-width: 641px) {
	.cms_common-single_pager:has(:is(.cms_common-single_pager-prev,.cms_common-single_pager-next):first-child:last-child) {
		grid-template-columns: 2.00rem;
	}
}
@media screen and (max-width: 640px) {
	.cms_common-single_pager {
		margin-top:.16rem;
	}
	.cms_common-single_pager:has(:is(.cms_common-single_pager-prev,.cms_common-single_pager-next):first-child:last-child) {
		grid-template-columns: .68rem;
		justify-content: center;
	}
}


/* Single Contents .fair_single-×××
============================================================================= */

/* Main Contents Layout
----------------------------------------------------------------------------- */
.fair_single-main {
	padding-top:1.20rem;
}
.fair_single-main_article {
}
@media print, screen and (min-width: 641px) {
	.fair_single-main {
		display:flex;
		align-items: flex-start;
		justify-content: space-between;
	}
	.fair_single-main_article {
		width:8.00rem;
	}
	.fair_single-main_article {
		width:8.00rem;
	}
	.fair_single-fixed_conversion {
		width:2.20rem;
		position:sticky;
		top:var(--fair-header-height-change);
		transition-duration:var(--fair-t-duration-B);
		transition-property:top;
	}
}
@media screen and (max-width: 640px) {
	.fair_single-main {
		padding-top:.80rem;
	}
}

/* Intro
----------------------------------------------------------------------------- */
.fair_single-main-date {
	display:flex;
	justify-content:center;
	align-items: center;
	margin-bottom:.30rem;
	padding-block:.1em;
	border-top-left-radius:var(--fair-radius-A);
	border-top-right-radius:var(--fair-radius-A);
	background-color:var(--fair-cc-day);
	font-size:.22rem;
	letter-spacing: .2em;
	color:#fff;
}
.fair_single-main-date.-saturday {
	background-color:var(--fair-cc-saturday);
}
.fair_single-main-date.-sunday {
	background-color:var(--fair-cc-sunday);
}
.fair_single-main-date small {
	font-size:.7em;
}
.fair_single-main_article > .fair_l-label {
	margin-bottom:.10rem;
	padding:.05em .12rem;
	width:fit-content;
}
.fair_single-main-title {
	margin-bottom:.30rem;
}
.fair_single-main-img {
}
.fair_single-main-img img {
	width:100%;
}
.fair_single-main_article > .fair_l-holdtime {
	margin-top:.30rem;
}
.fair_single-main_article > .fair_l-holdtime + .fair_l-holdtime {
	margin-top:.08rem;
}
.fair_single-main-summary {
	margin-top:.30rem;
}
@media print,screen and (min-width: 641px) {
	.fair_single-main_article > .fair_l-label {
		padding-inline:.16rem;
		font-size:.14rem;
	}
}
@media screen and (max-width: 640px) {
	.fair_single-main-date {
		margin-bottom:.20rem;
		font-size:.19rem;
	}
	.fair_single-main-date small {
		font-size:.14rem;
	}
	.fair_single-main_article > .fair_l-label {
		margin-bottom:.10rem;
		padding:.05em .08rem .04em;
	}
	.fair_single-main-title {
		margin-bottom:.20rem;
		font-size:.18rem;
	}
	.fair_single-main-img {
	}
	.fair_single-main-img img {
		width:100%;
	}
	.fair_single-main_article > .fair_l-holdtime {
		margin-top:.20rem;
	}
	.fair_single-main_article > .fair_l-holdtime + .fair_l-requiredtime {
		margin-top:.10rem;
	}
	.fair_single-main-summary {
		margin-top:.20rem;
		text-align: justify;
	}
}

/* Privilege
----------------------------------------------------------------------------- */
.fair_single-main-privilege {
	margin-top:var(--fair-pd-b-B);
	padding-block:var(--fair-pd-b-B);
	position:relative;
	z-index: 1;
}
.fair_single-main-privilege_inner {
	border-top:4px solid var(--fair-cc-D);
	background-color:#fff;
	/* box-shadow:var(--fair-shadow-A); */
}
.fair_single-main-privilege-heading {
	margin-bottom:.40rem;
	font-size:.24rem;
	letter-spacing: .1em;
	line-height:1;
	font-weight:500;
	color:var(--fair-cc-D);
	text-align: center;
}
.fair_single-main-privilege-contents {
	margin-bottom:.36rem;
}
.fair_single-main-privilege-option + .fair_single-main-privilege-option {
	margin-top:.36rem;
}
.fair_single-main-privilege-option > dt {
	border-bottom:1px solid var(--fair-cc-D);
	padding:.08rem .08rem;
	position:relative;
	font-weight:500;
}
.fair_single-main-privilege-option > dt::after {
	content:"";
	display:block;
	margin-block:auto;
	border-right:1px solid var(--fair-cc-D);
	border-bottom:1px solid var(--fair-cc-D);
	width:.08rem;
	height:.08rem;
	position:absolute;
	inset-block: 0;
	right:.20rem;
	transform:rotate(45deg) translate(-.02rem,-.02rem);
	transition-duration: var(--fair-t-duration-A);
}
.fair_single-main-privilege-option > dt[aria-expanded="true"]::after {
	transform:rotate(225deg) translate(-.02rem,-.02rem);
}
.fair_single-main-privilege-option > dd > p {
	padding:.20rem .08rem .08rem;
}
@media print, screen and (min-width: 641px) {
	.fair_single-main-privilege::before {
		--minsize:10.00rem;
		content:"";
		display:block;
		margin-left:-.80rem;
		width:calc(100% + 1.60rem);
		height:100%;
		background-color:var(--fair-cc-bg-A);
		position:absolute;
		top:0;
		left:0;
		z-index: -1;
	}
	.fair_single-main-privilege_inner {
		padding:.40rem .40rem .60rem;
	}
	.fair_single-main-privilege-option > dt {
		font-size:.18rem;
	}
}
@media screen and (max-width: 640px) {
	.fair_single-main-privilege {
		padding-block:var(--fair-pd-i-sp-A);
		background-color:var(--fair-cc-bg-B);
	}
	.fair_single-main-privilege_inner {
		padding-block:.30rem;
	}
	.fair_single-main-privilege-contents {
		background-color:#fff;
	}
	.fair_single-main-privilege-heading {
		margin-bottom:.24rem;
		font-size:.17rem;
	}
	.fair_single-main-privilege-contents {
		margin-bottom:.24rem;
	}
	.fair_single-main-privilege-option {
	}
	.fair_single-main-privilege-option + .fair_single-main-privilege-option {
		margin-top:.20rem;
	}
	.fair_single-main-privilege-option > dt {
	}
	.fair_single-main-privilege-option > dd > p {
		padding:.12rem .08rem 0;
	}
}

/* Conversion
----------------------------------------------------------------------------- */
.fair_single-main-conversion {
	padding-block:var(--fair-pd-b-B);
}
@media print, screen and (min-width: 641px) {
	.fair_single-main-conversion {
		padding-inline:1.00rem;
	}
}
@media screen and (max-width: 640px) {
	.fair_single-main-conversion {
	}
}

/* Contents
----------------------------------------------------------------------------- */
.fair_single-main-contents {
	/* border-radius:var(--fair-radius-A); */
	padding-block:.50rem var(--fair-pd-b-B);
	background-color:var(--fair-cc-bg-B);
}
.fair_single-main-contents-item + .fair_single-main-contents-item {
	margin-top:.40rem;
}
.fair_single-main-contents-item-heading {
	border-bottom:1px solid var(--fair-cc-D);
	padding-block:.08rem .08rem;
	padding-inline:.08rem .40rem;
	position:relative;
}
.fair_single-main-contents-item-heading::after {
	content:"";
	display:block;
	margin-block:auto;
	border-right:1px solid var(--fair-cc-D);
	border-bottom:1px solid var(--fair-cc-D);
	width:.08rem;
	height:.08rem;
	position:absolute;
	inset-block: 0;
	right:.20rem;
	transform:rotate(45deg) translate(-.02rem,-.02rem);
	transition-duration: var(--fair-t-duration-A);
}
.fair_single-main-contents-item-heading[aria-expanded="true"]::after {
	transform:rotate(225deg) translate(-.02rem,-.02rem);
}
.fair_single-main-contents-item-img {
	padding-top:.30rem;
}
.fair_single-main-contents-item-img img {
	width:100%;
}
.fair_single-main-contents-item-description {
	padding-top:.30rem;
}
.fair_single-main-contents .fair_l-button-B {
	margin-top:var(--fair-pd-b-B);
	margin-inline:auto;
	width:3.60rem;
}
@media print, screen and (min-width: 641px) {
	.fair_single-main-contents {
		padding-inline:.40rem;
	}
}
@media screen and (max-width: 640px) {
	.fair_single-main-contents {
		padding-block:.24rem;
	}
	.fair_single-main-contents-item + .fair_single-main-contents-item {
		margin-top:.28rem;
	}
	.fair_single-main-contents-item-heading {
		padding-block:4px;
		padding-inline:4px .32rem;
	}
	.fair_single-main-contents-item-heading::after {
		width:.08rem;
		height:.08rem;
		right:.10rem;
	}
	.fair_single-main-contents-item-img {
		padding-top:.20rem;
	}
	.fair_single-main-contents-item-img img {
		width:100%;
	}
	.fair_single-main-contents-item-description {
		padding-top:.20rem;
		font-size:.14rem;
		line-height:2;
	}
	.fair_single-main-contents .fair_l-button-B {
		width:2.80rem;
	}
}

/* FAQ
----------------------------------------------------------------------------- */
.fair_single-main-faq {
	padding-block:var(--fair-pd-b-A) var(--fair-pd-b-A);
}
.fair_single-main-faq_inner {
	border-top:1px solid var(--fair-cc-D);
}
.fair_single-main-faq-item {
	padding-block:.28rem;
	border-bottom:1px solid var(--fair-cc-D);
}
.fair_single-main-faq-item-question,
.fair_single-main-faq-item-answer {
	position:relative;
}
.fair_single-main-faq-item-question {
	padding-inline:.40rem .60rem;
	font-size:.18rem;
	transition-property:opacity,margin-bottom;
}
.fair_single-main-faq-item-question i {
	display:flex;
	justify-content: center;
	align-items: center;
	margin-block:auto;
	width:.15rem;
	height:.15rem;
	position:absolute;
	inset-block:0;
	right:.10rem;
}
.fair_single-main-faq-item-question i::before,
.fair_single-main-faq-item-question i::after {
	content:"";
	display:block;
	border-bottom:1px solid;
	width:100%;
	position:absolute;
}
.fair_single-main-faq-item-question i::after {
	transition-duration:var(--fair-t-duration-A);
	transition-property: transform;
	transform:rotate(90deg);
}
.fair_single-main-faq-item-question[aria-expanded="true"] {
	margin-bottom:.20rem;
}
.fair_single-main-faq-item-question[aria-expanded="true"] i::after {
	transform:rotate(0deg);
}
.fair_single-main-faq-item-question::before,
.fair_single-main-faq-item-answer_inner::before {
	font-weight:300;
	font-family:var(--fair-ff-B);
	font-size:.18rem;
	margin-left:-1.5em;
	position:absolute;
}
.fair_single-main-faq-item-question::before {
	content:"Q";
	margin-top:-.05em;
}
.fair_single-main-faq-item-answer_inner::before {
	content:"A";
	margin-top:-.25em;
}
.fair_single-main-faq-item-answer_inner {
	padding-block:.20rem;
	padding-inline:.50rem .20rem;
	background-color:var(--fair-cc-bg-B);
}
.fair_single-main-faq-item-answer a {
	text-decoration: underline;
	color:var(--fair-cc-button-A);
}
@media (hover) {
	.fair_single-main-faq-item-answer a:hover {
		text-decoration: none;
	}
}
@media (min-width: 641px) {
	.fair_single-main-faq_inner {
		margin-inline:auto;
		max-width:8.00rem;
	}
	.fair_single-main-faq-item-question {
		margin-inline:.10rem;
	}
	.fair_single-main-faq-item-answer {
		padding-inline:.20rem;
	}
}
@media screen and (max-width: 640px) {
	.fair_single-main-faq {
		padding-bottom:1.00rem;
	}
	.fair_single-main-faq_inner {
	}
	.fair_single-main-faq .fair_l-h2-B {
		font-size:.18rem;
	}
	.fair_single-main-faq-item {
		padding-block:.16rem;
	}
	.fair_single-main-faq-item-question,
	.fair_single-main-faq-item-answer {
		position:relative;
	}
	.fair_single-main-faq-item-question {
		margin-inline:.16rem;
		padding-inline:.30rem .45rem;
		font-size:.15rem;
		transition-property:opacity,margin-bottom;
		transition-duration:var(--fair-t-duration-A);
	}
	.fair_single-main-faq-item-question i {
		width:.11rem;
		height:.11rem;
		right:.12rem;
	}
	.fair_single-main-faq-item-question i::before,
	.fair_single-main-faq-item-question i::after {
		content:"";
		display:block;
		border-bottom:1px solid;
		width:100%;
		position:absolute;
	}
	.fair_single-main-faq-item-question[aria-expanded="true"] {
		margin-bottom:.16rem;
	}
	.fair_single-main-faq-item-question[aria-expanded="true"] i::after {
		transform:rotate(0deg);
	}
	.fair_single-main-faq-item-question::before {
		margin-top:-.2em;
	}
	.fair_single-main-faq-item-answer_inner::before {
		margin-top:-.15em;
		margin-left: -1em;
	}
	.fair_single-main-faq-item-answer {
		margin-inline:.16rem;
	}
	.fair_single-main-faq-item-answer_inner {
		padding-block:.20rem;
		padding-inline:.36rem .20rem;
		background-color:var(--fair-cc-bg-A);
	}
	.fair_single-main-faq-item-answer_inner._fair-text-A {
		font-size:.14rem;
		line-height:2;
	}
	.fair_single-main-faq-item-answer a {
		text-decoration: underline;
		color:var(--fair-cc-button-A);
	}
}

/* Flow
----------------------------------------------------------------------------- */
.fair_single-flow {
	padding-block:var(--fair-pd-b-B);
	background-color:var(--fair-cc-C);
	position:relative;
	z-index: -1;
}
.fair_single-flow > .fair_l-h2-A {
	margin-bottom:.24rem;
}
.fair_single-flow_inner {
	display:flex;
}
.fair_single-flow-item-img {
}
.fair_single-flow-item-img img {
	width:100%;
	height:auto;
}
.fair_single-flow-item-step {
	color:var(--fair-cc-D);
	font-weight:500;
	line-height: 1;
}
.fair_single-flow-item-heading {
	margin-block:.08rem .08rem;
}
.fair_single-flow-bg {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	z-index:-1;
	pointer-events: none;
}
@media print, screen and (min-width: 641px) {
	.fair_single-flow-item_text {
		text-align: center;
	}
	.fair_single-flow_inner {
		gap:.15rem;
	}
	.fair_single-flow-item {
		width:calc(100% / 3 - .15rem * 2 / 3);
		background-color:#fff;
		border-radius:var(--fair-radius-B);
		/* box-shadow:var(--fair-shadow-A); */
		padding:.20rem;
	}
	.fair_single-flow-item-step {
		padding-top:.20rem;
	}
}
@media screen and (max-width: 640px) {
	.fair_single-flow {
		padding-inline:.24rem;
	}
	.fair_single-flow > .fair_l-h2-A {
	}
	.fair_single-flow_wrap {
	}
	.fair_single-flow_inner {
		flex-direction: column;
		gap:.15rem;
		border-radius:var(--fair-radius-B);
	}
	.fair_single-flow-item {
		padding:.16rem;
		background-color:#fff;
	}
	.fair_single-flow-item:last-of-type {
	}
	.fair_single-flow-item-img {
		flex-shrink: 0;
		width:1.00rem;
	}
	.fair_single-flow-item-img img {
		aspect-ratio: var(--fair-thumbnaile-ratio-B);
		height:auto;
	}
	.fair_single-flow-item_text {
		display:flex;
		align-items: center;
		flex-wrap:wrap;
		gap:.08rem .10rem;
	}
	.fair_single-flow-item-step {
		display:flex;
		justify-content: center;
		align-items: center;
		width:.60rem;
		height:.32rem;
		border-radius:var(--fair-radius-B);
		background-color:var(--fair-cc-button-A);
		color:#fff;
	}
	.fair_single-flow-item-heading {
		width:calc(100% - .60rem - .10rem);
		font-size:.15rem;
		line-height:1.25;
	}
	.fair_single-flow-item-description {
		font-size:.13rem;
	}
	.fair_single-flow-item-description br {
		display:none;
	}
}


/* Sameday
----------------------------------------------------------------------------- */
.fair_single-sameday {
	margin-top:var(--fair-pd-b-A);
	position:relative;
	overflow:hidden;
}
.fair_single-sameday .fair_l-h2-B {
	margin-bottom:.36rem;
}
.fair_single-sameday-heading::before {
	content:"〈";
	margin-right:.5em;
}
.fair_single-sameday-heading::after {
	content:"〉";
	margin-left:.5em;
}
.fair_single-sameday-splide {
	--sameday-gap:.40rem;
		overflow:visible;
}
.fair_single-sameday-splide_track {
	overflow:visible;
}
.fair_single-sameday-splide_list {
	height:auto;
}
.fair_single-sameday-splide-item {
}
.fair_single-sameday-splide-item > a {
	display:block;
}
.fair_single-sameday-splide-item-img img {
	aspect-ratio: var(--fair-thumbnaile-ratio-B);
	height:auto;
}
.fair_single-sameday-splide-item-title {
	font-weight:500;
	line-height:1.6;
}

@media print, screen and (min-width: 641px) {
	.fair_single-sameday::before,
	.fair_single-sameday::after {
		content:"";
		display:block;
		background-color:#fff;
		width:calc(50% - (var(--fair-width-pc-A) + .50rem) / 2);
		opacity:.85;
		height:100%;
		position:absolute;
		top:0;
		z-index:10;
	}
	.fair_single-sameday::before {
		left:0;
	}
	.fair_single-sameday::after {
		right:0;
	}
	.fair_single-sameday-splide-arrow {
		display:flex;
		align-items: center;
		justify-content: center;
		width:var(--sameday-gap);
		height:var(--sameday-gap);
		position:absolute;
		top:calc(2lh + .04rem + 1.05rem);
		z-index:20;
	}
	.fair_single-sameday-splide-arrow.-prev {
		left:calc((var(--sameday-gap)) * -1);
		transform:scaleX(-1);
	}
	.fair_single-sameday-splide-arrow.-next {
		right:calc((var(--sameday-gap)) * -1);
	}
	.fair_single-sameday-splide-arrow svg {
		fill:var(--fair-cc-D);
		width:.16rem;
		height:auto;
	}
	.fair_single-sameday-splide_list {
		align-items: flex-start;
	}
	.fair_single-sameday-splide.splide.is-initialized:not(.is-active) .fair_single-sameday-splide_list {
		justify-content: center;
		display:flex;
	}
	.fair_single-sameday-splide.splide.is-initialized:not(.is-active) .fair_single-sameday-splide_list {
		gap:var(--sameday-gap);
	}
	.fair_single-sameday-splide.splide.is-initialized:not(.is-active) .fair_single-sameday-splide-item {
		width:calc(100% / 3 - var(--sameday-gap) * 2 / 3);
	}
	.fair_single-sameday-splide-item-img img {
	}
	.fair_single-sameday-splide-item_text > .fair_l-holdtime {
		margin-top:.12rem;
		font-size:.14rem;
	}
	.fair_single-sameday-splide-item_text > .fair_l-holdtime + .fair_l-holdtime {
		margin-top:.08rem;
	}
	.fair_single-sameday-splide-item-title {
		margin-bottom:.04rem;
		min-height:2lh;
	}
}
@media screen and (max-width: 640px) {
	.fair_single-sameday {
		overflow:hidden;
		/* padding-bottom:var(--fair-pd-b-A); */
		padding-block:.48rem;
		position:relative;
		background-color:var(--fair-cc-bg-A);
	}
	.fair_single-sameday .fair_l-h2-B {
		margin-bottom:.24rem;
	}
	.fair_single-sameday-splide {
		--sameday-gap:.12rem;
	}
	.fair_single-sameday-splide_track {
	}
	.fair_single-sameday .fair_single-sameday-splide .fair_single-sameday-splide_list.splide__list {
		display:flex;
		flex-direction: column;
		gap:var(--sameday-gap);
	}
	.fair_single-sameday-splide-item {
	}
	.fair_single-sameday-splide-item > a {
		display:flex;
		flex-wrap:wrap;
		gap:.10rem;
		padding-block: .12rem;
		padding-inline: .12rem .28rem;
		background-color:#fff;
		position:relative;
	}
	.fair_single-sameday-splide-item > a::after {
		content:"";
		margin-block:auto;
		display:block;
		width:.08rem;
		height:auto;
		aspect-ratio:7/11;
		background-color:var(--fair-cc-D);
		mask-image:url(/wedding/common/img/ico_arrow.svg);
		mask-position:center;
		mask-size: contain;
		mask-repeat: no-repeat;
		position:absolute;
		inset-block:0;
		right:.09rem;
	}
	.fair_single-sameday-splide-item-img {
		flex-shrink: 0;
		width:.80rem;
	}
	.fair_single-sameday-splide-item-img img {
		aspect-ratio:var(--fair-thumbnaile-ratio-B);
	}
	.fair_single-sameday-splide-item_text {
		display:flex;
		flex-direction: column;
		justify-content: center;
		gap:.08rem;
		padding-inline:0;
		width:calc(100% - .80rem - .10rem);
		position:relative;
	}
	.fair_single-sameday-splide-item-title {
		width:100%;
		margin-bottom:auto;
		font-weight:500;
	}
	.fair_single-sameday-splide-item_text .fair_l-holdtime {
		font-size:.11rem;
	}
}

/* Fixed Conversion
----------------------------------------------------------------------------- */
.fair_single-fixed_conversion {
	--button-color:var(--fair-cc-day);
	box-sizing: border-box;
	z-index: 100;
	filter:drop-shadow(var(--fair-shadow-A));
}
.fair_single-fixed_conversion.-saturday {
	--button-color:var(--fair-cc-saturday);
}
.fair_single-fixed_conversion.-sunday {
	--button-color:var(--fair-cc-sunday);
}
.fair_single-fixed_conversion-header {
	border-top-left-radius:var(--fair-radius-A);
	border-top-right-radius:var(--fair-radius-A);
	background-color:var(--fair-cc-D);
	color:#fff;
}
.fair_single-fixed_conversion-header-date {
	line-height:1;
}
 .fair_single-fixed_conversion-header-date .date {
	font-size:.24rem;
	letter-spacing: .1em;
}
 .fair_single-fixed_conversion-header-date .week {
	font-size:.16rem;
	font-feature-settings: "palt";
	letter-spacing: .15em;
}
 .fair_single-fixed_conversion-header-label {
	width:fit-content;
	padding:.2em .12rem;
	border-radius: 1.00rem;
	color:var(--fair-cc-D);
	font-size:.18rem;
	line-height:1;
	letter-spacing: 0;
	background-color:#fff;
}
.fair_single-fixed_conversion-header-note {
	font-size:.14rem;
}
.fair_single-fixed_conversion-times {
	border-bottom-left-radius:var(--fair-radius-A);
	border-bottom-right-radius:var(--fair-radius-A);
	background-color:#fff;
}
.fair_single-fixed_conversion-times-select {
	border-radius:var(--fair-radius-B);
}
.fair_single-fixed_conversion-times-select > dt {
	display:flex;
	justify-content: center;
	align-items: center;
	color:var(--fair-cc-D);
	border-radius:var(--fair-radius-B);
	height:.40rem;
	border:1px solid;
}
.fair_single-fixed_conversion-times form {
	margin:0;
}
.fair_single-fixed_conversion-times-select .fair_l-button-B {
	border-radius:var(--fair-radius-B);
	justify-content: flex-start;
	background-color:var(--button-color);
}
.fair_single-fixed_conversion-times-select .fair_l-button-B:not(.-arrow) {
	justify-content: center;
	padding-inline:0;
}
.fair_single-fixed_conversion-times-limit_tel {
	display:flex;
	flex-direction:column;
	align-items:center;
	font-size:.15rem;
}
.fair_single-fixed_conversion-times-limit_tel .number {
	font-family:var(--fair-ff-B);
	font-size:.34rem;
	letter-spacing: .05em;
	font-weight:300;
	color:var(--fair-cc-D);
}
.fair_single-fixed_conversion-times-limit_tel .businesshour {
	font-size:.14rem;
}
@media print, screen and (min-width: 641px) {
	.fair_single-fixed_conversion {
		margin-bottom:var(--fair-pd-b-B);
	}
	.fair_single-fixed_conversion-header {
		display:flex;
		flex-direction: column;
		padding-block:.20rem;
		gap:.12rem;
		text-align: center;
	}
	.fair_single-fixed_conversion-header-label {
		margin-inline:auto;
	}
	.fair_single-fixed_conversion-times {
		padding:.20rem;
	}
	.fair_single-fixed_conversion-times-select .fair_l-button-B {
		border-radius:3px;
		padding-left:.20rem;
		width:100%;
		height:.40rem;
	}
	.fair_single-fixed_conversion-times-select .fair_l-button-B:not(:first-child) {
		margin-top:.05rem;
	}
	.fair_single-fixed_conversion-times-select > dt {
		margin-bottom:.10rem;
	}
	.fair_single-fixed_conversion-times-limit_tel .businesshour {
		text-align: center;
	}
}
@media screen and (max-width: 640px) {
	.fair_single-fixed_conversion {
		padding: .20rem .16rem calc(.20rem + env(safe-area-inset-bottom));
		width: 100%;
		position: fixed;
		left: 0;
		bottom: 0;
		transition-property: transform,opacity;
		transition-duration:0.5s;
		z-index:500;
	}
	body:is(.is-scroll-end,:not(.headerMenuFix)) .fair_single-fixed_conversion {
		transform: translateY(100%);
	}
	.fair_single-fixed_conversion-header {
		display:flex;
		align-items: center;
		gap:.10rem;
		padding-inline:.16rem;
		height:.44rem;
	}
	.fair_single-fixed_conversion-header-date {
	}
	.fair_single-fixed_conversion-header-date .date {
		font-size:.13rem;
	}
	.fair_single-fixed_conversion-header-date .week {
		font-size:.12rem;
	}
	.fair_single-fixed_conversion-header-label {
		padding:.03rem .08rem;
		font-size:.12rem;
	}
	.fair_single-fixed_conversion-header-note {
		margin-left:auto;
		font-size:.11rem;
		line-height:1.4;
		text-align: justify;
	}
	.fair_single-fixed_conversion-times {
		padding-inline:.05rem;
	}
	.-tel .fair_single-fixed_conversion-times {
		border-inline:1px solid var(--fair-cc-D);
		border-block-end:1px solid var(--fair-cc-D);
	}
	.fair_single-fixed_conversion-times-select {
		display:flex;
		align-items: center;
		gap: 4px;
	}
	.fair_single-fixed_conversion-times-select > dt {
		flex-shrink: 0;
		width:.50rem;
	}
	.fair_single-fixed_conversion-times-select > dd {
		flex:1;
		overflow-X:auto;
	}
	.fair_single-fixed_conversion-times-select .select_sp_wrap {
		display:flex;
		gap: 4px;
		padding-block:.08rem;
	}
	.fair_single-fixed_conversion-times-select .fair_l-button-B {
		padding-inline:.10rem;
		flex:1;
		/* min-width:..25rem; */
		min-width:30%;
	}
	.fair_single-fixed_conversion-times-select .fair_l-button-B::after {
		width:.08rem;
		height:.08rem;
		right:.10rem;
	}
	.fair_single-fixed_conversion-times-limit_tel {
		justify-content: center;
		width:100%;
		height:.48rem;
		font-size:.15rem;
		line-height:1;
	}
	.fair_single-fixed_conversion-times-limit_tel::after {
		content:"";
		display:block;
		width:.12rem;
		height:auto;
		aspect-ratio:7/11;
		background-color:var(--fair-cc-D);
		mask-image:url(/wedding/common/img/ico_arrow.svg);
		mask-position:center;
		mask-size: contain;
		mask-repeat: no-repeat;
		position:absolute;
		right:.12rem;
	}
	.fair_single-fixed_conversion-times-limit_tel .number {
		display:flex;
		align-items: baseline;
		gap:.04rem;
		font-size:.24rem;
		font-weight:500;
	}
	.fair_single-fixed_conversion-times-limit_tel .number small {
		font-size:.16rem;
	}
	.fair_single-fixed_conversion-times-limit_tel .number > svg {
		width:.9em;
		height:auto;
		margin-inline-end:.1em;
	}
	.fair_single-fixed_conversion-times-limit_tel .businesshour {
		margin-block-start:.06rem;
		font-size:.11rem;
	}
}

.sec_bnr{
}
.sec_bnr .inner{
		width: 3.55rem;
		margin: 0 auto;
		padding-top: 0.6rem;
}
@media screen and (max-width: 640px) {
	.sec_bnr .inner{
		width: calc(100% - 0.2rem);
		padding-top: 0.2rem;
	}
}




