:root{
--theme:#006aa3;--theme-dark:#04527a;--theme-deep:#083b58;--theme-light:#eef8fc;--theme-soft:#e2f2f8;--theme-accent:#1b8fc6;--theme-hover:#005989;--theme-border:rgba(0,106,163,.22);--header-bg:#064766;--header-bg-2:#0b5d83;--text-main:#173242;--text-muted:#587180;--on-theme:#fff;--on-header:#fff;--on-dark:#fff;--white:#fff;--shadow-soft:0 16px 38px rgba(0,67,102,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,"Helvetica Neue",sans-serif;background:var(--theme-light);color:var(--text-main);line-height:1.7}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.section{padding:58px 20px}.section-inner{width:min(1180px,100%);margin:0 auto}.site-header{position:sticky;top:0;z-index:9999;background:linear-gradient(180deg,var(--header-bg),var(--header-bg-2));color:var(--on-header);box-shadow:var(--shadow-soft);border-bottom:1px solid var(--theme-border)}.header-inner{width:min(1240px,calc(100% - 28px));margin:auto;height:82px;display:grid;grid-template-columns:190px 1fr auto;align-items:center;gap:24px}.site-logo img{max-width:180px;max-height:64px;object-fit:contain;display:block}.desktop-nav{display:flex;justify-content:center;gap:18px;white-space:nowrap;font-size:14px}.desktop-nav a{padding:27px 0 22px;opacity:.9;border-bottom:3px solid transparent}.desktop-nav a:hover,.desktop-nav a.active{opacity:1;border-color:var(--theme-accent)}.header-login,.main-btn{background:linear-gradient(180deg,var(--theme-accent),var(--theme) 48%,var(--theme-dark));color:var(--on-theme);padding:12px 18px;border-radius:10px;font-weight:700;box-shadow:0 12px 24px rgba(0,0,0,.16)}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px}.hero-section{background:linear-gradient(135deg,#f6fbfd 0%,var(--theme-light) 50%,#dff2f9 100%);padding:54px 20px 42px}.hero-inner{width:min(1180px,100%);margin:auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;gap:56px}.hero-badge,.pill{display:inline-flex;padding:7px 12px;border-radius:999px;background:var(--theme-soft);border:1px solid var(--theme-border);color:var(--theme-dark);font-size:13px;font-weight:700}.hero-content h1{font-size:clamp(42px,4.2vw,64px);line-height:1.08;letter-spacing:-.03em;color:var(--theme-dark);margin:18px 0 22px}.hero-content p{font-size:18px;line-height:1.8;max-width:760px}.hero-tags,.category-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.hero-tags span,.category-pills a{padding:9px 14px;border-radius:999px;background:var(--white);border:1px solid var(--theme-border);color:var(--theme-dark);font-weight:700}.hero-media-box,.media-box,.card-media{display:flex;align-items:center;justify-content:center;overflow:visible}.hero-media-box{width:min(100%,540px);min-height:320px;max-height:420px;padding:34px;background:rgba(255,255,255,.8);border:1px solid var(--theme-border);border-radius:28px;box-shadow:var(--shadow-soft)}.hero-media-box img{max-width:70%;max-height:340px;width:auto;height:auto;object-fit:contain;opacity:1}.section-title{max-width:780px;margin:0 auto 30px;text-align:center}.section-title h2{color:var(--theme-dark);font-size:clamp(30px,3vw,44px);line-height:1.2;margin:0 0 12px}.info-grid,.category-grid,.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.info-card,.content-card,.faq-item,.review,.notice,.topic-card{background:var(--white);border:1px solid var(--theme-border);border-radius:18px;padding:24px;box-shadow:0 10px 26px rgba(0,67,102,.07)}.info-card>span{font-size:28px;font-weight:800;color:var(--theme)}.info-card h2,.content-card h3,.topic-card h3{color:var(--theme-dark);margin:8px 0}.category-grid .content-card{min-height:230px}.content-card a{color:var(--theme);font-weight:700}.split{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.media-box{min-height:300px;background:var(--theme-soft);border:1px solid var(--theme-border);border-radius:22px;padding:28px}.media-box img,.card-media img{max-width:100%;max-height:330px;width:auto;height:auto;object-fit:contain}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.page-hero{padding:54px 20px;background:linear-gradient(135deg,var(--theme-soft),#fff)}.page-hero-inner{width:min(1100px,100%);margin:auto;display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}.page-hero h1{font-size:clamp(38px,4vw,58px);line-height:1.12;color:var(--theme-dark);margin:12px 0 18px}.page-hero .lead{font-size:18px}.content-body{width:min(1050px,100%);margin:auto}.content-body h2{font-size:32px;line-height:1.25;color:var(--theme-dark);margin-top:42px}.content-body h3{color:var(--theme-dark)}.bullet-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.faq-list{display:grid;gap:14px}.faq-item h3{margin-top:0}.review-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.notice{background:var(--theme-soft);border-left:5px solid var(--theme);margin-top:34px}.related{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.related a{padding:8px 12px;border-radius:10px;background:var(--theme-soft);color:var(--theme-dark);font-weight:700}.site-footer{background:var(--theme-deep);color:var(--on-dark);padding-top:46px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:32px;padding:0 20px 36px}.footer-grid div{display:flex;flex-direction:column;gap:8px}.footer-grid h2{font-size:18px;margin:0 0 8px}.footer-logo{max-width:150px;max-height:58px;object-fit:contain}.footer-bottom{text-align:center;padding:18px;border-top:1px solid rgba(255,255,255,.14);font-size:14px}.mobile-drawer{position:fixed;inset:0 auto 0 0;width:min(330px,88vw);background:#fff;z-index:10001;transform:translateX(-105%);transition:.22s ease;box-shadow:20px 0 50px rgba(0,0,0,.18);padding:18px}.mobile-drawer.is-open{transform:translateX(0)}.drawer-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--theme-border);padding-bottom:14px}.drawer-head img{max-width:150px;max-height:54px;object-fit:contain}.drawer-close{font-size:34px;background:none;border:0;color:var(--theme-dark)}.mobile-drawer nav{display:grid;padding-top:12px}.mobile-drawer nav a{padding:12px 4px;border-bottom:1px solid #edf4f7}.drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.38);z-index:10000;opacity:0;transition:.22s}.drawer-overlay.is-open{opacity:1}.menu-open{overflow:hidden}
@media(max-width:1040px){.desktop-nav{display:none}.menu-toggle{display:block}.header-inner{grid-template-columns:42px 1fr auto}.site-logo{justify-self:center}.header-login{font-size:13px;padding:10px 12px}.hero-inner,.page-hero-inner{grid-template-columns:1fr}.hero-visual{order:2}.hero-media-box{margin:auto}.info-grid,.category-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.section{padding:40px 16px}.header-inner{height:68px;width:calc(100% - 16px);gap:8px}.site-logo img{max-width:132px;max-height:48px}.hero-section{padding:38px 16px}.hero-content h1{font-size:clamp(34px,10vw,48px)}.hero-content p{font-size:16px}.hero-media-box{min-height:220px;padding:24px}.hero-media-box img{max-width:80%;max-height:220px}.info-grid,.category-grid,.bullet-grid,.review-grid{grid-template-columns:1fr}.split{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.page-hero{padding:38px 16px}.page-hero h1{font-size:36px}.content-body h2{font-size:27px}.header-login{font-size:11px;padding:9px 10px}}

/* MOBILE_FIX_TYPE_B_20260930: remove 320px horizontal overflow */
@media (max-width: 900px) {
  html, body { width: 100%; max-width: 100%; overflow-x: clip; }
  body { min-width: 0; }
  .header-inner,
  .hero-inner,
  .section-inner,
  .topic-hero-inner,
  .footer-inner { max-width: 100%; }

  .header-inner {
    width: calc(100% - 20px) !important;
    grid-template-columns: 40px minmax(0, 1fr) minmax(0, 92px) !important;
    gap: 6px !important;
  }
  .header-inner > *,
  .hero-inner > *,
  .topic-hero-inner > *,
  .split > *,
  .split.reverse > *,
  .footer-inner > *,
  .info-grid > *,
  .cards-grid > *,
  .features-grid > *,
  .reviews-grid > *,
  .steps-grid > * { min-width: 0; }

  .menu-toggle {
    width: 40px !important;
    min-width: 40px !important;
    padding: 6px !important;
  }
  .site-logo {
    min-width: 0 !important;
    max-width: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .site-logo img {
    width: auto !important;
    height: auto !important;
    max-width: min(132px, 38vw) !important;
    max-height: 52px !important;
    object-fit: contain;
  }
  .header-login {
    width: 92px !important;
    max-width: 92px !important;
    min-width: 0 !important;
    padding: 9px 6px !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
  }

  .intro-card,
  .content-panel,
  .card,
  .feature-card,
  .faq-item,
  .review-card,
  .media-box,
  .page-media,
  .app-visual,
  .card-media { max-width: 100%; min-width: 0; }

  img { height: auto; }
}

@media (max-width: 360px) {
  :root { --container: calc(100% - 20px) !important; }
  .header-inner {
    width: calc(100% - 12px) !important;
    grid-template-columns: 38px minmax(0, 1fr) minmax(0, 86px) !important;
    gap: 4px !important;
  }
  .menu-toggle { width: 38px !important; min-width: 38px !important; }
  .site-logo img { max-width: min(120px, 37vw) !important; }
  .header-login { width: 86px !important; max-width: 86px !important; padding-inline: 5px !important; font-size: 10.5px !important; }
}
