.es-page{color:#092640}
.es-shell{width:min(1160px,calc(100% - 64px));margin-inline:auto}
.es-section-label{display:flex;align-items:center;gap:13px;margin:0;color:#087cbd;font:800 13px/1.5 Arial,'Noto Sans JP',sans-serif;letter-spacing:.12em}
.es-section-label span{display:grid;place-items:center;flex:none;width:38px;height:38px;border:1px solid #84cfe9;border-radius:50%;font-size:12px;letter-spacing:0}
.es-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-width:300px;min-height:58px;padding:13px 24px;border-radius:999px;background:linear-gradient(100deg,#0879bd,#35b9df);box-shadow:0 8px 23px #1494cd28;color:#fff;text-decoration:none;font-size:15px;font-weight:800;line-height:1.5;transition:transform .2s ease,box-shadow .2s ease}
.es-button:hover{transform:translateY(-2px);box-shadow:0 12px 26px #1494cd38}
.es-button:focus-visible{outline:3px solid #092640;outline-offset:3px}
.es-button span{font:400 22px/1 Arial,sans-serif}
.es-hero{position:relative;overflow:hidden;background:linear-gradient(150deg,#f9fdff 0%,#e9f7fc 100%)}
.es-hero:after{content:"";position:absolute;top:-250px;right:-280px;width:600px;height:600px;border:1px solid #b8e2f0;border-radius:50%;pointer-events:none}
.es-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:70px;min-height:675px;padding:76px 0 86px}
.es-hero-copy h1{margin:31px 0 25px;font-size:clamp(40px,3.85vw,55px);font-weight:900;line-height:1.52;letter-spacing:.012em;text-wrap:balance}
.es-hero-lead{max-width:620px;margin:0 0 28px;color:#365571;font-size:16px;font-weight:600;line-height:1.95}
.es-hero-message{max-width:620px;margin:0 0 28px}
.es-hero-message .es-hero-lead{margin:17px 0 0}
.es-hero-points{display:grid;gap:5px;margin:0;padding:0;list-style:none;color:#173d59;font-size:16px;font-weight:800;line-height:1.85}
.es-hero-points li{position:relative;padding-left:1.25em}
.es-hero-points li:before{content:"・";position:absolute;left:0;top:0}
.es-hero-photo{position:relative;min-width:0;aspect-ratio:1.14;border-radius:48px;background:#d6edf7}
.es-hero-photo:before{content:"";position:absolute;inset:17px -18px -18px 17px;border-radius:48px;background:#b8e7f4}
.es-hero-photo img{position:relative;width:100%;height:100%;border-radius:48px;object-fit:cover;object-position:center}
.es-section{padding:86px 0 108px}
.es-section h2{margin:28px 0 43px;font-size:clamp(34px,3.1vw,44px);font-weight:800;line-height:1.58;letter-spacing:.015em;text-wrap:balance}
.es-challenges{background:linear-gradient(#fff,#f8fcfe)}
.es-challenge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.es-challenge-card{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:17px;min-height:202px;padding:30px 28px;border:1px solid #dce9ee;border-radius:22px;background:#f6f9fa}
.es-challenge-art{display:grid;place-items:center;width:104px;height:104px;border-radius:50%;background:#fff0c9}
.es-challenge-card:nth-child(2) .es-challenge-art{background:#ddf6ed}
.es-challenge-card:nth-child(3) .es-challenge-art{background:#ffe6e8}
.es-challenge-card:nth-child(4) .es-challenge-art{background:#e8e8ff}
.es-challenge-icon{width:86px;height:86px}
.es-challenge-copy h3{margin:0 0 12px;font-size:16px;font-weight:800;line-height:1.55;text-wrap:balance}
.es-challenge-card:first-child .es-challenge-copy h3{text-wrap:nowrap}
.es-challenge-copy p{margin:0;color:#41617a;font-size:15px;line-height:1.85}
.es-support{overflow:hidden;background:linear-gradient(160deg,#f8fcff,#edf8fc)}
.es-support h2{margin-bottom:40px}
.es-support-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);align-items:center;gap:40px}
.es-support-steps{display:grid;gap:13px}
.es-support-step{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:16px;padding:21px 24px 23px;border:1px solid #d9e9ef;border-radius:17px;background:#ffffffed;box-shadow:0 6px 16px #22729b0a}
.es-support-step:nth-child(1){border-top:3px solid #159bd0}.es-support-step:nth-child(2){border-top:3px solid #5b9ede}.es-support-step:nth-child(3){border-top:3px solid #35b6a9}.es-support-step:nth-child(4){border-top:3px solid #8b81d4}
.es-support-number{color:#159bd0;font:800 24px/1.5 Arial,sans-serif}
.es-support-step:nth-child(2) .es-support-number{color:#5b9ede}.es-support-step:nth-child(3) .es-support-number{color:#35a99e}.es-support-step:nth-child(4) .es-support-number{color:#8b81d4}
.es-support-step h3{margin:0 0 6px;font-size:19px;font-weight:800;line-height:1.5}
.es-support-step p{margin:0;color:#365571;font-size:15px;line-height:1.85}
.es-support-visual{min-width:0}
.es-support-visual img{width:110%;max-width:none;height:auto;margin-left:-5%;filter:drop-shadow(0 15px 22px #6584c91a)}
.es-process{background:#fff}
.es-process h2{margin-bottom:48px}
.es-process-grid{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
.es-process-grid:before{content:"";position:absolute;z-index:2;top:77px;left:12.5%;right:12.5%;height:2px;background:#8fc4dc;pointer-events:none}
.es-process-card{position:relative;min-width:0;min-height:316px;padding:85px 20px 27px;border:1px solid #dceaf0;border-radius:15px;background:#fff;box-shadow:0 8px 22px #0c608b0a;text-align:center}
.es-process-index{position:absolute;top:-25px;left:50%;display:grid;justify-items:center;transform:translateX(-50%);padding:0 12px;background:#fff;color:#2089bd;line-height:1}
.es-process-index strong{font:800 29px/1 Arial,sans-serif;letter-spacing:.02em}
.es-process-index span{margin-top:4px;font:800 10px/1 Arial,sans-serif;letter-spacing:.18em}
.es-process-dot{position:absolute;z-index:3;top:71px;left:50%;width:14px;height:14px;border:3px solid #fff;border-radius:50%;background:#168bc3;box-shadow:0 0 0 1px #168bc3;transform:translateX(-50%)}
.es-process-icon{display:grid;place-items:center;width:76px;height:76px;margin:12px auto 18px;border-radius:50%;background:#e9f7fc;color:#168bc3}
.es-process-icon svg{width:53px;height:53px}
.es-process-card h3{margin:0 0 11px;font-size:17px;font-weight:800;line-height:1.5;text-wrap:balance}
.es-process-card p{margin:0;color:#41617a;font-size:15px;line-height:1.8;text-align:left}
.es-faq h2{margin-bottom:38px}
.es-faq .inner-faq{gap:34px}
.es-faq .inner-faq dt{font-size:18px}
.es-faq .inner-faq dd{font-size:16px}
.es-contact{position:relative;isolation:isolate;display:flex;align-items:center;min-height:590px;padding:85px 0 95px;overflow:hidden;background:#163a55;color:#fff}
.es-contact:before{content:"";position:absolute;z-index:-2;inset:0;background-image:url('/assets/business-support-contact.webp');background-position:center top;background-size:cover;background-repeat:no-repeat}
.es-contact:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(4,31,52,.91) 0%,rgba(4,31,52,.75) 52%,rgba(4,31,52,.43) 100%)}
.es-contact-inner{width:min(1160px,calc(100% - 64px))}
.es-contact-copy{max-width:800px}
.es-contact .es-section-label{color:#bdeffc}
.es-contact .es-section-label span{border-color:#a4ddeb}
.es-contact h2{margin:25px 0 23px;color:#fff;font-size:clamp(32px,3.5vw,48px);line-height:1.4;text-wrap:balance}
.es-contact-prose{max-width:750px;color:#f6fbff;font-size:17px;font-weight:600;line-height:1.85}
.es-contact-prose p{margin:0 0 9px;text-wrap:pretty}
.es-contact-prose p:last-child{margin-bottom:0}
.es-contact .es-button{margin-top:30px}
.es-contact--rounded{width:min(1320px,calc(100% - 64px));margin:0 auto 72px;border-radius:34px}
@media(max-width:1100px){
  .es-challenge-grid{grid-template-columns:1fr}
}
@media(max-width:1000px){
  .es-process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 16px}
  .es-process-grid:before{display:none}
  .es-process-card{min-height:270px}
  .es-hero-grid{gap:38px}
  .es-hero-copy h1{font-size:clamp(35px,4.2vw,48px)}
  .es-challenge-card{grid-template-columns:86px minmax(0,1fr);gap:14px;padding:24px 18px}
  .es-challenge-art{width:80px;height:80px}.es-challenge-icon{width:70px;height:70px}
}
@media(max-width:900px){
  .es-contact--rounded{width:calc(100% - 42px);margin-bottom:56px;border-radius:26px}
  .es-challenge-card:first-child .es-challenge-copy h3{white-space:normal;text-wrap:balance}
  .es-shell{width:calc(100% - 42px)}
  .es-hero-grid{grid-template-columns:1fr;gap:37px;min-height:0;padding:48px 0 76px}
  .es-hero-copy h1{margin:24px 0 20px;font-size:clamp(30px,7.5vw,43px);line-height:1.52}
  .es-hero-lead{font-size:15px;line-height:1.9}
  .es-hero-message{margin-bottom:25px}
  .es-hero-message .es-hero-lead{margin-top:14px}
  .es-hero-points{font-size:15px;line-height:1.85}
  .es-hero-photo{width:min(100%,570px);margin-inline:auto;aspect-ratio:1.3}
  .es-section{padding:64px 0 78px}
  .es-section h2{margin:22px 0 31px;font-size:clamp(26px,6.4vw,34px);line-height:1.52}
  .es-challenge-grid{grid-template-columns:1fr;gap:14px}
  .es-challenge-card{grid-template-columns:82px minmax(0,1fr);min-height:0;padding:22px 18px}
  .es-support-grid{grid-template-columns:1fr;gap:24px}
  .es-support-visual{grid-row:1;max-width:590px;margin-inline:auto}
  .es-support-visual img{width:100%;margin:0}
  .es-contact{min-height:0;padding:76px 0 84px}
  .es-contact:before{background-position:center top}
  .es-contact-inner{width:calc(100% - 42px)}
  .es-contact:after{background:linear-gradient(90deg,rgba(4,31,52,.88),rgba(4,31,52,.65))}
}
@media(max-width:520px){
  .es-contact--rounded{width:calc(100% - 24px);margin-bottom:42px;border-radius:22px}
  .es-contact--rounded .es-contact-inner{width:calc(100% - 40px)}
  .es-contact{padding:67px 0 75px}
  .es-contact:before{background-position:61% top}
  .es-contact:after{background:linear-gradient(180deg,rgba(4,31,52,.81),rgba(4,31,52,.75))}
  .es-contact h2{font-size:clamp(25px,7vw,31px)}
  .es-contact-prose{font-size:15px;line-height:1.85}
  .es-contact-prose p{margin-bottom:10px}
  .es-contact .es-button{margin-top:24px}
  .es-faq h2{margin-bottom:30px}
  .es-faq .inner-faq{gap:29px}
  .es-faq .inner-faq dt{font-size:16px}
  .es-faq .inner-faq dd{font-size:15px}
  .es-process h2{margin-bottom:38px}
  .es-process-grid{grid-template-columns:1fr;gap:34px}
  .es-process-card{min-height:0;padding:49px 20px 23px;text-align:left}
  .es-process-index{top:-19px;left:24px;transform:none}
  .es-process-index strong{font-size:23px}
  .es-process-dot{display:none}
  .es-process-icon{float:left;width:58px;height:58px;margin:0 17px 8px 0}
  .es-process-icon svg{width:41px;height:41px}
  .es-process-card h3{padding-top:4px;font-size:17px}
  .es-process-card p{clear:both}
  .es-section h2{font-size:clamp(18px,calc(7.15vw - 4.9px),23px)}
  .es-section-label{gap:9px;font-size:11px;letter-spacing:.035em}
  .es-section-label span{width:33px;height:33px;font-size:10px}
  .es-hero-copy h1{font-size:clamp(27px,7.5vw,36px);line-height:1.48}
  .es-button{width:100%;min-width:0}
  .es-hero-photo,.es-hero-photo img,.es-hero-photo:before{border-radius:28px}
  .es-hero-photo:before{inset:10px -10px -10px 10px}
  .es-challenge-card{grid-template-columns:64px minmax(0,1fr);gap:12px;padding:19px 14px}
  .es-challenge-art{width:62px;height:62px}.es-challenge-icon{width:55px;height:55px}
  .es-challenge-copy h3{margin-bottom:7px;font-size:16px}
  .es-challenge-copy p{font-size:15px;line-height:1.75}
  .es-support-step{grid-template-columns:36px minmax(0,1fr);gap:10px;padding:17px 15px 19px}
  .es-support-number{font-size:20px}.es-support-step h3{font-size:17px}.es-support-step p{font-size:15px}
}
@media(max-width:360px){
  .es-hero-copy h1{font-size:22px}
  .es-button{gap:6px;padding-inline:12px}
  .es-button span{font-size:18px}
}
