:root{--ink:#10233d;--muted:#5c7189;--blue:#0e8fdf;--line:#d7eaf7;--pale:#f1f9ff;--yellow:#ffe477}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.85;font-size:17px}a{color:#087fc8;text-decoration:none}a:hover{text-decoration:underline}
.draft-banner{background:#0e2b4d;color:#fff;padding:14px 20px;text-align:center;font-weight:800;letter-spacing:.04em}.draft-banner small{display:block;margin-top:4px;font-weight:500;opacity:.82}
.hd{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.96);border-bottom:1px solid #e7f0f6;backdrop-filter:blur(10px)}.wrap{max-width:1180px;margin:auto;padding:15px 24px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:900}.nm{line-height:1.15}.tg{display:block;font-size:9px;letter-spacing:.2em;color:#8698aa}.gnav{margin-left:auto;display:flex;align-items:center;gap:18px;font-size:14px;font-weight:700}.gnav .pl{color:var(--ink)}.gnav .on{color:var(--blue);border-bottom:2px solid var(--blue)}.bmain,.cta{display:inline-block;padding:10px 18px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#25a8ed,#087fc8);font-weight:800}.bmain:hover,.cta:hover{color:#fff;text-decoration:none}
.art{max-width:980px;margin:0 auto;padding:0 24px 80px}.ahead{margin:0 -100vw;padding:62px 100vw 54px;background:linear-gradient(135deg,#f8fcff 20%,#e7f6ff)}.bc{font-size:14px;color:#7a8da1}.bc span{margin:0 8px}.eb{color:#0d8bd8;font-size:13px;font-weight:900;letter-spacing:.14em}.ahead h1{font-size:clamp(34px,5vw,58px);line-height:1.25;margin:16px 0 18px;letter-spacing:-.03em}.lead{font-size:20px;color:#4e647b}.ameta{font-size:14px;color:#70849a}.article-status{display:inline-block;padding:7px 13px;border-radius:999px;background:#fff4cf;color:#6d5000;font-weight:800}
h2{font-size:31px;line-height:1.4;margin:72px 0 20px;padding-left:16px;border-left:7px solid var(--blue)}h3{font-size:22px;margin:34px 0 8px}p{margin:12px 0 18px}.box{border:1px solid var(--line);border-radius:18px;padding:22px 24px;margin:28px 0;background:#fff}.box.key{background:linear-gradient(135deg,#eaf7ff,#fffdf3);border-color:#bfe3f8}.box.scope{background:#f8fcff}.box.warn{background:#fff9e7;border-color:#f1d98a}.bt{margin:0 0 7px;color:#087fc8;font-weight:900}.toc{margin:32px 0;padding:28px;border-radius:20px;background:var(--pale);border:1px solid var(--line)}.toc h2{margin:0 0 14px;padding:0;border:0;color:#087fc8}.toc ol{columns:2;column-gap:38px;margin:0;padding-left:24px}.toc li{break-inside:avoid;margin:8px 0}
.tw{margin:24px 0;border:1px solid var(--line);border-radius:16px;overflow:hidden}.tw table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.65}.tw th{background:#e9f6fe;color:#0c5f93;text-align:left}.tw th,.tw td{padding:14px 15px;border-bottom:1px solid #dfedf6;vertical-align:top}.tw tr:last-child td{border-bottom:0}.tw tbody tr:nth-child(even){background:#fbfdff}
.trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.trend-card{border:1px solid #cfe8f8;border-radius:18px;padding:20px;background:linear-gradient(145deg,#fff,#f4fbff)}.trend-card b{display:block;color:#087fc8;font-size:1.05rem;margin-bottom:8px}.source-note{font-size:.9rem;color:#60758b}.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.role-grid>div{border:1px solid #d7e9f5;border-radius:16px;padding:18px;background:#fff}.role-grid strong{display:block;color:#087fc8;margin-bottom:6px}
.theme-switch{max-width:1180px;margin:18px auto;padding:0 24px;display:flex;gap:8px;overflow:auto}.theme-switch a{white-space:nowrap;padding:8px 13px;border-radius:999px;background:#edf7fd;color:#35516d;font-size:13px;font-weight:700}.theme-switch a.active{background:#0e8fdf;color:#fff}.source-list a{overflow-wrap:anywhere}ul{padding-left:24px}li{margin:8px 0}.ctabox{text-align:center;margin-top:64px;padding:34px;background:linear-gradient(135deg,#e7f6ff,#f7fcff)}.ctabox h3{font-size:28px}.actions{margin-top:22px}.actions .cta{padding:15px 28px}footer{background:#0e2b4d;color:#fff}.cp{margin:auto}
.hub{max-width:1180px;margin:0 auto;padding:54px 24px 80px}.hub h1{font-size:48px;line-height:1.3}.hub-lead{font-size:20px;color:#526981}.hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px}.hub-card{border:1px solid var(--line);border-radius:20px;padding:22px;background:linear-gradient(145deg,#fff,#f5fbff);color:var(--ink)}.hub-card:hover{text-decoration:none;transform:translateY(-2px);box-shadow:0 12px 28px rgba(18,79,120,.1)}.hub-card b{display:block;font-size:19px;margin-bottom:7px}.hub-card span{color:#60768b;font-size:14px}
@media(max-width:760px){body{font-size:16px}.wrap{padding:12px 16px}.gnav{display:none}.art{padding:0 16px 60px}.ahead{padding-top:42px;padding-bottom:38px}.ahead h1{font-size:34px}.lead{font-size:17px}.toc ol{columns:1}h2{font-size:26px;margin-top:56px}.trend-grid,.role-grid,.hub-grid{grid-template-columns:1fr}.tw{overflow-x:auto}.tw table{min-width:760px}.hub h1{font-size:36px}}
