:root{--bg:#fff;--bg-sub:#f5f8fc;--navy:#003d7a;--navy-deep:#002b57;--text:#1f2937;--text-muted:#4b5563;--green:#8cc53d;--green-text:#537623;--line:#d6e0ef;--radius:14px;--max:1120px;--font-ja:"Noto Sans JP", system-ui, sans-serif;--font-num:"Inter", "Noto Sans JP", system-ui, sans-serif}*{box-sizing:border-box}html,body{overflow-x:clip}.hero-grid>*,.flow>*,.stat-grid>*,.ceo>*,.price-extra>*,.worries>*,.plans>*,.posts>*{min-width:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-ja);letter-spacing:.02em;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.9}img{max-width:100%;display:block}h1,h2,h3,.catch,.what,.stat p,.lead,.promise q,.answer p,.voice q{word-break:auto-phrase}a{color:inherit}.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}section{padding:104px 0}.sub{background:var(--bg-sub)}.num{font-family:var(--font-num);font-feature-settings:"tnum"}.eyebrow{font-family:var(--font-num);letter-spacing:.14em;text-transform:uppercase;color:var(--green-text);align-items:center;gap:10px;font-size:13px;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:var(--green);border-radius:2px;width:28px;height:3px}h2{color:var(--navy);letter-spacing:.04em;margin:12px 0 20px;font-size:clamp(26px,3.4vw,36px);line-height:1.5}.lead{max-width:720px;color:var(--text-muted);margin:0 0 48px}.btn{border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:15px 28px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.btn-primary{background:var(--navy);color:#fff;box-shadow:0 8px 24px #003d7a38}.btn-primary:hover{background:var(--navy-deep);transform:translateY(-2px)}.btn-line{color:var(--navy);border:1.5px solid var(--navy);background:#fff}.btn-line:hover{background:var(--bg-sub)}header{z-index:20;backdrop-filter:saturate(1.4)blur(12px);background:#ffffffe0;border-bottom:1px solid #0000;transition:border-color .3s;position:sticky;top:0}header.scrolled{border-bottom-color:var(--line)}.head{justify-content:space-between;align-items:center;height:76px;display:flex}.brand{align-items:center;gap:12px;text-decoration:none;display:flex}.brand img{width:auto;height:46px}nav ul{gap:28px;margin:0;padding:0;font-size:14px;font-weight:500;list-style:none;display:flex}nav a{color:var(--text);text-decoration:none}nav a:hover{color:var(--navy)}.head .btn{padding:10px 20px;font-size:14px}.hero{padding:72px 0 96px;position:relative;overflow:hidden}.hero:after{content:"";z-index:-1;background-image:linear-gradient(var(--bg-sub) 1px, transparent 1px), linear-gradient(90deg, var(--bg-sub) 1px, transparent 1px);background-size:40px 40px;position:absolute;inset:0;mask-image:linear-gradient(#000 40%,#0000)}.hero-grid{grid-template-columns:1.1fr .9fr;align-items:center;gap:56px;display:grid}.hero h1{color:var(--navy);letter-spacing:.04em;margin:18px 0 24px;font-size:clamp(32px,4.6vw,52px);font-weight:700;line-height:1.45}.hero h1 .mark{background:linear-gradient(#0000 68%,#8cc53d61 68%)}.hero p.intro{color:var(--text-muted);max-width:34em;margin:0 0 32px;font-size:17px}.hero-cta{flex-wrap:wrap;gap:14px;margin-bottom:32px;display:flex}.chips{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.chips li{color:var(--navy);border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:500}.chips li:before{content:"✓";color:var(--green-text);margin-right:6px;font-weight:700}.photo{text-align:center;color:#5b6b82;background:repeating-linear-gradient(135deg,#eef3f9 0 14px,#f7fafd 14px 28px);border:1.5px dashed #b9c9df;border-radius:22px;place-items:center;font-size:14px;line-height:1.7;display:grid;position:relative;overflow:hidden}.photo strong{color:var(--navy);font-size:15px;display:block}.hero .photo{aspect-ratio:4/5}.hero-photo{position:relative}.hero-photo .badge{background:#fff;border-radius:16px;align-items:center;gap:14px;padding:16px 20px;display:flex;position:absolute;bottom:36px;left:-28px;box-shadow:0 18px 40px #0f234624}.badge .big{font-family:var(--font-num);color:var(--navy);font-size:30px;font-weight:700;line-height:1}.badge small{color:var(--text-muted);font-size:12px;line-height:1.5;display:block}.hero-photo:before{content:"";border:18px solid var(--green);opacity:.18;z-index:-1;border-radius:50%;width:180px;height:180px;position:absolute;top:-30px;right:-40px}.worries{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.worry{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:28px 24px;position:relative}.worry .q{font-family:var(--font-num);color:var(--green-text);letter-spacing:.1em;font-size:13px;font-weight:700}.worry h3{color:var(--navy);margin:8px 0 10px;font-size:18px;line-height:1.6}.worry p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.8}.answer{border-radius:var(--radius);background:var(--navy);color:#fff;align-items:center;gap:20px;margin-top:40px;padding:28px 32px;display:flex}.answer .arrow{background:var(--green);width:44px;height:44px;color:var(--navy-deep);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.answer p{margin:0;font-size:17px}.flow{grid-template-columns:1.15fr auto 1fr;align-items:stretch;gap:24px;display:grid}.svc{border:1px solid var(--line);background:#fff;border-radius:20px;padding:40px 36px}.svc.main{border:2px solid var(--navy);box-shadow:0 20px 50px #003d7a14}.svc .tag{background:var(--bg-sub);color:var(--navy);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-block}.svc.main .tag{background:var(--navy);color:#fff}.svc h3{color:var(--navy);margin:14px 0 6px;font-size:26px}.svc .catch{color:var(--text-muted);margin:0 0 20px}.svc ul{margin:0;padding:0;list-style:none}.svc li{border-top:1px solid var(--line);padding:11px 0 11px 28px;font-size:15px;position:relative}.svc li:before{content:"";background:var(--green);border-radius:2px;width:12px;height:3px;position:absolute;top:21px;left:4px}.flow-arrow{place-items:center;display:grid}.flow-arrow span{writing-mode:vertical-rl;color:var(--green-text);letter-spacing:.3em;border-left:3px solid var(--green);padding:18px 0;font-size:13px;font-weight:700}.note{color:var(--text-muted);margin-top:20px;font-size:13px}.stats{background:var(--navy);color:#fff;position:relative;overflow:hidden}.stats:before{content:"";border:60px solid #8cc53d1f;border-radius:50%;width:520px;height:520px;position:absolute;bottom:-160px;right:-120px}.stats h2{color:#fff}.stats .eyebrow{color:var(--green)}.stats .lead{color:#c9d6e8}.stat-grid{grid-template-columns:repeat(5,1fr);gap:0;display:grid;position:relative}.stat{border-left:1px solid #ffffff2e;padding:8px 24px}.stat:first-child{border-left:0;padding-left:0}.stat .val{font-family:var(--font-num);white-space:nowrap;font-size:clamp(36px,4vw,52px);font-weight:700;line-height:1.1}.stat .val small{font-family:var(--font-ja);margin-left:2px;font-size:16px;font-weight:700}.stat .val .pre{font-family:var(--font-ja);margin-right:4px;font-size:16px;font-weight:700}.stat .bar{background:var(--green);border-radius:2px;width:32px;height:3px;margin:14px 0 12px}.stat p{color:#c9d6e8;margin:0;font-size:14px;line-height:1.7}.stats .fine{color:#9fb3cf;margin-top:40px;font-size:12px}.role-table{border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:var(--radius);background:#fff;width:100%;overflow:hidden}.role-table th,.role-table td{text-align:left;border-bottom:1px solid var(--line);padding:18px 22px;font-size:15px}.role-table thead th{background:var(--bg-sub);color:var(--navy);font-size:14px}.role-table thead th.us{background:var(--navy);color:#fff}.role-table tr:last-child td{border-bottom:0}.role-table td.us{color:var(--navy);background:#003d7a08;font-weight:700}.ok{align-items:center;gap:8px;display:inline-flex}.ok:before{content:"";background:var(--green);border:2px solid var(--green);border-radius:50%;width:18px;height:18px;box-shadow:inset 0 0 0 5px #fff}.dash{color:#9aa6b6}.role-msg{grid-template-columns:1fr 1fr;gap:20px;margin-top:28px;display:grid}.role-msg div{border-radius:var(--radius);border:1px solid var(--line);background:#fff;padding:22px 24px}.role-msg b{color:var(--navy);margin-bottom:4px;display:block}.role-msg p{color:var(--text-muted);margin:0;font-size:14px}.plans{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.plan{border:1px solid var(--line);border-radius:var(--radius);background:#fff;flex-direction:column;padding:28px 24px;display:flex}.plan.cfo{border:2px solid var(--navy);position:relative}.plan.cfo:before{content:"経営まで伴走";background:var(--green);color:var(--navy-deep);border-radius:999px;padding:3px 12px;font-size:12px;font-weight:700;position:absolute;top:-13px;left:22px}.plan h3{color:var(--navy);margin:0 0 4px;font-size:17px}.plan .what{color:var(--text-muted);min-height:3.4em;margin:0 0 18px;font-size:13px;line-height:1.7}.plan .price{font-family:var(--font-num);color:var(--navy);margin-top:auto;font-size:32px;font-weight:700;line-height:1.2}.plan .price small{font-family:var(--font-ja);color:var(--text);font-size:14px;font-weight:500}.plan .price.formula{font-size:20px}.plan .sub-note{color:var(--text-muted);margin-top:6px;font-size:12px}.price-extra{grid-template-columns:1fr 1fr;align-items:start;gap:24px;margin-top:32px;display:grid}.cfo-table{border-collapse:collapse;border-radius:var(--radius);border:1px solid var(--line);background:#fff;width:100%;font-size:14px;overflow:hidden}.cfo-table caption{text-align:left;color:var(--navy);padding-bottom:10px;font-weight:700}.cfo-table th,.cfo-table td{border-bottom:1px solid var(--line);text-align:right;padding:11px 16px}.cfo-table th:first-child,.cfo-table td:first-child{text-align:left}.cfo-table thead th{background:var(--bg-sub);color:var(--navy);font-size:13px}.cfo-table td.min{color:var(--green-text);font-weight:700}.promise{border-radius:var(--radius);border:1px solid var(--line);border-left:6px solid var(--green);background:#fff;padding:30px}.promise .promise-head{color:var(--navy);letter-spacing:.04em;word-break:auto-phrase;margin:0;font-size:24px;font-weight:700;line-height:1.6}.promise q{border-top:1px dashed var(--line);color:var(--green-text);quotes:"「" "」";margin-top:16px;padding-top:16px;font-size:16px;font-weight:700;line-height:1.7;display:block}.promise p{color:var(--text-muted);margin:12px 0 0;font-size:14px}.promise .hl{background:var(--bg-sub);border-radius:10px;margin-top:18px;padding:14px 16px;font-size:14px}.promise .hl b{color:var(--navy)}.ceo{grid-template-columns:.85fr 1.15fr;align-items:center;gap:64px;display:grid}.ceo .photo{aspect-ratio:1}.ceo .name{color:var(--navy);letter-spacing:.1em;margin:4px 0 2px;font-size:28px;font-weight:700}.ceo .kana{color:var(--text-muted);letter-spacing:.1em;font-size:13px}.ceo .role{color:var(--green-text);font-size:14px;font-weight:700}.ceo .story{margin:22px 0}.timeline{grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 26px;padding:0;list-style:none;display:grid}.timeline li{border-top:3px solid var(--line);padding:12px 10px 0 0;font-size:13px;line-height:1.6;position:relative}.timeline li:before{content:"";border:3px solid var(--green);background:#fff;border-radius:50%;width:13px;height:13px;position:absolute;top:-8px;left:0}.timeline li:last-child{border-top-color:var(--navy)}.timeline b{color:var(--navy);font-size:14px;display:block}.voice{border:1px solid var(--line);border-radius:var(--radius);background:#fff;margin-top:8px;padding:20px 24px;font-size:14px}.voice q{quotes:"「" "」";color:var(--navy);font-weight:700}.voice span{color:var(--text-muted);margin-top:6px;font-size:12px;display:block}.link-more{color:var(--navy);border-bottom:2px solid var(--green);align-items:center;gap:8px;margin-top:22px;padding-bottom:2px;font-weight:700;text-decoration:none;display:inline-flex}.posts{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.post{text-decoration:none;display:block}.thumb{aspect-ratio:16/9;background:var(--navy);color:#fff;text-align:center;border-radius:12px;place-items:center;margin-bottom:14px;padding:20px;font-size:17px;font-weight:700;line-height:1.6;display:grid;position:relative;overflow:hidden}.thumb:before{content:"";border:14px solid #8cc53d59;border-radius:50%;width:140px;height:140px;position:absolute;bottom:-40px;left:-30px}.thumb.alt{background:var(--bg-sub);color:var(--navy);border:1px solid var(--line)}.post .meta{color:var(--text-muted);font-size:12px;font-family:var(--font-num)}.post .cat{color:var(--green-text);font-weight:700;font-family:var(--font-ja);margin-right:10px}.post h3{color:var(--text);margin:4px 0 0;font-size:16px;line-height:1.7}.post:hover h3{color:var(--navy)}.contact{background:linear-gradient(160deg, var(--navy) 0%, var(--navy-deep) 100%);color:#fff;text-align:center}.contact h2{color:#fff}.contact .eyebrow{color:var(--green)}.contact p{color:#c9d6e8;max-width:640px;margin:0 auto 36px}.contact-cards{text-align:left;grid-template-columns:1fr 1fr;gap:20px;max-width:760px;margin:0 auto;display:grid}.cc{color:var(--text);background:#fff;border-radius:18px;padding:28px}.cc h3{color:var(--navy);margin:0 0 6px;font-size:19px}.cc p{color:var(--text-muted);max-width:none;margin:0 0 18px;font-size:14px}.cc .btn{width:100%}.cc .btn-line{border-color:var(--green-text);color:var(--green-text)}.hours{color:#c9d6e8;margin-top:28px;font-size:13px}footer{color:var(--text-muted);border-top:1px solid var(--line);padding:56px 0 40px;font-size:13px}.foot{grid-template-columns:1fr 1fr 1fr;gap:32px;display:grid}.foot img{width:auto;height:96px;margin-bottom:12px}.foot dl{grid-template-columns:5em 1fr;gap:4px 12px;margin:0;display:grid}.foot dt{color:var(--navy);font-weight:700}.foot dd{margin:0}.foot ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.foot a{text-decoration:none}.made{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:36px;padding-top:20px;display:flex}.made a{color:var(--navy);font-weight:500}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(18px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}html{scroll-behavior:auto}}@media (width<=960px){nav{display:none}section{padding:72px 0}.hero-grid,.ceo,.price-extra{grid-template-columns:1fr}.hero-photo{max-width:420px}.worries,.plans{grid-template-columns:1fr 1fr}.flow{grid-template-columns:1fr}.flow-arrow span{writing-mode:horizontal-tb;border-left:0;border-top:3px solid var(--green);padding:10px 18px 0}.stat-grid{grid-template-columns:1fr 1fr;gap:28px 0}.stat,.stat:first-child{border-left:0;padding:0 16px 0 0}.posts,.foot{grid-template-columns:1fr}.timeline{grid-template-columns:1fr 1fr;row-gap:18px}}@media (width<=600px){.wrap{padding:0 16px}.hero h1{min-height:0;font-size:27px}h2{font-size:23px}.stat .val{font-size:27px}.stat .val small,.stat .val .pre{font-size:13px}.hero .photo{aspect-ratio:4/3}.hero-cta .btn{width:100%}.head .btn{padding:8px 14px;font-size:13px}.head{height:64px}.brand img{height:38px}.hero{padding:40px 0 64px}.hero-photo .badge{bottom:16px;left:12px}.worries,.plans,.contact-cards,.role-msg{grid-template-columns:1fr}.answer{flex-direction:column;align-items:flex-start}.role-table th,.role-table td{padding:12px 10px;font-size:13px}.svc{padding:30px 22px}}.thumb.has-img{background:var(--bg-sub);padding:0}.thumb.has-img:before{content:none}.thumb.has-img img{object-fit:cover;width:100%;height:100%}.posts-empty{color:var(--text-muted)}
