:root{--shell-ink:#092d42;--shell-teal:#168e9d;--shell-teal-deep:#087887;--shell-mist:#e5f4f5;--shell-orange:#fb8b18}
html{scroll-padding-top:84px}
html,body{height:auto;min-height:100%}
body{overflow-x:clip}
.site-shell-header,.site-shell-footer,.site-shell-mobile-cta{font-family:"Noto Sans JP","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;box-sizing:border-box}
.site-shell-header *,.site-shell-footer *,.site-shell-mobile-cta *{box-sizing:border-box}
.site-shell-header{position:sticky;top:0;z-index:3000;width:100%;min-height:72px;background:#fff;box-shadow:0 2px 9px rgb(0 0 0 / 11%)}
.site-shell-header__inner{width:min(100% - 40px,1280px);min-height:72px;margin:auto;display:flex;align-items:center;gap:22px}
.site-shell-brand{flex:none;display:inline-flex;align-items:center;line-height:1}
.site-shell-brand img{display:block;width:180px;height:auto;max-width:none}
.site-shell-nav{display:flex;align-items:center;gap:clamp(9px,1.25vw,22px);margin-left:auto}
.site-shell-nav a{color:var(--shell-ink);font-size:14px;font-weight:700;white-space:nowrap;text-decoration:none;line-height:1.4;padding:12px 0;border-bottom:2px solid transparent}
.site-shell-nav a:hover,.site-shell-nav a:focus-visible,.site-shell-nav a[aria-current="page"]{color:var(--shell-teal-deep);border-bottom-color:var(--shell-teal)}
.site-shell-actions{display:flex;align-items:center;gap:8px;flex:none}
.site-shell-action{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:8px 13px;border:2px solid var(--shell-orange);border-radius:6px;color:#fff;background:var(--shell-orange);font-size:13px;font-weight:800;line-height:1.25;text-decoration:none;white-space:nowrap;box-shadow:0 2px 3px rgb(0 0 0 / 10%)}
.site-shell-action:hover,.site-shell-action:focus-visible{filter:brightness(.95);transform:translateY(-1px)}
.site-shell-action--consult{background:#fff;color:var(--shell-orange)}
.site-shell-menu-button{display:none;width:44px;height:44px;border:0;background:transparent;position:relative;cursor:pointer;flex:none}
.site-shell-menu-button span{position:absolute;left:6px;width:32px;height:3px;background:#25303a;border-radius:5px;transition:transform .2s,opacity .2s,top .2s}
.site-shell-menu-button span:nth-child(1){top:12px}.site-shell-menu-button span:nth-child(2){top:21px}.site-shell-menu-button span:nth-child(3){top:30px}
.site-shell-menu-button[aria-expanded="true"] span:nth-child(1){top:21px;transform:rotate(45deg)}
.site-shell-menu-button[aria-expanded="true"] span:nth-child(2){opacity:0}
.site-shell-menu-button[aria-expanded="true"] span:nth-child(3){top:21px;transform:rotate(-45deg)}
.site-shell-menu-actions{display:none}
.phead.phead--simple{display:block;min-width:0;padding-block:28px 24px}
.phead.phead--simple > div{max-width:850px}
@media (max-width:640px){.phead.phead--simple{padding-block:24px 18px}}
.page--brand-head .phead.phead--brand{position:relative;isolation:isolate;display:block;overflow:hidden;padding:0;background:linear-gradient(110deg,#087887 0%,#168e9d 58%,#379faa 100%);color:#fff}
.page--brand-head .phead.phead--brand::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,transparent 0 25%,rgb(255 255 255 / 5%) 25% 31%,transparent 31% 100%)}
.page--brand-head .phead.phead--brand::after{content:"";position:absolute;width:240px;height:240px;right:8%;top:-125px;border-radius:50%;background:rgb(255 255 255 / 5%);pointer-events:none}
.page--brand-head .phead.phead--brand > .wrap{position:relative;z-index:1;max-width:1080px;width:100%;margin-inline:auto;padding:48px 20px 52px}
.page--brand-head .phead.phead--brand h1{margin:0;color:#fff;font-size:clamp(30px,3vw,42px);font-weight:800;line-height:1.35;letter-spacing:.01em;text-wrap:balance}
.page--brand-head .phead.phead--brand h1 span{display:inline-block}
.page--brand-head .crumbs--after-head{padding-top:14px}
@media (max-width:640px){.page--brand-head .phead.phead--brand > .wrap{padding-block:32px 36px}.page--brand-head .phead.phead--brand h1{font-size:clamp(26px,7vw,34px);line-height:1.4}}
.site-shell-footer{background:var(--shell-mist);color:var(--shell-ink);padding:42px 20px 22px}
.site-shell-footer__inner{width:min(100%,1200px);margin:auto}
.site-shell-footer__heading{font-size:18px;font-weight:800;margin:0 0 20px;letter-spacing:.06em}
.site-shell-footer__map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 28px;padding-bottom:30px;border-bottom:1px solid #b6d9de}
.site-shell-footer__map a{color:var(--shell-ink);font-size:14px;font-weight:600;line-height:1.5;text-decoration:none;padding:4px 0}
.site-shell-footer__map a:hover,.site-shell-footer__map a:focus-visible{text-decoration:underline;color:var(--shell-teal-deep)}
.site-shell-footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:22px;font-size:12px}
.site-shell-footer__bottom img{width:150px;height:auto}
.site-shell-mobile-cta{display:none}
@media(max-width:1180px){
  .site-shell-header__inner{width:min(100% - 32px,1280px);gap:14px}
  .site-shell-brand img{width:160px}
  .site-shell-nav{gap:10px}
  .site-shell-nav a{font-size:12px}
  .site-shell-action{font-size:12px;padding-inline:9px}
}
@media(max-width:980px){
  html{scroll-padding-top:64px}
  .site-shell-header,.site-shell-header__inner{min-height:60px}
  .site-shell-header__inner{width:calc(100% - 32px);justify-content:space-between}
  .site-shell-brand img{width:150px}
  .site-shell-header>.site-shell-header__inner>.site-shell-actions{display:none}
  .site-shell-menu-button{display:block;margin-left:auto;z-index:2}
  .site-shell-nav{display:flex;position:fixed;top:60px;left:0;right:0;bottom:0;z-index:3001;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:16px 20px calc(100px + env(safe-area-inset-bottom));background:var(--shell-mist);overflow-y:auto;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,visibility .2s}
  .site-shell-nav.is-open{opacity:1;visibility:visible;pointer-events:auto}
  .site-shell-nav>a{display:flex;align-items:center;justify-content:center;min-height:55px;font-size:18px;border-bottom:0}
  .site-shell-nav>a[aria-current="page"]{color:var(--shell-teal-deep);border:1px solid #9ad2dc;border-radius:9px;background:#fff}
  .site-shell-menu-actions{display:flex;gap:10px;width:min(100%,440px);margin:20px auto 0}
  .site-shell-menu-actions .site-shell-action{flex:1;min-width:0;min-height:55px;font-size:13px;color:#fff}
  .site-shell-menu-actions .site-shell-action--consult{color:var(--shell-orange)}
  body.is-shell-menu-open{overflow:hidden}
  .site-shell-mobile-cta{position:fixed;display:block;left:0;right:0;bottom:0;z-index:3002;padding:18px 10px calc(10px + env(safe-area-inset-bottom));background:rgb(255 255 255 / 97%);border-top:1px solid #e4e4e4;box-shadow:0 -3px 16px rgb(0 0 0 / 8%)}
  .site-shell-mobile-cta__link{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;width:min(calc(100% - 32px),420px);min-height:58px;margin-inline:auto;padding:14px 10px;border:0;border-radius:8px;background:#f87808;box-shadow:0 5px 0 #b95d0d,0 11px 18px rgb(89 51 19 / 17%);color:#fff;font-size:clamp(12px,3.4vw,15px);font-weight:900;line-height:1.25;text-align:center;text-decoration:none;white-space:nowrap}
  .site-shell-mobile-cta__link:hover,.site-shell-mobile-cta__link:focus-visible{filter:brightness(1.06);box-shadow:0 5px 0 #b95d0d,0 13px 22px rgb(89 51 19 / 23%)}
  .site-shell-mobile-cta__link:focus-visible{outline:3px solid #333;outline-offset:4px}
  .site-shell-mobile-cta__badge{position:absolute;top:-12px;left:12px;display:grid;place-items:center;min-width:54px;min-height:23px;padding:2px 9px;border:2px solid #f87808;border-radius:999px;background:#fff;color:#e76800;font-size:11px;font-weight:900;line-height:1}
  .site-shell-mobile-cta__icon{display:block;width:20px;height:20px;flex:none}
  .site-shell-mobile-cta__label{display:block;min-width:0}
  .is-shell-menu-open .site-shell-mobile-cta{display:none}
  .site-shell-footer{padding-bottom:calc(112px + env(safe-area-inset-bottom))}
  .site-shell-footer__map{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
  .site-shell-nav>a{min-height:52px;font-size:16px}
  .site-shell-menu-actions{flex-direction:column;gap:10px;margin-top:16px}
  .site-shell-menu-actions .site-shell-action{width:100%;min-height:50px}
  .site-shell-footer__map{gap:9px 15px}
  .site-shell-footer__map a{font-size:13px}
  .site-shell-footer__bottom{flex-direction:column;align-items:flex-start}
}
@media(max-width:340px){.site-shell-mobile-cta__label span{display:block}}
/* Keep the document-request title on two intentional lines on every detail page. */
.lead-capture .lead-capture__intro h2 span{display:block;white-space:nowrap}
@media(max-width:480px){.lead-capture .lead-capture__intro h2{font-size:clamp(22px,6.5vw,27px);line-height:1.4}}
