/* Generated from index.html by sync-shell.mjs. */
.dx-shell,.dx-shell *{box-sizing:border-box;margin:0;padding:0}
.dx-site-header,.dx-site-footer,.dx-mobile-menu,.dx-mobile-backdrop,.dx-skip-link{font:400 16px/1.8 "Noto Sans JP",sans-serif;font-feature-settings:"palt";letter-spacing:.035em;color:var(--ink)}
.dx-shell :where(a){color:inherit;text-decoration:none}
.dx-shell :where(button){font:inherit}
.dx-shell h2{font-feature-settings:"palt";letter-spacing:.025em}
.dx-shell a:focus-visible,.dx-shell button:focus-visible,.dx-skip-link:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:5px}
.dx-site-header,.dx-site-footer,.dx-mobile-menu,.dx-mobile-backdrop,.dx-skip-link{
    --bg:#fff;
    --surface:#fff;
    --bg-alt:#f4f7fa;
    --ink:#10243e;
    --sub:#40566f;
    --note:#586d85;
    --line:#d8e1ea;
    --line-strong:#b6c4d4;
    --hairline:#e6ecf2;
    --accent:#2b5f80;
    --accent-soft:#dce9f1;
    --accent-pale:#edf3f7;
    --dark:#0b1f38;
    --dark-deep:#08182c;
    --dark-sub:#c8d4e2;
    --dark-note:#95a9bd;
    --dark-strong:#f8fafc;
    --accent-on-dark:#b8d4e8;
    --action:#10243e;
    --action-hover:#183451;
    --focus-ring:#2b5f80;
    --lead-strong:#334e68;
    --media-placeholder:#dfe6ed;
    --dark-line:rgba(200,212,226,.2);
    --dark-line-strong:rgba(200,212,226,.3);
    --dark-fill:rgba(200,212,226,.05);
    --header-h:72px;
  }
body.dx-menu-open{overflow:hidden}
.dx-wrap{width:min(1120px,calc(100% - 56px));margin-inline:auto}
.dx-skip-link{
    position:fixed;
    top:-60px;
    left:12px;
    z-index:200;
    padding:10px 16px;
    color:#fff;
    background:var(--action);
    border-radius:0 0 8px 8px;
    font-weight:700;
    transition:top .15s ease;
  }
.dx-skip-link:focus{top:0}
.dx-site-header{
    position:sticky;
    top:0;
    z-index:100;
    border-bottom:1px solid var(--line);
    background:rgba(255,255,255,.97);
    backdrop-filter:blur(12px);
    transition:box-shadow .18s ease;
  }
.dx-site-header.dx-is-scrolled{box-shadow:0 14px 28px -26px rgba(11,31,56,.72)}
.dx-header-inner{
    display:flex;
    min-height:var(--header-h);
    align-items:center;
    gap:24px;
  }
.dx-brand{display:inline-flex;min-height:48px;align-items:center;flex:0 0 auto}
.dx-brand strong{display:block;font-size:16.5px;font-weight:900;line-height:1.35}
.dx-brand small{
    display:block;
    margin-top:2px;
    color:var(--note);
    font:600 10.5px/1.3 "Inter",sans-serif;
    letter-spacing:.08em;
  }
.dx-desktop-nav{display:flex;align-items:center;gap:3px;margin-left:auto}
.dx-desktop-nav>a:not(.dx-header-cta){
    display:inline-flex;
    min-height:44px;
    align-items:center;
    padding:0 10px;
    border-radius:6px;
    color:var(--sub);
    font-size:15.5px;
    font-weight:700;
  }
.dx-desktop-nav>a:not(.dx-header-cta):hover{color:var(--ink);background:var(--bg-alt)}
.dx-header-cta{
    display:inline-flex;
    min-height:44px;
    align-items:center;
    margin-left:6px;
    padding:0 17px;
    color:#fff;
    background:var(--action);
    border-radius:8px;
    font-size:15.5px;
    font-weight:800;
  }
.dx-header-cta:hover{background:var(--action-hover)}
.dx-mobile-actions{display:none;align-items:center;gap:8px;margin-left:auto}
.dx-mobile-contact{
    display:inline-flex;
    min-height:44px;
    align-items:center;
    padding:0 14px;
    color:#fff;
    background:var(--action);
    border-radius:8px;
    font-size:15px;
    font-weight:800;
  }
.dx-mobile-contact:hover{background:var(--action-hover)}
.dx-menu-button{
    display:grid;
    width:46px;
    height:44px;
    place-items:center;
    border:1px solid var(--line);
    border-radius:8px;
    color:var(--ink);
    background:var(--surface);
    cursor:pointer;
  }
.dx-menu-icon{position:relative;width:18px;height:14px}
.dx-menu-icon::before,.dx-menu-icon::after,.dx-menu-icon span{
    content:"";
    position:absolute;
    left:0;
    width:18px;
    height:2px;
    border-radius:3px;
    background:currentColor;
    transition:top .16s ease,transform .16s ease,opacity .16s ease;
  }
