/* ⑤ v3: fixed content, editorial hierarchy. */
.cost-row{grid-template-rows:auto auto auto;column-gap:24px;row-gap:10px}
.cost-unit{display:grid;grid-template-rows:subgrid;grid-row:span 3;padding:0 0 20px}
.cost-unit+.cost-unit{padding:0 0 20px 24px}
.cost-label{align-self:end;line-height:1.8}
.cost-price strong{margin:0;font-size:24px;line-height:1.6}
.cost-detail{font-size:16px;line-height:1.85}
.cond{padding:24px}
.mid{padding:30px 0;background:transparent;border-block:1px solid var(--line)}
.mid .cond,.final .cond{padding:24px}
.contract-note{padding:18px 0 18px 18px}
.return-panel{padding:20px 18px}
.section-steps>.wrap>.label{margin-left:0}
.steps+.pl{margin-top:30px;padding-top:24px;border-top:1px solid var(--line);max-width:76ch}
.step p+p{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
/* Use complete generated frames with softened edges, rather than a cropped corner. */
.section-comparison::before,.section-steps::before,.section-qa::before,.section-pricing::before,#terms::before{display:none}
.section-qa>.wrap,.section-pricing>.wrap,.terms{isolation:isolate}
.section-qa>.wrap::before,.section-pricing>.wrap::before,.terms::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:0 0 auto;height:240px;background:url("assets/frame-desktop.png") center/100% 100% no-repeat;opacity:.34;mask-image:linear-gradient(#000 65%,transparent)}
.section-qa>.wrap>.label,.section-pricing>.wrap>.label,.terms>.label{padding-top:18px}
.section-qa h2,.section-pricing h2,.terms h2{max-width:24em}
.qa{border-top:3px solid var(--main);margin-top:36px}
.qa li{grid-template-columns:260px minmax(0,1fr);gap:36px;padding:32px 0;border-bottom:1px solid #b6d3e4}
.qa h3{padding:12px 18px 16px 0;border-top:3px solid var(--main);color:var(--main-deep);font-size:21px;line-height:1.7}
.qa .a{padding-top:12px}
.qa li.main{padding:30px 24px;grid-template-columns:236px minmax(0,1fr);gap:36px;border-left:0;background:#eaf6fd}
.qa li.main h3{border-top:0;padding-top:6px}
.qa li.main .a{padding-top:6px}
.qa li.qa-duration{display:block;padding:36px 0 40px;background:transparent}
.qa-duration h3{max-width:35em;padding:18px 24px;background:#dceef9;border-top:3px solid var(--main)}
.qa-duration .a{padding-top:24px;max-width:76ch;margin-inline:auto}
.qa-duration .duration-source{padding-left:22px;border-left:2px solid #b5cddd}
.qa-duration .duration-difference{padding:22px 24px 0;background:#eef7fd;border:0;margin-top:28px!important}
.qa-duration .duration-conclusion{padding:14px 24px 24px;background:#eef7fd;border-bottom:2px solid var(--main);margin-top:0!important;font-weight:700}
.qa-duration .duration-note{padding-top:6px}
.qa li.qa-safety{background:#fff5f7;padding-inline:24px;grid-template-columns:236px minmax(0,1fr)}
.qa-safety h3{border-top-color:#b76c83}
.qa li.qa-review{border-bottom:3px solid var(--main)}
.section-pricing{background:#f6fbff}
.plans{gap:0;border-bottom:2px solid var(--main)}
.plans li{padding:26px 24px 30px;border-bottom:0;border-top:3px solid var(--main);background:#fff}
.plans li+li{border-left:1px solid #bdd4e2}
.plans .name{min-height:3.2em;padding-bottom:16px;margin-bottom:22px;border-bottom:1px solid var(--line)}
.plans dl{grid-template-columns:5em minmax(0,1fr);gap:16px 14px}
.plans .yen{font-size:26px}
.plans dd .unit{white-space:nowrap}
.incl{position:relative;margin-top:36px;background:#e4f2fc;border-left:0;border-top:3px solid var(--main);padding:28px 30px}
.incl b{font-size:23px}
.incl>span{display:block;max-width:76ch}
.section-pricing .sub{max-width:none;margin-top:48px;padding:20px 24px;background:#e3f0f9;border-left:5px solid var(--main)}
.section-pricing .source-comparison{max-width:76ch;margin:24px auto 0}
.section-pricing .source-comparison>.para{padding:0;border:0}
.source-comparison .source-excerpt{padding-left:20px!important;border-left:2px solid #bbd2e1!important}
.source-comparison .source-qualification{padding-left:22px!important}
.source-comparison .source-finding{padding:18px 22px!important;background:#e0edf7;border-block:1px solid #b4cfe2!important;margin-block:26px}
.section-pricing .source-comparison>.source-context{padding-left:0!important;border-left:0!important}
.source-comparison .source-conclusion{padding:22px 24px!important;background:#fff;border:0!important;border-bottom:3px solid var(--main)!important;font-weight:700;margin-top:28px!important}
.terms{position:relative;padding-top:32px}
.terms::before{inset:0 0 auto;height:210px;opacity:.25}
.terms .sum{max-width:76ch;margin-bottom:36px}
.trow{grid-template-columns:190px minmax(0,1fr);padding:30px 24px;gap:32px}
.trow dt{font:900 20px/1.65 var(--round);padding-top:4px}
.trow dd>.c{font:700 18px/1.85 "Hiragino Sans","Yu Gothic UI","Meiryo",sans-serif}
.trow dd small{font-size:16px;line-height:1.95;margin-top:22px;padding-top:18px;border-top:1px solid #c5d9e6;color:var(--ink)}
.trow.key{background:#eef7fc}
.trow.caution-row{background:#fff3f6;border-top-color:#dec0ca}
.trow.ingredients-row{display:block;background:#f5f8fa;margin-block:34px;border-top:3px solid #657b8b;padding:28px 30px}
.ingredients-row dt{font-size:23px;margin-bottom:14px}
.ingredients-row dd small{color:var(--ink);line-height:2.1}
@media(max-width:859px){
 .hero-grid{grid-template-columns:minmax(0,.55fr) minmax(0,.45fr);column-gap:8px;row-gap:0}
 .hero-art{display:contents}
 .hero-stage{grid-column:2;grid-row:2;width:100%;padding:2px 0;background-size:100% 100%}
 .hero-illustration{max-height:none;width:100%}
 .hero-grid .cap{grid-column:1/-1;grid-row:3;margin-top:14px;max-width:none;font-size:12px;line-height:1.85}
 .hero-grid .lead{grid-row:4;margin-top:20px}
 .hero-grid .cta{grid-row:5}
 .hero-grid .cond{grid-row:6}
 .cond,.mid .cond,.final .cond{padding:20px 16px}
 .mid{padding:28px 0}
 .cost-row{grid-template-rows:none;gap:0}
 .cost-unit,.cost-unit+.cost-unit{grid-template-rows:none;grid-row:auto;gap:6px;padding:0 0 20px}
 .cost-unit+.cost-unit{padding:20px 0}
 .cost-price strong{font-size:23px}
 .cost-label{align-self:auto}
 .contract-note{padding:16px 12px}
 .return-panel{padding:18px 12px}
 .qa li,.qa li.main,.qa li.qa-safety{grid-template-columns:1fr;gap:0;padding:26px 0}
 .qa h3,.qa li.main h3{font-size:21px;padding:14px 16px;margin:0 0 18px;border-top:0;border-left:3px solid var(--main);background:#e8f4fc}
 .qa li.main{padding-inline:16px}
 .qa li.main h3{padding-left:0;background:transparent;border-left:0}
 .qa .a,.qa li.main .a{padding-top:0}
 .qa li.qa-duration{padding-top:30px}
 .qa-duration h3{padding:18px 16px;background:#dceef9}
 .qa-duration .a{padding-top:4px}
 .qa-duration .duration-source{padding-left:16px}
 .qa-duration .duration-difference{padding:20px 16px 0}
 .qa-duration .duration-conclusion{padding:14px 16px 20px}
 .qa li.qa-safety{padding:26px 16px}
 .qa-safety h3{padding-left:0;background:transparent;border-left:0;color:var(--ink)}
 .plans{border-bottom:0;gap:22px}
 .plans li{padding:24px 18px;border-bottom:1px solid var(--main)}
 .plans li+li{border-left:0}
 .plans .name{min-height:0;font-size:23px}
 .plans dl{grid-template-columns:5em minmax(0,1fr);gap:16px}
 .incl{padding:24px 18px}
 .incl b{font-size:21px}
 .section-pricing .sub{font-size:22px;line-height:1.65;padding:18px 16px;margin-top:36px}
 .section-pricing .source-comparison>.source-excerpt{padding-left:16px!important}
 .source-comparison .source-qualification{padding-left:18px!important}
 .source-comparison .source-finding,.source-comparison .source-conclusion{padding:20px 16px!important}
 .section-qa>.wrap::before,.section-pricing>.wrap::before,.terms::before{background-image:url("assets/frame-mobile.png");height:200px;opacity:.22}
 .trow{grid-template-columns:1fr;gap:14px;padding:26px 16px}
 .trow dt{font-size:20px;padding-top:0}
 .trow dd>.c{font-size:17px}
 .trow dd small{margin-top:20px}
 .trow.ingredients-row{padding:26px 16px;margin-block:28px}
}
@media(max-width:359px){
 .hero-grid h1{font-size:25px}
 .cond,.mid .cond,.final .cond{padding:18px 12px}
 .cost-price strong{font-size:22px}
 .plans li{padding-inline:16px}
 .plans dl{column-gap:12px}
 .plans .yen{font-size:24px}
 .qa h3{font-size:20px}
 .trow{padding-inline:12px}
}
