
:root{
  --green:#00a651; --green2:#eaf8f0; --dark:#1d2427; --text:#263034; --muted:#687479;
  --line:#e4e9e6; --bg:#f5f7f4; --cream:#fbf7ef; --white:#fff; --shadow:0 18px 45px rgba(18,36,27,.10);
  --radius:22px; --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;color:var(--text);background:var(--bg);line-height:1.75;letter-spacing:.02em}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block}.wrap{max-width:var(--max);margin:0 auto;padding:0 22px}.section{padding:76px 0}.section.tight{padding:46px 0}.eyebrow{font-size:13px;letter-spacing:.12em;color:var(--green);font-weight:800;margin-bottom:10px}.section-head{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;margin-bottom:26px}.section-title{font-size:clamp(27px,3.1vw,42px);line-height:1.25;margin:0;color:var(--dark);font-weight:850}.section-lead{max-width:700px;margin:12px 0 0;color:var(--muted)}
.topbar{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px}.logo{display:flex;align-items:center;gap:12px;min-width:220px}.logo img{height:46px;width:auto}.navlinks{display:flex;gap:20px;align-items:center;font-size:14px;color:#415055;white-space:nowrap}.navlinks a{font-weight:700}.navcta{padding:10px 15px;background:var(--green);color:#fff;border-radius:999px}.mobile-note{display:none}
.hero{background:linear-gradient(180deg,#fff 0%,#f5f7f4 100%);padding:44px 0 76px}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:38px;align-items:center}.hero-copy h1{font-size:clamp(38px,5vw,64px);line-height:1.12;margin:0 0 18px;color:var(--dark);letter-spacing:-.03em;font-weight:900}.hero-copy h1 span{color:var(--green);display:block}.hero-copy p{font-size:18px;color:#3e4b50;max-width:620px;margin:0 0 26px}.cta-row{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border-radius:999px;font-weight:800;border:1px solid var(--line);background:#fff}.btn.primary{background:var(--green);border-color:var(--green);color:#fff}.btn.dark{background:var(--dark);border-color:var(--dark);color:#fff}.hero-media{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);overflow:hidden}.hero-media .hero-img{height:320px;background:#fff;display:flex;align-items:center;justify-content:center}.hero-media img{height:100%;width:100%;object-fit:cover}.hero-caption{padding:18px 22px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}.hero-caption b{font-size:18px;color:var(--dark)}.hero-caption span{color:var(--muted);font-size:13px}.pill{display:inline-flex;background:var(--green2);color:#08763f;padding:7px 11px;border-radius:999px;font-weight:800;font-size:12px;white-space:nowrap}
.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:-36px;position:relative;z-index:3}.path-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;box-shadow:0 10px 25px rgba(16,36,26,.06)}.path-card .num{width:34px;height:34px;display:grid;place-items:center;background:var(--green);color:#fff;border-radius:10px;font-weight:900;margin-bottom:14px}.path-card h2{font-size:22px;line-height:1.35;margin:0 0 8px;color:var(--dark)}.path-card p{margin:0 0 18px;color:var(--muted)}.path-card a{font-weight:850;color:var(--green)}
.audience{background:#fff}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.audience-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:20px}.audience-card b{display:block;color:var(--dark);font-size:18px;margin-bottom:6px}.audience-card span{color:var(--muted);font-size:14px}.products{background:#f5f7f4}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 8px 20px rgba(21,37,31,.05);display:flex;flex-direction:column}.product-img{height:188px;background:#f8faf8;display:flex;align-items:center;justify-content:center;padding:16px;border-bottom:1px solid var(--line)}.product-img img{width:100%;height:100%;object-fit:contain}.product-body{padding:18px;display:flex;flex-direction:column;flex:1}.tag{display:inline-flex;width:max-content;max-width:100%;padding:5px 9px;border-radius:999px;background:var(--green2);color:#08763f;font-size:12px;font-weight:850;margin-bottom:10px}.product-body h3{font-size:20px;line-height:1.3;margin:0 0 8px;color:var(--dark)}.product-body p{font-size:14px;color:var(--muted);margin:0 0 14px;flex:1}.card-actions{display:grid;gap:8px;margin-top:auto}.smallbtn{font-size:13px;font-weight:850;border:1px solid var(--line);border-radius:12px;padding:9px 10px;text-align:center;background:#fff}.smallbtn.primary{background:var(--green);border-color:var(--green);color:#fff}
.course{background:#fff}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.course-card{border:1px solid var(--line);border-radius:24px;background:#fff;padding:26px;box-shadow:0 8px 22px rgba(20,40,31,.06);display:flex;flex-direction:column}.course-card.featured{border:2px solid var(--green);box-shadow:var(--shadow)}.course-card h3{font-size:24px;margin:0;color:var(--dark)}.price{font-size:30px;color:var(--dark);font-weight:900;letter-spacing:-.02em;margin:8px 0}.time{font-weight:850;color:var(--green);margin-bottom:12px}.course-card p{color:var(--muted);margin:0 0 18px}.list{padding:0;margin:0;list-style:none;display:grid;gap:8px}.list li{padding-left:24px;position:relative;color:#455156;font-size:14px}.list li:before{content:'✓';position:absolute;left:0;top:0;color:var(--green);font-weight:900}.support{background:linear-gradient(180deg,#f5f7f4,#fff)}.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.support-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px}.support-card h3{margin:0 0 6px;font-size:24px;color:var(--dark)}.support-card .price{font-size:28px}.trouble-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.trouble-tags span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-weight:700;font-size:13px;color:#4a555a}.examples{background:#fff}.example-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.example{background:var(--cream);border:1px solid #efe6d6;border-radius:18px;padding:18px;min-height:112px}.example b{display:block;color:var(--dark);margin-bottom:6px}.example span{color:#6a6053;font-size:13px}.reason{background:#f5f7f4}.reason-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.reason-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.reason-card b{display:block;margin-bottom:4px;color:var(--dark)}.reason-card span{font-size:14px;color:var(--muted)}.business{background:#fff}.business-box{display:grid;grid-template-columns:.82fr 1.18fr;gap:28px;background:var(--dark);border-radius:30px;padding:38px;color:#fff;overflow:hidden}.business-box h2{font-size:34px;line-height:1.25;margin:0 0 14px}.business-box p{color:#d7e2dd;margin:0}.business-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.business-list div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:14px;font-weight:800}.flow{background:#f5f7f4}.flow-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.flow-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.flow-card b{color:var(--green);font-size:14px}.flow-card h3{margin:8px 0 4px;font-size:18px;color:var(--dark)}.flow-card p{margin:0;color:var(--muted);font-size:13px}.faq{background:#fff}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.faq-item{border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff}.faq-item b{display:block;color:var(--dark);margin-bottom:6px}.faq-item p{margin:0;color:var(--muted);font-size:14px}.contact{background:var(--dark);color:#fff;padding:70px 0}.contact-grid{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center}.contact h2{font-size:38px;line-height:1.25;margin:0 0 12px}.contact p{margin:0;color:#d7e2dd}.contact-actions{display:grid;gap:10px;min-width:260px}.contact .btn{border-color:rgba(255,255,255,.24)}.footer{padding:28px 0;background:#11181a;color:#aeb9bd;font-size:13px}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.product-detail .detail-hero{background:#fff;padding:46px 0 62px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center}.detail-img{background:#f8faf8;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.detail-img img{width:100%;height:360px;object-fit:contain}.detail-copy h1{font-size:44px;line-height:1.15;margin:0 0 12px;color:var(--dark)}.detail-copy p{font-size:17px;color:var(--muted)}.detail-section{padding:54px 0}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.panel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px}.panel h2{font-size:24px;margin:0 0 12px;color:var(--dark)}.backlink{display:inline-flex;margin-bottom:18px;color:var(--green);font-weight:850}.note{font-size:13px;color:var(--muted)}
@media (max-width:1020px){.navlinks{display:none}.mobile-note{display:block;font-size:12px;color:var(--muted);font-weight:700}.hero-grid,.business-box,.detail-grid{grid-template-columns:1fr}.path-grid,.course-grid{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(2,1fr)}.audience-grid,.reason-grid{grid-template-columns:repeat(2,1fr)}.example-grid{grid-template-columns:repeat(3,1fr)}.flow-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:1fr}.support-grid,.faq-grid,.detail-columns{grid-template-columns:1fr}}
@media (max-width:560px){.wrap{padding:0 16px}.section{padding:54px 0}.nav{height:68px}.logo img{height:38px}.hero{padding:28px 0 56px}.hero-copy h1{font-size:37px}.hero-copy p{font-size:15px}.btn{width:100%}.hero-media .hero-img{height:210px}.hero-caption{grid-template-columns:1fr}.path-grid{margin-top:-22px}.product-grid,.audience-grid,.reason-grid,.example-grid,.flow-grid{grid-template-columns:1fr}.product-img{height:210px}.course-card,.support-card{padding:22px}.business-box{padding:26px}.business-list{grid-template-columns:1fr}.contact h2{font-size:30px}.detail-copy h1{font-size:34px}.detail-img img{height:260px}.section-head{display:block}}

.course-actions{display:grid;gap:8px;margin-top:auto;padding-top:20px}
.business-cta{margin-top:22px}
.business-cta .btn{border-color:var(--green)}
.contact-mail{margin-top:16px!important;font-weight:850;color:#fff!important}

.product-price{font-size:18px;font-weight:900;color:var(--dark);letter-spacing:-.01em;margin:0 0 10px}
.product-price::before{content:'価格 ';font-size:12px;font-weight:800;color:var(--muted);letter-spacing:.03em;margin-right:4px}
.detail-price{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;padding:8px 12px;border-radius:999px;background:var(--green2);color:#08763f;font-size:20px;font-weight:900}
.detail-price::before{content:'価格';font-size:12px;color:#08763f;font-weight:850}

.price-note{margin-top:16px;color:var(--muted);font-size:13px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px}.product-body .product-price{min-height:32px}.detail-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0}.meta-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px}.meta-box b{display:block;font-size:12px;color:var(--muted);margin-bottom:3px}.meta-box span{font-weight:900;color:var(--dark)}.detail-lead{font-size:18px;color:#3e4b50!important}.page-note{font-size:13px;color:var(--muted);margin-top:16px}.check-table{display:grid;gap:10px}.check-row{display:grid;grid-template-columns:160px 1fr;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.check-row b{color:var(--dark)}.check-row span{color:var(--muted)}.review-report{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;background:#0f1719;color:#d8eee4;border-radius:18px;padding:20px;font-size:13px;line-height:1.6}.legal-note{font-size:12px;color:#6b777b;margin-top:10px;line-height:1.7}.course-card p,.support-card p{line-height:1.85}.footer a{color:#fff}
@media(max-width:560px){.detail-meta{grid-template-columns:1fr}.check-row{grid-template-columns:1fr;gap:2px}.price-note{font-size:12px}.product-body .product-price{min-height:auto}}
