/* サブページ（メニュー・テイクアウト）共通スタイル */
:root{
  --shikkui:#F7F2E8; --paper:#FFFCF6; --tsuchi:#5B3F2C; --sumi:#2B231D; --muted:#7A6A5C;
  --anzu:#E07B24; --anzu-deep:#B95E12; --anzu-soft:#F8E1C8; --koke:#5E7048; --koke-soft:#E3E8D6;
  --line-green:#06C755; --rule:rgba(91,63,44,.16); --radius:14px;
  --shadow:0 20px 40px -24px rgba(43,35,29,.45); --mincho:"Shippori Mincho","Yu Mincho",serif;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
.tel{font-weight:700;white-space:nowrap}
.mail{font-weight:700;overflow-wrap:anywhere}
html{scroll-behavior:smooth;scroll-padding-top:130px}
body{margin:0;background:var(--shikkui);color:var(--sumi);font-family:"Zen Kaku Gothic New",system-ui,sans-serif;font-size:16px;line-height:1.85;overflow-x:hidden;-webkit-text-size-adjust:100%}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{width:min(1080px,100% - 32px);margin-inline:auto}
h1,h2,h3{font-family:var(--mincho);font-weight:700;letter-spacing:.04em;line-height:1.45}

header.site{position:sticky;top:0;z-index:50;background:rgba(247,242,232,.94);backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--rule)}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px;gap:16px}
.logo img{height:52px;width:auto}
.nav ul{display:flex;gap:2px;list-style:none;margin:0;padding:0;align-items:center}
.nav ul a{display:block;padding:6px 12px;text-decoration:none;font-size:.9rem;font-weight:500;border-radius:8px}
.nav ul a:hover,.nav ul a[aria-current]{background:var(--anzu-soft)}
.nav ul .nav-game{color:var(--anzu-deep);font-weight:700}
.btn-line{background:var(--line-green)!important;color:#fff!important;font-weight:700!important;border-radius:99px!important;padding:8px 18px!important}
.menu-btn{display:none;border:1px solid var(--tsuchi);background:var(--paper);border-radius:8px;padding:6px 12px;font:700 .85rem inherit;color:var(--sumi);cursor:pointer}
@media (max-width:1120px){
  .menu-btn{display:block}
  .nav ul{position:fixed;inset:68px 16px auto;flex-direction:column;align-items:stretch;background:var(--paper);border-radius:var(--radius);padding:10px;box-shadow:var(--shadow);transform:translateY(-10px);opacity:0;pointer-events:none;transition:.25s}
  .nav ul.open{transform:none;opacity:1;pointer-events:auto}
  .nav ul a{padding:12px 14px}
  .logo img{height:44px}
}

.page-head{padding:56px 0 28px;text-align:center}
.page-head .en{font-size:.78rem;letter-spacing:.3em;color:var(--anzu-deep);font-weight:700}
.page-head h1{font-size:clamp(1.8rem,4vw,2.6rem);margin:4px 0 8px}
.page-head p{color:var(--muted);margin:0 auto;max-width:40em}

.chips{position:sticky;top:68px;z-index:40;background:rgba(247,242,232,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule)}
.chips .wrap{display:flex;gap:6px;overflow-x:auto;padding:10px 0;scrollbar-width:none}
.chips .wrap::-webkit-scrollbar{display:none}
.chips a{flex:none;text-decoration:none;font-size:.88rem;font-weight:700;border:1px solid var(--rule);background:var(--paper);border-radius:99px;padding:5px 14px;transition:.2s;white-space:nowrap}
.chips a.on{background:var(--tsuchi);border-color:var(--tsuchi);color:#fff}

.cat{padding:44px 0 8px}
.cat-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;border-bottom:2px solid var(--tsuchi);padding-bottom:6px;margin-bottom:6px}
.cat-head h2{margin:0;font-size:1.6rem}
.cat-head span{font-size:.78rem;letter-spacing:.2em;color:var(--anzu-deep);font-weight:700}
.cat-lead{color:var(--muted);font-size:.92rem;margin:10px 0 4px}

.items{list-style:none;margin:0;padding:0}
.item{display:grid;grid-template-columns:1fr auto;gap:2px 16px;padding:14px 0;border-bottom:1px dashed var(--rule)}
.item h3{margin:0;font-size:1.08rem;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;letter-spacing:.02em}
.item .price{text-align:right;font-family:var(--mincho);font-weight:700;font-size:1.1rem;white-space:nowrap}
.item .price small{display:block;font:inherit;color:inherit}
.item p{grid-column:1/-1;margin:2px 0 0;font-size:.88rem;color:var(--muted)}
.tag{display:inline-block;font-size:.7rem;font-weight:700;border-radius:99px;padding:0 9px;margin-left:6px;vertical-align:2px;font-family:"Zen Kaku Gothic New",sans-serif;letter-spacing:0}
.tag.veg{background:var(--koke-soft);color:var(--koke)}
.tag.hot{background:var(--anzu);color:#fff}
.tag.lim{background:var(--anzu-soft);color:var(--anzu-deep)}
.tag.spicy{background:#F6D5D0;color:#A23A2A}

.box{background:var(--paper);border-radius:var(--radius);padding:20px 22px;border:1px solid var(--rule);margin:14px 0}
.box h3{margin:0 0 6px;font-size:1.15rem}
.box ol,.box ul{margin:0;padding-left:1.4em;font-size:.92rem}
.box p{margin:0;font-size:.92rem}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:760px){.grid2{grid-template-columns:1fr}}

.tbl{width:100%;border-collapse:collapse;font-size:.92rem;margin:8px 0}
.tbl th,.tbl td{border-bottom:1px solid var(--rule);padding:8px 8px;text-align:left}
.tbl td.r,.tbl th.r{text-align:right;white-space:nowrap}
.tbl thead th{font-size:.8rem;color:var(--muted)}
.scroll-x{overflow-x:auto}

.filter{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:18px}
.filter button{border:1px solid var(--rule);background:var(--paper);border-radius:99px;padding:6px 16px;font:700 .88rem "Zen Kaku Gothic New",sans-serif;cursor:pointer;color:var(--sumi)}
.filter .pdf-link{border:1px solid var(--rule);background:var(--paper);border-radius:99px;padding:6px 16px;font:700 .88rem "Zen Kaku Gothic New",sans-serif;color:var(--sumi);text-decoration:none}
.filter .pdf-link:hover{border-color:var(--sumi)}
.filter button[aria-pressed="true"]{background:var(--koke);border-color:var(--koke);color:#fff}
body.veg-only .item:not([data-veg]){display:none}
body.veg-only .cat:not(:has(.item[data-veg])){display:none}

.note{font-size:.84rem;color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:99px;padding:13px 24px;font:700 1rem "Zen Kaku Gothic New",sans-serif;text-decoration:none;cursor:pointer}
.btn.line{background:var(--line-green);color:#fff}
.btn.ghost{border:1px solid var(--tsuchi);background:var(--paper)}
.cta{text-align:center;padding:56px 0 80px}
.cta .btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:14px}

footer{background:var(--sumi);color:#D9CCBD;padding:40px 0 100px;font-size:.88rem;text-align:center}
footer a{text-decoration:none;margin:0 10px}
footer small{display:block;margin-top:18px;opacity:.6}

/* メニューの写真 */
.item:has(.thumb){grid-template-columns:112px 1fr auto;column-gap:16px}
.item .thumb{grid-row:1 / span 2;width:112px;height:112px;object-fit:cover;border-radius:12px;background:var(--anzu-soft)}
.item:has(.thumb) p{grid-column:2 / -1}
.box-photo{width:calc(100% + 44px);max-width:none;margin:-20px -22px 16px;aspect-ratio:16/7;object-fit:cover;border-radius:var(--radius) var(--radius) 0 0}
.box{overflow:hidden}
@media (max-width:560px){
  .item:has(.thumb){grid-template-columns:84px 1fr;row-gap:4px}
  .item .thumb{width:84px;height:84px;grid-row:1 / span 3}
  .item:has(.thumb) .price{grid-column:2;text-align:left}
  .item:has(.thumb) p{grid-column:2}
}
.kids-photo{margin:14px 0;max-width:420px;border-radius:var(--radius);overflow:hidden;position:relative}
.kids-photo img{width:100%;aspect-ratio:4/3;object-fit:cover}
.kids-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:24px 14px 10px;background:linear-gradient(transparent,rgba(30,20,12,.7));color:#fff;font-weight:700;font-size:.9rem}
.limited{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:var(--anzu-soft);border-radius:var(--radius);padding:20px 24px;margin-top:28px}
.limited h2{font-size:1.15rem;margin:6px 0 4px}
.limited p{margin:0;font-size:.9rem;color:var(--sumi)}
.limited .tag{margin-left:0}
.limited-tx{flex:1;min-width:240px}
.limited.festival{background:#F6DCE3;margin-top:12px}
.line-cta{display:grid;justify-items:start;gap:8px;margin:18px 0 6px}
.line-cta .note{margin:0}
