:root{--navy: #1f3a5f;--navy-dark: #16293f;--bg: #f7f7f5;--text: #333;--muted: #666;--border: #e2e2dd;--cta: #ff6b35;--cta-hover: #e55a2b;--max: 760px}*{box-sizing:border-box}html{font-size:16px}body{margin:0;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Hiragino Sans,Noto Sans JP,Meiryo,sans-serif;line-height:1.8}.container{max-width:var(--max);margin:0 auto;padding:0 16px}.site-header{background:var(--navy);color:#fff}.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:12px 16px}.site-header a{color:#fff;text-decoration:none}.site-header .brand{font-weight:700;font-size:1.05rem}.site-nav{display:flex;flex-wrap:wrap;gap:6px 14px}.site-nav a{font-size:.9rem;padding:2px 0}.site-nav a:hover{text-decoration:underline}.site-nav a[aria-current=page]{border-bottom:2px solid var(--cta);font-weight:700}main{background:#fff}article{padding:8px 0 24px}h1{font-size:1.6rem;line-height:1.5;margin:1rem 0 .8rem;color:var(--navy-dark)}h2{font-size:1.3rem;margin:2.2rem 0 .8rem;padding:.4rem 0 .4rem .7rem;border-left:5px solid var(--navy);color:var(--navy-dark)}h3{font-size:1.1rem;margin:1.6rem 0 .6rem;color:var(--navy-dark)}p{margin:.8rem 0}a{color:#185fa5}img{max-width:100%;height:auto}.meta-note{font-size:.82rem;color:var(--muted);background:#fbfbf9;border:1px solid var(--border);border-radius:8px;padding:10px 12px;margin:0 0 1rem}blockquote{margin:1.2rem 0;padding:12px 16px;background:#f2f5f9;border-left:4px solid var(--navy);border-radius:0 8px 8px 0}blockquote p{margin:.3rem 0}.table-wrap{overflow-x:auto;margin:1rem 0}table{border-collapse:collapse;width:100%;min-width:520px;font-size:.92rem}th,td{border:1px solid var(--border);padding:8px 10px;text-align:left;vertical-align:top}thead th{background:var(--navy);color:#fff}tbody tr:nth-child(2n){background:#fafafa}.cta-button{margin:1.6rem auto;max-width:480px;text-align:center}.cta-button a,.cta-button>*{display:block}.cta-button a{background:var(--cta);color:#fff;text-decoration:none;font-weight:700;padding:16px 24px;border-radius:10px;font-size:1.05rem}.cta-button a:hover{background:var(--cta-hover)}.cta-button:not(:has(a)){background:var(--cta);color:#fff;font-weight:700;padding:16px 24px;border-radius:10px;font-size:1.05rem;opacity:.92}a.cta-button.cta-active{display:block;background:var(--cta);color:#fff;text-decoration:none;font-weight:700;padding:16px 24px;border-radius:10px;font-size:1.05rem;opacity:1}a.cta-button.cta-active:hover{background:var(--cta-hover)}.cat-index{margin:2.4rem 0 1rem}.cat-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.cat-list li{border:1px solid var(--border);border-radius:10px;padding:12px 14px;background:#fff}.cat-list li a{font-weight:700;text-decoration:none}.cat-list li a:hover{text-decoration:underline}.cat-list li span{display:block;font-size:.85rem;color:var(--muted);margin-top:2px}@media (min-width: 600px){.cat-list{grid-template-columns:1fr 1fr}}.sitemap-group{margin:2rem 0}.sitemap-list{list-style:none;padding:0;margin:.6rem 0 0}.sitemap-list li{border-bottom:1px solid var(--border);padding:10px 0 10px 1.1em;position:relative}.sitemap-list li:before{content:"▶";position:absolute;left:0;color:var(--navy);font-size:.7em;top:15px}.sitemap-list li a{text-decoration:none}.sitemap-list li a:hover{text-decoration:underline}.sitemap-list li span{display:block;font-size:.82rem;color:var(--muted);margin-top:2px}.breadcrumb{font-size:.82rem;color:var(--muted);padding:10px 0 0}.breadcrumb a{color:var(--muted)}.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0}.breadcrumb li:after{content:"›";margin-left:6px;color:#bbb}.breadcrumb li:last-child:after{content:""}.article-footer{margin-top:2.5rem;border-top:1px solid var(--border);padding-top:1.2rem;font-size:.88rem;color:var(--muted)}.disclaimer{background:#fbfbf9;border:1px solid var(--border);border-radius:8px;padding:12px 14px}.site-footer{background:var(--navy);color:#dfe6ee;margin-top:2rem}.site-footer .container{padding:20px 16px;font-size:.85rem}.site-footer a{color:#fff}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:1.2rem 0}.card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px 16px}.card h3{margin:0 0 .4rem}.card ul{margin:.4rem 0 0;padding-left:1.1rem}.card a{text-decoration:none}.card a:hover{text-decoration:underline}
