/* お品書きページ：黒いヘッダー / 5品が見える名物カルーセル / 特別感のあるコース */
.menu-page{--mp-coal:#1a1814;--mp-ink:#efe6d6;--mp-ember:#e0522a;--mp-gold:#c9a66b;--mp-display:"Anton","Impact","Arial Narrow",sans-serif}

/* ---------- Header area: black down to the category nav ---------- */
.menu-page .inner-header{background:var(--mp-coal);color:var(--mp-ink);border-bottom:1px solid #efe6d622}
.menu-page .inner-header a{color:var(--mp-ink)}
.menu-page .full-menu{max-width:none;padding:0 0 140px}
.menu-page .full-menu>.menu-ledger{max-width:1280px;margin:0 auto;padding:0 40px}
.menu-page .menu-intro{max-width:none;margin:0;padding:80px max(40px,calc(50vw - 600px)) 0;background:var(--mp-coal);color:var(--mp-ink)}
.menu-page .menu-intro>p{color:#b9b0a1}
.menu-page .menu-intro h1{font-family:var(--mp-display);font-weight:400;letter-spacing:0;color:var(--mp-ink)}
.menu-page .menu-intro>div{color:var(--mp-ink)}
.menu-page .menu-category{max-width:none;margin:0;padding:40px max(40px,calc(50vw - 600px)) 0;background:var(--mp-coal);border:0}
.menu-page .menu-category a{color:#b9b0a1;border-bottom-color:transparent;border-top:1px solid #efe6d622}
.menu-page .menu-category a:hover,.menu-page .menu-category a.is-active{color:var(--mp-ink);border-bottom-color:var(--mp-ember)}
.menu-page #category-0{max-width:none;margin:0;padding:60px 40px 70px}

/* ---------- 名物: five dishes in view, slide feel ---------- */
.menu-page .signature-dishes.fluid-menu{--fluid-step:.9;--fluid-arc:48;height:clamp(420px,36vw,560px)}
.menu-page .fluid-menu .fluid-dish{width:clamp(220px,24vw,350px)}

/* ---------- COURSE: something special ---------- */
.menu-page .course-feature{max-width:none;margin:0 0 90px;padding:0 0 110px;background:var(--mp-coal);color:var(--mp-ink)}
.nk-course-hero{position:relative;height:min(78vh,720px);overflow:hidden;margin-bottom:80px}
.nk-course-hero img{width:100%;height:100%;object-fit:cover;filter:brightness(.55) saturate(1.05)}
.nk-course-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#1a181400 40%,var(--mp-coal) 100%)}
.menu-page .course-heading{position:absolute;left:0;right:0;bottom:6%;z-index:1;display:grid;grid-template-columns:1fr;justify-items:center;text-align:center;margin:0;padding:0 24px;border:0}
.menu-page .course-heading p{grid-column:auto;order:3;margin:22px 0 0;font-size:16px;letter-spacing:.3em;color:var(--mp-ink)}
.menu-page .course-heading h2{font-family:var(--mp-display);font-weight:400;font-size:clamp(84px,14vw,220px);line-height:.9;letter-spacing:.02em;margin:0;color:var(--mp-ink)}
.menu-page .course-heading>span{order:-1;padding-bottom:0;margin-bottom:14px;font-size:13px;letter-spacing:.6em;padding-left:.6em;color:var(--mp-gold)}
.menu-page .course-list{max-width:1200px;margin:0 auto;padding:0 40px;grid-template-columns:1fr 1fr 1.25fr;gap:26px;align-items:stretch}
.menu-page .course-list article{position:relative;display:flex;flex-direction:column;padding:40px 34px 34px;border:1px solid #c9a66b55;border-top:1px solid #c9a66b55;background:linear-gradient(180deg,#24211c,#1d1b17)}
.menu-page .course-list article::before{content:"";position:absolute;inset:8px;border:1px solid #c9a66b22;pointer-events:none}
.menu-page .course-index{font-family:var(--mp-display);font-size:58px;line-height:1;color:var(--mp-gold)}
.menu-page .course-list h3{margin:22px 0 18px;font-size:clamp(20px,1.7vw,25px);letter-spacing:.08em;color:var(--mp-ink)}
.menu-page .course-list p{flex:1;margin:0 0 26px;font-size:14px;line-height:2;color:#cfc6b6;min-height:0}
.menu-page .course-list strong{padding-top:20px;border-top:1px solid #c9a66b44;font-family:var(--mp-display);font-weight:400;font-size:46px;letter-spacing:.02em;color:var(--mp-ink)}
.menu-page .course-list small{font-family:"Zen Kaku Gothic New",sans-serif;font-size:12px;color:#b9b0a1}
.menu-page .course-list article.is-featured{border-color:var(--mp-gold);background:radial-gradient(120% 80% at 50% 0%,#3a2a1c,#1d1b17 70%);box-shadow:0 40px 80px -40px #e0522a55;transform:translateY(-22px)}
.menu-page .course-list article.is-featured::before{border-color:#c9a66b55}
.menu-page .course-list article.is-featured .course-index{color:var(--mp-ember)}
.menu-page .course-list article.is-featured strong{font-size:58px;color:var(--mp-gold)}
.course-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);padding:6px 18px;background:var(--mp-ember);color:#fff;font-size:12px;letter-spacing:.24em;white-space:nowrap}
.menu-page .course-feature .menu-note{max-width:1200px;margin:50px auto 0;padding:24px 40px 0;color:#b9b0a1;border-top:0;text-align:center}

/* reveal */
.menu-page .course-list article{opacity:0;transform:translateY(40px);transition:opacity .9s,transform 1.1s cubic-bezier(.16,1,.3,1)}
.menu-page .course-list article.is-featured{transform:translateY(20px)}
.menu-page .course-feature.is-visible .course-list article{opacity:1;transform:none}
.menu-page .course-feature.is-visible .course-list article.is-featured{transform:translateY(-22px)}
.menu-page .course-feature.is-visible .course-list article:nth-child(2){transition-delay:.12s}
.menu-page .course-feature.is-visible .course-list article:nth-child(3){transition-delay:.24s}

@media(max-width:800px){
  .menu-page .menu-intro{padding:56px 24px 0}
  .menu-page .menu-category{padding:28px 24px 0}
  .menu-page #category-0{padding:44px 24px 56px}
  .menu-page .full-menu>.menu-ledger{padding:0 24px}
  .menu-page .signature-dishes.fluid-menu{--fluid-step:.74;--fluid-arc:26;height:clamp(380px,112vw,470px)}
  .menu-page .fluid-menu .fluid-dish{width:48vw}
  .menu-page .course-feature{margin:0 0 60px;padding-bottom:80px}
  .menu-page .course-feature .course-list article{flex-direction:column;padding:34px 24px 28px}
  .nk-course-hero{height:62vh;margin-bottom:56px}
  .menu-page .course-list{grid-template-columns:1fr;gap:34px;padding:0 24px}
  .menu-page .course-list article.is-featured,.menu-page .course-feature.is-visible .course-list article.is-featured{transform:none}
  .menu-page .course-list article.is-featured{order:-1}
  .menu-page .course-feature .menu-note{padding:20px 24px 0;font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .menu-page .course-list article{opacity:1;transform:none;transition:none}
}

/* ---------- 2026-10-22: course details, drink plan, all-you-can-drink menu, lunch ---------- */
.menu-page .course-list .course-meta{flex:none;margin:0 0 14px;font-size:12px;letter-spacing:.16em;color:var(--mp-gold)}
.menu-page .course-list .course-note{flex:none;margin:12px 0 0;font-size:12px;line-height:1.7;color:#cfc6b6}
.menu-page .course-reserve{margin-top:22px;display:flex;justify-content:center;padding:12px 10px;border:1px solid #c9a66b77;border-radius:999px;color:var(--mp-ink);font-size:13px;letter-spacing:.1em;text-decoration:none;transition:background .3s,color .3s}
.menu-page .course-reserve:hover{background:var(--mp-gold);color:var(--mp-coal)}
.menu-page .is-featured .course-reserve{background:var(--mp-ember);border-color:var(--mp-ember);color:#fff}
.nk-nomi-plan{max-width:1200px;margin:60px auto 0;padding:0 40px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.nk-nomi-plan>div:first-child{padding:34px 0;border-top:1px solid #c9a66b55;border-bottom:1px solid #c9a66b55}
.nk-nomi-plan__en{margin:0 0 6px;font-family:var(--mp-display);font-size:13px;letter-spacing:.3em;color:var(--mp-gold)}
.nk-nomi-plan h3{margin:0 0 10px;font-size:clamp(22px,2vw,28px);letter-spacing:.1em;color:var(--mp-ink)}
.nk-nomi-plan p{margin:0;font-size:14px;line-height:1.9;color:#cfc6b6}
.nk-nomi-plan ul{display:flex;flex-wrap:wrap;gap:8px 20px;margin:12px 0 0;padding:0;list-style:none;font-size:13px;color:var(--mp-ink)}
.nk-nomi-plan ul li::before{content:"・";color:var(--mp-ember)}
.nk-nomi-plan__price{display:grid;justify-items:end;gap:12px}
.nk-nomi-plan__price strong{font-family:var(--mp-display);font-weight:400;font-size:58px;line-height:1;color:var(--mp-gold)}
.nk-nomi-plan__price small{font-family:"Zen Kaku Gothic New",sans-serif;font-size:12px;color:#b9b0a1;margin-left:4px}
.nk-nomi-plan__price a{color:var(--mp-ink);font-size:13px;letter-spacing:.1em;border-bottom:1px solid currentColor;text-decoration:none}
.menu-page .nk-group-lead{margin:-10px 0 24px;font-size:14px;line-height:1.9;color:#6d665b}
.menu-page .nk-group-note{margin:14px 0 0;font-size:12px;line-height:1.9;color:#6d665b}
.menu-page .nk-net{margin:-30px 0 60px}

/* 飲み放題メニュー */
.menu-page .nk-nomi{padding:56px 48px;background:#23231f;color:var(--mp-ink);border-radius:6px}
.menu-page .nk-nomi .category-heading{color:var(--mp-ink)}
.menu-page .nk-nomi .nk-group-lead{color:var(--mp-gold)}
.nk-nomi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:30px 40px}
.nk-nomi-col h3{margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid #c9a66b55;font-size:15px;letter-spacing:.14em;color:var(--mp-gold)}
.nk-nomi-col ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;font-size:15px}
.nk-nomi-col li::before{content:"・";color:var(--mp-ember)}
.nk-nomi-notes{margin:36px 0 0;padding:22px 0 0;border-top:1px solid #efe6d622;list-style:none;display:grid;gap:6px;font-size:12px;line-height:1.8;color:#cfc6b6}
.nk-nomi-notes li::before{content:"☆ ";color:var(--mp-gold)}

/* ランチ */
.nk-lunch__head{display:grid;gap:6px;margin-bottom:24px}
.nk-lunch__en{margin:0;font-family:var(--mp-display);font-size:clamp(48px,6vw,84px);line-height:.9;color:var(--mp-ember)}
.menu-page .nk-lunch .category-heading{margin:0}
.nk-lunch__time{margin:6px 0 0;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:15px;letter-spacing:.06em}
.nk-lunch__time strong{padding:2px 10px;background:#23231f;color:var(--mp-ink);font-size:13px}
.nk-lunch__points{margin:0 0 30px;padding:16px 20px;border:1px dashed #23231f55;list-style:none;display:flex;flex-wrap:wrap;gap:6px 22px;font-size:13px}
.nk-lunch__points li::before{content:"◎ ";color:var(--mp-ember)}
.nk-lunch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.nk-lunch-set{padding:22px 22px 16px;border-top:3px solid var(--mp-ember);background:#fbf7ef}
.nk-lunch-set h3{margin:0 0 12px;font-size:18px;letter-spacing:.06em}
.nk-lunch-set dl{margin:0;display:grid;gap:6px}
.nk-lunch-set dl div{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #23231f1a;font-size:15px}
.nk-lunch-set dt{color:#6d665b}
.nk-lunch-set dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}
@media(max-width:800px){
  .nk-nomi-plan{grid-template-columns:1fr;padding:0 24px;gap:10px}
  .nk-nomi-plan__price{justify-items:start}
  .menu-page .nk-nomi{padding:40px 22px;margin-inline:-6px}
  .menu-page .nk-net{margin:-20px 0 44px}
}
/* 飲み放題メニュー・ランチは見出し＋一覧の2列型ではなく、縦に並べる */
.menu-ledger .menu-group.nk-nomi:not(#category-7):not(#category-8),.menu-ledger .menu-group.nk-lunch:not(#category-7):not(#category-8){display:block}
.menu-page .nk-nomi .category-heading,.menu-page .nk-lunch .category-heading{margin-bottom:12px}
.menu-page .nk-lunch .drink-heading{margin-top:40px}
.menu-page .nk-group-body>.drink-heading:first-child{margin-top:0}
.menu-page .nk-group-body>.menu-price-list+.drink-heading{margin-top:40px}

/* ---------- Language switcher ---------- */
.nk-lang{display:flex;align-items:center;gap:2px;font-family:"Anton","Impact",sans-serif;font-size:13px;letter-spacing:.06em;line-height:1}
.nk-lang a{padding:6px 7px;color:inherit;text-decoration:none;opacity:.62;transition:opacity .2s,color .2s}
.nk-lang a:not(:last-child)::after{content:"";display:inline-block;width:1px;height:10px;margin-left:12px;background:currentColor;opacity:.35;vertical-align:middle}
.nk-lang a:hover{opacity:1}
.nk-lang a[aria-current]{opacity:1;color:#e0522a}
.nk-lang a[lang="zh"],.nk-lang a[lang="ko"]{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:12px}
.menu-page .inner-header .nk-lang--inner{margin-left:auto;margin-right:26px;color:var(--mp-ink)}
@media(max-width:600px){.menu-page .inner-header .nk-lang--inner{margin-right:14px;font-size:11px}.menu-page .inner-header .nk-lang--inner a{padding:5px 4px}.menu-page .inner-header .nk-lang--inner a:not(:last-child)::after{margin-left:7px}}
