.ndstj-shell{--ns-navy:var(--ndstj-navy,#132c4e);--ns-gold:var(--ndstj-gold,#bfa36a);font-family:var(--ndstj-serif,Georgia,"Noto Serif JP",serif);font-size:.85rem;line-height:2.1;letter-spacing:.06em;box-sizing:border-box}
.ndstj-shell *,.ndstj-shell *::before,.ndstj-shell *::after{box-sizing:border-box}
.ndstj-shell a{color:inherit;text-decoration:none}
.ndstj-shell a:focus-visible,.ndstj-shell summary:focus-visible{outline:2px solid var(--ns-gold);outline-offset:5px}
.ndstj-shell p{margin:0}
.ndstj-shell .ndstj-brand{display:inline-flex;align-items:center;min-height:44px;max-width:100%;color:#fff;text-decoration:none}
.ndstj-shell .ndstj-brand-image{display:block;width:auto;max-width:210px;height:auto;max-height:44px;object-fit:contain}
.ndstj-shell .ndstj-brand-name{font-size:.95rem;font-weight:400;letter-spacing:.15em;white-space:nowrap}
.ndstj-header{position:sticky;top:0;z-index:900;background:#132c4e;color:#fff;border-bottom:1px solid rgba(255,255,255,.12);transition:box-shadow .25s ease}
body.admin-bar .ndstj-header{top:32px}
.ndstj-header.is-scrolled{box-shadow:0 5px 24px rgba(0,0,0,.09)}
.ndstj-header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:88px;max-width:1440px;padding:16px clamp(24px,4vw,56px);margin:0 auto}
.ndstj-header-navigation{display:flex;align-items:center;min-width:0}
.ndstj-header-contact{display:inline-flex;align-items:center;gap:24px;min-height:44px;padding:8px 16px;border:1px solid rgba(255,255,255,.3);font-size:.75rem}
#ndstj-content-start{display:block;scroll-margin-top:calc(var(--ndstj-header-height,88px) + 32px)}
/* 置換対象はLightning標準UIだけ。無効化で元のテーマUIが戻る */
body.ndstj-has-shell .site-header,body.ndstj-has-shell .l-header,body.ndstj-has-shell .site-footer,body.ndstj-has-shell .l-footer-before-widget-area,body.ndstj-has-shell .l-footer-widget-area{display:none!important}
.ndstj-footer{position:relative;width:100%;padding:0;background:#132c4e;color:#fff}
.ndstj-footer-inner{max-width:1220px;margin:0 auto;padding:76px clamp(24px,5vw,48px) 30px}
.ndstj-kicker{display:block;margin-bottom:14px;color:#bfa36a;font-size:.63rem;letter-spacing:.28em}
.ndstj-footer-line{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:52px;border-bottom:1px solid rgba(255,255,255,.18)}
.ndstj-footer-line p{font-size:.85rem;letter-spacing:.12em}
.ndstj-outline-link{display:inline-flex;align-items:center;justify-content:space-between;gap:44px;min-height:54px;padding:12px 24px;border:1px solid rgba(255,255,255,.45);font-size:.8rem;transition:background .25s ease,border-color .25s ease}
.ndstj-outline-link>span[aria-hidden]{color:#bfa36a}
.ndstj-footer-main{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;padding:52px 0}
.ndstj-footer-company address{margin:22px 0 12px;font-style:normal;font-size:.8rem;line-height:2.1;color:#d5dce6}
.ndstj-footer-contacts{display:flex;flex-direction:column;gap:2px;font-size:.8rem;color:#d5dce6}
.ndstj-social{display:flex;gap:28px;flex-wrap:wrap;font-size:.8rem}
.ndstj-social a{display:inline-flex;align-items:center;gap:12px;min-height:44px}
.ndstj-social span[aria-hidden]{color:#bfa36a}
.ndstj-area{border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}
.ndstj-area>summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:68px;padding:16px 0;list-style:none;cursor:pointer;font-size:.75rem}
.ndstj-area>summary::-webkit-details-marker{display:none}
.ndstj-area>summary::marker{content:""}
.ndstj-area>summary [lang]{display:inline-block;margin-right:24px;color:#bfa36a;font-size:.63rem;letter-spacing:.2em}
.ndstj-plus{position:relative;flex:0 0 16px;width:16px;height:16px;color:#bfa36a}
.ndstj-plus::before,.ndstj-plus::after{content:"";position:absolute;left:2px;top:50%;width:12px;height:1px;background:currentColor}
.ndstj-plus::after{transform:rotate(90deg);transition:transform .25s ease}
.ndstj-area[open] .ndstj-plus::after{transform:rotate(0)}
.ndstj-area-content{display:grid;grid-template-columns:1fr 1fr;gap:26px 40px;padding:8px 0 32px}
.ndstj-area-content dl{margin:0}
.ndstj-area-content dt{font-size:.8rem;font-weight:400;margin:0 0 10px;color:#fff}
.ndstj-area-content dd{margin:0;color:#c2cddb;font-size:.72rem;line-height:2.2;letter-spacing:.04em}
.ndstj-area-content strong{font-weight:400;color:#e1e6ec}
.ndstj-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:28px}
.ndstj-footer-bottom small{font-size:.6rem;letter-spacing:.07em;color:#b9c6d7}
.ndstj-back-top{display:inline-flex;min-height:44px;align-items:center;gap:20px;font-size:.7rem}
.ndstj-back-top span{color:#bfa36a}
.ndstj-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ndstj-skip{position:fixed;left:16px;top:-100px;z-index:100100;background:#fff;color:#132c4e;padding:12px 20px}
.ndstj-skip:focus{top:12px}
@media(hover:hover){.ndstj-outline-link:hover{background:rgba(255,255,255,.06);border-color:#bfa36a}.ndstj-shell a:hover{color:#e6d5b1}}
@media(max-width:782px){body.admin-bar .ndstj-header{top:46px}}
@media(max-width:767px){.ndstj-header-inner{min-height:72px;padding:12px 24px;gap:16px}.ndstj-shell .ndstj-brand-image{max-width:160px;max-height:36px}.ndstj-shell .ndstj-brand-name{font-size:.85rem;letter-spacing:.1em}.ndstj-footer-inner{padding-top:60px}.ndstj-footer-line{align-items:stretch;flex-direction:column;padding-bottom:38px;gap:24px}.ndstj-outline-link{gap:24px}.ndstj-footer-main{grid-template-columns:1fr;gap:36px;padding:38px 0}.ndstj-area-content{grid-template-columns:1fr}.ndstj-footer-bottom{flex-direction:column-reverse;align-items:flex-start;gap:14px}.ndstj-area>summary [lang]{margin-right:12px}}
@media(max-width:600px){body.admin-bar .ndstj-header{top:0}}
@media(prefers-reduced-motion:reduce){.ndstj-shell *{transition:none!important}}
