@charset "UTF-8";
:root{--navy:#031b35;--navy2:#06294e;--blue:#087dff;--cyan:#00e3f2;--ink:#09264b;--muted:#426b98;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;font-family:"Noto Sans JP","Yu Gothic",Meiryo,system-ui,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}.site-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,78px);background:#041b36;color:#fff;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:750;letter-spacing:.02em;white-space:nowrap}.brand small{font-size:.82em;margin-left:4px}.brand-mark{font-size:36px;line-height:1;font-weight:900;font-style:italic;letter-spacing:-.13em;color:#00d9f4;transform:skew(-12deg);display:inline-block}.nav{display:flex;align-items:center;gap:clamp(15px,2.4vw,38px);font-size:13px;font-weight:650}.nav a:not(.nav-contact):hover,.site-footer nav a:hover{color:var(--cyan)}.nav-contact{border:1px solid #b9d8ff;border-radius:30px;padding:12px 23px}.nav-contact span{margin-left:14px;color:var(--cyan)}.menu-toggle{display:none;background:none;border:0;color:white;font-size:25px}.hero{min-height:410px;position:relative;display:flex;align-items:center;overflow:hidden;background:#031b35;color:#fff}.hero-image{position:absolute;inset:0;background-image:url('assets/hero-city.jpg');background-size:cover;background-position:center 48%;opacity:.95}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,20,42,.98) 0%,rgba(2,26,54,.88) 28%,rgba(2,25,52,.22) 64%,rgba(2,25,52,.1) 100%),linear-gradient(0deg,rgba(2,16,34,.25),transparent 45%)}.hero-content{position:relative;z-index:1;padding:42px clamp(24px,5vw,78px);max-width:800px}.eyebrow-jp{font-size:17px;line-height:1.8;letter-spacing:.18em;margin:0 0 14px}.hero h1{font-size:clamp(42px,5.3vw,76px);line-height:.92;letter-spacing:.035em;margin:0 0 18px;font-weight:850}.hero h1 span{font-size:.37em;letter-spacing:.04em;margin-left:8px;white-space:nowrap}.hero-lead{font-size:14px;line-height:1.8;letter-spacing:.04em;margin:0 0 23px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border-radius:30px;padding:14px 24px;font-weight:700;font-size:13px;min-width:230px}.button span{font-size:21px}.button-primary{background:linear-gradient(100deg,#087cff,#00d9d9);color:white}.button-primary:hover{filter:brightness(1.12)}.hero-tagline{position:absolute;right:5%;bottom:38px;font-size:17px;line-height:1.4;font-style:italic;font-weight:650;text-align:center;transform:rotate(-7deg);text-shadow:0 2px 8px #00152c}.values{padding:40px clamp(22px,5vw,78px) 38px;display:grid;grid-template-columns:minmax(220px,.95fr) 3fr;gap:36px;background:linear-gradient(110deg,#fff,#f2f8ff)}.section-kicker{font-size:12px;letter-spacing:.18em;font-weight:800;color:#1262a8;margin:0 0 12px}.section-kicker:before{content:"";display:inline-block;width:14px;height:3px;background:linear-gradient(90deg,#087cff,#00dce8);vertical-align:middle;margin-right:10px}.values-intro h2{font-size:clamp(25px,2.4vw,35px);line-height:1.35;margin:0 0 14px;letter-spacing:.01em}.values-intro>p:not(.section-kicker){font-size:13px;line-height:1.85;color:#2d5b89;margin:0 0 20px}.text-link{display:inline-flex;gap:18px;align-items:center;color:#087dff;border-bottom:1px solid currentColor;padding-bottom:4px;font-size:13px;font-weight:750}.text-link span{font-size:20px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch}.service-card{background:white;box-shadow:0 4px 16px rgba(0,79,157,.09);border:1px solid #e1edfb;min-width:0;display:flex;flex-direction:column}.service-card img{display:block;width:100%;height:clamp(100px,10vw,145px);object-fit:cover}.service-copy{padding:13px 14px 12px;position:relative;flex:1}.service-copy h3{font-size:13px;line-height:1.5;margin:0 0 7px;color:#082c5b}.service-copy p{font-size:11.5px;line-height:1.7;margin:0;color:#426b98;padding-bottom:20px}.service-copy>a{position:absolute;right:13px;bottom:5px;color:#087dff;font-size:22px}.news-contact{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,.65fr);gap:clamp(25px,6vw,90px);padding:35px clamp(22px,5vw,78px) 40px;background:#031b35;color:#fff}.earth-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,#031b35 0%,rgba(3,27,53,.93) 32%,rgba(3,27,53,.25) 63%,#031b35 100%),url('assets/network-earth.jpg');background-size:cover;background-position:center 52%;opacity:.95}.news-list,.contact-card{position:relative;z-index:1}.news-list .section-kicker{color:#d5e8ff;margin-bottom:4px}.news-list h2{font-size:27px;margin:0 0 9px}.news-item{display:flex;align-items:center;gap:17px;min-height:34px;border-bottom:1px solid rgba(198,224,255,.3);font-size:12px}.news-item time{width:97px;flex-shrink:0;font-variant-numeric:tabular-nums;color:#e0eeff}.news-item p{margin:0;line-height:1.5}.new-label{background:#00a9ff;border-radius:9px;padding:2px 7px;font-size:9px;font-weight:800}.text-link.light{color:#fff;margin-top:20px}.contact-card{align-self:center;justify-self:end;max-width:300px}.contact-card h2{font-size:26px;line-height:1.25;margin:0 0 12px}.contact-card p{font-size:12px;line-height:1.9;color:#d4e5fa;margin:0 0 17px}.button-outline{border:1px solid var(--cyan);color:#fff;min-width:210px;padding:10px 20px}.button-outline span{color:var(--cyan)}.button-outline:hover{background:rgba(0,220,242,.12)}.site-footer{background:#02152b;color:#d6e7fb;padding:18px clamp(22px,5vw,78px);display:flex;align-items:center;justify-content:space-between;gap:22px;border-top:1px solid rgba(0,220,242,.45)}.footer-brand{font-size:12px}.footer-brand .brand-mark{font-size:29px}.site-footer nav{display:flex;gap:clamp(12px,2vw,28px);font-size:11px}.site-footer>p{font-size:10px;white-space:nowrap;color:#9bb5d2}
@media(max-width:1000px){.site-header{height:68px}.nav{gap:13px;font-size:12px}.nav-contact{padding:10px 14px}.values{grid-template-columns:1fr;gap:22px}.values-intro br{display:none}.values-intro h2 br{display:block}.service-card img{height:130px}.news-contact{gap:28px}.site-footer{flex-wrap:wrap}.site-footer nav{order:3;width:100%;justify-content:center}}
@media(max-width:700px){.site-header{padding:0 20px}.brand{font-size:14px}.brand-mark{font-size:31px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:68px;left:0;right:0;background:#041b36;padding:16px 22px 22px;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:13px 4px;border-bottom:1px solid rgba(255,255,255,.12)}.nav .nav-contact{border:0;border-radius:0;padding:13px 4px}.hero{min-height:470px;align-items:flex-end}.hero-image{background-position:62% center}.hero-shade{background:linear-gradient(90deg,rgba(2,20,42,.9),rgba(2,20,42,.35)),linear-gradient(0deg,rgba(2,16,34,.9),transparent 95%)}.hero-content{padding:40px 22px 45px}.eyebrow-jp{font-size:14px}.hero h1{font-size:clamp(39px,11vw,59px)}.hero-lead{font-size:12px}.hero-tagline{display:none}.values{padding:32px 20px}.values-intro h2{font-size:27px}.values-intro h2 br{display:block}.values-intro>p:not(.section-kicker){font-size:12px}.values-intro>p:not(.section-kicker) br{display:none}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.service-card img{height:115px}.service-copy{padding:11px}.service-copy h3{font-size:12px}.service-copy p{font-size:11px}.news-contact{grid-template-columns:1fr;padding:30px 20px 34px;gap:28px}.earth-bg{background-position:57% center}.news-item{gap:9px;font-size:11px;padding:6px 0}.news-item time{width:78px;font-size:10px}.contact-card{justify-self:start;max-width:none}.contact-card h2{font-size:24px}.site-footer{padding:20px;justify-content:center;text-align:center}.footer-brand{width:100%;justify-content:center}.site-footer nav{flex-wrap:wrap;gap:13px}.site-footer>p{width:100%;margin:0}}

/* Sample logo taken from the approved design mockup */
.brand-logo{display:block;width:290px;max-width:100%;height:auto;object-fit:contain}.footer-brand .brand-logo{width:235px}@media(max-width:700px){.brand-logo{width:235px}.footer-brand .brand-logo{width:200px}}

.detail-hero{background:linear-gradient(110deg,rgba(2,20,42,.96),rgba(3,46,88,.88)),url('assets/hero-city.jpg') center/cover;color:#fff;padding:72px clamp(22px,7vw,100px)}.detail-hero .crumb{font-size:12px;color:#b9ddff;margin:0 0 22px}.detail-hero h1{font-size:clamp(30px,4.5vw,54px);line-height:1.25;margin:0 0 16px}.detail-hero p{max-width:760px;line-height:1.9;margin:0;color:#e1efff}.detail-content{max-width:1100px;margin:auto;padding:52px clamp(22px,5vw,64px) 70px}.detail-content h2{font-size:clamp(24px,3vw,34px);margin:0 0 16px;color:#09264b}.detail-content .intro{font-size:15px;line-height:2;color:#365a80;max-width:900px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:28px 0 42px}.detail-item{padding:22px;border:1px solid #dceafa;background:linear-gradient(135deg,#fff,#f4f9ff);box-shadow:0 5px 18px rgba(0,70,130,.06)}.detail-item h3{margin:0 0 8px;font-size:17px;color:#0a3b72}.detail-item p{margin:0;color:#426b98;line-height:1.85;font-size:14px}.flow-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0 44px}.flow-step{border-top:3px solid #00cce7;padding:16px 12px;background:#f4f9ff}.flow-step b{display:block;color:#087dff;font-size:12px;letter-spacing:.1em;margin-bottom:8px}.flow-step span{font-weight:700}.detail-note{padding:20px 24px;background:#f1f7fc;border-left:3px solid #0aa7d9;line-height:1.9;color:#365a80}.detail-cta{background:#031b35;color:#fff;padding:34px;border-radius:8px;margin-top:36px}.detail-cta h2{color:#fff;font-size:24px}.detail-cta p{line-height:1.8;color:#d5e7fb}.detail-cta .button{margin-top:10px}.detail-footer{background:#02152b;color:#d6e7fb;padding:20px clamp(22px,5vw,78px);font-size:12px;display:flex;justify-content:space-between;gap:20px}.detail-footer a{color:#fff}@media(max-width:700px){.detail-hero{padding-top:48px;padding-bottom:50px}.detail-content{padding-top:36px}.detail-grid{grid-template-columns:1fr}.flow-list{grid-template-columns:repeat(2,1fr)}.detail-footer{flex-direction:column;align-items:flex-start}}

/* Company profile page */
.company-table-wrap{overflow-x:auto;max-width:900px;margin:32px auto 0;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.03)}
.company-table{width:100%;border-collapse:collapse;color:inherit}.company-table th,.company-table td{padding:18px 22px;text-align:left;border-bottom:1px solid rgba(255,255,255,.12);line-height:1.8}.company-table th{width:28%;color:#65d8ff;font-weight:600}.company-table tr:last-child th,.company-table tr:last-child td{border-bottom:0}.company-note{max-width:900px;margin:16px auto;color:#aaa;font-size:.85rem}.page-hero{padding:90px 0 56px}.page-hero h1{margin:.2em 0}.site-footer{padding:36px 0}
