:root{color-scheme:dark;--bg:#070707;--bg-soft:#101010;--bg-panel:#171717;--text:#f7f7f4;--muted:#c9c9c2;--subtle:#8a8a84;--line:#f7f7f424;--accent:#fff;--accent-soft:#e9e9e3;--shadow:0 22px 70px #00000059;--radius:8px;--header-height:72px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{color:var(--text);text-rendering:optimizelegibility;background:radial-gradient(circle at 100% 0,#ffffff14,#0000 28rem),linear-gradient(#050505 0%,#111 45%,#050505 100%);margin:0;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,YuGothic,Meiryo,system-ui,sans-serif;line-height:1.75}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.section-inner{width:min(1120px,100% - 32px);margin:0 auto}.site-header-shell{z-index:20;position:sticky;top:0}.site-header{min-height:var(--header-height);border-bottom:1px solid var(--line);backdrop-filter:blur(18px);background:#070707d6;justify-content:space-between;align-items:center;padding:10px 20px;display:flex;position:relative}.brand{grid-template-columns:44px auto;align-items:center;gap:10px;min-width:max-content;display:grid}.brand__mark{object-fit:contain;opacity:1;filter:drop-shadow(0 0 4px #ffffff0a);background:0 0;border:none;border-radius:0;width:44px;height:44px}.brand__name{letter-spacing:0;white-space:nowrap;font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;font-size:1.36rem;font-weight:700;line-height:1}.nav-menu{position:relative}.nav-menu__toggle{clip:rect(0 0 0 0);block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.nav-menu__button{display:none}.site-nav{color:var(--text);scrollbar-width:none;gap:clamp(12px,2vw,28px);padding-left:16px;font-size:.96rem;font-weight:700;display:flex;position:absolute;top:50%;right:20px;overflow-x:auto;transform:translateY(-50%)}.site-nav::-webkit-scrollbar{display:none}.site-nav a{white-space:nowrap;align-content:center;gap:2px;min-height:50px;display:inline-grid}.site-nav small{color:var(--subtle);justify-self:center;margin-left:0;font-size:.64rem;font-weight:700;display:block}.site-nav small:before{content:none}.hero[id],.section-heading[id]{scroll-margin-top:calc(var(--header-height) + 18px)}.hero{min-height:calc(100svh - var(--header-height));border-bottom:1px solid var(--line);align-items:center;display:grid;position:relative;overflow:hidden}.hero__image,.hero__overlay{position:absolute;inset:0}.hero__image{object-fit:cover;object-position:58% center;filter:saturate(.76)contrast(1.08)brightness(.86);width:100%;height:100%}.hero__overlay{background:linear-gradient(90deg,#070707f0 0%,#07070794 46%,#07070729 100%),linear-gradient(#07070705 42%,#070707e6 100%)}.hero__content{z-index:1;padding:44px 0 52px;position:relative}.hero__mark{opacity:1;filter:drop-shadow(0 8px 28px #000000d1)drop-shadow(0 0 4px #ffffff08);background:0 0;border:none;border-radius:0;width:clamp(86px,16vw,132px);height:auto;margin:0 0 18px}.eyebrow{color:var(--accent-soft);letter-spacing:0;text-transform:uppercase;margin:0 0 14px;font-size:.74rem;font-weight:800}.hero h1{text-shadow:0 4px 34px #000000b8;max-width:560px;margin:0;font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;font-size:clamp(2.55rem,11vw,5.8rem);font-weight:700;line-height:.95}.hero__title-line{white-space:nowrap;display:block}.hero__lead{max-width:34rem;color:var(--muted);margin:18px 0 0;font-size:clamp(1rem,3.7vw,1.2rem)}.hero__actions,.section-actions{flex-wrap:wrap;gap:12px;margin-top:0;display:flex}.hero__bottom{align-items:stretch;margin-top:18px;display:flex}.section-actions{justify-content:center;margin-top:28px}.section-actions--left{justify-content:flex-start}.button{border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);color:#070707;justify-content:center;align-items:center;min-height:42px;padding:10px 18px;font-size:.92rem;font-weight:800;line-height:1.2;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.button:hover{background:var(--accent-soft);border-color:var(--accent-soft);color:#070707}.button--ghost{color:var(--text);background:#f7efe20a}.button--ghost:hover{background:var(--accent-soft);border-color:var(--accent-soft);color:#070707}.hero__info{border:1px solid var(--line);border-radius:var(--radius);width:fit-content;min-height:42px;color:var(--muted);backdrop-filter:blur(14px);white-space:nowrap;background:#101010d1;align-items:center;gap:10px;padding:8px 14px;font-size:.92rem;font-weight:700;display:flex}.hero__hours,.hero__closed{display:inline-block}.sp-only{display:none}.section{border-bottom:1px solid var(--line);padding:72px 0}.section--menu{isolation:isolate;background:linear-gradient(#0707079e,#070707d1),url(/images/site/menu-background.png) 50%/cover fixed;position:relative}.section--menu:before{content:"";z-index:-1;background:linear-gradient(90deg,#070707b8,#0707076b,#070707c2),#0000001f;position:absolute;inset:0}.section-heading{max-width:680px;margin-bottom:28px}.section-heading h2{margin:0;font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;font-size:clamp(2.2rem,5vw,4.5rem);font-weight:600;line-height:1.08}.section-heading p:last-child{color:var(--muted);margin:16px 0 0}.section--about .section-heading{max-width:100%}.about-grid,.access-grid{gap:28px;display:grid}.about-photos{grid-template-columns:1fr .72fr;gap:12px;margin-top:0;display:grid}.about-photos img{aspect-ratio:4/5;object-fit:cover;border:1px solid var(--line);border-radius:var(--radius);filter:saturate(.68)contrast(1.08);width:100%;height:100%;min-height:210px}.about-photos img:first-child{aspect-ratio:4/5}.about-photos img:last-child{margin-top:42px}.shop-facts{border:1px solid var(--line);border-radius:var(--radius);background:var(--line);box-shadow:var(--shadow);gap:1px;margin:0;display:grid;overflow:hidden}.shop-facts div{background:#171717f0;grid-template-columns:7.5rem 1fr;gap:14px;padding:18px;display:grid}.shop-facts dt{color:var(--subtle);font-size:.78rem;font-weight:800}.shop-facts dd{color:var(--text);margin:0;font-weight:700}.shop-facts a{color:var(--accent-soft);text-underline-offset:4px;text-decoration:underline}.section--access{background:#f7efe206}.section--menu .section-heading,.section--photos .section-heading,.section--about .section-heading,.section--access .section-heading{text-align:center;margin-inline:auto}.menu-layout{gap:28px;display:grid}.menu-instagram-note{color:var(--muted);text-align:center;margin:-12px 0 26px;font-size:.92rem;font-weight:700}.menu-instagram-note a{color:var(--text);text-underline-offset:4px;text-decoration:underline}.menu-jump-nav{border-radius:var(--radius);backdrop-filter:blur(8px);background:#f7f7f414;border:1px solid #f7f7f447;gap:14px;margin:0 0 28px;padding:16px;display:grid}.menu-jump-nav:before{content:"各メニューへ移動できます";color:var(--text);font-size:.92rem;font-weight:900}.menu-jump-group{gap:8px;display:grid}.menu-jump-group>span{color:var(--text);text-transform:uppercase;font-size:.78rem;font-weight:900}.menu-jump-group>div{scrollbar-width:none;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.menu-jump-group>div::-webkit-scrollbar{display:none}.menu-jump-group a{min-height:42px;color:var(--text);background:#070707b8;border:1px solid #f7f7f45c;border-radius:999px;flex:none;align-items:center;padding:9px 14px;font-size:.9rem;font-weight:800;line-height:1.2;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff0a}.menu-jump-group a:after{content:"↓";color:var(--muted);margin-left:8px;font-size:.82rem}.menu-jump-group a:hover{background:var(--accent-soft);border-color:var(--accent-soft);color:#070707}.menu-jump-group a:hover:after{color:#070707}.menu-group h3{color:var(--text);text-transform:uppercase;border-bottom:1px solid var(--line);margin:0 0 18px;padding-bottom:10px;font-size:.88rem}.menu-stack{border:1px solid var(--line);border-radius:var(--radius);background:var(--line);gap:0;display:grid;overflow:hidden}.menu-panel{scroll-margin-top:calc(var(--header-height) + 16px);backdrop-filter:blur(8px);background:#181818d1;border:0;border-radius:0;padding:22px}.menu-top-link{z-index:15;border-radius:var(--radius);width:74px;height:64px;box-shadow:var(--shadow);color:var(--text);isolation:isolate;text-align:center;opacity:0;pointer-events:none;background:#070707e6;border:1px solid #f7f7f475;place-items:center;padding:10px 8px;font-size:.68rem;font-weight:700;line-height:1.25;transition:opacity .18s,transform .18s;display:none;position:fixed;bottom:18px;right:18px;transform:translateY(10px)scale(.9)}.menu-top-link:before{z-index:-1;content:"↑";color:#f7f7f42e;place-items:center;font-size:3.4rem;line-height:1;display:grid;position:absolute;inset:0}.menu-top-link span{z-index:1;position:relative}.menu-panel h4{color:var(--text);border-bottom:1px solid #f7f7f438;margin:0 0 18px;padding:0 0 12px;font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;font-size:clamp(1.28rem,4.2vw,1.72rem);font-weight:700;line-height:1.28}.menu-panel h4:before{content:"";vertical-align:.35em;background:var(--text);width:.72em;height:1px;margin-right:.46em;display:inline-block}.menu-panel ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.menu-panel li{border-bottom:1px solid #f7efe214;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:16px;padding-bottom:10px;display:grid}.menu-panel li:last-child{border-bottom:0;padding-bottom:0}.menu-panel li.menu-subheading{color:var(--text);background:#f7f7f414;border-bottom:0;border-radius:4px;margin-top:14px;padding:8px 10px;font-size:.96rem;font-weight:900;line-height:1.2;display:block}.menu-panel li.menu-subheading:first-child{margin-top:0}.menu-panel li.menu-subheading span{letter-spacing:0;align-items:center;gap:8px;display:inline-flex}.menu-panel li.menu-subheading span:before{content:"";background:var(--text);width:18px;height:1px}.menu-panel small{color:var(--subtle);margin-top:2px;font-size:.78rem;display:block}.menu-panel strong{color:var(--text);font-variant-numeric:tabular-nums}.menu-panel em{color:var(--subtle);margin-left:2px;font-size:.72rem;font-style:normal}.menu-note{color:var(--subtle);margin:14px 0 0;font-size:.84rem}.address{color:var(--text);font-style:normal;font-weight:700}.access-list{color:var(--muted);gap:6px;margin:16px 0 0;padding:0;list-style:none;display:grid}.access-list li:before{content:"- ";color:var(--accent-soft)}.map-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-panel);box-shadow:var(--shadow);display:block;overflow:hidden}.map-card img{aspect-ratio:820/540;object-fit:cover;width:100%;height:auto}.site-gallery{column-count:1;column-gap:8px;margin-bottom:20px}.site-gallery img{break-inside:avoid;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-panel);filter:saturate(.7)contrast(1.08);width:100%;height:auto;margin:0 0 6px;transition:filter .28s,transform .36s cubic-bezier(.16,1,.3,1);display:block}.site-footer{color:var(--muted);background:#050505;padding:36px 0}.footer-inner{gap:18px;display:grid}.footer-brand__title{align-items:center;gap:10px;display:flex}.footer-brand__title img{object-fit:contain;width:30px;height:30px}.footer-logo{color:var(--text);margin:0 0 4px;font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;font-size:1.12rem;font-weight:800}.footer-inner p{margin:0}.footer-links{flex-wrap:wrap;gap:10px;display:flex}.footer-link{border:1px solid var(--line);min-height:44px;color:var(--accent-soft);background:#f7f7f40a;border-radius:6px;align-items:center;gap:8px;padding:9px 12px;font-size:.9rem;font-weight:700;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.footer-link__icon{color:var(--text);font-size:1.08rem;line-height:1}.footer-link:hover{border-color:var(--accent-soft);background:var(--accent-soft);color:#070707}.footer-link:hover .footer-link__icon{color:#070707}.copyright{color:var(--subtle);font-size:.8rem}@media (width>=720px){.site-header{padding:10px 32px}.site-nav{right:32px}@media (hover:hover){.site-nav a{transition:color .18s,transform .18s;position:relative}.site-nav a:after{content:"";background:var(--accent-soft);height:1px;transition:right .22s cubic-bezier(.16,1,.3,1),left .22s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;left:50%;right:50%}.site-nav small{transition:color .18s}.site-nav a:hover{color:var(--accent-soft);transform:translateY(-1px)}.site-nav a:hover:after{left:0;right:0}.site-nav a:hover small{color:var(--text)}}.section--about .section-heading p:last-child{white-space:nowrap}.section--about .section-heading,.section--access .section-heading{margin-bottom:46px}@media (hover:hover){.site-gallery img:hover{filter:saturate(.8)contrast(1.08)brightness(.82);transform:scale(1.015)}}.section{padding:104px 0}.about-grid,.access-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);align-items:start}.access-grid{grid-template-columns:max-content minmax(320px,420px);justify-content:center;gap:100px}.about-photos{max-width:520px}.menu-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px}.menu-jump-nav{display:none}.site-gallery{column-count:3;column-gap:10px}.site-gallery img{margin-bottom:10px}.footer-inner{grid-template-columns:1fr auto;align-items:end}.copyright{grid-column:1/-1}}@media (width<=520px){.site-header{z-index:11;flex-direction:row;align-items:center;gap:12px;padding-top:10px;padding-bottom:10px}.brand{grid-template-columns:36px auto;gap:8px}.brand__mark{width:36px;height:36px}.brand__name{font-size:1.08rem}.nav-menu{z-index:1;margin-left:auto}.nav-menu__button{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;z-index:2;background:#101010d1;place-content:center;gap:5px;width:52px;height:52px;list-style:none;display:inline-grid;position:relative}.nav-menu__button span{background:var(--text);width:18px;height:2px;transition:opacity .18s,transform .26s cubic-bezier(.16,1,.3,1);display:block}.site-header-shell:has(.nav-menu__toggle:checked) .nav-menu__button span:first-child{transform:translateY(7px)rotate(45deg)}.site-header-shell:has(.nav-menu__toggle:checked) .nav-menu__button span:nth-child(2){opacity:0}.site-header-shell:has(.nav-menu__toggle:checked) .nav-menu__button span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.site-nav{min-width:0;box-shadow:none;z-index:10;filter:blur(4px);opacity:0;pointer-events:none;transform-origin:100% 0;visibility:hidden;will-change:filter, opacity, transform;background:#070707fa;align-content:center;gap:4px;padding:104px 28px 32px;transition:opacity .36s cubic-bezier(.16,1,.3,1),filter .42s,transform .44s cubic-bezier(.16,1,.3,1),visibility 0s linear .44s;display:grid;position:fixed;inset:0;overflow-y:auto;transform:translateY(-14px)scale(.94)}.nav-menu__toggle:checked~.site-nav{filter:blur();opacity:1;pointer-events:auto;visibility:visible;transition-delay:0s;transform:translateY(0)scale(1)}.site-nav a{border-bottom:1px solid var(--line);opacity:0;border-radius:0;justify-content:space-between;align-items:center;gap:16px;min-height:68px;padding:12px 0;font-size:1.18rem;transition:opacity .36s,transform .46s cubic-bezier(.16,1,.3,1);display:flex;transform:translateY(14px)}.site-nav small{color:var(--subtle);letter-spacing:0;margin-left:0;font-size:.74rem;display:block}.site-nav small:before{content:none}.site-nav a:hover{background:0 0}.nav-menu__toggle:checked~.site-nav a{opacity:1;transform:translateY(0)}.nav-menu__toggle:checked~.site-nav a:first-child{transition-delay:80ms}.nav-menu__toggle:checked~.site-nav a:nth-child(2){transition-delay:.13s}.nav-menu__toggle:checked~.site-nav a:nth-child(3){transition-delay:.18s}.nav-menu__toggle:checked~.site-nav a:nth-child(4){transition-delay:.23s}.menu-top-link.is-visible{opacity:1;pointer-events:auto;display:grid;transform:translateY(0)scale(1)}.shop-facts div{grid-template-columns:6rem minmax(0,1fr);gap:10px;padding:14px}.shop-facts dt,.shop-facts dd{white-space:nowrap}@media (width<=360px){.brand{grid-template-columns:32px auto;gap:6px}.brand__mark{width:32px;height:32px}.brand__name{font-size:.98rem}}@media (prefers-reduced-motion:reduce){.site-nav,.menu-top-link{transition:none}}.shop-facts dd{font-size:clamp(.84rem,3.7vw,1rem)}.about-photos{grid-template-columns:1fr}.about-photos img,.about-photos img:first-child{aspect-ratio:4/3;min-height:0}.about-photos img:last-child{margin-top:0}.hero__actions .button,.section-actions .button{width:100%}.hero__actions{display:grid}.hero__actions .button{width:100%;padding-inline:12px}.hero__info{white-space:normal;text-align:center;justify-content:center;gap:2px;width:100%;font-size:1rem;display:grid}.site-footer{padding:44px 0}.footer-inner{text-align:center;justify-items:center}.footer-brand__title{justify-content:center}.footer-brand__title img{width:36px;height:36px}.footer-logo{font-size:1.42rem}.footer-links{justify-content:center}.sp-only{display:block}}