.dx-menu-icon::before{top:0}
.dx-menu-icon span{top:6px}
.dx-menu-icon::after{top:12px}
.dx-menu-open .dx-menu-icon::before{top:6px;transform:rotate(45deg)}
.dx-menu-open .dx-menu-icon span{opacity:0}
.dx-menu-open .dx-menu-icon::after{top:6px;transform:rotate(-45deg)}
.dx-mobile-backdrop{
    display:none;
    position:fixed;
    inset:var(--header-h) 0 0;
    z-index:88;
    background:rgba(11,31,56,.42);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .18s ease,visibility .18s ease;
  }
.dx-mobile-menu{
    display:none;
    position:fixed;
    top:var(--header-h);
    right:0;
    z-index:90;
    width:min(390px,100%);
    max-height:calc(100dvh - var(--header-h));
    overflow-y:auto;
    padding:18px 20px calc(24px + env(safe-area-inset-bottom));
    border-left:1px solid var(--line);
    background:var(--surface);
    box-shadow:-24px 30px 54px -36px rgba(11,31,56,.76);
    visibility:hidden;
    pointer-events:none;
    transform:translateX(104%);
    transition:transform .2s ease,visibility .2s ease;
  }
.dx-menu-open .dx-mobile-backdrop{opacity:1;visibility:visible;pointer-events:auto}
.dx-menu-open .dx-mobile-menu{visibility:visible;pointer-events:auto;transform:none}
.dx-mobile-menu a{
    display:flex;
    min-height:50px;
    align-items:center;
    justify-content:space-between;
    border-bottom:1px solid var(--line);
    font-size:16.5px;
    font-weight:700;
  }
.dx-mobile-menu .dx-drawer-cta{
    justify-content:center;
    margin-top:18px;
    border:0;
    border-radius:8px;
    color:#fff;
    background:var(--action);
  }
.dx-mobile-menu .dx-drawer-cta:hover{background:var(--action-hover)}
.dx-nojs-nav{padding:10px 20px;border-top:1px solid var(--line);background:var(--surface);text-align:center}
.dx-nojs-nav a{display:inline-block;padding:8px 10px;font-size:15px;font-weight:700}
.dx-site-footer{
    padding:58px 0 24px;
    color:#fff;
    background:var(--dark-deep);
  }
.dx-footer-main{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:50px 86px}
.dx-footer-brand strong{display:block;font-size:21px;font-weight:900;line-height:1.5}
.dx-footer-brand small{display:block;margin-top:4px;color:var(--dark-note);font:600 9.5px/1 "Inter",sans-serif;letter-spacing:.14em}
.dx-footer-brand>p{max-width:40ch;margin-top:18px;color:var(--dark-sub);font-size:14.5px;line-height:1.85}
.dx-footer-facts{margin-top:24px;border-top:1px solid var(--dark-line)}
.dx-footer-facts>div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:16px;padding:10px 0;border-bottom:1px solid var(--dark-line)}
.dx-footer-facts dt{color:var(--dark-note);font-size:11px;font-weight:800}
.dx-footer-facts dd{color:var(--dark-strong);font-size:13px;font-weight:700}
.dx-footer-navs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
.dx-footer-navs h2{margin-bottom:9px;color:var(--dark-note);font:800 10.5px/1.5 "Inter",sans-serif;letter-spacing:.13em}
.dx-footer-navs h2 span{display:block;margin-top:4px;color:var(--dark-strong);font:700 12.5px/1.5 "Noto Sans JP",sans-serif;letter-spacing:0}
.dx-footer-navs a{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--dark-line);color:var(--dark-strong);font-size:14px;font-weight:700;line-height:1.6}
.dx-footer-navs a:hover{color:var(--accent-on-dark)}
.dx-footer-navs a span{flex:0 0 auto;color:var(--accent-on-dark);font-family:"Inter",sans-serif}
.dx-footer-bottom{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-top:42px;padding-top:18px;border-top:1px solid var(--dark-line);color:var(--dark-sub);font-size:12px}
.dx-footer-legal{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 20px}
.dx-footer-legal a{text-decoration:underline;text-underline-offset:3px}
.dx-site-footer{--focus-ring:var(--accent-on-dark)}
@media (max-width:980px){
.dx-desktop-nav{display:none}
.dx-mobile-actions{display:flex}
.dx-mobile-backdrop,.dx-mobile-menu{display:block}
.dx-footer-main{grid-template-columns:1fr;gap:38px}
}
@media (max-width:700px){
.dx-site-header,.dx-site-footer,.dx-mobile-menu,.dx-mobile-backdrop,.dx-skip-link{--header-h:68px}
.dx-wrap{width:min(100% - 40px,1120px)}
.dx-header-inner{min-height:68px;gap:10px}
.dx-brand strong{font-size:16px}
.dx-brand small{font-size:9.5px}
.dx-mobile-contact{padding-inline:12px}
.dx-footer-main{gap:34px}
.dx-footer-navs{grid-template-columns:1fr;gap:26px}
.dx-footer-facts>div{grid-template-columns:76px minmax(0,1fr)}
.dx-footer-bottom{align-items:flex-start;flex-direction:column;margin-top:32px}
.dx-footer-legal{justify-content:flex-start}
}
@media (max-width:420px){
.dx-wrap{width:min(100% - 32px,1120px)}
.dx-mobile-contact{padding-inline:10px;font-size:14px}
.dx-menu-button{width:44px}
}
@media(prefers-reduced-motion:reduce){.dx-shell,.dx-shell *,.dx-shell *::before,.dx-shell *::after{transition:none!important}}
