:root{color-scheme:light;--ink:#1f2933;--muted:#52606d;--navy:#243b53;--accent:#167d89;--line:#d9e2ec;--bg:#f6f8fb;--paper:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;color:var(--ink);margin:0;background:var(--bg);line-height:1.85}a{color:#086c78}a:hover{text-decoration:none}a:focus-visible{outline:3px solid #f0bd54;outline-offset:3px}.wrap{max-width:830px;margin:0 auto;padding:0 28px}.topbar{background:var(--paper);border-bottom:1px solid var(--line)}.top{height:72px;display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{color:var(--navy);font-size:1.18rem;font-weight:750;text-decoration:none;letter-spacing:.015em}.brand::before{content:"M";display:inline-grid;place-items:center;width:36px;height:36px;border-radius:9px;background:var(--navy);color:#fff;margin-right:10px;font-weight:800}.topnav{display:flex;gap:20px}.topnav a{color:var(--muted);text-decoration:none;font-size:.9rem}.topnav a[aria-current=page]{color:var(--accent);font-weight:700}main{padding:58px 0 65px}.kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-size:.8rem;font-weight:800}.hero h1{font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.35;margin:.3em 0}.lead{font-size:1.06rem;color:#3e4c59;max-width:680px}.tag{display:inline-block;margin:12px 0 14px;padding:4px 12px;border:1px solid #b9d8db;border-radius:24px;color:#21646d;font-size:.82rem;background:#edf7f7}.card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:28px 32px;margin-top:25px;box-shadow:0 4px 18px rgba(36,59,83,.035)}h2{font-size:1.24rem;color:var(--navy);margin:0 0 12px}h3{font-size:1rem;color:var(--navy);margin:22px 0 8px}p{margin:0 0 15px}p:last-child{margin-bottom:0}ul{padding-left:1.4rem;margin:8px 0}li{margin:7px 0}.small{font-size:.87rem;color:var(--muted)}.footer{border-top:1px solid var(--line);padding:24px 0 40px;color:var(--muted);font-size:.84rem}.footer .wrap{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}@media(max-width:560px){.wrap{padding:0 18px}.top{height:68px}.topnav{gap:12px}.topnav a{font-size:.8rem}.card{padding:22px 20px}main{padding-top:40px}}
