/* First service is the reference for heroes and section headings. */
#main.cn121-service{background:#edf0f2;padding-top:100px;font-family:Arial,'Noto Sans JP',sans-serif}
#main.cn121-service .cn121-wrap{width:min(1200px,88%)}
#main.cn121-service .cn121-hero{position:relative;isolation:isolate;background:#0a2235;border-radius:22px;padding:46px;grid-template-columns:1fr 1fr;gap:5%;align-items:center;box-shadow:0 24px 55px #0b23361a;border:0;overflow:visible}
#main.cn121-service .cn121-hero:before{content:'';position:absolute;z-index:-1;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(ellipse at 0 100%,#12658b77,transparent 55%),linear-gradient(135deg,transparent 45%,#2d76971c 45.1%,transparent 75%)}
#main.cn121-service .cn121-hero-copy{padding:0;background:none;display:block}
#main.cn121-service .cn121-hero h1{font-size:clamp(34px,4.05vw,59px);line-height:1.2;margin:0 0 24px;color:#fff;font-weight:800;letter-spacing:-.045em;font-family:Arial,'Noto Sans JP',sans-serif;overflow-wrap:anywhere}
#main.cn121-service .cn121-hero h1:after{display:none}
#main.cn121-service .cn121-hero-copy .cn122-hero-label{color:#83d7ed;font-size:10px;line-height:1.6;letter-spacing:.13em;font-weight:900;margin:0 0 18px!important}
#main.cn121-service .cn121-hero-copy .cn122-hero-lead{font-size:clamp(25px,2.45vw,36px);font-weight:900;color:#fff;line-height:1.5;margin:0 0 20px!important;letter-spacing:-.04em}
#main.cn121-service .cn122-hero-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;background:#ee347d;box-shadow:0 8px 24px #ee347d25;border-radius:100px;color:#fff;padding:17px 24px;font-weight:800;font-size:14px;min-height:56px;margin-top:26px;text-decoration:none}
#main.cn121-service .cn122-hero-button span{font-size:22px}
#main.cn121-service .cn122-hero-button:hover{background:#bb225e}
#main.cn121-service .cn121-hero-art{position:relative;height:520px;min-height:0;aspect-ratio:auto;border-radius:110px 12px 12px 12px;box-shadow:8px 8px 0 #1f5270;border:1px solid #83c5de38;background:#0d2337;isolation:isolate;overflow:hidden}
#main.cn121-service .cn121-hero-art:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#081b2cd9);pointer-events:none}
#main.cn121-service .cn121-hero-art picture{position:static;display:block;width:100%;height:100%;margin:0}
#main.cn121-service .cn121-hero-art img{object-position:55% center}
#main.cn121-service .cn121-overview{display:block;gap:0;padding:0;border:0;margin-top:80px}
#main.cn121-service .cn122-heading-group{max-width:700px;margin-bottom:38px}
#main.cn121-service .cn121-heading,#main.cn121-service .cn121-overview .cn121-heading{font-size:clamp(27px,3.2vw,42px);line-height:1.5;font-weight:800;letter-spacing:-.035em;color:#102c43;margin:0 0 18px;padding:0}
#main.cn121-service .cn121-heading:after{display:none}
#main.cn121-service .cn122-section-label{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:900;letter-spacing:.12em;color:#087bc5;line-height:1.6;margin:0 0 18px}
#main.cn121-service .cn122-section-label:before{content:'';width:22px;height:3px;background:#ee347d;flex:none}
/* The other seven services are the reference for the first service's lower area. */
#main.search-page-v110 .cn121-cta{margin-top:75px;position:relative;padding:70px 30px;background:#0c293e;isolation:isolate;overflow:hidden;color:#fff}
#main.search-page-v110 .cn121-cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.16;z-index:-1}
#main.search-page-v110 .cn122-cta-inner{max-width:960px;margin:0 auto;text-align:center}
#main.search-page-v110 .cn121-cta h2{font-size:34px;font-weight:900;color:#fff;line-height:1.6;margin-bottom:20px;letter-spacing:normal}
#main.search-page-v110 .cn121-cta p{color:#cce1ee;font-size:17px;line-height:1.9;margin-bottom:30px}
#main.search-page-v110 .cn121-cta .s110-label{font-size:11px;letter-spacing:.12em;color:#83d7ed;margin-bottom:18px}
#main.search-page-v110 .cn122-bottom .cta-btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:17px 28px;border:1px solid #8dd6ec;background:#0a7eac;color:#fff;font-size:16px;font-weight:800;text-decoration:none}
#main.search-page-v110 .cn122-bottom .cta-btn:hover{background:#12526f}
#main.search-page-v110 .cn121-related{display:grid;grid-template-columns:1fr 340px;gap:32px;padding:65px 0 70px}
#main.search-page-v110 .cn121-related .service-box{min-width:0}
#main.search-page-v110 .cn121-related .service-box-heading{color:#153b54;font-size:23px;font-weight:900;margin:0 0 23px;line-height:1.5;letter-spacing:normal}
#main.search-page-v110 .cn121-related .services-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#main.search-page-v110 .cn121-related .services-list a{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:16px;background:#fff;border:1px solid #b7cfdb;color:#2b5269;font-size:12px;font-weight:700;line-height:1.8;min-width:0}
#main.search-page-v110 .cn121-related .services-list a:hover{border-color:#087bc5}
#main.search-page-v110 .cn121-related .help-box{display:flex;align-items:center;justify-content:center;padding:30px 25px;background:#d8e8f0;border-top:4px solid #0a83b1;text-align:center;color:#3a5b70}
@media(max-width:1000px){#main.cn121-service .cn121-hero{padding:30px;gap:4%}#main.cn121-service .cn121-hero h1{font-size:35px}#main.cn121-service .cn121-hero-art{height:480px}#main.search-page-v110 .cn121-related{grid-template-columns:1fr}}
@media(max-width:700px){#main.cn121-service{padding-top:85px}#main.cn121-service .cn121-wrap{width:calc(100% - 40px)}#main.cn121-service .cn121-hero{display:flex;flex-direction:column;align-items:stretch;width:calc(100% - 24px);padding:28px 22px 24px;border-radius:16px;gap:28px}#main.cn121-service .cn121-hero h1{font-size:clamp(34px,10vw,46px)}#main.cn121-service .cn121-hero-copy .cn122-hero-lead{font-size:28px}#main.cn121-service .cn121-hero-art{height:310px;min-height:310px;border-radius:80px 10px 10px 10px;box-shadow:5px 5px 0 #1f5270}#main.cn121-service .cn121-hero-art img{object-position:center}#main.cn121-service .cn121-heading,#main.cn121-service .cn121-overview .cn121-heading{font-size:clamp(27px,3.2vw,42px)}#main.search-page-v110 .cn121-cta{margin-top:55px;padding:48px 20px}#main.search-page-v110 .cn121-cta h2{font-size:27px}#main.search-page-v110 .cn121-cta p{font-size:15px}#main.search-page-v110 .cn121-related{padding:48px 0 55px;gap:28px}#main.search-page-v110 .cn121-related .services-list{grid-template-columns:1fr}#main.search-page-v110 .cn121-related .services-list a{font-size:13px;padding:17px}}
