:root {
--theme:#0c66ad;--theme-dark:#084a80;--theme-deep:#053052;--theme-light:#f2f8fd;--theme-soft:#dceefa;--theme-accent:#3b8fd0;--theme-hover:#095896;--theme-border:rgba(12,102,173,.28);--header-bg:#063b69;--header-bg-2:#0a4d82;--text-main:#1d2c3a;--text-muted:#586c7d;--on-theme:#fff;--on-header:#f7fbff;--on-dark:#f7fbff;--white:#fff;--shadow-soft:0 18px 48px rgba(6,59,105,.18);
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;overflow-x:hidden;overflow-y:auto}html{scroll-behavior:smooth}body{background:var(--theme-light);color:var(--text-main);font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;font-size:16px;line-height:1.7}a{color:var(--theme-dark)}img{display:block;max-width:100%}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}
.container,.section-inner,.header-inner,.footer-inner,.hero-inner{width:min(1280px,calc(100% - 80px));margin-left:auto;margin-right:auto}
.site-header{position:sticky;top:0;width:100%;z-index:9999;background:linear-gradient(180deg,var(--header-bg) 0%,var(--header-bg-2) 100%);color:var(--on-header);box-shadow:var(--shadow-soft);border-bottom:1px solid rgba(255,255,255,.16);overflow:visible}
.header-inner{min-height:82px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px}.site-logo,.drawer-logo,.footer-logo{display:inline-flex;align-items:center;justify-content:center;overflow:visible}.site-logo img{width:auto;height:auto;max-width:190px;max-height:72px;object-fit:contain}.main-nav{display:flex;justify-content:center;align-items:center;gap:18px}.main-nav a{color:var(--on-header);text-decoration:none;white-space:nowrap;font-size:14px;font-weight:700;padding:9px 0 7px;border-bottom:2px solid transparent}.main-nav a.active,.main-nav a:hover{color:#9fd3f5;border-bottom-color:var(--theme-accent)}.main-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;background:linear-gradient(180deg,var(--theme-accent) 0%,var(--theme) 48%,var(--theme-dark) 100%);color:var(--on-theme);border:0;border-radius:999px;box-shadow:0 12px 28px rgba(6,59,105,.22);text-decoration:none;white-space:nowrap;font-weight:800;letter-spacing:.02em;transition:transform .2s ease,filter .2s ease}.main-btn:hover{transform:translateY(-1px);filter:brightness(1.04)}.mobile-menu-toggle{display:none}.header-actions{display:flex;align-items:center}
.site-main{min-height:60vh}.section{padding:64px 0}.section.compact{padding:36px 0}.section.soft{background:var(--theme-soft)}.section.white{background:var(--white)}.section-alt{background:linear-gradient(180deg,var(--white),var(--theme-light))}.section-deep{background:linear-gradient(135deg,var(--theme-dark),var(--theme-deep));color:var(--on-dark)}.section-deep h2,.section-deep h3,.section-deep a{color:var(--on-dark)}
.section-head{max-width:860px;margin-bottom:32px}.section-kicker,.page-badge,.hero-badge{display:inline-flex;align-items:center;border-radius:999px;padding:8px 14px;background:var(--theme-soft);color:var(--theme-dark);border:1px solid var(--theme-border);font-weight:800;font-size:14px;margin-bottom:14px}.section h2,.section h3{color:var(--theme-dark)}.section h2{font-size:clamp(30px,3vw,44px);line-height:1.18;margin:0 0 18px}.section h3{margin:0 0 10px;line-height:1.28}.section p{margin:0 0 16px}.muted{color:var(--text-muted)}
.hero-section{padding:46px 0 34px;background:radial-gradient(circle at 15% 20%,var(--theme-soft) 0%,transparent 34%),linear-gradient(180deg,var(--theme-light) 0%,var(--white) 100%)}.hero-inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);align-items:center;gap:48px;min-height:500px}.hero-content h1{max-width:820px;font-size:clamp(40px,4vw,58px);line-height:1.08;letter-spacing:-.03em;margin:0 0 22px;color:var(--theme-dark)}.hero-content p{max-width:760px;font-size:18px;line-height:1.8;color:var(--text-main);margin:0 0 26px}.hero-tags{display:flex;flex-wrap:wrap;gap:10px}.hero-tags span,.category-pills a,.tag{display:inline-flex;align-items:center;border-radius:999px;padding:9px 14px;background:var(--white);color:var(--theme-dark);border:1px solid var(--theme-border);font-weight:700;text-decoration:none}.hero-visual,.media-box,.app-visual,.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;border-radius:30px;background:linear-gradient(180deg,var(--white) 0%,var(--theme-soft) 100%);border:1px solid var(--theme-border);box-shadow:var(--shadow-soft);display:flex;align-items:center;justify-content:center;overflow:visible}.hero-media-box img{max-width:70%;max-height:340px;width:auto;height:auto;object-fit:contain;opacity:1}.page-hero .hero-media-box img{max-width:100%}.media-box img,.app-visual img,.card-media img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.page-hero .hero-inner{min-height:440px}.page-hero .hero-content h1{font-size:clamp(38px,3.8vw,56px)}.page-hero .hero-content p{font-size:17px}
.info-section{padding:28px 0 50px;background:var(--white)}.info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.info-card,.category-card,.feature-card,.faq-item,.notice,.visual-card,.feedback-card,.topic-card,.service-point{background:var(--white);color:var(--text-main);border:1px solid var(--theme-border);box-shadow:var(--shadow-soft);border-radius:24px;min-height:auto;height:auto;padding:26px}.info-card::before,.category-card::before,.feature-card::before,.topic-card::before{content:"";display:block;width:52px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--theme),var(--theme-accent));margin-bottom:16px}.info-card span,.card-number{color:var(--theme);font-weight:900}.info-card h2,.category-card h3,.feature-card h3,.topic-card h3{color:var(--theme-dark)}.info-card h2{font-size:22px;margin:10px 0}.info-card p{color:var(--text-muted);margin:0}
.category-section{padding:22px 0 54px;background:var(--white)}.category-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.category-pills a{transition:background .2s ease,color .2s ease,transform .2s ease}.category-pills a:hover{background:linear-gradient(180deg,var(--theme-accent),var(--theme));color:var(--on-theme);transform:translateY(-1px)}
.grid-2,.grid-3,.grid-4,.category-grid,.feedback-grid,.topic-grid,.service-grid{display:grid;gap:22px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4,.category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.feedback-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.text-link{display:inline-flex;margin-top:10px;color:var(--theme-dark);font-weight:800;text-decoration-thickness:2px;text-underline-offset:3px}.split-section{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:center;gap:46px}.visual-card{min-height:330px;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--white),var(--theme-soft))}.visual-card img{max-height:300px;width:auto;height:auto;object-fit:contain}.list-check{padding:0;margin:18px 0 0;list-style:none;display:grid;gap:10px}.list-check li{position:relative;padding-left:26px}.list-check li::before{content:"•";position:absolute;left:6px;color:var(--theme);font-weight:900}.notice{background:linear-gradient(135deg,var(--theme-soft),var(--white));border-left:5px solid var(--theme)}.notice strong{color:var(--theme-dark)}.faq-list{display:grid;gap:16px}.faq-item h3{font-size:18px;margin-bottom:8px}.feedback-card{background:linear-gradient(180deg,var(--white),#f4f9fd)}.feedback-card p{margin:0}.topic-card p,.service-point p{color:var(--text-muted);margin:0}.service-point{padding:22px}.service-point h3{font-size:18px}.related-links{display:flex;flex-wrap:wrap;gap:10px}.related-links a{display:inline-flex;text-decoration:none;border:1px solid var(--theme-border);background:var(--white);border-radius:999px;padding:8px 13px;color:var(--theme-dark);font-weight:700}.related-links a:hover{background:var(--theme-soft)}.cta-line{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:22px}.content-prose{max-width:930px}
.footer{background:linear-gradient(180deg,var(--theme-dark) 0%,var(--theme-deep) 100%);color:var(--on-dark);padding:56px 0 24px}.footer-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1.2fr;gap:34px}.footer h3{color:#9fd3f5;margin-top:0}.footer a{color:var(--on-dark)}.footer-col{display:flex;flex-direction:column;gap:8px}.footer-brand p,.footer-col p,.footer-legal p{color:#dceefa}.footer-logo img{max-width:180px;max-height:70px;width:auto;height:auto;object-fit:contain}.footer-legal{margin-top:34px;padding-top:22px;border-top:1px solid rgba(255,255,255,.16);display:grid;grid-template-columns:1fr 1fr;gap:24px}.footer-legal p{margin:0;font-size:14px}
.mobile-drawer{position:fixed;top:0;left:0;width:82%;max-width:320px;height:100vh;transform:translateX(-100%);transition:transform .28s ease;z-index:10001;background:var(--header-bg);color:var(--on-header);box-shadow:18px 0 48px rgba(0,0,0,.24);padding:18px;overflow-y:auto}.mobile-drawer.is-open{transform:translateX(0)}.drawer-overlay{position:fixed;inset:0;opacity:0;visibility:hidden;z-index:10000;background:rgba(5,48,82,.58);transition:opacity .28s ease,visibility .28s ease}.drawer-overlay.is-open{opacity:1;visibility:visible}body.menu-open{overflow:hidden}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.drawer-logo img{max-width:145px;max-height:54px;width:auto;height:auto;object-fit:contain}.drawer-close{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:var(--on-header);font-size:28px;line-height:1;cursor:pointer}.drawer-nav{display:grid}.drawer-nav a{color:var(--on-header);text-decoration:none;padding:12px 8px;border-bottom:1px solid rgba(255,255,255,.12);font-weight:700}
@media (min-width:1440px){.container,.section-inner,.header-inner,.footer-inner,.hero-inner{width:min(1360px,calc(100% - 120px))}}
@media (max-width:1180px){.main-nav{gap:12px}.main-nav a{font-size:13px}.header-inner{gap:14px}}
@media (max-width:1023px){.container,.section-inner,.footer-inner,.hero-inner{width:min(100% - 40px,1280px)}.header-inner{width:min(100% - 28px,1280px);min-height:68px;grid-template-columns:48px minmax(0,1fr) auto;gap:10px}.mobile-menu-toggle{display:inline-flex;width:44px;height:44px;padding:9px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.09);flex-direction:column;justify-content:center;gap:5px;cursor:pointer}.mobile-menu-toggle span{width:100%;height:2px;background:var(--on-header);border-radius:999px}.main-nav{display:none}.site-logo{justify-self:center}.site-logo img{max-width:min(150px,42vw);max-height:56px}.header-actions{justify-self:end}.header-actions .main-btn{padding:10px 16px;font-size:13px}.hero-section{padding:44px 0 34px}.hero-inner{grid-template-columns:1fr;gap:30px;min-height:auto}.hero-media-box{max-width:100%;min-height:auto;padding:26px}.hero-media-box img{max-height:300px}.info-grid,.grid-4,.category-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3,.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-section{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.container,.section-inner,.footer-inner,.hero-inner{width:min(100% - 32px,1280px)}.section{padding:48px 0}.hero-content h1{font-size:clamp(34px,9vw,48px)}.hero-content p{font-size:16px}.hero-media-box{border-radius:24px;padding:20px}.hero-media-box img{max-width:100%}.info-grid,.grid-2,.grid-3,.grid-4,.category-grid,.feedback-grid,.topic-grid,.service-grid{grid-template-columns:1fr}.info-card,.category-card,.feature-card,.faq-item,.notice,.visual-card,.feedback-card,.topic-card,.service-point{padding:22px;border-radius:20px}.footer-grid,.footer-legal{grid-template-columns:1fr}.footer{padding-top:44px}}
@media (max-width:390px){.header-inner{width:min(100% - 20px,1280px);grid-template-columns:44px minmax(0,1fr) auto;gap:8px}.site-logo img{max-width:min(120px,36vw);max-height:48px}.header-actions .main-btn{padding:8px 11px;font-size:12px}.mobile-menu-toggle{width:42px;height:42px}}
