@charset "utf-8";
/*-----------------------------------------------
 * loading.css
 * 初回: ロゴ + カーテンはけ / 2回目以降: フェードアウト
-------------------------------------------------*/
.site-loader {
	position: fixed;
	inset: 0;
	z-index: 15000;
	pointer-events: auto;
	overflow: hidden;
}
.site-loader__logo {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 2;
	width: min(calc(780 / var(--vw-min) * 100vw), 780px);
	height: min(calc(180 / var(--vw-min) * 100vw), 180px);
	background: url(../img/common/logo/logo_stroke.png) no-repeat center center / contain;
	opacity: 0;
	transform: translate(-50%, calc(-50% + min(calc(42 / var(--vw-min) * 100vw), 42px)));
}
.site-loader__veils {
	position: absolute;
	inset: 0;
	z-index: 1;
}
.site-loader__veil {
	position: absolute;
	top: -48px;
	left: -48px;
	width: calc(100% + 96px);
	height: calc(100% + 96px);
	will-change: transform;
	transition: transform 0.85s cubic-bezier(0.65, 0, 0.35, 1);
}
.site-loader__veil.is-gold {
	background: var(--color-gold);
	z-index: 1;
}
.site-loader__veil.is-pink {
	background: var(--color-pink);
	z-index: 2;
}
.site-loader__veil.is-cream {
	background: var(--color-cream);
	z-index: 3;
}
.site-loader.is-logo-in .site-loader__logo {
	opacity: 1;
	transform: translate(-50%, -50%);
	transition: opacity 0.7s cubic-bezier(0.25, 1, 0.5, 1),
		transform 0.7s cubic-bezier(0.25, 1, 0.5, 1);
}
.site-loader.is-logo-out .site-loader__logo {
	opacity: 0;
	transform: translate(-50%, calc(-50% - min(calc(30 / var(--vw-min) * 100vw), 30px)));
	transition: opacity 0.55s cubic-bezier(0.55, 0, 1, 0.45),
		transform 0.55s cubic-bezier(0.55, 0, 1, 0.45);
}
.site-loader.is-wipe .site-loader__veil.is-cream {
	transform: translate3d(-100%, 0, 0);
}
.site-loader.is-wipe .site-loader__veil.is-pink {
	transform: translate3d(calc(-100% + min(calc(16 / var(--vw-min) * 100vw), 16px)), min(calc(6 / var(--vw-min) * 100vw), 6px), 0);
	transition-delay: 0.05s;
}
.site-loader.is-wipe .site-loader__veil.is-gold {
	transform: translate3d(calc(-100% + min(calc(32 / var(--vw-min) * 100vw), 32px)), min(calc(12 / var(--vw-min) * 100vw), 12px), 0);
	transition-delay: 0.1s;
}
.site-loader.is-simple {
	background: var(--color-cream);
	transition: opacity 0.55s ease;
}
.site-loader.is-simple.is-fade-out {
	opacity: 0;
	pointer-events: none;
}
@media screen and (max-width:768px){
	.site-loader__logo {
		width: calc(780 / var(--vw-min) * 100vw);
		height: calc(180 / var(--vw-min) * 100vw);
		transform: translate(-50%, calc(-50% + calc(42 / var(--vw-min) * 100vw)));
	}
	.site-loader.is-logo-in .site-loader__logo {
		transform: translate(-50%, -50%);
	}
	.site-loader.is-logo-out .site-loader__logo {
		transform: translate(-50%, calc(-50% - calc(30 / var(--vw-min) * 100vw)));
	}
}
html.is-site-loading,
html.is-site-loading body {
	overflow: hidden;
}
html.is-font-loading #fullWrap {
	visibility: hidden;
}
html.is-font-loading .site-loader {
	visibility: visible;
}
