  :root{
    --ink:#111; --paper:#fff; --line:#111;
  }
  html,body{ font-family:"M PLUS Rounded 1c",system-ui,-apple-system,"Segoe UI","Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic UI",Meiryo,sans-serif; font-weight:700; }
  .h-title{ font-weight:900; margin:22px 0 10px; }

  /* 共通カード（indexのテイストに合わせた白地＋極太枠＋影） */
  .doc-card{
    background:#fff; border:3px solid var(--line); border-radius:18px;
    box-shadow:6px 6px 0 var(--line); padding:16px;
  }
  .doc-card + .doc-card{ margin-top:16px; }

  .page-hero{
    display:flex; align-items:center; gap:12px; margin:12px 0 16px;
  }
  .page-badge{
    display:inline-block; background:#000; color:#fff; border-radius:999px;
    padding:6px 12px; font-weight:900; font-size:.9rem;
  }
  .page-title{ font-size:1.4rem; font-weight:900; }

  .doc-list{ margin:8px 0 0 0; padding:0; list-style:none; }
  .doc-list li{
    padding:.55rem .75rem; border:2px solid #111; border-radius:12px; background:#fff;
    box-shadow:3px 3px 0 #111; margin:.5rem 0; line-height:1.6;
  }
  .sub{ color:#333; font-size:.9rem; margin-top:6px; }

  .note{
    background:#fff8cc; border:3px solid #111; border-radius:14px;
    padding:12px; box-shadow:4px 4px 0 #111; margin-top:10px; font-weight:900;
  }

  /* Footer（index と共通） */
  .site-footer{ margin-top:28px; background:#fff; border-top:3px solid #111; box-shadow:0 -6px 0 #111; }
  .site-footer .footer-inner{ padding:24px 0 28px; }
  .footer-nav{ display:flex; flex-wrap:wrap; gap:10px 12px; align-items:center; justify-content:center; margin-bottom:10px; }
  .footer-nav a{
    display:inline-block; padding:.45rem .9rem; border:2px solid #111; border-radius:999px; background:#fff; color:#111; text-decoration:none; font-weight:900; box-shadow:3px 3px 0 #111;
    transition: background-color .15s ease, color .15s ease, box-shadow .15s ease;
  }
  .footer-nav a:hover, .footer-nav a:focus-visible{ background:#111; color:#fff; box-shadow:5px 5px 0 #111; }
  .footer-copy{ text-align:center; font-weight:700; color:#333; font-size:.9rem; }

  .hero-split{ margin-top:8px; } /* index と同様の余白調整（ヘッダー被り防止） */