:root{--white: #ffffff;--paper: #f8f8fb;--blue: #2c65c8;--blue-deep: #1f4ea3;--blue-soft: #eef2fb;--navy: #101630;--navy-2: #1a1f3d;--ink: #0a0a14;--sub: #626264;--sub-light: #9a9aa2;--line: #e5e5ea;--line-on-blue: rgba(255, 255, 255, .32);--line-on-navy: rgba(255, 255, 255, .14);--en: Arial, sans-serif;--jp: "Noto Sans JP", "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;--pad-x: clamp(20px, 5vw, 88px);--container: 1180px;--radius: 8px;--radius-lg: 14px;--ease: cubic-bezier(.22, 1, .36, 1);--shadow: 0 1px 2px rgba(16, 22, 48, .04), 0 8px 28px rgba(16, 22, 48, .06);--shadow-hover: 0 4px 10px rgba(16, 22, 48, .08), 0 18px 48px rgba(44, 101, 200, .14)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--jp);color:var(--ink);background:var(--white);font-size:15px;line-height:1.75;letter-spacing:.04em;-webkit-font-smoothing:antialiased;font-feature-settings:"palt";overflow-x:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}::selection{background:var(--blue);color:#fff}.en{font-family:var(--en);font-weight:600;letter-spacing:-.01em}.kicker{font-family:var(--en);font-weight:700;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--blue)}.seclabel{margin-bottom:clamp(36px,5vw,64px)}.seclabel__en{font-family:var(--en);font-weight:800;font-size:clamp(44px,7.4vw,92px);line-height:.96;letter-spacing:-.01em;color:var(--blue)}.seclabel__jp{margin-top:6px;font-weight:700;font-size:clamp(17px,1.9vw,22px);letter-spacing:.06em;color:var(--blue)}.seclabel--center{text-align:center}.seclabel--light .seclabel__en,.seclabel--light .seclabel__jp{color:#fff}.seclabel__lead{margin-top:20px;max-width:40em;color:var(--sub);font-size:clamp(14px,1.3vw,15px)}.seclabel--light .seclabel__lead{color:#ffffffdb}.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--jp);font-weight:700;font-size:14px;letter-spacing:.04em;padding:15px 36px;border-radius:var(--radius);transition:transform .28s var(--ease),background .28s,color .28s,border-color .28s,box-shadow .28s}.btn--primary{background:var(--blue);color:#fff;box-shadow:0 6px 18px #2c65c847}.btn--primary:hover{background:var(--blue-deep);transform:translateY(-2px);box-shadow:0 10px 26px #2c65c85c}.btn--ghost{border:1.5px solid var(--blue);color:var(--blue)}.btn--ghost:hover{background:var(--blue);color:#fff;transform:translateY(-2px)}.btn--ghost-light{border:1.5px solid rgba(255,255,255,.55);color:#fff}.btn--ghost-light:hover{background:#fff;color:var(--blue);border-color:#fff;transform:translateY(-2px)}.ext:after{content:"";width:13px;height:13px;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M7 17 17 7M9 7h8v8'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M7 17 17 7M9 7h8v8'/%3E%3C/svg%3E") center/contain no-repeat}.hdr{position:fixed;inset:0 0 auto;z-index:60;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad-x);background:#ffffffe6;backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--line)}.hdr__brand{display:flex;align-items:center;gap:11px}.hdr__mark{width:30px;height:30px;display:grid;grid-template-columns:1fr 1fr;gap:3px}.hdr__mark i{display:block;border-radius:2px;background:var(--blue)}.hdr__mark i:nth-child(2),.hdr__mark i:nth-child(3){background:#9bb6e6}.hdr__name{font-family:var(--en);font-weight:800;font-size:21px;letter-spacing:.14em;color:var(--ink)}.hdr__nav{display:flex;align-items:center;gap:clamp(16px,1.9vw,30px)}.hdr__nav a{font-weight:700;font-size:14px;letter-spacing:.02em;color:var(--ink);display:inline-flex;align-items:center;gap:5px;transition:color .2s}.hdr__nav a:hover{color:var(--blue)}.hdr__nav a.ext:after{width:12px;height:12px}.hdr__cta{background:var(--blue);color:#fff!important;padding:12px 24px;border-radius:var(--radius);font-weight:700;font-size:14px;box-shadow:0 4px 14px #2c65c842;transition:background .25s,transform .25s}.hdr__cta:hover{background:var(--blue-deep);transform:translateY(-1px)}.hdr__burger{display:none}@media(max-width:1023px){.hdr__nav{display:none}.hdr__burger{display:inline-flex;background:var(--blue);color:#fff;padding:11px 20px;border-radius:var(--radius);font-weight:700;font-size:13px;letter-spacing:.04em}}.hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:120px var(--pad-x) 80px calc(var(--pad-x) + 56px);background:radial-gradient(120% 90% at 78% 42%,rgba(74,108,230,.28),transparent 60%),linear-gradient(160deg,var(--navy-2) 0%,var(--navy) 62%,#0b0f24 100%);color:#fff;overflow:hidden}.hero__rail{position:absolute;left:0;top:0;bottom:0;width:46px;background:var(--blue);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;z-index:4}.hero__rail .vlabel{writing-mode:vertical-rl;font-family:var(--en);font-weight:700;font-size:11px;letter-spacing:.34em;color:#fff}.hero__rail .vlabel:before{content:"";display:block;height:34px;width:1px;background:#ffffff80;margin:0 auto 14px}.hero__sns{display:flex;flex-direction:column;gap:14px}.hero__sns a{width:18px;height:18px;opacity:.85;transition:opacity .2s,transform .2s}.hero__sns a:hover{opacity:1;transform:translateY(-2px)}.hero__sns svg{width:100%;height:100%;fill:#fff}.hero__inner{position:relative;z-index:3;width:100%;max-width:var(--container);margin-inline:auto;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:40px}.hero__copy{max-width:640px}.hero__tag{display:inline-block;font-family:var(--en);font-weight:700;font-size:12px;letter-spacing:.22em;color:#9fc0ff;margin-bottom:26px;padding:7px 16px;border:1px solid rgba(159,192,255,.4);border-radius:999px}.hero__title{font-weight:700;font-size:clamp(36px,5.6vw,68px);line-height:1.3;letter-spacing:.02em;color:#fff}.hero__title .hl{background:linear-gradient(120deg,#7fa8ff,#b9d2ff);-webkit-background-clip:text;background-clip:text;color:transparent}.hero__desc{margin-top:28px;font-size:clamp(14px,1.4vw,16px);line-height:2;color:#ffffffd1;max-width:30em}.hero__actions{margin-top:40px;display:flex;gap:14px;flex-wrap:wrap}.hero__viz{position:relative;aspect-ratio:1/1;max-width:440px;justify-self:end;width:100%}.hero__viz svg{width:100%;height:100%;display:block;overflow:visible}.hero__viz .ring{fill:none;stroke:#7fa8ff80;transform-origin:50% 50%}.hero__viz .ring.r1{animation:spin 38s linear infinite}.hero__viz .ring.r2{animation:spin 56s linear infinite reverse}.hero__viz .node{fill:#b9d2ff}.hero__viz .core{fill:url(#coreGrad);filter:blur(.4px)}.hero__viz .glow{fill:url(#glowGrad)}@keyframes spin{to{transform:rotate(360deg)}}.hero__viz .pulse{transform-origin:50% 50%;animation:pulse 4.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.55}50%{opacity:1}}.hero__scroll{position:absolute;bottom:26px;left:50%;translate:-50% 0;z-index:4;display:flex;flex-direction:column;align-items:center;gap:8px}.hero__scroll span{font-family:var(--en);font-weight:600;font-size:10px;letter-spacing:.3em;color:#fff9}.hero__scroll i{width:1px;height:42px;background:linear-gradient(rgba(255,255,255,.7),transparent);animation:drop 2s var(--ease) infinite}@keyframes drop{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.section{padding:clamp(80px,12vw,168px) var(--pad-x);position:relative}.section--paper{background:var(--paper)}.section--blue{background:var(--blue);color:#fff}.wrap{max-width:var(--container);margin-inline:auto}.about__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,6vw,88px);align-items:start}.about__lead{font-weight:700;font-size:clamp(22px,2.9vw,34px);line-height:1.7;letter-spacing:.04em;color:var(--ink)}.about__lead .b{color:var(--blue)}.about__body{color:var(--sub);font-size:15px;line-height:2.05}.about__body p+p{margin-top:1.4em}.about__body .btn{margin-top:32px}@media(max-width:860px){.about__grid{grid-template-columns:1fr;gap:28px}}.rnd__top{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(36px,5vw,72px);align-items:center}.rnd__media{position:relative;aspect-ratio:16/11;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow)}.rnd__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}.rnd__media:hover img{transform:scale(1.04)}.rnd__desc{color:var(--sub);font-size:15px;line-height:2.05}.rnd__desc .btn{margin-top:28px}.rnd__articles{margin-top:clamp(40px,5vw,64px);display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.artcard{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px 22px;box-shadow:var(--shadow);transition:transform .3s var(--ease),box-shadow .3s,border-color .3s}.artcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:#cdd9f0}.artcard__tag{display:inline-block;font-family:var(--en);font-weight:700;font-size:11px;letter-spacing:.12em;color:var(--blue);background:var(--blue-soft);padding:5px 12px;border-radius:5px}.artcard__title{margin-top:16px;font-weight:700;font-size:16px;line-height:1.6;color:var(--ink)}.artcard__foot{margin-top:18px;display:flex;align-items:center;justify-content:space-between}.artcard__date{font-family:var(--en);font-weight:600;font-size:12px;color:var(--sub-light);letter-spacing:.04em}.artcard__src{display:inline-flex;align-items:center;gap:5px;font-family:var(--en);font-weight:700;font-size:12px;color:var(--sub)}@media(max-width:860px){.rnd__top{grid-template-columns:1fr;gap:26px}.rnd__articles{grid-template-columns:1fr}}.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.case{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .3s var(--ease),box-shadow .3s,border-color .3s}.case:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:#cdd9f0}.case__visual{position:relative;aspect-ratio:16/10;display:grid;place-items:center;background:var(--paper);border-bottom:1px solid var(--line)}.case__logo{font-family:var(--en);font-weight:800;font-size:clamp(22px,3vw,30px);letter-spacing:-.01em;color:#1b1b22}.case__cat{position:absolute;top:14px;left:14px;font-weight:700;font-size:11px;letter-spacing:.06em;color:var(--sub);background:#ffffffeb;border:1px solid var(--line);padding:5px 11px;border-radius:5px}.case__ext{position:absolute;right:14px;bottom:14px;width:17px;height:17px;color:var(--sub-light)}.case__ext svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.2}.case__body{padding:20px 22px 24px}.case__metric{font-family:var(--en);font-weight:800;font-size:30px;letter-spacing:-.01em;color:var(--blue);line-height:1}.case__metric .u{font-size:.5em;margin-left:3px}.case__title{margin-top:12px;font-weight:700;font-size:15px;line-height:1.6;color:var(--ink)}@media(max-width:860px){.cases{grid-template-columns:1fr}}.logos__head{text-align:center;margin-bottom:clamp(30px,4vw,48px)}.logos__head .kicker{display:block}.logos__head p{margin-top:10px;color:var(--sub);font-size:14px}.logos__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:940px;margin-inline:auto}.logo{display:grid;place-items:center;aspect-ratio:5/2;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.logo span{font-family:var(--en);font-weight:800;font-size:clamp(15px,2.1vw,21px);letter-spacing:.01em;color:#9a9aa2;filter:grayscale(1)}@media(max-width:600px){.logos__grid{grid-template-columns:repeat(2,1fr)}}.section--blue .seclabel__lead{color:#ffffffe6}.svc{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:clamp(32px,4vw,56px)}.svc__card{background:#fff;border-radius:var(--radius-lg);padding:clamp(34px,3.4vw,52px);display:flex;flex-direction:column}.svc__no{font-family:var(--en);font-weight:800;font-size:clamp(56px,7vw,92px);line-height:.9;letter-spacing:-.02em;color:var(--blue)}.svc__title{margin-top:26px;font-weight:700;font-size:clamp(20px,2.3vw,26px);line-height:1.5;color:var(--ink)}.svc__desc{margin-top:16px;color:var(--sub);font-size:14.5px;line-height:2;flex:1}.svc__card .btn{margin-top:30px;align-self:flex-start;width:100%;justify-content:center}@media(max-width:760px){.svc{grid-template-columns:1fr}}.product{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(36px,5vw,72px);align-items:center}.product__body .ptag{display:inline-block;font-weight:700;font-size:13px;letter-spacing:.04em;color:var(--blue);margin-bottom:14px}.product__title{font-weight:700;font-size:clamp(24px,3.2vw,36px);line-height:1.55;color:var(--ink)}.product__desc{margin-top:20px;color:var(--sub);font-size:15px;line-height:2.05}.product__body .btn{margin-top:30px}.product__shot{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-hover);border:1px solid var(--line);background:var(--paper)}.product__shot img{width:100%;height:auto;display:block}@media(max-width:860px){.product{grid-template-columns:1fr;gap:30px}}.members{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.member__photo{position:relative;aspect-ratio:4/5;border-radius:var(--radius);overflow:hidden;background:var(--navy)}.member__photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.member:hover .member__photo img{transform:scale(1.04)}.member__role{margin-top:18px;font-weight:700;font-size:12px;letter-spacing:.06em;color:var(--blue)}.member__name{margin-top:6px;font-weight:700;font-size:20px;color:var(--ink)}.member__bio{margin-top:12px;color:var(--sub);font-size:13.5px;line-height:1.95}@media(max-width:760px){.members{grid-template-columns:1fr;max-width:380px;margin-inline:auto}}.news{max-width:1000px;margin-inline:auto}.newsrow{display:flex;align-items:center;gap:22px;padding:24px 26px;background:#fff;border-radius:var(--radius);border:1px solid var(--line);transition:transform .25s var(--ease),box-shadow .25s,border-color .25s}.newsrow+.newsrow{margin-top:14px}.newsrow:hover{transform:translate(4px);box-shadow:var(--shadow);border-color:#cdd9f0}.newsrow__date{font-family:var(--en);font-weight:700;font-size:13px;color:var(--sub-light);letter-spacing:.04em;flex:none}.newsrow__tag{font-weight:700;font-size:11px;letter-spacing:.04em;color:var(--blue);background:var(--blue-soft);padding:5px 13px;border-radius:999px;flex:none}.newsrow__title{font-weight:700;font-size:14.5px;line-height:1.6;color:var(--ink)}.news__more{text-align:center;margin-top:clamp(34px,4vw,52px)}@media(max-width:700px){.newsrow{flex-wrap:wrap;gap:10px 16px}.newsrow__title{width:100%;order:3}}.contact{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,5vw,64px);align-items:center}.contact__copy .seclabel{margin-bottom:22px}.contact__lead{color:#ffffffeb;font-size:clamp(16px,1.8vw,19px);line-height:1.95;max-width:24em}.contact__box{background:#ffffff0f;border:1.5px solid rgba(255,255,255,.4);border-radius:var(--radius-lg);padding:clamp(40px,5vw,64px);text-align:center;transition:background .3s,transform .3s var(--ease)}.contact__box:hover{background:#ffffff1f;transform:translateY(-3px)}.contact__box .big{font-weight:700;font-size:clamp(22px,2.6vw,30px);color:#fff}.contact__box .sub{margin-top:12px;color:#ffffffd1;font-size:14px}.contact__box .btn{margin-top:30px}@media(max-width:760px){.contact{grid-template-columns:1fr;gap:30px}}.ft{background:var(--paper);color:var(--ink);padding:clamp(56px,7vw,96px) var(--pad-x) 40px;border-top:1px solid var(--line)}.ft__top{display:grid;grid-template-columns:1.2fr repeat(3,1fr) auto;gap:32px}.ft__brand .hdr__name{color:var(--ink)}.ft__brand .mark{display:inline-grid;grid-template-columns:1fr 1fr;gap:3px;width:28px;height:28px;vertical-align:middle;margin-right:10px}.ft__brand .mark i{border-radius:2px;background:var(--blue)}.ft__brand .mark i:nth-child(2),.ft__brand .mark i:nth-child(3){background:#9bb6e6}.ft__brand p{margin-top:18px;color:var(--sub);font-size:13px;line-height:1.95;max-width:24em}.ft__col h5{font-weight:700;font-size:12px;letter-spacing:.1em;color:var(--sub-light);margin-bottom:16px}.ft__col a{display:flex;align-items:center;gap:5px;width:fit-content;font-size:13.5px;color:var(--sub);margin-bottom:11px;transition:color .2s}.ft__col a:hover{color:var(--blue)}.ft__col a.ext:after{width:11px;height:11px}.ft__sns{display:flex;gap:12px}.ft__sns a{width:36px;height:36px;border:1px solid var(--line);border-radius:999px;display:grid;place-items:center;color:var(--sub);transition:color .2s,border-color .2s,transform .2s}.ft__sns a:hover{color:var(--blue);border-color:var(--blue);transform:translateY(-2px)}.ft__sns svg{width:16px;height:16px;fill:currentColor}.ft__divider{height:1px;background:var(--line);margin:clamp(36px,5vw,56px) 0 28px}.ft__bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px}.ft__legal{display:flex;gap:24px;flex-wrap:wrap}.ft__legal a{font-size:13px;color:var(--sub)}.ft__legal a:hover{color:var(--blue)}.ft__certs{display:flex;align-items:center;gap:14px}.cert{width:60px;height:60px;border:1px solid var(--line);border-radius:8px;background:#fff;display:grid;place-items:center;text-align:center}.cert span{font-family:var(--en);font-weight:700;font-size:9px;letter-spacing:.04em;color:var(--sub-light);line-height:1.3}.ft__copy{margin-top:28px;font-family:var(--en);font-weight:500;font-size:11px;letter-spacing:.1em;color:var(--sub-light)}@media(max-width:920px){.ft__top{grid-template-columns:1fr 1fr}.ft__brand{grid-column:1 / -1}}@media(max-width:560px){.ft__top{grid-template-columns:1fr}}.subhero{background:linear-gradient(160deg,var(--navy-2),var(--navy) 80%);color:#fff;padding:160px var(--pad-x) clamp(70px,9vw,110px)}.subhero .wrap{display:flex;flex-direction:column}.subhero__en{font-family:var(--en);font-weight:800;font-size:clamp(40px,6.6vw,84px);line-height:.98;letter-spacing:-.01em}.subhero__jp{margin-top:8px;font-weight:700;font-size:clamp(16px,1.9vw,20px);color:#9fc0ff;letter-spacing:.06em}.ptable{width:100%;border-top:1px solid var(--line)}.ptable tr{border-bottom:1px solid var(--line)}.ptable th{text-align:left;width:200px;padding:22px 8px;font-weight:700;vertical-align:top;color:var(--ink)}.ptable td{padding:22px 8px;color:var(--sub)}@media(max-width:600px){.ptable th{width:120px;font-size:13px}.ptable td{font-size:13px}}.hist{border-top:1px solid var(--line)}.histrow{display:grid;grid-template-columns:120px 1fr;gap:24px;padding:22px 4px;border-bottom:1px solid var(--line)}.histrow__y{font-family:var(--en);font-weight:800;font-size:20px;color:var(--blue)}.histrow__t{color:var(--sub)}.cform{max-width:720px;margin-inline:auto}.cform__row{margin-bottom:24px}.cform label{display:block;font-weight:700;font-size:13.5px;margin-bottom:9px;color:var(--ink)}.cform label .req{color:var(--blue);font-size:11px;margin-left:8px}.cform input,.cform textarea,.cform select{width:100%;font-family:var(--jp);font-size:15px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);transition:border-color .2s,background .2s,box-shadow .2s}.cform input:focus,.cform textarea:focus,.cform select:focus{outline:none;border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px #2c65c81f}.cform textarea{resize:vertical;min-height:150px}.cform__submit{text-align:center;margin-top:36px}.cform__note{text-align:center;color:var(--sub);font-size:13px;margin-top:16px}.prose{max-width:800px;margin-inline:auto}.prose h2{font-weight:700;font-size:20px;color:var(--ink);margin:44px 0 14px;padding-left:14px;border-left:3px solid var(--blue)}.prose h2:first-child{margin-top:0}.prose p{color:var(--sub);margin-bottom:14px}.prose ul{color:var(--sub);margin:0 0 14px 1.4em}.prose li{margin-bottom:8px}[data-rise]{opacity:0;transform:translateY(14px);transition:opacity .9s var(--ease),transform .9s var(--ease)}[data-rise].in{opacity:1;transform:none}[data-stagger]>*{opacity:0;transform:translateY(14px);transition:opacity .8s var(--ease),transform .8s var(--ease)}[data-stagger].in>*{opacity:1;transform:none}[data-stagger].in>*:nth-child(2){transition-delay:.08s}[data-stagger].in>*:nth-child(3){transition-delay:.16s}[data-stagger].in>*:nth-child(4){transition-delay:.24s}[data-stagger].in>*:nth-child(5){transition-delay:.32s}[data-stagger].in>*:nth-child(6){transition-delay:.4s}@media(prefers-reduced-motion:reduce){[data-rise],[data-stagger]>*{opacity:1;transform:none}.hero__viz .ring,.hero__viz .pulse,.hero__scroll i{animation:none}html{scroll-behavior:auto}}@media(max-width:1023px){.hero{padding-left:calc(var(--pad-x) + 46px)}.hero__inner{grid-template-columns:1fr}.hero__viz{display:none}}.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:clamp(22px,3vw,34px);font-size:12.5px;letter-spacing:.04em;color:#ffffff9e}.crumb a{color:#ffffff9e;transition:color .2s}.crumb a:hover{color:#9fc0ff}.crumb__sep{font-family:var(--en);color:#ffffff4d}.crumb__cur{color:#fff}.case__desc{margin-top:12px;color:var(--sub);font-size:13.5px;line-height:1.9}.pagelead{max-width:40em;color:var(--sub);font-size:clamp(14px,1.4vw,16px);line-height:2.05;margin-bottom:clamp(34px,4.5vw,56px)}.pagelead p+p{margin-top:1.2em}.pagelead a{color:var(--blue);font-weight:700}.feats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.feats--2{grid-template-columns:repeat(2,1fr)}.feats--4{grid-template-columns:repeat(4,1fr)}.feat{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 28px 28px;box-shadow:var(--shadow);transition:transform .3s var(--ease),box-shadow .3s,border-color .3s}a.feat:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:#cdd9f0}.feat__no{font-family:var(--en);font-weight:800;font-size:30px;line-height:1;letter-spacing:-.01em;color:var(--blue)}.feat__title{margin-top:18px;font-weight:700;font-size:17px;line-height:1.6;color:var(--ink)}.feat__desc{margin-top:14px;color:var(--sub);font-size:14px;line-height:1.95;flex:1}.feat__desc+.feat__desc{margin-top:1em}.feat__link{margin-top:20px;display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:13px;color:var(--blue)}@media(max-width:920px){.feats,.feats--4{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.feats,.feats--2,.feats--4{grid-template-columns:1fr}}.steps{border-top:1px solid var(--line)}.step{display:grid;grid-template-columns:120px 1fr;gap:24px;padding:32px 4px;border-bottom:1px solid var(--line)}.step__no{position:relative}.step__no i{display:grid;place-items:center;width:54px;height:54px;border-radius:999px;background:var(--blue);color:#fff;font-family:var(--en);font-weight:800;font-size:19px;letter-spacing:.01em;font-style:normal}.step:not(:last-child) .step__no:after{content:"";position:absolute;left:26.5px;top:66px;bottom:-46px;width:1px;background:var(--line)}.step__title{font-weight:700;font-size:18px;line-height:1.6;color:var(--ink)}.step__desc{margin-top:12px;color:var(--sub);font-size:14.5px;line-height:1.95}.step__meta{margin-top:18px;list-style:none;display:grid;gap:9px}.step__meta li{display:grid;grid-template-columns:116px 1fr;gap:14px;align-items:start;font-size:13.5px;color:var(--sub);line-height:1.85}.step__meta li b{font-weight:700;font-size:11.5px;letter-spacing:.04em;color:var(--blue);background:var(--blue-soft);padding:5px 10px;border-radius:5px;text-align:center}@media(max-width:700px){.step{grid-template-columns:1fr;gap:14px}.step__no:after{display:none}.step__meta li{grid-template-columns:1fr;gap:4px}.step__meta li b{justify-self:start}}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch;padding-top:14px}.plan{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:38px 30px 34px;box-shadow:var(--shadow)}.plan--rec{border:1.5px solid var(--blue);box-shadow:var(--shadow-hover)}.plan__badge{position:absolute;top:-13px;left:50%;translate:-50% 0;white-space:nowrap;background:var(--blue);color:#fff;font-weight:700;font-size:11.5px;letter-spacing:.04em;padding:6px 18px;border-radius:999px}.plan__name{font-family:var(--en);font-weight:800;font-size:19px;letter-spacing:.06em;color:var(--blue)}.plan__for{margin-top:12px;font-size:13px;color:var(--sub);line-height:1.85}.plan__price{margin-top:20px;font-family:var(--en);font-weight:800;font-size:clamp(34px,4vw,48px);line-height:1;letter-spacing:-.02em;color:var(--ink)}.plan__unit{font-family:var(--jp);font-weight:700;font-size:.32em;margin-left:5px;letter-spacing:.04em;color:var(--sub)}.plan__note{margin-top:10px;font-size:12.5px;color:var(--sub-light);line-height:1.8}.plan__list{margin-top:24px;padding-top:22px;border-top:1px solid var(--line);list-style:none;display:grid;gap:11px;flex:1;align-content:start}.plan__list li{position:relative;padding-left:25px;font-size:13.5px;color:var(--sub);line-height:1.8}.plan__list li:before{content:"";position:absolute;left:2px;top:6px;width:12px;height:7px;border-left:2px solid var(--blue);border-bottom:2px solid var(--blue);transform:rotate(-45deg)}.plan .btn{margin-top:28px;justify-content:center}@media(max-width:920px){.plans{grid-template-columns:1fr;max-width:460px;margin-inline:auto}}.mtx__wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.mtx{width:100%;min-width:660px;border-collapse:collapse}.mtx th,.mtx td{padding:18px 14px;border-bottom:1px solid var(--line);font-size:13.5px;text-align:center;color:var(--sub)}.mtx thead th{background:var(--paper);font-weight:700;font-size:13px;color:var(--ink);letter-spacing:.04em}.mtx tbody th{text-align:left;font-weight:700;color:var(--ink);min-width:230px;position:sticky;left:0;background:#fff}.mtx thead th:first-child{position:sticky;left:0;background:var(--paper);text-align:left}.mtx__cat th,.mtx__cat td{background:var(--blue-soft);font-weight:700;font-size:12px;letter-spacing:.08em;color:var(--blue);text-align:left}.mtx__yes{color:var(--blue);font-family:var(--en);font-weight:800;font-size:16px}.mtx__no{color:var(--sub-light);font-weight:700}.mtx tbody tr:last-child th,.mtx tbody tr:last-child td{border-bottom:0}.mtx__scrollnote{margin-top:12px;font-size:12.5px;color:var(--sub-light)}@media(max-width:600px){.mtx{min-width:540px}.mtx th,.mtx td{padding:14px 10px;font-size:12.5px}.mtx tbody th,.mtx thead th:first-child{min-width:168px}}.faq{display:grid;gap:12px}.faq__cat{margin:clamp(44px,5vw,64px) 0 20px;font-weight:700;font-size:18px;color:var(--ink);padding-left:14px;border-left:3px solid var(--blue)}.faq__cat:first-child{margin-top:0}.faq__cat[id],.cases[id],section[id]{scroll-margin-top:96px}.faq__item{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transition:border-color .3s,box-shadow .3s}.faq__item[open]{border-color:#cdd9f0;box-shadow:var(--shadow-hover)}.faq__q{list-style:none;cursor:pointer;position:relative;display:flex;align-items:flex-start;gap:13px;padding:21px 56px 21px 24px;font-weight:700;font-size:15px;line-height:1.7;color:var(--ink)}.faq__q::-webkit-details-marker{display:none}.faq__q b{font-family:var(--en);font-weight:800;font-size:15px;color:var(--blue);flex:none}.faq__q:after{content:"";position:absolute;right:24px;top:27px;width:14px;height:14px;flex:none;background:var(--blue);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .3s var(--ease)}.faq__item[open] .faq__q:after{transform:rotate(135deg)}.faq__a{padding:0 24px 24px 57px;color:var(--sub);font-size:14px;line-height:1.95}.faq__a a{color:var(--blue);font-weight:700}.faq__a p+p{margin-top:.9em}@media(max-width:600px){.faq__q{padding:18px 48px 18px 18px;font-size:14.5px}.faq__a{padding:0 18px 20px}}.tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:clamp(30px,4vw,44px)}.tabs__btn{display:inline-flex;align-items:center;white-space:nowrap;font-weight:700;font-size:13px;letter-spacing:.04em;padding:10px 22px;border:1.5px solid var(--line);border-radius:999px;background:#fff;color:var(--sub);transition:background .25s,color .25s,border-color .25s,transform .25s var(--ease)}.tabs__btn:hover{border-color:var(--blue);color:var(--blue);transform:translateY(-2px)}.tabs__btn.on{background:var(--blue);border-color:var(--blue);color:#fff}@media(max-width:600px){.tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px}.tabs__btn{flex:none}}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.stat{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px 26px;text-align:center;box-shadow:var(--shadow)}.stat__num{font-family:var(--en);font-weight:800;font-size:clamp(40px,5.4vw,64px);line-height:1;letter-spacing:-.02em;color:var(--blue)}.stat__unit{font-size:.5em;margin-left:3px}.stat__label{margin-top:16px;font-weight:700;font-size:14px;line-height:1.7;color:var(--ink)}.stat__note{margin-top:9px;font-size:12.5px;line-height:1.75;color:var(--sub-light)}@media(max-width:760px){.stats{grid-template-columns:1fr}}.note{background:var(--blue-soft);border-left:3px solid var(--blue);border-radius:var(--radius);padding:20px 24px;font-size:13px;line-height:1.95;color:var(--sub)}.note__title{font-weight:700;font-size:13.5px;color:var(--ink);margin-bottom:8px}.note p+p{margin-top:8px}.note ul{margin:8px 0 0 1.3em}.note li{margin-bottom:5px}.note a{color:var(--blue);font-weight:700}.certs{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.certs .cert{width:92px;height:92px}.certs .cert span{font-size:11px}.arthead{max-width:800px;margin:0 auto clamp(34px,4vw,48px);padding-bottom:28px;border-bottom:1px solid var(--line)}.arthead__meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.arthead__date{font-family:var(--en);font-weight:700;font-size:13px;letter-spacing:.04em;color:var(--sub-light)}.arthead__tag{font-weight:700;font-size:11px;letter-spacing:.04em;color:var(--blue);background:var(--blue-soft);padding:5px 13px;border-radius:999px}.arthead__title{margin-top:18px;font-weight:700;font-size:clamp(22px,3vw,32px);line-height:1.6;color:var(--ink)}.artnav__head{font-weight:700;font-size:18px;color:var(--ink);margin-bottom:24px;padding-left:14px;border-left:3px solid var(--blue)}.artnav{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}@media(max-width:860px){.artnav{grid-template-columns:1fr}}.prose .lead{font-weight:700;font-size:clamp(15px,1.6vw,17px);line-height:1.95;color:var(--ink);margin-bottom:28px}.prose h3{font-weight:700;font-size:16px;color:var(--ink);margin:30px 0 12px}.prose ol{color:var(--sub);margin:0 0 14px 1.5em}.prose ol li{margin-bottom:8px}.prose a{color:var(--blue);font-weight:700}.prose blockquote{margin:28px 0;padding:24px 26px;background:var(--paper);border-left:3px solid var(--blue);border-radius:0 var(--radius) var(--radius) 0;color:var(--sub);font-size:14.5px;line-height:1.95}.prose blockquote p+p{margin-top:10px}.prose blockquote cite{display:block;margin-top:14px;font-style:normal;font-size:12.5px;color:var(--sub-light)}.prose figure{margin:32px 0}.prose figure img{width:100%;border-radius:var(--radius-lg);box-shadow:var(--shadow)}.prose figcaption{margin-top:11px;font-size:12.5px;line-height:1.8;color:var(--sub-light)}.prose table{width:100%;border-collapse:collapse;margin:24px 0;border-top:1px solid var(--line)}.prose table th,.prose table td{padding:16px 8px;border-bottom:1px solid var(--line);font-size:14px;text-align:left;vertical-align:top}.prose table th{width:200px;font-weight:700;color:var(--ink)}.prose table td{color:var(--sub)}.prose .note{margin:30px 0 0}@media(max-width:600px){.prose table th{width:110px;font-size:13px}.prose table td{font-size:13px}}.ft__top--wide{grid-template-columns:1.1fr repeat(3,1fr) .8fr auto;gap:26px}@media(max-width:1023px){.ft__top--wide{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.ft__top--wide{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.ft__top--wide{grid-template-columns:1fr}}html,body{overflow-x:clip}.step__no,.flow__no,.field__no,.feat__no,.fac__no,.timeline__no,.hdr__jp,.hdr__name,.hdr__names,.hdr__brand-jp,.hdr__brand-name,.hd__name,.hd__jp,.brand__jp,.logo__jp,.logo__name{white-space:nowrap}
