/* Sieger v28. Shared identity; loaded after the base and page styles. */
:root{--w:#fff;--sky:#f3f6f8;--sky-2:#eaf0f4;--sky-3:#d9e6ef;--sky-b:#edf3f6;--ink:#172c3b;--ink-2:#596b77;--navy:#172c3b;--navy-2:#284353;--blue:#236b9d;--blue-t:#236b9d;--blue-d:#18517a;--line:#d9e2e7;--line-2:#b3c3ce;--amber:#236b9d;--amber-d:#18517a;--amber-ink:#fff;--r-s:5px;--r:10px;--r-l:14px;--sh:none;--sh-h:0 8px 24px #172c3b0a;--sh-cta:none;--hdr-h:82px;--sec-y:96px;--head-gap:44px;--font:"Noto Sans JP","Hiragino Sans",sans-serif;--on-navy:#fff;--on-navy-2:#cad7df}
html{scroll-padding-top:108px;color:var(--ink)}
body{color:var(--ink);-webkit-font-smoothing:antialiased}
h1,h2,h3{color:var(--ink);font-weight:700}
a,button{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #236b9d;outline-offset:5px}
.hdr{background:#fff;border-bottom:1px solid #d9e2e780;box-shadow:none}
.hdr-in{height:82px;max-width:1440px;gap:24px}
.brand img{width:118px;height:auto}
.nav{gap:2px}.nav-link{font-size:13px;letter-spacing:.02em;font-weight:700;padding:12px 13px;border-radius:0;transition:color .2s}
.nav-link:hover{background:transparent;color:var(--blue)}
.nav-link[aria-current=page]{box-shadow:inset 0 -2px var(--blue);background:transparent}
.btn,.btn-sm,.btn-2{min-height:52px;border-radius:5px;border:1px solid var(--blue);padding:14px 24px;background:var(--blue);color:#fff;box-shadow:none;font-size:14px;font-weight:700;line-height:1.5;transform:none;transition:background-color .2s,border-color .2s}
.btn:hover,.btn-sm:hover{background:var(--blue-d);border-color:var(--blue-d);box-shadow:none;transform:none}
.btn-2{color:var(--blue);background:transparent}
.btn-2:hover{background:var(--sky-2);color:var(--blue-d)}
.btn .ic{width:19px;height:19px;margin-left:10px;transition:transform .2s}.btn:hover .ic{transform:translateX(3px)}
.nav .btn{min-height:44px;padding:10px 18px;font-size:12px}.nav .btn .ic{display:none}
.nav .hdr-doc{border-color:transparent;background:transparent;color:var(--blue)}
.hdr-sp{display:none}.navtog{border:0;background:transparent;border-radius:0}
.phead{background:var(--sky);padding-block:68px 76px;background-image:none}.phead h1{font-size:clamp(30px,3.4vw,46px);line-height:1.55}
.card,.plaque,.case{box-shadow:none;border:1px solid var(--line)}.card:hover,.case:hover{box-shadow:none;transform:none}
.icb{box-shadow:none}.cta-mid{box-shadow:none}
.ftr{background:#233e50;border-top:0;padding-top:62px}.ftr p{color:var(--on-navy-2)}.ftr-desc{font-size:13px}.ftr-navs h2{font-size:13px}.ftr-navs li{font-size:12px}.ftr-bot{border-color:#ffffff26;font-size:11px}
.totop{background:#fff;color:var(--ink);border:1px solid var(--line-2);box-shadow:none;border-radius:50%;width:44px;height:44px;right:22px;bottom:22px}
@media(min-width:861px) and (max-width:1120px){.nav .hdr-doc{display:none}.nav-link{padding-inline:9px;font-size:12px}.hdr-in{gap:16px}}
@media(max-width:860px){:root{--hdr-h:66px;--sec-y:64px;--head-gap:28px}.hdr-in{height:66px;padding-inline:22px;gap:8px}.brand img{width:102px}.hdr-sp{display:inline-flex;margin-left:auto;font-size:12px;padding:9px 12px;min-height:38px}.navtog{margin-left:4px}.nav{background:#fff;max-height:calc(100dvh - 66px);overflow-y:auto}.nav-link{padding:17px 8px;font-size:15px}.nav .btn{margin:12px 0 0}.phead{padding-block:48px}.totop{right:16px;bottom:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}

@media(max-width:860px){html:not(.js) .hdr{position:relative}html:not(.js) .hdr-in{height:auto;flex-wrap:wrap;padding-block:16px}html:not(.js) .nav{display:flex;position:static;max-height:none;box-shadow:none;width:100%;padding:8px 0 0}html:not(.js) .navtog{display:none}}
/* Keep the shared pages in the same visual language as the home page. */
.phead::before,.phead::after{display:none}.sec-sky,.sec-sky2,.sec-tint,.creds{background-image:none}
@media(max-width:860px){.navtog{margin-left:auto}.hdr-sp+.navtog{margin-left:4px}.nav{top:66px}}

@media(max-width:860px){html:not(.js) .nav{opacity:1;visibility:visible;transform:none;pointer-events:auto}}
@media(max-width:860px){.nav{transition:none}.nav.is-open{transition:opacity .2s,transform .2s}}
