/* cohesion-r5: this sheet is the "legacy" layer — site/shared/cohesion-r5.css (unlayered, loaded last) sets the shared
   rails, rhythm and type roles over it. */
@layer legacy{
/* JET School LP V2 — Stage 2 / 3 sections (imagegen-master-20261104/briefs/STAGE-2.md, STAGE-3.md).
   Each block follows its own GPT Image draft (designs/*.png, a 390px phone basis): phone lengths are px of that basis
   × --u; the desktop (1040px and up) is an adaptation (no desktop drafts). Loaded last: it overrides the older chapter
   rules of lp.css / a.css / b.css / editorial.css for the chapters it covers. Words, numbers, links and real pictures
   come from the generator (wire and current LP), never from the drafts. */

/* ---------- shared: the faint English label of the wire (Reason / Service / Support / Why JET) ---------- */
.sec-en{display:block;font-family:'Barlow Condensed',var(--jp);font-weight:700;line-height:1;letter-spacing:.01em;color:#ddf0f3;transform:skewX(-10deg);transform-origin:0 100%;pointer-events:none;user-select:none}
.ic{display:block;width:100%;height:100%}

/* =====================================================================================================================
   A-04 理由6つ (A-reason-01 … 06): one head for all six as in 01 — the large slanted number left, the two-line claim right,
   one accent per claim, a short orange rule under it
   ===================================================================================================================== */
.a-reasons{padding:calc(28 * var(--u)) var(--pad) calc(40 * var(--u));background:#fff}
.a-reasons>.sec-head--reason{position:relative;display:flex;align-items:center;gap:calc(10 * var(--u));margin:0 0 calc(22 * var(--u));padding:0 0 0 calc(10 * var(--u));border:0}
.a-reasons>.sec-head--reason::before{content:'';position:absolute;left:0;top:12%;bottom:12%;width:calc(2.4 * var(--u));background:var(--teal)}
.a-reasons>.sec-head--reason h2{font-size:calc(15.5 * var(--u));font-weight:800;line-height:1.4;letter-spacing:.02em;color:var(--ink)}
.a-reasons>.sec-head--reason .sec-en{font-size:calc(17 * var(--u));color:#bfe6ec}
.a-reasons .reason{display:block;padding:0;margin:0 0 calc(54 * var(--u));border:0}
.a-reasons .reason:last-child{margin-bottom:0}
.r-top{display:grid;grid-template-columns:calc(79 * var(--u)) minmax(0,1fr);align-items:start}
.r-no{margin:calc(-8 * var(--u)) 0 0 calc(-6 * var(--u));font-family:'Barlow Condensed',var(--jp);font-size:calc(92 * var(--u));font-weight:700;line-height:1;letter-spacing:-.01em;color:#d3edf1;transform:skewX(-11deg);transform-origin:0 100%}
.a-reasons .reason .r-top h3{margin:0;font-size:calc(20.6 * var(--u));font-weight:900;line-height:1.45;letter-spacing:.01em;color:var(--ink);font-feature-settings:'palt';white-space:nowrap}
.a-reasons .reason .r-top h3 em{font-size:1em;font-weight:900;color:var(--teal)}
.a-reasons .reason .r-top h3 .p{font-size:.84em;font-weight:900}
.a-reasons .reason .r-top h3 .num{font-size:1.32em;letter-spacing:-.02em}
.a-reasons .reason .r-top h3::after{content:'';display:block;width:calc(35 * var(--u));height:calc(2.6 * var(--u));margin-top:calc(7 * var(--u));background:var(--orange)}
.a-reasons .reason--loop .r-top h3 em{color:var(--orange)}
.a-reasons .reason--ways .r-top h3::after{display:none}
.a-reasons .reason--ways .r-top h3 em{position:relative;display:inline-block}
.a-reasons .swash{position:absolute;left:-2%;right:-4%;bottom:calc(-5 * var(--u));width:auto;height:calc(7 * var(--u));color:var(--orange)}
.a-reasons .reason--market .r-top h3 em{font-size:1.28em;letter-spacing:-.01em;white-space:nowrap}
.a-reasons .reason--market .r-top h3 em small{font-size:.66em}

/* 01: the four teachers at one size (photo, name, course), then the real lesson on a tablet → your video → their comment */
.r01-teachers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(2 * var(--u));margin:calc(16 * var(--u)) calc(-1 * var(--pad)) 0}
.r01-teachers .t-photo{aspect-ratio:97/132;border-radius:0;background:#eef3f4}
.r01-teachers .t-photo img{transform:none;object-fit:cover;object-position:var(--ox,50%) 0}
.r01-teachers .t-photo--mctaka{--ox:46%}
.r01-teachers .t-photo--kishida{--ox:40%}
.r01-teachers .t-photo--nanase{--ox:52%}
.r01-teachers .t-photo--asu{--ox:30%}
.r01-teachers p{margin-top:calc(5 * var(--u));text-align:center;line-height:1.3}
.r01-teachers p b{display:block;font-size:calc(14 * var(--u));font-weight:900;letter-spacing:.02em;color:var(--ink)}
.r01-teachers p span{display:block;margin-top:calc(2 * var(--u));font-size:max(9px,calc(9.6 * var(--u)));font-weight:700;color:var(--cyan-t);letter-spacing:0}
.r01-flow{position:relative;display:grid;grid-template-columns:calc(212 * var(--u)) minmax(0,1fr);column-gap:calc(6 * var(--u));margin-top:calc(14 * var(--u))}
.r01-tablet{grid-row:1 / span 2;align-self:start;margin:0;padding:calc(4 * var(--u));background:#1b2224;border-radius:calc(10 * var(--u));box-shadow:0 0 0 1px #3a4447 inset,0 calc(4 * var(--u)) calc(10 * var(--u)) rgba(20,40,46,.22)}
.r01-tablet img{display:block;width:100%;height:auto;border-radius:calc(3 * var(--u))}
.r01-steps{position:relative;height:calc(104 * var(--u));margin-top:calc(16 * var(--u))}
.r01-you,.r01-cmt{position:absolute;display:flex;align-items:center;gap:calc(7 * var(--u));height:calc(32 * var(--u));margin:0;padding:0 calc(8 * var(--u));border-radius:calc(9 * var(--u));font-size:calc(13.2 * var(--u));font-weight:900;line-height:1.2;letter-spacing:.01em;color:var(--ink);white-space:nowrap;font-feature-settings:'palt'}
.r01-you{left:0;top:0;width:calc(140 * var(--u));background:#e2f5f8}
.r01-cmt{left:calc(8 * var(--u));top:calc(71 * var(--u));width:calc(139 * var(--u));background:#e6f6ec}
.r01-cmt em{color:var(--teal)}
.r01-you .ic-film{flex:none;width:calc(28 * var(--u));height:auto}
.r01-cmt .ic-chat{flex:none;width:calc(24 * var(--u));height:auto}
.r01-line::before,.r01-line::after{content:'';position:absolute;border:0 solid #2fb4c1}
.r01-line::before{left:calc(-6 * var(--u));top:calc(32 * var(--u));width:calc(76 * var(--u));height:calc(11 * var(--u));border-right-width:2px;border-bottom-width:2px;border-bottom-right-radius:3px}
.r01-line::after{left:calc(-6 * var(--u));top:calc(43 * var(--u));width:calc(12 * var(--u));height:calc(44 * var(--u));border-left-width:2px;border-bottom-width:2px;border-bottom-left-radius:3px}
.r01-cmt::before{content:'';position:absolute;left:calc(-3 * var(--u));top:50%;margin-top:calc(-4 * var(--u));border:calc(4 * var(--u)) solid transparent;border-right:0;border-left:calc(5.5 * var(--u)) solid #2fb4c1}
.r01-note{grid-column:2;align-self:end;margin:0;text-align:right;font-size:max(10px,calc(10.5 * var(--u)));color:var(--faint)}

/* 02: the ring with the three stations, 伸びる型が身につく at its centre */
.r02-cycle{position:relative;height:calc(322 * var(--u));margin:calc(14 * var(--u)) calc(-1 * var(--pad)) 0}
.r02-ring{position:absolute;left:calc(66 * var(--u));top:calc(61 * var(--u));width:calc(260 * var(--u));height:calc(260 * var(--u))}
.r02-st{position:absolute;display:flex;flex-direction:column;align-items:center;text-align:center}
.r02-pill{display:flex;align-items:baseline;gap:calc(7 * var(--u));margin:0;padding:calc(3 * var(--u)) calc(15 * var(--u)) calc(4 * var(--u));border-radius:999px;background:#e3f5f8;font-size:calc(17 * var(--u));font-weight:900;line-height:1.2;color:var(--ink);white-space:nowrap}
.r02-pill b{display:inline-block;font-family:'Barlow Condensed',var(--jp);font-size:calc(19 * var(--u));font-weight:700;color:var(--teal);transform:skewX(-10deg)}
.r02-sub{margin-top:calc(3 * var(--u));font-size:calc(12.4 * var(--u));font-weight:700;line-height:1.3;color:var(--ink);white-space:nowrap}
.r02-pic{position:relative;display:block;margin-top:calc(5 * var(--u));overflow:hidden;background:#fff}
.r02-pic img{display:block;width:100%;height:100%;object-fit:cover}
.r02-pic small{position:absolute;right:calc(4 * var(--u));bottom:calc(3 * var(--u));padding:0 calc(4 * var(--u));border-radius:2px;background:rgba(255,255,255,.9);font-size:max(9px,calc(9 * var(--u)));line-height:1.5;color:var(--muted)}
.r02-st--1{left:calc(112 * var(--u));top:0;width:calc(166 * var(--u))}
.r02-pic--lesson{width:calc(166 * var(--u));height:calc(93 * var(--u));border-radius:calc(3 * var(--u));box-shadow:0 0 0 1px rgba(20,48,56,.08),0 calc(4 * var(--u)) calc(10 * var(--u)) rgba(20,48,56,.16)}
.r02-st--2{left:calc(17 * var(--u));top:calc(162 * var(--u));width:calc(150 * var(--u))}
.r02-pic--make{width:calc(150 * var(--u));height:calc(94 * var(--u));border-radius:calc(4 * var(--u));box-shadow:0 calc(3 * var(--u)) calc(8 * var(--u)) rgba(20,48,56,.18)}
.r02-pic--make img{object-position:40% 50%}
.r02-st--3{left:calc(233 * var(--u));top:calc(162 * var(--u));width:calc(140 * var(--u))}
.r02-pic--ui{width:calc(140 * var(--u));height:calc(80 * var(--u));overflow:visible;background:transparent}
.r02-pic--ui small{right:0;bottom:calc(-13 * var(--u));background:none}
.r02-ui{display:block;width:100%;height:100%}
.r02-core{position:absolute;left:calc(126 * var(--u));top:calc(168 * var(--u));width:calc(140 * var(--u));margin:0;text-align:center;font-size:calc(21 * var(--u));font-weight:900;line-height:1.28;color:var(--ink);font-feature-settings:'palt'}
.r02-core::after{content:'';display:block;width:calc(64 * var(--u));height:calc(9 * var(--u));margin:calc(4 * var(--u)) auto 0;border-radius:50%;border-top:calc(2.4 * var(--u)) solid #49c3d0}
.r02-spark{position:absolute;left:50%;top:calc(-17 * var(--u));width:calc(26 * var(--u));height:calc(12 * var(--u));transform:translateX(-50%);background:linear-gradient(var(--orange),var(--orange)) 50% 0/calc(2.2 * var(--u)) calc(9 * var(--u)) no-repeat,linear-gradient(var(--orange),var(--orange)) 4% 70%/calc(2.2 * var(--u)) calc(7 * var(--u)) no-repeat,linear-gradient(var(--orange),var(--orange)) 96% 70%/calc(2.2 * var(--u)) calc(7 * var(--u)) no-repeat}

/* 03: the three activity pictures overlapping (the liver in front), the three ways as joined pills */
.r03-pics{position:relative;height:calc(212 * var(--u));margin:calc(18 * var(--u)) calc(-1 * var(--pad)) 0}
.r03-pic{position:absolute;overflow:hidden;border-radius:calc(6 * var(--u));background:#eef3f4}
.r03-pic img{display:block;width:100%;height:100%;object-fit:cover}
.r03-pic--creator{left:calc(9 * var(--u));top:calc(18 * var(--u));width:calc(116 * var(--u));height:calc(189 * var(--u));z-index:1}
.r03-pic--creator img{object-position:32% 50%}
.r03-pic--liver{left:calc(122 * var(--u));top:0;width:calc(142 * var(--u));height:calc(210 * var(--u));z-index:2;box-shadow:0 calc(5 * var(--u)) calc(14 * var(--u)) rgba(20,40,46,.28)}
.r03-pic--liver img{object-position:42% 30%}
.r03-pic--commercer{left:calc(259 * var(--u));top:calc(15 * var(--u));width:calc(123 * var(--u));height:calc(190 * var(--u));z-index:1}
.r03-pic--commercer img{object-position:70% 50%}
.r03-ways{position:relative;display:flex;justify-content:space-between;margin-top:calc(12 * var(--u))}
.r03-ways::before{content:'';position:absolute;left:10%;right:10%;top:50%;height:2px;margin-top:-1px;background:var(--teal)}
.r03-ways li{position:relative;display:grid;place-items:center;width:calc(100 * var(--u));height:calc(26 * var(--u));border-radius:999px;background:#0e9aa7;color:#fff;font-size:calc(14 * var(--u));font-weight:900;letter-spacing:.04em}
.r03-ways li:nth-child(2){width:calc(95 * var(--u))}
.r03-note{margin-top:calc(14 * var(--u));text-align:center;font-size:max(10.5px,calc(11 * var(--u)));font-weight:700;color:var(--ink)}

/* 04 (A-reason-04-r3): 監修 / 指導 / 伴走 in one column of equal tags joined by a line; 監修 names 元TikTok LIVE アジア統括 */
.r04-org{position:relative;margin-top:calc(18 * var(--u));border-top:1.5px solid #c9ecf1}
.r04-row{position:relative;display:flex;align-items:center;gap:calc(14 * var(--u));margin:0;padding:calc(19 * var(--u)) 0 calc(15 * var(--u));font-size:calc(37 * var(--u));font-weight:900;line-height:1.05;letter-spacing:.01em;color:var(--ink);white-space:nowrap;font-feature-settings:'palt'}
.r04-row::after{content:'';position:absolute;left:calc(45 * var(--u));right:calc(-4 * var(--u));bottom:0;height:1.5px;background:#c9ecf1}
.r04-row+.r04-row::before{content:'';position:absolute;left:calc(36.5 * var(--u) - 1px);top:calc(-15 * var(--u));width:2px;height:calc(34 * var(--u));background:#0e9aa7}
.r04-row span{flex:none;display:grid;place-items:center;width:calc(73 * var(--u));height:calc(35 * var(--u));background:#0e9aa7;color:#fff;font-size:calc(19.5 * var(--u));letter-spacing:.06em}
.r04-row--sup{font-size:calc(23.6 * var(--u))}

/* 05: the figure in the claim, its time line, the two bars from the numbers (2,375 : 3,468) and the growth tag */
.r05-when{margin:calc(8 * var(--u)) 0 0 calc(79 * var(--u));font-size:max(10px,calc(10.5 * var(--u)));line-height:1.55;color:var(--muted)}
.r05-chart{margin:calc(16 * var(--u)) 0 0;padding:calc(16 * var(--u)) calc(16 * var(--u)) calc(34 * var(--u));background:#e9f6f9;border-radius:calc(12 * var(--u))}
.r05-chart figcaption{display:flex;align-items:baseline;flex-wrap:wrap;gap:calc(4 * var(--u)) calc(10 * var(--u))}
.r05-chart figcaption b{position:relative;padding-left:calc(10 * var(--u));font-size:calc(15.5 * var(--u));font-weight:900;color:var(--ink)}
.r05-chart figcaption b::before{content:'';position:absolute;left:0;top:10%;bottom:10%;width:calc(3.2 * var(--u));border-radius:2px;background:var(--teal)}
.r05-chart figcaption small{font-size:max(10px,calc(10.5 * var(--u)));color:var(--muted)}
.r05-bars{position:relative;display:flex;align-items:flex-end;justify-content:space-around;height:calc(122 * var(--u));margin-top:calc(42 * var(--u));border-bottom:1px solid #9fb4b8}
.r05-bar{position:relative;width:calc(94 * var(--u));height:var(--h);background:#0fa9b5}
.r05-bar--24{background:#8fd7df}
.r05-bar span{position:absolute;left:50%;bottom:calc(100% + 4 * var(--u));transform:translateX(-50%);font-size:calc(11 * var(--u));font-weight:800;color:var(--ink);white-space:nowrap}
.r05-bar span b{font-size:calc(19 * var(--u));font-weight:900;letter-spacing:-.01em}
.r05-bar i{position:absolute;left:50%;top:calc(100% + 6 * var(--u));transform:translateX(-50%);font-size:calc(13.5 * var(--u));font-weight:800;color:var(--ink);white-space:nowrap}
.r05-up{position:absolute;left:43%;top:calc(-12 * var(--u));transform:translateX(-50%);margin:0;padding:calc(3 * var(--u)) calc(11 * var(--u));border-radius:calc(9 * var(--u));background:var(--orange);color:#fff;font-size:calc(17 * var(--u));font-weight:900;line-height:1.2;white-space:nowrap}
.r05-arrow{position:absolute;left:calc(118 * var(--u));top:calc(10 * var(--u));width:calc(70 * var(--u));height:calc(35 * var(--u))}
.r05-up::after{content:'';position:absolute;right:calc(12 * var(--u));bottom:calc(-6 * var(--u));border:calc(4 * var(--u)) solid transparent;border-top:calc(6 * var(--u)) solid var(--orange);border-bottom:0}
.a-reasons .reason--market>.note{margin-top:calc(10 * var(--u))}

/* 06: the event photo across, its caption on a rule */
.a-reasons .reason--event .event-photo{margin:calc(16 * var(--u)) calc(-1 * var(--pad)) 0}
.a-reasons .reason--event .event-photo img{display:block;width:100%;aspect-ratio:384/212;object-fit:cover;border-radius:0}
.a-reasons .reason--event .event-photo figcaption{display:flex;align-items:center;gap:calc(10 * var(--u));margin:calc(9 * var(--u)) var(--pad) 0;font-size:max(11px,calc(11.5 * var(--u)));font-weight:500;color:var(--ink)}
.a-reasons .reason--event .event-photo figcaption::after{content:'';flex:1;height:2px;background:var(--teal)}

/* =====================================================================================================================
   A-06 3つのサービス (shared-lecture-wall / shared-chat-support / shared-live-lecture)
   ===================================================================================================================== */
.a-service{padding:calc(26 * var(--u)) var(--pad) calc(40 * var(--u));background:#fff}
.a-service>.sec-head--service{margin:0 0 calc(26 * var(--u))}
.a-service>.sec-head--service .sec-en{margin-left:calc(-2 * var(--u));font-size:calc(58 * var(--u))}
.a-service>.sec-head--service h2{margin-top:calc(10 * var(--u));padding-top:calc(14 * var(--u));font-size:calc(21 * var(--u));font-weight:900;line-height:1.4;color:var(--ink);background:linear-gradient(90deg,var(--teal) 0 calc(52 * var(--u)),var(--orange) calc(52 * var(--u)) calc(64 * var(--u)),transparent calc(64 * var(--u))) 0 0/100% calc(3.6 * var(--u)) no-repeat}
.a-service>.sec-head--service h2 em{color:var(--teal)}
.a-service .svc{display:block;padding:0;margin:0 0 calc(50 * var(--u));border:0}
.a-service .svc:last-child{margin-bottom:0}
.a-service .svc .svc-no{display:flex;align-items:center;gap:calc(6 * var(--u));margin:0 0 calc(8 * var(--u));font-family:'Barlow Condensed',var(--jp);font-size:calc(23 * var(--u));font-weight:700;line-height:1;letter-spacing:.02em;color:var(--teal)}
.a-service .svc .svc-no span{font-family:var(--jp);font-size:calc(16 * var(--u));font-weight:900;letter-spacing:.04em;color:var(--ink)}
.a-service .svc .svc-no::after{content:'';width:calc(40 * var(--u));height:calc(3 * var(--u));margin-left:calc(6 * var(--u));background:linear-gradient(90deg,var(--teal) 0 76%,var(--orange) 76%)}
.a-service .svc h3{margin:0;font-size:calc(24.5 * var(--u));font-weight:900;line-height:1.3;letter-spacing:.01em;color:var(--ink);font-feature-settings:'palt';white-space:nowrap}
.a-service .svc h3 em{font-size:1.37em;font-weight:900;letter-spacing:-.01em;color:var(--teal)}
.a-service .svc h3 .num{font-size:1em}
.a-service .svc h3 .p{font-size:.86em}
.a-service .svc-breakdown{margin-top:calc(8 * var(--u));font-size:calc(14 * var(--u));white-space:nowrap;font-weight:800;line-height:1.5;color:var(--ink)}
.a-service .svc-breakdown b{font-size:1em;font-weight:800;color:var(--ink)}
.lecture-wall{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:calc(3.4 * var(--u));margin:calc(16 * var(--u)) calc(-10 * var(--u)) 0}
.lecture-wall li{overflow:hidden;border-radius:calc(2 * var(--u));box-shadow:0 0 0 1px rgba(30,80,140,.1),0 1px 3px rgba(30,80,140,.12)}
.lecture-wall img{display:block;width:100%;height:auto}
.wall-cap{display:flex;align-items:center;gap:calc(8 * var(--u));margin-top:calc(12 * var(--u));font-size:calc(13 * var(--u));font-weight:800;color:var(--muted)}
.wall-cap::before{content:'';width:calc(13 * var(--u));height:calc(2.4 * var(--u));background:var(--orange)}
/* 02: the heading centred and large, the three phones, the line under them */
.a-service .svc--chat{text-align:center}
.a-service .svc--chat .svc-no{justify-content:center}
.a-service .svc--chat h3{font-size:calc(33 * var(--u));line-height:1.28;white-space:normal;background:linear-gradient(#d4f1f5,#d4f1f5) 50% 96%/94% calc(9 * var(--u)) no-repeat}
.a-service .svc--chat h3 em{font-size:1.3em;letter-spacing:.01em}
.a-service .svc--chat h3 .p{font-size:1em}
.phones3{position:relative;width:calc(325 * var(--u));margin:calc(16 * var(--u)) auto 0}
.phones3>img{display:block;width:100%;height:auto}
.ph-label{position:absolute;margin:0;transform:translate(-50%,-50%);color:#fff;font-size:calc(11.8 * var(--u));font-weight:900;letter-spacing:.06em;white-space:nowrap}
.ph-label i{display:inline-block;width:.28em;height:.28em;margin:0 .22em;border-radius:50%;background:#fff;vertical-align:.28em}
.ph-label--1{left:16.3%;top:21.7%}
.ph-label--2{left:50.75%;top:17.6%;font-size:calc(12.6 * var(--u))}
.ph-label--3{left:83.55%;top:22%}
.svc-chat-text{margin-top:calc(14 * var(--u));font-size:calc(15.5 * var(--u));font-weight:900;line-height:1.55;color:var(--ink)}
.svc-chat-text b{font-size:1.45em;font-weight:900;color:var(--orange);letter-spacing:-.01em;white-space:nowrap}
.a-service .svc-note{margin-top:calc(4 * var(--u));font-size:max(10px,calc(10.5 * var(--u)))}
/* 03: the laptop with the real lesson on its screen, the archive pill and line */
.a-service .svc--live h3{font-size:calc(32.5 * var(--u))}
.a-service .svc--live h3 em{font-size:1em;color:var(--ink)}
.a-service .svc--live h3 .p{font-size:1em}
.a-service .svc--live h3::after{content:'';display:block;width:calc(83 * var(--u));height:calc(5 * var(--u));margin-top:calc(9 * var(--u));background:linear-gradient(90deg,var(--teal) 0 76%,var(--orange) 76%);transform:skewX(-20deg);transform-origin:0 0}
.laptop{position:relative;margin:calc(20 * var(--u)) calc(-3 * var(--u)) 0}
.laptop>img{display:block;width:100%;height:auto}
.laptop-screen{position:absolute;left:10.29%;top:4.06%;width:78.89%;height:76.91%;overflow:hidden;background:#fff}
.laptop-screen img{display:block;width:100%;height:100%;object-fit:cover}
.a-service .svc--live .svc-note{text-align:right}
.svc-archive{display:flex;align-items:center;gap:calc(10 * var(--u));margin-top:calc(14 * var(--u));font-size:calc(13.8 * var(--u));white-space:nowrap;font-weight:900;line-height:1.4;color:var(--ink);font-feature-settings:'palt'}
.svc-archive span{flex:none;display:grid;place-items:center;width:calc(100 * var(--u));height:calc(26 * var(--u));border-radius:999px;background:#ddf3f6;color:var(--cyan-t);font-size:calc(16 * var(--u))}

/* =====================================================================================================================
   A-07 手厚すぎるサポート体制 (A-support-list): twelve rows at one density on a white card, one line icon each
   ===================================================================================================================== */
.a-support{position:relative;padding:calc(22 * var(--u)) var(--pad) calc(34 * var(--u));background:#eaf7f9}
.a-support>.sec-head--support{position:relative;margin:0 0 calc(16 * var(--u))}
.a-support>.sec-head--support .kicker{position:relative;z-index:1;font-size:calc(17 * var(--u));font-weight:900;letter-spacing:.02em;color:var(--orange-d)}
.a-support>.sec-head--support .sec-en{position:absolute;right:calc(-6 * var(--u));top:calc(-16 * var(--u));font-size:calc(60 * var(--u));color:#d6eef2}
.a-support>.sec-head--support h2{position:relative;z-index:1;margin-top:calc(6 * var(--u));font-size:calc(31.5 * var(--u));font-weight:900;line-height:1.3;letter-spacing:.01em;color:var(--ink);white-space:nowrap}
.a-support>.sec-head--support h2 em{color:var(--teal)}
.support-list{padding:calc(2 * var(--u)) calc(16 * var(--u));background:#fff;border-radius:calc(11 * var(--u));box-shadow:0 calc(3 * var(--u)) calc(14 * var(--u)) rgba(0,70,80,.07)}
.support-list li{display:grid;grid-template-columns:calc(36 * var(--u)) minmax(0,1fr);align-items:center;column-gap:calc(18 * var(--u));min-height:calc(33.5 * var(--u));padding:calc(1.5 * var(--u)) calc(2 * var(--u));border-bottom:1px solid #e1eef0}
.support-list li:last-child{border-bottom:0}
.support-list .ic{width:calc(34 * var(--u));height:calc(34 * var(--u));stroke-width:2.1}
.support-list p{font-size:calc(15.8 * var(--u));font-weight:800;line-height:1.35;letter-spacing:.01em;color:var(--ink);font-feature-settings:'palt'}
.support-list em{font-weight:900;color:var(--teal)}
.support-list em.n{font-size:1.3em;letter-spacing:-.01em}

/* =====================================================================================================================
   B-03 / B-04 / B-05 (B-recommendations / B-about / B-three-steps)
   ===================================================================================================================== */
.b-foryou{padding:calc(26 * var(--u)) var(--pad) calc(30 * var(--u));background:#fbfcfc}
.b-foryou>.sec-head--foryou{margin:0 0 calc(18 * var(--u));text-align:center}
.b-foryou>.sec-head--foryou h2{display:inline-block;position:relative;font-size:calc(21 * var(--u));font-weight:900;line-height:1.35;color:var(--ink);white-space:nowrap}
.b-foryou>.sec-head--foryou h2 em{font-size:1.25em;color:var(--teal)}
.b-foryou>.sec-head--foryou h2::after{content:'';position:absolute;right:calc(-12 * var(--u));top:calc(-12 * var(--u));width:calc(20 * var(--u));height:calc(16 * var(--u));background:linear-gradient(var(--orange),var(--orange)) 12% 100%/calc(2.4 * var(--u)) calc(9 * var(--u)) no-repeat,linear-gradient(var(--orange),var(--orange)) 60% 0/calc(2.4 * var(--u)) calc(9 * var(--u)) no-repeat,linear-gradient(var(--orange),var(--orange)) 100% 70%/calc(8 * var(--u)) calc(2.4 * var(--u)) no-repeat;transform:rotate(12deg)}
.b-foryou .b-types{display:grid;gap:calc(6.5 * var(--u));margin:0 calc(-13 * var(--u));padding:0;background:none;border-radius:0}
.b-foryou .b-type{position:relative;display:grid;grid-template-columns:minmax(0,1fr) calc(160 * var(--u));align-items:center;min-height:calc(84 * var(--u));padding:calc(3 * var(--u)) calc(3 * var(--u)) calc(3 * var(--u)) calc(12 * var(--u));border:0;border-radius:calc(8 * var(--u));background:#e6f6f9}
.b-foryou .b-type:nth-child(even){background:#fbf5ec}
.b-foryou .b-type-tag{position:absolute;left:calc(12 * var(--u));top:calc(8 * var(--u));margin:0;padding:calc(1 * var(--u)) calc(10 * var(--u)) calc(2 * var(--u));border-radius:999px;background:var(--orange);color:#fff;font-size:calc(12.5 * var(--u));font-weight:900;line-height:1.4}
.b-foryou .b-type-text{display:flex;align-items:center;gap:calc(8 * var(--u));margin-top:calc(20 * var(--u));font-size:calc(15.6 * var(--u));font-weight:900;line-height:1.42;color:var(--ink);font-feature-settings:'palt'}
.b-foryou .b-type-text span{display:block;font-size:inherit;color:inherit}
.b-foryou .b-type-text .ic-check{flex:none;width:calc(22 * var(--u));height:calc(22 * var(--u))}
.b-foryou .b-type-pic{grid-column:2;margin:0;height:calc(78 * var(--u));overflow:hidden;border-radius:calc(7 * var(--u))}
.b-foryou .b-type-pic img{display:block;width:100%;height:100%;object-fit:cover}
.b-foryou .b-types-note{margin-top:calc(6 * var(--u));text-align:right}

.b-about{padding:calc(16 * var(--u)) var(--pad) calc(28 * var(--u));background:#e8f6f9;text-align:center}
.b-about-logo{margin:0 auto;width:calc(198 * var(--u))}
.b-about-logo img{display:block;width:100%;height:auto}
.b-about .b-about-kicker{margin-top:calc(18 * var(--u));font-size:calc(17 * var(--u));font-weight:900;letter-spacing:.02em;color:var(--ink)}
.b-about .b-about-kicker::after{content:'';display:block;width:calc(41 * var(--u));height:calc(2.4 * var(--u));margin:calc(9 * var(--u)) auto 0;background:var(--orange)}
.b-about .b-define{display:flex;flex-direction:column;align-items:center;margin-top:calc(14 * var(--u));font-weight:900;color:var(--ink);font-feature-settings:'palt'}
.b-about .b-define span{display:block;white-space:nowrap}
.b-about .b-define span:first-child{font-size:calc(16.6 * var(--u));line-height:1.4}
.b-about .b-define span+span{margin-top:calc(4 * var(--u));font-size:calc(29 * var(--u));line-height:1.25}
.b-about .b-define em{color:var(--teal)}
.b-about .laurel{display:flex;align-items:center;justify-content:center;gap:calc(4 * var(--u));margin-top:calc(12 * var(--u))}
.b-about .laurel-branch{width:calc(28 * var(--u));height:calc(64 * var(--u))}
.b-about .laurel-branch--r{transform:scaleX(-1)}
.b-about .laurel-text{display:flex;flex-direction:column;align-items:center;font-weight:900;color:var(--ink);white-space:nowrap;font-feature-settings:'palt'}
.b-about .laurel-text>span{font-size:calc(13 * var(--u));line-height:1.3}
.b-about .laurel-text>.laurel-fig{font-size:calc(21 * var(--u));line-height:1.05}
.b-about .laurel-fig em{display:inline-block;margin-right:calc(3 * var(--u));font-size:calc(40 * var(--u));letter-spacing:-.02em;color:var(--orange);transform:skewX(-9deg)}
.b-about .event-photo{margin:calc(14 * var(--u)) 0 0;text-align:left}
.b-about .event-photo img{display:block;width:100%;aspect-ratio:356/195;object-fit:cover;border-radius:0;box-shadow:0 calc(3 * var(--u)) calc(10 * var(--u)) rgba(20,48,56,.14)}
.b-about .event-photo figcaption{margin-top:calc(6 * var(--u));font-size:max(10.5px,calc(11 * var(--u)))}

.b-why{padding:calc(16 * var(--u)) var(--pad) calc(26 * var(--u));background:#fff}
.b-why>.sec-head--why{margin:0}
.b-why>.sec-head--why .sec-en{font-size:calc(36 * var(--u));color:#dcf1f4}
.b-why>.sec-head--why h2{margin-top:calc(2 * var(--u));font-size:calc(16.5 * var(--u));font-weight:900;line-height:1.4;color:var(--ink)}
.b-why>.sec-head--why h2::after{content:'';display:block;width:calc(41 * var(--u));height:calc(2.6 * var(--u));margin-top:calc(7 * var(--u));background:var(--orange)}
.b-why-lead{display:flex;flex-direction:column;margin-top:calc(16 * var(--u));font-size:calc(27 * var(--u));font-weight:900;line-height:1.36;letter-spacing:.01em;color:var(--ink);font-feature-settings:'palt'}
.b-why-lead span{display:block;white-space:nowrap}
.b-why-lead em{color:var(--teal)}
.b-steps{display:grid;gap:calc(10 * var(--u));margin:calc(20 * var(--u)) calc(-10 * var(--u)) 0;padding:0}
.b-step{display:grid;grid-template-columns:minmax(0,1fr) calc(177 * var(--u));min-height:calc(94 * var(--u));overflow:hidden;border-radius:calc(12 * var(--u));background:linear-gradient(90deg,#eaf8fb,#dcf2f6)}
.b-step-text{display:grid;grid-template-columns:calc(48 * var(--u)) minmax(0,1fr);align-items:center;column-gap:calc(8 * var(--u));padding:0 calc(4 * var(--u)) 0 calc(10 * var(--u))}
.b-step-no{display:flex;flex-direction:column;margin:0;padding-right:calc(8 * var(--u));border-right:2px solid #9fd6de;font-size:calc(12 * var(--u));font-weight:900;line-height:1;letter-spacing:.02em;color:var(--teal)}
.b-step-no b{margin-top:calc(2 * var(--u));font-family:'Barlow Condensed',var(--jp);font-size:calc(38 * var(--u));font-weight:700;line-height:1}
.b-why .b-step h3{margin:0;font-size:calc(17 * var(--u));font-weight:900;line-height:1.42;color:var(--ink);font-feature-settings:'palt'}
.b-step-pic{position:relative;margin:0;overflow:hidden}
.b-step-pic img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.b-steps-note{margin-top:calc(8 * var(--u));text-align:center}

/* =====================================================================================================================
   600–1039: the phone compositions, centred
   ===================================================================================================================== */
@media (min-width:600px){
  .a-reasons>*,.a-service>*,.a-support>*,.b-foryou>*,.b-about>*,.b-why>*{max-width:calc(390 * var(--u));margin-left:auto;margin-right:auto}
  .r01-teachers,.r02-cycle,.r03-pics,.lecture-wall,.b-foryou .b-types,.b-steps,.a-reasons .reason--event .event-photo{margin-left:auto;margin-right:auto}
}

/* =====================================================================================================================
   1040px and up (adaptations): the head beside its content, the content at reading width
   ===================================================================================================================== */
@media (min-width:1040px){
  .a-reasons,.a-service,.a-support,.b-foryou,.b-about,.b-why{--u:1.42px}
  .a-reasons{--u:min(1.42px,calc((100vw - 160px) * 6 / 11 / 390))}
  .a-reasons>*,.a-service>*,.a-support>*,.b-foryou>*,.b-about>*,.b-why>*{max-width:none}
  .a-reasons{padding:80px var(--pad) 90px}
  .a-reasons .reason{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);column-gap:64px;align-items:start;margin-bottom:96px}
  .a-reasons .reason>.r-top{grid-column:1;grid-row:1 / span 4}
  .a-reasons .reason>:not(.r-top){grid-column:2;margin-left:0;margin-right:0}
  .a-reasons .reason>.r05-when{margin-top:0}
  .a-reasons .reason .r-top h3{white-space:normal}
  .r01-teachers,.r03-pics,.r02-cycle{margin-left:0;margin-right:0}
  .r01-teachers{margin-top:0}
  .r02-cycle,.r03-pics{margin-top:0;width:calc(390 * var(--u))}
  .a-reasons .reason--event .event-photo{margin:0}
  .a-reasons .reason--event .event-photo figcaption{margin-left:0;margin-right:0}
  .a-service{padding:80px var(--pad) 90px}
  .a-service .svc--wall{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:56px;align-items:start}
  .a-service .svc--wall>*{grid-column:1}
  .a-service .svc--wall>.lecture-wall{grid-column:2;grid-row:1 / span 4;margin:0}
  .a-service .svc--wall h3{white-space:normal}
  .a-service .svc--chat,.a-service .svc--live{display:inline-block;vertical-align:top;width:calc(50% - 30px)}
  .a-service .svc--chat{margin-right:56px}
  .a-service .svc--chat h3,.a-service .svc--live h3{font-size:40px}
  .a-support{padding:80px var(--pad) 90px}
  .support-list{display:grid;grid-template-columns:1fr 1fr;column-gap:48px;padding:12px 40px}
  .support-list li:nth-last-child(2){border-bottom:0}
  .b-foryou{padding:80px var(--pad)}
  .b-foryou .b-types{grid-template-columns:1fr 1fr;gap:16px;margin:0}
  .b-foryou .b-type:nth-child(even){background:#e6f6f9}
  .b-foryou .b-type:nth-child(4n+2),.b-foryou .b-type:nth-child(4n+3){background:#fbf5ec}
  .b-about{padding:72px var(--pad) 80px}
  .b-about .event-photo{max-width:760px;margin:24px auto 0}
  .b-why{padding:72px var(--pad) 80px}
  .b-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0 0}
  .b-step{grid-template-columns:1fr;grid-template-rows:auto 220px}
  .b-step-text{padding:22px 20px}
  .b-step-pic{grid-row:2}
}

/* =====================================================================================================================
   Stage 3 — A-05 / B-10 3つの道 (shared-course): tabs (A) or cards (B), the panel: catch, photo + words + the figure,
   the existing monetise / fit lines, the teachers as equal cards, the note
   ===================================================================================================================== */
.a-course{padding:calc(24 * var(--u)) var(--pad) calc(36 * var(--u));background:#fff}
.a-course>.sec-head--course{position:relative;margin:0 0 calc(14 * var(--u));text-align:center}
.a-course>.sec-head--course .sec-en{position:absolute;left:50%;top:calc(-14 * var(--u));transform:translateX(-50%) skewX(-10deg);font-size:calc(52 * var(--u));white-space:nowrap;color:#e3f3f6}
.a-course>.sec-head--course h2{position:relative;font-size:calc(23.5 * var(--u));font-weight:900;line-height:1.3;color:var(--ink);white-space:nowrap}
.a-course>.sec-head--course h2 em{color:var(--ink)}
.a-course>.sec-head--course .sec-lead{position:relative;margin-top:calc(8 * var(--u));font-size:max(11.5px,calc(12.5 * var(--u)));line-height:1.7}
.a-course .tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(4 * var(--u));max-width:none;margin:0;border:0}
.a-course .tabs button{position:relative;min-height:calc(31 * var(--u));margin:0;padding:0;border:0;border-radius:calc(4 * var(--u));background:#e8eef0;color:var(--ink);font-size:calc(15.5 * var(--u));font-weight:900;letter-spacing:.02em}
.a-course .tabs button[aria-selected="true"]{background:#0e9aa7;color:#fff;border:0}
.a-course .tabs button[aria-selected="true"]::after{content:'';position:absolute;left:50%;bottom:calc(-6 * var(--u));margin-left:calc(-6 * var(--u));border:calc(6 * var(--u)) solid transparent;border-top-color:#0e9aa7;border-bottom:0}
.a-panel,.b-course{margin-top:calc(10 * var(--u));padding:calc(12 * var(--u)) calc(12 * var(--u)) calc(14 * var(--u));background:#eaf7fa;border-radius:calc(12 * var(--u));display:block}
.a-course-channel,.b-course-channel{margin:0;font-size:max(10.5px,calc(11.5 * var(--u)));font-weight:800;letter-spacing:.06em;color:var(--cyan-t)}
.a-panel .a-catch,.b-course h3{margin:calc(2 * var(--u)) 0 0;font-size:calc(33 * var(--u));font-weight:900;line-height:1.2;letter-spacing:.01em;color:var(--ink);font-feature-settings:'palt'}
.a-panel .a-catch em,.b-course h3 em{color:var(--teal)}
.b-course h3{font-size:calc(27 * var(--u))}
.a-panel-main{display:grid;grid-template-columns:calc(201 * var(--u)) minmax(0,1fr);column-gap:calc(12 * var(--u));align-items:start;margin-top:calc(10 * var(--u))}
.a-panel-main>figure{position:relative;margin:0;overflow:hidden;aspect-ratio:201/126;border-radius:calc(6 * var(--u))}
.a-panel-main>figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.a-panel-main>figure figcaption{position:absolute;right:calc(5 * var(--u));bottom:calc(4 * var(--u));padding:0 calc(5 * var(--u));border-radius:2px;background:rgba(255,255,255,.9);font-size:max(9px,calc(9 * var(--u)));color:var(--muted)}
.a-panel-side .a-course-desc,.a-panel-side .b-course-desc{margin:0;font-size:calc(13.2 * var(--u));font-weight:800;line-height:1.5;color:var(--ink)}
.a-income-label{display:inline-block;margin-top:calc(8 * var(--u));padding:calc(1 * var(--u)) calc(7 * var(--u));border-radius:calc(4 * var(--u));background:#fff;white-space:nowrap;font-size:max(9.5px,calc(10.4 * var(--u)));font-weight:800;color:var(--ink)}
.a-income-fig{position:relative;display:inline-block;margin-top:calc(4 * var(--u));line-height:1.05;color:var(--teal);white-space:nowrap}
.a-income-fig strong{font-size:calc(29 * var(--u));font-weight:900;letter-spacing:-.02em}
.a-income-fig b{margin-left:calc(2 * var(--u));font-size:calc(14.5 * var(--u));font-weight:900}
.a-income-fig .swash{position:absolute;left:0;right:30%;bottom:calc(-6 * var(--u));width:auto;height:calc(6 * var(--u));color:var(--orange)}
.a-income-note{margin-top:calc(8 * var(--u));font-size:max(10.5px,calc(11 * var(--u)));font-weight:700;color:var(--muted)}
.a-fit2{display:grid;gap:calc(6 * var(--u));margin-top:calc(12 * var(--u));padding-top:calc(10 * var(--u));border-top:1px solid #c6e6ec}
.a-fit2 div{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:calc(8 * var(--u))}
.a-fit2 dt{white-space:nowrap;font-size:max(10.5px,calc(11.5 * var(--u)));font-weight:900;color:var(--cyan-t)}
.a-fit2 dd{display:grid;margin:0;font-size:max(11.5px,calc(12.5 * var(--u)));font-weight:600;line-height:1.6;color:var(--ink)}
.a-fit2 dd>span{display:block;padding-left:1.15em;text-indent:-1.15em}
.a-panel-teachers{margin-top:calc(12 * var(--u));padding-top:calc(10 * var(--u));border-top:1px solid #c6e6ec}
.a-panel-teachers .a-course-th,.a-panel-teachers .b-course-th{position:relative;margin:0 0 calc(8 * var(--u));padding-left:calc(9 * var(--u));font-size:calc(15.5 * var(--u));font-weight:900;color:var(--ink)}
.a-panel-teachers .a-course-th::before,.a-panel-teachers .b-course-th::before{content:'';position:absolute;left:0;top:12%;bottom:12%;width:calc(3 * var(--u));background:var(--teal)}
.tcards{display:grid;grid-template-columns:1fr 1fr;gap:calc(12 * var(--u))}
.tcard .t-photo{aspect-ratio:160/91;border-radius:calc(6 * var(--u))}
.tcard .t-photo img{transform:none;object-fit:cover;object-position:50% 22%}
.tcard .t-photo--asu img{object-position:30% 30%}
.tcard-name{margin:calc(6 * var(--u)) 0 0;font-size:calc(16 * var(--u));font-weight:900;line-height:1.3;color:var(--ink)}
.tcard-role{margin-top:calc(1 * var(--u));font-size:max(10px,calc(10.8 * var(--u)));font-weight:600;color:var(--muted)}
.tcard-list{margin-top:calc(5 * var(--u))}
.tcard-list li{position:relative;padding-left:calc(11 * var(--u));font-size:max(11px,calc(12 * var(--u)));font-weight:800;line-height:1.45;color:var(--ink)}
.tcard-list li+li{margin-top:calc(3 * var(--u))}
.tcard-list li::before{content:'';position:absolute;left:0;top:.5em;width:calc(6 * var(--u));height:calc(6 * var(--u));border-radius:50%;background:var(--teal)}
.tcard-list b{font-size:1.2em;font-weight:900;color:var(--orange-d);white-space:nowrap}
.a-panel-note{margin-top:calc(10 * var(--u));text-align:center}
.a-course>.note{margin-top:calc(8 * var(--u))}
.b-courses{display:grid;gap:calc(14 * var(--u))}
.b-courses-sec .b-course{margin:0;border:0}

/* =====================================================================================================================
   A-08 / B-02 指導実績 (shared-story): the person, the real profile line, BEFORE grey, AFTER teal, the words, the details
   ===================================================================================================================== */
.a-voice{padding:calc(22 * var(--u)) var(--pad) calc(30 * var(--u));background:#eef8fa}
.a-voice>.sec-head--voice{position:relative;margin:0 0 calc(16 * var(--u))}
.a-voice>.sec-head--voice h2{position:relative;z-index:1;display:inline-block;font-size:calc(30 * var(--u));font-weight:900;line-height:1.3;color:var(--ink)}
.a-voice>.sec-head--voice h2 em{color:var(--ink)}
.a-voice>.sec-head--voice h2::after{content:'';position:absolute;left:-2%;width:56%;bottom:calc(-5 * var(--u));height:calc(4 * var(--u));border-radius:50%;background:var(--orange);transform:rotate(-2deg)}
.a-voice>.sec-head--voice .sec-en{position:absolute;right:0;top:calc(-6 * var(--u));font-size:calc(46 * var(--u));color:#d3edf1}
.a-voice>.sec-head--voice .kicker{margin-top:calc(10 * var(--u));font-size:max(11px,calc(12 * var(--u)))}
.carousel .story{padding:calc(14 * var(--u)) calc(13 * var(--u)) calc(14 * var(--u));background:#fff;border:0;border-radius:calc(16 * var(--u));box-shadow:0 calc(3 * var(--u)) calc(14 * var(--u)) rgba(0,60,70,.08)}
.story .story-who{display:grid;grid-template-columns:calc(74 * var(--u)) minmax(0,1fr);column-gap:calc(10 * var(--u));align-items:center;padding:0;border:0}
.story .story-avatar{width:calc(74 * var(--u));height:calc(74 * var(--u));border-radius:50%}
.story .tag--guide{display:inline-block;padding:calc(1 * var(--u)) calc(10 * var(--u));border-radius:999px;background:var(--cyan-t);color:#fff;font-size:max(10.5px,calc(11.5 * var(--u)));font-weight:900}
.story .story-id h3{margin-top:calc(4 * var(--u));font-size:calc(18.5 * var(--u));font-weight:900;line-height:1.3;color:var(--ink)}
.story .story-handle{font-size:max(10.5px,calc(11.5 * var(--u)));color:var(--faint)}
.story .story-proof{margin:calc(8 * var(--u)) 0 0;border:0;box-shadow:none;background:none}
.story .story-proof img{display:block;width:calc(260 * var(--u));max-width:100%;height:auto}
.story .story-proof figcaption{margin-top:calc(2 * var(--u));padding:0;background:none;font-size:max(9px,calc(9.5 * var(--u)));color:var(--faint)}
.story .story-before{display:flex;align-items:center;gap:calc(10 * var(--u));margin-top:calc(10 * var(--u));padding:calc(7 * var(--u)) calc(10 * var(--u));border-radius:calc(8 * var(--u));background:#eceeef;font-size:calc(13.5 * var(--u));font-weight:900;color:var(--ink)}
.story .story-before .ba-tag{flex:none;padding:calc(2 * var(--u)) calc(9 * var(--u));border-radius:calc(4 * var(--u));background:#4b5153;color:#fff;font-size:max(10.5px,calc(11.5 * var(--u)));letter-spacing:.04em}
.story .story-before-text .sp{display:inline-block;width:1em}
.carousel .story .story-after{position:relative;display:grid;grid-template-columns:calc(52 * var(--u)) minmax(0,1fr);align-items:center;column-gap:calc(10 * var(--u));margin:calc(16 * var(--u)) 0 0;padding:calc(10 * var(--u)) calc(10 * var(--u));border:0;border-radius:calc(10 * var(--u));background:#ddf2f5}
.story .story-after::before{content:'';position:absolute;left:50%;top:calc(-11 * var(--u));margin-left:calc(-8 * var(--u));border:calc(8 * var(--u)) solid transparent;border-top-color:var(--orange);border-bottom:0}
.carousel .story .story-after .ba-tag{grid-column:auto;margin:0;align-self:center;padding:calc(3 * var(--u)) calc(6 * var(--u));border-radius:calc(4 * var(--u));background:var(--cyan-t);color:#fff;font-size:max(11px,calc(12.5 * var(--u)));font-weight:900;text-align:center}
.story-after-rows{display:grid;row-gap:calc(6 * var(--u));padding-left:calc(10 * var(--u));border-left:1px solid #a9dce3}
.carousel .story .story-main,.carousel .story .story-sub{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:calc(6 * var(--u));margin:0;padding:0;border:0;row-gap:0}
.carousel .story .story-sub{padding-top:calc(6 * var(--u));border-top:1px solid #b9e2e8;border-left:0}
.story .story-main .lbl,.story .story-sub .lbl{display:flex;flex-direction:column;font-size:max(10.5px,calc(11.8 * var(--u)));font-weight:900;line-height:1.35;color:var(--ink)}
.story .story-main .fig,.story .story-sub .fig{display:block;margin:0;white-space:nowrap;color:var(--cyan-t);font-weight:900;line-height:1}
.carousel .story .story-main .fig strong{font-size:calc(38 * var(--u));letter-spacing:-.03em;color:var(--cyan-t)}
.story .story-main .unit{font-size:calc(17 * var(--u));color:var(--cyan-t)}
.story .story-main .approx{font-size:calc(15 * var(--u))}
.story .story-sub .fig{font-size:calc(14 * var(--u))}
.carousel .story .story-sub .fig b{font-size:calc(22 * var(--u));letter-spacing:-.02em}
.story .story-voice{margin:calc(14 * var(--u)) 0 0;padding:0;background:none;border:0;font-size:calc(14.6 * var(--u));font-weight:900;line-height:1.75;color:var(--ink)}
.story .story-voice mark{background:linear-gradient(transparent 55%,#fff1a3 55%);font-weight:900;color:inherit}
/* A-08 (shared-story): the second AFTER row keeps its figure beside the label; the voice in two lines (B-02 waits for its own draft) */
.a-voice .carousel .story .story-sub{flex-wrap:nowrap;column-gap:calc(4 * var(--u))}
.a-voice .carousel .story .story-sub .fig b{font-size:calc(21 * var(--u))}
.a-voice .story .story-voice{margin-inline:calc(-4 * var(--u));font-size:calc(14.3 * var(--u));line-height:1.62;font-feature-settings:'palt'}
.story .story-more{margin-top:calc(10 * var(--u))}
.a-voice .slider,.b-story .slider{margin-top:calc(12 * var(--u))}

/* =====================================================================================================================
   A-09 3大特典 (gift-01 / 02 / 03 clean): one gold-ring badge, the heading, the real material, the checks, the result line
   ===================================================================================================================== */
.a-gift{padding:calc(24 * var(--u)) var(--pad) calc(30 * var(--u));background:#f1f9fb}
.a-gift .gift-item{position:relative;display:block;margin:0 0 calc(34 * var(--u));padding:0;border:0}
.gift-badge{display:inline-grid;place-items:center;width:calc(36 * var(--u));height:calc(36 * var(--u));margin:0;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 calc(2.4 * var(--u)) #e2b54c,0 1px 3px rgba(120,90,20,.18);text-align:center;line-height:1}
.gift-badge span{display:block;font-size:calc(8.5 * var(--u));font-weight:900;color:var(--ink)}
.gift-badge b{display:block;margin-top:calc(1 * var(--u));font-size:calc(14.5 * var(--u));font-weight:900;color:var(--ink)}
.gift-item--1{text-align:center}
.gift-item--1 .gift-badge{position:relative}
.gift-item--1 .gift-badge::before,.gift-item--1 .gift-badge::after{content:'';position:absolute;top:50%;width:calc(58 * var(--u));height:1.5px;background:#d4aa4e}
.gift-item--1 .gift-badge::before{right:calc(100% + 6.6 * var(--u))}
.gift-item--1 .gift-badge::after{left:calc(100% + 5.6 * var(--u))}
/* gift-01 clean ring (STAGE-3: the 01 ring is the shared one): white oval, gold rim, 特典01 on one line. g1 and g2 here; g3 waits for its revised draft */
.gift-item--1 .gift-badge,.gift-item--2 .gift-badge{display:inline-flex;align-items:center;justify-content:center;width:calc(62 * var(--u));height:calc(46 * var(--u));border:calc(2.6 * var(--u)) solid transparent;border-radius:50%;background:#fff padding-box,linear-gradient(140deg,#f6dc8c,#d2a23c 48%,#b98523) border-box;box-shadow:0 calc(2 * var(--u)) calc(5 * var(--u)) rgba(120,90,20,.2);line-height:1}
.gift-item--1 .gift-badge span,.gift-item--1 .gift-badge b,.gift-item--2 .gift-badge span,.gift-item--2 .gift-badge b{display:inline;margin:0;font-size:calc(15.6 * var(--u));font-weight:900;letter-spacing:0;color:var(--ink)}
.gift-item--1 .gift-badge b,.gift-item--2 .gift-badge b{font-size:calc(16.6 * var(--u));letter-spacing:-.01em}
.a-gift .gift-item h3{margin:calc(6 * var(--u)) 0 0;font-size:calc(29.5 * var(--u));font-weight:900;line-height:1.28;letter-spacing:.01em;color:var(--ink);font-feature-settings:'palt'}
.a-gift .gift-item h3 small{display:block;font-size:calc(29.5 * var(--u));font-weight:900;color:var(--ink)}
.a-gift .gift-item h3 em{color:var(--teal)}
.a-gift .gift-item--1 h3{margin:calc(-5 * var(--u)) calc(-12 * var(--u)) 0;font-size:calc(35 * var(--u));line-height:1.4;letter-spacing:-.005em}
.a-gift .gift-item--1 h3 small{position:relative;z-index:0;display:block;width:max-content;margin:0 auto;font-size:1em}
.a-gift .gift-item--1 h3 small::before{content:'';position:absolute;z-index:-1;left:calc(-9 * var(--u));right:calc(-6 * var(--u));bottom:calc(2.5 * var(--u));height:calc(12.5 * var(--u));background:#cdeff4;transform:skewX(-20deg)}
.a-gift .gift-item--1 h3 small::after{content:'';position:absolute;left:calc(100% + 4 * var(--u));top:calc(3 * var(--u));width:calc(22 * var(--u));height:calc(23 * var(--u));background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 23'%3E%3Cg fill='none' stroke='%23ff9419' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M5.2 11.2 3.4 2.6'/%3E%3Cpath d='M10.4 14.2l6.4-6.6'/%3E%3Cpath d='M12.6 20.2l7.8-.6'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}
.gift-item--2,.gift-item--3{display:grid;grid-template-columns:calc(40 * var(--u)) minmax(0,1fr);column-gap:calc(8 * var(--u))}
.gift-item--2>*,.gift-item--3>*{grid-column:1 / -1}
.gift-item--2>.gift-badge,.gift-item--3>.gift-badge{grid-column:1;grid-row:1}
.gift-item--2>h3,.gift-item--3>h3{grid-column:2;grid-row:1;margin-top:0}
.gift-item--2{grid-template-columns:calc(62 * var(--u)) minmax(0,1fr);column-gap:calc(12 * var(--u))}
.gift-item--2>.gift-badge{align-self:center;margin-top:calc(-6 * var(--u))}
.gift-item--2 h3{font-size:calc(29 * var(--u));line-height:1.3}
.gift-item--2 h3 em{font-size:1.345em;letter-spacing:-.01em}
.gift-item--2 h3::after{content:'';display:block;height:calc(4 * var(--u));margin:calc(5 * var(--u)) 0 0 calc(-4 * var(--u));background:linear-gradient(90deg,#c4ecf2 0 86%,var(--orange) 86%)}
.gift-h-lead{font-size:calc(22 * var(--u))}
.gift-amt{display:inline-flex;align-items:center;gap:calc(4 * var(--u));margin-top:calc(2 * var(--u));line-height:1}
.gift-amt b{font-size:calc(64 * var(--u));font-weight:900;letter-spacing:-.04em;color:var(--teal)}
.gift-amt span{font-size:calc(20 * var(--u));font-weight:900;line-height:1.1;color:var(--ink)}
.gift-visual{position:relative;margin:calc(12 * var(--u)) 0 0}
.a-gift .gift-visual--guide{display:block;position:relative;width:calc(390 * var(--u));height:calc(176 * var(--u));margin:calc(3 * var(--u)) 0 0 calc(50% - 195 * var(--u));padding:0}
.stand-cover{--cw:121.5;position:relative;display:block;width:calc(var(--cw) * var(--u));height:calc(var(--cw) * 1.424 * var(--u));border-radius:calc(2 * var(--u)) calc(3 * var(--u)) calc(3 * var(--u)) calc(2 * var(--u));background:radial-gradient(circle at 128% 124%,#cdecf0 0 52%,transparent 52.4%),linear-gradient(90deg,#dde5e8 0,#f2f6f7 calc(4 * var(--u)),#fff calc(9 * var(--u)),#f6f9fa 100%);box-shadow:0 0 0 1px rgba(20,50,60,.08),calc(-2 * var(--u)) calc(2 * var(--u)) calc(6 * var(--u)) rgba(20,48,56,.12),0 calc(10 * var(--u)) calc(18 * var(--u)) calc(-8 * var(--u)) rgba(20,48,56,.36);transform:perspective(calc(700 * var(--u))) rotateY(8deg);transform-origin:0 50%}
.stand-cover-title{position:absolute;left:calc(var(--cw) * .165 * var(--u));top:calc(var(--cw) * .42 * var(--u));font-size:calc(var(--cw) * .16 * var(--u));font-weight:900;line-height:1.22;letter-spacing:-.01em;color:var(--ink);text-align:left;white-space:nowrap}
.stand-cover-title::after{content:'';display:block;width:calc(var(--cw) * .617 * var(--u));height:calc(var(--cw) * .025 * var(--u));margin-top:calc(var(--cw) * .074 * var(--u));background:var(--teal)}
.g1-cover{position:absolute;z-index:2;left:calc(17.5 * var(--u));top:0}
.g1-spread{position:absolute;z-index:1;left:calc(140 * var(--u));top:calc(18 * var(--u));width:calc(237.5 * var(--u));padding:calc(6 * var(--u));background:#fff;border-radius:calc(2 * var(--u));box-shadow:calc(1.5 * var(--u)) calc(1.5 * var(--u)) 0 #fff,calc(2.5 * var(--u)) calc(2.5 * var(--u)) 0 #d6e3e7,calc(4 * var(--u)) calc(4 * var(--u)) 0 #fff,calc(5 * var(--u)) calc(5 * var(--u)) 0 #d6e3e7,0 calc(12 * var(--u)) calc(20 * var(--u)) calc(-8 * var(--u)) rgba(20,48,56,.34)}
.g1-spread img{display:block;width:100%;height:auto}
.gift-note{margin-top:calc(4 * var(--u));text-align:right}
.gift-item--1 .gift-note{margin:calc(5 * var(--u)) calc(-5 * var(--u)) 0 0}
.gift-checks{display:grid;gap:calc(6 * var(--u));margin-top:calc(12 * var(--u));text-align:left}
.gift-checks li{position:relative;padding:calc(2 * var(--u)) 0 calc(6 * var(--u)) calc(28 * var(--u));border-bottom:1px solid #cfe9ee;font-size:calc(15 * var(--u));font-weight:900;line-height:1.45;color:var(--ink)}
.gift-checks li::before{content:'';position:absolute;left:0;top:calc(3 * var(--u));width:calc(19 * var(--u));height:calc(19 * var(--u));border-radius:calc(4 * var(--u));background:#d6f1f5 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.4 3.4L15.5 6.5' fill='none' stroke='%2300a6b7' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/80% no-repeat}
.gift-item--1 .gift-checks{gap:0;margin:calc(14 * var(--u)) 0 0 calc(8 * var(--u))}
.gift-item--1 .gift-checks li{padding:calc(4 * var(--u)) 0 calc(4.5 * var(--u)) calc(30 * var(--u));border:0;font-size:calc(16.4 * var(--u));line-height:1.3}
.gift-item--1 .gift-checks li::before{top:calc(5 * var(--u));width:calc(20 * var(--u));height:calc(20 * var(--u));background-color:#d4f0f5}
.gift-item--2 .gift-checks{gap:0;margin:calc(12 * var(--u)) 0 0 calc(17 * var(--u))}
.gift-item--2 .gift-checks li{padding:calc(6 * var(--u)) 0 calc(6.5 * var(--u)) calc(31 * var(--u));border:0;font-size:calc(16.6 * var(--u));line-height:1.25}
.gift-item--2 .gift-checks li:not(:last-child)::after{content:'';position:absolute;left:calc(31 * var(--u));right:calc(-7 * var(--u));bottom:0;height:1.5px;background:#c9ebf1}
.gift-item--2 .gift-checks li::before{top:calc(6 * var(--u));width:calc(20 * var(--u));height:calc(20 * var(--u));border-radius:50%;background-color:var(--teal);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.4 3.4L15.5 6.5' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.a-gift .gift-get::first-letter{color:var(--orange)}
.a-gift .gift-get{margin-top:calc(10 * var(--u));padding:calc(9 * var(--u)) calc(12 * var(--u));border:0;border-radius:calc(8 * var(--u));background:#ddf2f6;text-align:left;font-size:calc(14.4 * var(--u));font-weight:900;line-height:1.5;color:var(--ink)}
.a-gift .gift-item--1 .gift-get{margin:calc(14 * var(--u)) calc(-9 * var(--u)) 0;padding:calc(7.5 * var(--u)) calc(5 * var(--u)) calc(7.5 * var(--u)) calc(11.5 * var(--u));border-radius:calc(3 * var(--u));background:#d9f1f6;font-size:calc(16 * var(--u));line-height:1.15;word-spacing:calc(5 * var(--u));font-feature-settings:'palt'}
.a-gift .gift-item--2 .gift-get{margin:calc(16 * var(--u)) calc(-9 * var(--u)) 0;padding:calc(10 * var(--u)) calc(8 * var(--u)) calc(12 * var(--u)) calc(54 * var(--u));text-indent:calc(-33 * var(--u));border-radius:calc(12 * var(--u));background:linear-gradient(100deg,#d9f1f6,#eef9fb);font-size:calc(19.5 * var(--u));line-height:1.23;word-spacing:calc(8.5 * var(--u))}
.gift-ul{padding-bottom:calc(4 * var(--u));background:linear-gradient(var(--orange),var(--orange)) 0 100%/100% calc(2.6 * var(--u)) no-repeat}
.gift-tablet{display:block;margin:0 auto;width:calc(240 * var(--u));padding:calc(10 * var(--u));background:#1b2224;border-radius:calc(14 * var(--u));box-shadow:0 0 0 1px #3a4447 inset,0 calc(8 * var(--u)) calc(14 * var(--u)) calc(-6 * var(--u)) rgba(20,40,46,.4)}
.gift-tablet img{display:block;width:100%;height:auto;border-radius:calc(3 * var(--u))}
.gift-visual--lesson{margin-top:calc(12 * var(--u))}
.gift-visual--lesson figcaption{display:flex;align-items:center;justify-content:center;gap:calc(7 * var(--u));margin-top:calc(9 * var(--u));font-size:calc(12.6 * var(--u));font-weight:800;color:var(--ink)}
.gift-play{display:inline-block;flex:none;width:calc(18 * var(--u));height:calc(18 * var(--u));border-radius:50%;background:var(--teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M3.4 2.4v5.2L7.8 5z' fill='%23fff'/%3E%3C/svg%3E") 55% center/60% no-repeat}
.a-gift .coupon-cond{margin-top:calc(6 * var(--u));text-align:left;font-size:max(11px,calc(12 * var(--u)));font-weight:700;color:var(--ink)}
.gift-visual--coupon{display:flex;flex-direction:column;align-items:center;margin-top:calc(10 * var(--u))}
.gift-visual--coupon img{display:block;width:calc(250 * var(--u));height:auto;border-radius:calc(6 * var(--u))}
.gift-coupon-name{margin-bottom:calc(4 * var(--u));font-size:max(11px,calc(12 * var(--u)));font-weight:900;letter-spacing:.06em;color:var(--cyan-t)}
.gift-coupon-use{margin-top:calc(4 * var(--u));font-size:max(10.5px,calc(11.5 * var(--u)));font-weight:700;color:var(--muted)}
.a-gift .a-free{display:flex;flex-direction:column;align-items:center;margin-top:calc(8 * var(--u));text-align:center}
.a-gift .a-free span{display:flex;align-items:center;gap:calc(10 * var(--u));font-size:calc(16.5 * var(--u));font-weight:900;color:var(--ink)}
.a-gift .a-free span::before,.a-gift .a-free span::after{content:'';width:calc(30 * var(--u));height:2px;background:var(--teal)}
.a-gift .a-free b{display:inline-block;margin-top:calc(4 * var(--u));font-size:calc(26 * var(--u));font-weight:900;color:var(--ink);background:linear-gradient(transparent 70%,#d4f1f5 70%)}
.a-gift .a-free b em{font-size:1.25em;color:var(--ink)}

/* =====================================================================================================================
   A-10 / B-12 流れ・FAQ・MESSAGE・会社 (shared-flow / shared-faq / shared-closing)
   ===================================================================================================================== */
.a-flow,.a-faq,.b-faq{padding:calc(24 * var(--u)) var(--pad) calc(28 * var(--u));background:#fff}
.sec-head--flow,.sec-head--faq,.sec-head--compare{position:relative;margin:0 0 calc(16 * var(--u))}
.sec-head--flow .sec-en,.sec-head--faq .sec-en,.sec-head--compare .sec-en{font-size:calc(40 * var(--u));color:#ddf1f4}
.sec-head--flow .sec-en,.sec-head--faq .sec-en{font-size:calc(66 * var(--u));margin-left:calc(-5 * var(--u))}
.sec-head--flow h2,.sec-head--faq h2,.sec-head--compare h2{margin-top:calc(-6 * var(--u));font-size:calc(29 * var(--u));font-weight:900;line-height:1.3;color:var(--ink);white-space:nowrap}
.sec-head--flow h2{margin-top:calc(-2 * var(--u));font-size:calc(34.5 * var(--u))}
.sec-head--faq h2{margin-top:calc(-10 * var(--u));font-size:calc(41.5 * var(--u));font-feature-settings:'palt'}
.sec-head--compare h2{font-size:calc(26 * var(--u))}
.sec-head--compare h2 em{color:var(--teal)}
.sec-head--flow h2::after,.sec-head--faq h2::after,.sec-head--compare h2::after{content:'';display:block;width:calc(34 * var(--u));height:calc(3 * var(--u));margin-top:calc(6 * var(--u));background:var(--orange)}
.sec-head--flow h2::after,.sec-head--faq h2::after{width:calc(48 * var(--u));height:calc(4 * var(--u));margin-top:calc(5 * var(--u))}
.sec-head--flow{margin-bottom:calc(24 * var(--u))}
.sec-head--faq{margin-bottom:calc(18 * var(--u))}
.a-flow .flow{display:grid;gap:0;margin:0;padding:0}
.a-flow .flow li{position:relative;display:grid;grid-template-columns:calc(68 * var(--u)) minmax(0,1fr);column-gap:calc(22 * var(--u));padding:0 0 calc(24 * var(--u));border:0}
.a-flow .flow li::before{content:'';position:absolute;left:calc(68 * var(--u));top:calc(2 * var(--u));bottom:0;width:2px;background:#d7eef2}
.a-flow .flow li::after{content:'';position:absolute;left:calc(68 * var(--u) - 3.5 * var(--u) + 1px);top:calc(26 * var(--u));width:calc(7 * var(--u));height:calc(7 * var(--u));border-radius:50%;background:#bfe6ec}
.a-flow .flow li:last-child::before{bottom:50%}
.a-flow .flow .flow-no,.a-flow .flow .flow-no b{color:var(--teal)}
.flow-no{margin:calc(2 * var(--u)) 0 0;font-size:calc(14.5 * var(--u));font-weight:900;line-height:1;letter-spacing:0;color:var(--teal)}
.flow-no b{display:block;margin-top:calc(1 * var(--u));font-family:'Barlow Condensed',var(--jp);font-size:calc(53 * var(--u));font-weight:700;line-height:1;letter-spacing:-.01em}
.a-flow .flow h3{margin:calc(4 * var(--u)) calc(-6 * var(--u)) 0 0;padding:0;font-size:calc(21.5 * var(--u));font-weight:900;line-height:1.3;color:var(--ink);font-feature-settings:'palt';white-space:nowrap}
.a-flow .flow p{margin-top:calc(5 * var(--u));font-size:calc(13.6 * var(--u));font-weight:500;line-height:1.32;color:var(--muted)}
.a-faq .faq-list details,.b-faq .faq-list details{border-bottom:1.5px solid #d7eef2}
.a-faq .faq-list summary,.b-faq .faq-list summary{position:relative;display:grid;grid-template-columns:calc(26 * var(--u)) minmax(0,1fr) calc(16 * var(--u));align-items:center;column-gap:calc(7 * var(--u));min-height:calc(48 * var(--u));padding:calc(10 * var(--u)) 0;font-size:calc(14.6 * var(--u));font-weight:900;line-height:1.5;color:var(--ink);list-style:none;font-feature-settings:'palt'}
.a-faq .faq-list summary::-webkit-details-marker,.b-faq .faq-list summary::-webkit-details-marker{display:none}
.a-faq .faq-list .q,.b-faq .faq-list .q{font-size:calc(23 * var(--u));font-weight:900;line-height:1;color:var(--teal)}
.a-faq .faq-list summary::after,.b-faq .faq-list summary::after{content:'';justify-self:end;width:calc(16 * var(--u));height:calc(16 * var(--u));background:linear-gradient(var(--teal),var(--teal)) center/100% 2px no-repeat,linear-gradient(var(--teal),var(--teal)) center/2px 100% no-repeat}
.a-faq .faq-list details[open] summary::after,.b-faq .faq-list details[open] summary::after{background:linear-gradient(var(--teal),var(--teal)) center/100% 2px no-repeat}
.a-faq .faq-list .answer,.b-faq .faq-list .answer{padding:0 0 calc(12 * var(--u)) calc(34 * var(--u));font-size:calc(13.5 * var(--u));font-weight:400;line-height:1.85;color:var(--ink)}
.a-faq .faq-toggle,.b-faq .faq-toggle{display:none}
.a-faq .faq-more,.b-faq .faq-more{display:block;width:min(100%,calc(252 * var(--u)));white-space:nowrap;min-height:calc(44 * var(--u));margin:calc(22 * var(--u)) auto 0;padding:0 calc(10 * var(--u));border:1.5px solid var(--teal);border-radius:999px;background:#fff;color:var(--cyan-t);font-size:calc(16.5 * var(--u));font-weight:900}
.b-faq .faq-more{width:min(100%,calc(300 * var(--u)))}
.message{padding:calc(26 * var(--u)) var(--pad) calc(30 * var(--u));background:#1f3a40;color:#fff}
.message h2{margin:0 calc(-14 * var(--u)) 0 calc(5 * var(--u));font-size:calc(45 * var(--u));font-weight:900;line-height:1.16;color:#fff;font-feature-settings:'palt';white-space:nowrap}
.message h2 em{font-size:1.36em;color:#28c3d2}
.message .message-copy{margin:calc(16 * var(--u)) calc(-8 * var(--u)) 0 calc(9 * var(--u));font-size:calc(15.4 * var(--u));font-weight:500;line-height:1.38;color:#eef6f7}
.message .message-copy p+p{margin-top:calc(13 * var(--u))}
/* shared-closing: the closing CTA is drawn larger than the in-body ones (357×88u, ribbon 23u above it) */
.message .cta-block{max-width:none;margin:calc(26 * var(--u)) calc(-3 * var(--u)) 0}
.message .cta-block .cta-ribbon{margin-bottom:calc(12 * var(--u));padding:calc(4 * var(--u)) calc(30 * var(--u)) calc(5 * var(--u));font-size:calc(23 * var(--u))}
.message .cta-block .cta{min-height:calc(88 * var(--u));padding:0 calc(34 * var(--u)) 0 calc(20 * var(--u));border-radius:999px}
.message .cta-block .cta-label{font-size:calc(31 * var(--u));letter-spacing:.02em;white-space:nowrap}
.message .cta-block .cta-label small{font-size:calc(19.5 * var(--u))}
.message .cta-assure{margin-top:calc(10 * var(--u));font-size:calc(14 * var(--u));color:#d4e7ea}

/* =====================================================================================================================
   B-06 POINT 1 (the wall + the laptop), POINT 2 (B-roadmap, a scrolling table), the four skills (B-skills)
   ===================================================================================================================== */
.b-support .b-block--lecture .b-breakdown{margin-top:calc(8 * var(--u));font-size:calc(14 * var(--u));font-weight:800;white-space:nowrap;color:var(--ink)}
.b-support .b-block--lecture .b-breakdown b{color:var(--ink);font-weight:800;font-size:1em}
.b-support .lecture-wall{margin:calc(14 * var(--u)) calc(-10 * var(--u)) 0}
.b-support .laptop{margin:calc(20 * var(--u)) calc(-3 * var(--u)) 0}
.b-support .svc-note{text-align:right}
.roadmap-scroll{margin:calc(14 * var(--u)) calc(-1 * var(--pad)) 0;padding:0 var(--pad) calc(6 * var(--u));overflow-x:auto;-webkit-overflow-scrolling:touch}
.roadmap{width:max-content;min-width:calc(632 * var(--u));border-collapse:separate;border-spacing:0 calc(5 * var(--u));table-layout:fixed}
.roadmap th,.roadmap td{padding:0;border:0;background:#eaf6f9}
.roadmap thead th{height:calc(37 * var(--u));font-size:calc(15 * var(--u));font-weight:900;text-align:center;color:var(--ink);border-left:1px solid #c6e6ec}
.roadmap thead th:first-child{width:calc(140 * var(--u));border-left:0;border-radius:calc(10 * var(--u)) 0 0 calc(10 * var(--u))}
.roadmap thead th:last-child{border-radius:0 calc(10 * var(--u)) calc(10 * var(--u)) 0}
.roadmap thead th:not(:first-child){width:calc(123 * var(--u))}
.roadmap tbody th{height:calc(50 * var(--u));padding:0 calc(10 * var(--u));border-right:1px solid #c6e6ec;border-radius:calc(10 * var(--u)) 0 0 calc(10 * var(--u));font-size:calc(12.8 * var(--u));font-weight:900;line-height:1.35;text-align:left;color:var(--ink)}
.roadmap tbody td{position:relative;padding:0 calc(10 * var(--u));border-radius:0 calc(10 * var(--u)) calc(10 * var(--u)) 0;background:#eaf6f9 linear-gradient(90deg,transparent calc(25% - 1px),#c6e6ec calc(25% - 1px) 25%,transparent 25% calc(50% - 1px),#c6e6ec calc(50% - 1px) 50%,transparent 50% calc(75% - 1px),#c6e6ec calc(75% - 1px) 75%,transparent 75%)}
.rm-dots{display:flex;justify-content:space-between;align-items:center;width:calc(100% - 92 * var(--u))}
.rm-dots i{width:calc(5.5 * var(--u));height:calc(5.5 * var(--u));border-radius:50%;background:var(--teal)}
.rm-pill{position:absolute;right:calc(6 * var(--u));top:50%;transform:translateY(-50%);padding:calc(3 * var(--u)) calc(9 * var(--u));border-radius:999px;background:var(--cyan-t);color:#fff;font-size:calc(12 * var(--u));font-weight:900;white-space:nowrap}
.rm-line{display:block;height:calc(4 * var(--u));border-radius:2px;background:var(--teal)}
.rm-hint{margin-top:calc(4 * var(--u));text-align:right;font-size:max(11px,calc(12 * var(--u)));font-weight:600;color:var(--muted)}
.rm-hint::after{content:' →'}
.b-support .b-skills{padding-top:calc(24 * var(--u))}
.b-support .b-skills h3{position:relative;margin-inline:calc(-6 * var(--u));font-size:calc(26 * var(--u));font-weight:900;line-height:1.3;color:var(--ink);white-space:nowrap;font-feature-settings:'palt'}
.b-support .b-skills h3 em{color:var(--teal)}
.b-support .b-skills h3 .num{font-size:1.42em;letter-spacing:-.02em;line-height:1}
.b-support .b-skills h3::after{content:'';display:block;width:calc(53 * var(--u));height:calc(4 * var(--u));margin-top:calc(6 * var(--u));background:var(--orange)}
.b-support .b-skills ol{margin-top:calc(14 * var(--u))}
.b-support .b-skills li{display:flex;align-items:center;gap:calc(14 * var(--u));padding:calc(15 * var(--u)) 0;border-bottom:1.5px solid #d7eef2;font-size:calc(26 * var(--u));font-weight:900;line-height:1.2;color:var(--ink)}
.b-support .b-skills li b{display:flex;align-items:center;gap:calc(14 * var(--u));font-family:var(--jp);font-size:calc(41 * var(--u));font-weight:900;line-height:1;letter-spacing:-.02em;color:var(--teal)}
.b-support .b-skills li b::after{content:'';width:1.5px;height:calc(30 * var(--u));background:#bfe0e6}
.b-support .b-skills>p{margin-top:calc(10 * var(--u));font-size:calc(14 * var(--u));line-height:1.85;color:var(--ink)}
.b-support .b-skills>p+p{margin-top:calc(2 * var(--u))}

/* =====================================================================================================================
   B-07 収入にするサポート (B-income-support), B-08 個別相談 (B-consultation), B-09 特典 (B-benefits)
   ===================================================================================================================== */
.b-earn{position:relative;padding:calc(34 * var(--u)) var(--pad) calc(28 * var(--u));background:#eef8fa}
.b-plus{position:absolute;left:50%;top:0;width:calc(44 * var(--u));height:calc(44 * var(--u));transform:translate(-50%,-50%);border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(0,60,70,.12)}
.b-plus::before,.b-plus::after{content:'';position:absolute;left:50%;top:50%;width:calc(22 * var(--u));height:calc(4 * var(--u));margin:calc(-2 * var(--u)) 0 0 calc(-11 * var(--u));border-radius:2px;background:var(--teal)}
.b-plus::after{transform:rotate(90deg)}
.b-earn>.sec-head h2{font-size:calc(26 * var(--u));white-space:nowrap}
.b-earn>.sec-head h2 em{color:var(--teal)}
.b-card{margin-top:calc(12 * var(--u));padding:calc(14 * var(--u)) calc(12 * var(--u)) calc(14 * var(--u));background:#fff;border-radius:calc(14 * var(--u));box-shadow:0 calc(2 * var(--u)) calc(10 * var(--u)) rgba(0,60,70,.06)}
.b-point-tag{display:inline-block;margin:0;padding:calc(3 * var(--u)) calc(20 * var(--u)) calc(3 * var(--u)) calc(10 * var(--u));background:#0e9aa7;color:#fff;font-size:calc(14 * var(--u));font-weight:900;letter-spacing:.04em;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,0 100%)}
.b-earn .b-card h3{margin:calc(6 * var(--u)) 0 0;font-size:calc(19.5 * var(--u));font-weight:900;line-height:1.35;color:var(--ink);white-space:nowrap;background:linear-gradient(transparent 72%,#d4f1f5 72%)}
.b-earn .b-card h3 em{color:var(--teal);font-size:1.1em}
.b-earn .b-card h3 .num{font-size:1.3em}
.b-cmt-visual{position:relative;margin:calc(12 * var(--u)) 0 0;padding-right:calc(70 * var(--u))}
.b-cmt-screen{display:block;overflow:hidden;border-radius:calc(4 * var(--u));box-shadow:0 0 0 1px rgba(20,48,56,.1),0 calc(3 * var(--u)) calc(8 * var(--u)) rgba(20,48,56,.12)}
.b-cmt-screen img{display:block;width:100%;height:auto}
.b-bubbles{position:absolute;right:0;top:calc(4 * var(--u));width:calc(80 * var(--u));height:auto}
.b-earn .b-text{margin-top:calc(10 * var(--u));font-size:calc(13.5 * var(--u));line-height:1.75;color:var(--ink)}
.b-duo{display:grid;grid-template-columns:1fr 1fr;gap:calc(12 * var(--u));margin-top:calc(12 * var(--u))}
.b-duo li{display:flex;flex-direction:column;align-items:center;text-align:center}
.b-duo-tag{position:relative;z-index:1;margin:0 0 calc(-10 * var(--u));padding:calc(3 * var(--u)) calc(14 * var(--u));border-radius:999px;background:#0e9aa7;color:#fff;font-size:calc(14.5 * var(--u));font-weight:900}
.b-duo-pic{position:relative;display:block;width:calc(140 * var(--u));height:calc(140 * var(--u));overflow:hidden;border-radius:50%;background:#e0f3f6}
.b-duo-pic img{position:absolute;left:50%;top:calc(22 * var(--u));width:calc(84 * var(--u));height:auto;transform:translateX(-50%)}
.b-duo-head{position:absolute;left:50%;top:calc(45 * var(--u));transform:translate(-50%,-50%);color:#fff;font-size:calc(9.5 * var(--u));font-style:normal;font-weight:900;letter-spacing:.04em;white-space:nowrap}
.b-duo-head i{display:inline-block;width:.28em;height:.28em;margin:0 .2em;border-radius:50%;background:#fff;vertical-align:.28em}
.b-duo-text{margin-top:calc(8 * var(--u));font-size:calc(12.5 * var(--u));font-weight:700;line-height:1.6;color:var(--ink)}
.b-duo-text strong{font-size:1.2em;font-weight:900;color:var(--cyan-t)}
.b-earn .b-entry{margin-top:calc(18 * var(--u));padding:0;border:0;text-align:center}
.b-earn .b-entry>p{display:block;font-size:calc(19 * var(--u));font-weight:900;color:var(--ink)}
.b-earn .b-entry>p::before,.b-earn .b-entry>p::after{content:'';display:inline-block;width:calc(52 * var(--u));height:1.5px;margin:0 calc(12 * var(--u));vertical-align:middle;background:var(--teal)}
.b-earn .b-entry>p em{font-size:1.45em;color:var(--orange)}
.b-earn .b-entry ul{display:inline-flex;flex-wrap:nowrap;white-space:nowrap;margin-top:calc(2 * var(--u));padding:0 calc(6 * var(--u));background:linear-gradient(transparent 62%,#d4f1f5 62%)}
.b-earn .b-entry li{padding:0;border:0;font-size:calc(20.5 * var(--u));font-weight:900;color:var(--ink)}
.b-earn .b-entry li+li::before{content:'・'}
.b-earn .b-super{margin-top:calc(8 * var(--u));text-align:center;font-size:calc(13 * var(--u));font-weight:600;color:var(--ink)}
.b-earn .b-super span{margin-right:.4em;padding:0;background:none;color:var(--ink);font-weight:800}
.b-earn .b-super span::after{content:'｜';margin-left:.3em;color:var(--muted)}
.b-earn-note{text-align:center}

.b-consult{padding:calc(20 * var(--u)) calc(14 * var(--u));background:#eef8fa}
.b-consult-card{padding:calc(18 * var(--u)) calc(12 * var(--u)) calc(16 * var(--u));background:#fff;border-radius:calc(14 * var(--u));box-shadow:0 calc(3 * var(--u)) calc(14 * var(--u)) rgba(0,60,70,.08);text-align:center}
.b-consult-top{display:flex;align-items:center;justify-content:center;gap:calc(13 * var(--u));font-size:calc(18.5 * var(--u));font-weight:900;color:var(--ink)}
.b-consult-top::before,.b-consult-top::after{content:'';width:calc(65 * var(--u));height:1.5px;background:var(--teal)}
.b-consult .b-consult-kicker{margin-top:calc(12 * var(--u));font-size:calc(39 * var(--u));font-weight:900;line-height:1.2;color:var(--ink);font-feature-settings:'palt'}
.b-consult h2{margin:calc(2 * var(--u)) calc(-10 * var(--u)) 0;font-size:calc(64 * var(--u));font-weight:900;line-height:1.1;color:var(--teal);white-space:nowrap}
.b-consult .cta-block{max-width:none;margin:calc(16 * var(--u)) calc(-3 * var(--u)) 0}
.b-consult .cta-block .cta-ribbon{margin-bottom:calc(10 * var(--u));padding:calc(4 * var(--u)) calc(30 * var(--u)) calc(5 * var(--u));font-size:calc(21 * var(--u))}
.b-consult .cta-block .cta{min-height:calc(79 * var(--u));padding:0 calc(34 * var(--u)) 0 calc(20 * var(--u));border-radius:calc(16 * var(--u))}
.b-consult .cta-block .cta-label{font-size:calc(27 * var(--u));letter-spacing:.02em;white-space:nowrap}
.b-consult .cta-block .cta-label small{font-size:calc(19.5 * var(--u))}
.b-consult .cta-assure{display:flex;align-items:center;justify-content:center;gap:calc(10 * var(--u));margin-top:calc(12 * var(--u));font-size:calc(16 * var(--u));font-weight:800;color:var(--ink)}
.b-consult .cta-assure::before,.b-consult .cta-assure::after{content:'';width:calc(43 * var(--u));height:1.5px;background:var(--teal)}

.b-gift{padding:calc(12 * var(--u)) var(--pad) calc(28 * var(--u));background:radial-gradient(135% calc(212 * var(--u)) at 38% 0,#fafdfe 99.2%,transparent 100%) no-repeat,#e8f6f9;text-align:center}
.b-gift-kicker{display:flex;align-items:center;justify-content:center;gap:calc(12 * var(--u));font-size:calc(23 * var(--u));font-weight:900;color:var(--ink)}
.b-gift-kicker::before,.b-gift-kicker::after{content:'';width:calc(18 * var(--u));height:calc(20 * var(--u));background:linear-gradient(var(--orange),var(--orange)) 0 0/calc(2.4 * var(--u)) 100% no-repeat,linear-gradient(var(--orange),var(--orange)) 100% 100%/calc(2.4 * var(--u)) 60% no-repeat}
.b-gift-kicker::before{transform:skewX(30deg)}
.b-gift-kicker::after{transform:skewX(-30deg) scaleX(-1)}
.b-gift-lead{display:inline-block;margin-top:calc(8 * var(--u));padding:0 calc(14 * var(--u));font-size:calc(25.5 * var(--u));font-weight:900;line-height:1.3;color:var(--ink);background:linear-gradient(transparent 68%,#d4f1f5 68%)}
.b-gift-lead em{color:var(--teal)}
.b-gift-amt{display:flex;align-items:stretch;justify-content:center;gap:calc(8 * var(--u));margin:calc(8 * var(--u)) calc(-6 * var(--u)) 0;line-height:1}
.b-gift-amt strong{font-family:'Barlow Condensed',var(--jp);font-size:calc(108 * var(--u));font-weight:700;line-height:.78;letter-spacing:-.005em;color:var(--teal)}
.b-gift-side{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:calc(4 * var(--u));padding-bottom:calc(1 * var(--u))}
.b-gift-ticket{width:calc(92 * var(--u));height:auto;border-radius:calc(3 * var(--u))}
.b-gift-side b{font-size:calc(27 * var(--u));font-weight:900;line-height:1;color:var(--ink)}
.b-gift .ticket-card-cond{margin-top:calc(9 * var(--u));font-size:max(11px,calc(11.8 * var(--u)));font-weight:700;color:var(--ink)}
.b-gift .b-pair{display:grid;grid-template-columns:1fr 1.25fr;gap:calc(12 * var(--u));align-items:end;margin:calc(24 * var(--u)) calc(-8 * var(--u)) 0}
.b-gift .b-pair li{display:flex;flex-direction:column;align-items:center}
.b-gift .b-pair-pic{display:flex;align-items:flex-end;justify-content:center;width:100%;height:auto;padding:0;background:none}
.b-gift .b-pair-pic--book .stand-cover{--cw:98.5}
.b-gift .b-pair-pic--tablet{height:auto;margin-bottom:calc(2 * var(--u))}
.b-gift .b-pair-pic--tablet img{display:block;width:calc(182 * var(--u));height:auto;max-height:none;padding:calc(7 * var(--u));background:#1b2224;border:0;border-radius:calc(9 * var(--u));box-shadow:0 calc(6 * var(--u)) calc(12 * var(--u)) calc(-6 * var(--u)) rgba(20,40,46,.4)}
.b-gift .b-pair li{min-width:0}
.b-gift .b-pair p{margin-top:calc(12 * var(--u));font-size:calc(13.2 * var(--u));font-weight:900;color:var(--ink);white-space:nowrap}
.b-gift .b-pair i{display:inline-grid;place-items:center;width:1.4em;height:1.4em;margin-right:.3em;border-radius:50%;background:var(--teal);color:#fff;font-size:.86em;font-style:normal}
.b-gift-note{margin-top:calc(6 * var(--u));text-align:right}

/* B-11 比較表 (B-comparison): the JET column framed, scrolling sideways at a readable width */
.b-compare{padding:calc(20 * var(--u)) var(--pad) calc(28 * var(--u));background:#fff}
.compare-scroll{margin:0 calc(-1 * var(--pad));padding:0 var(--pad) calc(6 * var(--u));overflow-x:auto;-webkit-overflow-scrolling:touch}
.b-compare .compare{width:100%;min-width:360px;border-collapse:separate;border-spacing:0 calc(4 * var(--u));table-layout:fixed;background:none;font-size:13px}
.b-compare .compare thead th{padding:calc(9 * var(--u)) calc(6 * var(--u));border:0;background:#eaf6f9;color:var(--ink);font-size:calc(14.5 * var(--u));font-weight:900;text-align:center}
.b-compare .compare thead th:first-child{width:24%;border-radius:calc(8 * var(--u)) 0 0 calc(8 * var(--u))}
.b-compare .compare thead th.me{width:39%;background:#0e9aa7;color:#fff;font-size:calc(17 * var(--u));border-radius:calc(8 * var(--u)) calc(8 * var(--u)) 0 0}
.b-compare .compare thead th:last-child{background:#e9ecee;border-radius:0 calc(8 * var(--u)) calc(8 * var(--u)) 0}
.b-compare .compare tbody th,.b-compare .compare tbody td{padding:calc(7 * var(--u)) calc(7 * var(--u));border:0;background:#eef7f9;font-size:calc(11.8 * var(--u));line-height:1.5;vertical-align:middle;white-space:normal}
.b-compare .compare tbody th{font-size:calc(12.4 * var(--u));word-break:keep-all;font-weight:900;color:var(--ink)}
.b-compare .compare tbody td.me{background:#fff;color:var(--ink);font-weight:600;box-shadow:inset 2px 0 0 #0e9aa7,inset -2px 0 0 #0e9aa7}
.b-compare .compare tbody tr:last-child td.me{box-shadow:inset 2px 0 0 #0e9aa7,inset -2px 0 0 #0e9aa7,inset 0 -2px 0 #0e9aa7;border-radius:0 0 calc(8 * var(--u)) calc(8 * var(--u))}
.b-compare .compare tbody td:not(.me){background:#f3f5f6;color:var(--gray-t)}
.b-compare .compare td.me b.key{font-weight:900;color:var(--ink)}

/* phone 600–1039 and desktop for the Stage 3 blocks */
@media (min-width:600px){
  .a-course>*,.a-voice>*,.a-gift>*,.a-flow>*,.a-faq>*,.b-faq>*,.b-earn>*,.b-consult>*,.b-gift>*,.b-compare>*,.b-courses-sec>*{max-width:calc(390 * var(--u));margin-left:auto;margin-right:auto}
  .message>*{max-width:calc(390 * var(--u));margin-left:auto;margin-right:auto}
}
@media (min-width:1040px){
  .a-course,.a-voice,.a-gift,.a-flow,.a-faq,.b-faq,.b-earn,.b-consult,.b-gift,.b-compare,.b-courses-sec,.message,.b-support{--u:1.42px}
  .a-course>*,.a-voice>*,.a-gift>*,.a-flow>*,.a-faq>*,.b-faq>*,.b-earn>*,.b-consult>*,.b-gift>*,.b-compare>*,.b-courses-sec>*,.message>*{max-width:760px}
  .a-panel-main{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
  .b-courses{grid-template-columns:1fr;max-width:760px;margin:0 auto}
  .a-flow .flow{display:grid;grid-template-columns:1fr;max-width:640px}
  .roadmap-scroll{margin:14px 0 0;padding:0 0 6px}
  .b-compare .compare{min-width:0}
}
}
