/* d118 / CK-LP-VISUALDESIGN-004,027: existing content, visible grouping. */
.hero-art{position:relative;isolation:isolate;margin:0;padding:44px 0 0;align-self:center}
.hero-art::before{content:'';position:absolute;z-index:-1;pointer-events:none;inset:-120px -24px -110px -24px;background:url('assets/hero-frame-v6.png') center/contain no-repeat;mask-image:none}
.hero-art img{width:100%;max-width:none;border:5px solid var(--paper);outline:none;aspect-ratio:3/2;object-fit:contain}
.hero-art .cap{padding:16px 10px 18px;margin:0;background:var(--paper);font-size:14px;line-height:1.85;border-bottom:1px solid #b7ccbf}
.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:40px;min-height:0}
.hero .lead{max-width:none}
.lead,.cond,.list-copy,.a,.step p,.pl,.src,.sum,.trow dd small,footer p{text-wrap:pretty;line-break:strict}
[data-balance-tail]{text-wrap:balance}
.everyday h2{text-wrap:balance}
.cond{font-size:16px;line-height:1.95}
.hero .cond,.final .cond{max-width:680px}
.cond .ln{margin-top:16px}
.cond .commitment,.cond .cancellation{display:block}
.cond .cancellation{margin-top:14px}
.cond .ln:nth-child(3){padding:14px 0 0;border:0;border-top:2px solid #7fa68d}
.cond .ln:nth-child(4){margin-top:18px;padding-top:16px}
.cond b{color:var(--main-deep)}
.cond .ln,.cond .commitment,.cond .cancellation,.trow dd>.c,.qa li>b,.ba-tag,.plans dd,.comparison-notes td,.comparison-notes th{text-wrap:balance}
.qa{border-left:0;padding-left:0}
.qa li:not(.main){padding:32px 28px;grid-template-columns:15em minmax(0,1fr);gap:36px}
.qa li.main{padding:32px 28px;border-left:0}
.qa li.question-important{background:#f0f7f2;border-block:1px solid #b7ccbf;box-shadow:inset 4px 0 #7fa68d}
.qa li.question-important>b{font-weight:700}
.questions .wrap>.pl{margin-left:28px}
.trow dd{font-weight:400}
.trow dd>.c{font-weight:700}
.trow dd small{font-size:16px;line-height:1.95;color:#344b3d}
.trow .detail-part.exception{padding:16px 20px;border:0;border-left:2px solid #7fa68d;background:#ffffffa6}
.trow .payment-method,.trow .detail-part.app-procedure,.trow .detail-part.app-rules,.trow.critical .detail-part.app-rules{padding:20px 24px 24px;background:#fff;border:1px solid #cbd9d0;border-left:3px solid #7fa68d}
.trow .method-title{display:table;width:fit-content;max-width:100%;margin:-20px 0 16px -24px;padding:11px 18px 11px 21px;background:#dfeee4;color:#0e4f3c;font-size:18px;font-weight:700;line-height:1.8;text-wrap:pretty}
.trow .detail-part.app-rules .detail-sentence:first-child>.method-title{margin-top:-20px}
.trow .detail-part+.detail-part{margin-top:26px}
.trow .detail-part.source-only{padding:0;color:#4a5a52}
.trow .detail-part.source-only+.detail-part:not(.source-only){margin-top:24px}
.trow .app-method{padding-left:16px;border-left:2px solid #b7ccbf;line-height:1.95}
.trow .app-method+.app-method{margin-top:20px}
.method-brand{font-weight:700;color:#0e4f3c}
.app-rules .detail-sentence:nth-child(3){padding:20px 0 0;border-top:2px solid #7fa68d;color:#223c2b;font-weight:700}
.app-rules .detail-sentence:nth-child(4){padding:14px 0 0;border-top:1px solid #cbd9d0}
.days li::before{height:16px;width:60px;border:1px solid #56745e}
.days li,.days li:first-child{grid-template-rows:16px auto 1fr;gap:12px}
.days li:nth-child(4)::before{background:linear-gradient(to right,#28563e 90%,#e0702f 90%);box-shadow:inset -6px 0 0 #e0702f}
footer p{max-width:970px}
@media(min-width:860px){
 .hero-art{padding-top:0}
 .hero-art::before{inset:-140px -55px -120px -55px;background-position:center top}
 .hero{padding-bottom:72px}
 .qa li:not(.main){grid-template-columns:14em minmax(0,1fr)}
 .trow[data-topic="毎月の支払い"] dd>.c:first-child{padding-bottom:12px;border-bottom:1px solid #b7ccbf}
}
@media(max-width:859px){
 .hero-grid{grid-template-columns:minmax(0,1fr);gap:0}
 .hero-art{margin:0 0 16px;padding:42px 0 0;background:none}
 .hero-art::before{inset:0 -8px 36px;background-position:center top;background-size:100% auto}
 .hero-art img{width:100%;max-width:540px;border-width:3px}
 .hero-art .cap{font-size:14px;padding:14px 0 0;border:0;max-width:none}
 .qa li:not(.main){display:block;padding:28px}
 .qa li.main{padding:28px}
 .qa li:not(.main)>.a{margin-top:16px}
 .questions .wrap>.pl{margin-left:28px}
 .days li,.days li:first-child{grid-template-columns:60px minmax(0,1fr);grid-template-rows:auto auto;gap:5px 16px}
 .days li::before{width:60px;height:16px;align-self:center;margin:0;float:none}
 .days b{line-height:1.8}
}
@media(max-width:559px){
 .wrap{padding-inline:20px}
 .hero-art img{width:100%;max-width:none}
 .hero-art::before{inset:0 -8px 48px}
 .qa li.main,.qa li:not(.main){padding:26px 20px}
 .questions .wrap>.pl{margin-left:20px}
 .qa li.main>b{font-size:21px}
 .trow .payment-method,.trow .detail-part.app-procedure,.trow .detail-part.app-rules,.trow.critical .detail-part.app-rules{padding:18px 16px 20px}
 .trow .method-title{font-size:17px;margin:-18px 0 16px -16px;padding:11px 13px}
 .trow .detail-part.app-rules .detail-sentence:first-child>.method-title{margin-top:-18px}
 .trow .detail-part.exception{padding:16px 14px}
 .trow .app-method{padding-left:12px}
}
@media(max-width:359px){
 .hero-art img{max-width:none;width:100%}
 .hero-art .cap{font-size:14px}
 .hero-heading .eyebrow{font-size:12px}
 .qa li.main,.qa li:not(.main){padding:24px 16px}
 .questions .wrap>.pl{margin-left:16px}
 .qa li.main>b{font-size:20px}
 .trow .payment-method,.trow .detail-part.app-procedure,.trow .detail-part.app-rules,.trow.critical .detail-part.app-rules{padding-inline:12px}
 .trow .method-title{margin-left:-12px;padding-inline:10px}
}
