:root {
  color-scheme:light;
  --ink:#181818; --paper:#fff; --orange:#ff542e; --line:#bdbdbd; --dark-line:#6b6b6b;
  --gutter:clamp(24px,4.5vw,88px); --sans:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:20px;line-height:1.95;-webkit-font-smoothing:antialiased}
h1,h2,h3,p{margin:0}h1,h2,h3,strong{font-weight:700}h2{font-size:clamp(2rem,3.25vw,3rem);line-height:1.65;letter-spacing:-.04em;text-wrap:balance}
a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:6px}
img{display:block;max-width:100%}em{font-style:normal}button{cursor:pointer}.skip-link{position:fixed;top:-120px;left:24px;padding:12px 22px;z-index:100;background:var(--ink);color:#fff}.skip-link:focus{top:12px}
.site-header{position:relative;min-height:102px;padding:12px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:28px;background:#fff;z-index:20}
.brand{display:flex;align-items:center;flex-shrink:0}.brand img{width:174px;height:auto}.desktop-nav{display:flex;gap:28px;margin-left:auto;font-size:18px;font-weight:700;line-height:1.7;white-space:nowrap}
.desktop-nav a:hover{text-decoration:underline;text-underline-offset:6px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:64px;border:1px solid var(--ink);padding:18px 24px;background:var(--ink);color:#fff;font-size:20px;line-height:1.4;font-weight:700;transition:background .18s,color .18s}
.button:hover{background:#fff;color:var(--ink)}.button-small{font-size:18px;min-height:56px;padding:15px 22px;white-space:nowrap}.menu-toggle,.mobile-menu{display:none}
.section{padding:96px max(var(--gutter),calc((100vw - 1320px)/2))}.section-label{display:flex;gap:20px;align-items:flex-start;margin-bottom:56px;font-size:28px;line-height:1.5;font-weight:700;letter-spacing:-.025em}
.section-label>span{display:block;flex-shrink:0;font-size:16px;line-height:1.8;font-weight:400;letter-spacing:0;border-top:2px solid currentColor;min-width:28px;padding-top:4px;margin-top:4px}
/* The corporate HP's orange, black typography and full-width hero. */
.hero{display:grid;grid-template-columns:1.32fr .68fr;gap:6%;padding:52px max(var(--gutter),calc((100vw - 1320px)/2)) 62px;background:var(--orange);color:var(--ink)}
.hero-copy{min-width:0}.hero-eyebrow{display:flex;align-items:center;gap:18px;font-size:16px;font-weight:700;line-height:1.65;flex-wrap:wrap}.limited-badge{background:var(--ink);color:#fff;padding:5px 14px;font-size:16px;white-space:nowrap}
.hero h1{font-size:clamp(2.1rem,5.7vw,6rem);font-weight:700;line-height:1.4;letter-spacing:-.05em;margin:42px 0 34px}.hero h1 span{display:block;white-space:nowrap}
.hero-description{font-size:20px;line-height:1.95}.hero-cta{margin-top:32px;min-width:290px}.hero-note{font-size:14px;line-height:1.8;margin-top:18px}
.hero-offer{align-self:center;border-left:1px solid var(--ink);padding:22px 0 25px 12%;min-width:0}.offer-label{font-size:22px;font-weight:700}.price-caption{font-size:16px;margin-top:12px;line-height:1.8}.price{display:flex;align-items:baseline;line-height:1;margin:14px 0 22px;white-space:nowrap}.price-prefix{font-size:20px;align-self:center;margin-right:8px}.price strong{font-family:Arial,sans-serif;font-size:clamp(150px,18vw,250px);font-weight:700;line-height:.98;letter-spacing:-.07em;margin-right:15px}.yen{font-size:48px;font-weight:700}.price-meta{display:flex;justify-content:space-between;gap:15px;font-size:16px;padding:17px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);line-height:1.6}.offer-note{font-size:16px;line-height:1.9;margin-top:20px}
/* Large, legible content chapters, matching the corporate HP. */
.intro{background:var(--ink);color:#fff}.intro-layout{display:grid;grid-template-columns:.92fr 1.12fr;gap:7%;align-items:start}.intro h2{line-height:1.65}.intro em{color:var(--orange)}.intro-text p{font-size:20px;line-height:1.95}.intro-text p+p{margin-top:30px}.intro-text .lead{font-size:23px;font-weight:700;line-height:1.9}
.section-heading{display:grid;grid-template-columns:.92fr 1.12fr;gap:7%;align-items:end;margin-bottom:56px}.section-heading>p{font-size:20px;line-height:1.95}
.possibilities{background:#fff;border-bottom:1px solid var(--line)}

.program-list{list-style:none;margin:0;padding:0}.program-list>li:not(.break-row){display:grid;grid-template-columns:100px 1fr 90px;gap:40px;padding:38px 0;border-top:1px solid var(--line)}.program-list>li:last-child{border-bottom:1px solid var(--line)}.step-index{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.step-index>span{font-size:14px;margin-bottom:8px}.step-index strong{font-family:Arial,sans-serif;font-size:54px;letter-spacing:-.05em}.step-body h3{font-size:24px;line-height:1.65;margin-bottom:20px}.step-body p{font-size:20px;line-height:1.95}.step-point{display:block;font-size:16px;font-weight:700;margin-top:23px}.step-time{font-family:Arial,sans-serif;font-size:38px;font-weight:700;line-height:1.25;justify-self:end}.step-time>span{display:block;text-align:right;font-family:var(--sans);font-size:14px;font-weight:400;margin-top:4px}.break-row{padding:13px;text-align:center;border-top:1px solid var(--line);font-size:16px;background:#f2f2f2}.program-note{font-size:14px;margin-top:24px;text-align:right}
.takeaway{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.takeaway-copy .section-label{margin-bottom:36px}.takeaway-copy>p{font-size:20px;margin-top:26px}.takeaway-sheet{border:1px solid var(--ink);padding:32px 36px;background:#fff}.sheet-heading{display:flex;align-items:center;justify-content:space-between;font-size:14px;line-height:1.7;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:26px}.sheet-heading>span:last-child{font-family:Arial,sans-serif;font-weight:700;font-size:20px}.takeaway-sheet h3{font-size:26px;line-height:1.5}.sheet-caption{font-size:16px;margin-top:10px}.takeaway-sheet ol{list-style:none;padding:0;margin:22px 0 0}.takeaway-sheet li{display:flex;gap:16px;border-bottom:1px solid var(--line);padding:19px 0;font-size:17px;line-height:1.9}.takeaway-sheet li>span{font-size:14px;align-self:center}.sheet-bottom{font-size:14px;text-align:right;margin-top:23px}
.reason{display:grid;grid-template-columns:.8fr 1.2fr;gap:7%;background:var(--orange);align-items:center}.reason-number{text-align:center;border-right:1px solid var(--ink);padding-right:45px}.reason-number>span{font-size:18px;font-weight:700}.reason-number>div{display:flex;align-items:baseline;justify-content:center;line-height:1;margin:16px 0 20px}.reason-number strong{font-family:Arial,sans-serif;font-size:250px;line-height:.95;letter-spacing:-.075em}.reason-number>div>span{font-size:54px;margin-left:20px;font-weight:700}.reason-number>p{font-size:18px}.reason-copy .section-label{font-size:24px;margin-bottom:32px}.reason-copy h2{font-size:clamp(2rem,3vw,2.8rem)}.reason-copy>p{font-size:20px;line-height:1.95;margin-top:25px}
.details-section{background:#fff}.details-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:7%}.details-lead{font-size:20px;line-height:1.95;margin-top:28px}.details-table{margin:0}.details-table>div{display:grid;grid-template-columns:120px 1fr;gap:28px;border-top:1px solid var(--line);padding:23px 0;font-size:18px;line-height:1.9}.details-table>div:last-child{border-bottom:1px solid var(--line)}.details-table dt{font-size:17px;font-weight:700}.details-table dd{margin:0}.price-detail strong{font-size:38px;margin-left:8px;line-height:1.4}.price-detail small{display:block;font-size:14px;line-height:1.8;margin-top:8px}
.flow-section{border-top:1px solid var(--line);background:#fff}.flow-list{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;list-style:none;padding:0;margin:48px 0 0}.flow-list>li{border-top:1px solid var(--ink);padding-top:24px}.flow-list>li>span{font-family:Arial,sans-serif;font-size:28px;font-weight:700}.flow-list h3{font-size:23px;line-height:1.65;margin:18px 0 20px}.flow-list p{font-size:19px;line-height:1.95}
.faq-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:7%;border-top:1px solid var(--line)}.faq-heading .section-label{margin-bottom:36px}.faq-heading h2{font-size:clamp(1.9rem,3vw,2.7rem)}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;gap:15px;align-items:center;padding:26px 0;font-size:18px;font-weight:700;line-height:1.8;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.q{font-family:Arial,sans-serif;font-size:20px;align-self:flex-start;padding-top:2px}.faq-icon{width:20px;height:20px;min-width:20px;position:relative;margin-left:auto}.faq-icon::before,.faq-icon::after{content:'';position:absolute;top:9px;left:2px;width:16px;height:2px;background:var(--ink)}.faq-icon::after{transform:rotate(90deg)}details[open] .faq-icon::after{transform:rotate(0)}.faq-answer{padding:0 35px 27px;font-size:18px;line-height:1.95}
.apply-section{background:var(--orange);color:var(--ink)}.apply-section .section-label{margin-bottom:42px}.apply-section h2{font-size:clamp(2rem,4.35vw,4rem);line-height:1.55;letter-spacing:-.04em}.apply-section>p{font-size:22px;line-height:1.95;margin-top:30px}.apply-facts{display:flex;align-items:center;flex-wrap:wrap;gap:28px;margin:28px 0 32px;font-size:19px;font-weight:700}.apply-facts>span+span{border-left:1px solid var(--ink);padding-left:28px}.apply-facts strong{font-family:Arial,var(--sans);font-size:46px;line-height:1.3;margin-left:10px;vertical-align:middle}.apply-section .mail-entry{min-width:365px}.apply-section .apply-note{font-size:14px;line-height:1.8;margin-top:18px}.email-alternative{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;margin-top:20px;font-size:16px;line-height:1.7}.email-alternative>a{text-decoration:underline;text-underline-offset:5px}.email-alternative button{font-size:14px;color:var(--ink);background:transparent;border:1px solid var(--ink);padding:7px 12px}.email-alternative button:hover{background:#fff}#copy-status:not(:empty){width:100%;font-weight:700}
.site-footer{padding:40px var(--gutter);display:grid;grid-template-columns:.7fr 1.8fr 1fr;gap:35px;align-items:start;background:#fff}.footer-logo img{width:160px;height:auto}.site-footer strong{font-size:18px}.site-footer p{font-size:14px;line-height:1.9;margin:9px 0}.site-footer a:not(.footer-logo){font-size:16px}.site-footer small{font-size:14px;justify-self:end;padding-top:8px}.mobile-entry{display:none}
@media(max-width:1100px){
 .desktop-nav{font-size:15px;gap:15px}.site-header{gap:20px}.brand img{width:155px}.button-small{font-size:16px;padding:15px 19px}.hero{gap:4%;grid-template-columns:1.33fr .67fr}.hero h1{font-size:clamp(2.1rem,5.4vw,4.7rem)}.hero-description{font-size:18px}.hero-eyebrow{font-size:14px;gap:12px}.limited-badge{font-size:14px}.hero-offer{padding-left:10%}.price strong{font-size:clamp(140px,18vw,205px)}.yen{font-size:38px}.price-prefix{font-size:18px}.price-meta{font-size:14px;gap:8px}.price-caption,.offer-note{font-size:14px}.offer-label{font-size:20px}
 .intro-layout,.section-heading,.takeaway,.reason,.details-layout,.faq-section{gap:40px}.intro-text .lead{font-size:21px}.program-list>li:not(.break-row){grid-template-columns:75px 1fr 65px;gap:30px}.step-body h3{font-size:23px}.reason-number{padding-right:30px}.reason-number strong{font-size:200px}.reason-number>p{font-size:16px}.details-table>div{grid-template-columns:95px 1fr;gap:20px}.flow-list{gap:30px}.faq-section{grid-template-columns:.65fr 1.35fr}.section-label{font-size:25px}
}
@media(max-width:950px){
 .desktop-nav{display:none}.header-cta{margin-left:auto}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:40px;height:44px;padding:6px;background:transparent;border:0}.menu-toggle span{display:block;width:26px;height:2px;background:var(--ink)}.mobile-menu:not([hidden]){position:absolute;top:100%;left:0;right:0;display:flex;flex-direction:column;gap:17px;background:#fff;border-bottom:1px solid var(--ink);padding:22px var(--gutter) 30px;font-size:18px;font-weight:700}
}
@media(max-width:760px){
 :root{--gutter:24px}body{font-size:20px}html{scroll-padding-top:18px}h2{font-size:30px;line-height:1.65}.section{padding:56px var(--gutter)}.section-label{font-size:23px;gap:16px;line-height:1.55;margin-bottom:36px}.section-label>span{font-size:14px;min-width:25px;margin-top:4px;padding-top:3px}.site-header{min-height:82px;padding:10px var(--gutter);gap:14px}.brand img{width:135px}.header-cta{font-size:14px;padding:12px 14px;min-height:48px}.button{font-size:18px;min-height:60px;padding:17px 20px}
 .hero{display:block;padding:36px var(--gutter) 44px}.hero-eyebrow{gap:12px;font-size:14px}.limited-badge{font-size:14px}.hero h1{font-size:clamp(1.875rem,8.5vw,3.5rem);line-height:1.55;letter-spacing:-.065em;margin:32px 0 24px}.hero-description{font-size:18px;line-height:1.95}.hero-cta{margin-top:26px;min-width:0;width:100%}.hero-note{font-size:14px;margin-top:14px}.hero-offer{border-left:0;border-top:1px solid var(--ink);padding:29px 0 0;margin-top:34px;display:grid;grid-template-columns:1fr 1fr;gap:0 20px;align-items:center}.offer-label{grid-column:1;font-size:18px}.price-caption{grid-column:1;font-size:14px;margin-top:8px}.price{grid-column:2;grid-row:1/3;justify-self:end;margin:0 0 10px}.price strong{font-size:116px;margin-right:10px}.price-prefix{font-size:16px}.yen{font-size:30px}.price-meta{grid-column:1/3;font-size:16px;justify-content:flex-start;gap:28px;padding:15px 0}.offer-note{grid-column:1/3;font-size:16px;margin-top:16px}.offer-note br{display:none}
 .intro-layout,.section-heading,.takeaway,.reason,.details-layout,.faq-section{grid-template-columns:1fr;gap:32px}.intro h2{font-size:30px;line-height:1.65}.intro h2 br:nth-of-type(2){display:none}.intro-text p,.intro-text .lead{font-size:20px}.intro-text p+p{margin-top:25px}.intro-text br{display:none}.section-heading{margin-bottom:34px;gap:24px}.section-heading>p{font-size:20px}.section-heading>p br{display:none}

 .program-list>li:not(.break-row){grid-template-columns:44px 1fr;gap:16px;padding:30px 0;position:relative}.step-index>span{font-size:11px;margin-bottom:7px}.step-index strong{font-size:36px}.step-body h3{font-size:22px;line-height:1.65;padding-right:28px;margin-bottom:17px}.step-body p{font-size:19px}.step-point{font-size:16px;line-height:1.85;margin-top:20px}.step-time{position:absolute;top:33px;right:0;font-size:23px;line-height:1.2}.step-time>span{font-size:11px}.break-row{font-size:14px;padding:12px}.program-note{font-size:14px;text-align:left}
 .takeaway-copy>p{font-size:20px;margin-top:23px}.takeaway-copy>p br{display:none}.takeaway-sheet{padding:27px 23px}.sheet-heading{font-size:12px;padding-bottom:17px;margin-bottom:23px}.sheet-heading>span:last-child{font-size:18px}.takeaway-sheet h3{font-size:24px}.sheet-caption{font-size:14px}.takeaway-sheet li{font-size:16px;gap:13px;padding:17px 0}.takeaway-sheet li>span{font-size:12px}.sheet-bottom{font-size:13px}
 .reason-number{border-right:0;border-bottom:1px solid var(--ink);padding:0 0 32px}.reason-number>span{font-size:18px}.reason-number strong{font-size:180px}.reason-number>div{margin:15px 0 18px}.reason-number>div>span{font-size:42px}.reason-number>p{font-size:16px}.reason-copy .section-label{font-size:23px;margin-bottom:30px}.reason-copy h2{font-size:30px}.reason-copy>p{font-size:20px}.reason-copy>p br{display:none}
 .details-lead{font-size:20px;margin-top:23px}.details-table>div{grid-template-columns:90px 1fr;gap:16px;font-size:17px;padding:21px 0}.details-table dt{font-size:16px}.price-detail strong{font-size:34px}.price-detail small{font-size:14px}.flow-list{grid-template-columns:1fr;gap:32px;margin-top:32px}.flow-list>li{display:grid;grid-template-columns:32px 1fr;gap:0 18px;padding-top:24px}.flow-list>li>span{grid-row:1/3;font-size:23px;padding-top:2px}.flow-list h3{font-size:22px;margin:0 0 17px}.flow-list p{font-size:20px}
 .faq-heading h2{font-size:30px}.faq-heading .section-label{margin-bottom:30px}.faq-list summary{font-size:18px;gap:12px;padding:25px 0;line-height:1.85}.faq-answer{font-size:18px;line-height:1.95;padding:0 0 25px 30px}.q{font-size:19px}.faq-icon{width:16px;min-width:16px}.faq-icon::before,.faq-icon::after{width:14px}
 .apply-section .section-label{margin-bottom:32px}.apply-section h2{font-size:clamp(1.875rem,6.5vw,2.6rem);line-height:1.65}.apply-section>p{font-size:20px;margin-top:25px}.apply-section>p br{display:none}.apply-facts{gap:14px;font-size:16px;margin:25px 0}.apply-facts>span+span{padding-left:14px}.apply-facts>span:first-child{width:100%}.apply-facts>span:nth-child(2){border-left:0;padding:0}.apply-facts strong{font-size:44px}.apply-section .mail-entry{min-width:0;width:100%;font-size:17px}.apply-section .apply-note{font-size:14px}.email-alternative{font-size:16px;gap:14px}.email-alternative button{font-size:14px}
 .site-footer{grid-template-columns:1fr;gap:24px;padding:32px var(--gutter) 122px}.footer-logo img{width:145px}.site-footer p{font-size:14px}.site-footer small{justify-self:start;font-size:13px}.mobile-entry{display:flex;position:fixed;z-index:19;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--ink);padding:10px 20px calc(10px + env(safe-area-inset-bottom));align-items:center;justify-content:space-between;gap:12px}.mobile-entry>div{display:flex;align-items:center;gap:10px}.mobile-entry>div>span{font-size:11px;line-height:1.45;max-width:45px}.mobile-entry strong{font-family:Arial,var(--sans);font-size:34px;line-height:1}.mobile-entry strong>span{font-size:19px;margin-left:3px}.mobile-entry .button{font-size:15px;min-height:48px;padding:13px 17px}
}
@media(max-width:380px){.site-header{padding-left:18px;padding-right:18px;gap:10px}.brand img{width:112px}.header-cta{font-size:12px;padding:12px 10px}.menu-toggle{width:28px;padding:2px;flex-shrink:0}.hero-offer{gap:0 12px}.price strong{font-size:98px;margin-right:8px}.price-prefix{font-size:14px}.yen{font-size:25px}.offer-label{font-size:16px}.price-caption{font-size:13px}.mobile-entry{padding-left:16px;padding-right:16px;gap:10px}.mobile-entry .button{font-size:13px;padding:13px 14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(min-width:381px) and (max-width:760px){.site-header{gap:10px}.brand img{width:120px}.site-header .header-cta{font-size:14px;min-height:48px;padding:12px}.menu-toggle{width:32px;flex-shrink:0;padding:3px}}

/* Show the breadth of the experience without hiding themes behind tabs. */
.experience-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 6%;list-style:none;padding:0;margin:0}
.experience-grid>li{min-width:0;border-top:1px solid var(--ink);padding:30px 0 38px}
.experience-label{display:flex;align-items:center;gap:16px;font-size:16px;font-weight:700;line-height:1.7;margin-bottom:20px}
.experience-label>span{font-family:Arial,sans-serif;font-size:16px;font-weight:400;color:var(--orange)}
.experience-grid h3{font-size:clamp(1.5rem,2.15vw,2rem);line-height:1.65;letter-spacing:-.03em}
.experience-grid p{font-size:20px;line-height:1.95;margin-top:20px}
.experience-note{border-top:1px solid var(--line);padding-top:22px;font-size:14px;line-height:1.9}
@media(max-width:760px){.experience-grid{grid-template-columns:1fr}.experience-grid>li{padding:25px 0 30px}.experience-label{font-size:15px;margin-bottom:18px}.experience-grid h3{font-size:24px}.experience-grid p{font-size:19px;margin-top:18px}}
