:root{--mint-1:#3FC1B0;--mint-2:#7BDCC7;--mint-bg:#F1FAF8;--warm-1:#E09A7A;--warm-2:#F3C7B1;--warm-bg:#FDF6F1;--ink:#2B3F45;--ink-2:#5B767D;--line:#DDEDEA;--r:16px;--w:1040px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;color:var(--ink);background:#fff;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,system-ui,sans-serif;font-size:16px;line-height:1.85;letter-spacing:.02em}a{color:inherit}.wrap{max-width:var(--w);margin:0 auto;padding:0 20px}.wrap.wide{max-width:1200px}main{padding:28px 20px 64px}.hd{position:sticky;top:0;z-index:20;background:#ffffffeb;backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.hd-in{display:flex;align-items:center;justify-content:space-between;height:56px}.logo{font-weight:700;text-decoration:none;font-size:1.02rem}.gnav a{font-size:.86rem;color:var(--ink-2);text-decoration:none}.chips-wrap{border-top:1px solid var(--line);background:var(--mint-bg)}.chips{display:flex;gap:8px;overflow-x:auto;padding:9px 20px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:0 0 auto;text-decoration:none;font-size:.84rem;padding:6px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--ink-2)}.chip.on{background:linear-gradient(135deg,var(--mint-1),var(--mint-2));color:#fff;border-color:transparent}.eyebrow{display:block;font-size:.66rem;letter-spacing:.22em;color:var(--mint-1);font-weight:700;margin-bottom:6px}.eyebrow.warm{color:var(--warm-1)}h1{font-size:1.72rem;line-height:1.5;margin:.2em 0 .5em;font-weight:700}h2{font-size:1.24rem;line-height:1.6;margin:2.4em 0 .8em;font-weight:700}h3{font-size:1.02rem;margin:1.8em 0 .5em}p{margin:0 0 1.1em}.lead{color:var(--ink-2);font-size:.98rem}.band{padding:38px 0 42px}.band-warm{background:var(--warm-bg);border-top:1px solid #F2E4DA;border-bottom:1px solid #F2E4DA}.band-mint{background:var(--mint-bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.band h2:first-child{margin-top:0}.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.card{display:block;text-decoration:none;padding:20px;border-radius:var(--r);border:1px solid var(--line);background:#fff;transition:.18s}.card{box-shadow:0 1px 2px #2b3f450a,0 8px 20px -14px #2b3f452e}.card:hover{box-shadow:0 8px 26px #3fc1b02e;transform:translateY(-2px);border-color:#cde9e3}.card .ttl{font-weight:700;display:flex;align-items:center;gap:10px;margin-bottom:6px}.card .txt{font-size:.88rem;color:var(--ink-2);margin:0}.note{background:var(--warm-bg);border:1px solid #F2E4DA;border-left:3px solid var(--warm-1);border-radius:var(--r);padding:14px 16px;font-size:.85rem;color:var(--ink-2)}.wip{font-size:.78rem;color:var(--ink-2);margin:.4em 0 0}.ft{border-top:1px solid var(--line);background:var(--mint-bg);padding:26px 0 40px;margin-top:48px}.ftnav{display:flex;gap:18px;flex-wrap:wrap;font-size:.86rem;margin-bottom:10px}.ftnav a{color:var(--ink-2);text-decoration:none}.op{font-size:.8rem;color:var(--ink-2);margin:0}.who{display:grid;grid-template-columns:auto 1fr;gap:.4rem 1rem;margin:.6rem 0 0}.who dt{color:var(--ink-2);font-size:.9rem}.who dd{margin:0}main.bleed{padding:0 0 64px;max-width:none}.hero{background:radial-gradient(720px 380px at 88% -10%,#e09a7a8c,#e09a7a00 62%),linear-gradient(135deg,#3fc1b0,#63d3be 55%,#8de6d2);color:#fff;padding:52px 0 58px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-70px;bottom:-90px;width:280px;height:280px;border-radius:50%;background:#ffffff21}.hero:before{content:"";position:absolute;right:90px;top:-60px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,#ffebe157,#ffffff0f 70%)}.hero-in{position:relative;z-index:1}.hero h1{font-size:2rem;margin:.1em 0 .5em;color:#fff}.hero-lead{color:#fffffff0;font-size:.98rem;margin:0}.hero-lead b{color:#fff}.eyebrow.on-mint{color:#ffffffd9}main.bleed>.wrap{padding-top:8px}.sp-br{display:none}@media(max-width:640px){body{font-size:15.5px;line-height:1.8}h1{font-size:1.42rem}h2{font-size:1.12rem;margin:2em 0 .7em}main{padding:20px 16px 52px}.wrap{padding:0 16px}.grid{grid-template-columns:1fr;gap:12px}.grid.cat{grid-template-columns:1fr 1fr;gap:10px}.grid.cat .card{padding:14px 12px}.grid.cat .ttl{display:block;font-size:.94rem}.grid.cat .ico{margin-bottom:8px}.grid.cat .txt{font-size:.78rem;line-height:1.65}.card{padding:16px}.band{padding:30px 0 34px}.hero{padding:38px 0 42px}.hero h1{font-size:1.62rem}.hero-lead{font-size:.92rem}.sp-br{display:inline}.pc-br{display:none}}
