@charset "UTF-8";
/* CSS Document */
:root{
  --bg:#ffffff;
  --fg:#222222;
  --muted:#666666;
  --accent:#1D6CF0;
  --radius:12px;
  --gap:16px;
  --max:1080px;
}
    * { box-sizing: border-box; }
    body{
      margin:0; font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif;
      background:var(--bg); color:var(--fg); line-height:1.6;
    }
    a{ color:var(--link); text-decoration: none; }
    a:hover, a:focus{ text-decoration: underline; }
    .wrap{ max-width:var(--max); margin-inline:auto; padding: clamp(16px,3vw,32px); }

    /* ========== Section ========== */
    section{
      background:var(--card);
      border:1px solid var(--line);
      border-radius:var(--radius);
      padding: clamp(14px,2.2vw,20px);
      margin-block: clamp(12px,2vw,18px);
    }
    section > h2{
      font-size: clamp(1.1rem, 2.4vw, 1.35rem);
      margin:0 0 8px;
    }
    .note{ font-size:.9rem; color:var(--muted); margin: 0 0 12px; }

    /* ========== Lists ========== */
    .sitemap{
      display:grid;
      grid-template-columns: 1fr;
      gap: var(--gap);
    }
    @media (min-width: 680px){
      .sitemap{ grid-template-columns: repeat(2,1fr); }
    }
    @media (min-width: 980px){
      .sitemap{ grid-template-columns: repeat(3,1fr); }
    }
    .group{
      background: var(--bg);
      border:1px solid var(--line);
      border-radius: calc(var(--radius) - 6px);
      padding: 12px;
    }
    .group h3{
      margin:0 0 6px; font-size:1rem; letter-spacing:.01em;
    }
    .group p{ margin:.2em 0 .8em; color:var(--muted); font-size:.92rem; }

    /* nested list */
    ul, ol{ margin:0; padding-left: 1.1em; }
    .pages li{ margin:.14em 0; }
    .pages small{ color:var(--muted); margin-left:.3em; }