:root{--ink:#080808;--panel:#11100f;--panel2:#171513;--paper:#e9e1d2;--muted:#aaa196;--gold:#b9965b;--red:#8d1f17;--line:#39332b;--serif:"Yu Mincho","Hiragino Mincho ProN",serif;--sans:"Noto Sans JP","Yu Gothic",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);line-height:1.9}img{display:block;width:100%}a{color:inherit;text-decoration:none}.site-header{height:86px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;position:fixed;inset:0 0 auto;z-index:20;background:linear-gradient(#080808ed,#080808b5,transparent);transition:.3s}.site-header.scrolled{background:#080808f5;border-bottom:1px solid #29251f}.brand{display:flex;align-items:center;gap:13px}.seal{width:50px;height:50px;border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold);font-family:var(--serif);font-size:24px;transform:rotate(45deg)}.seal span{transform:rotate(-45deg)}.brand-text{font-family:var(--serif);font-size:22px;letter-spacing:.2em}.brand-text small{display:block;font:9px var(--sans);letter-spacing:.3em;color:var(--muted)}nav{display:flex;align-items:center;gap:2.2vw;font-size:12px;letter-spacing:.12em}nav a{padding:8px 0;border-bottom:1px solid transparent}nav a:hover,nav a.active{color:var(--gold);border-color:var(--gold)}.reserve{border:1px solid var(--gold)!important;padding:9px 15px!important}.hamburger{display:none;background:none;border:0;color:white;font-size:25px}.hero{min-height:100svh;display:flex;align-items:center;position:relative;background:url('assets/hero-interior.png') center/cover}.hero:after,.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#050505db 0%,#05050552 55%,#05050555),linear-gradient(0deg,#080808 0%,transparent 35%)}.hero-copy{position:relative;z-index:1;margin-left:9vw;max-width:680px}.kicker{color:var(--gold);font:12px var(--sans);letter-spacing:.45em;text-transform:uppercase}.hero h1{font:clamp(38px,6vw,80px)/1.35 var(--serif);letter-spacing:.16em;margin:22px 0}.hero h1 em{font-style:normal;color:var(--gold)}.hero p{color:#d7d0c4;letter-spacing:.12em}.scroll{position:absolute;z-index:2;bottom:32px;right:5vw;font-size:10px;letter-spacing:.3em;writing-mode:vertical-rl;color:var(--muted)}.scroll:after{content:"";display:block;width:1px;height:80px;background:var(--gold);margin:12px auto}.feature{min-height:700px;display:grid;grid-template-columns:58% 42%;align-items:center;max-width:1440px;margin:auto;padding:100px 5vw;gap:6vw}.feature.reverse{grid-template-columns:42% 58%}.feature.reverse .feature-img{order:2}.feature-img{height:520px;object-fit:cover;filter:saturate(.85) contrast(1.08)}.feature-copy{max-width:470px}.eyebrow{font-size:10px;letter-spacing:.35em;color:var(--gold);text-transform:uppercase}.feature h2,.section-title{font:clamp(30px,4vw,52px)/1.5 var(--serif);letter-spacing:.1em;margin:16px 0 24px}.feature p,.lead{color:var(--muted)}.btn{display:inline-flex;align-items:center;gap:35px;border:1px solid #655840;margin-top:25px;padding:13px 20px;font-size:12px;letter-spacing:.16em;transition:.25s}.btn:after{content:"→";color:var(--gold)}.btn:hover{background:var(--gold);color:#090909}.btn:hover:after{color:#090909}.hospitality{position:relative;min-height:650px;background:url('assets/hospitality.png') center/cover;display:flex;align-items:center;padding:9vw}.hospitality:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#080808ed,#0808085e 68%,transparent)}.hospitality>div{position:relative;max-width:570px}.hospitality h2{font:clamp(30px,4vw,52px)/1.5 var(--serif);letter-spacing:.08em}.site-footer{border-top:1px solid var(--line);background:#050505;padding:75px 7vw 30px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:50px;max-width:1200px;margin:auto}.footer-grid h3{font:26px var(--serif);letter-spacing:.18em;margin-top:0}.footer-grid p{color:var(--muted);font-size:13px}.map{height:190px;background:repeating-linear-gradient(30deg,#171717,#171717 12px,#1d1d1d 12px,#1d1d1d 24px);display:grid;place-items:center;color:#777;border:1px solid #2b2926}.copyright{text-align:center;color:#625d55;font-size:10px;margin-top:50px}.page-hero{height:62vh;min-height:470px;display:flex;align-items:flex-end;padding:0 8vw 70px;position:relative;background:center/cover}.page-hero>div{position:relative;z-index:2}.page-hero h1{font:clamp(40px,6vw,72px) var(--serif);letter-spacing:.17em;margin:10px 0}.content{max-width:1160px;margin:auto;padding:100px 5vw}.intro{text-align:center;max-width:720px;margin:0 auto 90px}.intro .lead{font-size:15px}.craft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.craft-card{background:var(--panel);border-top:1px solid var(--gold);padding:35px}.craft-card b{font:22px var(--serif);letter-spacing:.1em}.craft-card .num{color:var(--gold);font:11px var(--sans);display:block}.wide-image{height:540px;object-fit:cover;margin:70px 0}.menu-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-bottom:55px}.menu-nav a{border:1px solid var(--line);padding:8px 16px;font-size:12px;color:var(--muted)}.menu-section{margin:75px 0}.menu-section h2{font:30px var(--serif);letter-spacing:.14em;border-bottom:1px solid var(--line);padding-bottom:16px}.menu-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 50px}.menu-item{padding:18px 0;border-bottom:1px dotted #494139;display:grid;grid-template-columns:1fr auto;gap:12px}.menu-item b{font-family:var(--serif);font-size:17px}.menu-item small{display:block;color:#827a70}.price{color:var(--gold);font-family:Georgia,serif}.food-banner{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center;background:var(--panel);padding:35px;margin-bottom:80px}.food-banner img{height:330px;object-fit:cover}.tag{font-size:10px;color:var(--gold);border:1px solid #5e503a;padding:3px 8px;margin-left:8px}.notice{border:1px solid var(--line);padding:16px;color:#8d867c;font-size:11px}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.post{background:var(--panel);transition:.3s}.post:hover{transform:translateY(-5px)}.post img{height:210px;object-fit:cover}.post-body{padding:25px}.post time{font-size:10px;color:var(--gold);letter-spacing:.13em}.post h2{font:20px/1.6 var(--serif)}.post p{font-size:12px;color:var(--muted)}.coming{display:inline-block;font-size:9px;border:1px solid var(--gold);color:var(--gold);padding:2px 7px}.vertical-mark{position:fixed;left:18px;bottom:25px;z-index:10;writing-mode:vertical-rl;color:#5d564e;font:10px var(--serif);letter-spacing:.35em}
@media(max-width:900px){.site-header{height:70px;padding:0 20px}.seal{width:42px;height:42px;font-size:20px}.brand-text{font-size:17px}nav{display:none;position:absolute;top:70px;left:0;right:0;background:#090909;padding:25px;flex-direction:column;align-items:stretch;text-align:center}nav.open{display:flex}.hamburger{display:block}.hero-copy{margin:0 8vw}.feature,.feature.reverse{grid-template-columns:1fr;padding:70px 7vw;gap:40px}.feature.reverse .feature-img{order:0}.feature-img{height:390px}.footer-grid{grid-template-columns:1fr}.craft-grid,.blog-grid{grid-template-columns:1fr}.food-banner{grid-template-columns:1fr}.page-hero{padding-left:7vw}.wide-image{height:360px}}@media(max-width:620px){.hero h1{font-size:37px}.hero p{font-size:13px}.feature-img{height:300px}.feature h2{font-size:29px}.menu-grid{grid-template-columns:1fr}.content{padding:75px 6vw}.brand-text small{display:none}.hospitality{padding:60px 7vw;align-items:flex-end}.vertical-mark{display:none}}

/* WordPress / Elementor integration */
.site-header nav ul{display:flex;align-items:center;gap:2.2vw;list-style:none;margin:0;padding:0}.site-header .custom-logo{width:50px;height:50px;object-fit:contain}.elementor-page #primary{overflow:hidden}.elementor .feature{display:grid!important;grid-template-columns:58% 42%!important}.elementor .feature.reverse{grid-template-columns:42% 58%!important}.elementor .content{display:block!important}.elementor-widget-image.feature-img img,.elementor-widget-image .feature-img{height:520px;object-fit:cover}.elementor-widget-heading h1,.elementor-widget-heading h2{font-family:var(--serif)}.daiichi-btn .elementor-button{border:1px solid #655840;border-radius:0;background:transparent;color:var(--paper);padding:14px 20px;font-size:12px;letter-spacing:.16em}.daiichi-btn .elementor-button:hover{background:var(--gold);color:#090909}.entry-content{max-width:760px;margin:auto;color:#ccc}.navigation.pagination{margin:50px 0}.page-numbers{padding:8px 12px;border:1px solid var(--line)}iframe.map{width:100%}
@media(max-width:900px){.site-header nav ul{flex-direction:column;align-items:stretch}.site-header nav.open{display:block}.site-header nav.open ul{display:flex}.elementor .feature,.elementor .feature.reverse{grid-template-columns:1fr!important}.elementor-widget-image.feature-img img{height:390px}}
