:root{--navy:#061b3a;--blue:#0878ed;--ink:#0a1b36;--muted:#64748b;--line:#dce6f2;--paper:#f5f8fc}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Helvetica Neue",Arial,sans-serif}header{height:82px;padding:0 max(5vw,28px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{color:var(--navy);font-size:20px;font-weight:900;letter-spacing:.12em;text-decoration:none}.brand span{color:var(--blue)}.back{font-size:13px;font-weight:700;color:var(--ink);text-decoration:none}.back span{color:var(--blue);margin-left:8px}main{max-width:1280px;margin:auto;padding:80px max(5vw,28px) 120px}.hero{display:grid;grid-template-columns:1fr 2fr auto;gap:30px;align-items:end;padding-bottom:72px;border-bottom:1px solid var(--line)}.hero>p{margin:0;color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.2em}.hero h1{margin:0;font-size:clamp(50px,7vw,104px);letter-spacing:-.06em;line-height:.94}.hero>div{display:flex;flex-direction:column;gap:6px}.hero span{font-size:11px;color:var(--muted);font-weight:700}.hero time{font-weight:800}article{max-width:980px;margin-left:auto}.lead{font-size:18px;line-height:2;margin:72px 0 48px}section{display:grid;grid-template-columns:68px 1fr;gap:24px;padding:50px 0;border-top:1px solid var(--line)}section>b{color:var(--blue);font-size:13px}h2{font-size:clamp(24px,3vw,38px);margin:-8px 0 22px;letter-spacing:-.03em}p,li{font-size:15px;line-height:2;color:#40516b}ul{padding-left:1.3em}li+li{margin-top:7px}.contact{background:var(--paper);border:0;border-radius:24px;padding:44px;margin-top:30px}.contact dl{display:grid;grid-template-columns:110px 1fr;margin-top:28px}.contact dt,.contact dd{padding:13px 0;border-top:1px solid var(--line);font-size:14px}.contact dt{color:var(--muted);font-weight:700}.contact dd{margin:0;font-weight:700}.contact a{color:var(--blue)}footer{padding:38px max(5vw,28px);background:var(--navy);display:flex;justify-content:space-between;align-items:center}footer .brand{color:#fff}footer p{margin:0;color:#8fa4c0;font-size:11px}@media(max-width:720px){header{height:68px}.back{font-size:11px}main{padding-top:52px}.hero{grid-template-columns:1fr;padding-bottom:45px}.hero h1{font-size:54px}.hero>div{margin-top:12px}article{margin:0}.lead{font-size:16px;margin-top:48px}section{grid-template-columns:42px 1fr;gap:12px;padding:38px 0}.contact{padding:30px 22px;margin-left:-12px;margin-right:-12px}.contact dl{grid-template-columns:1fr}.contact dt{padding-bottom:3px}.contact dd{padding-top:3px;border-top:0}}
