:root{--navy:#0b1f3a;--blue:#1769e0;--sky:#eaf3ff;--ink:#17243a;--muted:#637087;--line:#dfe6ef;--paper:#f8fafc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans JP,sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}.preview{color:#705315;text-align:center;background:#fff7df;border-bottom:1px solid #f1dfaa;padding:7px 5vw;font-size:12px}.preview b{color:#fff;letter-spacing:.12em;background:#e9b731;border-radius:99px;margin-right:8px;padding:3px 7px;font-size:9px}header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:20;background:#fffffff2;border-bottom:1px solid #dfe6efcc;justify-content:space-between;align-items:center;height:82px;padding:0 6vw;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;display:flex}.brand i{background:linear-gradient(145deg,var(--blue),#4b9dff);color:#fff;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;font-size:22px;font-style:normal;font-weight:800;display:flex}.brand strong{font-size:14px;display:block}.brand small{color:var(--muted);letter-spacing:.08em;font-size:9px;display:block}nav{align-items:center;gap:32px;font-size:13px;font-weight:600;display:flex}.button{background:var(--blue);color:#fff;border-radius:8px;padding:11px 20px;font-weight:700;display:inline-flex}.button:hover{background:#0d57c5}.hero{background:linear-gradient(135deg,#f6faff,#fff 56%,#eef6ff);grid-template-columns:1.08fr .92fr;align-items:center;gap:7vw;min-height:660px;padding:90px 8vw 110px;display:grid;overflow:hidden}.eyebrow{color:var(--blue);letter-spacing:.18em;margin:0 0 18px;font-size:11px;font-weight:800}.hero h1{color:var(--navy);letter-spacing:-.05em;margin:0;font-size:clamp(39px,5vw,70px);line-height:1.25}.hero h1 span{color:var(--blue);position:relative}.hero h1 span:after{content:"";background:#a9d5ff;width:100%;height:5px;position:absolute;bottom:-6px;left:2px;transform:rotate(-2deg)}.lead{color:var(--muted);max-width:620px;margin:28px 0 34px;font-size:16px}.big{gap:40px;padding:14px 22px}.visual{aspect-ratio:1;max-width:500px;position:relative}.core{background:linear-gradient(145deg,var(--blue),#6cb5ff);color:#fff;z-index:3;border:14px solid #fff;border-radius:34%;justify-content:center;align-items:center;width:180px;height:180px;font-size:74px;font-weight:800;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-4deg);box-shadow:0 25px 70px #1769e040}.ring{border:1px solid #bcd6f3;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.r1{width:70%;height:70%}.r2{border-style:dashed;width:98%;height:98%}.chip{color:var(--blue);letter-spacing:.12em;z-index:5;background:#fff;border:1px solid #dce8f7;border-radius:16px;justify-content:center;align-items:center;width:100px;height:80px;font-size:12px;font-weight:800;display:flex;position:absolute;box-shadow:0 14px 40px #14375f1a}.c1{top:19%;left:4%;transform:rotate(-8deg)}.c2{top:30%;right:1%;transform:rotate(7deg)}.c3{bottom:10%;left:20%;transform:rotate(4deg)}.section{padding:110px 8vw}.section-head{justify-content:space-between;align-items:end;margin-bottom:52px;display:flex}.section h2,.contact h2{color:var(--navy);letter-spacing:-.04em;margin:0;font-size:clamp(32px,4vw,48px)}.section-head>p{color:var(--muted);max-width:430px}.services{background:var(--paper)}.cards{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.cards article{border:1px solid var(--line);background:#fff;border-radius:18px;min-height:330px;padding:30px;transition:all .2s;position:relative}.cards article:hover{transform:translateY(-4px);box-shadow:0 18px 45px #1e3c6417}.cards article>small{color:#9aa8b9;font-weight:700;position:absolute;top:21px;right:24px}.service-icon{background:var(--sky);border-radius:16px;justify-content:center;align-items:center;width:68px;height:68px;margin:18px 0 34px;display:flex}.service-icon span{border:3px solid var(--blue);width:23px;height:33px;display:block}.icon-02 span{border-radius:3px;width:38px;height:28px}.icon-03 span{border-width:0 0 3px;border-radius:50%;width:40px;height:24px}.cards h3{color:var(--navy);font-size:20px}.cards p,.muted{color:var(--muted);font-size:14px}.company{grid-template-columns:.8fr 1.2fr;gap:8vw;display:grid}.company em{color:#b9c6d7;margin-top:70px;font-size:clamp(22px,3vw,34px);font-weight:700;display:block}.company dl{margin:0}.company dl div{border-bottom:1px solid var(--line);grid-template-columns:130px 1fr;padding:22px 4px;display:grid}.company dt{color:var(--muted);font-size:12px;font-weight:700}.company dd{margin:0;font-size:14px}.company dd small{color:var(--muted);font-size:10px;display:block}.contact{background:var(--navy);color:#fff;grid-template-columns:1fr 1fr;align-items:center;gap:9vw;padding:85px 8vw;display:grid}.contact h2{color:#fff}.contact>div>p:last-child{color:#b9c7d9;font-size:14px}.contact-links{gap:12px;display:grid}.contact-links a{background:#ffffff14;border:1px solid #ffffff29;border-radius:12px;padding:17px 22px}.contact-links small{color:#9bb0c9;display:block}.contact-links strong{font-size:17px}.privacy{background:#f5f8fc;padding:65px 8vw}.privacy h2{font-size:20px}.privacy p{color:var(--muted);max-width:900px;font-size:13px}footer{justify-content:space-between;align-items:center;padding:38px 8vw;display:flex}footer>div:last-child{color:var(--muted);gap:28px;font-size:11px;display:flex}.brand i{letter-spacing:.04em;font-size:10px}.core{letter-spacing:-.05em;font-size:42px}@media (max-width:800px){header{height:70px;padding:0 5vw}.brand small,nav>a:not(.button){display:none}.brand strong{font-size:12px}nav{gap:0}.button{padding:9px 13px}.hero{grid-template-columns:1fr;min-height:auto;padding:70px 6vw}.visual{width:90%;max-width:360px;margin:auto}.core{width:130px;height:130px;font-size:30px}.chip{width:80px;height:62px}.section{padding:75px 6vw}.section-head{flex-direction:column;align-items:start}.cards{grid-template-columns:1fr}.cards article{min-height:270px}.company,.contact{grid-template-columns:1fr;gap:55px}.company em{margin-top:35px}.company dl div{grid-template-columns:90px 1fr}footer{flex-direction:column;align-items:start;gap:25px}footer>div:last-child{flex-direction:column;gap:5px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
