.ct{position:relative;overflow:hidden;isolation:isolate;container-type:inline-size;background:var(--bg);--ct:1;--R:110cqw;--s:12.02cqw;--hh:calc(var(--s) + 10px);--orb:min(58cqw,88vh);--vis:.38;--gl:3.2cqw;--rim:1.5px;--mx:44cqw}
.ct-orb{position:absolute;z-index:0;left:50%;bottom:calc(var(--hh) - var(--orb));width:var(--orb);aspect-ratio:1;transform:translate3d(-50%,calc(var(--ct) * var(--vis) * var(--orb) * -1),0);will-change:transform;pointer-events:none}
.ct-hz{position:absolute;z-index:1;left:50%;top:calc(100% - var(--hh));width:calc(var(--R) * 2);aspect-ratio:1;margin-left:calc(var(--R) * -1);border-radius:50%;background:var(--foot);pointer-events:none}
.ct-hz::before,.ct-hz::after{content:"";position:absolute;border-radius:50%;pointer-events:none;-webkit-mask-image:radial-gradient(var(--mx) 30cqw at 50% 0,#000 0%,rgba(0,0,0,.6) 40%,transparent 100%);mask-image:radial-gradient(var(--mx) 30cqw at 50% 0,#000 0%,rgba(0,0,0,.6) 40%,transparent 100%)}
.ct-hz::before{inset:calc(var(--gl) * -1);background:radial-gradient(closest-side,transparent calc(100% - var(--gl) - 1px),rgba(0,180,255,.55) calc(100% - var(--gl)),rgba(0,180,255,.16) calc(100% - var(--gl) * .62),rgba(0,180,255,0) 100%);opacity:calc((var(--ct) - .2) * 1.25)}
.ct-hz::after{inset:calc(var(--rim) * -1);border:var(--rim) solid #E9F8FF;background:radial-gradient(closest-side,rgba(0,180,255,0) calc(100% - var(--gl) * 1.4),rgba(0,180,255,.11) calc(100% - 1px));opacity:calc((var(--ct) - .35) * 1.6)}
.ct-in{--hfs:min(88px,calc((100vw - 2 * var(--pad) - 492px - 4vw) / 9.6));position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:4vw;align-items:start;padding-top:var(--sec);padding-bottom:calc(var(--hh) + var(--orb) * var(--vis) + clamp(44px,3.6vw,80px))}
.ct-h{font-size:var(--hfs);font-weight:700;line-height:1.46;letter-spacing:-.02em;font-feature-settings:"palt";color:#000}
.ct-l{display:block;white-space:nowrap}
.ct-em{position:relative;display:inline-block;line-height:1.2}
.ct-wave{position:absolute;left:0;top:calc(100% - .02em);width:calc(100% - .5em);height:4px;overflow:visible;pointer-events:none}
.ct-wave path{stroke:var(--blue);stroke-linecap:butt;stroke-dasharray:1 2;stroke-dashoffset:1.02}
.ct-wave path{stroke-width:2;transition:stroke-dashoffset 1s var(--out) .15s}
.ct-wave.is-in path{stroke-dashoffset:0}
.ct-body{padding-top:calc(var(--hfs) * .156 - 8px)}
.ct-tx{font-size:clamp(16px,1.112vw,17px);font-weight:500;line-height:1.9;color:#000}
.ct-btn{margin-top:var(--g-body-btn)}
.ftr{container-type:inline-size;padding-top:clamp(48px,4.4vw,72px)}
@media (max-width:1199px){
.ct{--orb:min(56cqw,64vh)}
.ct-in{--hfs:clamp(28px,6.4vw,72px);grid-template-columns:1fr}
.ct-body{margin-top:clamp(48px,6vw,72px);padding-top:0}
}
@media (max-width:991px){
.ftr{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
}
@media (max-width:767px){
.ct{--R:100cqw;--s:13.4cqw;--hh:calc(var(--s) + 8px);--orb:96cqw;--vis:.4;--gl:7cqw;--rim:1.25px;--mx:62cqw}
.ct-in{--hfs:clamp(28px,9.2vw,38px);padding-bottom:calc(var(--hh) + var(--orb) * var(--vis) + 48px)}
.ct-h{line-height:1.5}
.ct-em{line-height:1.3}
.ct-body{margin-top:44px}
.ct-tx{font-size:16px}
.ftr{padding-top:44px}
}
@media (max-width:767px){
.ct-body{margin-top:32px}
}
.ct-in{--hfs:min(60px,calc((100vw - 2 * var(--pad) - 492px - 4vw) / 12))}
.ct-body{max-width:492px}
@media (max-width:1199px){.ct-in{--hfs:clamp(28px,5.2vw,48px)}}
@media (max-width:767px){.ct-in{--hfs:min(34px,calc((100vw - 2 * var(--pad)) / 12))}}
