@font-face{font-family:GT;src:url('../v13/gt-sans-jp.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}html{font-size:min(1.0627vw,15.3px);scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;color:#0d204c;font-family:GT,'Yu Gothic',sans-serif;line-height:1.7;background:#fff}a{color:inherit;text-decoration:none}p,h1,h2,h3,figure{margin:0}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #fc8500;outline-offset:4px}.header{height:4rem;display:flex;align-items:center;gap:1.6rem;padding:0 5.8rem;max-width:1440px;margin:auto}.brand{font-size:2.1rem;font-weight:900;letter-spacing:-.12rem;white-space:nowrap}.tagline{font-size:.7rem;flex:1;white-space:nowrap}.header nav{display:flex;gap:2.8rem;font-size:.75rem;font-weight:700}.button{background:#5737fa;color:white;display:inline-flex;align-items:center;justify-content:center;gap:1.8rem;border-radius:4rem;padding:1.1rem 2rem;font-size:1.15rem;font-weight:700;min-width:19.3rem;transition:background .2s,transform .2s}.button:hover{background:#3620c7;transform:translateY(-2px)}.button.small{font-size:.8rem;min-width:12.5rem;padding:.6rem 1.6rem}.button span{font-size:1.6em;font-weight:400;line-height:1}main{max-width:1440px;margin:auto}.hero{height:36.4rem;position:relative;overflow:hidden}.hero-art{position:absolute;right:0;top:0;width:65.14%;height:100%}.hero-art>.crop{height:100%;width:100%}.crop{display:block;position:relative;overflow:hidden;width:100%}.crop img{position:absolute;max-width:none!important;height:auto;display:block}.hero-copy{width:36%;position:relative;z-index:1;padding:3.9rem 0 0 5.8rem;background:#ffffffed;height:100%}.eyebrow{font-size:1rem;font-weight:700;letter-spacing:.03em;white-space:nowrap}.hero h1{font-size:4.4rem;line-height:1.35;letter-spacing:.02em;margin:.55rem 0}.rule{width:8.8rem;height:2px;background:#7967fa;margin:.5rem 0 1.3rem}.hero h2{font-size:1.92rem;line-height:1.5;letter-spacing:.04em;margin-bottom:1.2rem}.hero-copy>p:not(.eyebrow){font-size:.98rem;line-height:1.75;margin-bottom:1.55rem;color:#50618d}.section{padding:2rem 5.7rem}.section-heading{display:flex;align-items:center;gap:2.9rem;margin-bottom:2rem}.number{font-size:4.4rem;font-weight:800;line-height:1.15;color:#c9c5ff;display:block;position:relative;padding-bottom:.7rem}.number:after{content:'';height:1px;background:#8275f4;position:absolute;bottom:0;left:0;width:4.3rem}.section-heading h2{font-size:2.65rem;line-height:1.35;font-weight:800;letter-spacing:.025em}.section-heading p{font-size:1.03rem;color:#5c6f96;margin-top:.4rem}.split{display:grid;grid-template-columns:17rem 1fr;gap:1.5rem}.split .section-heading{display:block;margin:0}.split .number{width:max-content;margin-bottom:1.2rem}.split .section-heading h2{font-size:2.5rem;white-space:nowrap}.issues{padding:2.2rem 4.2rem 2rem 5.7rem;background:#f5f7fc;min-height:19.1rem;gap:1.5rem}.issue-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.issue-grid article{background:white;border:1px solid #e8edf5;border-radius:1rem;padding:1.5rem .8rem 1.2rem;text-align:center;box-shadow:0 0 1rem #c5cddd10}.issue-grid .crop{width:4.4rem;margin:0 auto 1.3rem}.issue-grid h3{font-size:1.18rem;line-height:1.55;min-height:3.5rem}.issue-grid p{font-size:1rem;line-height:1.75;color:#4b608a;margin-top:.7rem}.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2.1rem}.work-grid article{overflow:hidden;border:1px solid #e9edf5;border-radius:.7rem}.work-grid article>div{padding:.8rem 1.15rem 1rem}.work-grid h3{font-size:1.15rem;white-space:nowrap;letter-spacing:-.025em}.work-grid p{font-size:1rem;line-height:1.7;color:#50618d;margin-top:.65rem}.process{padding-top:.3rem;padding-bottom:1.9rem;align-items:center;grid-template-columns:15rem 1fr;gap:1.5rem}.steps{border:1px solid #e7ebf4;border-radius:1rem;display:grid;grid-template-columns:repeat(5,1fr);padding:1.1rem .4rem 1.3rem}.steps article{text-align:center;position:relative}.steps small{display:block;color:#6350fe;font-size:.8rem;letter-spacing:.06em;margin-bottom:.4rem}.steps .crop{width:4.3rem;margin:0 auto .7rem}.steps h3{font-size:1.05rem;white-space:nowrap}.steps p{font-size:.87rem;line-height:1.75;color:#687a9c;margin-top:.8rem}.steps article:not(:last-child):after{content:'›';position:absolute;right:-.3rem;top:2.7rem;font-size:2rem;color:#6d52ff}.cases{position:relative;padding-top:1.1rem;padding-bottom:1.7rem}.cases .section-heading{margin-bottom:1.6rem}.text-link{position:absolute;right:5.7rem;top:3.9rem;font-size:.95rem;color:#5b3cff;border-bottom:1px solid #a399ff}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.7rem}.case-grid article{border:1px solid #e7ebf4;border-radius:.8rem;padding:.7rem .8rem 1.1rem;box-shadow:0 .2rem .7rem #12315b04}.case-photo{position:relative;margin-bottom:1.2rem}.case-photo .crop{border-radius:.5rem}.case-photo>span:not(.crop){position:absolute;bottom:-.65rem;left:.6rem;font-size:.85rem;color:white;background:#5b3cfa;border-radius:2rem;padding:.25rem 1.5rem}.case-grid h3{font-size:1.25rem;line-height:1.5;padding:0 .6rem}.case-grid p{font-size:1rem;line-height:1.65;color:#5c6e95;margin:.5rem .6rem 0}.faq{grid-template-columns:21rem 1fr;padding-top:.2rem;padding-bottom:1.8rem;align-items:center;gap:1.3rem}.questions{border:1px solid #e7ebf4;border-radius:1rem;padding:.2rem 1.8rem}.questions details+details{border-top:1px solid #edf0f5}.questions summary{display:flex;gap:1.4rem;align-items:center;list-style:none;cursor:pointer;font-size:.95rem;min-height:2.65rem;padding:.45rem 0}.questions summary::-webkit-details-marker{display:none}.questions summary>span{background:#6246fc;color:white;border-radius:50%;width:1.7rem;height:1.7rem;font-size:.85rem;display:grid;place-items:center}.questions summary b{margin-left:auto;font-size:1.2rem}.questions details[open] summary b{transform:rotate(180deg)}.questions details>p{font-size:1.1rem;line-height:1.8;padding:1rem 0 1.5rem 3.1rem;color:#52628a}.contact{padding-top:.3rem;padding-bottom:2rem;align-items:center}.contact-options{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:1rem}.contact-options>a{border:1px solid #e7ebf4;border-radius:1rem;min-height:8rem;padding:1.7rem .8rem;display:flex;flex-direction:column;justify-content:center;align-items:center}.contact-options small{font-size:.85rem}.contact-options strong{font-size:1.15rem;color:#6045ff;margin-top:1rem}.contact-options .button{flex-direction:row;font-size:1.55rem;min-width:0;gap:1rem}footer{background:#102447;color:white;max-width:1440px;margin:auto;padding:1.8rem 5.7rem;display:flex;align-items:center;gap:3rem;min-height:7.5rem}footer p,footer small,footer nav,footer>div>a:not(.brand){font-size:.7rem}footer nav{display:flex;gap:2rem;flex:1;justify-content:center}.back{border-radius:50%;background:white;color:#352689;width:3.3rem;height:3.3rem;display:grid;place-items:center;font-size:1.6rem}
@media(max-width:700px){html{font-size:10px}.header{height:68px;padding:0 20px;gap:10px}.header .brand{font-size:22px}.tagline,.header nav{display:none}.header .button{margin-left:auto;min-width:0;font-size:11px;padding:9px 12px}.hero{height:auto;display:flex;flex-direction:column}.hero-art{position:relative;order:2;width:100%;height:auto}.hero-art>.crop{height:auto;aspect-ratio:613/364}.hero-copy{padding:28px 24px 30px;width:100%}.eyebrow{font-size:10px;white-space:normal}.hero h1{font-size:42px}.hero h2{font-size:21px}.hero-copy>p:not(.eyebrow){font-size:13px;line-height:1.85}.button{font-size:14px;min-height:44px}.section,.issues{padding:30px 22px}.split{display:block}.section-heading,.split .section-heading{display:flex;gap:18px;align-items:center;margin-bottom:22px}.number,.split .number{font-size:40px;margin:0;flex:none}.section-heading h2,.split .section-heading h2{font-size:25px;white-space:normal}.section-heading p{font-size:12px}.issue-grid,.work-grid{grid-template-columns:1fr 1fr;gap:12px}.issue-grid article{padding:17px 8px}.issue-grid h3{font-size:12px}.issue-grid p{font-size:11px}.work-grid h3{white-space:normal;font-size:13px;line-height:1.6}.work-grid p{font-size:11px}.work-grid article>div{padding:12px}.steps{grid-template-columns:1fr;padding:0 16px}.steps article{display:grid;grid-template-columns:42px 1fr;gap:4px 16px;text-align:left;padding:18px 0;align-items:center}.steps article+article{border-top:1px solid #e7ebf4}.steps small{grid-column:1;font-size:9px}.steps .crop{grid-column:1;grid-row:2/4;margin:0}.steps h3{grid-column:2;grid-row:1/3;font-size:15px;white-space:normal}.steps p{grid-column:2;font-size:12px;margin:0}.steps article:not(:last-child):after{display:none}.text-link{position:static;display:block;width:max-content;font-size:12px;margin:-10px 0 18px 61px}.case-grid{grid-template-columns:1fr;gap:18px}.case-grid article{padding:10px 10px 16px}.case-grid h3{font-size:16px}.case-grid p{font-size:13px}.case-photo>span:not(.crop){font-size:11px}.questions{padding:5px 12px}.questions summary{font-size:12px;min-height:48px;gap:9px}.questions summary>span{flex:none;width:20px;height:20px;font-size:10px}.questions details>p{font-size:13px;padding-left:29px}.contact-options{grid-template-columns:1fr 1fr;gap:12px}.contact-options small{font-size:10px}.contact-options strong{font-size:12px;overflow-wrap:anywhere}.contact-options .button{grid-column:1/-1;font-size:18px;min-height:64px}footer{padding:24px;display:flex;flex-wrap:wrap;gap:18px}footer nav{flex-basis:100%;justify-content:flex-start;gap:18px}footer p,footer small,footer nav,footer>div>a:not(.brand){font-size:10px}.back{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.section{position:relative}.deco{position:absolute;width:4rem;pointer-events:none;z-index:0}.hero-deco{left:0;top:2rem;width:3.8rem}.right-deco{right:0;bottom:-1rem}.left-deco{left:0;bottom:1rem}.section-heading,.work-grid,.case-grid,.questions,.steps{position:relative;z-index:1}@media(max-width:700px){.deco{width:22px;opacity:.7}}
/* Reference v2 desktop rhythm: measured at a 941px canvas. */
@media(min-width:701px){
.hero-copy{width:34.86%;padding-top:3.9rem}.hero h1{font-size:4.4rem;letter-spacing:-.025em}.hero-copy>p:not(.eyebrow){font-size:.94rem}.hero h2{font-size:1.85rem}
.issues{height:19.1rem;min-height:0}.issue-grid article{padding:1.1rem .7rem .7rem}.issue-grid .crop{margin-bottom:.65rem}.issue-grid h3{font-size:1.13rem;min-height:3.3rem}.issue-grid p{font-size:.94rem;margin-top:.5rem}
.works{height:30.2rem;padding-top:1.9rem;padding-bottom:2rem}.works .section-heading{margin-bottom:1.6rem}.work-grid{gap:2.1rem}.work-grid article>div{padding:.7rem .9rem 1rem}.work-grid h3{font-size:1.07rem}.work-grid p{font-size:.94rem;line-height:1.65}
.process{height:16.7rem;padding-top:0;padding-bottom:1.7rem}.steps p{font-size:.83rem}.steps{padding:.9rem .4rem 1rem}
.cases{height:26.1rem;padding-top:1rem;padding-bottom:1.6rem}.case-grid p{font-size:.94rem}.cases .section-heading{margin-bottom:1.5rem}
.faq{height:15.4rem;padding-top:.4rem;padding-bottom:1.4rem}.faq:has(details[open]){height:auto;min-height:15.4rem}.faq .section-heading p{font-size:.95rem}.questions summary{min-height:2.4rem;padding:.3rem 0}
.contact{height:11.8rem;padding-top:0;padding-bottom:1.3rem;grid-template-columns:15.5rem 1fr}.contact .number{font-size:4rem;margin-bottom:.4rem}.contact .section-heading h2{font-size:2.4rem}.contact .section-heading p{font-size:.95rem}.contact-options>a{min-height:8rem}
footer{height:7.4rem;min-height:0;padding-top:1rem;padding-bottom:1rem}
}
