:root{--ink:#171714;--red:#8b251e;--gold:#b89355;--paper:#faf9f6;--muted:#6e6a62}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-size:16px;line-height:1.8;overflow-x:hidden}body.admin-bar .site-header{top:32px}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #d7ad61;outline-offset:4px}img{display:block;max-width:100%;height:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{clip:auto!important;width:auto;height:auto;top:10px;left:10px;padding:12px;background:#fff;color:#000;z-index:99999}.site-header{position:absolute;z-index:50;inset:0 0 auto;height:108px;display:flex;align-items:center;gap:42px;padding:0 4.5vw;color:#fff;border-bottom:1px solid #ffffff35}.brand{align-self:stretch;flex:0 0 155px;background:#f8f5ee;color:#171714;display:flex;flex-direction:column;justify-content:center;align-items:center}.brand span{font-size:10px;letter-spacing:.2em}.brand b{font-size:30px;letter-spacing:.15em;font-weight:400}.custom-logo-link{display:flex;align-items:center;justify-content:center;height:100%}.custom-logo{max-width:120px;max-height:86px;object-fit:contain}.primary-nav{font-size:13px;letter-spacing:.1em}.nav-list,.footer-nav{display:flex;gap:30px;align-items:center;list-style:none;margin:0;padding:0}.header-access{margin-left:auto;border:1px solid #ffffff77;padding:14px 20px;font-size:12px;white-space:nowrap}.menu-toggle{display:none}.hero{height:100svh;min-height:700px;position:relative;color:#fff;background:#171714}.hero-slides,.hero-slide,.hero-slide picture,.hero-slide picture img{position:absolute;inset:0;width:100%;height:100%}.hero-slides{overflow:hidden}.hero-slide{opacity:0;visibility:hidden;animation:heroFade 18s ease-in-out infinite}.hero-slide:first-child{opacity:1;visibility:visible}.hero-slide:nth-child(2){animation-delay:6s}.hero-slide:nth-child(3){animation-delay:12s}.hero-slide img{object-fit:cover;object-position:center;animation:heroDrift 18s ease-out infinite}.hero-slide:nth-child(2) img{animation-delay:6s}.hero-slide:nth-child(3) img{animation-delay:12s}.shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#000b,#0001 70%,#0007)}.hero-dish-name{position:absolute;z-index:2;left:4.5vw;bottom:28px;margin:0;font-size:13px;letter-spacing:.12em}@keyframes heroFade{0%,27%{opacity:1;visibility:visible}34%,93%{opacity:0;visibility:hidden}94%{opacity:0;visibility:visible}100%{opacity:1;visibility:visible}}@keyframes heroDrift{0%{transform:scale(1)}34%,100%{transform:scale(1.035)}}.eyebrow{font:11px/1.5 Arial,sans-serif;letter-spacing:.24em}.eyebrow:before{content:"";display:inline-block;width:32px;height:1px;background:currentColor;vertical-align:middle;margin-right:14px}.intro{min-height:960px;position:relative;padding-top:150px;background:#faf9f6}.title-box{position:absolute;z-index:2;left:0;top:100px;width:30%;min-width:300px;padding:80px 7vw;background:#fff}.title-box span{font:10px Arial,sans-serif;letter-spacing:.2em}.title-box h2,.section-heading h2,.menu-lead h2,.craft-copy h2,.shop h2,.subpage h1,.craft-detail h1{font-size:clamp(34px,4vw,58px);font-weight:400;line-height:1.55;letter-spacing:.08em;margin:20px 0}.intro-img{width:76%;height:520px;margin-left:auto}.intro-img img{width:100%;height:100%;object-fit:cover}.intro-text{width:43%;margin:55px 8vw 0 auto}.intro-text h3{font-size:27px;font-weight:400}.intro-text>p:last-of-type{font-size:15px;line-height:2.2;color:#625f59}.button{display:inline-block;border:1px solid #aaa69d;padding:16px 24px;margin-top:20px;font-size:13px;background:transparent}.recommend{padding:150px 4.5vw 0;background:#fff}.section-heading{display:flex;align-items:end;justify-content:space-between;max-width:1200px;margin:0 auto 65px}.section-heading>p{color:#716d65;line-height:2;font-size:14px}.cards,.feature-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;max-width:1400px;margin:auto}.cards article>img{width:100%;height:360px;object-fit:cover}.cards article>span{display:inline-block;background:var(--red);color:#fff;padding:6px 15px;font-size:11px}.cards h3{font-size:21px;font-weight:400;margin:18px 0 10px}.cards p,.card-copy{font-size:14px;line-height:1.9;color:var(--muted)}.cards .price{color:var(--ink);font-weight:700}.feature-cards{margin-top:100px}.feature-cards img{width:100%;height:410px;object-fit:cover}.feature-label{font-size:12px;color:var(--red);margin:16px 0 5px}.feature-cards h3{font-size:18px;font-weight:400;margin:0;line-height:1.8}.menu-board{margin:150px -4.5vw 0;padding:130px 9vw;background:#1c1c1a;color:#eee9df;display:grid;grid-template-columns:.85fr 1.5fr;gap:8vw}.menu-lead>p:not(.eyebrow){color:#aaa79f;line-height:2;font-size:14px}.menu-lead small{display:block;margin-top:50px;color:#938f87;font-size:12px}.menu-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 70px}.menu-cols h3{font-size:15px;color:var(--gold);letter-spacing:.15em;padding-bottom:18px;border-bottom:1px solid #ffffff22}.menu-cols p{display:flex;justify-content:space-between;gap:15px;font-size:14px;padding:8px 0;border-bottom:1px dotted #ffffff1c;margin:0}.menu-cols b{font-weight:400;white-space:nowrap;color:#d9d3c8}.craft{height:820px;display:grid;grid-template-columns:1.25fr 1fr;background:#080a09;color:#fff;overflow:hidden}.craft>img{width:100%;height:820px;object-fit:cover;object-position:center top;filter:brightness(.72)}.craft-copy{height:820px;padding:70px 7vw 55px;align-self:stretch}.craft-copy>p:not(.eyebrow){color:#c4c0b6;line-height:2.2;font-size:14px}.points{display:flex;gap:30px;margin-top:55px;border-top:1px solid #ffffff28;padding-top:30px}.points span{font-size:12px}.points b{display:block;font:12px Arial,sans-serif;color:var(--gold);margin-bottom:10px}.points a{white-space:nowrap}.points i{font-style:normal}.gallery{aspect-ratio:1448/821;background:#eee}.gallery img{width:100%;height:100%;object-fit:cover}.news{padding:120px 8vw;background:#fff}.news .section-heading{margin-bottom:35px}.news-list{max-width:1200px;margin:auto;border-top:1px solid #d1ccc1}.news-list article{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid #d1ccc1}.news-list time{font:12px Arial,sans-serif;color:#888}.news-list h3{font-size:16px;font-weight:400;margin:0}.shop{min-height:760px;display:grid;grid-template-columns:1fr 1.1fr;padding:140px 4.5vw 140px 9vw;gap:8vw;background:#f3f0e9}.shop .lead{line-height:2.1;color:#646159}.shop dl,.access-info dl{margin-top:55px}.shop dl div,.access-info dl div{display:grid;grid-template-columns:120px 1fr;border-top:1px solid #d1ccc1;padding:18px 0}.shop dt,.access-info dt{font-size:12px;color:#777269}.shop dd,.access-info dd{margin:0;font-size:14px;line-height:1.8}.shop-img{min-height:480px;position:relative}.shop-img img{width:100%;height:100%;object-fit:cover}.shop-img span{position:absolute;right:-20px;bottom:-25px;background:var(--red);color:#fff;padding:24px 30px;line-height:1.8}.site-footer{background:#171715;color:#fff;min-height:310px;padding:75px 5vw 35px;display:grid;grid-template-columns:1fr 2fr;gap:25px}.footer-brand>a{font-size:36px;letter-spacing:.18em}.footer-brand p{color:#87847e;font-size:12px}.site-footer nav{display:flex;justify-content:flex-end}.footer-nav{font-size:12px;color:#bdb9b1}.social-links{display:flex;gap:20px;font:12px Arial,sans-serif}.site-footer small{align-self:end;font:10px Arial,sans-serif;color:#888}.subpage{padding-top:108px;min-height:70vh}.subpage .site-header,.craft-page .site-header{position:relative}.subpage-intro{padding:110px 9vw 80px;background:#f3f0e9}.subpage-intro>p{max-width:700px}.wrap{width:min(100% - 40px,1100px);margin-inline:auto}.entry-content{padding-top:70px;padding-bottom:100px}.entry-content img{height:auto}.access-content{display:grid;grid-template-columns:1.25fr 1fr;min-height:650px}.map-frame iframe{display:block;width:100%;height:100%;min-height:650px;border:0}.access-info{padding:80px 7vw;background:#fff}.access-info h2{font-size:38px;font-weight:400}.access-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}.access-actions a{border:1px solid #aaa69d;padding:14px 18px;font-size:13px}.craft-page{padding-top:108px}.craft-feature{min-height:720px;display:grid;grid-template-columns:1.1fr 1fr}.craft-photo img{width:100%;height:100%;min-height:720px;object-fit:cover}.craft-detail{padding:100px 8vw;align-self:center}.craft-detail>p{color:#625f59;line-height:2}.single-entry{padding-top:170px;padding-bottom:120px}.single-entry h1{font-size:clamp(34px,5vw,58px);font-weight:400;line-height:1.45}.single-entry time{font:12px Arial,sans-serif;color:#777}.single-entry>img{margin-top:40px}.archive-list{padding-top:70px;padding-bottom:100px}.archive-list article{padding:28px 0;border-bottom:1px solid #ddd}.archive-list h2{font-size:22px;font-weight:400}.archive-list time{font:12px Arial,sans-serif;color:#777}
@media(max-width:800px){body{font-size:16px}body.admin-bar .site-header{top:46px}.site-header{height:76px;padding:0 14px;gap:10px}.brand{flex-basis:132px}.brand span{font-size:9px;letter-spacing:.15em}.brand b{font-size:23px;letter-spacing:.12em}.custom-logo{max-width:100px;max-height:64px}.header-access{padding:10px 12px;font-size:11px;margin-left:auto}.menu-toggle{display:block;order:4;width:42px;height:42px;border:1px solid #ffffff77;background:#171714aa;color:#fff;font-size:0;position:relative}.menu-toggle:before,.menu-toggle:after,.menu-toggle span:after{content:"";position:absolute;left:10px;right:10px;height:1px;background:#fff}.menu-toggle:before{top:13px}.menu-toggle span:after{top:20px}.menu-toggle:after{top:27px}.menu-open .menu-toggle:before{top:20px;transform:rotate(45deg)}.menu-open .menu-toggle:after{top:20px;transform:rotate(-45deg)}.menu-open .menu-toggle span:after{display:none}.primary-nav{display:none;position:absolute;top:76px;left:0;right:0;background:#171714f5;color:#fff;padding:22px}.menu-open .primary-nav{display:block}.nav-list{display:block}.nav-list li+li{border-top:1px solid #ffffff22}.nav-list a{display:block;padding:14px 5px;font-size:15px}.hero{height:100svh;min-height:0;max-height:100svh}.hero-slide img{object-position:center}.hero-slide .shade{background:linear-gradient(180deg,#0005 0%,#0001 35%,#0007 100%)}.hero-dish-name{left:18px;right:18px;bottom:22px;font-size:13px}.intro{min-height:auto;padding:0 0 90px}.title-box{position:relative;top:auto;width:82%;min-width:0;padding:55px 9vw}.intro-img{width:94%;height:340px}.intro-text{width:auto;margin:45px 9vw}.intro-text h3{font-size:25px}.recommend{padding:90px 6vw 0}.section-heading{display:block}.cards,.feature-cards{grid-template-columns:1fr}.cards article>img{height:350px}.feature-cards{margin-top:70px}.feature-cards img{height:380px}.menu-board{margin:90px -6vw 0;padding:80px 9vw;grid-template-columns:1fr}.menu-cols{grid-template-columns:1fr;gap:40px}.craft{height:auto;grid-template-columns:1fr;overflow:visible}.craft>img{height:430px}.craft-copy{height:auto;padding:65px 9vw 75px}.points{flex-wrap:wrap;gap:24px}.gallery{aspect-ratio:1448/821}.news{padding:80px 8vw}.news-list article{grid-template-columns:1fr;gap:5px}.shop{grid-template-columns:1fr;padding:90px 8vw 110px}.shop dl div,.access-info dl div{grid-template-columns:95px 1fr}.shop-img{min-height:390px}.shop-img span{right:-10px}.site-footer{grid-template-columns:1fr;gap:28px;padding-top:60px}.site-footer nav{justify-content:flex-start}.footer-nav{flex-wrap:wrap}.subpage,.craft-page{padding-top:76px}.subpage-intro{padding:75px 8vw 60px}.access-content{grid-template-columns:1fr}.map-frame iframe{min-height:380px}.access-info{padding:65px 8vw 80px}.craft-feature{grid-template-columns:1fr}.craft-photo img{height:480px;min-height:0}.craft-detail{padding:70px 9vw 90px}.single-entry{padding-top:120px}.feature-cards br{display:none}}
@media(max-width:420px){.header-access{display:none}.brand{margin-right:auto}.cards article>img{height:320px}.shop dl div,.access-info dl div{grid-template-columns:1fr;gap:4px}.shop dd,.access-info dd{font-size:15px}.craft-photo img{height:420px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-slide{animation:none;opacity:0;visibility:hidden}.hero-slide:first-child{opacity:1;visibility:visible}.hero-slide img{animation:none;transform:none}}
body:not(.kamakura-front) .site-header{background:#171714}

/* 1.0.1: Fixed-frame hero crossfade for iPhone Safari and desktop. */
.hero{width:100%;max-width:100%;contain:layout paint;isolation:isolate;overflow:hidden}
.hero-slides{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;background:#171714;contain:strict}
.hero-slide{position:absolute;inset:0;width:100%;height:100%;opacity:0;visibility:visible;z-index:1;animation:none!important;transition:opacity 1.15s ease-in-out;will-change:opacity;pointer-events:none;transform:translateZ(0);backface-visibility:hidden}
.hero-slide:first-child{opacity:0;visibility:visible}
.hero-slide.is-active,.hero-slide:first-child.is-active{opacity:1;z-index:2}
.hero-slide picture,.hero-slide picture img,.hero-slide>img{display:block;position:absolute;inset:0;width:100%!important;max-width:none;height:100%!important;min-width:100%;min-height:100%;margin:0;padding:0}
.hero-slide picture img,.hero-slide>img{object-fit:cover;object-position:center center;animation:none!important;transform:none!important;backface-visibility:hidden}
.hero-slide .shade{z-index:1;pointer-events:none}
.hero-slide .hero-dish-name{z-index:2}
@media(max-width:800px){.hero{width:100vw;height:100svh;min-height:0;max-height:100svh}.hero-slides,.hero-slide,.hero-slide picture,.hero-slide picture img{width:100%;height:100%}.hero-slide picture img{object-fit:cover;object-position:center center}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}.hero-slide.is-active{opacity:1}}

/* 1.0.2: keep the outgoing slide as a fixed underlay during every loop. */
.hero-slides.is-ready .hero-slide{opacity:0!important;visibility:visible!important;z-index:0;animation:none!important;transform:none!important}
.hero-slides.is-ready .hero-slide.is-underlay{opacity:1!important;z-index:1;transition:none!important}
.hero-slides.is-ready .hero-slide.is-active{opacity:1!important;z-index:2;transition:opacity 1.15s ease-in-out!important}
.hero-slides.is-ready .hero-slide picture,.hero-slides.is-ready .hero-slide picture img{inset:0;width:100%!important;height:100%!important;min-width:100%;min-height:100%;object-fit:cover;object-position:center center;transform:none!important}
