/* HOME SERVICE専用。他ページと共通要素には適用しない。 */
.service-section{--service-photo-position:50% 48%;padding:100px 0 112px;background:#F3F7FF;color:#153457}.service-section .service-section__inner{width:min(1200px,calc(100% - 96px));margin-inline:auto}.service-section .service-section__heading{margin:0 0 48px}.service-section .service-section__label{margin:0;color:#3154e8;font:700 clamp(42px,5vw,64px)/1.2 Arial,sans-serif;letter-spacing:.045em}.service-section .service-section__heading-line{display:block;width:44px;height:3px;background:#3154e8;margin:24px 0 18px}.service-section .service-section__jp{margin:0;font-size:20px;line-height:1.7;font-weight:700}.service-section .service-section__composition{display:grid;grid-template-columns:minmax(0,1fr);isolation:isolate}.service-section .service-section__visual{grid-area:1/1;position:relative;margin:0;height:520px;overflow:hidden;border-radius:22px}.service-section .service-section__image{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--service-photo-position)}.service-section .service-section__card{grid-area:1/1;z-index:1;align-self:start;width:min(600px,56%);margin:280px 0 0 40px;padding:44px;border-radius:22px;background:#fff;box-shadow:0 14px 44px #1534570a}.service-section .service-section__logo{display:block;width:260px;max-width:100%;height:auto;margin:0 0 28px;object-fit:contain}.service-section .service-section__title{margin:0 0 24px;font-size:34px;line-height:1.65;letter-spacing:.02em;font-weight:700}.service-section .service-section__description{margin:0;font-size:15px;line-height:2;color:#475569;overflow-wrap:anywhere}.service-section .service-section__action{margin-top:28px;text-align:left}.service-section .service-section__link{display:inline-flex;align-items:center;gap:16px;min-height:48px;color:#3154e8;font-size:14px;line-height:1.7;font-weight:700;text-decoration:none;white-space:nowrap}.service-section .service-section__cta-circle{display:grid;place-items:center;flex:none;width:32px;height:32px;border:1px solid #3154e8;border-radius:50%}.service-section .service-section__cta-circle svg{width:18px;height:18px;transition:transform .2s ease}.service-section .service-section__link:hover svg{transform:translateX(3px)}.service-section .service-section__link:focus-visible{outline:3px solid #6b91ff;outline-offset:5px;border-radius:2px}
@media(prefers-reduced-motion:no-preference){.service-section.service-section--pending [data-service-reveal]{opacity:0;transform:translateY(12px)}.service-section.service-section--animated [data-service-reveal]{transition:opacity .65s ease,transform .65s ease}.service-section.service-section--animated [data-service-reveal="photo"]{transition-delay:.12s}.service-section.service-section--animated [data-service-reveal="card"]{transition-delay:.24s}.service-section.service-section--animated [data-service-reveal="logo"]{transition-delay:.36s}.service-section.service-section--animated [data-service-reveal="title"]{transition-delay:.44s}.service-section.service-section--animated [data-service-reveal="description"]{transition-delay:.52s}.service-section.service-section--animated [data-service-reveal="cta"]{transition-delay:.6s}}
@media(min-width:768px) and (max-width:1023px){.service-section{padding:88px 0}.service-section .service-section__inner{width:calc(100% - 64px)}.service-section .service-section__visual{height:440px}.service-section .service-section__card{width:70%;margin:230px 0 0 24px;padding:36px}.service-section .service-section__title{font-size:30px}}
@media(max-width:767px){.service-section{padding:64px 0 72px}.service-section .service-section__inner{width:calc(100% - 32px)}.service-section .service-section__heading{margin-bottom:30px}.service-section .service-section__label{font-size:42px}.service-section .service-section__heading-line{margin:20px 0 14px;width:36px}.service-section .service-section__jp{font-size:17px}.service-section .service-section__visual{grid-area:1/1;height:auto;aspect-ratio:4/3;border-radius:16px}.service-section .service-section__card{grid-area:2/1;width:calc(100% - 24px);margin:-36px auto 0;padding:30px 24px;border-radius:16px}.service-section .service-section__logo{width:220px;margin-bottom:24px}.service-section .service-section__title{font-size:clamp(24px,6.5vw,29px);letter-spacing:0;margin-bottom:22px}.service-section .service-section__description{font-size:14px;line-height:1.95}.service-section .service-section__action{margin-top:24px}.service-section .service-section__link{font-size:13px;gap:12px}}
@media(prefers-reduced-motion:reduce){.service-section [data-service-reveal]{opacity:1!important;transform:none!important;transition:none!important}.service-section .service-section__cta-circle svg{transition:none}.service-section .service-section__link:hover svg{transform:none}}

/* HOME SERVICEのキャッチコピーを全画面幅で1行表示。 */
.service-section .service-section__title{white-space:nowrap;font-size:clamp(20px,2.05vw,29px);letter-spacing:0}
@media(max-width:767px){.service-section .service-section__title{font-size:clamp(12px,3.8vw,22px);letter-spacing:0}}


.service-section .service-section__title { font-weight:900; }

/* HOME SERVICEのキャンスタロゴを拡大。元画像の縦横比を維持。 */
.service-section .service-section__logo{width:360px;max-width:100%;height:auto}
@media(max-width:767px){.service-section .service-section__logo{width:280px}}

/* HOMEのキャッチコピー色。 */
.service-section .service-section__title{color:#3154E8}

/* HOMEの説明文の文字色。 */
.service-section .service-section__description{color:#25364D}

/* HOMEのキャンスタ説明文を2px拡大。 */
.service-section .service-section__description{font-size:17px}
@media(max-width:767px){.service-section .service-section__description{font-size:16px}}

/* スマホHOMEの青いキャッチコピーを20pxへ統一。 */
@media(max-width:767px){.service-section .service-section__title{font-size:20px;line-height:1.65;letter-spacing:0;white-space:normal;text-wrap:balance}}

/* Supplied HOME service photo: preserve the existing frame. */
.service-section{--service-photo-position:65% 45%}
.service-section .service-section__image{object-fit:cover}
