.vision-wrap {padding: 24px 0;display: flex;flex-direction: column;gap: 193px;align-items: center;}
.vision-wrap .item {position: relative;width: 100%;}
.vision-wrap .item:before {content:"";position:absolute;bottom: -135px;left:50%;width:1px;height:80px;border-left:1.5px dashed #cbd5e1;transform:translateX(-50%);}
.vision-wrap .item:after{content:"";position:absolute;bottom:-60px;left:50%;width:5px;height:5px;background-color:#cbd5e1;border-radius:50%;transform:translateX(-60%);}

.vision-wrap .item:last-child:before {display: none;}
.vision-wrap .item:last-child:after {display: none;}

.vision-wrap .item .vision-tit {font-weight: 700;font-size: 28px;line-height: 145%;letter-spacing: -0.02em;text-align: center;color: #111111;margin: 0 0 24px;}
.vision-wrap .item .vision-box {background: #FFFFFF;border: 1px solid #F5F7FA;box-shadow: 4px 4px 44px 0px #1B23510A;border-radius: 5000px;padding: 40px 20px;min-height: 267px;box-sizing: border-box;max-width: 496px;display: flex;align-items: center;justify-content: center;flex-direction: column;gap: 4px;margin: 0 auto;}
.vision-wrap .item .vision-box .box-txt {position: relative;padding: 20px 0;}
.vision-wrap .item .vision-box .box-txt:before {content: "";background: url(/_res/csu/main/img/content/ico-vision01.png)no-repeat center center;width: 13px;height: 10px;position: absolute;top: -20px;left: 50%;transform: translatex(-50%);}
.vision-wrap .item .vision-box .box-txt:after {content: "";background: url(/_res/csu/main/img/content/ico-vision02.png)no-repeat center center;width: 13px;height: 10px;position: absolute;bottom: -20px;left: 50%;transform: translatex(-50%);}
.vision-wrap .item .vision-box .txt01 {font-weight: 600;font-size: 20px;line-height: 155%;letter-spacing: -0.02em;text-align: center;color: #333333;}
.vision-wrap .item .vision-box .txt02 {font-weight: 700;font-size: 24px;line-height: 145%;letter-spacing: -0.02em;text-align: center;color: #111111;}

.vision-wrap .item > ol { display: flex; gap: 20px; counter-reset: vision-count; list-style: none; margin: 0; padding: 40px 0; }
.vision-wrap .item > ol li { flex: 1; position: relative; border: 1px solid #F5F7FA; box-shadow: 4px 4px 32px 0px #00000005; background: #FFFFFF; border-radius: 100px; padding: 24px 15px; min-height: 180px; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; font-weight: 500; font-size: 16px; line-height: 155%; letter-spacing: -0.02em; text-align: center; color: #333333; }
.vision-wrap .item > ol li::before { counter-increment: vision-count; content: counter(vision-count, decimal-leading-zero);position: absolute;font-weight: 800;font-size: 64px;line-height: 100%;letter-spacing: 0;color: #1E538F;top: -25px;left: 0;}

.vision-wrap .item .strategies {display: flex;gap: 20px;}
.vision-wrap .item .strategies li {border: 1px solid #E5E8EC;border-radius: 20px;padding: 32px 28px;display: flex;gap: 10px;align-items: center;flex: 1;}
.vision-wrap .item .strategies li .left {flex: 1;}
.vision-wrap .item .strategies li .left .tit {font-weight: 700;font-size: 16px;line-height: 145%;letter-spacing: -0.02em;color: #1E538F;margin: 0 0 12px;}
.vision-wrap .item .strategies li .left .txt {font-weight: 500;font-size: 18px;line-height: 155%;letter-spacing: -0.02em;color: #333333;}

.vision-wrap .item .strategies li .right {max-width: 64px;width: 100%;}


.responsive-tab-wrap { width: 100%;margin: 0 auto 64px; position: relative; box-sizing: border-box; }
.tab-select-btn { display: none; }
.tab-list { display: flex; gap: 16px; list-style: none; margin: 0; padding: 0; }
.tab-list li { flex: 1; }
.tab-list li a { display: flex; align-items: center; justify-content: center; height: 79px; background: #ffffff;border: 1px solid #1E538F;border-radius: 999px; color: #111111;font-weight: 700;font-size: 20px;line-height: 145%;letter-spacing: -0.02em;transition: all 0.25s ease; box-sizing: border-box; }
.tab-list li.active a, .tab-list li a:hover { background: #1E538F; border-color: #1E538F; color: #ffffff; }
.tab-content-wrap .tab-pane { display: none !important;}
.tab-content-wrap .tab-pane.active { display: block !important; animation: fadeInTab 0.3s ease; }
@keyframes fadeInTab {
	from { opacity: 0; transform: translateY(6px); }
	to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 1200px) {
	.vision-wrap .item .strategies {display: grid;grid-template-columns: repeat(2, 1fr);}
	.vision-wrap .item > ol {display: grid;grid-template-columns: repeat(2, 1fr);}
}

@media (max-width: 1024px) {
	.tab-select-btn { display: flex; align-items: center; justify-content: space-between; width: 100%; height: 50px; padding: 0 20px; background: #ffffff; border: 1.5px solid #1b4b88; border-radius: 999px; color: #1b4b88; font-size: 16px; font-weight: 700; cursor: pointer; box-sizing: border-box; }
	.tab-select-btn .ico-arrow { display: inline-block; width: 8px; height: 8px; border-right: 2px solid #1b4b88; border-bottom: 2px solid #1b4b88; transform: rotate(45deg); transition: transform 0.25s ease; margin-bottom: 3px; }
	.responsive-tab-wrap.is-open .tab-select-btn .ico-arrow { transform: rotate(-135deg); margin-bottom: -3px; }
	.tab-list { display: none; position: absolute; top: calc(100% + 8px); left: 0; width: 100%; background: #ffffff; border: 1px solid #dbe2ea; border-radius: 14px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12); flex-direction: column; gap: 0; overflow: hidden; z-index: 100; }
	.responsive-tab-wrap.is-open .tab-list { display: block; }
	.tab-list li { width: 100%; }
	.tab-list li a { height: 48px; border-radius: 0; border: none; border-bottom: 1px solid #f1f5f9; justify-content: flex-start; padding: 0 20px; font-size: 15px; color: #333333; }
	.tab-list li:last-child a { border-bottom: none; }
	.tab-list li.active a { background: #f0f6fd; color: #1b4b88; font-weight: 700; }


	.vision-wrap {gap: 100px;}
	.vision-wrap .item:before {bottom: -95px;}
	.vision-wrap .item:after {bottom: -20px;}
}

@media (max-width: 768px){
	.vision-wrap .item .strategies {display: grid;grid-template-columns: repeat(1, 1fr);}
	.vision-wrap .item > ol {display: grid;grid-template-columns: repeat(1, 1fr);}
	.vision-wrap .item .strategies li {padding: 20px;}
	.vision-wrap .item .strategies li .left .txt {font-size: 16px;}
	.vision-wrap .item > ol {padding: 0;}
	.vision-wrap .item > ol li::before {font-size: 40px;top: 10px;}
	.vision-wrap .item > ol li {min-height: unset;padding: 30px 10px;}
	.vision-wrap .item .vision-tit {font-size: 24px;}
	
	.vision-wrap .item:before {height: 50px;bottom: -85px;}
	.vision-wrap .item:after {bottom: -35px;}
	.vision-wrap .item .vision-box {min-height: unset;}
	.vision-wrap .item .vision-box .txt01 {font-size:16px;}
	.vision-wrap .item .vision-box .txt02 {font-size: 18px;}
}