:root{--ink:#080908;--paper:#e9e4d9;--gold:#bfa65d;--gold-pale:#ddca8b;--line:#d3be7e3d;--serif:"Yu Mincho Pr6N R", "YuMincho Pr6N R", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", serif;--sans:"Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", "Noto Sans JP", sans-serif}*{box-sizing:border-box}html{background:var(--ink);scroll-behavior:smooth;scroll-padding-top:76px}body{background:var(--ink);color:var(--paper);font-family:var(--serif);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.site-header{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:linear-gradient(#070807e0,#07080700);border-bottom:1px solid #eee0b51f;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;height:76px;padding:0 clamp(24px,4vw,68px);display:grid;position:fixed;top:0;left:0}.header-brand{width:144px;height:52px;display:block;position:relative;overflow:hidden}.header-logo-frame{display:block;position:absolute;inset:0;overflow:hidden}.header-logo-frame img{width:164px;max-width:none;height:164px;display:block;position:absolute;top:-61px;left:-10px}.desktop-nav{gap:clamp(22px,3vw,46px);display:flex}.desktop-nav a{color:#e9e4d9b3;font-family:var(--serif);letter-spacing:.12em;font-size:11px;transition:color .18s}.desktop-nav a:hover{color:var(--gold-pale)}.header-contact{font-family:var(--serif);letter-spacing:.13em;border-bottom:1px solid #dac584bf;justify-self:end;padding:10px 0 8px;font-size:11px}.menu-button{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:48px;height:48px;display:none}.menu-button span{background:var(--paper);width:25px;height:1px;transition:transform .25s;position:absolute}.menu-button span:first-child{transform:translateY(-4px)}.menu-button span:last-child{transform:translateY(4px)}.menu-button[aria-expanded=true] span:first-child{transform:rotate(42deg)}.menu-button[aria-expanded=true] span:last-child{transform:rotate(-42deg)}.mobile-menu{z-index:40;visibility:hidden;opacity:0;background:#030403;place-items:center;transition:opacity .3s,visibility .3s;display:grid;position:fixed;inset:0}.mobile-menu.is-open{visibility:visible;opacity:1}.mobile-menu nav{width:min(78vw,420px)}.mobile-menu a{border-bottom:1px solid var(--line);font-family:var(--serif);letter-spacing:.08em;grid-template-columns:38px 1fr;padding:19px 0;font-size:18px;display:grid}.mobile-menu a span{color:var(--gold);font-family:Georgia,serif;font-size:9px}.hero{background:radial-gradient(circle at 50% 42%,#baa05117,#0000 27%),linear-gradient(138deg,#070807 10%,#0e100e 54%,#060706 100%);min-height:100svh;position:relative;overflow:hidden}.hero:after{aspect-ratio:1;content:"";border:1px solid #cab4701a;border-radius:50%;width:min(75vw,900px);position:absolute;bottom:-44vw;right:-10vw;box-shadow:0 0 120px #c9b2690a}.hero-orbit{aspect-ratio:1;border:1px solid #cab57417;border-radius:50%;width:min(63vw,780px);animation:2.65s cubic-bezier(.2,.7,.25,1) both moonlight;position:absolute;top:14%;left:50%;transform:translate(-50%)}.hero-orbit:before{filter:blur(8px);content:"";background:radial-gradient(circle,#d3c0851c,#927d4005 55%,#0000 72%);border-radius:50%;position:absolute;inset:10%}.hero-grain{opacity:.12;mix-blend-mode:soft-light;pointer-events:none;background:repeating-radial-gradient(circle at 23% 31%,#ffffff24 0 1px,#0000 1px 5px) 0 0/11px 13px,repeating-radial-gradient(circle at 78% 64%,#ffffff14 0 1px,#0000 1px 7px) 0 0/17px 19px;position:absolute;inset:0}.hero-content{z-index:2;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:min(1180px,100% - 48px);min-height:100svh;margin:0 auto;padding:118px 0 68px;display:flex;position:relative}.hero-eyebrow{color:#d4c186a8;letter-spacing:.46em;margin:0 0 5px;font-family:Georgia,serif;font-size:9px;animation:1s 1.55s both softReveal}.logo-stage{width:100%;height:clamp(190px,27vw,310px);position:relative}.logo-art{aspect-ratio:1;width:min(920px,120vw);animation:1.05s cubic-bezier(.19,.72,.25,1) .5s both logoReveal;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.logo-art img{object-fit:contain;width:100%;height:100%;display:block}.logo-shine{filter:brightness(1.85)saturate(.68)drop-shadow(0 0 7px #ffefb757);clip-path:polygon(-28% 0,-13% 0,-29% 100%,-44% 100%);pointer-events:none;background:url(/logo-tsukinoza-gold-display.png) 50%/contain no-repeat;animation:1.05s cubic-bezier(.32,.05,.43,1) 1.42s both logoShine;position:absolute;inset:0}.hero-copy{margin-top:clamp(-18px,-1.4vw,-7px)}.hero-copy p{font-family:var(--serif);letter-spacing:.16em;margin:0;font-size:clamp(24px,3.1vw,42px);font-weight:400;animation:1s 1.65s both softReveal}.hero-renewal{color:var(--gold-pale);font-family:var(--serif);letter-spacing:.1em;text-shadow:0 0 18px #ddca8b29;margin-top:13px;font-size:clamp(17px,1.5vw,22px);font-weight:400;animation:1s 1.75s both softReveal;display:block}.hero-copy span{color:#e9e4d9ad;font-family:var(--serif);letter-spacing:.18em;margin-top:9px;font-size:clamp(11px,1.2vw,14px);animation:1s 1.8s both softReveal;display:block}.primary-link{width:min(280px,82vw);font-family:var(--serif);letter-spacing:.15em;text-align:center;background:#c0a5570b;border:1px solid #d1bc7a5c;justify-content:center;align-items:center;margin-top:36px;padding:16px 42px 15px;font-size:12px;transition:border-color .18s,background .18s;animation:1s 1.95s both softReveal;display:flex;position:relative}.primary-link:hover{border-color:var(--gold);background:#c0a5571f}.primary-link span{color:var(--gold-pale);font-family:sans-serif;font-size:17px;position:absolute;top:50%;right:19px;transform:translateY(-50%)}.scroll-cue{z-index:3;color:#e9e4d980;letter-spacing:.28em;align-items:center;gap:12px;font-family:Georgia,serif;font-size:8px;display:flex;position:absolute;bottom:34px;right:clamp(28px,4vw,68px)}.scroll-cue i{background:linear-gradient(to right, var(--gold), transparent);width:46px;height:1px;display:block}.section-kicker{color:var(--gold);letter-spacing:.42em;margin:0 0 28px;font-family:Georgia,serif;font-size:9px}.section-heading h2,.contact-section h2{font-family:var(--serif);letter-spacing:.08em;margin:0;font-size:clamp(38px,5.8vw,72px);font-weight:400;line-height:1.3}.section-heading>p:last-child{color:#e9e4d9bd;font-family:var(--serif);letter-spacing:.08em;margin:24px 0 0;font-size:12px;line-height:2}.hero-interior{background:#090a09;border-top:1px solid #d3be7e24;border-bottom:1px solid #d3be7e24;width:100%;position:relative;overflow:hidden}.hero-interior img{object-fit:cover;width:100%;height:clamp(420px,55vw,780px);display:block}.first-visit-section{background:#0a0b09;grid-template-columns:.8fr 1.2fr;align-items:end;gap:clamp(52px,8vw,110px);padding:clamp(90px,9vw,132px) max(26px,50vw - 580px);display:grid}.first-visit-heading h2{font-family:var(--serif);letter-spacing:.08em;margin:0;font-size:clamp(36px,4.6vw,60px);font-weight:400}.first-visit-heading>p:last-child{color:#e9e4d9bd;font-family:var(--serif);letter-spacing:.08em;margin:24px 0 0;font-size:12px;line-height:2}.first-visit-list{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.first-visit-list article{border-left:1px solid #d3be7e24;min-height:132px;padding:32px 24px}.first-visit-list article:first-child{border-left:0}.first-visit-list span{color:#d7c48894;letter-spacing:.18em;font-family:Georgia,serif;font-size:8px}.first-visit-list h3{font-family:var(--serif);letter-spacing:.09em;margin:19px 0 0;font-size:16px;font-weight:400}.concept-section{background:#0d0f0d;grid-template-columns:minmax(340px,.9fr) minmax(430px,1.1fr);align-items:center;gap:clamp(68px,9vw,142px);min-height:920px;padding:clamp(100px,11vw,168px) max(56px,50vw - 590px);display:grid;position:relative;overflow:hidden}.concept-section:before{content:"";background:linear-gradient(#0000,#c4a95b38);width:1px;height:26%;position:absolute;top:0;left:7vw}.concept-visual{background:linear-gradient(155deg,#a1853b0f,#0000 44%),radial-gradient(circle at 57% 33%,#cbb57017,#0000 28%),#090a09;border:1px solid #d5c18124;min-height:660px;position:relative;overflow:hidden}.concept-visual--photo{background:#090a09}.concept-visual.concept-visual--photo:after{content:none}.concept-photo{object-fit:contain;width:100%;height:100%;display:block;position:absolute;inset:0}.concept-visual:after{background:linear-gradient(transparent, var(--gold));content:"";width:1px;height:120px;position:absolute;bottom:30px;right:28px}.concept-visual>span{color:#d7c48847;letter-spacing:.55em;font-family:Georgia,serif;font-size:8px;position:absolute;bottom:86px;right:-37px;transform:rotate(90deg)}.concept-moon{aspect-ratio:1;background:radial-gradient(circle at 35% 30%, #fff4c5fa, #c6ac6099 40%, #6a592e40 72%), var(--gold);border-radius:50%;width:min(28vw,330px);position:absolute;top:16%;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 0 100px #bfa65d1f}.concept-moon:after{content:"";background:#090a09;border-radius:50%;position:absolute;inset:-5% -18% -5% 24%;box-shadow:-18px 0 32px #08090847}.concept-body{z-index:1;max-width:600px;position:relative}.concept-body h1{font-family:var(--serif);letter-spacing:.09em;margin:0;font-size:clamp(48px,6.2vw,82px);font-weight:400;line-height:1.38}.concept-line{background:linear-gradient(var(--gold), transparent);width:1px;height:90px;margin:42px 0 36px 5px}.concept-copy{color:#e9e4d9d6;max-width:570px;font-family:var(--serif);letter-spacing:.1em;margin:0;font-size:clamp(13px,1.35vw,16px);line-height:2.35}.story-phrase{display:inline}.concept-copy-continuation{margin-top:24px}.vertical-note{color:#d9c6894d;font-family:var(--serif);letter-spacing:.42em;writing-mode:vertical-rl;margin:0;font-size:10px;position:absolute;top:22%;right:max(22px,50vw - 665px)}.menu-section{background:#151612;padding:clamp(110px,12vw,176px) max(26px,50vw - 580px)}.menu-section .section-heading{grid-template-columns:1fr 1fr;align-items:end;display:grid}.menu-section .section-heading .section-kicker{grid-column:1/-1}.menu-section .section-heading>p:last-child{justify-self:end;max-width:430px;margin:0 0 7px}.price-layout{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:.8fr 1.2fr;margin-top:clamp(60px,8vw,110px);display:grid}.price-intro{border-right:1px solid var(--line);padding:52px clamp(30px,5vw,74px) 48px 0}.price-script{color:var(--gold-pale);font-family:Georgia,serif;font-size:clamp(31px,4vw,50px);font-style:italic}.price-intro>p{font-family:var(--serif);letter-spacing:.09em;margin:34px 0 0;font-size:clamp(16px,2vw,23px);line-height:1.9}.price-list{padding-left:clamp(30px,5vw,74px)}.price-row{border-bottom:1px solid #d3be7e1f;justify-content:space-between;align-items:center;gap:24px;min-height:104px;padding:19px 0;display:flex}.price-row:last-of-type{border-bottom:0}.price-row-copy{flex:1}.price-row-with-details{min-height:128px}.price-code{color:#d7c48894;letter-spacing:.18em;align-items:center;gap:14px;margin-bottom:8px;font-family:Georgia,serif;font-size:9px;display:flex}.price-code small{color:#e9e4d97a;font-family:var(--sans);letter-spacing:.12em;font-size:9px}.price-row h3{font-family:var(--serif);letter-spacing:.12em;margin:0;font-size:17px;font-weight:400}.price-row>strong{color:var(--gold-pale);font-family:Georgia, var(--serif);font-variant-numeric:tabular-nums lining-nums;letter-spacing:.04em;text-align:left;white-space:nowrap;flex:0 0 4em;font-size:clamp(22px,2.4vw,32px);font-weight:400}.price-row-tax>strong{font-family:var(--serif);letter-spacing:.08em;flex-basis:auto;font-size:clamp(14px,1.4vw,17px);transform:translateY(9px)}.price-suffix{letter-spacing:0;opacity:.78;margin-left:.12em;font-size:.5em;font-weight:400;display:inline-block;transform:translateY(-.38em)}.price-inclusions{color:#e9e4d9b3;font-family:var(--serif);letter-spacing:.08em;gap:3px;margin:9px 0 0;padding:0;font-size:11px;line-height:1.65;list-style:none;display:grid}.price-inclusions li:before{color:#d7c488b8;content:"—";margin-right:.65em}.price-inclusions li.is-note:before{content:none}.price-row-extension{min-height:0;padding:25px 0 27px}.extension-rate-groups{gap:14px;margin-top:17px;display:grid}.extension-rate-group{border-top:1px solid #d3be7e1a;grid-template-columns:minmax(96px,.68fr) minmax(0,1.32fr);align-items:start;gap:24px;padding-top:13px;display:grid}.extension-rate-group h4{color:#e9e4d9b8;font-family:var(--serif);letter-spacing:.1em;margin:3px 0 0;font-size:13px;font-weight:400}.extension-rate-group dl{gap:7px;margin:0;display:grid}.extension-rate{grid-template-columns:minmax(0,1fr) clamp(88px,9.6vw,128px);align-items:baseline;gap:18px;display:grid}.extension-rate dt{color:#e9e4d9c2;font-family:var(--serif);letter-spacing:.08em;font-size:13px}.extension-rate dd{color:var(--gold-pale);font-family:Georgia, var(--serif);font-variant-numeric:tabular-nums lining-nums;letter-spacing:.04em;white-space:nowrap;margin:0;font-size:clamp(22px,2.4vw,32px);font-weight:400}.price-caution{color:#e9e4d9ad;font-family:var(--serif);letter-spacing:.07em;margin:0;padding:2px 0 22px;font-size:10px;line-height:1.8}.price-caution span{display:block}.fee-slots{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:390px;margin:20px 0 0;display:grid}.fee-slots>div{background:#d3be7e06;border:1px solid #d3be7e24;justify-content:space-between;align-items:center;gap:16px;min-height:40px;padding:9px 12px;display:flex}.fee-slots dt,.fee-slots dd{margin:0}.fee-slots dt{color:#e9e4d9a8;letter-spacing:.1em;font-size:9px}.fee-slots dd{color:#d7c488a8;letter-spacing:.08em;white-space:nowrap;font-family:Georgia,serif;font-size:12px}.drink-list{margin-top:clamp(70px,9vw,124px)}.drink-row{border-top:1px solid #d3be7e2e;grid-template-columns:78px 1fr auto;align-items:center;min-height:126px;transition:padding .24s,background .24s;display:grid}.drink-row:last-child{border-bottom:1px solid #d3be7e2e}.drink-row:hover{background:#b99a470a;padding-left:18px;padding-right:18px}.drink-row>span{color:#d7c48870;font-family:Georgia,serif;font-size:10px}.drink-row h3{letter-spacing:.1em;margin:0;font-family:Georgia,serif;font-size:clamp(22px,3vw,38px);font-weight:400}.drink-row p{color:#e9e4d9b3;font-family:var(--serif);letter-spacing:.14em;margin:8px 0 0;font-size:11px}.drink-row small{color:#e9e4d97a;letter-spacing:.1em;font-size:9px}.gallery-section{background:#090a09;padding:clamp(110px,13vw,190px) max(26px,50vw - 620px);overflow:hidden}.gallery-heading{margin-left:min(8vw,100px)}.gallery-grid{grid-template-rows:1fr 1fr;grid-template-columns:1.35fr .65fr;gap:clamp(16px,2vw,28px);min-height:850px;margin-top:clamp(64px,8vw,112px);display:grid}.gallery-frame{margin:0}.gallery-main{grid-row:1/3}.gallery-photo{object-fit:cover;border:1px solid #d9c68914;width:100%;height:100%;min-height:280px;display:block}.gallery-photo-counter{object-position:52% center}.gallery-photo-sofa{object-position:51% center}.gallery-photo-overview{object-position:52% center}.placeholder-art{background-color:#11120f;border:1px solid #d9c68914;height:100%;min-height:280px;position:relative;overflow:hidden}.placeholder-art:before,.placeholder-art:after,.placeholder-art i,.placeholder-art .ambient-light{content:"";display:block;position:absolute}.placeholder-art .ambient-light{filter:blur(6px);background:radial-gradient(circle,#e7cb784d,#7d5d1f12 38%,#0000 70%);border-radius:50%;width:70%;height:76%;top:-22%;left:12%}.art-counter{background:linear-gradient(150deg,#13140f 0 38%,#090a08 38% 55%,#1b1710 55% 100%)}.art-counter:before{background:linear-gradient(90deg,#15100a,#665027 56%,#17120b);width:78%;height:31%;bottom:8%;right:-8%;transform:skewY(-5deg);box-shadow:0 -2px #e2c56f38}.art-counter:after{aspect-ratio:.48;border:1px solid #e1ca845c;border-radius:48% 48% 20% 20%;width:11%;bottom:24%;left:14%;box-shadow:0 0 28px #d3b35426}.art-counter i{aspect-ratio:.35;border-left:1px solid #e7d08b3b;border-right:1px solid #e7d08b3b;width:7%;bottom:21%;left:34%}.art-seat{background:linear-gradient(155deg,#1a1711,#090a08 56%,#21190e)}.art-seat:before{background:linear-gradient(145deg,#46361f,#17120d 60%);border-radius:50% 50% 8% 8%;width:60%;height:38%;bottom:11%;right:9%;box-shadow:inset 0 1px #eccd7a2e}.art-seat:after{background:linear-gradient(#0000,#d7ba6885,#0000);width:2px;height:54%;bottom:10%;left:14%;box-shadow:38px 0 #d7ba681f}.art-detail{background:radial-gradient(circle at 28% 33%,#b2892f2b,#0000 24%),linear-gradient(125deg,#080907,#1d1a13)}.art-detail:before{aspect-ratio:1;border:1px solid #e5cd8954;border-radius:50%;width:33%;top:19%;left:22%;box-shadow:0 0 42px #e0c26c1a}.art-detail:after{aspect-ratio:1;background:#10110d;border-radius:50%;width:33%;top:19%;left:34%}.art-detail i{background:linear-gradient(90deg,#0000,#e8d19173);width:40%;height:1px;bottom:13%;right:12%}.access-section{background:#11120f;padding:clamp(110px,13vw,186px) max(26px,50vw - 580px)}.access-heading{text-align:center}.access-layout{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;margin-top:clamp(66px,8vw,110px);display:grid}.info-list{padding-right:clamp(28px,5vw,70px)}.info-row{border-bottom:1px solid #d3be7e21;grid-template-columns:112px 1fr;align-items:center;min-height:108px;display:grid}.info-row-address{min-height:170px}.info-row:last-child{border-bottom:0}.info-row>span{color:var(--gold);letter-spacing:.2em;font-family:Georgia,serif;font-size:8px}.info-row h3{font-family:var(--serif);letter-spacing:.1em;margin:0;font-size:18px;font-weight:400}.info-row p{color:#e9e4d9bd;letter-spacing:.05em;white-space:pre-line;margin:10px 0 0;font-size:11px;line-height:1.8}.info-row:first-child .info-value{color:var(--paper);font-family:var(--serif);letter-spacing:.08em;font-size:17px}.map-link{color:#efe4c5;min-height:46px;font-family:var(--serif);letter-spacing:.1em;background:linear-gradient(135deg,#cfb25b33,#cfb25b12);border:1px solid #dec67cc2;align-items:center;gap:18px;margin-top:18px;padding:0 20px;font-size:11px;transition:border-color .22s,background .22s,box-shadow .22s,color .22s;display:inline-flex;box-shadow:inset 0 0 24px #e4c97a0d,0 0 20px #bf9e4614}.map-link:hover{color:var(--paper);background:linear-gradient(135deg,#cfb25b4a,#cfb25b1c);border-color:#ebd697f5;box-shadow:inset 0 0 28px #e4c97a14,0 0 25px #bf9e4624}.map-link i{color:var(--gold-pale);font-family:Georgia,serif;font-size:13px;font-style:normal}.map-embed{border-left:1px solid var(--line);background:#0b0c0a;min-height:450px;position:relative;overflow:hidden}.map-embed iframe{filter:grayscale()invert(.92)contrast(.86)brightness(.62)sepia(.12);border:0;width:100%;height:100%;min-height:450px;display:block}.map-overlay-link{z-index:2;color:#efe4c5;min-height:44px;font-family:var(--serif);letter-spacing:.1em;background:linear-gradient(135deg,#cfb25b33,#cfb25b12),#0a0b09f0;border:1px solid #dec67cc2;align-items:center;gap:16px;padding:0 18px;font-size:11px;transition:border-color .22s,background .22s,box-shadow .22s;display:inline-flex;position:absolute;top:14px;left:14px;box-shadow:inset 0 0 24px #e4c97a0d,0 7px 24px #00000075,0 0 20px #bf9e4614}.map-overlay-link:hover{background:linear-gradient(135deg,#cfb25b4a,#cfb25b1c),#0a0b09f0;border-color:#ebd697f5;box-shadow:inset 0 0 28px #e4c97a14,0 8px 28px #00000085,0 0 25px #bf9e4624}.map-overlay-link i{color:var(--gold-pale);font-family:Georgia,serif;font-size:13px;font-style:normal}.payment-area{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:.42fr 1.58fr;align-items:center;gap:clamp(24px,4vw,52px);margin-top:clamp(58px,6vw,82px);padding:28px 0;display:grid}.payment-area .section-kicker{letter-spacing:.3em;margin-bottom:8px;font-size:7px}.payment-area h3{font-family:var(--serif);letter-spacing:.1em;margin:0;font-size:17px;font-weight:400}.payment-area ul{flex-wrap:wrap;justify-content:center;gap:10px 14px;margin:0;padding:0;list-style:none;display:flex}.payment-area li{color:#e9e4d9b8;text-align:center;flex:0 0 calc(16.6667% - 11.6667px);justify-content:center;align-items:center;min-width:0;height:30px;padding:0;display:flex;position:relative;overflow:hidden}.payment-wordmark{font-family:var(--serif);letter-spacing:.08em;font-size:12px}.payment-brand-logo{transform-origin:50%;background-image:url(/payment/airpay-card-brands.png);background-repeat:no-repeat;background-size:558px 264px;flex:none;display:block}.payment-brand-logo--visa{background-image:url(/payment/visa.png);background-position:50%;background-size:contain;width:62px;height:24px;transform:scale(.86)}.payment-brand-logo--mastercard{background-position:-204px -15px;width:66px;height:42px;transform:scale(.56)}.payment-brand-logo--unionpay{background-position:-177px -83px;width:72px;height:50px;transform:scale(.55)}.payment-brand-logo--jcb{background-image:url(/payment/jcb.png);background-position:50%;background-size:contain;width:58px;height:46px;transform:scale(.52)}.payment-brand-logo--amex{background-image:url(/payment/american-express.png);background-position:50%;background-size:contain;width:52px;height:46px;transform:scale(.52)}.payment-brand-logo--diners{background-image:url(/payment/diners-club.png);background-position:50%;background-size:contain;width:68px;height:49px;transform:scale(.48)}.payment-brand-logo--discover{background-image:url(/payment/discover.png);background-position:50%;background-size:contain;width:67px;height:46px;transform:scale(.52)}.payment-brand-logo--id{background-image:url(/payment/id.png);background-position:50%;background-size:contain;width:64px;height:47px;transform:scale(.5)}.payment-brand-logo--quicpay{background-color:#fff;background-image:url(/payment/quicpay.png);background-position:50%;background-size:contain;border-radius:3px;width:70px;height:50px;transform:scale(.46)}.payment-brand-logo--rakutenedy{background-color:#fff;background-position:-517px -84px;border-radius:2px;width:48px;height:45px;transform:scale(.62)}.payment-brand-logo--paypay,.payment-brand-logo--dpay,.payment-brand-logo--aupay,.payment-brand-logo--rakutenpay{background-image:url(/payment/airpay-qr-brands.png);background-size:493px 166px}.payment-brand-logo--dpay{background-image:url(/payment/dbarai-acceptance.png);background-position:50%;background-size:40px 40px;width:108px;height:40px;transform:scale(.55)}.payment-brand-logo--paypay{background-image:url(/payment/paypay.svg);background-position:50%;background-size:contain;width:123px;height:42px;transform:scale(.55)}.payment-brand-logo--aupay{background-position:-367px -5px;width:119px;height:39px;transform:scale(.57)}.payment-brand-logo--rakutenpay{background-position:-2px -60px;width:98px;height:45px;transform:scale(.5)}.payment-brand-logo--transportation{background-image:url(/payment/transportation-ic-symbol.png);background-position:50%;background-size:contain;width:50px;height:25px;transform:scale(.92)}.contact-section{text-align:center;background:radial-gradient(circle,#17170f,#070807 70%);flex-direction:column;justify-content:center;align-items:center;min-height:780px;padding:120px 26px;display:flex;position:relative;overflow:hidden}.contact-moon{aspect-ratio:1;border:1px solid #dbc6851f;border-radius:50%;width:min(64vw,760px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 0 110px #ceb36509,0 0 100px #ceb36509}.contact-section>:not(.contact-moon){z-index:1;position:relative}.contact-lead{color:#e9e4d9bd;font-family:var(--serif);letter-spacing:.08em;margin:34px 0 0;font-size:12px;line-height:2.2}.contact-actions{grid-template-columns:1fr 1fr;gap:14px;width:min(700px,100%);margin-top:46px;display:grid}.contact-actions.is-single{grid-template-columns:1fr;width:min(360px,100%)}.reservation-tools{flex-direction:column;align-items:center;width:min(700px,100%);margin-top:46px;display:flex}.reservation-tools .contact-actions{width:100%;margin-top:0}.contact-actions a,.contact-actions button{color:#efe4c5;height:74px;font-family:var(--serif);letter-spacing:.1em;background:linear-gradient(135deg,#cfb25b33,#cfb25b12);border:1px solid #dec67cc2;flex-direction:column;justify-content:center;align-items:center;font-size:12px;display:flex;box-shadow:inset 0 0 24px #e4c97a0d,0 0 20px #bf9e4614}.contact-actions a{transition:border-color .22s,background .22s,box-shadow .22s,color .22s}.contact-actions a:hover{color:var(--paper);background:linear-gradient(135deg,#cfb25b4a,#cfb25b1c);border-color:#ebd697f5;box-shadow:inset 0 0 28px #e4c97a14,0 0 25px #bf9e4624}.contact-actions span{color:#e7cf8bc7;letter-spacing:.26em;margin-bottom:7px;font-family:Georgia,serif;font-size:8px;display:block}.line-qr-card{background:#bfa65d06;border:1px solid #d5be7733;align-items:center;gap:14px;width:264px;margin-top:22px;padding:10px 14px 10px 10px;display:flex}.line-qr-card img{width:74px;height:74px;image-rendering:pixelated;background:#eee7d6;padding:5px;display:block}.line-qr-card p{color:#e9e4d9b8;font-family:var(--serif);letter-spacing:.08em;text-align:left;margin:0;font-size:10px;line-height:1.7}.line-qr-card p span{color:#d7c48894;letter-spacing:.16em;margin-bottom:4px;font-family:Georgia,serif;font-size:7px;display:block}.contact-social-links{justify-content:center;gap:30px;margin-top:28px;display:flex}.instagram-link{color:#e9e4d9b8;font-family:var(--serif);letter-spacing:.12em;border-bottom:1px solid #d5be776b;align-items:center;gap:16px;padding-bottom:7px;font-size:12px;display:inline-flex}.instagram-link i{color:var(--gold-pale);font-family:Georgia,serif;font-size:14px;font-style:normal}.site-footer{background:#060706;border-top:1px solid #d3be7e1f;padding:54px max(26px,50vw - 580px) 30px}.footer-main{grid-template-columns:.8fr 1.25fr .95fr;align-items:center;gap:clamp(34px,6vw,86px);display:grid}.footer-brand-group{align-items:center;gap:14px;display:flex}.footer-logo{flex:none;width:230px;height:90px;position:relative;overflow:hidden}.footer-logo img{width:290px;max-width:none;height:290px;display:block;position:absolute;top:-96px;left:-28px}.footer-socials{flex:none;align-items:center;gap:8px;display:flex;transform:translateY(7px)}.footer-social-item{border:1px solid #bfa65d47;border-radius:50%;place-items:center;width:40px;height:40px;display:grid}a.footer-social-item{transition:border-color .18s,background .18s}a.footer-social-item:hover{border-color:var(--gold);background:#bfa65d14}.footer-social-mark{background:var(--gold);width:20px;height:20px;display:block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.footer-social-mark--instagram{-webkit-mask-image:url(/social/instagram.svg);mask-image:url(/social/instagram.svg)}.footer-social-mark--tiktok{-webkit-mask-image:url(/social/tiktok.svg);mask-image:url(/social/tiktok.svg)}.site-footer address{color:#e9e4d9a3;font-family:var(--serif);letter-spacing:.08em;font-size:11px;font-style:normal;line-height:2}.footer-details{gap:12px;display:grid}.footer-details p,.footer-details a,.footer-social-text-row{color:#e9e4d9a8;font-family:var(--serif);letter-spacing:.08em;margin:0;font-size:10px}.footer-details a{transition:color .18s}.footer-details a:hover{color:var(--gold-pale)}.footer-details span{color:#d7c4888f;letter-spacing:.14em;min-width:76px;font-family:Georgia,serif;font-size:8px;display:inline-block}.footer-social-text-row{align-items:center;display:flex}.footer-social-text-links{align-items:center;gap:16px;font-size:11px;display:inline-flex}.footer-bottom{border-top:1px solid #d3be7e1f;justify-content:space-between;align-items:center;margin-top:38px;padding-top:20px;display:flex}.footer-bottom p{color:#e9e4d966;font-family:var(--serif);letter-spacing:.12em;margin:0;font-size:9px}.footer-bottom a{color:#e9e4d994;letter-spacing:.23em;font-family:Georgia,serif;font-size:8px}.footer-bottom a i{width:36px;height:36px;color:var(--gold-pale);border:1px solid #d5be7738;place-items:center;margin-left:14px;font-style:normal;display:inline-grid}a:focus-visible,button:focus-visible{outline:1px solid var(--gold-pale);outline-offset:5px}@keyframes moonlight{0%{opacity:0;transform:translate(-50%)scale(.76)}45%{opacity:1}to{opacity:.9;transform:translate(-50%)scale(1)}}@keyframes logoReveal{0%{opacity:0;filter:brightness(.42);transform:translate(-50%,calc(12px - 50%))scale(.985)}to{opacity:1;filter:brightness();transform:translate(-50%,-50%)scale(1)}}@keyframes logoShine{0%{opacity:0;clip-path:polygon(-28% 0,-13% 0,-29% 100%,-44% 100%)}16%{opacity:0}38%{opacity:.88}82%{opacity:.72}to{opacity:0;clip-path:polygon(129% 0,144% 0,128% 100%,113% 100%)}}@keyframes softReveal{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.site-header{grid-template-columns:1fr auto;height:68px;padding:0 18px 0 23px}.desktop-nav,.header-contact{display:none}.menu-button{display:flex}.header-brand{width:132px;height:48px}.header-logo-frame img{width:150px;height:150px;top:-55px;left:-9px}.hero-content{width:calc(100% - 34px);padding-top:94px;padding-bottom:88px}.hero-orbit{width:110vw;top:20%}.logo-stage{height:clamp(160px,54vw,225px)}.logo-art{width:min(820px,121vw)}.hero-copy{margin-top:-4px}.hero-copy p{letter-spacing:.11em;line-height:1.6}.hero-renewal{letter-spacing:.05em;white-space:nowrap;font-size:clamp(15px,4.3vw,17px);line-height:1.7}.hero-copy span{letter-spacing:.12em;line-height:1.8}.scroll-cue{bottom:20px;right:22px}.concept-section{grid-template-columns:1fr;gap:74px;min-height:0;padding:118px 7vw 108px}.concept-body{max-width:660px}.concept-visual{order:2;min-height:560px}.concept-moon{width:min(50vw,330px)}.menu-section .section-heading{grid-template-columns:1fr}.menu-section .section-heading .section-kicker{grid-column:1}.menu-section .section-heading>p:last-child{justify-self:start;margin-top:22px}.price-layout{grid-template-columns:1fr}.price-intro{border-right:0;border-bottom:1px solid var(--line);padding-right:0}.price-list{padding-left:0}.first-visit-section{grid-template-columns:1fr;align-items:start}.gallery-heading{margin-left:0}.gallery-grid{grid-template-rows:590px 380px;grid-template-columns:1fr 1fr;min-height:0}.gallery-main{grid-area:1/1/auto/3}.placeholder-art{height:100%}.access-layout{grid-template-columns:1fr}.info-list{padding-right:0}.map-embed{border-top:1px solid var(--line);border-left:0;min-height:430px}.map-embed iframe{min-height:430px}.payment-area{grid-template-columns:1fr;gap:22px}.payment-area li{flex-basis:calc(25% - 10.5px)}.contact-moon{width:min(110vw,720px)}.line-qr-card{display:none}.footer-main{grid-template-columns:1fr 1fr}.footer-brand-group{grid-column:1/-1}}@media (max-width:430px){.hero-content{justify-content:center}.hero-eyebrow{margin-bottom:-2px;font-size:8px}.primary-link{color:#efe4c5;text-align:center;background:linear-gradient(135deg,#cfb25b33,#cfb25b12);border-color:#dec67cc2;justify-content:center;margin-top:30px;padding-left:42px;padding-right:42px;position:relative;box-shadow:inset 0 0 24px #e4c97a0d,0 0 20px #bf9e4614}.primary-link:hover{background:linear-gradient(135deg,#cfb25b4a,#cfb25b1c);border-color:#ebd697f5}.primary-link span{position:absolute;top:50%;right:18px;transform:translateY(-50%)}.hero-interior img{aspect-ratio:4/3;height:auto}.first-visit-section{gap:38px;padding:68px 24px 44px}.first-visit-heading h2{font-size:36px}.first-visit-heading>p:last-child{margin-top:18px;font-size:11px}.first-visit-list{grid-template-columns:1fr}.first-visit-list article{border-top:1px solid #d3be7e1f;border-left:0;grid-template-columns:88px 1fr;align-items:center;min-height:82px;padding:20px 0;display:grid}.first-visit-list article:first-child{border-top:0}.first-visit-list h3{margin:0;font-size:15px}.section-kicker{margin-bottom:22px;font-size:8px}.section-heading h2,.contact-section h2{font-size:38px;line-height:1.45}.concept-section{gap:36px;padding:80px 24px 56px}.concept-body h1{font-size:42px}.concept-line{height:54px;margin:24px 0 22px 4px}.concept-body{width:100%}.concept-copy{letter-spacing:.045em;text-wrap:pretty;width:100%;max-width:none;font-size:12.5px;line-height:2.15}.story-phrase{display:inline-block}.concept-copy-continuation{margin-top:18px}.concept-visual{min-height:260px}.concept-moon{width:57vw;top:5%}.vertical-note{display:none}.menu-section{padding:58px 24px 80px}.gallery-section,.access-section{padding:80px 24px}.price-layout{margin-top:29px}.price-intro{padding:34px 0}.price-intro>p{margin-top:21px;font-size:16px}.price-row{gap:14px;min-height:0;padding:17px 0}.price-row-with-details{padding:18px 0}.price-code{margin-bottom:7px}.price-row h3{font-size:15px}.price-row>strong{font-size:24px}.price-row-extension{padding:20px 0 22px}.price-inclusions li:not(.is-note){text-indent:-1.65em;padding-left:1.65em}.set-drink-separator{display:none}.set-drink-continuation{text-indent:0;display:block}.price-inclusions li.is-note{padding-left:1.65em}.extension-rate-groups{gap:12px;margin-top:14px}.extension-rate-group{grid-template-columns:82px minmax(0,1fr);gap:10px;padding-top:11px}.extension-rate-group h4{letter-spacing:.06em;margin-top:2px;font-size:12px}.extension-rate-group dl{gap:6px}.extension-rate{grid-template-columns:minmax(0,1fr) 96px;gap:8px}.extension-rate dt{letter-spacing:.04em;font-size:12px}.extension-rate dd{font-size:24px}.price-inclusions{color:#e9e4d9c2;letter-spacing:.04em;gap:2px;margin-top:7px;font-size:11px;line-height:1.55}.bottle-keep-note-continuation{padding-left:1em;display:block}.price-caution{color:#e9e4d9c2;letter-spacing:.035em;padding-top:3px;padding-bottom:18px;font-size:10.5px;line-height:1.75}.drink-list{margin-top:58px}.drink-row{grid-template-columns:36px 1fr;min-height:94px}.drink-row h3{font-size:21px}.drink-row small{display:none}.drink-row:hover{padding-left:0;padding-right:0}.gallery-grid{grid-template-rows:repeat(3,auto);grid-template-columns:1fr;gap:12px}.gallery-main{grid-area:1/1}.gallery-sub-a{grid-row:2}.gallery-sub-b{grid-row:3}.gallery-frame{aspect-ratio:4/3}.gallery-photo{object-position:center;min-height:0}.placeholder-art{height:100%;min-height:0}.access-heading{text-align:left}#access-heading{letter-spacing:.04em;white-space:nowrap;font-size:clamp(26px,8.4vw,34px)}.access-layout{margin-top:45px}.info-row{grid-template-columns:80px 1fr;min-height:96px}.info-row-address{min-height:150px}.info-row>span{font-size:7px}.info-row h3{font-size:16px}.info-row p{font-size:11px}.info-row:first-child .info-value{font-size:16px}.map-link{min-height:42px;margin-top:14px;padding:0 14px}.map-embed,.map-embed iframe{min-height:350px}.payment-area{gap:17px;margin-top:48px;padding:22px 0}.payment-area ul{gap:8px 10px}.payment-area li{flex-basis:calc(33.3333% - 6.66667px);height:28px}.payment-area h3{font-size:16px}.contact-section{min-height:480px;padding:64px 24px}#contact-heading{letter-spacing:.04em;white-space:nowrap;font-size:clamp(26px,8.2vw,34px)}.contact-lead{letter-spacing:.03em;white-space:nowrap;margin-top:28px;font-size:clamp(8px,2.45vw,10.5px)}.reservation-tools{margin-top:31px}.contact-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:0}.contact-actions a,.contact-actions button{letter-spacing:.08em;height:62px;padding:0 8px;font-size:11px}.contact-actions span{letter-spacing:.22em;margin-bottom:6px;font-size:7px}.contact-moon{width:150vw}.site-footer{padding:38px 24px 24px}.footer-main{grid-template-columns:1fr;gap:26px}.footer-brand-group{grid-column:auto}.footer-logo{width:210px;height:78px}.footer-logo img{width:252px;height:252px;top:-83px;left:-20px}.footer-socials{transform:translateY(9px)}.footer-social-item{width:36px;height:36px}.footer-social-mark{width:19px;height:19px}.site-footer address{font-size:10px}.footer-bottom{margin-top:30px}.footer-bottom a{font-size:0}.footer-bottom a i{margin-left:0;font-size:12px}}@media (min-width:901px){.mobile-menu{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-delay:0s!important}.hero-orbit,.logo-art,.hero-eyebrow,.hero-copy p,.hero-renewal,.hero-copy span,.primary-link{opacity:1}.logo-shine{display:none}}
