/* Service introduction: the user's supplied blue / mint reference. */
.intro{padding-top:74px;padding-inline:6vw;overflow:clip;color:#11284c}
.about-panel{position:relative;isolation:isolate}
.about-rings{position:absolute;z-index:-1;pointer-events:none;left:-11%;top:-190px;width:70%;height:calc(100% + 180px);max-width:none;overflow:visible}
.about-label{font-size:16px;gap:25px;margin-bottom:50px;line-height:1.5}
.about-label>span{font-size:18px;align-self:flex-start;min-width:23px;padding-bottom:8px;border-bottom-width:2px;color:#1854ef}
.about-label small{display:block;font-size:11px;letter-spacing:.18em;font-weight:700;color:#7095ef;margin-top:1px}
.intro-layout{grid-template-columns:1fr 1fr;gap:7vw;align-items:start}
.intro #about-title{font-size:clamp(68px,7.5vw,116px);line-height:1.26;letter-spacing:-.055em;white-space:normal;padding-top:14px}
.intro-title-lead{display:block;white-space:nowrap;font-size:.62em;line-height:1.5;letter-spacing:-.045em;margin-bottom:.1em}
.intro-title-main{display:block;color:#1854ef;letter-spacing:-.055em}
.intro-copy{font-size:clamp(14px,1.4vw,21px);line-height:1.95;padding-top:0}
.intro-copy p+p{margin-top:30px}
.intro-copy .intro-copy-lead{font-size:clamp(17px,1.65vw,25px);font-weight:700;line-height:1.85;letter-spacing:-.025em}
.intro .connection-diagram{display:grid;grid-template-columns:1fr 32px 1fr 32px 1fr;gap:18px;max-width:none;margin:58px -2.5vw 0;padding:0;background:none;border-radius:0}
.intro .connection-node{position:relative;display:grid;grid-template-columns:100px 1fr;align-items:center;gap:17px;min-width:0;min-height:184px;padding:45px 25px 24px;background:linear-gradient(135deg,#f8fbffdb,#eff7ffb8);border:1px solid #d2e3fc;border-radius:11px;text-align:left}
.connection-index{position:absolute;top:13px;left:23px;display:flex;align-items:center;gap:13px;font-size:17px;font-weight:700;color:#7095ef;line-height:1.5}
.connection-index:after{content:'';width:31px;height:1px;background:#8aaff8}
.intro .connection-node p{font-size:clamp(13px,1.1vw,17px);line-height:1.8}
.intro .connection-node b{font-size:clamp(22px,2.1vw,33px);line-height:1.55;letter-spacing:-.03em}
.intro .connection-arrow{font-size:34px;color:#1854ef;line-height:1;text-align:center}
.intro .node-shape{width:86px;height:86px;transform:none;margin:0;flex-shrink:0}
.intro .shape-history{width:70px;height:83px;margin-left:9px;border-radius:50% 50% 0 0;background:linear-gradient(145deg,#b4d1fd,#8eb3f6);box-shadow:10px 9px 0 -1px #1854ef}
.intro .shape-en{width:100px;height:95px}
.intro .shape-en:before,.intro .shape-en:after{box-sizing:border-box;width:78px;height:78px;border-width:18px;left:0;top:0;border-color:#1854ef}
.intro .shape-en:after{left:27px;top:22px;border-color:#98d8c2}
.intro .shape-next{background:linear-gradient(135deg,#b0e2d1,#8ed3bb);border-radius:50% 0 50% 50%}
.intro .shape-next:after{font-size:66px;font-weight:400;line-height:1;color:#1854ef}
.intro .possibility-scene{margin-top:110px}
@media(min-width:1600px){.intro .connection-diagram{margin-inline:-40px}.about-rings{width:950px;left:-130px}}
@media(min-width:1001px) and (max-width:1200px){.intro .connection-node{grid-template-columns:78px 1fr;gap:12px;padding-inline:18px;min-height:166px}.intro .node-shape{transform:scale(.8);transform-origin:left center;margin-right:-20px}.intro .connection-node b{font-size:22px}}
@media(max-width:1000px){
 .intro{padding-top:64px}
 .about-label{font-size:14px;margin-bottom:40px;gap:19px}
 .about-label>span{font-size:16px}
 .intro-layout{gap:36px}
 .intro #about-title{font-size:clamp(54px,7.3vw,73px);padding-top:12px;line-height:1.3}
 .intro-title-lead{font-size:.55em}
 .intro-copy{font-size:13px;line-height:2}
 .intro-copy .intro-copy-lead{font-size:16px;line-height:1.85}
 .intro-copy p+p{margin-top:24px}
 .intro .connection-diagram{grid-template-columns:1fr 23px 1fr 23px 1fr;gap:12px;margin-top:45px;margin-inline:-1vw}
 .intro .connection-node{display:flex;flex-direction:column;justify-content:center;gap:10px;min-height:205px;padding:38px 12px 20px;text-align:center}
 .connection-index{top:10px;left:15px;font-size:13px;gap:9px}
 .connection-index:after{width:23px}
 .intro .node-shape{transform:scale(.7);transform-origin:center;margin-block:-10px}
 .intro .connection-node p{font-size:11px;line-height:1.8}
 .intro .connection-node b{font-size:21px}
 .intro .connection-arrow{font-size:29px}
 .about-rings{top:-150px;left:-17%;width:84%;height:calc(100% + 160px)}
 .intro .possibility-scene{margin-top:80px}
}
@media(max-width:640px){
 .intro{padding-top:52px;padding-inline:24px}
 .about-label{font-size:13px;gap:17px;margin-bottom:26px}
 .about-label>span{font-size:15px;min-width:20px;padding-bottom:7px}
 .about-label small{font-size:9px;letter-spacing:.16em}
 .intro-layout{display:block}
 .intro #about-title{font-size:clamp(59px,17.2vw,92px);line-height:1.22;padding-top:0;letter-spacing:-.05em}
 .intro-title-lead{font-size:.48em;line-height:1.55;letter-spacing:-.045em;margin-bottom:.13em}
 .intro-title-main{letter-spacing:-.055em}
 .intro-copy{margin-top:34px;font-size:14px;line-height:2}
 .intro-copy .intro-copy-lead{font-size:17px;line-height:1.9}
 .intro-copy p+p{margin-top:22px}
 .about-rings{width:160%;height:780px;top:-160px;left:-42%}
 .intro .connection-diagram{grid-template-columns:1fr;gap:13px;margin:34px 0 0;max-width:none}
 .intro .connection-node{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:19px;min-height:154px;padding:35px 27px 21px;text-align:left}
 .connection-index{top:10px;left:20px;font-size:13px}
 .intro .node-shape{transform:scale(.85);margin:0;transform-origin:center}
 .intro .connection-node p{font-size:13px;line-height:1.9}
 .intro .connection-node b{font-size:26px}
 .intro .connection-arrow{transform:rotate(90deg);font-size:28px;line-height:1;width:34px;height:28px;justify-self:center}
 .connection-diagram.is-visible .connection-arrow{animation:none}
 .intro .possibility-scene{margin-top:55px}
}
@media(max-width:359px){.intro{padding-inline:20px}.intro #about-title{font-size:57px}.intro-title-lead{font-size:27px}.intro .connection-node{grid-template-columns:82px 1fr;gap:13px;padding-inline:20px}.intro .node-shape{transform:scale(.75);transform-origin:left center}.intro .connection-node b{font-size:23px}.intro .connection-node p{font-size:12px}.intro-copy{font-size:13px}.intro-copy .intro-copy-lead{font-size:16px}}
