:root{color-scheme:dark;--ink:#101011;--ink-soft:#1b1918;--gold:#c6a66a;--gold-light:#e7d4aa;--ivory:#eee9df;--text:#f3eee6;--muted:#b9b3a9;--rule:#c6a66a47;--serif:"Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;--sans:"Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif;--english:"Cormorant Garamond", Georgia, serif;--container:1160px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--ink);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;font-weight:400;line-height:1.9}body.menu-is-open{overflow:hidden}h1,h2,h3,h4,p,figure,dl,dd{margin:0}h1,h2,h3,h4{font-weight:400}a{color:inherit;-webkit-tap-highlight-color:transparent;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{touch-action:manipulation}img{width:100%;height:auto;display:block}svg{vertical-align:middle;flex-shrink:0}::selection{background:var(--gold);color:var(--ink)}:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.container{width:min(var(--container), calc(100% - 112px));margin-inline:auto}.section-pad{padding-block:132px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--gold-light);color:var(--ink);padding:12px 24px;position:fixed;top:8px;left:16px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.serif-en{font-family:var(--english)}.eyebrow{color:var(--gold);letter-spacing:.23em;align-items:center;gap:18px;font-size:10px;font-weight:500;line-height:1.8;display:flex}.eyebrow-line{background:currentColor;width:34px;height:1px;display:inline-block}.jp-heading{font-family:var(--serif);letter-spacing:.13em;font-size:clamp(27px,2.8vw,39px);font-weight:400;line-height:1.9}.body-copy{color:var(--muted);letter-spacing:.04em;line-height:2.4}.display-heading{font-family:var(--english);letter-spacing:-.035em;font-size:clamp(56px,6.4vw,86px);font-style:italic;line-height:1.16}.ornament{color:var(--gold)}.section-heading{text-align:center}.section-heading .eyebrow{justify-content:center}.section-heading .display-heading{margin-top:15px}.section-subtitle{font-family:var(--serif);letter-spacing:.15em;margin-top:13px;font-size:17px}.section-heading .ornament{margin-top:30px}.light-section{color-scheme:light;background:var(--ivory);color:#29251f}.light-section .eyebrow,.light-section .ornament{color:#806332}.light-section .body-copy{color:#655e54}.light-section :focus-visible{outline-color:#806332}.site-header{z-index:30;border-bottom:1px solid #e7d4aa26;align-items:center;gap:36px;min-height:100px;padding:17px 4%;transition:background .3s,min-height .3s,box-shadow .3s;display:flex;position:fixed;inset:0 0 auto}.site-header.is-scrolled{backdrop-filter:blur(16px);background:#101011f2;min-height:82px;box-shadow:0 4px 24px #0000001f}.brand{flex-direction:column;flex-shrink:0;min-width:150px;line-height:1;display:inline-flex}.brand-name{font-family:var(--english);color:var(--gold-light);letter-spacing:-.04em;font-size:40px;font-style:italic}.brand-dot{color:var(--gold)}.brand-sub{font-family:var(--serif);letter-spacing:.2em;margin-top:8px;font-size:10px}.brand-sub>span{font-family:var(--sans);letter-spacing:.14em;color:var(--muted);margin-left:13px;font-size:8px}.desktop-nav{justify-content:flex-end;align-items:center;gap:clamp(22px,3vw,44px);margin-left:auto;display:flex}.desktop-nav a{font-family:var(--english);letter-spacing:.03em;flex-direction:column;align-items:center;padding:6px 0;font-size:20px;line-height:1.4;display:flex;position:relative}.desktop-nav a span{font-family:var(--sans);color:var(--muted);letter-spacing:.08em;margin-top:4px;font-size:9px}.desktop-nav a:after{content:"";background:var(--gold);transform-origin:0;width:100%;height:1px;transition:transform .25s;position:absolute;bottom:-7px;left:0;transform:scaleX(0)}.desktop-nav a:hover:after{transform:scaleX(1)}.header-reservation{border:1px solid var(--gold);min-height:44px;color:var(--gold-light);letter-spacing:.1em;justify-content:space-between;align-items:center;gap:28px;padding:9px 23px;font-size:12px;transition:color .25s,background .25s;display:flex}.header-reservation:hover{background:var(--gold-light);color:var(--ink)}.menu-toggle{display:none}.mobile-menu{width:min(460px,100%);max-width:100%;height:100dvh;max-height:100dvh;color:var(--text);background:#171615;border:0;margin:0 0 0 auto;padding:25px 30px;inset:0 0 0 auto;overflow-y:auto}.mobile-menu::backdrop{backdrop-filter:blur(5px);background:#000000bf}.mobile-menu-top{color:var(--gold-light);justify-content:space-between;align-items:center;padding-bottom:34px;display:flex}.mobile-menu-top>span{font-size:44px;font-style:italic}.mobile-menu-top button{border:1px solid var(--rule);background:0 0;place-items:center;width:48px;height:48px;display:grid}.mobile-menu nav a{border-top:1px solid var(--rule);grid-template-columns:1fr auto;gap:2px 14px;padding:18px 0;display:grid}.mobile-menu nav a .serif-en{font-size:30px}.mobile-menu nav a>span:nth-child(2){color:var(--muted);grid-column:1;font-size:11px}.mobile-menu nav a svg{color:var(--gold);grid-area:1/2/3;align-self:center}.mobile-menu-bottom{color:var(--muted);margin-top:40px;font-size:11px}.mobile-menu-bottom>a{color:var(--gold-light);font-family:var(--english);padding-block:8px;font-size:32px;display:inline-block}.button{letter-spacing:.1em;justify-content:space-between;align-items:center;gap:48px;min-height:58px;padding:15px 29px;font-size:13px;transition:background .25s,color .25s,border-color .25s;display:inline-flex;position:relative}.button-gold{color:#242019;background:linear-gradient(110deg,#ddc79b,#bea16d);border:1px solid #dfc99c}.button-gold:hover{background:#f0dfbe;border-color:#f0dfbe}.button-sub{opacity:.8;letter-spacing:.04em;margin-left:12px;font-size:10px}.concept{padding-bottom:175px;position:relative;overflow:hidden}.concept-grid{grid-template-columns:.95fr 1fr;align-items:center;gap:clamp(65px,8vw,130px);display:grid}.concept-photo{margin:15px 0 0 18px;position:relative}.concept-photo:before{content:"";z-index:0;border:1px solid var(--rule);position:absolute;inset:-18px 18px 18px -18px}.concept-photo img{aspect-ratio:4/5;object-fit:cover;object-position:center 60%;filter:saturate(.7)brightness(.9);height:auto;position:relative}.photo-caption{background:var(--ink);color:var(--gold-light);font-family:var(--english);padding:8px 20px;font-size:32px;font-style:italic;position:absolute;bottom:-28px;right:-27px}.photo-corner{border-bottom:1px solid var(--gold-light);border-right:1px solid var(--gold-light);width:48px;height:48px;position:absolute;bottom:15px;right:15px}.concept-copy .jp-heading{margin-top:24px}.concept-copy .body-copy{margin-top:28px;font-size:14px}.concept-facts{border-block:1px solid var(--rule);letter-spacing:.04em;flex-wrap:wrap;gap:0;margin-top:34px;padding-block:15px;font-size:12px;display:flex}.concept-facts span+span{border-left:1px solid var(--rule);margin-left:20px;padding-left:20px}.healthy-note{color:var(--muted);margin-top:18px;font-size:12px}.healthy-note span{color:var(--gold);margin-right:8px}.concept-watermark{font-family:var(--english);color:#c6a66a0f;letter-spacing:-.04em;white-space:nowrap;pointer-events:none;font-size:clamp(70px,12vw,174px);font-style:italic;line-height:1.3;position:absolute;bottom:-22px;right:-20px}.menu-section{background-image:radial-gradient(at 50% 0,#f9f5ed,#0000 70%);position:relative}.menu-section>.container{max-width:1020px}.menu-intro{justify-content:space-between;align-items:center;gap:20px;margin-top:58px;margin-bottom:20px;display:flex}.menu-intro h3{font-family:var(--serif);letter-spacing:.1em;font-size:20px}.menu-intro p{color:#756b5d;font-size:12px}.course-list{border-top:1px solid #a88d60}.course-row{border-bottom:1px solid #8063324d;grid-template-columns:1.5fr .7fr .9fr;align-items:center;gap:20px;padding:35px 6px;display:grid}.rank{color:#7c5b26;letter-spacing:.09em;border:1px solid #97733a;padding:2px 13px;font-size:10px;display:inline-block}.course-row:first-child .rank{color:#fff8e9;background:#806332}.course-identity h4{font-family:var(--serif);letter-spacing:.09em;margin-top:13px;font-size:21px}.course-identity>p{color:#756b5d;margin-top:6px;font-size:12px}.course-time{justify-content:center;align-items:baseline;gap:10px;display:flex}.course-time strong{font-family:var(--english);letter-spacing:-.04em;font-size:62px;font-weight:400;line-height:1}.course-time>span{color:#756b5d;font-size:10px}.course-price{font-family:var(--english);letter-spacing:-.025em;font-variant-numeric:lining-nums tabular-nums;white-space:nowrap;justify-self:end;font-size:52px;line-height:1}.course-price>span{margin-right:5px;font-size:26px}.options-grid{border-bottom:1px solid #8063324d;grid-template-columns:1fr 1.5fr;gap:64px;margin-top:48px;padding-bottom:35px;display:grid}.options-title .eyebrow{font-size:8px}.options-title h3{font-family:var(--serif);letter-spacing:.1em;margin-top:10px;font-size:20px}.options-title>p:last-child{color:#756b5d;margin-top:7px;font-size:12px}.option-list>div{justify-content:space-between;align-items:center;gap:20px;padding:14px 0;display:flex}.option-list>div+div{border-top:1px solid #8063322e}.option-list dt{font-family:var(--serif);align-items:center;gap:17px;font-size:17px;display:flex}.option-rank{font-family:var(--sans);color:#806332;font-size:9px}.option-list dd{font-family:var(--english);white-space:nowrap;font-size:32px;line-height:1.3}.option-list dd>span{margin-right:5px;font-size:20px}.menu-bottom{justify-content:space-between;align-items:center;gap:30px;margin-top:24px;display:flex}.payment-note{color:#756b5d;font-size:11px;line-height:2}.payment-note>span{font-size:10px}.text-link{letter-spacing:.08em;border-bottom:1px solid #806332;align-items:center;gap:38px;min-height:48px;font-size:12px;display:inline-flex}.text-link svg{transition:transform .25s}.text-link:hover svg{transform:translate(5px)}.space-section{padding-bottom:112px}.space-intro{justify-content:space-between;align-items:flex-end;gap:50px;display:flex}.space-intro .jp-heading{margin-top:22px}.space-intro>.body-copy{margin-right:5%;padding-bottom:8px;font-size:13px}.space-gallery{margin-top:60px;padding-bottom:100px;position:relative}.space-main{width:81%}.space-main img{aspect-ratio:16/9;object-fit:cover;filter:saturate(.75)}.space-main figcaption{flex-direction:column;gap:4px;margin-top:25px;display:flex}.space-main figcaption .serif-en{color:var(--gold-light);font-size:34px;font-style:italic;line-height:1.3}.space-main figcaption>span:last-child{color:var(--muted);letter-spacing:.15em;font-size:10px}.space-detail{background:var(--ink);width:27%;padding:12px 0 0 12px;position:absolute;bottom:0;right:0}.space-detail img{aspect-ratio:3/4;object-fit:cover;object-position:center 40%;filter:saturate(.55)}.space-detail figcaption{font-family:var(--english);color:var(--gold-light);text-align:right;margin-top:16px;font-size:23px;font-style:italic}.flow-section{background:#191817;border-top:1px solid #c6a66a1a;padding-block:100px}.flow-layout{grid-template-columns:1fr 1.6fr;gap:75px;display:grid}.flow-heading .jp-heading{margin-top:21px;font-size:29px}.flow-heading .body-copy{margin-top:13px;font-size:13px}.flow-list{margin:0;padding:0;list-style:none}.flow-list>li{border-bottom:1px solid var(--rule);gap:30px;padding:28px 0;display:flex}.flow-list>li:first-child{padding-top:0}.step-no{min-width:40px;font-family:var(--english);color:var(--gold);font-size:38px;font-style:italic;line-height:1.4}.flow-list h3{font-family:var(--serif);letter-spacing:.07em;margin-top:5px;font-size:17px}.flow-list p{color:var(--muted);margin-top:10px;font-size:13px;line-height:2}.access-layout{grid-template-columns:1.2fr 1fr;align-items:center;gap:clamp(45px,7vw,105px);display:grid}.access-copy .display-heading{margin-top:20px;font-size:clamp(49px,5.2vw,70px)}.access-subtitle{font-family:var(--serif);letter-spacing:.09em;margin-top:16px;font-size:16px}.information{border-top:1px solid #80633259;margin-top:35px}.information>div{border-bottom:1px solid #80633233;grid-template-columns:90px 1fr;gap:13px;padding:15px 0;font-size:12px;display:grid}.information dt{color:#756b5d}.information dd{overflow-wrap:anywhere}.access-copy>.payment-note{margin-top:13px;font-size:10px}.access-phone{align-items:center;gap:14px;width:fit-content;min-height:52px;margin-top:24px;display:flex}.access-phone>span{font-family:var(--english);letter-spacing:.01em;white-space:nowrap;font-size:clamp(29px,3vw,38px);line-height:1}.access-phone>svg{color:#806332}.access-phone>svg:last-child{margin-left:15px}.access-photo{align-self:stretch;min-height:550px;position:relative}.access-photo img{object-fit:cover;object-position:center 63%;filter:saturate(.6);width:100%;height:100%}.access-photo:after{content:"";background:linear-gradient(#0000 50%,#101011b3);position:absolute;inset:0}.access-photo-label{z-index:1;color:#fff6e5;font-family:var(--english);font-size:58px;font-style:italic;line-height:1;position:absolute;bottom:30px;left:32px}.access-photo-label>span{font-family:var(--sans);letter-spacing:.2em;margin-top:13px;font-size:8px;font-style:normal;display:block}.reservation-section{background:radial-gradient(ellipse at 50% 0, #29231c, var(--ink) 65%);position:relative}.reservation-section .section-heading>.ornament{width:170px;height:46px;margin:0 0 30px}.reservation-section .jp-heading{margin-top:23px;font-size:clamp(30px,3.5vw,45px)}.reservation-section .body-copy{margin-top:23px;font-size:13px}.reservation-methods{grid-template-columns:1fr 1fr;gap:25px;max-width:900px;margin:45px auto 0;display:grid}.reservation-methods>a{border:1px solid var(--gold);align-items:center;gap:24px;padding:27px 30px;transition:background .25s,border-color .25s;display:flex;position:relative}.reservation-methods>a>span:not(.sr-only){flex:1}.reservation-methods small{letter-spacing:.15em;margin-bottom:4px;font-size:8px;display:block}.reservation-methods strong{letter-spacing:.02em;font-size:15px;font-weight:400}.reservation-web{color:#26211b;background:linear-gradient(100deg,#dec99f,#bea16d)}.reservation-methods>.reservation-web:hover{background:#ecd9b3}.reservation-line{color:var(--gold-light)}.reservation-methods>.reservation-line:hover{border-color:var(--gold-light);background:#c6a66a1a}.reservation-phone{text-align:center;margin-top:39px}.reservation-phone>p:first-child{color:var(--muted);letter-spacing:.09em;font-size:11px}.reservation-phone>a{min-height:60px;color:var(--gold-light);align-items:center;gap:17px;margin-top:2px;display:inline-flex}.reservation-phone>a>span{font-family:var(--english);letter-spacing:.015em;font-size:48px;line-height:1.4}.reservation-phone>p:last-child{color:var(--muted);margin-top:8px;font-size:11px}.reservation-phone>p>span{color:var(--gold);margin-inline:10px}.site-footer{border-top:1px solid var(--rule);padding-block:50px 27px}.footer-top{justify-content:space-between;align-items:center;gap:30px;display:flex}.footer-brand .brand-name{font-size:47px}.footer-brand .brand-sub{margin-top:9px}.footer-top>p{color:var(--muted);font-family:var(--serif);letter-spacing:.1em;margin-left:auto;font-size:12px}.back-top{border:1px solid var(--rule);width:48px;height:48px;color:var(--gold);place-items:center;margin-left:25px;transition:border-color .25s;display:grid}.back-top svg{transform:rotate(-90deg)}.back-top:hover{border-color:var(--gold)}.footer-bottom{color:#a69e90;border-top:1px solid #c6a66a21;justify-content:space-between;align-items:center;gap:30px;margin-top:35px;padding-top:23px;display:flex}.footer-bottom>p{font-size:10px}.footer-bottom>p>span{margin-left:22px}.footer-bottom small{letter-spacing:.05em;font-size:9px}.booking-bar{display:none}@media (width<=1100px){.container{width:calc(100% - 72px)}.site-header{gap:25px}.desktop-nav{gap:24px}.desktop-nav a{font-size:18px}.header-reservation{gap:19px;padding-inline:16px}.concept-grid{gap:60px}.concept-copy .jp-heading{font-size:29px}.concept-copy .body-copy{font-size:12px}.concept-facts{font-size:10px}.concept-facts span+span{margin-left:15px;padding-left:15px}.course-row{grid-template-columns:1.4fr .7fr .9fr;gap:12px}.course-price{font-size:47px}.flow-layout{gap:45px}.reservation-methods>a{gap:17px;padding-inline:23px}.reservation-methods strong{font-size:13px}}@media (width<=900px){.desktop-nav{display:none}.site-header{min-height:85px}.site-header.is-scrolled{min-height:75px}.header-reservation{margin-left:auto}html.has-js .menu-toggle{background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:44px;height:44px;display:flex}.menu-toggle>span{background:var(--gold-light);width:25px;height:1px}.menu-toggle>span:last-child{width:18px;margin-left:7px}.space-intro>.body-copy{margin-right:0}.flow-layout{grid-template-columns:1fr 1.3fr;gap:35px}.flow-heading .jp-heading{font-size:25px}.flow-list>li{gap:20px}.access-layout{gap:35px}.information>div{grid-template-columns:66px 1fr;font-size:11px}.reservation-methods{gap:18px}.reservation-methods>a{gap:14px;padding:24px 20px}.reservation-methods>a>svg:first-child{width:24px;height:24px}}@media (width<=760px){html{scroll-padding-top:83px}body{padding-bottom:calc(66px + env(safe-area-inset-bottom));font-size:14px}.container{width:calc(100% - 44px)}.section-pad{padding-block:85px}.eyebrow{gap:14px;font-size:9px}.jp-heading{letter-spacing:.1em;font-size:clamp(25px,5.9vw,35px)}.display-heading{font-size:clamp(54px,12vw,76px)}.body-copy{font-size:13px}.site-header{gap:16px;min-height:78px;padding:14px 21px}.site-header.is-scrolled{min-height:72px}.brand{min-width:125px}.brand-name{font-size:34px}.brand-sub{margin-top:6px;font-size:9px}.brand-sub>span{margin-left:7px;font-size:7px}.header-reservation{gap:15px;min-height:40px;padding:9px 13px;font-size:11px}.header-reservation>svg{width:16px}.concept{padding-top:90px;padding-bottom:110px}.concept-grid{grid-template-columns:1fr;gap:65px}.concept-photo{width:83%;max-width:390px;margin:12px auto 0}.concept-photo img{aspect-ratio:4/4.5;object-position:center 60%}.concept-photo:before{inset:-13px 13px 13px -13px}.photo-caption{font-size:30px;right:-25px}.concept-copy{padding-inline:4px}.concept-copy .jp-heading{margin-top:19px;font-size:clamp(26px,6vw,34px)}.concept-copy .body-copy{margin-top:24px;font-size:13px}.concept-facts{margin-top:28px;font-size:11px}.healthy-note{font-size:11px}.concept-watermark{font-size:78px;bottom:-6px}.section-subtitle{margin-top:15px;font-size:14px}.section-heading .ornament{width:120px;height:32px;margin-top:22px}.menu-intro{flex-direction:column;align-items:flex-start;gap:8px;margin-top:40px;margin-bottom:18px}.menu-intro h3{font-size:18px}.menu-intro p{font-size:11px}.course-row{grid-template-columns:1fr 1fr;gap:20px 10px;padding:25px 0 28px}.course-identity{grid-column:1/-1}.course-identity h4{letter-spacing:.06em;margin:0 0 0 14px;font-size:17px;display:inline}.course-identity>p{margin-top:12px;font-size:11px}.rank{vertical-align:2px;padding:2px 9px;font-size:9px}.course-time{justify-content:flex-start;gap:8px;padding-left:4px}.course-time strong{font-size:57px}.course-time>span{font-size:10px}.course-price{padding-right:4px;font-size:46px}.course-price>span{font-size:23px}.options-grid{grid-template-columns:1fr;gap:19px;margin-top:34px;padding-bottom:24px}.options-title h3{font-size:18px}.options-title>p:last-child{font-size:11px}.option-list dt{gap:16px;font-size:16px}.option-list>div{padding-block:14px}.option-list dd{font-size:30px}.option-rank{font-size:9px}.menu-bottom{flex-direction:column;align-items:flex-start;gap:20px;margin-top:19px}.payment-note,.payment-note>span{font-size:10px}.menu-bottom .text-link{align-self:flex-end}.space-intro{flex-direction:column;align-items:flex-start;gap:23px}.space-intro .jp-heading{margin-top:18px}.space-intro>.body-copy{padding:0;font-size:12px}.space-gallery{margin-top:35px;padding-bottom:175px}.space-main{width:100%}.space-main img{aspect-ratio:4/3}.space-main figcaption{max-width:54%;margin-top:20px}.space-main figcaption .serif-en{font-size:29px;line-height:1.15}.space-main figcaption>span:last-child{margin-top:10px;font-size:9px}.space-detail{width:43%;padding:9px 0 0 9px;bottom:0}.space-detail img{aspect-ratio:3/4}.space-detail figcaption{margin-top:12px;font-size:20px}.flow-layout{grid-template-columns:1fr;gap:35px}.flow-heading .jp-heading{margin-top:17px;font-size:27px}.flow-heading .body-copy{margin-top:9px;font-size:12px}.flow-list>li{gap:22px;padding-block:24px}.flow-list h3{font-size:15px}.flow-list p{margin-top:9px;font-size:12px}.step-no{min-width:35px;font-size:35px}.access-layout{grid-template-columns:1fr;gap:40px}.access-copy .display-heading{margin-top:17px;font-size:clamp(49px,11vw,65px)}.access-subtitle{margin-top:13px;font-size:14px}.information{margin-top:30px}.information>div{grid-template-columns:72px 1fr;gap:10px;padding-block:14px;font-size:11px}.access-phone{gap:13px;margin-top:18px}.access-phone>span{font-size:35px}.access-phone>svg:last-child{margin-left:14px}.access-photo{width:100%;height:370px;min-height:0}.access-photo img{object-position:center 55%}.access-photo-label{font-size:53px;bottom:25px;left:25px}.reservation-section .section-heading>.ornament{width:135px;height:36px;margin-bottom:23px}.reservation-section .jp-heading{margin-top:22px;font-size:29px}.reservation-section .body-copy{margin-top:22px;font-size:12px}.reservation-methods{grid-template-columns:1fr;gap:15px;margin-top:32px}.reservation-methods>a{gap:20px;min-height:90px;padding:21px 23px}.reservation-methods strong{font-size:14px}.reservation-methods small{font-size:8px}.reservation-phone{margin-top:30px}.reservation-phone>a{gap:12px;min-height:55px}.reservation-phone>a>span{font-size:39px}.reservation-phone>a>svg{width:20px}.reservation-phone>p:last-child{margin-top:8px;font-size:9px}.reservation-phone>p>span{margin-inline:4px}.site-footer{padding-top:36px;padding-bottom:28px}.footer-top{flex-wrap:wrap;gap:22px}.footer-brand .brand-name{font-size:43px}.footer-top>p{order:3;width:100%;margin-left:0;font-size:11px}.back-top{width:44px;height:44px;margin-left:auto}.footer-bottom{flex-direction:column;align-items:flex-start;gap:14px;margin-top:24px;padding-top:20px}.footer-bottom>p{font-size:9px}.footer-bottom>p>span{margin-left:16px}.footer-bottom small{font-size:8px}.booking-bar{z-index:35;min-height:calc(66px + env(safe-area-inset-bottom));padding:0 0 env(safe-area-inset-bottom);border-top:1px solid var(--gold);background:#171615;grid-template-columns:1fr 1.15fr 1fr;display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -5px 25px #0000002e}.booking-bar>a{min-height:65px;color:var(--gold-light);letter-spacing:.06em;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:10px;line-height:1.3;display:flex;position:relative}.booking-bar>.booking-bar-web{color:#29231a;background:linear-gradient(110deg,#dfcba3,#c4a772)}}@media (width<=360px){.container{width:calc(100% - 36px)}.site-header{gap:9px;padding-inline:15px}.header-reservation{gap:10px;padding-inline:10px}.brand{min-width:113px}.brand-name{font-size:31px}.concept-copy .body-copy{font-size:12px}.concept-facts span+span{margin-left:12px;padding-left:12px}.course-identity h4{margin-left:9px;font-size:15px}.course-price{font-size:42px}.reservation-methods>a{gap:15px;padding-inline:19px}.reservation-methods strong{font-size:12px}.reservation-phone>a>span{font-size:35px}}@media (height<=500px){.site-header,.site-header.is-scrolled{min-height:64px;padding-block:8px}.site-header .brand-name{font-size:30px}.site-header .brand-sub,.desktop-nav a>span{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.site-header{background:#101011f7}.hero{--hero-header-size:100px;--hero-booking-size:0px;width:100%;height:100dvh;min-height:0;padding-top:var(--hero-header-size);padding-bottom:var(--hero-booking-size);background:var(--ink);grid-template-rows:minmax(0,1fr) auto;display:grid;position:relative}.hero-artwork{background:radial-gradient(at 48% 45%,#f4e8d9 0%,#e5d0b8 72%,#cdb291 100%);min-width:0;min-height:0;position:relative;overflow:hidden}.hero-picture{display:block;position:absolute;inset:0}.hero-picture img{object-fit:contain;object-position:center;width:100%;height:100%;display:block}.hero-panel{border-top:1px solid var(--gold);background:linear-gradient(110deg,#201c17,#131212 65%);padding:24px 5% 13px;position:relative}.hero-panel-inner{grid-template-columns:minmax(170px,1fr) minmax(380px,1.7fr) minmax(135px,.8fr);align-items:center;gap:30px;width:min(1280px,100%);margin-inline:auto;display:grid}.hero-area{font-family:var(--serif);letter-spacing:.07em;font-size:13px}.hero-status{color:var(--muted);letter-spacing:.08em;margin-top:5px;font-size:10px}.hero-status>span{color:var(--gold);margin-inline:12px}.hero-actions{grid-template-columns:1fr 1fr;gap:14px;min-width:0;display:grid}.hero-book{border:1px solid var(--gold);letter-spacing:.04em;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:13px 20px;font-size:12px;transition:background .25s,border-color .25s;display:flex;position:relative}.hero-book>span:not(.sr-only){text-align:center;white-space:nowrap;flex:1}.hero-book-sub{margin-left:7px;font-size:9px}.hero-book-web{color:#242019;background:linear-gradient(110deg,#ddc79b,#bea16d)}.hero-book-web:hover{background:#f0dfbe;border-color:#f0dfbe}.hero-book-line{color:var(--gold-light)}.hero-book-line:hover{border-color:var(--gold-light);background:#c6a66a1f}.hero-reception{flex-direction:column;align-items:flex-end;line-height:1.5;display:flex}.hero-reception>span{color:var(--muted);letter-spacing:.08em;font-size:9px}.hero-reception strong{font-family:var(--english);color:var(--gold-light);white-space:nowrap;margin-block:3px;font-size:25px;font-weight:400}.hero-discover{width:fit-content;min-height:30px;color:var(--muted);letter-spacing:.12em;justify-content:center;align-items:center;gap:13px;margin:14px auto 0;font-size:9px;display:flex}.hero-discover>svg{color:var(--gold);transform:rotate(90deg)}.hero-discover:hover{color:var(--gold-light)}@media (width<=1100px){.hero-panel{padding:20px 4% 10px}.hero-panel-inner{grid-template-columns:minmax(0,1fr) auto;gap:5px 26px}.hero-actions{grid-area:1/1/3}.hero-intro{text-align:right;grid-area:1/2}.hero-area{font-size:11px}.hero-status{margin-top:3px;font-size:9px}.hero-reception{grid-area:2/2}.hero-reception>span{display:none}.hero-reception strong{font-size:23px}.hero-book{gap:9px;padding-inline:14px}.hero-book-sub{margin:2px 0 0;font-size:8px;line-height:1.3;display:block}.hero-discover{margin-top:10px}}@media (width<=900px){.hero{--hero-header-size:85px}}@media (width<=760px){.hero{--hero-header-size:78px;--hero-booking-size:calc(66px + env(safe-area-inset-bottom))}.hero-artwork{background:radial-gradient(at 45% 45%,#f5e9da,#e5d0b8 74%,#d5ba9b)}.hero-panel{padding:17px 22px 10px}.hero-panel-inner{grid-template-columns:1fr;gap:13px}.hero-intro{text-align:center;flex-wrap:wrap;grid-area:1/1;justify-content:center;align-items:baseline;gap:3px 16px;display:flex}.hero-area{letter-spacing:.02em;font-size:11px}.hero-status{letter-spacing:.02em;margin-top:0;font-size:9px}.hero-status>span{margin-inline:6px}.hero-actions{grid-area:2/1;gap:10px}.hero-book{gap:8px;min-height:54px;padding:10px 12px;font-size:11px}.hero-book>svg{width:18px;height:18px}.hero-book>svg:last-of-type{width:16px;height:16px}.hero-reception{flex-flow:wrap;grid-area:3/1;justify-content:center;align-items:center;gap:4px 10px}.hero-reception>span{font-size:9px;display:inline}.hero-reception strong{margin:0;font-size:21px}.hero-discover{min-height:27px;margin-top:5px;font-size:8px}}@media (height<=650px){.hero-panel{padding-top:12px;padding-bottom:12px}.hero-discover{display:none}}@media (width<=760px) and (height<=650px){.hero-panel-inner{gap:8px}.hero-intro{display:none}.hero-actions{grid-row:1}.hero-reception{grid-row:2}.hero-book{min-height:46px;padding-block:7px}}@media (height<=500px){.hero{--hero-header-size:64px}.hero-panel{padding-block:8px}.hero-status{display:none}.hero-book{min-height:44px;padding-block:6px}}@media (width<=760px) and (height<=500px){.hero-panel-inner{gap:0}.hero-reception{display:none}}
