*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:#171512;color:#f3e9d9;font:17px/1.9 -apple-system,BlinkMacSystemFont,"Hiragino Sans","Apple SD Gothic Neo",sans-serif}a{color:inherit}header{height:100px;background:#151410;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;border-bottom:1px solid #514331;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:17px;text-decoration:none;line-height:1.2;letter-spacing:3px;font-size:18px}.brand-kanji{font-family:"Yu Mincho",serif;font-size:45px;font-weight:bold;letter-spacing:6px}.brand small{display:block;font-size:10px;letter-spacing:2px;margin-top:8px;color:#c5a67b}nav{display:flex;gap:25px;font-size:14px}nav a{text-decoration:none;padding:8px 0}nav [aria-current]{border-bottom:1px solid #d6ae74;color:#eac993}main{max-width:none;margin:auto;padding:0}.hero{position:relative;min-height:690px;height:calc(100svh - 100px);max-height:900px;isolation:isolate;display:flex;align-items:center;padding:60px 8vw 100px;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 44%;z-index:-3}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,9,7,.86),rgba(10,9,7,.38) 55%,rgba(10,9,7,.1)),linear-gradient(0deg,rgba(10,9,7,.7),transparent 35%);z-index:-2}.hero-copy{max-width:660px}.eyebrow{font-size:13px;font-weight:650;letter-spacing:3px;color:#dfb275;text-transform:uppercase}h1{font-family:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif;font-size:clamp(43px,4.6vw,72px);font-weight:550;line-height:1.45;letter-spacing:0;margin:20px 0 25px;text-shadow:0 2px 20px #0006}.hero-copy>p:not(.eyebrow){max-width:500px;color:#e0d8ca}p{margin:12px 0}h2{font-family:"Yu Mincho",Georgia,serif;font-size:clamp(29px,3vw,45px);font-weight:500;line-height:1.5;margin:17px 0 24px}.links{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:52px;text-decoration:none;border:1px solid #b8a282;padding:12px 24px;font-size:15px;letter-spacing:1px;background:#15141055}.primary{background:#a32e21;border-color:#a32e21;color:#fff}.btn:hover{background:#bf4633}.hero-foot{position:absolute;bottom:28px;left:8vw;right:8vw;border-top:1px solid #a68a6366;padding-top:18px;display:flex;justify-content:space-between;font-size:14px;letter-spacing:2px}.food{display:grid;grid-template-columns:1fr 1fr;max-width:1280px;margin:100px auto;align-items:center;padding:0 5vw;gap:7vw}.food-photo img{width:100%;height:auto;display:block;aspect-ratio:1;object-fit:contain}.food-copy{max-width:450px}.subheading{color:#e8d5b6;font-family:"Yu Mincho",serif;font-size:23px}.food-copy>p:last-of-type{color:#bdb2a1}.textlink{display:inline-block;text-underline-offset:8px;margin-top:22px;font-size:15px}.price{background:#231e17;border-top:1px solid #655034;border-bottom:1px solid #655034;display:grid;grid-template-columns:.8fr 1.2fr;gap:5vw;padding:70px max(8vw,calc((100vw - 1160px)/2));}.price-body>h2{font-size:23px;margin:0 0 20px}.yen{font-size:96px;line-height:1.1;font-family:Georgia,serif;letter-spacing:-4px;color:#efc88d}.price-body>p{font-size:16px}.condition{border-top:1px solid #655034;padding-top:20px;margin-top:25px;color:#cfc2af}.example{color:#efc88d}.atmosphere{position:relative;isolation:isolate;min-height:480px;display:flex;align-items:center;justify-content:flex-end;padding:65px 10vw;margin:0;overflow:hidden}.atmosphere img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 34%;z-index:-2}.atmosphere:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#14110c22,#14110ce6 65%);z-index:-1}.atmosphere>div{max-width:440px}.details{display:grid;grid-template-columns:1fr 1fr;gap:9vw;max-width:1120px;margin:auto;padding:80px 5vw;border-bottom:1px solid #514331}.label{font-size:13px;letter-spacing:3px;color:#dfb275}.details a{color:#dfb275;text-underline-offset:6px}.faq{max-width:1120px;padding:70px 5vw;margin:auto}.faq h2{font-size:30px}details{padding:20px 0;border-bottom:1px solid #514331}summary{cursor:pointer;font-size:17px}details p{font-size:16px;color:#cfc2af}footer{background:#100f0c;padding:40px 8vw;color:#bdb2a1;font-size:14px}footer a{margin-right:20px;text-underline-offset:5px}.mobile-action{display:none}a:focus-visible,summary:focus-visible{outline:3px solid #dfb275;outline-offset:6px}@media(max-width:700px){header{height:82px;padding:0 5vw}.brand-kanji{font-size:32px}.brand{font-size:12px;gap:8px;letter-spacing:2px}.brand small{font-size:8px;letter-spacing:1px}nav{gap:13px;font-size:13px}.hero{height:auto;min-height:710px;padding:75px 7vw 100px;align-items:flex-start}.hero-photo{object-position:58% center}.hero-shade{background:linear-gradient(90deg,#100c08c9,#100c0866),linear-gradient(0deg,#100c08cc,transparent 45%)}h1{font-size:41px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-foot{font-size:11px;letter-spacing:.5px;left:7vw;right:7vw}.links{gap:9px}.btn{font-size:14px;padding:12px 17px}.food{grid-template-columns:1fr;gap:30px;margin:55px auto;padding:0 7vw}.food-copy{max-width:none}.food h2{margin-top:8px}.price{grid-template-columns:1fr;gap:18px;padding:40px 7vw}.price-heading h2{margin-bottom:5px}.yen{font-size:80px}.atmosphere{min-height:480px;padding:50px 7vw;align-items:flex-end}.atmosphere:after{background:linear-gradient(0deg,#14110cf2,#14110c22)}.details{grid-template-columns:1fr;gap:22px;padding:45px 7vw}.faq{padding:45px 7vw}footer{padding:30px 7vw 90px}.mobile-action{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;background:#151410;border-top:1px solid #715b3f;padding:10px 5vw;gap:10px}.mobile-action a{flex:1;text-align:center;text-decoration:none;padding:8px;background:#a32e21;font-size:15px}.mobile-action a+ a{background:#2e261d}}
@media(max-width:380px){header{height:auto;min-height:100px;flex-wrap:wrap;gap:8px;padding:14px 5vw}nav{margin-left:auto;gap:18px}nav a{min-height:44px;display:inline-flex;align-items:center}.brand{flex-shrink:0}.hero{min-height:680px}h1{font-size:35px}}
.full-menu{max-width:1280px;margin:auto;padding:0 6vw 80px}.menu-intro{color:#cfc2af}.menu-jump{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 38px}.menu-jump a{border:1px solid #655034;padding:8px 16px;text-decoration:none;font-size:14px}.menu-jump a:hover{background:#35291d}.menu-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:60px;align-items:start}.menu-category{margin-bottom:32px}.menu-category:first-child{grid-column:1/-1}.menu-category h3{color:#efc88d;font-size:23px;font-weight:500;border-bottom:1px solid #80643e;padding-bottom:14px}.menu-category dl{margin:0}.menu-row{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid #41382c}.menu-row dt{font-size:16px}.menu-row dt small{display:block;color:#b9aa94;font-size:12px}.menu-row dd{margin:0;text-align:right;font-size:14px;color:#e4caa2;flex-shrink:0;max-width:48%}.menu-note{font-size:14px;color:#bdb2a1;border-top:1px solid #655034;padding-top:20px}.menu-note .textlink{margin-top:5px}.menu-drinks{margin-top:32px;padding:24px;background:#231e17}.menu-drinks h3{margin:0;font-size:21px}.menu-drinks a{font-size:14px;text-underline-offset:6px}@media(max-width:700px){.full-menu{padding:0 7vw 45px}.menu-grid{grid-template-columns:1fr;gap:0}.menu-jump{gap:8px}.menu-jump a{padding:7px 11px;font-size:13px}.menu-category{margin-bottom:22px}.menu-row{gap:12px}.menu-row dd{font-size:13px}.menu-row dt{font-size:15px}}

/* Clear pricing examples for visitors */
.price-examples{max-width:1120px;margin:0 auto;padding:28px clamp(22px,5vw,64px) 44px}.price-examples h3{font-size:clamp(22px,3vw,30px);line-height:1.4}.price-examples p{line-height:1.8}.price-examples table{width:100%;max-width:620px;border-collapse:collapse;margin:20px 0}.price-examples th,.price-examples td{text-align:left;padding:14px;border-bottom:1px solid #bca98a}.price-examples td{font-weight:700;font-size:20px}.price-examples thead{background:#ede3d2;color:#241d19}

.visit-video{max-width:1120px;margin:auto;padding:60px 6vw;border-bottom:1px solid #655034}.visit-video>p{max-width:760px}.visit-video .btn{margin:18px 0}.visit-video .video-note{font-size:14px;color:#cfc2af}.visit-video .textlink{margin-top:8px}@media(max-width:700px){.visit-video{padding:40px 7vw}}

.section-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 28px;padding:12px 5vw;background:#231e17;border-bottom:1px solid #655034;font-size:14px}.section-nav a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:5px}.section-nav a:hover{color:#efc88d}.section-nav a:focus-visible{outline:2px solid #efc88d;outline-offset:4px}@media(max-width:700px){.section-nav{gap:4px 18px;font-size:13px;padding:8px 5vw}}

/* Food-inclusive examples and direct reservation actions. */
.visit-plan{max-width:1280px;margin:auto;padding:64px 6vw 32px}.visit-intro{max-width:780px;color:#cfc2af}.visit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0}.visit-card{border:1px solid #715b3f;background:#231e17;padding:25px 22px}.visit-card h3{font-size:18px;line-height:1.6;margin:0;min-height:58px;font-weight:500}.visit-total{font-family:Georgia,serif;color:#efc88d;font-size:48px;line-height:1.25;margin:18px 0}.visit-card ul{list-style:none;padding:0;margin:0;color:#d8cab7;font-size:14px;line-height:1.8}.visit-card li+li{margin-top:8px}.visit-terms{font-size:14px;line-height:1.9;color:#cfc2af}.visit-book{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:28px;border-top:1px solid #655034;padding-top:22px}.visit-book small{color:#cfc2af}.visit-book .btn{display:block;text-align:center;flex-shrink:0}.mobile-action a.call-action{background:#a32e21}.mobile-action a:first-child{background:#2e261d}
@media(max-width:700px){.visit-plan{padding:40px 7vw 0}.visit-grid{grid-template-columns:1fr;gap:14px}.visit-card{padding:22px}.visit-card h3{min-height:0}.visit-total{font-size:43px;margin:12px 0}.visit-book{align-items:stretch;flex-direction:column;gap:12px}.mobile-action{gap:8px;padding:10px 4vw calc(10px + env(safe-area-inset-bottom))}.mobile-action a{font-size:13px;letter-spacing:0;min-height:44px;display:flex;align-items:center;justify-content:center;padding:8px 4px}footer{padding-bottom:calc(100px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
