:root{--navy:#081d36;--blue:#123d68;--line:#d9e0e7;--pale:#f2f5f7;--ink:#152334;--muted:#5b6774;--white:#fff;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,"Noto Sans JP","Noto Sans SC",sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}.skip{position:fixed;left:12px;top:-60px;z-index:100;background:#fff;padding:10px}.skip:focus{top:12px}.site-header{height:92px;padding:0 max(28px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:34px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.98);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;min-width:206px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--navy);color:#fff;font-family:serif;font-size:24px}.brand-name{display:flex;flex-direction:column;line-height:1.1;letter-spacing:.12em}.brand-name b{font-size:15px}.brand-name small{font-size:8px;margin-top:5px}.nav{display:flex;align-items:center;justify-content:center;gap:4px}.nav a{font-size:14px;font-weight:650;letter-spacing:.02em;padding:15px 11px;white-space:nowrap}.nav a:hover{color:var(--blue)}.nav-contact{border-left:1px solid var(--line);margin-left:5px;padding-left:18px!important}.language{display:flex;align-items:center;gap:2px;border:1px solid var(--line);padding:3px}.language button{border:0;background:transparent;padding:7px 8px;color:var(--muted);font-size:11px;cursor:pointer;white-space:nowrap}.language button.active{background:var(--navy);color:#fff}.menu{display:none;border:0;background:none;width:44px;height:44px;padding:11px}.menu span{display:block;border-top:2px solid var(--navy);margin:7px 0}.hero{min-height:690px;position:relative;overflow:hidden;display:grid;align-items:center;padding:90px max(28px,calc((100vw - var(--max))/2));background:linear-gradient(110deg,#fff 0 57%,#eef2f5 57%)}.hero-grid{position:absolute;inset:0 0 0 56%;background-image:linear-gradient(rgba(8,29,54,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(8,29,54,.08) 1px,transparent 1px);background-size:80px 80px;transform:skewX(-10deg)}.hero-grid:before,.hero-grid:after{content:"";position:absolute;border:1px solid rgba(18,61,104,.32);width:390px;height:390px;border-radius:50%;top:145px;left:50%;transform:translateX(-50%)}.hero-grid:after{width:230px;height:230px;top:225px}.hero-copy{position:relative;max-width:800px}.eyebrow,.section-heading>p{font-size:12px;font-weight:700;letter-spacing:.2em;color:var(--blue);margin:0 0 24px}.hero h1{font-family:Georgia,"Noto Serif JP",serif;font-weight:500;font-size:clamp(48px,6vw,84px);line-height:1.08;letter-spacing:-.035em;max-width:830px;margin:0}.lead{font-size:18px;max-width:630px;color:var(--muted);margin:32px 0 38px}.actions{display:flex;gap:12px}.button{min-height:52px;padding:0 24px;display:inline-flex;gap:30px;align-items:center;justify-content:space-between;font-weight:700;font-size:14px}.primary{background:var(--navy);color:#fff}.secondary{border:1px solid var(--navy);background:#fff}.hero-note{position:absolute;right:max(28px,calc((100vw - var(--max))/2));bottom:40px;display:flex;align-items:center;gap:16px;font-size:12px;letter-spacing:.08em}.hero-note span{color:var(--blue)}.section{padding:110px max(28px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.5fr);gap:8vw}.section-heading h2,.contact h2{font-family:Georgia,"Noto Serif JP",serif;font-size:clamp(34px,4vw,56px);font-weight:500;line-height:1.2;letter-spacing:-.02em;margin:0}.about{border-bottom:1px solid var(--line)}.about-copy>.large{font-size:25px;line-height:1.55;color:var(--ink);margin-top:0}.about-copy>p:not(.large){color:var(--muted);font-size:16px;max-width:750px}.strengths{margin-top:50px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.strengths article{padding:22px 15px 22px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:18px}.strengths article:nth-child(odd){border-right:1px solid var(--line)}.strengths article:nth-child(even){padding-left:24px}.strengths span,.number{font-size:12px;color:var(--blue);font-family:monospace}.strengths b{font-size:14px}.business{background:var(--pale);display:block}.business .section-heading{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.5fr);gap:8vw;margin-bottom:65px}.business-list{border-top:1px solid #bdc8d2}.business-list>article{display:grid;grid-template-columns:70px 1.2fr 1fr 220px;gap:28px;align-items:center;min-height:250px;border-bottom:1px solid #bdc8d2;padding:30px 0}.business-list h3{font-family:Georgia,"Noto Serif JP",serif;font-size:31px;font-weight:500;margin:0 0 10px}.business-list p{color:var(--muted);margin:0}.business-list ul{list-style:none;padding:0;margin:0;font-size:14px}.business-list li{padding:8px 0;border-bottom:1px solid #d6dde3}.business-list li:before{content:"—";color:var(--blue);margin-right:10px}.business-symbol{width:190px;height:150px;position:relative;margin-left:auto;background:#e4e9ed}.business-symbol i{position:absolute;border:1px solid #748ca3}.symbol-trade i:nth-child(1){inset:25px;border-radius:50%}.symbol-trade i:nth-child(2){width:1px;top:15px;bottom:15px;left:50%}.symbol-trade i:nth-child(3){height:1px;left:15px;right:15px;top:50%}.symbol-industry i:nth-child(1){width:90px;height:90px;left:50px;top:30px;transform:rotate(45deg)}.symbol-industry i:nth-child(2){width:55px;height:55px;left:67px;top:47px}.symbol-industry i:nth-child(3){width:10px;height:10px;background:var(--blue);border:0;left:90px;top:70px}.products{display:block}.products .section-heading{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.5fr);gap:8vw;margin-bottom:60px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product-grid h3{font-family:Georgia,"Noto Serif JP",serif;font-size:25px;font-weight:500;margin:22px 0 8px}.product-grid p{color:var(--muted);margin:0}.product-art{height:260px;background:#edf1f4;position:relative;overflow:hidden}.product-art span{position:absolute;top:18px;left:18px;font-family:monospace;font-size:12px;color:var(--blue)}.product-art:before,.product-art:after{content:"";position:absolute;border:1px solid #8ba0b4}.p1:before{width:140px;height:140px;border-radius:50%;left:calc(50% - 70px);top:60px}.p1:after{width:200px;left:calc(50% - 100px);top:130px}.p2:before{width:120px;height:120px;transform:rotate(45deg);left:calc(50% - 60px);top:70px}.p2:after{width:70px;height:70px;left:calc(50% - 35px);top:95px}.p3:before{width:180px;height:100px;border-radius:50%;left:calc(50% - 90px);top:80px}.p3:after{height:180px;left:50%;top:40px}.connection{background:var(--navy);color:#fff;grid-template-columns:1fr 1.5fr}.connection .section-heading>p{color:#9fb6cb}.connection-visual{display:grid;place-items:center;min-height:360px}.orbit{width:260px;height:260px;border:1px solid #50667b;border-radius:50%;display:grid;place-items:center;position:relative}.orbit:before,.orbit:after{content:"";position:absolute;border:1px solid #3c556c;border-radius:50%;inset:40px}.orbit:after{inset:88px}.orbit span{font-family:Georgia,serif;font-size:20px}.connection-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:55px;border-top:1px solid #3b5065}.connection-grid article{padding:26px 20px 10px 0}.connection-grid article+article{border-left:1px solid #3b5065;padding-left:28px}.connection-grid h3{font-size:18px;margin:0 0 20px}.connection-grid p{color:#cbd6df;font-size:14px}.contact{padding:110px max(28px,calc((100vw - var(--max))/2));background:#edf1f4;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.contact-details{border-top:1px solid #b7c3cd;padding-top:28px}.contact-details a{font-family:Georgia,serif;font-size:clamp(24px,3vw,42px);display:flex;justify-content:space-between;border-bottom:1px solid #b7c3cd;padding-bottom:22px;color:var(--navy)}.contact-details p{margin:22px 0 0;color:var(--muted)}footer{background:#06172b;color:#fff;padding:55px max(28px,calc((100vw - var(--max))/2)) 28px;display:grid;grid-template-columns:1fr 1fr;gap:45px}.footer-brand{display:flex;gap:14px;align-items:center}.footer-brand div{display:flex;flex-direction:column}.footer-brand small{color:#9cabb9;margin-top:4px}footer nav{display:flex;justify-content:flex-end;align-items:center;gap:24px;font-size:13px}footer>p{grid-column:1/-1;color:#7f91a2;font-size:11px;border-top:1px solid #263a4d;margin:10px 0 0;padding-top:24px}.error-page{min-height:100vh;display:grid;place-content:center;text-align:center;gap:10px}.error-page h1{font-family:Georgia,serif;font-size:42px;margin:0}.error-page .brand-mark{margin:auto}.error-page .button{margin-top:20px}@media(max-width:1080px){.site-header{grid-template-columns:auto 1fr auto}.nav{position:absolute;display:none;top:91px;left:0;right:0;background:#fff;padding:22px 28px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{font-size:16px;padding:12px 0}.nav-contact{border-left:0;margin-left:0;padding-left:0!important}.menu{display:block;justify-self:end}.language{grid-column:3}.business-list>article{grid-template-columns:50px 1.2fr 1fr}.business-symbol{display:none}}@media(max-width:760px){.site-header{height:76px;padding:0 18px;gap:8px;grid-template-columns:auto 1fr auto}.brand{min-width:0}.brand-mark{width:36px;height:36px;font-size:20px}.brand-name{display:none}.menu{grid-column:2;grid-row:1}.nav{top:75px}.language{gap:0}.language button{font-size:15px;padding:6px}.language button span{display:none}.hero{min-height:640px;padding:72px 22px;background:linear-gradient(160deg,#fff 0 70%,#eef2f5 70%)}.hero-grid{inset:55% 0 0 30%}.hero h1{font-size:45px}.lead{font-size:16px}.hero-note{right:22px;bottom:22px}.section{padding:76px 22px;display:block}.section-heading{margin-bottom:38px}.about-copy>.large{font-size:21px}.strengths{grid-template-columns:1fr}.strengths article:nth-child(odd){border-right:0}.strengths article:nth-child(even){padding-left:0}.business .section-heading,.products .section-heading{display:block;margin-bottom:38px}.business-list>article{display:block;padding:35px 0;min-height:0}.business-list .number{margin-bottom:14px}.business-list ul{margin-top:22px}.product-grid{grid-template-columns:1fr;gap:46px}.product-art{height:210px}.connection{display:block}.connection-visual{min-height:280px}.orbit{width:210px;height:210px}.connection-grid{grid-template-columns:1fr}.connection-grid article+article{border-left:0;border-top:1px solid #3b5065;padding-left:0}.contact{padding:76px 22px;grid-template-columns:1fr;gap:45px}.contact-details a{font-size:22px}footer{padding:48px 22px 25px;grid-template-columns:1fr}footer nav{justify-content:flex-start;flex-wrap:wrap;gap:14px 22px}}
