:root{color-scheme:light;--paper:#f8f5f0;--cream:#eee7db;--white:#fffdfa;--ink:#453a2d;--muted:#746956;--gold:#8b714b;--line:#cdbfa9;--serif:'Yu Mincho','Hiragino Mincho ProN','Hiragino Mincho Pro','Noto Serif JP',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.9 var(--serif)}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:auto}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #937043;outline-offset:5px}a,button,summary{-webkit-tap-highlight-color:transparent}.skip{position:fixed;left:15px;top:-100px;background:white;padding:10px;z-index:100}.skip:focus{top:5px}.header{position:fixed;z-index:30;top:0;left:0;right:0;min-height:72px;display:flex;align-items:center;justify-content:space-between;padding:8px 4%;gap:28px;background:#f8f5f0ed;border-bottom:1px solid #d6c9b880;backdrop-filter:blur(12px)}.supplied-logo{object-fit:cover;object-position:center;mix-blend-mode:multiply}.header-brand{flex-shrink:0}.header-brand img{width:120px;height:45px}.desktop-nav{display:flex;align-items:center;gap:29px}.desktop-nav a{font:17px/1.5 var(--serif);padding:13px 0;position:relative}.desktop-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:5px;height:1px;background:var(--gold);transition:right .25s}.desktop-nav a:hover:after{right:0}.header-phone{font:17px/1.5 var(--serif);letter-spacing:1px;white-space:nowrap}.mobile-menu{display:none}.hero{min-height:max(760px,100svh);position:relative;display:flex;align-items:center;justify-content:center;padding:118px 24px 128px;isolation:isolate;background:#b7a28b}.hero-background,.concept-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-background{object-position:center 54%}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#34230d14,#ebdec32e 50%,#24190a22);z-index:-1}.hero-panel{width:450px;max-width:100%;text-align:center;background:#fffaf0ed;padding:35px 47px 29px;outline:1px solid #f7ead6a8;outline-offset:9px;box-shadow:0 8px 70px #271b1221}.eyebrow{font:12px/1.7 var(--serif);letter-spacing:4px;margin:0 0 16px}.hero h1{margin:0}.hero-logo{width:100%;height:118px}.official{font-size:14px;letter-spacing:2px;margin:4px 0 20px}.fine-rule{width:48px;height:1px;background:var(--line);margin:22px auto}.hero-copy{font:22px/1.8 var(--serif);letter-spacing:1px;margin:0 0 13px}.hero-description{font-size:15px;color:var(--muted);line-height:2.05;margin:0 0 25px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:14px 22px;min-height:52px;font-size:15px;border:1px solid var(--line);background:var(--cream);transition:background .2s}.button:hover{background:#dfd1ba}.hero-panel .button{width:100%;background:var(--ink);color:var(--white);border-color:var(--ink)}.hero-panel .button:hover{background:#67533c}.hero-system{display:inline-block;font-size:14px;margin-top:13px;text-decoration:underline;text-underline-offset:5px}.hero-recruit{position:absolute;bottom:25px;right:4%;display:grid;grid-template-columns:auto auto;gap:0 25px;background:#fbf6edea;border:1px solid #dccdb5;padding:12px 20px}.hero-recruit>span:first-child{font:23px/1.5 var(--serif);grid-column:1}.hero-recruit>span:nth-child(2){font-size:12px;grid-column:1}.hero-recruit>span:last-child{grid-column:2;grid-row:1/3;align-self:center}.scroll-note{position:absolute;bottom:36px;left:4%;color:white;text-shadow:0 1px 5px #382714;letter-spacing:3px;font-size:12px}.scroll-note span{margin-left:20px}.concept{position:relative;min-height:740px;isolation:isolate;display:grid;place-items:center;padding:90px 7%;background:#b09b7e}.concept-background{object-position:center}.concept:after{content:'';position:absolute;inset:0;background:#44331620;z-index:-1}.concept-panel{background:#fffaf0f2;max-width:620px;width:100%;text-align:center;padding:48px 45px;border:1px solid #fff9ec;outline:1px solid #f8f3e299;outline-offset:10px}.section-en,.section-label{font:43px/1.4 var(--serif);color:var(--gold);margin:0 0 14px}.concept h2{font:28px/1.9 var(--serif);letter-spacing:.07em;margin:0 0 18px;font-weight:400}.concept p:not(.section-en){font-size:16px;line-height:2.15;color:var(--muted);margin:21px 0 0}.section{max-width:1220px;margin:0 auto;padding:90px 6%}.section-heading{text-align:center;margin-bottom:45px}.section-label{margin-bottom:7px}.index{display:none}.section h2{font:23px/1.8 var(--serif);letter-spacing:.08em;font-weight:400;margin:0}.section-heading>p{font-size:16px;color:var(--muted);margin:20px 0 0}.secondary{font-size:14px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:32px 27px}.gallery figure{margin:0;min-width:0}.photo-button{border:0;padding:0;width:100%;display:block;position:relative;background:#ddcfb9;cursor:zoom-in;overflow:hidden}.photo-button img{aspect-ratio:3/2;object-fit:cover;transition:transform .5s}.photo-button:hover img{transform:scale(1.03)}.zoom{position:absolute;bottom:14px;right:14px;display:grid;place-items:center;width:38px;height:38px;background:#faf7f0eb;font-size:22px;border:1px solid #eee1cf}.gallery figcaption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 15px;font-size:14px;padding-top:12px}.gallery figcaption span:first-child{font-size:12px;letter-spacing:1.5px;color:var(--gold)}.system{max-width:none;background:var(--cream);padding-left:max(6%,calc((100vw - 1060px)/2));padding-right:max(6%,calc((100vw - 1060px)/2))}.price-plans{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);background:var(--white)}.price-plan{padding:30px 42px;text-align:center}.price-plan+article{border-left:1px solid var(--line);background:#f7f1e7}.plan-en{font:33px/1.5 var(--serif);margin:0 0 3px}.price-plan h3{font-size:14px;font-weight:400;letter-spacing:2px;margin:0;color:var(--muted)}.plan-price{font:51px/1.3 var(--serif);margin:23px 0 3px}.plan-price>span{font-size:27px;margin-right:5px}.plan-basis{font-size:16px;margin:0}.extension{margin-top:25px;padding-top:19px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:16px}.extension strong{font:28px/1.3 var(--serif);font-weight:400}.vip-policy{margin-top:32px;padding:28px 30px;border:1px solid #ac9270;background:#fbf7f0}.policy-label{font-size:12px;letter-spacing:2px;color:var(--gold);margin:0 0 7px}.vip-policy h3{font:22px/1.7 var(--serif);font-weight:400;margin:0 0 12px}.vip-policy>p:not(.policy-label){font-size:16px;margin:12px 0 18px}.vip-policy strong{font-weight:600}.vip-timeline{display:grid;grid-template-columns:1fr 1fr 1.3fr;margin:22px 0 0;border-block:1px solid var(--line)}.vip-timeline>div{padding:17px 20px;border-right:1px solid var(--line)}.vip-timeline>div:first-child{padding-left:0}.vip-timeline>div:last-child{border:0}.vip-timeline dt{font-size:14px}.vip-timeline dd{font-size:20px;margin:7px 0 0}.vip-timeline dd>span{display:block;font-size:14px;color:var(--muted);margin-top:3px}.vip-policy>p.policy-note{font-size:14px;color:var(--muted);margin:17px 0 0}.mobile-break{display:none}.system-details{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:32px}.fee-list{margin:0}.fee-list>div{padding:15px 0;display:flex;gap:20px;justify-content:space-between;border-bottom:1px solid var(--line);align-items:center}.fee-list dt{font-size:16px}.fee-list dt>span{font-size:14px;margin-left:10px;color:var(--muted)}.fee-list dd{font:25px/1.5 var(--serif);margin:0}.system-terms{border-left:1px solid var(--line);padding:14px 0 0 35px}.system-terms h3{font-size:17px;font-weight:500;margin:0 0 9px}.system-terms p{font-size:16px;margin:8px 0}.system-terms p:last-child{font-size:14px;color:var(--muted)}.text-link{display:inline-block;font-size:15px;padding:8px 0;text-decoration:underline;text-underline-offset:6px}.system>.text-link{display:table;margin:27px auto 0}.access{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding-top:100px;padding-bottom:100px}.access-intro p:not(.phone-caption){font-size:16px;margin:25px 0;color:var(--muted)}.access-intro .section-label{margin:0 0 7px}.phone-number{font:34px/1.5 var(--serif);display:inline-block;margin-top:10px;white-space:nowrap}.phone-number>span{font-size:20px;margin-left:14px}.phone-caption{font-size:14px;color:var(--muted);margin:5px 0 0}.access-info{border-top:1px solid var(--line);padding:25px 0 0}.access-name{font:30px/1.5 var(--serif);margin:0 0 18px;display:flex;gap:20px;align-items:center}.access-name>span{font-size:15px}.access-info dl{margin:0 0 22px}.access-info dl>div{display:grid;grid-template-columns:105px 1fr;gap:15px;border-top:1px solid #ded6c9;padding:16px 0;font-size:16px}.access-info dt{font-size:14px;color:var(--muted)}.access-info dd{margin:0}.access-info .button{width:100%}.recruit{max-width:none;background:#eee7db;padding-left:max(6%,calc((100vw - 1060px)/2));padding-right:max(6%,calc((100vw - 1060px)/2))}.recruit-roles{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);padding:30px 0}.recruit-roles article{text-align:center;border-right:1px solid var(--line);padding:8px 25px}.recruit-roles article:last-child{border:0}.role-en{font:28px/1.5 var(--serif);margin:0 0 8px;color:var(--gold)}.recruit-roles h3{font-size:19px;font-weight:400;margin:0 0 10px}.recruit-status{font-size:14px;color:var(--muted)}.recruit-contact{text-align:center;margin:28px auto 0}.recruit-contact p{font-size:16px;margin:0 0 20px}.recruit-contact .button{background:var(--ink);color:var(--white);border-color:var(--ink)}.official-note{text-align:center;padding:37px 6%;border-bottom:1px solid #e3dbce}.official-note>span{font-size:12px;letter-spacing:3px;color:var(--gold)}.official-note p{font-size:14px;color:var(--muted);margin:12px 0 0}footer{text-align:center;padding:30px 25px 35px;position:relative}.footer-logo{width:176px;height:67px;margin:0 auto}footer>p{font-size:12px;letter-spacing:3px;margin:5px 0 15px}.footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 30px;font:16px/1.8 var(--serif);margin-bottom:15px}.footer-links a:last-child{text-decoration:underline;text-underline-offset:4px}footer small{font-size:12px;color:var(--muted)}.beta{position:absolute;bottom:25px;right:25px;font-size:12px;color:var(--muted)}.mobile-contact{display:none}dialog{border:1px solid var(--line);padding:60px 18px 15px;background:var(--paper);max-width:min(1100px,94vw);max-height:94dvh;width:fit-content;color:var(--ink)}dialog::backdrop{background:#21190ee6}dialog img{max-height:74dvh;max-width:100%;object-fit:contain;width:auto;margin:auto}dialog p{margin:10px 0 0;text-align:center;font-size:14px}.dialog-close{position:absolute;top:9px;right:12px;border:1px solid var(--line);background:var(--paper);padding:7px 14px;cursor:pointer;min-height:42px}.modal-open{overflow:hidden}
@media(max-width:1100px){.header{gap:20px}.desktop-nav{gap:21px}.header-phone{display:none}.header{justify-content:center}.header-brand{margin-right:15px}.access{gap:35px}.section{padding:75px 6%}.access-info dl>div{grid-template-columns:1fr;gap:4px}.vip-timeline>div{padding-inline:15px}.vip-timeline dd{font-size:18px}}
@media(max-width:700px){html{scroll-padding-top:78px}.header{min-height:66px;padding:9px 6%;justify-content:space-between;gap:12px}.header-brand img{width:108px;height:40px}.desktop-nav{display:none}.mobile-menu{display:block}.mobile-menu summary{font-size:14px;letter-spacing:1px;cursor:pointer;list-style:none;min-height:44px;display:flex;align-items:center;gap:12px;padding:4px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary>span{font-size:19px}.mobile-menu nav{position:absolute;top:100%;left:0;right:0;background:#faf7f1fc;border-top:1px solid var(--line);padding:16px 7% 23px;box-shadow:0 13px 20px #31240d1a;max-height:calc(100dvh - 145px);overflow:auto}.mobile-menu nav>a{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e3d9c9;font:22px/1.5 var(--serif)}.mobile-menu nav>a>span{font:14px/1.6 var(--serif);color:var(--muted)}.hero{min-height:calc(100svh - 67px);padding:115px 9% 146px}.hero-background{object-position:57% center}.hero-panel{width:340px;padding:26px 23px 21px;outline-offset:6px;background:#fffaf0f2}.eyebrow{font-size:12px;letter-spacing:3px;margin-bottom:13px}.hero-logo{height:91px}.official{font-size:13px;letter-spacing:1px;margin:4px 0 13px}.fine-rule{margin:17px auto}.hero-copy{font-size:20px;letter-spacing:0}.hero-description{font-size:15px;margin-bottom:20px}.button{font-size:15px;padding:13px 20px;min-height:50px}.hero-system{font-size:14px;margin-top:11px}.hero-recruit{left:9%;right:9%;bottom:27px;padding:9px 14px;gap:0 12px}.hero-recruit>span:first-child{font-size:21px}.hero-recruit>span:nth-child(2){font-size:12px;line-height:1.6}.scroll-note{display:none}.concept{padding:70px 9%;min-height:620px}.concept-panel{padding:32px 17px;outline-offset:6px}.section-en,.section-label{font-size:37px}.concept h2{font-size:25px;letter-spacing:.03em}.concept p:not(.section-en){font-size:15px;line-height:2.1}.section{padding:61px 7%}.section h2{font-size:22px}.section-heading{margin-bottom:30px}.section-heading>p{font-size:15px;margin-top:15px}.gallery{grid-template-columns:1fr;gap:28px}.gallery figcaption{font-size:14px}.gallery figcaption span:first-child{font-size:12px}.photo-button img{aspect-ratio:3/2}.price-plans{grid-template-columns:1fr}.price-plan{padding:27px}.price-plan+article{border-left:0;border-top:1px solid var(--line)}.plan-en{font-size:32px}.plan-price{font-size:50px;margin-top:17px}.plan-basis{font-size:16px}.extension{margin-top:20px;font-size:16px}.vip-policy{padding:23px 20px;margin-top:25px}.policy-label{font-size:12px;letter-spacing:1px}.vip-policy h3{font-size:20px;line-height:1.8}.vip-policy>p:not(.policy-label){font-size:16px}.mobile-break{display:block}.vip-timeline{grid-template-columns:1fr;margin-top:19px}.vip-timeline>div,.vip-timeline>div:first-child{border-right:0;border-bottom:1px solid var(--line);padding:13px 0;display:grid;grid-template-columns:1fr;gap:0}.vip-timeline>div:last-child{border-bottom:0}.vip-timeline dt{font-size:15px}.vip-timeline dd{font-size:21px;margin-top:2px}.vip-timeline dd>span{display:inline;margin-left:12px;font-size:14px}.vip-policy>p.policy-note{font-size:14px}.system-details{grid-template-columns:1fr;gap:23px;margin-top:25px}.system-terms{border-left:0;padding:0}.system-terms p{font-size:16px}.system>.text-link{font-size:15px}.access{grid-template-columns:1fr;gap:35px}.access-intro{text-align:center}.access-intro p:not(.phone-caption){font-size:16px}.phone-number{font-size:32px}.access-info dl>div{grid-template-columns:1fr;gap:4px}.access-name{font-size:31px}.recruit-roles{grid-template-columns:1fr;padding:0}.recruit-roles article{text-align:left;padding:21px 3px;border-right:0;border-bottom:1px solid var(--line);position:relative}.role-en{font-size:24px;line-height:1.3;margin-bottom:5px}.recruit-roles h3{font-size:19px;margin:0}.recruit-status{position:absolute;right:3px;top:50%;transform:translateY(-50%)}.recruit-contact{text-align:left}.recruit-contact p{font-size:16px}.recruit-contact .button{width:100%;font-size:14px;gap:15px}.official-note{padding:30px 7%}.official-note p{font-size:14px}footer{padding-bottom:118px}.beta{bottom:88px}.mobile-contact{display:grid;grid-template-columns:.85fr 1.4fr;position:fixed;bottom:0;left:0;right:0;z-index:20;background:#f8f5f0f5;border-top:1px solid var(--line);padding:9px 12px calc(9px + env(safe-area-inset-bottom));gap:8px;backdrop-filter:blur(10px)}.mobile-contact a{font-size:14px;min-height:47px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line)}.mobile-contact a:last-child{background:var(--ink);color:white;border-color:var(--ink)}dialog{padding-inline:10px;max-width:96vw}.dialog-close{font-size:14px}}
@media(max-width:360px){.hero-panel{padding-inline:15px}.hero-copy{font-size:18px}.hero-description{font-size:14px}.hero-logo{height:82px}.hero-recruit>span:nth-child(2){font-size:12px}.phone-number{font-size:29px}.mobile-contact a{font-size:12px;gap:5px}.vip-timeline dd{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.job-pay{font:23px/1.6 var(--serif);margin:17px 0;text-align:left}.job-pay>span{display:block;font:14px/1.8 var(--serif);color:var(--muted);margin-bottom:3px}.job-details{padding-left:1.2em;margin:15px 0 0;text-align:left;font-size:16px;line-height:2}.recruit-roles article{text-align:left}.line-contact{display:grid;grid-template-columns:1fr 142px;gap:22px;align-items:center;border:1px solid var(--line);background:#fffdfa;padding:24px;margin-top:25px;text-align:left}.line-contact h3{font-size:18px;margin:0 0 8px;font-weight:500}.line-contact p{font-size:15px;color:var(--muted);margin:0 0 15px;line-height:1.8}.line-contact .line-button{display:flex;width:100%;justify-content:center;align-items:center;gap:16px;min-height:50px;padding:12px 17px;background:#087d41;border:1px solid #087d41;color:white;font-size:15px}.line-button:hover{background:#056334}.line-qr{margin:0;text-align:center}.line-qr img{width:142px;height:142px;background:white}.line-qr figcaption{font-size:12px;color:var(--muted);line-height:1.6;margin-top:7px}.recruit-contact{max-width:760px}.recruit-contact .line-contact{margin-bottom:17px}.recruit-phone{display:inline-block;font-size:14px;text-decoration:underline;text-underline-offset:5px;margin-top:12px}.hero-hours{font-size:14px;line-height:1.8;margin:17px 0 0;color:var(--muted)}@media(max-width:1100px) and (min-width:701px){.access-intro .line-contact{grid-template-columns:1fr}.access-intro .line-qr{justify-self:center}}@media(max-width:700px){.line-contact{padding:20px;grid-template-columns:1fr;gap:18px}.line-qr{justify-self:center}.line-contact h3{font-size:18px}.line-contact p{font-size:15px}.line-contact .line-button{font-size:16px}.job-pay{font-size:26px;margin-top:15px}.job-details{font-size:16px}.recruit-roles article{padding:25px 4px}.hero-hours{font-size:13px;margin-top:13px}}
.recruit-roles article{display:flex;flex-direction:column}.job-apply{display:flex;align-items:center;justify-content:center;gap:12px;background:#087d41;color:white;padding:12px 14px;min-height:50px;font-size:15px;margin-top:24px}.job-apply:hover{background:#056334}.line-qr>a{display:block;cursor:pointer}.line-qr>a:hover{outline:2px solid #087d41;outline-offset:3px}.job-details{flex-grow:1}

.hero-panel .button.hero-line,.mobile-contact a:last-child{background:#087d41;border-color:#087d41;color:#fff}.hero-panel .button.hero-line:hover,.mobile-contact a:last-child:hover{background:#056334}.header-line{font:14px/1.5 var(--serif);padding:12px 16px;border:1px solid #087d41;background:#087d41;color:#fff;letter-spacing:0}

@media(max-width:700px){.mobile-menu nav>a.menu-line{font:16px/1.6 var(--serif);background:#087d41;color:white;border:1px solid #087d41;padding:13px 16px;min-height:50px;margin:0 0 10px;gap:12px}.mobile-menu nav>a.menu-line>span{color:white}.mobile-menu nav>a.menu-line:hover{background:#056334}}

.official{margin-bottom:4px}.venue-type{font-size:14px;letter-spacing:.08em;color:var(--muted);margin:0 0 20px}@media(max-width:700px){.official{margin-bottom:3px}.venue-type{font-size:13px;letter-spacing:.04em;margin-bottom:13px}}
