@charset "utf-8";

.inview.-unshow .oft__anm{ opacity:0; animation:none; }
.inview.-show .oft__anm{ animation:1s cubic-bezier(0.77, 0, 0.18, 1) var(--delay, 0s) 1 both showOftText, 1s linear var(--delay, 0s) 1 both animate_color; }
.inview{ position:relative; }
.inview .inview__obj{ opacity:0; transform:translateY(50%); }
.inview.-show .inview__obj{ transition:transform 1s cubic-bezier(0, 0.8, 0.1, 1), opacity .5s linear; opacity:1; transform:translateY(0); }
.inview.-show .inview__maskobj{ transition:opacity 1s cubic-bezier(0.22, 0.61, 0.36, 1); }
.inview.inviewMask{ position:relative; }
.inview.inviewMask .inviewMask__img{ -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:200% 0; mask-position:200% 0; -webkit-mask-size:100% 100%; mask-size:100% 100%; -webkit-mask-image:linear-gradient(var(--maskColorDeg), #000 0%, #000 var(--maskColorPosition1), transparent var(--maskColorPosition2), transparent var(--maskColorPosition3)); mask-image:linear-gradient(var(--maskColorDeg), #000 0%, #000 var(--maskColorPosition1), transparent var(--maskColorPosition2), transparent var(--maskColorPosition3)); }
.inview.inviewMask.-show .inviewMask__img{ will-change:-webkit-mask, mask, animation; animation-fill-mode:forwards; animation-iteration-count:1; animation-direction:normal; animation-delay:var(--delay, 0s); animation-duration:var(--duration, 1.5s); animation-timing-function:linear; }
.globalWrapper{ height:100%; }
.main-contents{ --column-gap:clamp(20px, 14.1935483871px + 1.6129032258vw, 40px); --mcp-inline-start:calc(var(--docPadding) + env(safe-area-inset-right)); --mcp-inline-end:calc(var(--docPadding) + env(safe-area-inset-right)); display:flex; flex-direction:column; row-gap:5lh; column-gap:var(--column-gap); max-width:100%; margin-inline:auto; padding-block:calc(var(--docPadding) + var(--gh-height)) 0; padding-inline:var(--mcp-inline-start) var(--mcp-inline-end);}
@media(min-width:46.25em){
	.main-contents{ --mcp-inline-end:calc(var(--docPadding) * 4 + env(safe-area-inset-right)); }
}
@media(min-width:61.25em){
	.main-contents{ display:grid; grid-template-columns:repeat(13, 1fr); --mcp-inline-start:calc(var(--docPadding) * 2 + env(safe-area-inset-right)); }
}
@media(min-width:80em){
	.main-contents{ row-gap:100px; }
}
.first-transition-cover{ position:fixed; left:0; top:0; bottom:auto; display:flex; align-items:center; justify-content:center; width:100%; height:100vh; background-color:var(--color-bg); color:var(--color-primary); }
.-end-intro .first-transition-cover{ pointer-events:none; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:200% 0; mask-position:200% 0; -webkit-mask-size:100% 100%; mask-size:100% 100%; -webkit-mask-image:linear-gradient(var(--maskColorDeg), #000 0%, #000 var(--maskColorPosition1), transparent var(--maskColorPosition2), transparent var(--maskColorPosition3)); mask-image:linear-gradient(var(--maskColorDeg), #000 0%, #000 var(--maskColorPosition1), transparent var(--maskColorPosition2), transparent var(--maskColorPosition3)); will-change:-webkit-mask, mask, animation; animation-fill-mode:forwards; animation-iteration-count:1; animation-direction:normal; animation-delay:var(--delay, 0s); animation-duration:var(--duration, 1s); animation-timing-function:ease-in-out; animation-name:maskFadeInDegree_paging; animation-direction:reverse; }
.first-transition-cover .first-transition-cover__indicator{ width:80px; height:80px; overflow:hidden; }
.first-transition-cover .first-transition-cover__indicator svg{ display:block; width:100%; height:100%; padding:0; animation:.5s steps(1) 0s infinite indicator_animation; }
@keyframes maskFadeInDegree_paging{
	0%{
		--maskColorDeg:-45deg;
		--maskColorPosition1:0%;
		--maskColorPosition2:0%;
		--maskColorPosition3:0%
	}
	100%{
		--maskColorDeg:-45deg;
		--maskColorPosition1:100%;
		--maskColorPosition2:200%;
		--maskColorPosition3:300%
	}
}
.main-contents:has(.detail){ row-gap:clamp(40px, 11.9480519481px + 7.7922077922vw, 160px); }
#topmain{ padding:0; box-sizing:border-box; opacity:0; }
#topmain .main-contents{ display:flex; gap:0; padding:0; box-sizing:border-box; }
.domContentLoaded #topmain{ opacity:1; transition:opacity .5s ease; }
#topmain .pagewrp.GhMenu{ background-color:rgba(0, 0, 0, 0); pointer-events:auto; opacity:1; border:none; }
#topmain .pagewrp.GhMenu li{ padding:0; list-style:none; }
#topmain .pagewrp.GhMenu a{ text-decoration:none; }
#topmain .pagewrp.GhMenu ul{ list-style:none; }
#topmain .pagewrp.GhMenu li{ padding:0; list-style:none; }
#topmain .pagewrp.GhMenu li::before{ content:none; }
#topmain .pagewrp.GhMenu .GhMenu__inner{ min-height:auto; width:100%; }
#topmain .swiper-pagination{ padding:.5em 1em; position:absolute; z-index:1; top:auto; bottom:30px; left:0; right:0; margin:auto; display:flex; justify-content:center; align-items:center; padding: 0; width: calc(100% - 40px); }
@keyframes zoomUp{
	0%{ transform:scale(1); }
	100%{ transform:scale(1.05); }
}
#topmain .swiper-slide-active figure,
#topmain .swiper-slide-duplicate-active figure,
#topmain .swiper-slide-prev figure{ animation:zoomUp 7s linear 0s normal both;}
#topmain .swiper-slide img{ height:100vh; width:100%; }
#topmain .swiper-pagination-bullet{ display:block; width:30px; height:4px; cursor:pointer; -webkit-transition:var(--transition); transition:var(--transition); background-color:rgba(255, 255, 255, 0.5); opacity:1; border-radius:4px; margin:0 5px; }
#topmain .swiper-pagination-bullet.swiper-pagination-bullet-active{ background-color:rgba(255, 255, 255, 1); }
#topmain .swiper-pagination-bullet-active{ background-color:#FFF; }
@media(min-width:61.25em){
	#topmain .pagewrp.GhMenu .GhMenu__inner{ min-height:100dvh; }
	#topmain .swiper-pagination{ justify-content:end; }
	#topmain .swiper-slide img{ height:100vh; }
}
.pagewrp{ background:#FFF; position:relative; left:0; top:0; display:flex; align-items:flex-end; inline-size:100%; min-height:100vh; margin-inline-start:0; box-sizing:border-box; background-image:none; position:sticky; top:auto; bottom:0}
.pagewrp .delay-text-container .delay-txt:nth-child(1){ --delay:0.1s; }
.pagewrp .delay-text-container .delay-txt:nth-child(2){ --delay:0.2s; }
.pagewrp .delay-text-container .delay-txt:nth-child(3){ --delay:0.3s; }
.pagewrp .delay-text-container .delay-txt:nth-child(4){ --delay:0.4s; }
.pagewrp .delay-text-container .delay-txt:nth-child(5){ --delay:0.5s; }
.pagewrp .delay-text-container .delay-txt:nth-child(6){ --delay:0.6s; }
.pagewrp .delay-text-container .delay-txt:nth-child(7){ --delay:0.7s; }
.pagewrp:nth-child(1){ z-index:8; }
.pagewrp:nth-child(2){ z-index:7; }
.pagewrp:nth-child(3){ z-index:6; }
.pagewrp:nth-child(4){ z-index:5; }
.pagewrp:nth-child(5){ z-index:4; }
.pagewrp:nth-child(6){ z-index:3; }
.pagewrp:nth-child(7){ z-index:2; }
.pagewrp:nth-child(8){ z-index:1; }
.pagewrp a{ opacity:.7; }
.pagewrp .btn{ text-box-trim:trim-both; line-height:1; }
.pagewrp .btn .icon{ opacity:1; }
a:hover{ color:currentColor; opacity:1; }
.btn:hover{ color:currentColor; }
@keyframes translateY{
	0%{
		opacity:0;
		filter:blur(16px);
		transform:translateY(80px)
	}
	100%{
		opacity:1;
		filter:blur(0px);
		transform:translateY(0)
	}
}
.pagewrp__image{ position:absolute; inset:0; display:flex; align-items:flex-end; justify-content:flex-end; min-height:100%; padding:0 0 0; box-sizing:border-box; }
.pagewrp__image.inview.inviewMask{ position:absolute; }
.pagewrp__image img{ width:100%; height:100%; object-fit:cover; }
@media(min-width:61.25em){
	.pagewrp__image{ align-items:center; justify-content:flex-end; background-attachment:fixed; width:100%; margin:0; padding:0; }
}
.pagewrp__bg{ width:100%; height:100%; }
.pagewrp__contents{ position:relative; display:flex; flex-direction:column; justify-content:flex-end; width:100%; height:auto; padding-block:calc(var(--docPadding) + env(safe-area-inset-right)); padding-inline:calc(var(--docPadding) + env(safe-area-inset-right)); z-index:2; font-size:clamp(.75rem, .6955645161rem + .2419354839vw, .9375rem); font-feature-settings:"palt"; line-height:2.25; color:var(--color-bg); }
.section-contents{ --gap:clamp(1.25rem, 0.5241935484rem + 3.2258064516vw, 2.5rem); }
.section-contents__inner{ display:grid; grid-template-columns:min-content repeat(2, var(--gap)) 1fr; grid-template-rows:1fr 3em auto; gap:var(--gap) 0; padding-inline:var(--ghw); }
@media(min-width:61.25em){
	.section-contents__inner{ grid-template-columns:1fr repeat(2, var(--gap)) min-content; padding-inline:calc(var(--gap) + 3vh) calc(var(--ghw)); }
}
.kv__slide{ position:relative; }
.kv__slide::before{ position:absolute; content:""; display:block; z-index:1; background-color:var(--color-main); inset:0; margin:auto; width:100%; height:100vh; opacity:.25; mix-blend-mode:multiply; }
.kv__txt{ position:absolute; inset:auto auto 0 0; padding-block:calc(var(--docPadding) + env(safe-area-inset-right)); padding-inline:calc(var(--docPadding) + env(safe-area-inset-right)); display:flex; flex-wrap:wrap; align-items:center; gap:1em; z-index:2; }
.kv__ttl{ font-size:clamp(1.125rem, 1.0081168831rem + .5194805195vw, 1.625rem); scale:1 .925; transform-origin:left center; margin-block:0; }

/* Header
-------------------------*/
#top-header{ display:flex; align-items:center; width:100%; height:80px; position:fixed; top:0; left:0; box-sizing:border-box; z-index:10; }
#h-logo{ width:calc(100% - 40px); margin:auto; }
#h-logo a{ display:flex; align-items:center; }
#h-logo img{ height:auto; width:78px; overflow:hidden; transition-property:opacity; transition-duration:0.25s; transition-timing-function:ease; }
body.scroll-up #h-logo img {filter: brightness(0) invert(1);}
.menu-btn{ position: absolute;top: 0;bottom: 0;margin: auto;right: clamp(20px,15.3846153846px + 1.2820512821vw,40px);display:flex;height:80px; width:70px;justify-content:center;align-items:center;z-index:90; }
.menu-btn span.lbl{ font-size:.875rem; color:#FFF; position:absolute; right:80px; height:35px; top:0 ;bottom:0 ;margin:auto; display:flex; align-items:center; font-family:"Arimo", sans-serif; }
.menu-btn span.menu,
.menu-btn span.menu:before,
.menu-btn span.menu:after{ content:'';display:block;height: 1px;width: 70px;border-radius:3px;background-color:#FFF;position:absolute;transition: 0.2s; }
.menu-btn span.menu:before{ bottom:8px; }
.menu-btn span.menu:after{ top:8px; }
#menu-btn-check:checked ~ .menu-btn span.menu{ background-color:rgba(255, 255, 255, 0); }
#menu-btn-check:checked ~ .menu-btn span.menu::before{ bottom:0;transform: rotate(-20deg); }
#menu-btn-check:checked ~ .menu-btn span.menu::after{ top:0;transform: rotate(20deg); }
#menu-btn-check{ display:none; }
#menu-btn-check:checked ~ .menu-content{ left:0; opacity:1; }
.menu-content{ width:100%; height:100%; position:fixed; top:0; left:100%; z-index:80; background-color:rgba(0,0,0,0.6); transition:all 0.5s; opacity:0; }
.menu-content ul{ padding:0 20px; margin:112px 0 0 auto; max-width:555px; }
.menu-content ul li{ list-style:none; }
.menu-content ul li a{ display:block; width:100%; font-size:15px; box-sizing:border-box; color:#FFF; text-decoration:none; padding:10px 15px 10px 0; position:relative; font-size:clamp(1.375rem,1.2884615385rem + .3846153846vw,1.75rem); font-family:"Arimo", sans-serif; font-weight:bold; }
.menu-content ul li .menu-desc{ display:none; }
.menu-content ul li.hide a{ color:transparent; }
.lineup{ background:#fafafc; padding:3em 20px; }
.lineup img{ width:100%; }
.lineup .resbox{ display:flex; flex-direction:column-reverse; margin:10px 0; }
.lineup .restxt{ width:100%; position:relative; margin-bottom:20px}
.lineup .resbox .res_fixed{ padding:2em; background:#fff; }
.lineup .restxt h2{ font-size:28px; margin:0 0 15px; color:#dd8589; padding:0 20px; }
.lineup .restxt h3{ position:relative; padding:0 .5em .5em 1.7em; border-bottom:1px solid #6d6368; margin:0 20px 15px; font-size:20px; }
.lineup .restxt h3::after{ position:absolute; top:.4em; left:.4em; z-index:2; content:''; width:15px; height:15px; background-color:#eb9a9b; transform:rotate(45deg); }
.lineup .restxt p{ padding:0 15px; }
.lineup .restxt .form{ margin:2em 20px; padding:1em 1.5em; line-height:2.0; border:1px dashed #cdcdcd; background:#fcfcfc; box-shadow:0 1px 3px 0 rgba(195,195,195,0.3); }
.lineup .respict{ width:100%; min-height:0%; text-align:center; }
.lineup .respict img{ height:auto; }
@media only screen and (max-width:767px){
	#menu-btn-check:checked ~ .menu-btn span.menu::before{ bottom:0;transform: rotate(-25deg); }
	#menu-btn-check:checked ~ .menu-btn span.menu::after{ top:0;transform: rotate(25deg); }
	.menu-content ul{ margin:112px auto; width:60%; }
	.menu-content ul li a{ padding:5px 0; }
	.menu-btn{ height:40px; width:40px; margin:auto 0 0; }
	.menu-btn span.menu,
	.menu-btn span.menu:before,
	.menu-btn span.menu:after{ width:40px; }
	.menu-btn span.lbl{ right:4px; height:20px; margin:0; top:-15px; font-family:"Zen Old Mincho",serif; }
}
@media only screen and (min-width:480px){
	.menu-content ul li a { font-size:3rem; padding:5px 0; line-height:1.5; }
}
@media only screen and (max-width:479px){
	.menu-content ul li a{ font-size:1.6rem; }
}
@media only screen and (max-width:767px){
	#h-logo a{ margin:25px 0 0; }
}
@media only screen and (min-width:768px){
	#top-header { top:35px; }
	header{ padding:0 35px; }
	.menu-btn{ top:-30px; }
	#h-logo img{ width:120px; }
}

/* Footer
-------------------------*/
.pagewrp-footer{ padding:60px 0; color:#333; width:calc(100% - 40px); margin:auto; }
.footer-inner{ position:relative; margin:0 auto; width:100%; max-width:1000px; }
.footer-menu{ list-style:none; padding:0; margin:100px 0; }
.footer-menu li a,
.footer-history a{ font-family:"Arimo", sans-serif; font-weight:bold; font-size:1.6rem; }
.footer-menu li{ margin-bottom:20px; }
.footer-menu li:last-child{ margin-bottom:0; }
.footer-menu a{ color:#333; text-decoration:none; line-height:1.3; }
.footer-logo{ text-align:left; }
.footer-logo img{ width:110px; }
.footer-history{ text-decoration:none; position:absolute; right:0; bottom:0; display:flex; justify-content:flex-end; }
.footer-history a{ color:transparent; }
@media only screen and (min-width:480px){
	.footer-menu li{ margin-bottom:16px; margin-bottom:10px; }
	.footer-menu li a,
	.footer-history a{ font-size:3rem; }
}