:root{color-scheme:dark;--ink:#06152c;--navy:#030d1d;--white:#f6faff;--muted:#b0c2d6;--aqua:#54d7ff;--blue:#1785ff;--line:#87c5f330}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--navy);color:var(--white);-webkit-font-smoothing:antialiased;margin:0;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}::selection{color:#fff;background:#0f80d9}.skip-link{z-index:100;color:#071427;background:#fff;padding:12px 20px;position:absolute;top:-100px;left:12px}.skip-link:focus{top:12px}.container{width:min(1180px,100% - 64px);margin-inline:auto}.site-header{z-index:50;background:linear-gradient(#010a19d6,#010a1900);width:100%;position:absolute;top:0;left:0}.header-inner{justify-content:space-between;align-items:center;gap:24px;width:min(1400px,100% - 80px);height:94px;margin:auto;display:flex}.brand{white-space:nowrap;letter-spacing:.19em;align-items:center;gap:13px;font-family:Arial,Helvetica,sans-serif;font-size:clamp(19px,2vw,27px);font-weight:700;display:inline-flex}.brand-mark{flex:none;width:42px;height:30px;display:inline-block;position:relative}.brand-mark:before,.brand-mark:after{content:"";background:linear-gradient(#65e6ff,#0677ed);width:13px;height:29px;display:block;position:absolute;transform:skew(-35deg);box-shadow:0 0 18px #00a5ff40}.brand-mark:before{left:13px}.brand-mark:after{background:linear-gradient(#147dfe,#42beff);left:31px;transform:skew(35deg)}.site-nav{align-items:center;gap:clamp(14px,2.8vw,42px);display:flex}.site-nav a{color:#e5f0ff;font-size:13px;font-weight:650;transition:color .2s}.site-nav a:hover,.site-nav a:focus-visible{color:var(--aqua)}.header-cta{letter-spacing:.06em;background:#03132d80;border:1px solid #6bc5fc7a;border-radius:100px;padding:11px 20px}.menu-toggle{border:1px solid var(--line);color:#fff;cursor:pointer;background:#021428b3;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:42px;display:none}.menu-toggle span{background:#dff3ff;border-radius:1px;width:20px;height:2px}.hero{isolation:isolate;background:#020d22;align-items:center;height:min(980px,100svh);min-height:780px;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:-3;background-image:url(/hero-miratexa.webp);background-position:50%;background-size:cover;animation:2.2s ease-out both heroZoom;position:absolute;inset:0}.hero:before{content:"";z-index:-2;pointer-events:none;background:linear-gradient(#01091970 0%,#010d1d0f 23%,#01091a21 52%,#000c1ca3 88%,#020d20 100%),linear-gradient(90deg,#010c1b29,#0000 52%,#0008142b);position:absolute;inset:0}.hero-grid{z-index:-1;pointer-events:none;background-color:#0000;background-image:linear-gradient(#3793ff09 1px,#0000 1px),linear-gradient(90deg,#3793ff09 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:62px 62px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;mask-image:linear-gradient(#0000 25%,#000 100%)}.hero-content{text-align:center;z-index:2;width:min(1400px,100% - 56px);margin:65px auto 0;position:relative}.eyebrow{letter-spacing:.48em;color:#a9d7f4;text-shadow:0 0 16px #26b8ffcc;margin:0 0 28px;font:600 12px/1.5 Arial,Helvetica,sans-serif;animation:.8s .1s both fadeDown}.concept{grid-template-columns:1fr .7fr 1fr;align-items:center;gap:0;width:min(1190px,100%);margin-inline:auto;line-height:1.08;display:grid}.concept-word{letter-spacing:.1em;white-space:nowrap;text-shadow:0 5px 10px #001a39,0 0 15px #4fc0fffa,0 0 48px #2697ff80;font-size:clamp(46px,7.8vw,128px);font-weight:800}.concept-word.left{animation:1.45s cubic-bezier(.14,.65,.19,1) .25s both fromLeft}.concept-word.right{animation:1.45s cubic-bezier(.14,.65,.19,1) .25s both fromRight}.cross-wrap{filter:drop-shadow(0 0 17px #18bdffb3);justify-content:center;align-items:center;height:210px;animation:1.25s 1.1s both crossBurst;display:flex;position:relative}.cross-wrap:before{content:"";background:radial-gradient(circle,#ebfcffb3 0%,#16acff3b 29%,#0000 68%);width:130px;height:130px;animation:4s ease-in-out 2.3s infinite glowBreath;position:absolute}.cross-wrap svg{z-index:1;width:160px;height:160px;position:relative;overflow:visible}.cross-wrap .cross-line{stroke-dasharray:200;stroke-dashoffset:200px;stroke-linecap:round;animation:1s 1.07s forwards drawLine}.cross-wrap .cross-line:nth-child(2){animation-delay:1.3s}.hero-subtitle{letter-spacing:.15em;text-shadow:0 4px 20px #021123;margin:14px auto 0;font-size:clamp(24px,2.6vw,39px);font-weight:600;animation:.95s 1.65s both fadeUp}.hero-copy{color:#d1e4f3;letter-spacing:.07em;text-shadow:0 2px 10px #00112a;max-width:720px;margin:16px auto 0;font-size:clamp(13px,1.22vw,16px);line-height:2.05;animation:.95s 1.85s both fadeUp}.hero-actions{justify-content:center;align-items:center;gap:16px;margin-top:33px;animation:.9s 2.05s both fadeUp;display:flex}.button{letter-spacing:.07em;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:20px;min-width:188px;padding:15px 25px;font-size:14px;font-weight:700;transition:transform .25s,background .25s,border-color .25s,box-shadow .25s;display:inline-flex}.button:hover{transform:translateY(-3px)}.button.primary{background:linear-gradient(110deg,#17bfff,#1268f2);box-shadow:0 7px 28px #0079ff42}.button.primary:hover{box-shadow:0 10px 42px #00acff6b}.button.secondary{backdrop-filter:blur(8px);background:#00102352;border-color:#e8f5ffb3}.button.secondary:hover{background:#0c4b8780}.button .arrow{font-size:19px;font-weight:400}.hero-bottom{justify-content:center;animation:1s 2.4s both fadeUp;display:flex;position:absolute;bottom:36px;left:0;right:0}.scroll-cue{letter-spacing:.3em;color:#c4deec;flex-direction:column;align-items:center;gap:13px;font:12px Arial,sans-serif;display:flex}.scroll-cue i{border-bottom:1px solid #8cceff;border-right:1px solid #8cceff;width:18px;height:18px;animation:2.2s infinite bob;display:block;transform:rotate(45deg)}.section{padding:105px 0;position:relative}.section-dark{background:linear-gradient(#03132b,#071b37)}.section-deep{background:#041123}.section-kicker{color:var(--aqua);letter-spacing:.35em;margin:0 0 15px;font:700 12px Arial,sans-serif}.section-title{letter-spacing:.07em;margin:0 0 17px;font-size:clamp(30px,3.8vw,48px);font-weight:750;line-height:1.45}.section-lead{color:#aec4da;max-width:750px;font-size:15px;line-height:2.1}.vision-layout{grid-template-columns:1.1fr .9fr;align-items:center;gap:9%;display:grid}.vision-mark{aspect-ratio:1;background:radial-gradient(circle,#0a67c93b,#02143305 63%);border:1px solid #4dbdff21;border-radius:50%;place-items:center;width:min(360px,100%);margin-left:auto;display:grid;position:relative}.vision-mark:before,.vision-mark:after{content:"";border:1px solid #50c6ff42;border-radius:50%;position:absolute;inset:23px}.vision-mark:after{border-style:dashed;animation:40s linear infinite rotate;inset:61px}.vision-mark strong{color:#0000;text-shadow:0 0 45px #2a9dff2b;background:linear-gradient(145deg,#fff,#54ccff,#176bff) text;font-family:Arial,sans-serif;font-size:clamp(80px,9vw,135px);font-weight:300}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:45px;display:grid}.service-card{border:1px solid var(--line);background:linear-gradient(145deg,#1f50903d,#03102699);border-radius:14px;min-height:292px;padding:32px 27px;transition:transform .3s,border-color .3s;position:relative;overflow:hidden}.service-card:hover{border-color:#50c1ffa6;transform:translateY(-7px)}.service-card:after{content:"";background:radial-gradient(circle,#1288ff33,#0000 70%);width:190px;height:190px;position:absolute;bottom:-85px;right:-90px}.service-card-icon{color:#63d7ff;background:#083a7166;border:1px solid #68caff73;border-radius:14px;place-items:center;width:55px;height:55px;margin-bottom:26px;display:grid}.service-card-icon svg{stroke:currentColor;stroke-width:1.7px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:27px;height:27px}.service-card h3{margin:0 0 13px;font-size:21px}.service-card p{color:#acc2d8;margin:0;font-size:14px;line-height:1.9}.approach{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-top:55px;display:grid}.approach-item{padding:36px 30px 40px 0}.approach-item+.approach-item{border-left:1px solid var(--line);padding-left:30px}.approach-num{letter-spacing:.2em;color:#5cccfb;font:600 13px Arial,sans-serif}.approach-item h3{margin:20px 0 11px;font-size:19px}.approach-item p{color:#b2c5d8;margin:0;font-size:14px;line-height:1.9}.contact-section{text-align:center;border-top:1px solid var(--line);background:radial-gradient(at 50% 120%,#016ae140,#0000 60%),#061930}.contact-section .section-lead{margin:0 auto 30px}.mail-link{letter-spacing:.04em;border-bottom:1px solid #88dbff80;padding-bottom:8px;font-family:Arial,sans-serif;font-size:clamp(20px,3.5vw,35px);font-weight:600;display:inline-block}.mail-link:hover{color:#6cddff}.contact-note{color:#82a3c2;margin-top:18px;font-size:12px}.footer{background:#030e1d;border-top:1px solid #6ea5d61f;padding:30px 0}.footer-row{justify-content:space-between;align-items:center;gap:24px;display:flex}.footer .brand{font-size:16px}.footer .brand-mark{margin-right:-6px;transform:scale(.65)}.copyright{color:#8099b2;font:12px Arial,sans-serif}.js .reveal{opacity:0;transition:opacity .75s,transform .75s;transform:translateY(24px)}.js .reveal.is-visible{opacity:1;transform:none}@keyframes fromLeft{0%{opacity:0;filter:blur(11px);transform:translate(-85px)}70%{opacity:1}to{opacity:1;filter:none;transform:none}}@keyframes fromRight{0%{opacity:0;filter:blur(11px);transform:translate(85px)}70%{opacity:1}to{opacity:1;filter:none;transform:none}}@keyframes crossBurst{0%{opacity:0;transform:scale(.65)}80%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes drawLine{to{stroke-dashoffset:0}}@keyframes glowBreath{0%,to{opacity:.6;transform:scale(.9)}50%{opacity:1;transform:scale(1.16)}}@keyframes fadeDown{0%{opacity:0;transform:translateY(-23px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes heroZoom{0%{opacity:.6;transform:scale(1.07)}to{opacity:1;transform:scale(1)}}@keyframes bob{0%,to{transform:translateY(0)rotate(45deg)}50%{transform:translateY(7px)rotate(45deg)}}@keyframes rotate{to{transform:rotate(360deg)}}@media (width<=980px){.header-inner{width:calc(100% - 44px)}.site-nav{gap:17px}.site-nav a{font-size:12px}.hero{height:85svh;min-height:700px}.hero-content{margin-top:50px}.cross-wrap{height:170px}.cross-wrap svg{width:130px;height:130px}.concept-word{font-size:clamp(42px,8vw,86px)}.vision-layout{gap:5%}}@media (width<=700px){.container{width:calc(100% - 36px)}.header-inner{width:calc(100% - 36px);height:76px}.brand{font-size:19px}.brand-mark{margin-right:-6px;transform:scale(.8)}.menu-toggle{z-index:6;display:flex}.site-nav{background:#03132bf7;border:1px solid #6fbef345;border-radius:12px;flex-direction:column;align-items:stretch;gap:0;padding:10px 18px;display:none;position:absolute;top:70px;left:18px;right:18px;box-shadow:0 18px 40px #00000059}.site-nav.is-open{display:flex}.site-nav a{padding:15px 8px;font-size:15px}.site-nav .header-cta{background:0 0;border:0;border-radius:0}.hero{height:100svh;min-height:680px;max-height:900px}.hero-bg{background-position:50%}.hero:before{background:linear-gradient(#00081585,#010e2454 38%,#000a1ca8 82%,#020d20)}.hero-content{width:calc(100% - 24px);margin-top:40px}.eyebrow{letter-spacing:.28em;margin-bottom:23px;font-size:10px}.concept{grid-template-columns:1fr .68fr 1fr;width:100%}.concept-word{letter-spacing:0;text-shadow:0 2px 15px #00182e,0 0 24px #169bffb3;font-size:clamp(40px,10vw,67px)}.cross-wrap{height:96px}.cross-wrap svg{width:80px;height:80px}.hero-subtitle{letter-spacing:.07em;margin-top:15px;font-size:clamp(20px,5vw,28px)}.hero-copy{max-width:310px;margin-top:20px;font-size:13px;line-height:1.85}.hero-actions{flex-direction:column;gap:12px;margin-top:27px}.button{width:min(290px,100%);padding:13px 19px}.hero-bottom{bottom:26px}.section{padding:75px 0}.vision-layout{grid-template-columns:1fr}.vision-mark{width:230px;margin:24px auto 0}.cards{grid-template-columns:1fr;gap:15px;margin-top:32px}.service-card{min-height:230px;padding:26px}.service-card-icon{margin-bottom:20px}.approach{grid-template-columns:1fr}.approach-item{padding:27px 0}.approach-item+.approach-item{border-left:0;border-top:1px solid var(--line);padding:27px 0}.footer-row{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js .reveal{opacity:1;transform:none}.cross-wrap .cross-line{stroke-dashoffset:0}}
