:root{--sns-navy:#183174;--sns-blue:#526bd0;--sns-ink:#142451;--sns-pale:#eef2ff;--sns-line:#dce3f5;--sns-green:#9fc56f}.sns-page{overflow:hidden;background:#fff;color:var(--sns-ink)}.sns-page h1,.sns-page h2,.sns-page h3{font-family:Georgia,'Times New Roman',serif}.sns-hero{display:grid;grid-template-columns:52% 48%;min-height:700px;background:linear-gradient(140deg,#142b69,#4f69cb)}.sns-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:95px clamp(40px,7vw,125px);color:#fff}.sns-hero-copy>span,.sns-intro span,.sns-services-heading>span,.sns-closing span{font-size:.8rem;font-weight:800;letter-spacing:.2em}.sns-hero-copy>span{color:#c9d3ff}.sns-hero h1{margin:22px 0 28px;font-size:clamp(3.6rem,5.3vw,6.6rem);line-height:.96;letter-spacing:-.045em}.sns-hero h1 em{color:#c9d4ff;font-weight:400}.sns-hero p{max-width:680px;margin:0;color:#eef2ff;font-size:1.12rem;line-height:1.75}.sns-hero-copy>div{display:flex;align-items:center;gap:27px;flex-wrap:wrap;margin-top:36px}.sns-primary{display:inline-flex;gap:30px;padding:19px 25px;background:#fff;color:var(--sns-navy);font-weight:800;text-decoration:none;box-shadow:0 15px 36px rgba(5,17,54,.24)}.sns-phone{color:#fff;font-weight:800;text-underline-offset:6px}.sns-hero figure{position:relative;margin:0;min-height:700px;overflow:hidden}.sns-hero figure>img{width:100%;height:100%;object-fit:cover}.sns-hero figcaption{position:absolute;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:5px;padding:24px 32px;background:rgba(16,36,86,.9);color:#fff}.sns-hero figcaption span{color:#dce4ff}.sns-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px;max-width:1320px;margin:auto;padding:125px 40px}.sns-intro span,.sns-services-heading>span,.sns-closing span{color:var(--sns-blue)}.sns-intro h2,.sns-services-heading h2,.sns-closing h2{font-size:clamp(2.8rem,4.6vw,5.1rem);line-height:1.04;margin:18px 0 0}.sns-intro p{font-size:1.06rem;line-height:1.82;color:#596784;margin:0 0 20px}.sns-services{padding:110px max(25px,6vw) 125px;background:linear-gradient(180deg,#f0f3ff,#fff)}.sns-services-heading{max-width:900px;margin:0 auto 62px;text-align:center}.sns-services-heading p{max-width:720px;margin:22px auto 0;color:#596784;font-size:1.08rem;line-height:1.72}.sns-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;max-width:1420px;margin:auto}.sns-grid article{display:grid;grid-template-columns:47% 53%;min-height:400px;overflow:hidden;background:#fff;border:1px solid var(--sns-line);box-shadow:0 18px 48px rgba(24,49,116,.1);transition:transform .3s ease,box-shadow .3s ease}.sns-grid article:hover{transform:translateY(-6px);box-shadow:0 27px 62px rgba(24,49,116,.17)}.sns-grid img{width:100%;height:100%;min-height:400px;object-fit:cover}.sns-grid article>div{display:flex;flex-direction:column;justify-content:center;padding:34px}.sns-grid article span{color:var(--sns-blue);font-size:.8rem;font-weight:900}.sns-grid h3{margin:14px 0 13px;color:var(--sns-navy);font-size:1.72rem;line-height:1.16}.sns-grid p{margin:0 0 24px;color:#596784;line-height:1.7}.sns-grid a{margin-top:auto;color:var(--sns-navy);font-weight:800;text-decoration:none}.sns-grid a b{margin-left:10px}.sns-grid .sns-wide{grid-column:1/-1;grid-template-columns:50% 50%}.sns-grid .sns-education{grid-column:1/-1;display:block;min-height:0;background:linear-gradient(135deg,#172f70,#526bd0);color:#fff}.sns-grid .sns-education>div{display:grid;grid-template-columns:.1fr .55fr 1fr .8fr;align-items:center;gap:28px;padding:42px 50px}.sns-grid .sns-education span,.sns-grid .sns-education h3,.sns-grid .sns-education p,.sns-grid .sns-education a{color:#fff}.sns-grid .sns-education h3{margin:0}.sns-grid .sns-education p{margin:0;color:#edf1ff}.sns-grid .sns-education ul{margin:0;padding-left:20px;line-height:1.75;color:#eef2ff}.sns-grid .sns-education a{margin:0;text-align:right}.sns-closing{display:flex;align-items:center;justify-content:space-between;gap:60px;padding:100px max(30px,8vw);background:#fff}.sns-closing>div{max-width:900px}.sns-closing p{max-width:760px;color:#596784;font-size:1.08rem;line-height:1.75}.sns-closing>a{flex:none;display:inline-flex;gap:28px;padding:20px 26px;background:var(--sns-navy);color:#fff;text-decoration:none;font-weight:800}
@media(max-width:1120px){.sns-grid article{grid-template-columns:1fr}.sns-grid img{height:290px;min-height:290px}.sns-grid .sns-wide{grid-template-columns:1fr 1fr}.sns-grid .sns-education>div{grid-template-columns:.15fr .7fr 1fr}.sns-grid .sns-education a{grid-column:2/-1;text-align:left}}
@media(max-width:900px){.sns-hero{grid-template-columns:1fr}.sns-hero figure{min-height:470px}.sns-intro{grid-template-columns:1fr;gap:36px;padding:85px 28px}.sns-grid{grid-template-columns:1fr}.sns-grid .sns-wide{grid-column:auto;grid-template-columns:1fr}.sns-grid .sns-education{grid-column:auto}.sns-closing{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.sns-hero-copy{padding:66px 22px}.sns-hero h1{font-size:clamp(3rem,14vw,4.5rem)}.sns-hero-copy>div{align-items:flex-start;flex-direction:column}.sns-hero figure{min-height:360px}.sns-hero figcaption{padding:20px 22px}.sns-intro{padding:72px 22px}.sns-intro h2,.sns-services-heading h2,.sns-closing h2{font-size:2.65rem}.sns-services{padding:78px 19px 88px}.sns-services-heading{margin-bottom:38px}.sns-grid article>div{padding:28px 24px 32px}.sns-grid img{height:250px;min-height:250px}.sns-grid .sns-education>div{display:block;padding:34px 26px}.sns-grid .sns-education h3{margin:12px 0}.sns-grid .sns-education p,.sns-grid .sns-education ul{margin-bottom:22px}.sns-closing{padding:78px 22px}.sns-closing>a{width:100%;box-sizing:border-box;justify-content:center}}

/* v10.34 refined motion and interaction */
.sns-hero{position:relative;isolation:isolate}.sns-hero:before{content:"";position:absolute;z-index:0;width:460px;height:460px;left:35%;bottom:-310px;border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 0 65px rgba(255,255,255,.025),0 0 0 130px rgba(255,255,255,.02);pointer-events:none}.sns-hero-copy,.sns-hero figure{position:relative;z-index:1}.sns-loaded .sns-hero-copy>span{animation:snsFadeUp .55s ease both}.sns-loaded .sns-hero h1{animation:snsFadeUp .75s .08s cubic-bezier(.2,.7,.25,1) both}.sns-loaded .sns-hero-copy>p{animation:snsFadeUp .75s .17s ease both}.sns-loaded .sns-hero-copy>div{animation:snsFadeUp .75s .25s ease both}.sns-loaded .sns-hero figure{animation:snsHeroImage 1s .08s cubic-bezier(.2,.7,.25,1) both}.sns-hero figure>img{transition:transform 1.1s cubic-bezier(.2,.7,.25,1),filter .45s ease}.sns-hero figure:hover>img{transform:scale(1.035);filter:saturate(1.04)}.sns-hero figcaption{backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.sns-primary,.sns-closing>a{position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.sns-primary:before,.sns-closing>a:before{content:"";position:absolute;top:0;bottom:0;left:-80%;width:48%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);transition:left .65s ease}.sns-primary:hover,.sns-closing>a:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(10,27,74,.24)}.sns-primary:hover:before,.sns-closing>a:hover:before{left:135%}.sns-phone{transition:color .2s ease,transform .2s ease}.sns-phone:hover{color:#d9e1ff;transform:translateX(3px)}
.sns-grid article{position:relative;isolation:isolate}.sns-grid article:before{content:"";position:absolute;z-index:2;inset:0;opacity:0;pointer-events:none;background:radial-gradient(380px circle at var(--sns-x,50%) var(--sns-y,50%),rgba(111,137,239,.12),transparent 55%);transition:opacity .3s ease}.sns-grid article:hover:before{opacity:1}.sns-grid article>img{transition:transform .7s cubic-bezier(.2,.7,.25,1),filter .35s ease}.sns-grid article:hover>img{transform:scale(1.045);filter:saturate(1.05)}.sns-grid article>div{position:relative;z-index:3}.sns-grid article span{display:inline-flex;align-items:center;gap:10px}.sns-grid article span:after{content:"";width:31px;height:2px;background:var(--sns-green);transform-origin:left;transition:transform .3s ease}.sns-grid article:hover span:after{transform:scaleX(1.65)}.sns-grid article a{display:inline-flex;align-items:center;gap:5px;width:max-content;border-bottom:1px solid transparent;padding-bottom:4px;transition:gap .25s ease,border-color .25s ease,color .25s ease}.sns-grid article a:hover{gap:11px;border-color:var(--sns-green);color:#304ca7}.sns-education a:hover{color:#fff!important;border-color:#c9d4ff!important}
.sns-reveal{opacity:0;transform:translateY(34px);transition:opacity .72s var(--sns-delay,0ms) ease,transform .72s var(--sns-delay,0ms) cubic-bezier(.2,.7,.25,1)}.sns-reveal.sns-visible{opacity:1;transform:none}.sns-intro>div:first-child.sns-reveal{transform:translateX(-34px)}.sns-intro>div:last-child.sns-reveal{transform:translateX(34px)}.sns-intro>div.sns-visible{transform:none}.sns-services-heading:after{content:"";display:block;width:68px;height:3px;margin:27px auto 0;background:linear-gradient(90deg,var(--sns-green),var(--sns-blue));transform:scaleX(0);transition:transform .7s .3s ease}.sns-services-heading.sns-visible:after{transform:scaleX(1)}
@keyframes snsFadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes snsHeroImage{from{opacity:0;transform:translateX(45px) scale(1.02)}to{opacity:1;transform:none}}
@media(max-width:620px){.sns-hero:before{width:280px;height:280px;left:15%;bottom:-220px}.sns-reveal{transform:translateY(24px)}.sns-intro>div:first-child.sns-reveal,.sns-intro>div:last-child.sns-reveal{transform:translateY(24px)}.sns-grid article:hover{transform:none}.sns-grid article:hover>img{transform:none}}
@media(prefers-reduced-motion:reduce){.sns-loaded .sns-hero-copy>span,.sns-loaded .sns-hero h1,.sns-loaded .sns-hero-copy>p,.sns-loaded .sns-hero-copy>div,.sns-loaded .sns-hero figure{animation:none!important}.sns-reveal{opacity:1!important;transform:none!important;transition:none!important}.sns-hero figure>img,.sns-grid article,.sns-grid article>img,.sns-primary,.sns-closing>a{transition:none!important}}
