*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--ink: #14152E;--body: #3f415e;--muted: #8a8ca6;--muted-2: #c0c3d6;--line: #E3E7F2;--line-2: #DDE3F3;--tint: #F0F5FF;--cyan: #5BC5F5;--blue: #557CF2;--indigo: #6456E0;--purple: #7526E5;--indigo-lt: #9d90f5;--purple-lt: #b47bf2;--cyan-ice: #B5F1FF;--grad: linear-gradient(100deg, #5BC5F5, #6456E0 55%, #7526E5);--grad-135: linear-gradient(135deg, #5BC5F5, #6456E0 55%, #7526E5);--grad-bar: linear-gradient(90deg, #5BC5F5, #6456E0 55%, #7526E5);--font-jp: "Noto Sans JP", "Meiryo", sans-serif;--font-en: "Chakra Petch", sans-serif;--nav-h: 74px}html{scroll-behavior:smooth}body{font-family:var(--font-jp);color:var(--ink);background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}section[id]{scroll-margin-top:var(--nav-h)}img{display:block}a{color:inherit}@keyframes vpFadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes vpDash{to{stroke-dashoffset:-200}}@keyframes vpSpin{to{transform:rotate(360deg)}}@keyframes vpDashFlow{to{stroke-dashoffset:-120}}@keyframes vpBob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}:focus-visible{outline:3px solid var(--indigo);outline-offset:3px;border-radius:3px}.skip-link{position:fixed;top:-60px;left:16px;z-index:2000;background:var(--ink);color:#fff;font-size:13px;font-weight:700;padding:10px 18px;border-radius:6px;text-decoration:none;transition:top .2s ease}.skip-link:focus{top:12px}.btn-cta{white-space:nowrap;display:inline-block;transform:skew(-12deg);background:var(--grad);color:#fff;font-weight:700;font-size:14px;border-radius:6px;padding:11px 26px;letter-spacing:.05em;text-decoration:none;box-shadow:4px 4px #14152ee6;transition:transform .15s ease,box-shadow .15s ease}.btn-cta>span{display:inline-block;transform:skew(12deg)}.btn-cta:hover{transform:skew(-12deg) translate(-2px,-2px);box-shadow:6px 6px #14152ee6}.btn-cta--lg{font-size:15.5px;padding:15px 36px;box-shadow:5px 5px #14152eeb}.btn-cta--lg:hover{box-shadow:8px 8px #14152eeb}.btn-cta--contact{font-size:16px;padding:17px 52px;letter-spacing:.06em;box-shadow:6px 6px #ffffff38}.btn-cta--contact:hover{transform:skew(-12deg) translate(-2px,-2px);box-shadow:9px 9px #ffffff4d}.btn-cta--inv{background:#fff;color:var(--ink);box-shadow:5px 5px #14152e80}.btn-cta--inv:hover{color:var(--ink);box-shadow:8px 8px #14152e80}.link-arrow{white-space:nowrap;display:inline-flex;align-items:center;gap:9px;color:var(--ink);font-weight:700;font-size:15px;text-decoration:none;border-bottom:3px solid var(--ink);padding-bottom:3px;transition:color .2s ease,border-color .2s ease}.link-arrow:hover{color:var(--indigo);border-color:var(--indigo)}.link-arrow--light{color:#fff;font-size:14.5px;border-color:var(--cyan);padding-bottom:4px}.link-arrow--light:hover{color:var(--cyan);border-color:var(--cyan)}.pin{position:relative;flex-shrink:0}.pin__shape{position:absolute;inset:0;transform:rotate(-45deg);border-radius:50% 50% 50% 0;background:var(--grad-135)}.pin__face{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-bottom:10%;color:#fff}.pin__face i{color:#fff}.pin__num{font-family:var(--font-en);font-weight:700;color:#fff}.dia{flex-shrink:0;width:10px;height:10px;transform:rotate(45deg);background:var(--cyan);position:relative;top:1px}.dia--sm{width:7px;height:7px;top:0}.dia--blue{background:var(--blue)}.dia--indigo{background:var(--indigo)}.dia--purple{background:var(--purple)}.shead{display:flex;align-items:center;gap:24px}.shead__pin{width:64px;height:64px;flex-shrink:0}.shead__pin .pin__shape{box-shadow:5px 5px #14152ee6}.shead--dark .shead__pin .pin__shape{box-shadow:5px 5px #5bc5f573}.shead__pin .pin__num{font-size:20px}.sign{display:inline-block;background:#fff;border:3px solid var(--ink);border-radius:10px;padding:16px 28px 12px;box-shadow:7px 7px #5bc5f580;max-width:820px;min-width:0}.sign__title{font-size:clamp(20px,2.6vw,28px);font-weight:900;color:var(--ink);letter-spacing:.02em;line-height:1.55}.sign__strip{display:block;height:5px;border-radius:2px;background:var(--grad-bar);margin:12px 0 7px}.sign__en{display:block;font-family:var(--font-en);font-size:10px;font-weight:600;letter-spacing:.18em;color:var(--muted)}.sign-chip{display:inline-block;transform:skew(-12deg);background:#fff;border:2px solid var(--ink);border-radius:5px;padding:4px 13px}.sign-chip>span{display:inline-block;transform:skew(12deg);font-family:var(--font-en);font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--ink);white-space:nowrap}.sign-chip--outline{background:transparent;border-color:#ffffff59;padding:6px 14px}.sign-chip--outline>span{font-size:11.5px;letter-spacing:.16em;color:var(--cyan)}.sechead{display:flex;align-items:center;gap:18px;margin-bottom:14px}.sechead__pin{width:56px;height:56px}.sechead__pin .pin__shape{box-shadow:6px 6px #5bc5f540}.sechead__pin .pin__num{font-size:19px}.sechead__en{font-family:var(--font-en);font-size:12px;font-weight:600;letter-spacing:.18em;color:var(--indigo)}.gl-bg{position:absolute;inset:0;pointer-events:none}.gl-bg canvas{display:block}.ghost{position:absolute;font-family:var(--font-en);font-size:clamp(90px,13vw,180px);font-weight:700;letter-spacing:.04em;color:transparent;-webkit-text-stroke:1.5px rgba(20,21,46,.08);line-height:1;pointer-events:none;white-space:nowrap}.ghost--light{-webkit-text-stroke-color:rgba(255,255,255,.1)}.seam{position:relative;height:86px}.seam__fill{position:absolute;inset:0}section:has(>.seam)+section{margin-top:-1px}.seam--to-navy .seam__fill{background:var(--ink);clip-path:polygon(0 100%,100% 38%,100% 100%,0 100%)}.seam--to-white .seam__fill{background:#fff;clip-path:polygon(0 100%,100% 38%,100% 100%,0 100%)}.seam--to-tint .seam__fill{background:var(--tint);clip-path:polygon(0 100%,100% 30%,100% 100%,0 100%)}.strip-top{position:absolute;left:0;right:0;top:0;height:80px;background:#fff;clip-path:polygon(0 0,100% 0,100% 30%,0 100%)}.hatch{position:absolute;background:repeating-linear-gradient(45deg,rgba(100,86,224,.07) 0 10px,transparent 10px 26px);pointer-events:none}.container{position:relative;max-width:1180px;margin:0 auto}.nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-h);padding:0 clamp(20px,3.5vw,48px);display:flex;align-items:center;justify-content:space-between;background:#fffffff2;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px #14152e14}.nav__logo{flex-shrink:0;display:block}.nav__logo img{height:34px}.nav__center{display:flex;align-items:center;gap:26px;flex:1;justify-content:center}.nav__link{color:var(--ink);text-decoration:none;font-size:15px;font-weight:700;letter-spacing:.03em;white-space:nowrap;padding:6px 2px;border-bottom:3px solid transparent}.nav__link--c:hover{border-bottom-color:var(--cyan)}.nav__link--i:hover{border-bottom-color:var(--indigo)}.nav__link--p:hover{border-bottom-color:var(--purple)}.nav__link--b:hover{border-bottom-color:var(--blue)}.nav__right{display:flex;align-items:center;gap:14px;flex-shrink:0}.nav__lang{background:transparent;border:0;color:var(--ink);font-family:var(--font-en);font-size:13px;font-weight:600;letter-spacing:.08em;cursor:pointer;padding:6px 2px}.nav__lang:hover{color:var(--indigo)}.nav__toggle{display:none;flex-direction:column;gap:5px;background:transparent;border:0;cursor:pointer;padding:10px}.nav__toggle span{display:block;width:24px;height:3px;background:var(--ink)}.mobile-menu{position:fixed;inset:0;z-index:1500;background:#fffffffa;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility .3s ease}.mobile-menu.is-open{opacity:1;visibility:visible;pointer-events:auto}.mobile-menu__close{position:absolute;top:22px;right:28px;background:transparent;border:0;color:var(--ink);font-size:36px;line-height:1;cursor:pointer;padding:4px 10px}.mobile-menu__link{font-size:22px;font-weight:900;color:var(--ink);text-decoration:none}.mobile-menu__cta{margin-top:8px;background:var(--grad);color:#fff;font-weight:700;font-size:15px;border-radius:6px;padding:12px 30px;text-decoration:none}@media(max-width:960px){.nav__center,.nav__right{display:none}.nav__toggle{display:inline-flex}}@media(min-width:961px){.nav__toggle,.mobile-menu{display:none}}.hero{position:relative;background:linear-gradient(115deg,#e7f5fe,#f2f5ff 48%,#fff);overflow:hidden}.hero__hatch-tr{right:-140px;top:-180px;width:560px;height:560px;transform:rotate(24deg);border-radius:80px}.hero__hatch-bl{left:-60px;bottom:-40px;width:340px;height:340px;transform:rotate(-14deg);border-radius:60px;background:repeating-linear-gradient(45deg,rgba(91,197,245,.1) 0 10px,transparent 10px 26px)}.hero__grid{position:relative;max-width:1180px;margin:0 auto;padding:150px clamp(20px,4vw,48px) 110px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.98fr);gap:24px;align-items:center}.hero__copy{position:relative;z-index:3}.hero__chip{display:inline-block;transform:skew(-12deg);background:var(--ink);border-radius:5px;padding:8px 18px;margin-bottom:28px;animation:vpFadeUp .7s ease 0s both}.hero__chip span{display:inline-block;transform:skew(12deg);font-family:var(--font-en);font-size:12px;font-weight:600;letter-spacing:.18em;color:var(--cyan)}.hero__title{font-size:clamp(34px,5vw,58px);font-weight:900;color:var(--ink);letter-spacing:.01em;line-height:1.26;animation:vpFadeUp .9s ease .12s both}.hero__hl{position:relative;display:inline-block;padding:0 10px;margin:6px -4px 0}.hero__hl-bg{position:absolute;inset:4px -2px 2px;transform:skew(-8deg);background:linear-gradient(100deg,#5bc5f5,#6456e0 60%,#7526e5);border-radius:8px}.hero__hl-text{position:relative;color:#fff}.hero__lead{font-size:clamp(14px,1.5vw,16.5px);color:var(--body);line-height:2;letter-spacing:.02em;margin-top:30px;max-width:530px;animation:vpFadeUp .9s ease .28s both}.hero__lead strong{color:var(--ink);border-bottom:3px solid var(--cyan)}.hero__cta-row{display:flex;align-items:center;gap:22px;margin-top:38px;flex-wrap:wrap;animation:vpFadeUp .9s ease .42s both}.hero__art{position:relative;z-index:2;width:520px;max-width:100%;height:480px;justify-self:end}.hero__art svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.globe-orbit{transform-origin:250px 258px;animation:vpSpin 40s linear infinite}.globe-arc{animation:vpDash var(--dur, 5.5s) linear infinite}.hero__float{position:absolute;display:flex;flex-direction:column;align-items:center;animation:vpBob 9s ease-in-out infinite}.hero__float--talent{left:-3%;top:16%;animation-delay:-1s}.hero__float--global{right:0;bottom:2%;animation-delay:-3s}.hero__float--company{right:2%;top:-4%;animation-delay:-5s}.hero__float .pin{width:76px;height:76px}.hero__float--company .pin{width:112px;height:112px}.hero__float .pin__face{padding-bottom:8px}.hero__float--company .pin__face{padding-bottom:12px}.pin__shape--white{background:#fff;border:3px solid var(--ink);box-shadow:6px 6px #5bc5f580}.pin__shape--navy{background:var(--ink);box-shadow:6px 6px #7526e566}.pin__shape--grad-shadow{box-shadow:9px 9px #14152ee6}.hero__float-label{margin-top:16px;transform:skew(-12deg);background:#fff;border:2px solid var(--ink);border-radius:5px;padding:4px 12px;font-family:var(--font-en);font-size:11px;font-weight:600;letter-spacing:.12em;color:var(--ink);white-space:nowrap}.hero__float-label--navy{background:var(--ink);border-color:var(--ink);color:#fff}.hero__float--company .hero__float-label{margin-top:18px;padding:5px 14px}.hero__dot{position:absolute;transform:rotate(45deg)}.hero__dot--1{left:6%;bottom:12%;width:20px;height:20px;background:var(--cyan)}.hero__dot--2{left:18%;bottom:4%;width:12px;height:12px;background:var(--purple)}.hero__dot--3{right:26%;bottom:14%;width:16px;height:16px;background:var(--blue)}.hero__dot--4{right:8%;bottom:36%;width:11px;height:11px;border:3px solid var(--ink);background:#fff}.about{position:relative;background:var(--ink);padding:0 24px;overflow:hidden}.about .ghost{right:24px;top:10px;font-size:130px;letter-spacing:.06em;-webkit-text-stroke:1.5px rgba(255,255,255,.08)}.about__net{position:absolute;inset:0;opacity:.3;pointer-events:none}.about__net-flow{animation:vpDashFlow var(--dur, 9s) linear infinite}.about__grid{position:relative;max-width:1180px;margin:0 auto;padding:96px 0 110px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:70px;align-items:start}.about__head{display:flex;align-items:center;gap:18px;margin-bottom:30px}.about__pin{width:64px;height:64px}.about__pin .pin__shape{box-shadow:6px 6px #5bc5f540}.about__pin .pin__num{font-size:22px}.about__title{font-size:clamp(28px,3.4vw,38px);font-weight:900;color:#fff;letter-spacing:.02em;line-height:1.5;margin-bottom:22px}.about__title em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.about__lead{font-size:15.5px;color:#c6cbe8;line-height:2.1;letter-spacing:.02em;margin-bottom:30px;max-width:480px}.about__points{display:flex;flex-direction:column}.about__point{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px dashed rgba(255,255,255,.16)}.about__point .dia{width:11px;height:11px;top:0}.about__point span:last-child{font-size:15px;font-weight:500;color:#fff;line-height:1.8}.about__link{margin-top:34px}.rail{position:relative;padding-left:26px;margin-top:12px}.rail__spine{position:absolute;left:5px;top:8px;bottom:8px;width:3px;background:linear-gradient(#5bc5f5,#6456e0,#7526e5);border-radius:3px}.railcard{position:relative;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:20px 24px;margin-bottom:18px;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.railcard:before{content:"";position:absolute;left:-26px;top:26px;width:13px;height:13px;border-radius:50%;background:var(--c, #5BC5F5);box-shadow:0 0 0 4px #5bc5f52e}.railcard__row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.railcard__row strong{font-size:16.5px;font-weight:900;color:#fff}.railcard__en{font-family:var(--font-en);font-size:11px;font-weight:600;letter-spacing:.15em}.railcard p{margin-top:8px;color:#aab1d6;font-size:13.5px;font-weight:500;line-height:1.8}.company{position:relative;background:#fff;padding:70px 24px 110px}.company .shead{margin-bottom:52px}.company__grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:64px;align-items:start}.profile{border-top:4px solid var(--ink)}.profile__row{display:grid;grid-template-columns:130px 1fr;gap:18px;padding:17px 4px;border-bottom:1px solid var(--line);font-size:14px;align-items:baseline}.profile__row dt{font-family:var(--font-en);font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--muted)}.profile__row dt span{color:var(--muted-2)}.profile__row dd{color:var(--body);font-weight:500;line-height:1.75}.profile__row--name dd{color:var(--ink);font-weight:700;font-size:15px}.profile__row--license dd{line-height:1.9}.mvv{display:flex;flex-direction:column;gap:18px;padding-top:6px}.mvv__card{transform:skew(-6deg);border-radius:10px;padding:24px 30px}.mvv__inner{transform:skew(6deg)}.mvv__card--mission{background:var(--ink);box-shadow:8px 8px #5bc5f580;margin-right:36px}.mvv__card--vision{background:linear-gradient(120deg,#6456e0,#7526e5);box-shadow:8px 8px #14152ee6;margin-left:36px}.mvv__card--value{background:#fff;border:3px solid var(--ink);box-shadow:8px 8px #7526e559;margin-right:18px;margin-left:18px}.mvv__label{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}.mvv__card--value .mvv__label{margin-bottom:14px}.mvv__en{font-family:var(--font-en);font-size:12px;font-weight:700;letter-spacing:.2em}.mvv__card--mission .mvv__en{color:var(--cyan)}.mvv__card--vision .mvv__en{color:var(--cyan-ice)}.mvv__card--value .mvv__en{color:var(--indigo)}.mvv__jp{font-size:13px;font-weight:700}.mvv__card--mission .mvv__jp{color:#ffffffb3}.mvv__card--vision .mvv__jp{color:#ffffffbf}.mvv__card--value .mvv__jp{color:var(--muted)}.mvv__text{font-size:15px;font-weight:700;color:#fff;line-height:1.9}.value-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}.value-item__head{display:flex;align-items:baseline;gap:8px}.value-item__head .dia{width:8px;height:8px;top:0}.value-item__head strong{font-size:13.5px;font-weight:900;color:var(--ink)}.value-item__en{font-family:var(--font-en);font-size:10px;font-weight:600;letter-spacing:.12em;color:var(--muted)}.value-item p{font-size:12px;font-weight:500;color:var(--body);line-height:1.75;margin-top:5px}.partners{position:relative;background:linear-gradient(180deg,#ffffff 0 2px,var(--tint) 2px);padding:0 24px 96px;overflow:hidden}.partners .ghost{left:-20px;bottom:-30px}.partners .container{padding-top:120px}.partners .shead{margin-bottom:16px}.section-lead{font-size:clamp(14px,1.4vw,15.5px);color:var(--body);line-height:2;letter-spacing:.02em;max-width:760px}.section-lead--light{color:#ffffffc7}.core-banner{transform:skew(-6deg);margin-top:48px;background:var(--ink);border-radius:11px;padding:24px 34px;box-shadow:8px 8px #6456e080}.core-banner__inner{transform:skew(6deg);display:flex;align-items:center;gap:22px;flex-wrap:wrap}.core-banner__pin{width:58px;height:58px}.core-banner__body{flex:1;min-width:240px}.core-banner__row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.core-banner__chip{font-family:var(--font-en);font-size:10.5px;font-weight:700;letter-spacing:.18em;color:var(--cyan);border:2px solid rgba(91,197,245,.5);border-radius:4px;padding:3px 10px}.core-banner__title{font-size:18px;font-weight:900;color:#fff;letter-spacing:.02em}.core-banner__en{font-family:var(--font-en);font-size:11px;font-weight:600;letter-spacing:.14em;color:#ffffff8c}.core-banner__desc{font-size:13.5px;font-weight:500;color:#fffc;line-height:1.85;margin-top:7px}.eco-sub{margin-top:56px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.eco-sub__title{font-size:19px;font-weight:900;color:var(--ink);letter-spacing:.02em}.eco-sub__desc{flex-basis:100%;font-size:13.5px;font-weight:500;color:var(--body);line-height:1.9;margin-top:4px}.card-row{display:flex;gap:26px;margin-top:52px;align-items:flex-start}.pillar{flex:1;border-radius:12px;padding:34px 32px 30px}.pillar--navy{transform:rotate(-1.6deg);background:var(--ink);box-shadow:10px 10px #5bc5f58c}.pillar--grad{transform:rotate(1.2deg) translateY(30px);background:linear-gradient(135deg,#6456e0,#7526e5);box-shadow:10px 10px #14152ee6}.pillar--white{transform:rotate(-1deg) translateY(8px);background:#fff;border:3px solid var(--ink);box-shadow:10px 10px #7526e566}.pillar__pin{width:64px;height:64px;margin-bottom:20px}.pillar__pin--cb .pin__shape{background:linear-gradient(135deg,#5bc5f5,#557cf2)}.pillar__pin--outline .pin__shape{background:#ffffff29;border:2px solid rgba(255,255,255,.7)}.pillar__pin--ip .pin__shape{background:linear-gradient(135deg,#6456e0,#7526e5)}.pillar__eyebrow{font-family:var(--font-en);font-size:11px;font-weight:600;letter-spacing:.18em;margin-bottom:8px}.pillar--navy .pillar__eyebrow{color:var(--cyan)}.pillar--grad .pillar__eyebrow{color:var(--cyan-ice)}.pillar--white .pillar__eyebrow{color:var(--indigo)}.pillar__title{font-size:19px;font-weight:900;letter-spacing:.02em;margin-bottom:12px;color:#fff}.pillar--white .pillar__title{color:var(--ink)}.pillar__desc{font-size:13.5px;font-weight:500;line-height:1.95;color:#ffffffc7}.pillar--grad .pillar__desc{color:#ffffffd9}.pillar--white .pillar__desc{color:var(--body)}.strengths{position:relative;background:linear-gradient(180deg,var(--tint) 0 2px,#ffffff 2px);padding:100px 24px 90px;overflow:hidden}.strengths .shead{margin-bottom:18px}.strengths .section-lead{max-width:680px;margin-bottom:60px}.strengths .card-row{margin-top:0;align-items:stretch;gap:30px}.str-card{flex:1;position:relative;border-radius:12px;padding:38px 30px 30px;margin-top:14px}.str-card--1{transform:rotate(-1.2deg);background:#fff;border:3px solid var(--ink);box-shadow:9px 9px #5bc5f580}.str-card--2{transform:rotate(1deg) translateY(20px);background:var(--ink);box-shadow:9px 9px #6456e080}.str-card--3{transform:rotate(-.8deg) translateY(6px);background:#fff;border:3px solid var(--ink);box-shadow:9px 9px #7526e566}.str-card__pin{position:absolute;top:-26px;left:24px;width:56px;height:56px}.str-card__pin .pin__num{font-size:17px}.str-card--1 .str-card__pin .pin__shape{background:linear-gradient(135deg,#5bc5f5,#557cf2);box-shadow:4px 4px #14152ee6}.str-card--2 .str-card__pin .pin__shape{background:linear-gradient(135deg,#557cf2,#6456e0);box-shadow:4px 4px #5bc5f58c}.str-card--3 .str-card__pin .pin__shape{background:linear-gradient(135deg,#6456e0,#7526e5);box-shadow:4px 4px #14152ee6}.str-card__head{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding-top:4px}.str-card__head i{font-size:30px}.str-card--1 .str-card__head i{color:var(--blue)}.str-card--2 .str-card__head i{color:var(--cyan)}.str-card--3 .str-card__head i{color:var(--purple)}.str-card__title{font-size:18px;font-weight:900;color:var(--ink);letter-spacing:.02em;line-height:1.5}.str-card--2 .str-card__title{color:#fff}.str-card__desc{font-size:13.5px;font-weight:500;color:var(--body);line-height:1.9;margin-bottom:16px}.str-card--2 .str-card__desc{color:#fffc}.str-card__proofs{display:flex;flex-direction:column;gap:8px;border-top:2px solid var(--line);padding-top:16px}.str-card--2 .str-card__proofs{border-top-color:#ffffff2e}.str-card__proof{display:flex;align-items:baseline;gap:9px;font-size:12.5px;font-weight:700;color:var(--ink)}.str-card--2 .str-card__proof{color:#fff}.svc{position:relative;background:linear-gradient(115deg,#fff 30%,#f0f4fe);overflow:hidden}.svc .ghost{right:24px;top:10px;font-size:130px;letter-spacing:.06em;-webkit-text-stroke:1.5px rgba(20,21,46,.06)}.svc__in{position:relative;max-width:1180px;margin:0 auto;padding:96px clamp(20px,4vw,48px) 110px}.sec__title{font-size:clamp(26px,3.2vw,36px);font-weight:900;color:var(--ink);letter-spacing:.02em;margin:10px 0 18px}.sec__title--news{margin-bottom:0}.sec__lead{font-size:15.5px;color:var(--body);line-height:2;letter-spacing:.02em;max-width:720px;margin-bottom:46px}.svc__path{position:absolute;left:0;right:0;top:52%;pointer-events:none;z-index:0}.svc__path path{animation:vpDashFlow 8s linear infinite}.cards{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.cards>*{z-index:1}.cardlink{position:relative;display:block;text-decoration:none;background:#fff;border:2px solid var(--ink);border-radius:12px;padding:34px 28px 30px;box-shadow:8px 8px #14152ee6;transition:transform .18s ease,box-shadow .18s ease}.cardlink:hover{transform:translate(-3px,-3px);box-shadow:12px 12px #14152ee6}.cardlink__pin{width:70px;height:70px;margin-bottom:20px}.cardlink__pin .pin__shape{background:var(--grad);box-shadow:6px 6px #14152ed9}.cardlink__pin .pin__face{padding-bottom:8px}.cardlink__eyebrow{font-family:var(--font-en);font-size:11px;font-weight:600;letter-spacing:.16em;color:var(--indigo);margin-bottom:8px}.cardlink h3{font-size:22px;font-weight:900;color:var(--ink);letter-spacing:.02em;margin-bottom:12px}.cardlink p{color:var(--body);font-size:14px;font-weight:500;line-height:1.9;margin-bottom:22px;min-height:78px}.cardlink__more{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-en);font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--ink);border-bottom:2.5px solid var(--cyan);padding-bottom:3px}.services{position:relative;background:linear-gradient(180deg,#ffffff 0 2px,var(--ink) 2px);padding:0 24px;overflow:hidden}.services .ghost{right:-30px;top:60px}.services .container{padding-top:130px}.services .shead{margin-bottom:16px}.services .card-row{margin-top:56px;align-items:stretch}.svc-card{flex:1;display:flex;flex-direction:column;text-decoration:none;border-radius:12px;padding:34px 30px 26px;transition:transform .2s ease}.svc-card--1{transform:rotate(-1.2deg);background:#fff;box-shadow:9px 9px #5bc5f580}.svc-card--1:hover{transform:rotate(-1.2deg) translate(-2px,-3px)}.svc-card--2{transform:rotate(1deg) translateY(24px);background:linear-gradient(135deg,#6456e0,#7526e5);box-shadow:9px 9px #5bc5f566}.svc-card--2:hover{transform:rotate(1deg) translateY(24px) translate(-2px,-3px)}.svc-card--3{transform:rotate(-.8deg) translateY(8px);background:var(--ink);border:3px solid rgba(255,255,255,.55);box-shadow:9px 9px #7526e573}.svc-card--3:hover{transform:rotate(-.8deg) translateY(8px) translate(-2px,-3px)}.svc-card__pin{width:66px;height:66px;margin-bottom:20px}.svc-card--1 .svc-card__pin .pin__shape{background:linear-gradient(135deg,#5bc5f5,#557cf2)}.svc-card--2 .svc-card__pin .pin__shape{background:#ffffff29;border:2px solid rgba(255,255,255,.7)}.svc-card--3 .svc-card__pin .pin__shape{background:linear-gradient(135deg,#6456e0,#7526e5)}.svc-card__eyebrow{font-family:var(--font-en);font-size:11px;font-weight:600;letter-spacing:.18em;margin-bottom:8px}.svc-card--1 .svc-card__eyebrow{color:var(--blue)}.svc-card--2 .svc-card__eyebrow{color:var(--cyan-ice)}.svc-card--3 .svc-card__eyebrow{color:var(--purple-lt)}.svc-card__title{font-size:20px;font-weight:900;letter-spacing:.02em;margin-bottom:12px;color:var(--ink)}.svc-card--2 .svc-card__title,.svc-card--3 .svc-card__title{color:#fff}.svc-card__desc{font-size:13.5px;font-weight:500;line-height:1.95;flex:1;color:var(--body)}.svc-card--2 .svc-card__desc{color:#ffffffd9}.svc-card--3 .svc-card__desc{color:#fffc}.svc-card__more{display:flex;justify-content:flex-end;margin-top:18px}.svc-card__more span{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-en);font-size:11.5px;font-weight:700;letter-spacing:.14em;color:var(--ink);padding-bottom:3px;border-bottom:3px solid var(--cyan)}.svc-card--2 .svc-card__more span{color:#fff}.svc-card--3 .svc-card__more span{color:#fff;border-bottom-color:var(--purple)}.services .seam{margin-top:90px}.news{position:relative;background:#fff}.news__in{max-width:1180px;margin:0 auto;padding:90px clamp(20px,4vw,48px)}.news__grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-top:36px}.news__col-head{display:flex;align-items:center;gap:14px;margin-bottom:10px}.news__chip{display:inline-block;transform:skew(-12deg);border-radius:4px;padding:4px 12px}.news__chip--topics{background:var(--blue)}.news__chip--important{background:var(--purple)}.news__chip span{display:inline-block;transform:skew(12deg);font-family:var(--font-en);font-size:10.5px;font-weight:700;letter-spacing:.14em;color:#fff}.news__col-title{font-size:17px;font-weight:900;color:var(--ink)}.news__all{margin-left:auto;font-family:var(--font-en);font-size:11.5px;font-weight:700;color:var(--ink);text-decoration:none;letter-spacing:.1em;white-space:nowrap;padding:8px 0}.news__all:hover{color:var(--indigo)}.news__list{list-style:none}.news__item{display:flex;align-items:baseline;gap:22px;padding:16px 4px;border-bottom:1px solid #e7eaf6}.news__date{font-family:var(--font-en);font-size:12.5px;font-weight:600;letter-spacing:.06em;white-space:nowrap;color:var(--indigo)}.news__title{font-size:14.5px;font-weight:500;color:var(--ink);line-height:1.75}.news__item--em .news__title{font-weight:700}.news__empty{font-size:13px;color:var(--muted);padding:16px 4px}.access{position:relative;background:#fff;padding:96px 24px 100px;overflow:hidden}.access .shead{margin-bottom:52px}.access__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:44px;align-items:stretch}.access__label{font-family:var(--font-en);font-size:11px;font-weight:600;letter-spacing:.16em;color:var(--muted);margin-bottom:8px}.access__block--address{border-top:4px solid var(--ink);padding:20px 4px 18px;border-bottom:1px solid var(--line)}.access__block--address p{font-size:15px;font-weight:700;color:var(--ink);line-height:1.9}.access__block--tel{padding:18px 4px;border-bottom:1px solid var(--line)}.access__block--tel p{font-size:14px;font-weight:500;color:var(--body);line-height:1.85}.access__block--route{padding:18px 4px 4px}.access__block--route .access__label{margin-bottom:14px}.access__routes{display:flex;flex-direction:column;gap:14px}.access__route{display:flex;align-items:center;gap:14px}.access__route p{font-size:13.5px;font-weight:500;color:var(--body);line-height:1.8}.access__route p strong{color:var(--ink);font-weight:700}.transit{flex-shrink:0;display:inline-flex;align-items:center}.transit__seg{width:30px;height:8px}.transit__seg--l{border-radius:4px 0 0 4px}.transit__seg--r{border-radius:0 4px 4px 0}.transit__dot{width:18px;height:18px;border-radius:50%;background:#fff;box-sizing:border-box}.transit--hibiya .transit__seg--l{background:#b5b5ac}.transit--hibiya .transit__dot{border:5px solid var(--blue)}.transit--hibiya .transit__seg--r{background:linear-gradient(90deg,#557cf2,#6456e0)}.transit--mita .transit__seg--l{background:#2a5caa}.transit--mita .transit__dot{border:5px solid var(--indigo)}.transit--mita .transit__seg--r{background:linear-gradient(90deg,#6456e0,#7526e5)}.map-frame{position:relative;min-height:360px}.map-frame__bg{position:absolute;inset:0;transform:rotate(1deg);background:var(--grad-135);border-radius:14px}.map-frame iframe{position:absolute;inset:10px;width:calc(100% - 20px);height:calc(100% - 20px);border:0;border-radius:8px}.cta{position:relative;background:var(--grad);overflow:hidden}.cta__vec{position:absolute;inset:0;pointer-events:none;opacity:.35}.cta__vec-flow{animation:vpDashFlow 10s linear infinite}.cta__in{position:relative;max-width:1180px;margin:0 auto;padding:74px clamp(20px,4vw,48px);display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}.cta__title{color:#fff;font-size:clamp(24px,2.8vw,30px);font-weight:900;letter-spacing:.02em}.cta__lead{color:#ffffffd9;margin-top:10px;font-size:14.5px;line-height:1.9}.footer{background:var(--ink);color:#9ca3cc}.footer__in{max-width:1180px;margin:0 auto;padding:46px clamp(20px,4vw,48px) 38px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.08)}.footer__brand{display:flex;align-items:center;gap:34px}.footer__logo{display:block}.footer__logo img{height:34px}.footer__tagline{font-family:var(--font-en);font-size:11px;letter-spacing:.18em;color:#6d74a3;border-left:1px solid rgba(255,255,255,.14);padding-left:34px}.footer__copy{font-family:var(--font-en);letter-spacing:.08em;font-size:11px}.page-head{position:relative;background:linear-gradient(115deg,#e7f5fe,#f2f5ff 48%,#fff);padding:150px 24px 40px;overflow:hidden}.archive{background:#fff;padding:40px 24px 110px}.archive__section{margin-top:56px}.news-search{display:flex;align-items:center;gap:12px;max-width:420px;border:2px solid var(--ink);border-radius:6px;padding:12px 16px;background:#fff;box-shadow:4px 4px #5bc5f580}.news-search i{font-size:18px;color:var(--indigo);flex-shrink:0}.news-search input{flex:1;min-width:0;border:0;outline:none;font-family:var(--font-jp);font-size:14px;font-weight:500;color:var(--ink);background:transparent}.news-search input::placeholder{color:var(--muted)}.news-search:focus-within{box-shadow:4px 4px #6456e08c}.news-search__empty{margin-top:40px;font-size:14px;color:var(--body)}.contact-page{background:#fff;padding:40px 24px 110px}.contact-page__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:start}.form{display:flex;flex-direction:column;gap:22px}.form__field{display:flex;flex-direction:column;gap:8px}.form__label{display:flex;align-items:baseline;gap:10px}.form__label-jp{font-size:14px;font-weight:700;color:var(--ink)}.form__label-en{font-family:var(--font-en);font-size:10px;font-weight:600;letter-spacing:.14em;color:var(--muted)}.form__req{font-family:var(--font-en);font-size:9.5px;font-weight:700;letter-spacing:.1em;color:#fff;background:var(--purple);border-radius:3px;padding:2px 7px}.form__input,.form__select,.form__textarea{font-family:var(--font-jp);font-size:14.5px;font-weight:500;color:var(--ink);background:#fff;border:2px solid var(--ink);border-radius:6px;padding:12px 16px;outline:none;transition:box-shadow .15s ease;width:100%}.form__input:focus,.form__select:focus,.form__textarea:focus{box-shadow:4px 4px #6456e08c}.form__input::placeholder,.form__textarea::placeholder{color:var(--muted)}.form__textarea{min-height:170px;resize:vertical;line-height:1.9}.form__select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 21px) 50%,calc(100% - 15px) 50%;background-size:6px 6px;background-repeat:no-repeat;cursor:pointer}.form__consent{display:flex;align-items:baseline;gap:10px;font-size:13px;color:var(--body);line-height:1.8}.form__consent input{width:16px;height:16px;accent-color:var(--indigo);flex-shrink:0;position:relative;top:2px}.form__error{font-size:12px;font-weight:700;color:#c4302b;display:none}.form__field.is-invalid .form__error{display:block}.form__field.is-invalid .form__input,.form__field.is-invalid .form__textarea,.form__field.is-invalid .form__select{border-color:#c4302b}.form__submit-row{margin-top:6px}.form__submit{border:0;cursor:pointer;font-family:var(--font-jp)}.form__status{margin-top:14px;font-size:13.5px;font-weight:700;line-height:1.8;display:none}.form__status.is-ok{display:block;color:var(--indigo)}.form__status.is-ng{display:block;color:#c4302b}.form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-aside{display:flex;flex-direction:column;gap:0}.contact-aside__block{border-top:4px solid var(--ink);padding:20px 4px 18px;border-bottom:1px solid var(--line)}.contact-aside__block+.contact-aside__block{border-top:none;padding-top:18px}.contact-aside__label{font-family:var(--font-en);font-size:11px;font-weight:600;letter-spacing:.16em;color:var(--muted);margin-bottom:8px}.contact-aside__big{font-family:var(--font-en);font-size:26px;font-weight:700;color:var(--ink);letter-spacing:.04em;text-decoration:none}.contact-aside__big:hover{color:var(--indigo)}.contact-aside__note{font-size:13px;font-weight:500;color:var(--body);line-height:1.85;margin-top:6px}@media(max-width:1020px){.contact-page__grid{grid-template-columns:1fr;gap:48px}}.gate{position:fixed;inset:0;z-index:99999;background:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px}.gate img{height:46px;opacity:.9}.gate p{color:#ffffff8c;font-size:13px;letter-spacing:.08em}.gate input{width:260px;padding:12px 16px;border:2px solid rgba(255,255,255,.25);border-radius:6px;background:#ffffff0f;color:#fff;font-size:15px;font-family:inherit;letter-spacing:.06em;outline:none;text-align:center;transition:border-color .2s ease}.gate input:focus{border-color:var(--cyan)}.gate__error{color:#ff8a8a;font-size:12px;opacity:0;transition:opacity .2s ease}.gate__error.is-visible{opacity:1}.strip-top--tint{background:var(--tint)}.svc-hero{position:relative;background:var(--ink);padding:0 24px;overflow:hidden}.svc-hero .ghost{right:-30px;top:90px}.svc-hero__inner{position:relative;max-width:1180px;margin:0 auto;padding:150px 0 40px}.svc-hero__crumb{font-family:var(--font-en);font-size:12px;font-weight:600;letter-spacing:.14em;margin-bottom:26px}.svc-hero__crumb a{color:#ffffff8c;text-decoration:none}.svc-hero__crumb a:hover{color:var(--cyan)}.svc-hero__crumb span{color:#ffffff59;margin:0 8px}.svc-hero__crumb strong{color:var(--cyan);font-weight:600}.svc-hero__head{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.svc-hero__pin{width:76px;height:76px}.svc-hero__pin .pin__shape{box-shadow:6px 6px #5bc5f573}.svc-hero__body{flex:1;min-width:260px}.svc-hero__chip{margin-bottom:12px}.svc-hero__title{font-size:clamp(30px,4vw,46px);font-weight:900;color:#fff;letter-spacing:.02em;line-height:1.35}.svc-hero__lead{font-size:clamp(14px,1.4vw,15.5px);color:#ffffffc7;line-height:2;letter-spacing:.02em;margin-top:26px;max-width:720px}.hl-section{position:relative;background:#fff;padding:90px 24px;overflow:hidden}.hl-section .shead{margin-bottom:18px}.hl-section .section-lead{margin-bottom:60px}.flow-section{position:relative;background:linear-gradient(180deg,#ffffff 0 2px,var(--tint) 2px);padding:0 24px 96px;overflow:hidden}.flow-section .container{padding-top:120px}.flow-section .shead{margin-bottom:18px}.flow-section .section-lead{margin-bottom:56px}.flow-section .core-banner{margin-top:56px}.flow{position:relative;max-width:900px}.flow__spine{position:absolute;left:27px;top:40px;bottom:40px;width:3px;background:repeating-linear-gradient(180deg,rgba(20,21,46,.3) 0 5px,transparent 5px 13px)}.flow__step{position:relative;display:flex;align-items:flex-start;gap:26px;padding:18px 0}.flow__pin{width:56px;height:56px;flex-shrink:0;position:relative;top:8px}.flow__pin .pin__shape{background:linear-gradient(135deg,var(--c1, #5BC5F5),var(--c2, #6456E0));box-shadow:4px 4px #14152ee6}.flow__pin .pin__num{font-size:16px}.flow__card{flex:1;background:#fff;border:2px solid var(--ink);border-radius:12px;padding:24px 30px;box-shadow:7px 7px 0 var(--sh, rgba(91, 197, 245, .5))}.flow__head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px}.flow__head i{font-size:26px;color:var(--c2, #6456E0)}.flow__title{font-size:17px;font-weight:900;color:var(--ink);letter-spacing:.02em}.flow__en{font-family:var(--font-en);font-size:10.5px;font-weight:600;letter-spacing:.16em;color:var(--muted)}.flow__desc{font-size:13.5px;font-weight:500;color:var(--body);line-height:1.9}.flow__items{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.flow__item{display:flex;align-items:baseline;gap:8px;font-size:12.5px;font-weight:500;color:var(--body);line-height:1.7}.flow__item .dia{width:7px;height:7px;top:0;background:var(--c1, #5BC5F5)}@media(max-width:600px){.flow__spine{display:none}.flow__step{flex-direction:column;gap:14px}.flow__pin{top:0}}@media(max-width:1020px){.hero__grid{grid-template-columns:minmax(0,1fr);gap:50px;padding-top:130px;padding-bottom:80px}.hero__art{justify-self:center}.about__grid{grid-template-columns:1fr;gap:50px}.cards{grid-template-columns:1fr;max-width:460px}.company__grid{grid-template-columns:1fr;gap:44px}.news__grid{grid-template-columns:1fr;gap:40px}.access__grid,.value-grid{grid-template-columns:1fr}.card-row{flex-direction:column;align-items:stretch}.pillar,.str-card,.svc-card{transform:none!important;width:100%}.str-card{margin-top:32px}.strengths .card-row{gap:12px}}@media(max-width:600px){.shead{gap:16px;align-items:flex-start}.shead__pin{width:52px;height:52px}.shead__pin .pin__num{font-size:16px}.sign{padding:13px 18px 10px;box-shadow:5px 5px #5bc5f580}.sign__strip{margin:9px 0 6px}.hero__art{width:100%;height:420px}.ghost{font-size:clamp(70px,18vw,110px)}.about .ghost,.svc .ghost{font-size:72px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero__pulse{display:none}}
