:root{color-scheme:light;--bg:#f4f6f9;--paper:#fff;--soft:#eaf0f5;--line:#d8e0e9;--accent:#c77a2c;--ink:#17243b;--muted:#58677a;--deep:#17243b;font-family:system-ui,-apple-system,"Yu Gothic UI","Meiryo",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.85}a{color:#075e9e;text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible{outline:3px solid #ec8e2f;outline-offset:3px}.skip{position:absolute;left:12px;top:-80px;background:#fff;padding:10px 14px;z-index:10}.skip:focus{top:8px}.wrap{width:min(1120px,calc(100% - 40px));margin-inline:auto}.sitehead{background:var(--deep);color:#fff}.topline{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0}.brand{font-size:1.13rem;font-weight:800;color:#fff;text-decoration:none;letter-spacing:.02em}.brand small{display:block;font-size:.77rem;font-weight:500;color:#dce7f1}.nav{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center}.nav a{color:#f2f6fb;text-decoration:none;font-size:.93rem}.nav a:hover{text-decoration:underline}.main{padding:32px 0 70px}.hero{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:clamp(26px,5vw,58px);display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center;box-shadow:0 12px 30px rgba(22,42,65,.06)}.hero h1{font-size:clamp(2rem,4.2vw,3.4rem);line-height:1.28;margin:.4rem 0 1rem;letter-spacing:-.035em;color:var(--deep)}.eyebrow{font-size:.86rem;letter-spacing:.1em;font-weight:800;color:var(--accent);text-transform:uppercase}.hero p{font-size:1.08rem;color:#38495c;max-width:58ch}.hero-visual{min-height:250px;background:linear-gradient(145deg,var(--soft),var(--paper));border-radius:20px;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-visual img{display:block;width:100%;height:100%;min-height:250px;object-fit:cover}.visual-card{padding:22px;color:var(--deep);width:100%}.visual-card strong{display:block;font-size:1.35rem}.visual-card span{display:block;margin-top:8px;color:var(--muted)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.chip{display:inline-block;background:var(--soft);border:1px solid var(--line);color:var(--deep);padding:5px 11px;border-radius:999px;font-size:.86rem;text-decoration:none}.section{margin-top:48px}.section-title{display:flex;justify-content:space-between;gap:14px;align-items:end;margin-bottom:18px}.section-title h2{margin:0;font-size:1.65rem;line-height:1.35;color:var(--deep)}.section-title p{margin:0;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:21px;box-shadow:0 5px 18px rgba(25,45,65,.035)}.card h3{font-size:1.12rem;line-height:1.5;margin:8px 0;color:var(--deep)}.card p{margin:0;color:var(--muted)}.card a{text-decoration:none}.card a:hover{text-decoration:underline}.tag{font-size:.8rem;font-weight:700;color:var(--accent)}.guidebox{padding:22px 24px;border-left:5px solid var(--accent);background:var(--soft);border-radius:0 14px 14px 0}.guidebox h2,.guidebox h3{margin-top:0;color:var(--deep)}.guidebox p:last-child{margin-bottom:0}.article-head{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:clamp(24px,4vw,44px);margin-bottom:22px}.breadcrumbs{font-size:.88rem;color:var(--muted);margin-bottom:16px}.breadcrumbs a{color:inherit}.article-head h1{font-size:clamp(1.8rem,3.7vw,2.7rem);line-height:1.36;margin:.5rem 0 1rem;color:var(--deep)}.article-lead{font-size:1.12rem;color:#39495b;max-width:72ch}.article-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(220px,1fr);gap:24px;align-items:start}.article-body,.asidebox,.plainbox{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:clamp(20px,3vw,34px)}.article-body h2{font-size:1.42rem;line-height:1.5;margin:2.1rem 0 .7rem;color:var(--deep);padding-left:13px;border-left:4px solid var(--accent)}.article-body h2:first-child{margin-top:0}.article-body p{margin:.55rem 0 1rem}.article-body ul{padding-left:1.35rem}.article-body li{margin:.45rem 0}.article-body a{overflow-wrap:anywhere}.asidebox{position:sticky;top:20px}.asidebox h2{font-size:1rem;margin:0 0 10px}.asidebox ul{margin:0;padding-left:1.2rem}.asidebox li{margin:.45rem 0}.cta{background:var(--deep);color:#fff;border-radius:18px;padding:24px;margin:28px 0}.cta h2{border:0;padding:0;color:white;margin:0 0 8px}.cta p{color:#e4ecf5}.cta a{display:inline-block;background:#fff;color:var(--deep);font-weight:800;padding:10px 16px;border-radius:8px;text-decoration:none;margin-top:5px}.offer-link{display:inline-block;background:var(--accent);color:#fff!important;font-weight:800;padding:10px 16px;border-radius:8px;text-decoration:none;margin:16px 0}.offer-card h2{font-size:1.2rem;margin:.7rem 0;color:var(--deep)}.offer-card .small{margin-top:5px}.notice{font-size:.9rem;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin-top:24px}.article-list{display:grid;gap:12px}.article-row{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:17px 20px}.article-row a{font-weight:750;color:var(--deep);text-decoration:none}.article-row a:hover{text-decoration:underline}.article-row p{margin:.35rem 0 0;color:var(--muted)}.footer{background:var(--deep);color:#edf3f8;padding:36px 0}.footer a{color:#fff}.footer-grid{display:grid;grid-template-columns:2fr 1fr;gap:30px}.footlinks{display:flex;flex-wrap:wrap;gap:12px 20px}.footlinks a{color:#fff}.small{font-size:.88rem;color:var(--muted)}.badge{display:inline-block;color:var(--accent);font-size:.84rem;font-weight:800}.source-list{padding-left:1.2rem}.source-list li{margin:.5rem 0}@media(max-width:800px){.hero{grid-template-columns:1fr}.hero-visual{min-height:210px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{grid-template-columns:1fr}.asidebox{position:static}.nav{gap:8px 14px}.topline{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.wrap{width:min(100% - 28px,1120px)}.main{padding-top:18px}.hero{padding:22px;border-radius:17px}.grid,.grid.two{grid-template-columns:1fr}.section{margin-top:36px}.section-title{align-items:flex-start;flex-direction:column}.article-head{padding:20px;border-radius:16px}.article-body,.asidebox,.plainbox{padding:19px}.footer-grid{grid-template-columns:1fr}.nav a{font-size:.9rem}}