@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap');:root{--blue:#084f91;--navy:#051a34;--sky:#4897d0;--pale:#eef6fb;--text:#102239;--muted:#5a6b7d;--line:#d8e4ee;--shadow:0 20px 50px rgba(5,35,70,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:'Noto Sans JP','Meiryo UI',sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1180px,calc(100% - 40px));margin:auto}.skip-link{position:fixed;left:12px;top:-60px;background:#fff;padding:10px 18px;z-index:1000}.skip-link:focus{top:12px}.site-header{position:fixed;inset:0 0 auto;z-index:100;background:linear-gradient(180deg,rgba(2,17,38,.78),rgba(2,17,38,0));transition:.28s}.header-inner{width:100%;max-width:none;height:96px;padding:0 34px;display:flex;align-items:center}.brand{margin-right:auto;width:330px;height:54px;background:url('../images/logo_white_yoko.png') left center/contain no-repeat}.brand img{width:330px;height:54px;opacity:0}.global-nav{display:flex;align-items:center;gap:30px;color:#fff;font-size:14px;font-weight:600}.global-nav a[aria-current=page]:not(.nav-cta){border-bottom:2px solid var(--sky)}.nav-cta{padding:10px 18px;border:1px solid rgba(255,255,255,.5);border-radius:6px}.menu-button{display:none;background:none;border:0}.site-header.is-scrolled{background:rgba(255,255,255,.96);box-shadow:0 8px 28px rgba(4,28,56,.09);backdrop-filter:blur(14px)}.site-header.is-scrolled .brand{width:300px;background:none}.site-header.is-scrolled .brand img{width:300px;opacity:1}.site-header.is-scrolled .global-nav{color:var(--text)}.site-header.is-scrolled .nav-cta{background:var(--blue);color:#fff;border-color:var(--blue)}.hero{min-height:820px;position:relative;color:#fff;background:url('../images/hero-acroverse.png') center/cover no-repeat;display:flex;align-items:center}.hero:before{content:"";position:absolute;left:-5vw;top:108px;width:min(620px,46vw);height:530px;background:url('../images/logo_color_tate.png') center/contain no-repeat;opacity:.035;pointer-events:none}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,13,30,.70),rgba(2,18,41,.06))}.hero-content{position:relative;padding:176px 0 190px}.eyebrow,.section-kicker{font-size:12px;font-weight:800;letter-spacing:.25em;color:var(--sky)}.hero h1{font-size:clamp(42px,5.5vw,72px);line-height:1.28;margin:18px 0 24px}.lead{max-width:730px;font-size:18px}.actions{display:flex;gap:14px;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:0 25px;border-radius:6px;border:1px solid transparent;font:inherit;font-weight:700;cursor:pointer}.primary{background:var(--blue);color:#fff}.ghost{border-color:rgba(255,255,255,.6);color:#fff;background:rgba(255,255,255,.08)}.outline{border-color:var(--blue);color:var(--blue)}.light{background:#fff;color:var(--blue)}.hero-stats{position:absolute;bottom:0;left:0;right:0;background:rgba(3,26,55,.9);display:grid;grid-template-columns:repeat(3,1fr);padding:0 max(20px,calc((100vw - 1180px)/2))}.hero-stats div{padding:30px 26px;border-left:1px solid rgba(255,255,255,.2);font-size:18px;font-weight:700;white-space:nowrap}.section{padding:90px 0}.section h2,.page-hero h1,.cta h2{font-size:clamp(32px,4vw,50px);line-height:1.32;margin:10px 0 24px}.section-intro{max-width:780px;color:var(--muted)}.card-grid{display:grid;gap:24px;margin-top:40px}.three{grid-template-columns:repeat(3,1fr)}.two{grid-template-columns:repeat(2,1fr)}.card{padding:34px;border:1px solid var(--line);border-radius:12px}.num,.service-card>span{color:var(--sky);font-weight:800}.dark{background:var(--navy);color:#fff}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.align-start{align-items:start}.brand-showcase{background:#fff;padding:55px;border-radius:16px;box-shadow:0 0 0 8px rgba(72,151,208,.18),var(--shadow)}.feature-logo{width:100%}.text-link{font-weight:700;color:var(--sky)}.section-head{display:flex;align-items:end;justify-content:space-between}.steps{display:grid;grid-template-columns:repeat(5,1fr);margin-top:45px;border-block:1px solid var(--line)}.steps div{padding:27px 18px;border-right:1px solid var(--line)}.steps b,.steps span{display:block}.steps b{color:var(--sky)}.cta{padding:72px 0;background:linear-gradient(120deg,#084f91,#0a6cae);color:#fff}.page-hero{padding:168px 0 78px;background:radial-gradient(circle at 80% 20%,rgba(72,151,208,.28),transparent 34%),linear-gradient(135deg,#051a34,#073d6f);color:#fff}.pale{background:var(--pale)}.vision-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:34px}.vision-list article{background:#fff;padding:25px;display:flex;gap:20px;border-radius:10px}.vision-list span{color:var(--sky);font-weight:800}.service-card{padding:38px;border-top:4px solid var(--blue);box-shadow:var(--shadow);border-radius:8px}.tag-cloud{display:flex;flex-wrap:wrap;gap:12px}.tag-cloud span{padding:11px 17px;border:1px solid rgba(255,255,255,.28);border-radius:999px}.platform-list{display:grid;gap:20px}.platform-list article{display:grid;grid-template-columns:90px 1fr;align-items:center;gap:30px;padding:34px;border:1px solid var(--line);border-radius:12px}.platform-mark{width:78px;height:78px;background:linear-gradient(135deg,var(--blue),var(--sky));color:#fff;display:grid;place-items:center;border-radius:18px;font-size:30px;font-weight:800}.company-grid{display:grid;grid-template-columns:330px 1fr;gap:70px}.company-table div{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid var(--line);padding:22px 0}.company-table dd{margin:0}.timeline{display:grid;grid-template-columns:180px 1fr;padding:30px 0;border-top:1px solid var(--line)}.contact-methods{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-methods article{display:flex;gap:22px;padding:34px;border:1px solid var(--line);border-radius:12px}.contact-methods h2{font-size:24px;margin:0 0 8px}.contact-icon{width:52px;height:52px;border-radius:50%;background:var(--pale);color:var(--blue);display:grid;place-items:center;font-size:24px;flex:0 0 auto}.form-section{max-width:850px;margin:80px auto 0}.contact-form{background:var(--pale);padding:38px;border-radius:12px}.contact-form label{display:block;font-weight:700;margin:17px 0}.contact-form input,.contact-form textarea{width:100%;margin-top:7px;padding:13px;border:1px solid #b9cadd;border-radius:6px;background:#fff;font:inherit}.contact-form .consent{display:flex;gap:10px;align-items:flex-start;font-weight:400}.contact-form .consent input{width:auto;margin-top:7px}.required{color:#b42318;font-size:12px}.hp-field{position:absolute!important;left:-9999px!important}.status-message{padding:16px 20px;margin-bottom:30px;border-radius:8px}.status-message.success{display:block;background:#e7f7ed;color:#126b31}.status-message.error{display:block;background:#fff0f0;color:#9f1c1c}.site-footer{background:#041426;color:#c8d5e2;padding:65px 0 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-logo{width:230px;margin-bottom:18px}.footer-grid a,.footer-grid strong{display:block;margin-bottom:10px}.copyright{border-top:1px solid #273a4e;margin-top:45px;padding:20px;text-align:center;font-size:12px}@media(max-width:900px){.header-inner{height:82px;padding:0 18px}.brand,.site-header.is-scrolled .brand{width:220px;height:42px}.brand img,.site-header.is-scrolled .brand img{width:220px;height:42px}.global-nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;color:var(--text);padding:25px 20px;flex-direction:column;align-items:stretch;box-shadow:var(--shadow)}.global-nav.open{display:flex}.menu-button{display:grid;gap:5px}.menu-button span{display:block;width:26px;height:2px;background:#fff}.is-scrolled .menu-button span{background:var(--navy)}.hero{min-height:850px}.hero-stats{grid-template-columns:1fr}.hero-stats div{padding:14px 20px;white-space:normal}.three,.two,.split,.vision-list,.company-grid,.contact-methods,.footer-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.section{padding:64px 0}.company-table div{grid-template-columns:1fr}}@media(max-width:520px){.container{width:min(100% - 28px,1180px)}.brand,.site-header.is-scrolled .brand{width:188px}.brand img,.site-header.is-scrolled .brand img{width:188px}.hero-content{padding-top:135px}.hero h1{font-size:39px}.actions{flex-direction:column}.button{width:100%}.page-hero{padding-top:145px}.contact-form{padding:24px}.contact-methods article{display:block}.contact-icon{margin-bottom:15px}}
/* Version 3.1: keep the initial header layout and white logo while scrolling */
.site-header,
.site-header.is-scrolled {
  background: linear-gradient(180deg, rgba(2,17,38,.78), rgba(2,17,38,0));
  box-shadow: none;
  backdrop-filter: none;
}
.site-header .header-inner,
.site-header.is-scrolled .header-inner {
  height: 96px;
  padding: 0 34px;
}
.site-header .brand,
.site-header.is-scrolled .brand {
  width: 330px;
  height: 54px;
  background: url('../images/logo_white_yoko.png') left center/contain no-repeat;
}
.site-header .brand img,
.site-header.is-scrolled .brand img {
  width: 330px;
  height: 54px;
  opacity: 0;
}
.site-header .global-nav,
.site-header.is-scrolled .global-nav {
  color: #fff;
}
.site-header .nav-cta,
.site-header.is-scrolled .nav-cta {
  color: #fff;
  background: rgba(255,255,255,.13);
  border-color: rgba(255,255,255,.5);
}
@media(max-width:900px){
  .site-header .header-inner,
  .site-header.is-scrolled .header-inner {height:82px;padding:0 18px}
  .site-header .brand,
  .site-header.is-scrolled .brand {width:220px;height:42px}
  .site-header .brand img,
  .site-header.is-scrolled .brand img {width:220px;height:42px;opacity:0}
  .site-header .menu-button span,
  .site-header.is-scrolled .menu-button span {background:#fff}
}
@media(max-width:520px){
  .site-header .brand,
  .site-header.is-scrolled .brand {width:188px}
  .site-header .brand img,
  .site-header.is-scrolled .brand img {width:188px}
}


/* Version 4.0 products */
.platform-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.product-card{padding:36px;border-radius:18px;background:#fff;box-shadow:0 16px 40px rgba(5,35,70,.08);border-top:6px solid}
.product-card h2{margin:8px 0}
.product-badge{font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.microsoft{border-color:#0078d4}.microsoft .product-badge{color:#0078d4}
.sap{border-color:#0faaff}.sap .product-badge{color:#0faaff}
.mcframe{border-color:#19a974}.mcframe .product-badge{color:#19a974}
.oracle{border-color:#f80000}.oracle .product-badge{color:#f80000}
@media(max-width:900px){.platform-grid{grid-template-columns:1fr}}


/* Version 5.0 revised: motion added only to the Version 4.0 hero */
.hero{
  background:#03162e;
  overflow:hidden;
  isolation:isolate;
}
.hero-motion,.hero-pan-layer,.hero-earth-layer,.hero-light-sweep{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.hero-motion{z-index:0;overflow:hidden}
.hero-pan-layer{
  inset:-7%;
  background:url('../images/hero-acroverse.png') center center/cover no-repeat;
  transform:translate3d(var(--hero-x,0px),var(--hero-y,0px),0) scale(1.13);
  will-change:transform;
  transition:transform .12s linear;
}
.hero-earth-layer{
  inset:-6%;
  background:url('../images/hero-acroverse.png') center center/cover no-repeat;
  clip-path:ellipse(35% 68% at 82% 45%);
  opacity:.72;
  mix-blend-mode:screen;
  animation:earthVisibleZoom 12s ease-in-out infinite alternate;
  will-change:transform,filter,opacity;
}
.hero-light-sweep{
  inset:-20%;
  background:linear-gradient(110deg,transparent 39%,rgba(104,199,255,.02) 45%,rgba(104,199,255,.24) 50%,rgba(104,199,255,.02) 55%,transparent 61%);
  transform:translateX(-55%);
  animation:networkSweep 9s ease-in-out infinite;
  opacity:.75;
}
.hero-a-glow{
  position:absolute;
  z-index:1;
  left:-5vw;
  top:108px;
  width:min(620px,46vw);
  height:530px;
  background:url('../images/logo_color_tate.png') center/contain no-repeat;
  opacity:.05;
  pointer-events:none;
  animation:aVisibleGlow 4.5s ease-in-out infinite;
  will-change:opacity,filter,transform;
}
.hero:before{display:none!important}
.hero-overlay{z-index:2}
.hero-content{z-index:3}
.hero-stats{z-index:4}
@keyframes earthVisibleZoom{
  0%{transform:scale(1.01) translate3d(0,0,0);filter:brightness(1) saturate(1);opacity:.52}
  100%{transform:scale(1.11) translate3d(-1.2%,.5%,0);filter:brightness(1.16) saturate(1.18);opacity:.82}
}
@keyframes aVisibleGlow{
  0%,100%{opacity:.035;filter:drop-shadow(0 0 10px rgba(71,171,255,.16));transform:scale(1)}
  50%{opacity:.11;filter:drop-shadow(0 0 42px rgba(82,187,255,.72));transform:scale(1.018)}
}
@keyframes networkSweep{
  0%,14%{transform:translateX(-55%);opacity:0}
  32%{opacity:.8}
  58%{transform:translateX(50%);opacity:.55}
  70%,100%{transform:translateX(50%);opacity:0}
}
@media(max-width:900px){
  .hero-earth-layer{clip-path:ellipse(48% 54% at 79% 43%)}
  .hero-a-glow{left:-20%;top:100px;width:90%;height:420px}
}
@media(prefers-reduced-motion:reduce){
  .hero-pan-layer{transform:scale(1.13)!important;transition:none}
  .hero-earth-layer,.hero-light-sweep,.hero-a-glow{animation:none!important}
  .hero-earth-layer{transform:scale(1.04);opacity:.6}
  .hero-a-glow{opacity:.055;filter:drop-shadow(0 0 18px rgba(82,187,255,.35))}
}


/* Version 5.1 content and layout refinements */
.strengths-grid .card{
  position:relative;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbfe 100%);
  border:1px solid rgba(72,151,208,.28);
  border-top:5px solid var(--blue);
  border-radius:16px;
  box-shadow:0 16px 38px rgba(5,35,70,.09);
  transition:transform .22s ease,box-shadow .22s ease;
}
.strengths-grid .card:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(5,35,70,.14)}
.strengths-grid .num{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--pale);margin-bottom:10px}
.process-flow{position:relative;border:0;gap:16px;overflow:visible}
.process-flow:before{content:"";position:absolute;left:7%;right:7%;top:49px;height:3px;background:linear-gradient(90deg,var(--blue),var(--sky));z-index:0}
.process-flow div{position:relative;z-index:1;border:0;padding:24px 14px 20px;text-align:center;background:#fff;border-radius:14px;box-shadow:0 10px 28px rgba(5,35,70,.08)}
.process-flow div:not(:last-child):after{content:"›";position:absolute;right:-14px;top:28px;color:var(--sky);font-size:30px;font-weight:800}
.process-flow b{display:grid;width:48px;height:48px;margin:0 auto 12px;place-items:center;border-radius:50%;background:var(--blue);color:#fff!important;box-shadow:0 0 0 7px #eef6fb}
.process-flow span{font-weight:700}
.timeline-list{border-top:1px solid var(--line)}
.timeline-list .timeline{display:grid;grid-template-columns:180px 1fr;align-items:center;min-height:76px;padding:20px 0;border-top:0;border-bottom:1px solid var(--line)}
.timeline-list .timeline time,.timeline-list .timeline p{margin:0;align-self:center}
@media(max-width:900px){
 .process-flow{gap:12px}
 .process-flow:before{top:24px;bottom:24px;left:24px;right:auto;width:3px;height:auto}
 .process-flow div{text-align:left;padding:20px 22px 20px 84px}
 .process-flow b{position:absolute;left:18px;top:18px}
 .process-flow div:not(:last-child):after{content:"↓";right:auto;left:34px;top:auto;bottom:-23px;font-size:20px}
}
@media(max-width:520px){
 .timeline-list .timeline{grid-template-columns:1fr;gap:6px;align-items:start}
}

/* Version 5.2: preserve product-name capitalization */
.product-badge{text-transform:none !important;}

/* Version 6.0: privacy policy and contact completion */
.policy-content{max-width:900px}
.policy-content>p:first-child{font-size:17px;color:var(--muted);margin-bottom:50px}
.policy-content article{padding:26px 0;border-bottom:1px solid var(--line)}
.policy-content article h2{font-size:24px;margin:0 0 10px}
.policy-content article ul{padding-left:1.4em}
.policy-date{margin-top:36px;text-align:right;font-weight:700}
.complete-wrap{max-width:780px}
.complete-card{text-align:center;padding:58px 42px;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);background:#fff}
.complete-icon{width:74px;height:74px;margin:0 auto 22px;border-radius:50%;display:grid;place-items:center;background:#e7f7ed;color:#126b31;font-size:38px;font-weight:800}
.complete-card h2{font-size:34px;margin:0 0 18px}
.complete-card p{color:var(--muted)}
.complete-actions{justify-content:center}
.complete-actions .outline{border-color:var(--blue);color:var(--blue);background:#fff}
@media(max-width:520px){.complete-card{padding:38px 22px}.complete-card h2{font-size:27px}.complete-actions{display:grid}.policy-content article h2{font-size:21px}}

/* Version 6.2 */
.hero-light-sweep{display:none!important;animation:none!important}
.waterfall-flow{--step-drop:28px;position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:10px 0 calc(var(--step-drop) * 4 + 18px);border:0;overflow:visible}
.waterfall-flow:before{display:none!important}
.waterfall-flow div{position:relative;min-height:126px;padding:24px 18px;text-align:left;border:1px solid rgba(72,151,208,.28);border-left:6px solid var(--blue);border-radius:4px 14px 14px 4px;background:linear-gradient(135deg,#fff,#f2f8fc);box-shadow:0 12px 28px rgba(5,35,70,.08)}
.waterfall-flow div:nth-child(1){transform:translateY(0)}.waterfall-flow div:nth-child(2){transform:translateY(calc(var(--step-drop) * 1))}.waterfall-flow div:nth-child(3){transform:translateY(calc(var(--step-drop) * 2))}.waterfall-flow div:nth-child(4){transform:translateY(calc(var(--step-drop) * 3))}.waterfall-flow div:nth-child(5){transform:translateY(calc(var(--step-drop) * 4))}
.waterfall-flow div:not(:last-child):after{content:"";position:absolute;right:-13px;bottom:-28px;width:13px;height:56px;border-right:3px solid var(--sky);border-bottom:3px solid var(--sky);border-radius:0 0 10px 0}
.waterfall-flow b{display:block;width:auto;height:auto;margin:0 0 10px;color:var(--sky)!important;background:none;border-radius:0;box-shadow:none;font-size:24px;line-height:1}.waterfall-flow span{font-size:15px;font-weight:800}
.erp-landscape{position:relative;margin-top:42px;padding:32px;border:1px solid rgba(255,255,255,.18);border-radius:20px;background:rgba(255,255,255,.055);overflow:hidden}.erp-core{width:min(360px,100%);margin:0 auto 28px;padding:22px;text-align:center;border-radius:16px;background:linear-gradient(135deg,#0b65a8,#4897d0);box-shadow:0 16px 40px rgba(0,0,0,.22)}.erp-core span,.erp-core strong,.erp-core small{display:block}.erp-core span{font-size:12px;letter-spacing:.3em;font-weight:800;color:#cfeaff}.erp-core strong{font-size:24px;margin:4px 0}.erp-core small{color:#e5f3fc}.erp-domain{display:grid;grid-template-columns:210px 1fr;gap:20px;align-items:stretch;margin-top:18px}.domain-heading{display:flex;flex-direction:column;justify-content:center;padding:20px;border-radius:12px;background:rgba(255,255,255,.09);border-left:5px solid var(--sky)}.domain-heading b{font-size:11px;letter-spacing:.18em;color:var(--sky)}.domain-heading strong{font-size:20px}.domain-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.domain-flow div{position:relative;display:grid;place-items:center;min-height:76px;padding:12px;text-align:center;border:1px solid rgba(255,255,255,.24);border-radius:10px;background:rgba(255,255,255,.08);font-weight:700}.domain-flow div:not(:last-child):after{content:"";position:absolute;right:-10px;top:50%;width:10px;border-top:2px solid var(--sky)}.finance-domain .domain-flow{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.waterfall-flow{grid-template-columns:1fr;padding:0;gap:14px}.waterfall-flow div,.waterfall-flow div:nth-child(n){transform:none;min-height:auto;padding:20px 20px 20px 78px}.waterfall-flow div b{position:absolute;left:20px;top:22px}.waterfall-flow div:not(:last-child):after{right:auto;left:33px;bottom:-15px;width:0;height:15px;border-right:3px solid var(--sky);border-bottom:0;border-radius:0}.erp-domain{grid-template-columns:1fr}.domain-flow,.finance-domain .domain-flow{grid-template-columns:repeat(2,1fr)}.domain-flow div:not(:last-child):after{display:none}}
@media(max-width:520px){.erp-landscape{padding:20px 16px}.domain-flow,.finance-domain .domain-flow{grid-template-columns:1fr}}

/* Version 7.1 mobile menu fix for iPhone Safari */
@media(max-width:900px){
 .menu-button{display:flex !important;flex-direction:column;justify-content:center;gap:5px;position:relative;z-index:1002;-webkit-appearance:none;appearance:none;background:transparent;border:0;padding:8px;cursor:pointer}
 .menu-button span{display:block !important;width:28px;height:3px;background:#fff;border-radius:3px}
 .global-nav{position:absolute;top:82px;left:0;right:0;z-index:1001;background:#fff;color:#102239;padding:20px;display:none}
 .global-nav.open{display:flex !important;flex-direction:column;gap:14px}
 .global-nav a{display:block;padding:10px 0}
 }

@media(max-width:900px){.menu-button{display:flex!important}.global-nav{display:none!important}.global-nav.open{display:flex!important;position:fixed;top:82px;left:0;right:0;max-height:calc(100vh - 82px);overflow:auto;background:#fff;z-index:9999}}

/* Version 7.3: consolidated iPhone Safari mobile navigation */
@media (max-width: 900px) {
  body.menu-open { overflow: hidden; }
  .site-header, .site-header.is-scrolled { z-index: 10000; }
  .header-inner { position: relative; }
  .menu-button,
  .site-header .menu-button,
  .site-header.is-scrolled .menu-button {
    display: flex !important;
    width: 44px;
    height: 44px;
    padding: 8px;
    margin: 0;
    flex: 0 0 44px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    position: relative;
    z-index: 10002;
    border: 0;
    border-radius: 6px;
    background: rgba(0, 0, 0, .18);
    -webkit-appearance: none;
    appearance: none;
    touch-action: manipulation;
  }
  .menu-button span,
  .site-header .menu-button span,
  .site-header.is-scrolled .menu-button span {
    display: block !important;
    width: 27px;
    height: 3px;
    margin: 0;
    border-radius: 3px;
    background: #fff !important;
  }
  .global-nav,
  .site-header .global-nav,
  .site-header.is-scrolled .global-nav {
    display: none !important;
    position: fixed;
    top: 82px;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10001;
    margin: 0;
    padding: 18px 20px calc(28px + env(safe-area-inset-bottom));
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background: #fff;
    color: #102239 !important;
    box-shadow: 0 18px 38px rgba(2, 18, 41, .22);
  }
  .global-nav.open,
  .site-header .global-nav.open,
  .site-header.is-scrolled .global-nav.open {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  .global-nav a,
  .site-header .global-nav a,
  .site-header.is-scrolled .global-nav a {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: 48px;
    padding: 11px 8px;
    color: #102239 !important;
    background: transparent !important;
    border-bottom: 1px solid #d8e4ee;
    font-size: 16px;
    line-height: 1.6;
  }
  .global-nav .nav-cta,
  .site-header .global-nav .nav-cta,
  .site-header.is-scrolled .global-nav .nav-cta {
    margin-top: 12px;
    padding: 12px 16px;
    color: #fff !important;
    background: #084f91 !important;
    border: 1px solid #084f91;
    border-radius: 6px;
    text-align: center;
  }
}

/* Version 7.4.2: SERVICES detail link below heading, left aligned */
.services-detail-link{margin-top:-10px;margin-bottom:28px;text-align:left}
.services-detail-link .text-link{display:inline-block}

/* Version 8.0 recruitment page */
.recruit-intro{max-width:980px}.recruit-grid{margin-top:38px}.recruit-card{background:#fff;border-top:5px solid var(--blue);box-shadow:var(--shadow)}.recruit-card h3{font-size:24px;margin:10px 0 14px}.recruit-card p,.recruit-points p{color:var(--muted)}.recruit-points article{align-items:flex-start}.recruit-points h3{margin:0 0 8px}.recruit-points p{margin:0}@media(max-width:520px){.recruit-card h3{font-size:21px}}

/* Version 8.1 recruitment refinements */
.welcome-card-grid{margin-top:38px}
.welcome-card{align-items:flex-start;background:#fff;border:1px solid rgba(72,151,208,.28);border-top:5px solid var(--blue);border-radius:16px;box-shadow:0 16px 38px rgba(5,35,70,.09)}
.welcome-card>span{display:inline-grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:50%;background:var(--pale);color:var(--blue);font-weight:800}
.welcome-card h3{margin:0 0 8px}
.welcome-card p{margin:0;color:var(--muted)}

/* Version 8.2: align CAREERS section with the common page container */
.recruit-careers-align{max-width:none;margin-left:auto;margin-right:auto}

/* Version 8.3: About page brand message */
.about-message{position:relative;overflow:hidden;background:#fff}

.about-message .container{position:relative}
.about-message-en{max-width:940px;margin:12px 0 18px;color:var(--navy);font-size:clamp(36px,5vw,64px);font-weight:800;line-height:1.18;letter-spacing:-.025em}
.about-message-ja{margin:0 0 26px;color:var(--blue);font-size:clamp(22px,2.6vw,32px);font-weight:700;letter-spacing:.04em}
.about-message .section-intro{max-width:760px;margin-bottom:0;font-size:17px}
@media(max-width:520px){.about-message-en{font-size:34px;line-height:1.25}.about-message-ja{font-size:21px}.about-message .section-intro{font-size:16px}}

/* Version 7.4: tighten spacing between OUR PURPOSE and ACRO / VERSE */
.about-message{padding-bottom:60px}
.about-name-section{padding-top:60px}
@media(max-width:900px){
  .about-message{padding-bottom:46px}
  .about-name-section{padding-top:46px}
}

/* Version 8.5.1: contact form only */
.contact-form-only{margin-top:0}

/* Version 8.5.2: hero without the three statistics blocks */
.hero-without-stats .hero-content{padding-bottom:132px}
@media(max-width:900px){
  .hero.hero-without-stats{min-height:760px}
  .hero-without-stats .hero-content{padding-bottom:100px}
}
@media(max-width:520px){
  .hero.hero-without-stats{min-height:720px}
  .hero-without-stats .hero-content{padding-bottom:82px}
}
