:root{font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;color:#172d3d;background:#f6f8fb;line-height:1.75;font-size:16px;--blue:#153f73;--teal:#006f78}*{box-sizing:border-box}body{margin:0}a{color:var(--blue);text-underline-offset:4px}header{display:flex;justify-content:space-between;align-items:center;padding:22px max(5vw,20px);background:white;border-bottom:1px solid #dce4eb;gap:24px}.brand{font-weight:900;font-size:30px;text-decoration:none;letter-spacing:.05em}.brand span{font-size:12px;display:block;color:#65798a;letter-spacing:.1em}nav{display:flex;gap:26px;align-items:center;flex-wrap:wrap}nav a{text-decoration:none;font-size:14px;font-weight:700}.nav-cta{border:1px solid #174b79;padding:10px 16px;border-radius:5px}main{max-width:1160px;padding:40px 30px 80px;margin:auto}h1{font-size:clamp(30px,4vw,51px);line-height:1.5;letter-spacing:-.035em}h2{font-size:28px;margin:44px 0 20px}h3{font-size:20px}p{max-width: seventy;overflow-wrap:anywhere}.eyebrow{font-size:13px;font-weight:800;letter-spacing:.13em;color:var(--teal)}.hero{padding:35px 0 40px;display:grid;grid-template-columns:1.35fr 1fr;gap:50px;align-items:center}.hero h1{margin:14px 0 24px}.lead{font-size:18px;color:#526677}.paths{display:grid;gap:15px}.path{border-left:5px solid var(--teal);padding:26px;background:white;box-shadow:0 8px 30px #19304708}.path:first-child{border-color:var(--blue)}.path h2{font-size:24px;margin:5px 0}.path p{font-size:14px;color:#526677}.button,button{display:inline-block;border:0;background:var(--blue);color:white;padding:13px 24px;text-decoration:none;border-radius:5px;font:inherit;font-weight:700;cursor:pointer}.button.secondary{background:#fff;color:var(--blue);border:1px solid #b8c8d5}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{padding:26px;background:white;border:1px solid #d9e3ea;border-radius:8px;text-decoration:none;display:block}.card p{font-size:14px;color:#526677}.card h3{line-height:1.6}.tag{color:var(--teal);font-size:13px;font-weight:800}.more{font-size:14px;font-weight:700}.strip{background:#e8eff6;border-radius:8px;padding:24px 30px;margin:28px 0}.empty{padding:28px;border:1px dashed #b8c8d5;border-radius:8px;background:white;color:#526677}.prose{max-width:800px;white-space:pre-wrap;line-height:2.1}.meta{font-size:14px;color:#587082}form{max-width:760px;display:grid;gap:18px;background:white;padding:28px;border:1px solid #dae3eb;border-radius:8px;margin:20px 0}label{font-size:14px;font-weight:700;display:grid;gap:6px}input,textarea,select{border:1px solid #9eafbd;border-radius:4px;padding:12px;font:inherit;background:#fff;color:#172d3d;width:100%}input[type=checkbox]{width:20px}button{justify-self:start}footer{padding:35px 6vw;background:#132c42;color:#fff}footer a{color:white}footer p{font-size:14px}.admin{display:grid;grid-template-columns:200px 1fr;max-width:1500px;margin:auto}.admin main{width:100%;min-width:0}.admin h1{font-size:30px}.admin aside{padding:30px 15px;border-right:1px solid #dce4eb;display:flex;flex-direction:column;gap:5px}.admin aside a{text-decoration:none;padding:9px 14px;font-size:14px;border-radius:4px}.admin aside a.active{background:var(--blue);color:white}.table-wrap{overflow:auto}table{border-collapse:collapse;background:white;font-size:14px;width:100%}td,th{padding:12px;border-bottom:1px solid #dde5ec;text-align:left;max-width:400px;overflow-wrap:anywhere}th{background:#e9eff5}.metric{font-size:36px;font-weight:800}.notice{padding:15px 20px;background:#fff2d9;color:#654200;border-left:4px solid #c98d11}details{background:#fff;padding:20px;border:1px solid #dce4eb;margin:16px 0}summary{cursor:pointer;font-weight:700}:focus-visible{outline:3px solid #dd9b24;outline-offset:3px}@media(max-width:760px){header{align-items:flex-start;flex-direction:column;gap:12px}nav{gap:15px}main{padding:25px 20px 55px}.hero{grid-template-columns:1fr;gap:15px;padding-top:12px}.grid{grid-template-columns:1fr}.admin{grid-template-columns:1fr}.admin aside{flex-direction:row;overflow:auto;border-right:0;white-space:nowrap;padding:15px}.admin aside .eyebrow{display:none}form{padding:20px}h2{font-size:23px}.admin main{padding:20px}}
