:root{--navy:#14204A;--navy-deep:#0E1733;--yellow:#F2CF1D;--ink:#1d2433;--muted:#5b6475;--bg:#f6f7fa;--card:#fff}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Noto Sans JP","Segoe UI",sans-serif;color:var(--ink);background:var(--bg);line-height:1.8}
header{background:linear-gradient(135deg,var(--navy-deep),var(--navy));color:#fff;padding:40px 16px 32px}
header .wrap{max-width:860px;margin:0 auto}
header .eyebrow{color:var(--yellow);font-weight:700;letter-spacing:.12em;font-size:13px;margin:0 0 8px}
header h1{margin:0;font-size:clamp(22px,4vw,32px);line-height:1.3}
header p{margin:12px 0 0;color:#cfd6e6;font-size:15px}
nav{max-width:860px;margin:0 auto;padding:12px 16px 0;display:flex;gap:16px;flex-wrap:wrap;font-size:14px}
nav a{color:var(--navy);font-weight:700;text-decoration:none;border-bottom:2px solid var(--yellow)}
main{max-width:860px;margin:0 auto;padding:16px 16px 64px}
.card{background:var(--card);border-radius:12px;padding:28px 24px;margin:20px 0;box-shadow:0 1px 3px rgba(20,32,74,.08)}
h2{font-size:20px;margin:0 0 6px;color:var(--navy)}
h3{font-size:16px;margin:24px 0 6px;color:var(--navy);padding-left:10px;border-left:4px solid var(--yellow)}
.meta{color:var(--muted);font-size:13px;margin:0 0 16px}
ul{padding-left:1.3em}
hr.sep{border:0;height:1px;background:#e3e6ee;margin:40px 0}
.lang{display:inline-block;background:var(--navy);color:var(--yellow);font-size:12px;font-weight:700;padding:2px 10px;border-radius:999px;margin-bottom:10px}
a{color:#1d4ed8}
footer{text-align:center;color:var(--muted);font-size:13px;padding:0 16px 40px}
