:root{color-scheme:light;--cream:#fff6e5;--paper:#fffdf7;--ink:#1f1a17;--muted:#6b5c4d;--red:#c62828;--red-dark:#9c1c1c;--gold:#f4a210;--line:#e6d6bb;color:var(--ink);background:var(--cream);font-family:Yu Gothic,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;font-size:18px;font-weight:500;line-height:1.7}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}img{max-width:100%;height:auto;display:block}h1,h2,h3,p,figure,ul,ol{margin:0}h1,h2,h3{letter-spacing:.01em;font-weight:900;line-height:1.3}h2{font-size:clamp(30px,4vw,44px)}h3{font-size:22px}small,.muted{color:var(--muted);font-size:14px;line-height:1.6}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--red);outline-offset:4px}.sr-only,.skip:not(:focus){clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.skip:focus{z-index:60;background:#fff;padding:12px;position:fixed}.wrap{width:min(1120px,100% - 64px);margin-inline:auto}.section{padding-block:72px}.sample-note{text-align:center;background:var(--ink);color:#f5ede0;padding:6px 16px;font-size:12px}.label{letter-spacing:.08em;color:var(--red);margin-bottom:10px;font-size:15px;font-weight:900;display:inline-block}.header{z-index:40;background:var(--red);color:#fff;justify-content:space-between;align-items:center;gap:20px;padding:12px 4%;display:flex;position:sticky;top:0}.brand{letter-spacing:.06em;white-space:nowrap;align-items:baseline;gap:8px;font-size:30px;font-weight:900;text-decoration:none;display:flex}.brand small{color:#ffe2a8;font-size:14px;font-weight:700}.header nav{gap:22px;font-size:15px;font-weight:700;display:flex}.header nav a{align-items:center;min-height:44px;padding:8px 0;text-decoration:none;display:inline-flex}.header nav a:hover{text-decoration:underline}.header .cta{background:var(--gold);color:#3a2503;white-space:nowrap;border-radius:999px;align-items:center;min-height:44px;padding:11px 20px;font-weight:900;text-decoration:none;display:inline-flex}.header .cta:hover{background:#ffb937}.hero{background:var(--ink);align-items:end;min-height:min(78vh,620px);display:grid;position:relative;overflow:hidden}.hero-photo{object-fit:cover;object-position:52% 58%;width:100%;height:100%;position:absolute;inset:0}.hero:after{content:"";background:linear-gradient(#140e0ab8 0%,#140e0a47 42%,#140e0adb 100%);position:absolute;inset:0}.hero-inner{z-index:1;color:#fff;width:100%;padding:40px max(32px,50vw - 560px) 44px;position:relative}.hero .label{color:#ffd37a}.hero h1{text-shadow:0 2px 14px #0000008c;font-size:clamp(36px,6.4vw,70px);line-height:1.18}.hero-badge{background:var(--gold);color:#3a2503;border-radius:999px;flex-wrap:wrap;align-items:baseline;gap:0 10px;margin-top:16px;padding:8px 18px;font-size:clamp(15px,1.7vw,18px);font-weight:900;line-height:1.5;display:inline-flex}.hero-badge em{font-size:clamp(19px,2.2vw,24px);font-style:normal}.hero-lead{text-shadow:0 1px 10px #0009;max-width:38em;margin-top:18px;font-size:clamp(16px,2vw,19px);font-weight:700}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:26px;display:flex}.btn{border:3px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:14px;min-height:52px;padding:13px 26px;font-size:17px;font-weight:900;text-decoration:none;display:inline-flex}.btn-gold{background:var(--gold);color:#3a2503}.btn-gold:hover{background:#ffb937}.btn-ghost{color:#fff;border-color:#fff}.btn-ghost:hover{background:#ffffff29}.btn-red{background:var(--red);color:#fff}.btn-red:hover{background:var(--red-dark)}.btn-line{color:#0b3a1e;background:#06c755;gap:10px}.btn-line:hover{background:#05b34c}.line-icon{object-fit:contain;flex-shrink:0;width:30px;height:30px}.ticker{background:var(--gold);color:#3a2503;border-block:4px solid var(--ink);overflow:hidden}.ticker-track{gap:0;width:max-content;animation:26s linear infinite slide;display:flex}.ticker-track span{white-space:nowrap;padding:11px 26px;font-size:17px;font-weight:900}@keyframes slide{0%{transform:translate(0)}to{transform:translate(-50%)}}.hours-strip{background:var(--ink);color:#fff8ea;flex-wrap:wrap;justify-content:center;gap:0;padding:16px 20px;display:flex}.hours-strip>*{border-right:1px solid #4a3d33;padding:2px 22px;font-size:14px;font-weight:700}.hours-strip>:last-child{border:0}.hours-strip strong{color:var(--gold);margin-left:6px;font-size:22px;font-weight:900}.hours-strip a{color:#ffd37a;align-items:center;min-height:44px;display:inline-flex}.menu{background:var(--paper)}.menu-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:28px;display:flex}.menu-head p{font-size:16px;font-weight:700}.dish-grid{grid-template-columns:repeat(3,1fr);gap:26px;display:grid}.dish{border:3px solid var(--ink);background:#fff;border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.dish.wide{flex-direction:row;grid-column:span 3;align-items:stretch}.dish.wide img{aspect-ratio:auto;width:46%}.dish img{aspect-ratio:3/2;object-fit:cover;width:100%}.dish-body{flex-direction:column;flex:1;gap:10px;padding:20px;display:flex}.dish.wide .dish-body{justify-content:center;padding:28px}.dish h3{font-size:23px}.dish.wide h3{font-size:clamp(26px,3vw,36px)}.dish p{font-size:15px;line-height:1.65}.price{border-top:3px dotted var(--line);flex-wrap:wrap;align-items:baseline;gap:8px;margin-top:auto;padding-top:12px;display:flex}.price b{color:var(--red);font-size:30px;font-weight:900;line-height:1.1}.dish.wide .price b{font-size:40px}.price span{color:var(--muted);font-size:13px}.tag{background:var(--gold);color:#3a2503;border-radius:999px;align-self:flex-start;padding:4px 12px;font-size:13px;font-weight:900}.refill{background:var(--red);color:#fff;text-align:center}.refill h2{font-size:clamp(28px,4.4vw,46px)}.refill h2 em{color:var(--gold);font-style:normal}.refill p{margin-top:18px;font-size:17px;font-weight:700}.refill ul{flex-wrap:wrap;justify-content:center;gap:12px;max-width:760px;margin:28px auto 0;padding:0;list-style:none;display:flex}.refill li{background:#ffffff24;border:2px solid #ffffff80;border-radius:999px;padding:9px 20px;font-size:15px;font-weight:900}.space{background:var(--paper);border-block:4px solid var(--ink);grid-template-columns:56% 44%;display:grid}.space img{object-fit:cover;aspect-ratio:3/2;width:100%;height:100%}.space>div{align-self:center;padding:44px}.space h2{margin-bottom:18px}.space p+p{margin-top:16px}.access{background:var(--cream)}.access-grid{grid-template-columns:1fr 1fr;align-items:start;gap:44px;margin-top:24px;display:grid}.info{margin:0}.info>div{border-top:2px solid var(--line);grid-template-columns:104px 1fr;gap:18px;padding:15px 0;font-size:16px;display:grid}.info>div:last-child{border-bottom:2px solid var(--line)}dt{color:var(--red);font-weight:900}dd{margin:0}dd small{display:block}.map svg{border:3px solid var(--ink);border-radius:12px;width:100%;height:auto;display:block}.map figcaption{text-align:right;color:var(--muted);margin-top:10px;font-size:14px}.faq{background:var(--paper)}.faq h2{margin-bottom:24px}.faq details{border:3px solid var(--ink);background:#fff;border-radius:12px;margin-bottom:14px}.faq summary{cursor:pointer;padding:18px 52px 18px 20px;font-size:17px;font-weight:900;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--red);font-size:28px;line-height:1;position:absolute;top:14px;right:20px}.faq details[open] summary:after{content:"-"}.faq details p{max-width:860px;padding:0 20px 20px;font-size:16px}.reservation{background:var(--ink);color:#fff8ea;text-align:center}.reservation h2 em{color:var(--gold);font-style:normal}.reservation p{margin-top:16px;font-weight:700}.contact-actions{flex-wrap:wrap;justify-content:center;gap:16px;margin:28px 0 0;display:flex}.reservation .muted{color:#c9b9a4;margin-top:22px;font-weight:500}footer{background:var(--red-dark);color:#ffeed4;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:36px 5%;display:flex}footer p{font-size:14px}footer a:not(.brand){align-items:center;min-height:44px;margin:4px 20px 0 0;font-size:14px;display:inline-flex}dialog{border:4px solid var(--ink);background:var(--paper);color:var(--ink);border-radius:14px;max-width:min(520px,100% - 40px);padding:0}dialog::backdrop{background:#1f1a179e}.dialog-inner{padding:32px}.dialog-inner h2{margin-bottom:14px;font-size:26px}.dialog-inner p{margin-bottom:22px}.dialog-inner form{text-align:right}@media (width<=1050px){.header nav{gap:16px}.dish-grid{gap:20px}.space>div{padding:32px}}@media (width<=899px){.wrap{width:calc(100% - 40px)}.header{flex-wrap:wrap;gap:10px;padding:12px 20px}.header nav{border-top:1px solid #ffffff4d;flex-wrap:wrap;order:3;justify-content:center;gap:0 18px;width:100%;padding-top:6px}.brand{font-size:26px}.hero{min-height:0}.hero-inner{padding:150px 20px 36px}.dish-grid{grid-template-columns:1fr 1fr}.dish.wide{flex-direction:column;grid-column:span 2}.dish.wide img{aspect-ratio:3/2;width:100%}.dish.wide .dish-body{padding:20px}.dish.wide h3{font-size:26px}.dish.wide .price b{font-size:32px}.space{grid-template-columns:1fr}.space>div{padding:32px 20px}.access-grid{grid-template-columns:1fr;gap:30px}.map{max-width:520px;margin-inline:auto}.section{padding-block:52px}footer{flex-direction:column;align-items:flex-start}}@media (width<=599px){:root{font-size:16px}.header .cta{padding:10px 16px;font-size:15px}.header nav{font-size:14px}.hero-inner{padding:110px 16px 28px}.hours-strip{text-align:center;grid-template-columns:1fr 1fr;gap:10px;padding:14px 18px;display:grid}.hours-strip>*{border:0;padding:0}.hours-strip strong{margin:0;font-size:19px;display:block}.dish-grid{grid-template-columns:1fr}.dish.wide{grid-column:span 1}.menu-head{display:block}.menu-head p{margin-top:12px}.info>div{grid-template-columns:82px 1fr;gap:12px;font-size:15px}.ticker-track span{padding:10px 18px;font-size:15px}.btn{width:100%}.hero-actions{gap:10px}.dialog-inner{padding:24px}}@media (width<=350px){.wrap{width:calc(100% - 32px)}.hero-inner{padding-inline:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.ticker-track{flex-wrap:wrap;justify-content:center;width:auto}}
