/* 案内ページの目次の見た目（items.html で使う。中身は共通部品） */
/* >>> 共通 page-css（元は yubitan/common/pages/page-extra.css。ここは直さず、元を直して tools/sync_common.py を実行） md5=2488b11ba16e38cc1db13be61a5f3092 */
/* 案内ページの目次（yb_pages.py の page(toc=…)。2026-10-31 ご本人の指示「どこにスクロールしても、他の項目のリンクが把握できる」）と、案内ページの広告の枠 */
main.has-toc h2[id],main.has-toc details[id]{scroll-margin-top:calc(var(--tb,60px) + 64px)}
.toc{position:sticky;top:var(--tb,60px);z-index:25;margin:0 0 14px}
.toc-btn{display:flex;align-items:center;gap:10px;width:100%;padding:8px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 2px 8px rgba(0,0,0,.06);font-weight:700;text-align:left}
.toc-lb{flex:none;font-size:12px;padding:1px 9px;border-radius:999px;background:var(--accent);color:var(--accent-ink)}
.toc-now{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.toc-ar{flex:none;color:var(--muted);transition:transform .2s}
.toc.open .toc-ar{transform:rotate(180deg)}
.toc-h{display:none}
.toc-list{display:none;position:absolute;left:0;right:0;top:100%;margin:6px 0 0;padding:8px;list-style:none;max-height:min(70vh,520px);overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}
.toc.open .toc-list{display:block}
.toc-list a{display:block;padding:6px 10px;border-radius:8px;color:var(--ink);text-decoration:none;font-size:14px;line-height:1.4}
.toc-list .l2 a{padding-left:22px;font-size:13px;color:var(--muted)}
.toc-list a:hover{background:var(--accent-soft)}
.toc-list a.on{background:var(--accent-soft);color:var(--ink);font-weight:700;box-shadow:inset 3px 0 0 var(--accent)}
@media (min-width:1280px){
  .toc{position:fixed;top:calc(var(--tb,60px) + 22px);left:calc(50% + var(--wrap,900px)/2 + 14px);width:calc(50vw - var(--wrap,900px)/2 - 34px);max-width:260px;margin:0}
  .toc-btn{display:none}
  .toc-h{display:block;margin:0 0 6px 4px;font-size:12px;font-weight:700;color:var(--muted)}
  .toc-list{display:block;position:static;margin:0;max-height:calc(100vh - var(--tb,60px) - 70px);box-shadow:none}
}
.ad-page{margin:26px 0 6px}
@media print{.toc{display:none!important}}
/* <<< 共通 page-css */
