:root{--paper:#f7f6f0;--ink:#30362c;--quiet:#747d6a;--line:#cecec2;--serif:"Noto Serif CJK JP","Yu Mincho","Hiragino Mincho ProN",serif;--sans:"Noto Sans CJK JP","Hiragino Kaku Gothic ProN",sans-serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}img{display:block;width:100%;height:100%;max-width:100%}a:focus-visible,button:focus-visible{outline:2px solid #9c956b;outline-offset:6px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--paper);color:var(--ink);padding:12px;z-index:20}.skip-link:focus{top:12px}.a-hero{height:auto;aspect-ratio:1165/758;min-height:720px;max-height:950px;position:relative;isolation:isolate;color:#fffdf2}.slideshow,.slide,.a-shade{position:absolute;inset:0}.slideshow{z-index:-3;overflow:hidden;background:#a5a394}.slide{opacity:0;transition:opacity 2s ease-in-out}.slide.is-current{opacity:1}.slide img{object-fit:cover;object-position:center}.a-shade{z-index:-2;background:linear-gradient(90deg,rgba(24,35,17,.46),rgba(24,35,17,.18) 50%,transparent 100%),linear-gradient(0deg,rgba(18,27,13,.4),transparent 72%)}.a-header{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:28px 4% 0 5.2%}.brand{display:flex;flex-direction:column;width:max-content;font-weight:400;background:transparent}.brand i{font-family:var(--sans);font-style:normal;font-size:12px;letter-spacing:.28em;line-height:1.7;margin-bottom:3px}.brand strong{font-size:38px;letter-spacing:.16em;font-weight:400;line-height:1.35}.brand small{font-family:Georgia,serif;font-size:10px;letter-spacing:.16em;margin-top:5px;line-height:1.8}.desktop-nav{position:absolute;left:50%;transform:translateX(-43%);display:flex;gap:28px;align-items:center;font-size:15px;white-space:nowrap}.desktop-nav a,.desktop-nav button{padding:5px 0;border-bottom:1px solid transparent}.desktop-nav a:hover,.desktop-nav button:hover{border-bottom-color:currentColor}.a-menu{border:1px solid rgba(255,255,245,.58);border-radius:28px;padding:13px 19px;font-family:var(--sans);font-size:12px;line-height:16px;letter-spacing:.12em;display:flex;align-items:center;gap:11px}.a-menu span{font-size:13px}.a-menu:hover{background:rgba(255,255,255,.12)}.a-copy{position:absolute;top:38%;left:8.5%;width:max-content;max-width:83%}.eyebrow{font-family:var(--sans);font-size:10px;letter-spacing:.2em;line-height:1.8;margin:0 0 24px}.a-copy h1{font-size:52px;font-weight:400;line-height:1.65;letter-spacing:.19em;margin:0;text-shadow:0 1px 8px rgba(0,0,0,.05)}.description{font-size:17px;letter-spacing:.11em;line-height:2.1;margin:26px 0 0}.a-bottom{position:absolute;left:8.5%;right:5.2%;bottom:68px;display:flex;align-items:flex-end;justify-content:space-between}.fine-button{font-size:16px;letter-spacing:.1em;border:1px solid currentColor;min-width:220px;min-height:56px;padding:12px 25px;transition:background .2s,color .2s}.fine-button:hover{background:var(--paper);color:var(--ink)}.slide-controls{display:flex;align-items:center;gap:16px;height:30px}.fraction{font-family:Georgia,serif;font-size:14px;letter-spacing:.06em;white-space:nowrap}.fraction b{font-size:18px;font-weight:400}.dots{display:flex;gap:4px}.dot{width:24px;height:30px;display:grid;place-items:center}.dot:before{content:"";width:6px;height:6px;border:1px solid currentColor;border-radius:50%}.dot.is-current:before{background:currentColor}.separator{height:29px;width:1px;background:currentColor;opacity:.8;margin-left:-3px}.pause-button{width:24px;height:30px;margin-left:-12px;padding:5px}.pause-button svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6}.pause-button .play-icon{display:none;fill:currentColor;stroke:none}.pause-button[aria-pressed=true] .pause-icon{display:none}.pause-button[aria-pressed=true] .play-icon{display:block}.photo-note{position:absolute;right:4%;bottom:19px;font-family:var(--sans);font-size:10px;line-height:1.8;letter-spacing:0;padding:3px 7px;margin:0;background:rgba(25,34,17,.44);max-width:85%}.a-intro{height:122px;padding:20px 7.3% 20px 8.5%;display:flex;align-items:center;gap:50px}.intro-english{font-family:Georgia,serif;font-size:11px;line-height:1.7;letter-spacing:.09em;color:var(--quiet);margin:0;width:154px;flex:none}.intro-copy{font-size:20px;letter-spacing:.1em;line-height:1.8;margin:0}.intro-link{margin-left:auto;font-size:13px;letter-spacing:.1em;border-bottom:1px solid #92998a;padding:0 0 9px;white-space:nowrap}.proposal-footer{height:47px;border-top:1px solid var(--line);padding:12px 2.8% 12px 4%;display:flex;align-items:center;justify-content:space-between;gap:12px;font:10px/1.8 var(--sans);color:#757b6e}.proposal-footer p{margin:0}.proposal-footer span{font-size:8px;letter-spacing:.07em;margin-right:8px}.proposal-footer button{border-bottom:1px solid #9ca293;font-size:10px;white-space:nowrap}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:48px 40px 30px;width:min(600px,calc(100% - 32px));max-height:85svh}dialog::backdrop{background:rgba(23,30,18,.6);backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:15px;top:7px;font-size:30px;line-height:1.4;padding:0 8px}.dialog-kicker{font:11px var(--sans);letter-spacing:.17em;color:var(--quiet);margin:0 0 14px}dialog h2{font-size:24px;font-weight:400;line-height:1.7;margin:0 0 18px}dialog p,dialog dl{font-size:15px;line-height:2}dialog small{display:block;font:12px/1.9 var(--sans);color:var(--quiet)}dialog dt{font-weight:600;margin-top:16px}dialog dd{margin:3px 0 0}.dialog-bottom-close{padding:10px 28px;margin-top:18px;background:var(--ink);color:var(--paper);font-size:14px}#menu-dialog{max-width:480px;padding:60px 35px 30px}#menu-dialog nav{display:flex;flex-direction:column;gap:25px;align-items:flex-start;margin-bottom:38px;font-size:22px}#menu-dialog button:hover,#menu-dialog a:hover{color:#7c876d}.noscript{padding:20px;font-size:14px}
@media(min-width:761px) and (max-width:1000px){.desktop-nav{gap:16px;font-size:14px;left:49%;transform:translateX(-40%)}.a-copy{top:36%}.a-menu{padding:12px 15px}.a-intro{gap:30px}.intro-english{width:130px}.intro-copy{font-size:18px}}
@media(max-width:760px){
.a-hero{height:auto;aspect-ratio:auto;max-height:none;min-height:0;display:flex;flex-direction:column;align-items:stretch;background:var(--paper);color:var(--ink)}
.a-header{order:1;position:relative;padding:22px 6% 20px;min-height:128px;background:var(--paper)}
.brand i{color:var(--quiet);font-size:12px}.brand strong{font-size:34px}.brand small{font-size:10px;margin-top:3px}
.desktop-nav{display:none}.a-menu{color:var(--ink);border-color:var(--line);font-size:12px;padding:13px 16px}
.a-hero>.slideshow{order:2;position:relative;inset:auto;width:100%;height:auto;aspect-ratio:1672/941;flex:none;z-index:auto}
.a-hero .slide img{object-fit:contain;object-position:center}.a-shade{display:none}
.a-hero .photo-note{order:3;position:static;display:block;align-self:flex-start;margin:12px 8% 0;padding:0;max-width:84%;background:none;color:#68725d;font-size:11px}
.a-copy{order:4;position:static;top:auto;left:auto;right:auto;padding:28px 8% 0;color:var(--ink);width:100%;max-width:none}
.a-copy .eyebrow{color:var(--quiet);font-size:10px;letter-spacing:.08em;margin:0 0 25px}.a-copy h1{font-size:38px;line-height:1.8;letter-spacing:.13em;text-shadow:none}.description{font-size:15px;line-height:2.1;letter-spacing:.09em;margin-top:24px}
.a-bottom{order:5;position:static;left:auto;right:auto;bottom:auto;display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding:24px 8% 30px;color:var(--ink)}
.a-bottom .fine-button{font-size:14px;min-width:210px;min-height:51px;margin-top:0}.a-bottom .fine-button:hover{background:var(--ink);color:var(--paper)}
.a-intro{height:auto;min-height:174px;padding:30px 8%;display:grid;grid-template-columns:1fr auto;gap:24px 15px}.intro-english{font-size:11px;grid-column:1/3;width:auto}.intro-copy{font-size:15px;line-height:1.9;letter-spacing:.08em}.intro-link{font-size:13px;padding-bottom:8px;margin-left:0}
.proposal-footer{height:auto;min-height:90px;padding:16px 6%;display:block;font-size:10px}.proposal-footer span{font-size:8px}.proposal-footer button{margin-top:8px}dialog{padding:43px 25px 25px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Full-page sections. Existing A hero remains unchanged. */
.page-section{padding:104px max(7.3%,calc((100% - 1160px)/2));scroll-margin-top:30px}.section-heading{text-align:center;margin:0 auto 64px}.section-number{display:flex;justify-content:center;align-items:center;gap:16px;font:italic 14px/1.5 Georgia,serif;letter-spacing:.05em;color:#6b755c;margin:0 0 22px}.section-number span{font:10px/1.8 var(--sans);letter-spacing:.2em;border-left:1px solid #aeb4a2;padding-left:16px}.section-heading h2{font-size:14px;font-weight:400;letter-spacing:.15em;margin:0 0 22px}.section-lead{font-size:34px;line-height:1.8;letter-spacing:.13em;margin:0}.story-row{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;max-width:747.45px;margin:0 auto 34px}.story-row-reverse{grid-template-columns:1fr 1fr;margin-bottom:30px}.story-image{margin:0;min-width:0}.story-image img{width:100%;height:auto;aspect-ratio:1672/941;object-fit:cover}.story-image figcaption{font:10px/1.7 var(--sans);letter-spacing:.06em;color:#737c68;margin:9px 0 0}.small-label{font:10px/1.8 var(--sans);letter-spacing:.16em;color:#6c775e;margin:0 0 17px}.story-copy h3{font-size:23.6px;font-weight:700;letter-spacing:.06em;line-height:37.76px;margin:0 0 12px}.story-copy>p:not(.small-label){font-size:17.6px;line-height:33.44px;letter-spacing:.02em;margin:0 0 16px}.section-note{font:11px/1.9 var(--sans);color:#69735e;margin:0;text-align:center}.about-section{border-top:1px solid #dddfd3}.cuisine-section{background:#eeeee5;text-align:center}.cuisine-section .section-heading{margin-bottom:28px}.section-intro{font-size:15px;line-height:2;letter-spacing:.08em;margin:0 0 50px}.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px;text-align:left}.menu-card{min-width:0;background:#f7f6f0}.menu-photo{aspect-ratio:3/2;overflow:hidden}.menu-photo img{object-fit:contain;width:100%;height:100%;background:#e1e0d5}.menu-copy{padding:22px 24px 24px;border:1px solid #d9dcce;border-top:0}.menu-type{font:10px/1.7 var(--sans);letter-spacing:.18em;color:#748060;margin:0 0 7px}.menu-copy h3{font-size:19px;line-height:1.5;font-weight:500;letter-spacing:.06em;margin:0 0 12px}.menu-copy>p:last-child{font-size:13px;line-height:1.85;letter-spacing:.03em;color:#5c6654;margin:0}.menu-caption{display:flex;gap:18px;align-items:flex-start;text-align:left;margin:28px 0 38px}.sample-label{flex:none;display:inline-block;border:1px solid #aab39b;color:#5e6a51;font:10px/1.6 var(--sans);letter-spacing:.05em;padding:4px 9px}.menu-caption p{font:11px/1.9 var(--sans);color:#626d56;margin:0}.outline-link{display:inline-flex;justify-content:center;align-items:center;min-height:52px;min-width:218px;padding:12px 26px;border:1px solid #7d896c;font-size:14px;letter-spacing:.06em;transition:background .2s,color .2s}.outline-link:hover{background:#30362c;color:#f7f6f0}.access-section .section-heading{margin-bottom:68px}.access-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:stretch}.access-brand{margin-bottom:24px}.access-brand strong{font-size:34px}.store-facts{margin:0}.store-facts>div{display:grid;grid-template-columns:48% 52%;gap:0;padding:17px 0;border-bottom:1px solid #d4d8c9;font-size:13px;line-height:1.9}.store-facts dt{font-weight:400}.store-facts dd{margin:0;color:#727c65;font-family:var(--sans);font-size:12px}.access-preview{background:#efefe7;border:1px solid #d6dccb;padding:42px 36px;display:flex;flex-direction:column;justify-content:center}.access-preview h3{font-size:23px;font-weight:400;line-height:1.8;letter-spacing:.06em;margin:0 0 18px}.access-preview>p:not(.small-label){font-size:14px;line-height:2;margin:0 0 25px;color:#636e56}.access-note{border-top:1px solid #cbd2bf;padding-top:22px}.access-note p{font:11px/1.9 var(--sans);color:#647057;margin:12px 0 0}.reservation-strip{border-top:1px solid #d0d6c5;margin-top:64px;padding-top:36px;display:flex;justify-content:space-between;align-items:center;gap:24px}.reservation-strip .small-label{margin-bottom:6px}.reservation-strip h3{font-size:21px;font-weight:400;letter-spacing:.1em;margin:0 0 9px}.reservation-strip div>p:last-child{font-size:13px;color:#69765a;line-height:1.8;margin:0}.site-footer{background:#e9ecdf;padding:48px 7.3%;display:grid;grid-template-columns:auto 1fr;gap:24px 40px;align-items:center}.site-footer>.brand{grid-row:1/3}.site-footer>.brand strong{font-size:31px}.site-footer>p{font-size:15px;letter-spacing:.15em;margin:0;text-align:right}.site-footer nav{display:flex;gap:26px;justify-content:flex-end;font-size:12px}.site-footer nav a{padding:5px 0;border-bottom:1px solid transparent}.site-footer nav a:hover{border-bottom-color:currentColor}.back-top{grid-column:1/3;justify-self:end;font:11px/1.8 var(--sans);border-bottom:1px solid #9ca88b;padding-bottom:4px}.proposal-footer{height:auto;min-height:47px}.desktop-nav{gap:24px}.intro-link{display:block}
@media(min-width:761px) and (max-width:1000px){.page-section{padding:80px 6%}.story-row{gap:6%}.story-copy h3{font-size:23px}.story-copy>p:not(.small-label){font-size:14px}.pc-break{display:none}.menu-grid{gap:25px 18px}.menu-copy{padding:18px}.menu-copy h3{font-size:17px}.access-layout{gap:6%}.access-preview{padding:30px 24px}.desktop-nav{gap:18px}}
@media(max-width:760px){.page-section{padding:68px 6%;scroll-margin-top:18px}.section-heading{margin-bottom:38px}.section-number{font-size:13px;margin-bottom:16px}.section-number span{font-size:9px}.section-heading h2{font-size:13px;margin-bottom:18px}.section-lead{font-size:27px;line-height:1.8;letter-spacing:.09em}.story-row,.story-row-reverse{display:flex;flex-direction:column;gap:25px;margin-bottom:46px;align-items:stretch}.story-row-reverse .story-image{order:0}.story-row-reverse .story-copy{order:1}.story-image img{aspect-ratio:3/2}.story-image figcaption{font-size:9px}.story-copy{padding:0 4%}.small-label{font-size:10px;margin-bottom:13px}.story-copy h3{font-size:23px;line-height:1.85;margin-bottom:18px}.story-copy>p:not(.small-label){font-size:14px;line-height:2.15;margin-bottom:16px}.pc-break{display:none}.section-note{font-size:10px;line-height:1.9;text-align:left;margin:0 4%}.cuisine-section .section-heading{margin-bottom:23px}.section-intro{font-size:13px;line-height:2;margin-bottom:32px}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}.menu-card{display:grid;grid-template-rows:3fr 2fr;aspect-ratio:1/1.12}.menu-photo{aspect-ratio:auto;min-height:0}.menu-photo img{object-fit:contain}.menu-copy{min-height:0;padding:9px 10px 10px;display:flex;flex-direction:column;justify-content:center}.menu-type{font-size:9px;margin:0 0 3px}.menu-copy h3{font-size:14px;line-height:1.55;letter-spacing:.015em;margin:0}.menu-copy>p:last-child{display:none}.menu-caption{display:block;margin:24px 0 28px}.menu-caption .sample-label{font-size:9px;margin-bottom:9px}.menu-caption p{font-size:10px;line-height:1.9}.outline-link{font-size:13px;min-width:208px;min-height:50px}.access-section .section-heading{margin-bottom:36px}.access-layout{grid-template-columns:1fr;gap:30px}.access-brand{margin:0 0 20px}.access-brand strong{font-size:32px}.store-facts>div{grid-template-columns:53% 47%;font-size:12px;padding:14px 0}.store-facts dd{font-size:11px}.access-preview{padding:30px 24px}.access-preview h3{font-size:22px}.access-preview>p:not(.small-label){font-size:13px}.access-note p{font-size:10px}.reservation-strip{margin-top:35px;padding-top:28px;display:block}.reservation-strip .outline-link{margin-top:21px}.reservation-strip h3{font-size:20px}.reservation-strip div>p:last-child{font-size:12px}.site-footer{padding:37px 7%;grid-template-columns:1fr;gap:23px}.site-footer>.brand{grid-row:auto}.site-footer>p{text-align:left;font-size:14px}.site-footer nav{justify-content:flex-start;gap:15px 22px;flex-wrap:wrap;font-size:11px}.back-top{grid-column:auto;justify-self:start;margin-top:5px}}
@media(max-width:359px){.menu-copy h3{font-size:12px}.menu-copy{padding:7px}.section-lead{font-size:25px}.a-copy h1{font-size:38px}.story-copy h3{font-size:21px}}
