:root{--navy:#0d1b2a;--ink:#162536;--muted:#5e6b78;--cream:#f7f5ef;--paper:#fff;--cyan:#00a6a6;--cyan-dark:#007d7d;--yellow:#ffd166;--line:#dce3e8;--max:1120px;--shadow:0 20px 55px rgba(13,27,42,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:16px;line-height:1.8}a{color:var(--cyan-dark)}a:hover{text-decoration-thickness:2px}img,svg{max-width:100%}.wrap{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(247,245,239,.94);border-bottom:1px solid rgba(13,27,42,.08);backdrop-filter:blur(12px)}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}.logo{display:inline-flex;align-items:center;gap:10px;color:var(--navy);font-weight:900;letter-spacing:.12em;text-decoration:none}.logo-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--navy);color:var(--yellow);font-size:.82rem;letter-spacing:0}.nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 24px}.nav a{color:var(--ink);font-size:.92rem;font-weight:700;text-decoration:none}.nav a:hover,.nav a[aria-current="page"]{color:var(--cyan-dark)}.hero{position:relative;overflow:hidden;padding:clamp(76px,12vw,150px) 0 96px;background:var(--navy);color:#fff}.hero:after{content:"";position:absolute;width:420px;height:420px;right:-120px;bottom:-230px;border:70px solid var(--cyan);border-radius:50%;opacity:.3}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);align-items:end;gap:64px}.kicker{margin:0 0 16px;color:var(--yellow);font-size:.8rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.hero h1{margin:0;font-size:clamp(3.3rem,10vw,7.6rem);line-height:.9;letter-spacing:-.055em}.hero-copy{margin:28px 0 0;font-size:clamp(1.2rem,3vw,1.75rem);font-weight:800}.hero-note{margin:0;color:#c8d5df;line-height:2}.section{padding:clamp(72px,10vw,120px) 0}.section.white{background:var(--paper)}.section-head{display:grid;grid-template-columns:1fr 1.3fr;gap:50px;margin-bottom:50px}.section-label{margin:0;color:var(--cyan-dark);font-size:.78rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.section h2,.page-hero h1{margin:10px 0 0;color:var(--navy);font-size:clamp(2rem,5vw,3.7rem);line-height:1.2;letter-spacing:-.035em}.section-intro{margin:0;color:var(--muted);font-size:1.06rem}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.pillar{padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--paper)}.pillar-no{display:block;color:var(--cyan-dark);font-size:.75rem;font-weight:900;letter-spacing:.14em}.pillar h3{margin:12px 0 4px;font-size:1.25rem}.pillar p{margin:0;color:var(--muted)}.site-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.75fr);gap:0;overflow:hidden;border:1px solid var(--line);border-radius:28px;background:var(--paper);box-shadow:var(--shadow)}.site-card-main{padding:clamp(30px,6vw,64px)}.site-card-side{display:flex;flex-direction:column;justify-content:space-between;padding:clamp(30px,5vw,52px);background:#dff6f3}.site-card h3{margin:0;color:var(--navy);font-size:clamp(2rem,5vw,3.4rem);line-height:1.1}.site-card .tagline{margin:14px 0 0;font-size:1.15rem;font-weight:800}.site-card .desc{max-width:40rem;margin:22px 0 0;color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 0;padding:0;list-style:none}.tags li{padding:5px 11px;border:1px solid rgba(0,125,125,.25);border-radius:999px;color:var(--cyan-dark);font-size:.8rem;font-weight:700}.site-card-side p{margin:0;color:#315b5b}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border:0;border-radius:999px;background:var(--navy);color:#fff;font-weight:800;text-decoration:none;cursor:pointer}.button:hover{background:var(--cyan-dark)}.button:focus-visible,.nav a:focus-visible,.logo:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}.approach{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.approach article{padding:26px 28px;border-left:4px solid var(--yellow);background:var(--paper)}.approach h3{margin:0 0 6px;font-size:1.1rem}.approach p{margin:0;color:var(--muted)}.cta-band{padding:48px 0;background:var(--yellow)}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:32px}.cta-inner h2{margin:0;color:var(--navy);font-size:clamp(1.6rem,4vw,2.6rem);line-height:1.25}.cta-inner p{margin:8px 0 0;color:#5c4b12}.page-hero{padding:clamp(64px,9vw,108px) 0 56px;border-bottom:1px solid var(--line)}.page-hero p{max-width:720px;margin:20px 0 0;color:var(--muted);font-size:1.08rem}.prose{max-width:820px;padding:64px 0 100px}.prose h2{margin:2.4em 0 .7em;color:var(--navy);font-size:1.55rem;line-height:1.4}.prose h2:first-child{margin-top:0}.prose h3{margin:2em 0 .6em}.prose p,.prose li{color:#344657}.prose ul{padding-left:1.3em}.note{padding:20px 22px;border-left:4px solid var(--cyan);background:#e8f7f5}.operator-grid{display:grid;grid-template-columns:180px 1fr;border-top:1px solid var(--line)}.operator-grid dt,.operator-grid dd{margin:0;padding:18px 0;border-bottom:1px solid var(--line)}.operator-grid dt{font-weight:800}.form{display:grid;gap:22px}.field label{display:block;margin-bottom:7px;font-weight:800}.field input,.field select,.field textarea{width:100%;padding:13px 14px;border:1px solid #b9c5ce;border-radius:10px;background:#fff;color:var(--ink);font:inherit}.field textarea{min-height:190px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(0,166,166,.2);border-color:var(--cyan-dark)}.required{color:#a52b2b;font-size:.78rem}.checkbox{display:flex;gap:10px;align-items:flex-start}.checkbox input{margin-top:.55em}.status{padding:18px 20px;border-radius:10px}.status.success{background:#e0f4ea;color:#185b38}.status.error{background:#fde8e8;color:#8b2020}.honeypot{position:absolute!important;left:-9999px!important}.site-footer{padding:58px 0 28px;background:var(--navy);color:#c8d5df}.footer-grid{display:grid;grid-template-columns:1.1fr 2fr;gap:60px}.footer-brand{color:#fff}.footer-brand p{max-width:320px;margin:14px 0 0;color:#9fb0bd}.footer-links{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 30px}.footer-links a{color:#dbe5ec;text-decoration:none}.footer-links a:hover{color:var(--yellow)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:44px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);font-size:.82rem}.skip{position:absolute;left:-9999px;top:8px;z-index:99;padding:8px 12px;background:#fff}.skip:focus{left:8px}
@media(max-width:760px){.wrap{width:min(calc(100% - 28px),var(--max))}.site-header{position:static}.header-inner{align-items:flex-start;flex-direction:column;padding:18px 0}.nav{justify-content:flex-start;gap:8px 18px}.hero{padding-top:72px}.hero-grid,.section-head,.site-card,.footer-grid{grid-template-columns:1fr}.hero-grid{gap:34px}.hero-note{max-width:540px}.pillars{grid-template-columns:1fr}.approach{grid-template-columns:1fr}.site-card-side{gap:30px}.cta-inner{align-items:flex-start;flex-direction:column}.operator-grid{grid-template-columns:1fr}.operator-grid dt{padding-bottom:0;border-bottom:0}.operator-grid dd{padding-top:4px}.footer-grid{gap:36px}}
@media(max-width:420px){.nav{font-size:.9rem}.hero h1{font-size:3.25rem}.section{padding:64px 0}.site-card{border-radius:20px}.footer-links{grid-template-columns:1fr}.footer-bottom{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
