.company-page{--cp-blue: #0668ff;position:relative;min-width:320px;background:#05090e;color:#090b0f;font-family:Noto Sans JP,Yu Gothic,YuGothic,Hiragino Kaku Gothic ProN,Arial,sans-serif}.company-page a{color:inherit;text-decoration:none}.cp-shell{margin-left:calc(100vw * 78 / 1440);overflow:hidden;background:#fff}.cp-side-rail{height:calc(100cqw * 409 / 971);padding-top:calc(100vw * 95 / 1440);overflow:hidden}.cp-side-rail .page-rail__number{font-size:10px}.cp-side-rail .page-rail__track{height:calc(100vw * 330 / 1440);margin:calc(100vw * 14 / 1440) 0}.cp-side-rail .page-rail__track i{width:8px;height:8px;margin-left:-4px}.cp-side-rail .page-rail__track i:first-child{box-shadow:0 0 0 5px #0b63ff1c}.cp-side-rail .page-rail__track i:nth-child(2){top:calc(100vw * 264 / 1440)}.cp-side-rail b{font-size:7px}.company-page .site-header-cta{color:#fff}@media(min-width:801px){.company-page .cp-header{left:calc(100vw * 78 / 1440);height:calc(100vw * 76 / 1440);padding-right:5vw;padding-left:3.75vw;grid-template-columns:minmax(calc(100vw * 240 / 1440),1fr) auto calc(100vw * 181 / 1440);gap:calc(100vw * 34 / 1440)}.company-page .cp-header .site-brand{font-size:calc(100vw * 20 / 1440)}.company-page .cp-header .site-nav{gap:calc(100vw * 46 / 1440)}.company-page .cp-header .site-nav a{font-size:calc(100vw * 12.5 / 1440)}.company-page .cp-header .site-nav a:after{bottom:calc(100vw * 14 / 1440);height:max(1px,calc(100vw * 2 / 1440))}.company-page .cp-header .site-header-cta{min-height:calc(100vw * 46 / 1440);padding-inline:calc(100vw * 20 / 1440);gap:calc(100vw * 24 / 1440);font-size:calc(100vw * 12 / 1440)}.company-page .cp-header .site-header-cta svg{width:1.25vw;height:1.25vw}.company-page .cp-side-rail{width:calc(100vw * 78 / 1440);padding-top:calc(100vw * 95 / 1440)}.company-page .cp-side-rail .page-rail__number{font-size:calc(100vw * 10 / 1440)}.company-page .cp-side-rail .page-rail__track{height:calc(100vw * 330 / 1440);margin-block:calc(100vw * 14 / 1440)}.company-page .cp-side-rail .page-rail__track i{width:calc(100vw * 8 / 1440);height:calc(100vw * 8 / 1440);margin-left:calc(100vw * -4 / 1440)}.company-page .cp-side-rail .page-rail__track i:nth-child(2){top:calc(100vw * 264 / 1440)}.company-page .cp-side-rail b{font-size:calc(100vw * 7 / 1440)}}.company-page .cp-header-cta,.company-page .cp-contact-cta{background:#020304;color:#fff;border:1px solid #0869ff;box-shadow:-3px 0 8px #ff2b45bf,4px 0 9px #0060ffcc;display:flex;align-items:center;justify-content:center;font-weight:700}.cp-header-cta{margin-left:54px;width:136px;height:31px;font-size:10px}.cp-header-cta span{margin-left:auto;margin-right:10px;font-size:11px}.cp-hero{position:relative;height:calc(100cqw * 409 / 971);background:#f7faff;overflow:hidden}.cp-hero-copy{position:absolute;z-index:2;left:3.31%;top:34.2%}.cp-hero-copy h1{font-family:Noto Sans JP,Yu Gothic,YuGothic,Hiragino Kaku Gothic ProN,Arial,sans-serif;font-size:clamp(34px,3.333vw,64px);line-height:1.2;margin:0 0 clamp(12px,calc((100vw - 78px) * 11 / 966),22px);letter-spacing:.02em;font-weight:700}.cp-hero-copy h2{font-family:Noto Sans JP,Yu Gothic,YuGothic,Hiragino Kaku Gothic ProN,Arial,sans-serif;font-size:clamp(23px,calc((100vw - 78px) * 27 / 966),58px);line-height:1.3;margin:0 0 clamp(27px,calc((100vw - 78px) * 27 / 966),50px);letter-spacing:0;font-weight:700}.cp-hero-copy h2 em{color:var(--cp-blue);font-style:normal;margin-right:clamp(8px,calc((100vw - 78px) * 8 / 966),12px)}.cp-hero-copy p{font-size:clamp(9.5px,calc((100vw - 78px) * 10.5 / 966),15.5px);line-height:2;letter-spacing:0;font-weight:600}.cp-hero-background{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/assets/company/hero-background-balanced-v1.webp) center / cover no-repeat}.cp-philosophy{height:auto;aspect-ratio:966 / 332;background:#03080d;color:#fff;position:relative;overflow:hidden}.cp-philosophy-background{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/assets/company/philosophy-background-v3.webp) center / 100% 100% no-repeat}.cp-philosophy-copy{position:absolute;left:3.4%;top:10.24%;z-index:2}.cp-eyebrow{font-size:clamp(7px,calc((100vw - 48px) * .008282),11px);line-height:1.25;letter-spacing:.04em;color:#1478ff;font-weight:800}.cp-philosophy h2{font-size:clamp(21px,calc((100vw - 48px) * .024845),34px);line-height:1.5;letter-spacing:.04em;margin:calc((100vw - 48px) * .017598) 0 calc((100vw - 48px) * .011387)}.cp-philosophy-copy>p{font-size:clamp(8px,calc((100vw - 48px) * .009317),12px);line-height:2.55;color:#c7cbd2;margin:0}.cp-philosophy .cp-color-line{margin-top:calc((100vw - 48px)*.0035);font-size:clamp(12px,calc((100vw - 48px) * .014493),19px);line-height:1.55;color:#fff}.cp-color-line b{color:#1488ff}.cp-color-line strong{color:#bfe600}.cp-color-line em{color:#ff6b58;font-style:normal}.cp-color-line span{font-size:clamp(9px,calc((100vw - 48px) * .010352),14px);color:#c7cbd2}.cp-architecture{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;color:#dbe7f7;font-weight:700;pointer-events:none}.cp-architecture-heading{margin:0;color:#f4f8ff;font-size:clamp(6px,calc((100vw - 48px)*.0062),9px);line-height:1.2;letter-spacing:.08em;text-align:center}.cp-architecture ul{list-style:none;margin:10% 0 0;padding:0}.cp-architecture li{position:relative;border-bottom:1px solid rgba(87,146,216,.28);padding:7% 4% 7% 24%;font-size:clamp(6px,calc((100vw - 48px)*.0068),10px);line-height:1.2;white-space:nowrap}.cp-architecture li:before{content:"";position:absolute;left:7%;top:50%;width:7px;height:7px;border:1px solid rgba(130,180,236,.72);border-radius:2px;transform:translateY(-50%);box-shadow:0 0 7px #1488ff73}.cp-architecture-input,.cp-architecture-output{position:absolute;top:9.2%;width:10.4%;padding:.8% .8% .5%;border:1px solid rgba(61,116,180,.26);background:linear-gradient(180deg,#050e1bb8,#03091142);box-shadow:0 0 18px #0650aa14}.cp-architecture-input{left:35.6%}.cp-architecture-output{left:69.5%}.cp-architecture-engine{position:absolute;left:51.25%;top:5.2%;width:17.5%;text-align:center}.cp-architecture-engine strong{display:block;margin-top:21%;color:#75baff;font-size:clamp(7px,calc((100vw - 48px)*.0075),11px);line-height:1.35;letter-spacing:.04em;text-shadow:0 0 10px rgba(26,137,255,.9)}.cp-architecture-layers{position:absolute;left:36.4%;top:47.2%;width:16%}.cp-architecture-layers span{display:block;margin-bottom:8%;border:1px solid rgba(87,146,216,.24);border-right:0;padding:4.2% 6%;background:linear-gradient(90deg,#040c16db,#040c1633);font-size:clamp(6px,calc((100vw - 48px)*.0068),10px);line-height:1.2;white-space:nowrap}.cp-architecture-layers small{color:#a8b7c8;font-size:.86em}.cp-architecture-layers .is-design{border-left:2px solid #168dff}.cp-architecture-layers .is-engineering{border-left:2px solid #bfe600}.cp-architecture-layers .is-operation{border-left:2px solid #ff6b58}.cp-profile{height:auto;aspect-ratio:966 / 399;position:relative;background:linear-gradient(115deg,#fff 0,#f7faff 55%,#fff);padding:4.14% 5% 3.2% 3.4%;display:grid;grid-template-columns:35% 1fr;gap:24px;overflow:hidden}.cp-profile-intro h2{font-size:clamp(24px,calc((100vw - 48px) * .026915),36px);line-height:1.3;margin:calc((100vw - 48px) * .017598) 0 calc((100vw - 48px) * .014493)}.cp-profile-intro>p{position:relative;z-index:2;font-size:clamp(9px,calc((100vw - 48px) * .010352),14px);line-height:1.45;color:#555}.cp-profile-intro>.cp-eyebrow,.cp-profile-intro>h2{position:relative;z-index:2}.cp-map-graphic{position:absolute;left:1.2%;top:15%;width:35.7%;height:65.2%;object-fit:fill;z-index:0;mix-blend-mode:multiply}.cp-location{position:absolute;left:13.1%;bottom:8.5%}.cp-location b{display:block;color:#1376ff;font-size:clamp(14px,calc((100vw - 48px) * .015528),21px);letter-spacing:.04em}.cp-location small{display:block;color:#8795a9;margin-top:calc((100vw - 48px) * .007246);font-size:clamp(8px,calc((100vw - 48px) * .008282),11px)}.cp-profile-table{margin:0 8% 0 0;z-index:2}.cp-profile-row{display:grid;grid-template-columns:calc((100vw - 48px) * .116977) 1fr;min-height:0;border-bottom:1px solid #d9e0e9;padding:calc((100vw - 48px) * .010145) 0;font-size:clamp(9px,calc((100vw - 48px) * .010352),14px);line-height:1.65}.cp-profile-row dt{font-weight:800;display:flex;flex-direction:column}.cp-profile-row dd{margin:0}.cp-profile-row dd a{display:block;color:#096dff;font-size:clamp(8px,calc((100vw - 48px) * .008282),11px)}.cp-company-word{position:absolute;right:.9%;top:3.5%;writing-mode:vertical-rl;color:transparent;-webkit-text-stroke:1px #d9e1eb;font-size:clamp(56px,calc((100vw - 48px) * .064183),84px);letter-spacing:.08em}.cp-stance{height:auto;aspect-ratio:966 / 210;background:#03080d;color:#fff;display:grid;grid-template-columns:23.5% 1fr;padding:3.1% 3.8% 2%;position:relative;overflow:hidden}.cp-stance-background{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/assets/company/stance-background-v2.webp) center / 100% 100% no-repeat}.cp-stance-intro,.cp-principles{position:relative;z-index:2}.cp-stance-intro h2{font-size:clamp(18px,calc((100vw - 48px) * .020704),28px);line-height:1.35;margin:calc((100vw - 48px) * .017598) 0 calc((100vw - 48px) * .009317)}.cp-stance-intro p{font-size:clamp(7px,calc((100vw - 48px) * .008282),11px);line-height:2.3;color:#c0c6cf}.cp-principles{display:grid;grid-template-columns:repeat(5,1fr);height:calc((100vw - 48px) * .141822)}.cp-principle{padding:calc((100vw - 48px) * .072981) calc((100vw - 48px) * .012422) 0}.cp-principle h3{font-size:clamp(8px,calc((100vw - 48px) * .009524),13px);margin:0 0 calc((100vw - 48px) * .006211);white-space:nowrap}.cp-principle h3 span{color:#167cff;margin-right:5px}.cp-principle:nth-child(2) h3 span,.cp-principle:nth-child(5) h3 span{color:#bcdc00}.cp-principle:nth-child(3) h3 span{color:#ff6656}.cp-principle p{font-size:clamp(7px,calc((100vw - 48px) * .007764),10px);line-height:1.9;color:#bdc5cf}.cp-principle-icon{display:none}.cp-contact{height:auto;aspect-ratio:966 / 230;background:#f3f6fa;padding:calc((100vw - 48px) * .030021) 3.52% 0;position:relative;overflow:hidden}.cp-contact-background{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/assets/company/contact-background-v3.webp) right center / 62% auto no-repeat}.cp-contact-copy{position:relative;z-index:2;width:36%}.cp-contact-copy h2{font-size:clamp(17px,calc((100vw - 48px) * .021739),29px);line-height:1.3;white-space:nowrap;margin:calc((100vw - 48px) * .014493) 0 calc((100vw - 48px) * .010352)}.cp-contact-copy p{font-size:clamp(8px,calc((100vw - 48px) * .010352),13px);line-height:1.9;margin:0}.cp-contact-cta{position:relative;border-left-color:#ff4258;border-radius:2px;margin-top:calc((100vw - 48px) * .011387);width:max(278px,calc((100vw - 48px) * .287785));height:max(54px,calc((100vw - 48px) * .055901));font-size:max(12px,calc((100vw - 48px) * .012422));justify-content:flex-start}.cp-contact-cta-label{position:absolute;left:max(72px,calc((100vw - 48px) * .074534));line-height:1;white-space:nowrap}.cp-contact-cta-arrow{position:absolute;right:max(11px,calc((100vw - 48px) * .011387));top:50%;width:max(27px,calc((100vw - 48px)*.02795));height:max(18px,calc((100vw - 48px) * .018634));transform:translateY(-50%);object-fit:contain}@media(max-width:800px){.cp-side-rail{display:none}.cp-shell{margin-left:0}.cp-header{left:0}.cp-hero{width:auto;height:720px;aspect-ratio:auto}.cp-hero-copy{left:24px;right:24px;top:112px}.cp-hero-copy h1{font-size:42px;margin-bottom:15px}.cp-hero-copy h2{max-width:680px;font-size:28px;margin-bottom:30px}.cp-hero-copy p{font-size:11px}.cp-hero-background{background-position:48% top;background-size:auto 100%;opacity:.62}.cp-philosophy{height:700px;aspect-ratio:auto}.cp-philosophy-copy{left:24px;top:48px}.cp-philosophy-background{background-size:auto 332px;background-position:66% bottom;opacity:.82}.cp-architecture{display:none}.cp-philosophy h2{font-size:31px;margin:27px 0 20px}.cp-philosophy-copy>p{font-size:12px;line-height:2}.cp-philosophy .cp-color-line{margin-top:24px;font-size:17px}.cp-profile{height:auto;min-height:1000px;aspect-ratio:auto;padding:50px 24px;display:block}.cp-profile-intro h2{font-size:30px;margin:25px 0 17px}.cp-profile-intro>p{font-size:12px;line-height:1.9}.cp-map-graphic{position:relative;left:auto;top:auto;width:290px;height:255px;margin:25px auto;display:block}.cp-location{position:relative;left:auto;bottom:auto;margin:0 0 40px 82px}.cp-profile-table{margin:0}.cp-profile-row{grid-template-columns:105px 1fr;padding:13px 0;font-size:11px}.cp-company-word{display:none}.cp-stance{height:auto;aspect-ratio:auto;display:block;padding:48px 24px 36px}.cp-stance-background{display:none}.cp-stance-intro h2{font-size:27px;margin:25px 0 16px}.cp-stance-intro p{font-size:11px;line-height:2}.cp-principles{height:auto;grid-template-columns:1fr;margin-top:26px}.cp-principle{display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto auto;column-gap:14px;align-items:start;border-top:1px solid #26303a;padding:16px 0}.cp-principle-icon{display:block;grid-column:1;grid-row:1 / 3;width:38px;height:38px;margin-top:1px;object-fit:contain}.cp-principle h3{grid-column:2;font-size:12px;line-height:1.45}.cp-principle p{grid-column:2;margin-top:3px;font-size:10px;line-height:1.75}.cp-contact{height:620px;aspect-ratio:auto;padding:45px 24px}.cp-contact-copy{width:100%}.cp-contact-copy h2{font-size:24px;white-space:normal;margin:22px 0 15px}.cp-contact-copy p{font-size:12px}.cp-contact-cta{margin-top:27px;width:100%;height:64px;font-size:15px}.cp-contact-cta-label{left:72px}.cp-contact-background{background-size:auto 230px;background-position:right bottom}}@media(max-width:480px){.cp-hero-copy h1{font-size:34px}.cp-hero-copy h2{font-size:24px}.cp-principle p{font-size:10.5px}.cp-stance-intro p{font-size:12px}}
