/* Documents hero only. Existing global header and other page sections are preserved. */
.dh280{container-type:inline-size;max-width:1200px;margin:0 auto;background:#fff;color:#08295e;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;isolation:isolate}
.dh280 *{box-sizing:border-box}.dh280 p,.dh280 ul,.dh280 h1{margin:0} .dh280 .dh280-scene{position:relative;aspect-ratio:1024/875;overflow:hidden} .dh280 .dh280-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover} .dh280 .dh280-content{position:relative;padding:3.1cqw 3.5cqw} .dh280 .dh280-badge{display:inline-block;padding:.45cqw 3.4cqw;border-radius:8cqw;background:linear-gradient(110deg,#ff666a,#ff354d);color:white;font-size:3.6cqw;font-weight:900;line-height:1.45} .dh280 .dh280-eyebrow{font-size:2.8cqw;font-weight:800;line-height:1.5;margin-top:2.1cqw!important;white-space:nowrap}.dh280 .dh280-title{font-size:11.55cqw;font-weight:900;letter-spacing:-.07em;line-height:1.08;margin-top:1.5cqw;max-width:57%;color:#05265a;text-shadow:0 0 1.7cqw #fff} .dh280 .dh280-title span, .dh280 .dh280-title em{display:block;white-space:nowrap} .dh280 .dh280-title small{font-size:.78em} .dh280 .dh280-title em{font-style:normal;color:#ff4b05} .dh280 .dh280-lead{border-left:.55cqw solid #ff6513;border-radius:.25cqw;padding-left:2.2cqw;margin-top:2.1cqw!important;font-size:3.4cqw;font-weight:800;line-height:1.35;width:51%;text-shadow:0 0 1cqw white} .dh280 .dh280-tagline{display:inline-block;color:#f67415;font-size:3.5cqw;font-style:italic;font-family:"Yu Mincho",serif;line-height:1.4;transform:rotate(-7deg);margin:3.1cqw 0 0 4cqw!important;text-shadow:0 0 1cqw white} .dh280 .dh280-tagline span{display:inline-block;margin-left:4cqw;border-bottom:.3cqw solid #ff711e} .dh280 .dh280-bottom{position:relative;margin-top:-5.4cqw;padding:0 2.8cqw 2.3cqw;background:linear-gradient(transparent 0,white 12cqw)} .dh280 .dh280-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:2cqw 1.5cqw!important;gap:1cqw;background:white;border-radius:2cqw;box-shadow:0 .2cqw .5cqw #11335b15} .dh280 .dh280-features li{display:flex;align-items:center;justify-content:center;gap:1.1cqw;font-size:2.85cqw;line-height:1.2;font-weight:800;padding:.3cqw .5cqw;min-width:0} .dh280 .dh280-features li+li{border-left:1px solid #cdd8e2} .dh280 .dh280-features strong{color:#ff5017}.dh280 .icon{display:inline-flex;flex-shrink:0;width:6.2cqw;height:6.2cqw}.dh280 .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round} .dh280 .dh280-yen{font-size:5cqw;line-height:1;width:6.4cqw;height:6.4cqw;border:.45cqw solid currentColor;border-radius:50%;text-align:center;flex-shrink:0} .dh280 .dh280-offer{border:.35cqw solid #ff7328;border-radius:2cqw;padding:1.6cqw 1.8cqw;margin-top:1.7cqw;background:white} .dh280 .dh280-offer-line{display:flex;align-items:center;justify-content:space-between;gap:1cqw;white-space:nowrap} .dh280 .dh280-conditional{font-size:2.4cqw;background:#fff0e9;padding:1.1cqw 1.5cqw;font-weight:800;border-radius:1cqw} .dh280 .dh280-offer-line>strong{color:#ff5105;font-size:3.8cqw;font-weight:900;letter-spacing:-.05em} .dh280 .dh280-offer-line b{font-size:1.35em} .dh280 .dh280-offer-line b small{font-size:.7em} .dh280 .dh280-cap{border-radius:1.6cqw;background:#ff580c;color:white;padding:1.2cqw;font-size:2.5cqw;font-weight:800} .dh280 .dh280-terms{font-size:2.5cqw;line-height:1.45;margin-top:1cqw!important} .dh280 .dh280-cta, .dh280 .dh280-phone{display:flex;align-items:center;justify-content:center;position:relative;text-decoration:none!important;margin:1.6cqw .7cqw 0;border-radius:12cqw;gap:1.7cqw} .dh280 .dh280-cta{background:linear-gradient(115deg,#ffa21c,#ff3b49);color:white!important;min-height:12.5cqw;padding:1.3cqw 8cqw} .dh280 .dh280-timer{width:7.8cqw;height:7.8cqw;flex-shrink:0} .dh280 .dh280-cta>span:not(.dh280-arrow){text-align:center} .dh280 .dh280-cta strong{font-size:5.6cqw;font-weight:900;line-height:1.15;white-space:nowrap} .dh280 .dh280-cta strong small{display:inline;font-size:.65em} .dh280 .dh280-cta small{display:block;font-size:2.6cqw;line-height:1.25;font-weight:700} .dh280 .dh280-arrow{position:absolute;right:4.1cqw;font-size:6cqw;line-height:1} .dh280 .dh280-phone{min-height:10cqw;border:.35cqw solid #0785e8;background:white;color:#0656b8!important;font-weight:900;font-size:4.5cqw;padding:1.2cqw 8cqw} .dh280 .dh280-phone .icon{width:5.8cqw;height:5.8cqw} .dh280 .dh280-note{text-align:center;font-size:2.2cqw;line-height:1.5;margin-top:1.5cqw!important;color:#4a5261}.dh280 a:focus-visible{outline:3px solid #07265b;outline-offset:4px}.dh280 a:hover{filter:brightness(.96)}

/* Desktop only: mobile/tablet styles above remain unchanged. */
@media (min-width: 1024px) {
 .dh280 .dh280-scene{aspect-ratio:auto;min-height:430px;height:38cqw;max-height:456px;background:linear-gradient(105deg,#f5fbff 8%,#e9f7ff 56%,#bde7fc)}
 .dh280 .dh280-art{left:auto;right:0;width:62%;height:100%;object-fit:contain;object-position:right bottom}
 .dh280 .dh280-content{padding:24px 36px;width:100%;height:100%;background:linear-gradient(90deg,#f6fcfff2 0%,#f6fcffe8 32%,#f6fcff00 59%)}
 .dh280 .dh280-badge{font-size:20px;padding:4px 23px;border-radius:30px}
 .dh280 .dh280-eyebrow{font-size:clamp(15px,1.6cqw,19px);margin-top:12px!important;line-height:1.45}
 .dh280 .dh280-title{font-size:clamp(48px,5.1cqw,61px);max-width:58%;line-height:1.15;letter-spacing:-.05em;margin-top:18px;text-shadow:0 0 16px white}
 .dh280 .dh280-title>span{display:inline}
 .dh280 .dh280-title>em{display:block;font-size:1.15em;margin-top:3px}
 .dh280 .dh280-lead{font-size:22px;line-height:1.4;width:55%;margin-top:17px!important;padding-left:16px;border-left-width:4px}
 .dh280 .dh280-tagline{font-size:19px;line-height:1.3;transform:rotate(-3deg);margin:14px 0 0 18px!important}
 .dh280 .dh280-tagline br{display:none}
 .dh280 .dh280-tagline span{margin-left:4px;border-bottom-width:2px}
 .dh280 .dh280-bottom{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:12px 18px;margin-top:0;padding:12px 30px 16px;background:#fff}
 .dh280 .dh280-features{grid-column:1/-1;padding:10px 12px!important;gap:12px;border-radius:14px;border:1px solid #e4edf3}
 .dh280 .dh280-features li{font-size:18px;line-height:1.25;gap:12px;padding:0 12px}
 .dh280 .dh280-features .icon{width:38px;height:38px}
 .dh280 .dh280-yen{width:38px;height:38px;font-size:30px;border-width:3px}
 .dh280 .dh280-offer{grid-column:1;grid-row:2/4;border-width:2px;border-radius:14px;padding:14px;margin:0;display:flex;flex-direction:column;justify-content:center}
 .dh280 .dh280-offer-line{flex-wrap:wrap;justify-content:flex-start;gap:5px 10px;line-height:1.2}
 .dh280 .dh280-conditional{font-size:13px;padding:6px 9px;border-radius:6px}
 .dh280 .dh280-offer-line>strong{font-size:clamp(22px,2.3cqw,28px);letter-spacing:-.04em}
 .dh280 .dh280-cap{font-size:14px;padding:7px 9px;border-radius:8px}
 .dh280 .dh280-terms{font-size:14px;line-height:1.65;margin-top:8px!important}
 .dh280 .dh280-cta{grid-column:2;grid-row:2;min-height:74px;margin:0;padding:8px 42px;border-radius:44px;gap:10px}
 .dh280 .dh280-cta strong{font-size:31px;line-height:1.1}
 .dh280 .dh280-cta strong small{font-size:.65em}
 .dh280 .dh280-cta small{font-size:14px;line-height:1.3}
 .dh280 .dh280-timer{width:45px;height:45px}
 .dh280 .dh280-arrow{right:20px;font-size:34px}
 .dh280 .dh280-phone{grid-column:2;grid-row:3;min-height:58px;margin:0;padding:8px 42px;border-width:2px;border-radius:40px;font-size:26px;gap:12px}
 .dh280 .dh280-phone .icon{width:30px;height:30px}
 .dh280 .dh280-note{grid-column:1/-1;font-size:12px;line-height:1.5;margin-top:0!important}
}

/* Fill the entire desktop scene with one continuous wide image. */
@media (min-width: 1024px) {
 .dh280 .dh280-art{left:0;right:0;width:100%;height:100%;object-fit:cover;object-position:right center}
 .dh280 .dh280-content{background:linear-gradient(90deg,rgba(255,255,255,.82) 0%,rgba(255,255,255,.68) 35%,rgba(255,255,255,0) 64%)}
}
