.hero-photo{padding:0;transform:none;overflow:hidden;background:#0d2348;border:1px solid rgba(255,255,255,.16)}
.hero-photo>img{width:100%;height:520px;object-fit:cover}
.service-image{display:block;width:calc(100% + 56px);height:210px;object-fit:cover;margin:-28px -28px 24px;border-bottom:1px solid #dde3e8}
.page-visual{margin:0 0 34px;overflow:hidden;border-radius:26px;border:1px solid rgba(255,255,255,.16);box-shadow:0 24px 60px rgba(0,0,0,.22);max-width:900px}
.page-visual img{display:block;width:100%;height:clamp(270px,42vw,520px);object-fit:cover}
.detail-hero .wrap{position:relative;padding-right:min(44vw,500px)}
.detail-hero .page-visual{position:absolute;right:0;top:0;width:min(38vw,440px);margin:0}
.detail-hero .page-visual img{height:430px}
@media(max-width:800px){.hero-photo>img{height:320px}.service-image{width:calc(100% + 44px);margin:-22px -22px 22px}.detail-hero .wrap{padding-right:0}.detail-hero .page-visual{position:static;width:100%;margin-bottom:28px}.page-visual img,.detail-hero .page-visual img{height:300px}}
.visual-proof{padding:76px 0;background:#f3f6f8}
.visual-proof h2{max-width:720px;margin-bottom:28px}
.visual-proof-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.visual-proof-grid figure{margin:0;background:#fff;border:1px solid #dce3e8;border-radius:24px;overflow:hidden;box-shadow:0 18px 45px rgba(7,21,47,.08)}
.visual-proof-grid img{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.visual-proof-grid figcaption{padding:18px 20px 21px;color:#26354b;font-weight:700;line-height:1.4}
@media(max-width:700px){.visual-proof{padding:56px 0}.visual-proof-grid{grid-template-columns:1fr}}
