@charset "utf-8";
/* 공통 */
.sub-pd { padding: 120px 0;}
.sub-pd.first { padding-top: 0; padding-bottom: 120px; }
.sub-pd.last { padding-top: 120px; padding-bottom: 0; }
.subtit { margin-bottom: 70px; font-size: var(--font-size42); font-weight: 600; color: #2c2c2c; line-height: 1.38em; }
.subtit span { color: var(--color-primary);}
.subtit.tc { text-align: center; }
.subtit.white { color: #fff; }
.subtit.mg { margin-bottom: 0; }
.sub1-tit { font-size: var(--font-size54); font-weight: 600; color: #2c2c2c; line-height: 1.44em; text-align: center; }
.sub1-tit span.gray { color: #878787; }
.sub1-tit span.clr { color: var(--color-primary );}
.sub1-tit.tl { text-align: left; }
.subtit2 { position: relative; padding-left: 20px; font-size: var(--font-size28); line-height: 1.5em; color: #2c2c2c; font-weight: 600; margin-bottom: 24px; }
.subtit2.fx { display: flex; justify-content: space-between; align-items: flex-end;}
.subtit2.fx span { font-size: 14px; font-weight: 600; color: #a8a8a8; }
.subtit2::before { content: ""; position: absolute; left: 0; width: 4px; height: 24px; border-radius: 2px; background: var(--color-primary); top: 0; bottom: 0; margin: auto; }
.subtab-wrap { margin-bottom: 100px; border-bottom: 1px solid #eee;}
.subtab-wrap ul { display: flex; }
.subtab-wrap ul li { flex: 1;}
.subtab-wrap ul li a { height: 84px; display: flex; align-items: center; justify-content: center; font-size: var(--font-size22); font-weight: 500; color: #878787; line-height: 1.63em; position: relative; }
.subtab-wrap ul li a::after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 3px; background: #2c2c2c; display: none; }
.subtab-wrap ul li a:hover { color: #2c2c2c; }
.subtab-wrap ul li.active a { color: #2c2c2c; }
.subtab-wrap ul li.active a::after { display: block; }

/* 개요 */
.ov-sec1 { padding-bottom: 160px; }
.ov-sec1 h2 { display: flex; justify-content: center; align-items: center; font-size: 80px; font-family: var(--atoz); color: #2c2c2c; font-weight: 700; line-height: 1.25em; margin-bottom: 64px; }
.ov-sec1 img { display: inline-block; margin: 0 34px; margin-right: 24px; border-radius: 8px; }
.ov-bg { border-radius: 40px; height: 96vh; background: url(../images/sub/sub1-1-big.jpg) center no-repeat; background-size: cover; display: flex; align-items: center; }
.ov-bg .contain { max-width: 1540px; display: flex; justify-content: space-between; align-items: center;}
.ov-bg .contain::after { content: none;}
.ov-bg .info { flex: 1 1 auto; min-width:0; width:1%; padding-right: 20px; }
.ov-bg .en-tit { font-size: var(--font-size18); font-family: var(--atoz); color: rgba(255,255,255,0.6); font-weight: 600; line-height: 1.66em; margin-bottom: 24px; }
.ov-bg .subtit { margin-bottom: 0; }
.ov-bg .circle { border-radius: 400px; border: 1px solid rgba(255, 255, 255, 0.12); background: rgba(255, 255, 255, 0.60); backdrop-filter: blur(20px); width: 400px; height: 400px; display: flex; align-items: center; justify-content: center;}
.ov-wrap { border: 1px solid #eee; border-radius: 16px; overflow: hidden;}
.ov-wrap .item { display: flex; padding: 40px 34px; align-items: center; border-bottom: 1px solid #eee;}
.ov-wrap .item:last-child { margin-bottom: 0; }
.ov-item-tit { width: 124px; font-weight: 600; color: #676767; line-height: 1.75em; }
.ov-item-info { flex: 1 1 auto; min-width:0; width:1%; }
.ov-item-info .title { color: #2c2c2c; font-size: var(--font-size24); font-weight: 600; line-height: 1.66em; }
.ov-item-info .title span.clr { color: var(--color-primary);}
.ov-item-info .title span.fz { display: inline-block; padding-left: 12px; font-size: 14px; color: #a8a8a8; position: relative; top: -5px; }
.ov-item-info p { margin-bottom: 2px; font-size: var(--font-size20); line-height: 1.7em; font-weight: 500; color: #2c2c2c; }
.ov-item-info p:last-child { margin-bottom: 0; }
.ov-item-info p span { font-size: 14px; color: #a8a8a8; font-weight: 500; display: inline-block; padding-right: 10px; }
.ov-wrap .item.fx { padding: 0; }
.ov-wrap .item.fx .col { width: calc(100%/4); border-right: 1px solid #eee; padding: 34px; }
.ov-wrap .item.fx .col:last-child { border: none; }
.ov-wrap .item.fx .col .ov-item-tit { width: 100%; }
.ov-wrap .item.fx .col .ov-item-info { width: 100%; }
.ov-wrap .item.fx .col .ov-item-info .title { margin-top: 30px; }
.ov-wrap .item.fx .col .ov-item-info .title span.clr { display: block; }
.ov-wrap .item.fx .col .ov-item-info .title span.fz { display: block; padding-left: 0; top: 0; margin-top: 4px; }
.ov-wrap .item.fx .col .year { font-size: var(--font-size32); font-weight: 600; color: #2c2c2c; line-height: 1.5em; margin-top: 46px; }
.ov-wrap .item.fx2 { padding: 0; border: none; }
.ov-wrap .item.fx2 .col { width: calc(100%/3); border-right: 1px solid #eee; padding: 40px 34px; display: flex; align-items: center;}
.ov-wrap .item.fx2 .col:last-child { border: none; padding: 20px 40px;}
.ov-sec4 { padding: 80px 0 160px; background: #f6f6f6; }
.ov-fx { display: flex; align-items: center; }
.ov-fx .map { width: 50%; background: #fff; padding: 60px 0; text-align: center; border-radius: 32px; }
.ov-fx .info { width: 50%; padding-left: 60px; }
.ov-fx .info .group { margin-bottom: 100px; }
.ov-fx .info .group:last-child { margin-bottom: 0; }
.ov-tit { font-size: var(--font-size32); margin-bottom: 34px; font-weight: 600; color: #2c2c2c; line-height: 1.43em; position: relative; padding-left: 28px; }
.ov-tit::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; margin: auto; width: 12px; height: 18px; background: url(../images/sub/tit-bf2.png) center no-repeat; background-size: contain;}
.ov-tit.primary::before { background: url(../images/sub/tit-bf1.png) center no-repeat; background-size: contain;}
.ov-fx .info .group .list { display: flex; flex-wrap: wrap; gap: 10px 8px;}
.ov-fx .info .group .list li { width: calc(100%/4 - 6px); padding: 8px; background: #fff; border: 1px solid #eee; border-radius: 40px; display: flex; align-items: center; }
.ov-fx .info .group .list li.none { background: transparent; border: none; }
.ov-fx .info .group .list li .tt { flex: 1 1 auto; min-width:0; width:1%; padding-left: 12px; font-size: var(--font-size20); font-weight: 500; color: #2c2c2c; line-height: 1.7em;}

/* 미션 & 비전 */
.vs-sec1 { background: url(../images/sub/sub1-2-bg.jpg) center no-repeat; background-size: cover; text-align: center; padding-bottom: 240px; position: relative; padding-top: 160px; }
.vs-subtit { color: #ccc; font-size: var(--atoz); font-size: var(--font-size18); font-weight: 600; line-height: 1.66em; margin-bottom: 40px; text-align: center; }
.vs-sec1 .inbox { border-radius: 500px; background: rgba(255, 255, 255, 0.40); box-shadow: 0 6px 32px 0 rgba(0, 0, 0, 0.04); backdrop-filter: blur(12px); padding: 54px 10px; max-width: 620px; margin: 70px auto 0; position: relative; z-index: 1; }
.vs-tit { font-size: var(--font-size36); color: var(--color-primary); font-weight: 600; line-height: 1.38em; font-family: var(--atoz); }
.vs-sec1 .inbox h5 { font-size: var(--font-size32); color: #2c2c2c; font-weight: 600; line-height: 1.43em; margin-top: 24px; }
.vs-sec1 .big { color: rgba(226, 92, 5, 0.16); text-align: center;font-family: var(--atoz); font-size: 192px; font-style: normal; font-weight: 700; line-height: 1em; position: absolute; left: 0; right: 0; margin: auto; bottom: 180px; letter-spacing: -.04em;}
.vs-sec2 { padding: 80px 0; background: url(../images/sub/sub1-2-bg2.jpg) center no-repeat; background-size: cover; }
.vs-sec2 .contain { display: flex; align-items: flex-start;}
.vs-sec2 .contain::after { content: none;}
.vs-sec2 .tit { width: 340px; font-size: var(--font-size28); font-weight: 600; color: #878787; line-height: 1.5em;  }
.vs-sec2 .info { flex: 1 1 auto; min-width:0; width:1%; }
.vs-sec2 .txt { margin-top: 44px; }
.vs-sec2 .txt p { position: relative; margin-bottom: 12px; padding-left: 44px; font-size: var(--font-size32); font-weight: 600; line-height: 1.43em; color: #fff; }
.vs-sec2 .txt p:last-child { margin-bottom: 0; }
.vs-sec2 .txt p::before { content: ""; position: absolute; left: 0; border-radius: 20px; width: 20px; height: 20px; background: url(../images/sub/vs-bf.png) center no-repeat; background-size: contain; top: 13px; }
.vs-clr-tit { padding: 16px 10px; text-align: center; color: #fff; background: var(--color-primary); font-size: var(--font-size26); line-height: 1.53em; font-weight: 600; border-radius: 35px; }
.vs-wrap .group { margin-top: 60px; }
.vs-num { display: flex; gap: 15px; flex-wrap: wrap; }
.vs-num .item { width: calc(100%/3 - 10px); padding: 30px 10px; text-align: center; border-radius: 16px; background: #f6f6f6; }
.vs-num .item .num { width: 28px; height: 28px; border-radius: 28px; border: 1px solid #EEE; background: #FFF; display: flex; align-items: center; justify-content: center; color: var(--color-primary); font-size: 14px; font-weight: 700; line-height: 1em; margin: 0 auto 16px;}
.vs-num .item .tt { font-size: var(--font-size20); line-height: 1.7em; font-weight: 600; color: #2c2c2c; }
.vs-num2 { display: flex; flex-wrap: wrap; gap: 15px; }
.vs-num2 .col { width: calc(100%/3 - 10px); border-radius: 16px; border: 1px solid #dfdfdf; padding: 6px 30px; }
.vs-num2 .col.height .item { height: 50%; }
.vs-num2 .col .item { border-bottom: 1px dashed #dfdfdf; padding: 24px 0;}
.vs-num2 .col .item:last-child { border: none; }
.vs-num2 .col .item .num { line-height: 1.14em; font-size: 14px; color: var(--color-primary); font-weight: 600; }
.vs-num2 .col .item .tt { font-size: var(--font-size20); line-height: 1.7em; font-weight: 600; color: #2c2c2c; margin: 12px 0; }
.vs-num2 .col .item .txt p { position: relative; margin-bottom: 8px; padding-left: 11px; line-height: 1.5em; color: #676767; }
.vs-num2 .col .item .txt p::before { content: ""; position: absolute; left: 0; width: 5px; height: 1px; background: #676767; top:11px; }
.vs-num2 .col .item .txt p:last-child { margin-bottom: 0; }

/* 사업 프로필 */
.pf-group { margin-bottom: 60px; }
.pf-group:last-child { margin-bottom: 0; }
.pf-suc { display: flex; flex-wrap: wrap; gap: 16px; }
.pf-suc .left { width: calc(65% - 8px); display: flex; gap: 16px; flex-wrap: wrap;}
.pf-suc .left .col { width: calc(100%/2 - 8px); height: auto;}
.pf-suc .right { width: calc(35% - 8px); }
.pf-suc .col { border-radius: 16px; background: linear-gradient(155deg, #FFF9F0 2.63%, #FAF5F1 24.7%, #F7F1F1 49.48%, #F9F2F2 72.91%, #FDF2F2 96.02%); padding: 40px 10px; text-align: center; height: 100%; }
.pf-suc .col .tt { font-size: var(--font-size20); line-height: 1.6em; font-weight: 600; color: #2c2c2c; }
.pf-suc .col .tt span { color: var(--color-primary); }
.pf-suc .col .txt { margin-top: 8px; color: #676767; line-height: 1.5em; }
.pf-suc .col p { margin: 20px 0;}
.pf-suc .right .col { display: flex; flex-direction: column; justify-content: center;}
.pf-icon { display: flex; flex-wrap: wrap; gap: 16px; }
.pf-icon .col { width: calc(100%/4 - 12px); border-radius: 16px; border: 1px solid #EEE; text-align: center; padding: 40px 10px;}
.pf-icon .col .tt { margin: 16px 0 4px; font-size: var(--font-size20); line-height: 1.6em; color: #2c2c2c; font-weight: 600; }
.pf-icon .col .txt { color: #676767; line-height: 1.5em; }
.hst-bg { background: url(../images/sub/sub1-3-2-img.jpg) center no-repeat; background-size: cover; padding: 50px 60px; font-family: var(--atoz); color: #fff; line-height: 1.44em; font-size: var(--font-size54); font-weight: 700; display: flex;  align-items: flex-end; height: 57vh; border-radius: 40px; }
.hst { display: flex; align-items: flex-start; position: relative; padding: 100px 0 140px; height: 100%; width: calc(100% + 50px);}
.hst::before { content: ""; position: absolute; left: 0; right: 48px; margin: auto; top: 0; width: 2px; height: 100%; background: #eee;}
.hst::after { content: ""; position: sticky; right: calc(50% - 26px); top: 186px; width: 52px; height: 52px; background: url(../images/sub/hst-dots.png) center no-repeat; background-size: contain;}
.hst .sticky { position: sticky; top: 160px; width: 50%; }
.hst .sticky a { display: block; line-height: 1.38em; font-size: var(--font-size42); font-weight: 600; color: #dfdfdf; margin-bottom: 24px; font-family: var(--atoz); position: relative; }
.hst .sticky a span { display: inline-block; position: relative; }
.hst .sticky a span::after { content: ""; position: absolute; right: -20px; top: 0; width: 8px; height: 8px; border-radius: 8px; background: var(--color-primary); opacity: 0; transition: .2s;}
.hst .sticky a:last-child { margin-bottom: 0; }
.hst .sticky a.active { color: #2c2c2c;}
.hst .sticky a.active span::after { opacity: 1; }
.hst .sticky a:hover { color: #2c2c2c;}
.hst .info { width: 50%; }
.hst .info .wrap { margin-bottom: 100px; }
.hst .info .wrap:last-child { margin-bottom: 0; }
.hst .info .group { margin-bottom: 60px; padding-left: 80px; }
.hst .info .group:last-child { margin-bottom: 0; }
.hst .info .group .year { font-size: var(--font-size24); font-weight: 600; color: var(--color-primary); line-height: 1.66em; font-family: var(--atoz); margin-bottom: 12px;}
.hst .info .group .tt { line-height: 1.66em; font-size: var(--font-size24); font-weight: 500; color: #2c2c2c; margin-bottom: 14px; }
.hst .info .group .txt p { position: relative; padding-left: 11px; font-size: var(--font-size18); line-height: 1.55em; color: #676767; margin-bottom: 10px; }
.hst .info .group .txt p:last-child { margin-bottom: 0; }
.hst .info .group .txt p::before { content: ""; position: absolute; left: 0; top: 13px; width: 5px; height: 1px; background: #676767; }

/* 사업센터 현황 */
.map-fx { display: flex; flex-wrap: wrap; align-items: flex-start;}
.map-fx .map { width: 50%; padding: 60px 34px; text-align: center; border-radius: 32px; background: #f6f6f6;}
.map-fx .map .inbox { position: relative; }
.map-fx .map .tab-wrap { position: absolute; text-align: left; height: auto; width: 150px; }
.map-fx .map .tab-wrap a { display: block; }
.map-fx .map .label-which { text-align: right; width: 100%; }
.map-fx .map .label { width: 126px; height: 48px; display: inline-flex; align-items: center; justify-content: space-between; border-radius: 24px; background: #121212; color: #fff; font-size: 17px; font-weight: 700; line-height: 1.2em; padding-right: 6px; padding-left: 16px; transition: .3s;}
.map-fx .map .pin { width: 37px; height: 46px; display: inline-block; background: url(../images/sub/pin.png) center no-repeat; background-size: contain; filter: drop-shadow(0 6px 12px rgba(0, 0, 0, 0.26)); transition: .3s;}
.map-fx .map .tab-wrap a:hover .pin { background-image: url(../images/sub/pin-c.png);}
.map-fx .map .tab-wrap a:hover .label { background: var(--color-primary);}
.map-fx .map .tab-wrap.on .pin { background-image: url(../images/sub/pin-c.png);}
.map-fx .map .tab-wrap.on .label { background: var(--color-primary);}
.map-fx .map .tab-wrap.wh1 { left: 132px; bottom: 127px; }
.map-fx .map .tab-wrap.wh2 { left: 230px; bottom: 185px; }
.map-fx .map .tab-wrap.wh3 { right: 77px; bottom: 57px; }
.map-fx .map .tab-wrap.wh4 { right: 75px; top: 107px; }
.map-fx .map .tab-wrap.wh5 { right: 10px; top: 177px; }
.map-fx .info { width: 50%; padding-left: 70px; position: relative; }
.map-fx .info .group { display: none; }
.map-fx .info .maps { width: 100%; min-height: 260px; display: flex; justify-content: center; align-items: flex-start; }
.map-fx .info .maps .map { border-radius: 0; }
.map-fx .info .maps .root_daum_roughmap { width: 100%; max-width: 100%; box-sizing: border-box; }
.lct { padding: 10px 30px; border-radius: 16px; border: 1px solid #eee; margin-bottom: 30px; }
.lct ul li { border-bottom: 1px dashed #dfdfdf; padding: 20px 0; display: flex; font-size: var(--font-size18); align-items: center;}
.lct ul li:last-child { border: none; }
.lct ul li .tt { width: 100px; font-weight: 500; color: #878787; font-size: 16px; }
.lct ul li .txt { flex: 1 1 auto; min-width: 0; width: 1%; }
.lct ul li .links { display: flex; gap: 16px; }
.lct ul li .links a { display: flex; align-items: center; gap: 10px; line-height: 1.2em; font-size: 16px; }
.map-fx .info .maps .wrap_controllers { display: none !important;}

/* sub2 공통 */
.sub2-subtit { margin-bottom: 6px; color: #ababab; line-height: 1.5em; font-weight: 400; }
.sub2-tit { margin-bottom: 40px; color: #2c2c2c; font-size: var(--font-size36); line-height: 1.38em; font-weight: 600; }
.chk-txt p { position: relative; padding-left: 28px; margin-bottom: 12px; font-size: var(--font-size18); line-height: 1.55em; }
.chk-txt p:last-child { margin-bottom: 0; }
.chk-txt p::before { content: ""; position: absolute; left: 0; width: 20px; height: 20px; top:4px; background: url(../images/sub/sub2-1-chk.png) center no-repeat; background-size: contain; }
.sub2-info-wrap { margin-top: 90px; }
.sub2-info-wrap>p { color: #999; font-size: 14px; line-height: 1.42em; margin-bottom: 20px; text-align: right; font-weight: 400; }
.sub2-info { display: flex; justify-content: space-between; align-items: center; padding: 30px 40px; border-radius: 16px; background: #F8F8F8; }
.sub2-info.rv { flex-direction: row-reverse;}
.sub2-info .left { display: flex; align-items: center; gap: 10px 40px; flex-wrap: wrap;}
.sub2-info .left .col { display: flex; align-items: center; gap: 16px; }
.sub2-info .left .tt { padding: 12px 20px; color: #878787; line-height: 1.5em; font-weight: 400; border-radius: 6px; border: 1px solid #EEE; background: #FFF; }
.sub2-info .left .txt { font-size: var(--font-size18); font-weight: 500; color: #2c2c2c; line-height: 1.33em; }
.sub2-info .links { display: flex; align-items: center;}
.sub2-info .links strong { display: inline-block; font-size: var(--font-size20); line-height: 1.4em; font-weight: 600; color: #2c2c2c; padding-right: 24px; }
.sub2-info .links a { width: 142px; height: 58px; border-radius: 6px; background: var(--color-primary); color: #fff; line-height: 1.44em; display: flex; align-items: center; justify-content: center; font-size: var(--font-size18); font-weight: 700; }
.sub2-info .links h5 { font-size: var(--font-size20); line-height: 1.7em; position: relative; color: #2c2c2c; font-weight: 600; padding-left: 14px; }
.sub2-info .links h5::before { content: ""; position: absolute; left: 0; top: 15px; width: 4px; height: 4px; border-radius: 4px; background: var(--color-primary);}

/* AI 취업지원 */
.sp-arrow-wrap { position: relative; }
.sp-sec2-list { display: flex; flex-wrap: wrap; gap: 15px; }
.sp-sec2-list .col { width: calc(100%/3 - 10px); padding: 30px; border-radius: 24px; background: rgba(238, 238, 238, 0.50); backdrop-filter: blur(12px); }
.sp-sec2-list .col .tt { font-size: var(--font-size24); line-height: 1.66em; color: #2c2c2c; font-weight: 600; margin-bottom: 30px; }
.sp-sec2-list ul li { display: flex; margin-bottom: 8px; }
.sp-sec2-list ul li:last-child { margin-bottom: 0; }
.sp-sec2-list ul li .num { width: 36px; height: 36px; border: 1px dashed var(--color-primary); display: flex; align-items: center; justify-content: center; border-radius: 36px; }
.sp-sec2-list ul li .num span { display: inline-flex; width: 24px; height: 24px; border-radius: 24px; background: var(--color-primary); color: #fff; align-items: center; justify-content: center; line-height: 1em; font-size: 14px; font-weight: 300; }
.sp-sec2-list ul li .txt { flex: 1 1 auto; min-width: 0; width: 1%; font-size: var(--font-size18); line-height: 1.55em; color: #676767; padding-left: 16px; padding-top: 3px; }
.sp-sec2-txtbox { margin-top: 24px; display: flex; align-items: flex-start; justify-content: space-between ; flex-wrap: wrap; gap: 15px; }
.sp-sec2-txtbox .left { padding-left: 8px; }
.sp-sec2-txtbox .left h5 { font-weight: 500; color: #505050; line-height: 1.75em; margin-bottom: 14px; }
.sp-sec2-txtbox .left .txt p { position: relative; padding-left: 10px; line-height: 1.42em; font-size: 14px; color: #878787; margin-bottom: 6px; }
.sp-sec2-txtbox .left .txt p:last-child { margin-bottom: 0; }
.sp-sec2-txtbox .left .txt p::before { content: ""; position: absolute; left: 0; width: 5px; height: 1px; background: #878787; top: 8px; }
.sp-sec2-txtbox .links { display: flex; align-items: center;}
.sp-sec2-txtbox .links strong { display: inline-block; font-size: var(--font-size20); line-height: 1.4em; font-weight: 600; color: #2c2c2c; padding-right: 24px; }
.sp-sec2-txtbox .links a { width: 142px; height: 58px; border-radius: 6px; background: var(--color-primary); color: #fff; line-height: 1.44em; display: flex; align-items: center; justify-content: center; font-size: var(--font-size18); font-weight: 700; }
.sp-big-arrow { position: absolute; z-index: -1; right: 70px; top: -90px;}
.sp-sec3-wrap .item { margin-bottom: 100px; }
.sp-sec3-wrap .item:last-child { margin-bottom: 0; }
.sp-sec3-wrap .item .fx { display: flex; align-items: center; }
.sp-sec3-wrap .item .img { width: 50%; border-radius: 16px; overflow: hidden;}
.sp-sec3-wrap .item .info { width: 50%; padding-left: 80px; }
.sp-sec3-wrap .item .info .group { margin-bottom: 40px; }
.sp-sec3-wrap .item .info .group h4 { position: relative; padding-left: 20px; font-size: var(--font-size28); line-height: 1.5em; color: #2c2c2c; font-weight: 600; margin-bottom: 24px; }
.sp-sec3-wrap .item .info .group h4::before { content: ""; position: absolute; left: 0; width: 4px; height: 28px; border-radius: 2px; background: var(--color-primary); top: 6px; }
.sp-sec3-wrap .item .info .group .jum-txt p { margin-bottom: 8px; position: relative; font-size: var(--font-size20); line-height: 1.7em; color: #676767; padding-left: 19px; }
.sp-sec3-wrap .item .info .group .jum-txt p:last-child { margin-bottom: 0; }
.sp-sec3-wrap .item .info .group .jum-txt p::before { content: ""; position: absolute; left: 0; width: 4px; height: 4px; border-radius: 4px; background: #a8a8a8; top: 15px; }
.sp-sec3-wrap .item .info h5 { font-size: var(--font-size24); line-height: 1.66em; color: #2c2c2c; font-weight: 600; }
.sp-sec3-wrap .item .info h5 span { color: var(--color-primary);}
.sp-sec4 { background: #fff8f2; }
.sp-tit { margin-bottom: 80px; font-size: var(--font-size42); line-height: 1.38em; font-weight: 600; color: #2c2c2c; }
.sp-sec4-wrap .item { display: flex; align-items: center; margin-bottom: 96px; }
.sp-sec4-wrap .item:last-child { margin-bottom: 0; }
.sp-sec4-wrap .item .icon { width: 25%; background: #fff; text-align: center; border-radius: 40px; padding: 53px 10px;}
.sp-sec4-wrap .item .info { width: 75%; padding-left: 60px; }
.sp-sec4-wrap .item .info .num { font-size: var(--font-size20); line-height: 1.7em; color: var(--color-primary); font-weight: 600; }
.sp-sec4-wrap .item .info .tt { font-size: var(--font-size28); line-height: 1.5em; font-weight: 700; color: #2c2c2c; margin: 12px 0 30px;}
.sp-sec4-wrap .item .info .tt span { color: var(--color-primary);}
.sp-sec5 h4 { margin: 24px 0 70px; font-size: var(--font-size20); line-height: 1.7em; font-weight: 500; color: #a8a8a8; }
.sp-sec5 h4 span { color: #2c2c2c; }
.sp-sec5-wrap { display: flex; flex-wrap: wrap; gap: 12px; }
.sp-sec5-wrap .item { width: calc(100%/3 - 8px); text-align: center; border-radius: 16px; overflow: hidden; filter: drop-shadow(0 0 24px rgba(238, 124, 51, 0.08)); background: #fff; }
.sp-sec5-wrap .item .img img { width: 100%; }
.sp-sec5-wrap .item .info { background: #fff; padding: 64px 10px 40px; position: relative; }
.sp-sec5-wrap .item .info .icon { position: absolute; left: 0; right: 0; margin: auto; top: -50px; }
.sp-sec5-wrap .item .info .tt { font-size: var(--font-size24); line-height: 1.66em; color: #2c2c2c; font-weight: 600; }
.sp-sec5-wrap .item .info .txt { line-height: 1.5em; margin-top: 20px; }
.sp-sec5-wrap .item .info .gray { font-size: 14px; line-height: 1.71em; color: #999; margin-top: 16px; }

/* e-DISC 진단 */
.ds-sec2-wrap { display: flex; flex-wrap: wrap; gap: 54px; }
.ds-sec2-wrap .item { width: calc(100%/3 - 36px);}
.ds-sec2-wrap .item img { width: 100%; }
.ds-sec2-wrap .img { position: relative; border-radius: 16px; overflow: hidden;}
.ds-sec2-wrap .img img { width: 100%; }
.ds-sec2-wrap .img .abbox { position: absolute; left: 0; top: 0; width: 100%; height: 100%; padding: 30px; color: #fff; }
.ds-sec2-wrap .img .abbox p { position: relative; padding-left: 14px; font-size: var(--font-size22); font-weight: 600; line-height: 1.63em; }
.ds-sec2-wrap .img .abbox p::before { content: ""; position: absolute; left: 0; top:15px; width: 4px; height: 4px; border-radius: 4px; background: #fff; }
.ds-sec2-wrap .tt { text-align: center; margin-top: 20px; font-size: var(--font-size24); line-height: 1.66em; color: #2c2c2c; font-weight: 600; }
.ds-sec3 { padding: 80px 0; background: #fff8f2; }
.ds-sec3 .contain { display: flex; align-items: center;}
.ds-sec3 .contain::after { content: none;}
.ds-sec3 .circle { width: 27.5%; padding-left: 45px; padding-top: 30px; position: relative; }
.ds-sec3 .circle .box { width: 340px; height: 340px; display: flex; align-items: center; justify-content: center; text-align: center; border-radius: 100%; background: var(--color-primary); color: #fff; position: relative; z-index: 1; }
.ds-sec3 .circle .whitebox {position: absolute; left: 0; top: 0; background: #fff; width: 330px; height: 330px; border-radius: 100%; }
.ds-sec3 .circle h5 { font-size: var(--font-size18); line-height: 1.66em; color: rgba(255,255,255,0.6); }
.ds-sec3 .circle h3 { font-size: var(--font-size36); line-height: 1.38em; font-weight: 600; }
.ds-sec3 .info { width: 72.5%; padding-left: 130px; }
.ds-sec3 .info .group { padding: 60px 0 40px; border-bottom: 1px dashed #dfdfdf;}
.ds-sec3 .info .group:last-child { border: none; padding-bottom: 0; }
.ds-sec3 .info .group:first-child { padding-top: 0; }
.ds-sec3 .info .group h4 { font-size: var(--font-size24); font-weight: 600; line-height: 1.66em; color: #2c2c2c; }
.ds-sec3 .info .group p { font-size: 14px; color: #999; line-height: 1.42em; margin-top: 8px; }
.ds-sec4-wrap .col { margin-bottom: 100px; }
.ds-sec4-wrap .col:last-child { margin-bottom: 0; }
.ds-sec4-wrap .col .tit-fx { margin-bottom: 40px; display: flex; align-items: flex-end; justify-content: space-between;}
.ds-sec4-wrap .col .sub2-tit { margin-bottom: 0; }
.ds-sec4-wrap .col .tit-fx a { display: inline-flex; align-items: center; height: 60px; padding-left: 20px; padding-right: 58px; border: 1px solid var(--color-primary); border-radius: 30px; color: var(--color-primary); line-height: 1.5em; font-weight: 600; position: relative; }
.ds-sec4-wrap .col .tit-fx a::after { content: ""; position: absolute; right: 10px; width: 40px; height: 40px; background: url(../images/sub/sub2-2-view.png) center no-repeat; background-size: contain; }
.ds-sec4-wrap .col .flex { display: flex; align-items: center; }
.ds-sec4-wrap .col .flex .img { border-radius: 16px; overflow: hidden; width: 30%; }
.ds-sec4-wrap .col .flex .info { padding-left: 54px; width: 70%; }
.ds-sec4-wrap .col .flex .info h3 { font-size: var(--font-size28); line-height: 1.5em; font-weight: 600; color: #2c2c2c; }
.ds-sec4-wrap .col .flex .info h4 { margin: 40px 0 16px; font-size: var(--font-size24); line-height: 1.66em; color: #2c2c2c; font-weight: 600; }
.ds-sec4-wrap .col .flex .info .gray-txt { line-height: 1.42em; font-size: 14px; color: #999; font-weight: 400; margin-top: 8px; display: block; }

/* 취업컨설팅 & 액션러닝 */
.cs-bg { padding-top: 160px; background: url(../images/sub/sub2-3-bg.jpg) center no-repeat; background-size: cover;}
.cs-sec2-img { display: flex; gap: 16px; flex-wrap: wrap;}
.cs-sec2-img>div { width: calc(100%/4 - 12px); border-radius: 16px; overflow: hidden;}
.cs-sec3-wrap .col { display: flex; align-items: center; margin-bottom: 100px; }
.cs-sec3-wrap .col:last-child { margin-bottom: 0; }
.cs-sec3-wrap .col .info { width: 50%; }
.cs-sec3-wrap .col .info .group { display: none; }
.cs-sec3-wrap .col .info .group.active { display: block; }
.cs-sec3-wrap .col .info h3 { font-size: var(--font-size36); line-height: 1.38em; font-weight: 600; color: #2c2c2c; }
.cs-sec3-wrap .col .info h4 { font-size: var(--font-size28); color: #2c2c2c; font-weight: 600; line-height: 1.5em; margin: 60px 0 24px;}
.cs-sec3-wrap .col .info .txt p { margin-bottom: 24px; font-size: var(--font-size20); line-height: 1.7em; color: #676767; }
.cs-sec3-wrap .col .info .txt p:last-child { margin-bottom: 0; }
.cs-pagi { display: flex; gap: 25px; align-items: center; margin-top: 60px; }
.cs-pagination { position: relative; top: auto; margin-top: 0; width: 200px !important; background: #dfdfdf; height: 2px !important; overflow: hidden; }
.cs-pagi .cs-progress-fill { height: 100%; width: 25%; background: var(--color-primary); transition: width 0.35s ease; }
.cs-prev::after, .cs-next::after { display: none; }
.cs-prev, .cs-next { position: relative; top: auto; margin-top: 0; background-repeat: no-repeat; background-position: center; background-size: contain; width: 9px; height: 16px; }
.cs-prev { background-image: url(../images/sub/sub2-3-prev.png); left: auto;}
.cs-next { background-image: url(../images/sub/sub2-3-next.png); right: auto; left: auto;}
.cs-number { font-size: 14px; font-weight: 600; color: #999; line-height: 1.42em; }
.cs-number .current { color: var(--color-primary);}
.cs-sec3-wrap .col .slides { width: 101%; margin-right: -50%; }
.cs-swiper .item { border-radius: 40px; overflow: hidden; position: relative; }
.cs-swiper .item img { transition: .3s; opacity: 0.2; }
.cs-swiper .item::before { content: ""; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; border: 1px solid #dfdfdf; border-radius: 40px; }
.cs-swiper .swiper-slide-active img { opacity: 1; }
.cs-sec3-wrap .col.rv { flex-direction: row-reverse;}
.cs-sec3-wrap .col.rv .info { padding-left: 70px; }
.cs-sec3-wrap .col.rv .slides { margin-right: 0; margin-left: -55%;}

/* 현직자멘토링 네트워크 */
.mt-sec1 h3 { font-size: var(--font-size28); color: #2c2c2c; line-height: 1.5em; font-weight: 600; text-align: center; margin-bottom: 50px; }
.mt-sec1 .big { margin-top: 70px; border-radius: 40px; overflow: hidden; }
.mt-sec2 { padding: 80px 0 160px; background: #fff8f2; }
.mt-fx { display: flex; gap: 12px; flex-wrap: wrap; margin: 80px 0 40px; }
.mt-fx h3 { text-align: center; font-size: var(--font-size24); font-weight: 600; line-height: 1.66em; color: #2c2c2c; margin-bottom: 20px; }
.mt-fx .col { padding: 50px 40px; background: #fff; border-radius: 16px; }
.mt-fx .col .group { padding: 30px 0; border-bottom: 1px dashed #DFDFDF; }
.mt-fx .col .group:last-child { border: none; padding-bottom: 0; }
.mt-fx .col .group:first-child { padding-top: 0; }
.mt-fx .col .tit { display: flex; align-items: center; margin-bottom: 24px; }
.mt-fx .col .tit h4 { font-size: var(--font-size20); line-height: 1.6em; font-weight: 600; color: #2c2c2c; }
.mt-fx .col .spanbox { flex: 1 1 auto; min-width: 0; width: 1%; display: flex; gap: 6px; flex-wrap: wrap; padding-left: 16px; }
.mt-fx .col .spanbox span { padding: 2px 12px 0; display: inline-block; border-radius: 30px; background: #f4f4f4; font-size: 14px; line-height: 1.7em; font-weight: 400; }
.mt-fx .col .txt p { margin-bottom: 16px; font-size: var(--font-size18); line-height: 1.33em; }
.mt-fx .col .txt p:last-child { margin-bottom: 0; }
.mt-fx .col.fx { padding: 0; text-align: center; display: flex; align-items: center; justify-content: center; height: calc(100% - 59px); }
.mt-fx .col.fx .tit { margin-bottom: 0;  }
.mt-fx .left { display: flex; gap: 12px; width: calc(46% - 6px); flex-wrap: wrap; }
.mt-fx .left .col { border: 1px solid #18A737;}
.mt-fx .left .big  { width: calc(76% - 6px); }
.mt-fx .left .small { width: calc(24% - 6px); }
.mt-fx .left .big .col {position: relative; }
.mt-fx .left .big .col::after { content: ""; position: absolute; top: 0; bottom: 0; margin: auto; width: 38px; height: 38px; right: -26px; background: url(../images/sub/sub2-4-plus.png) center no-repeat; background-size: contain; }
.mt-fx .right { display: flex; gap: 12px; width: calc(54% - 6px); flex-wrap: wrap; flex-direction: row-reverse;}
.mt-fx .right .big { width: calc(65% - 8px); height: 100%; }
.mt-fx .right .big .col { height: calc(100% - 59px); }
.mt-fx .right .small { width: calc(21% - 8px); }
.mt-fx .right .col { border: 1px solid var(--color-primary);}
.mt-fx .right .small .col { height: calc(100%/2 - 39.5px);}
.mt-fx .right .small .col.mg { margin-bottom: 20px; }
.mt-fx .right .cen { width: calc(14% - 8px); text-align: center; height: calc(100%); display: flex; align-items: center; justify-content: center; flex-direction: column; padding-top: 59px; }
.mt-fx .right .cen .tt { font-size: var(--font-size18); line-height: 1.33em; color: #2c2c2c; font-weight: 600; margin: 40px 0;}
.mt-fx .right .cen .ctr { font-size: var(--font-size20); line-height: 1.6em; display: flex; align-items: center; justify-content: center; height: 44px; background: var(--color-primary); border-radius: 22px; color: #fff; font-weight: 600; width: 100%; }
.mt-txtbox { background: #fff; border-radius: 16px; border: 1px solid #EEE; background: #FFF; padding: 24px 30px; display: flex; align-items: center;}
.mt-txtbox h3 { width: 172px; font-size: var(--font-size24); font-weight: 600; line-height: 1.66em; color: #676767; }
.mt-txtbox .info { flex: 1 1 auto; min-width: 0; width: 1%; display: flex; gap: 10px 30px; flex-wrap: wrap;}
.mt-txtbox .info .col { display: flex; align-items: center;}
.mt-txtbox .info .col .tit { display: flex; padding-right: 10px; align-items: center;}
.mt-txtbox .info .col .tit .num { width: 20px; height: 20px; border-radius: 20px; background: #d9d9d9; display: flex; align-items: center; justify-content: center; line-height: 1.5em; color: #fff; font-size: 14px; font-weight: 400; margin-right: 10px; }
.mt-txtbox .info .col .tit strong { font-size: var(--font-size20); font-weight: 600; line-height: 1.7em; color: #2c2c2c; }
.mt-txtbox .info .col .txt { flex: 1 1 auto; min-width: 0; width: 1%; font-size: var(--font-size18); line-height: 1.66em; font-weight: 400; color: #676767; }

/* 청년 취업동행 1:1 패키지 지원 */
.yt-gray { display: flex; justify-content: center; padding: 16px 10px; align-items: center; background: #f5f5f5; border-radius: 35px; margin-bottom: 60px; gap: 10px 16px; flex-wrap: wrap;}
.yt-gray .group { font-size: var(--font-size24); line-height: 1.66em; color: #2c2c2c; font-weight: 600; display: flex; align-items: center;}
.yt-gray .group .num { width: 30px; height: 30px; border-radius: 30px; background: #2c2c2c; display: flex; align-items: center; justify-content: center; line-height: 1em; font-size: var(--font-size18); font-weight: 600; margin-right: 8px; color: #fff; }
.yt-gray .group.plus { position: relative; top: -2px; }
.yt-tit { display: flex; align-items: center; margin-bottom: 20px; }
.yt-tit .num { width: 30px; height: 30px; border-radius: 30px; background: #2c2c2c; display: flex; align-items: center; justify-content: center; line-height: 1em; font-size: var(--font-size18); font-weight: 600; margin-right: 8px; color: #fff; }
.yt-tit strong { flex: 1 1 auto; min-width: 0; width: 1%; font-size: var(--font-size32); color: #2c2c2c; font-weight: 600; line-height: 1.5em; }
.yt-wrap { position: relative;}
.yt-wrap::before { content: ""; position: absolute; left: 0; top: -35px; width: calc(100% + 128px); left: -64px; background: url(../images/sub/sub2-5-arrow.png) center no-repeat; background-size: contain; z-index: -1; height: 100px; }
.yt-wrap .top { display: flex; }
.yt-wrap .top .col { display: inline-block; }
.yt-wrap .top .col .tt { text-align: center; color: #fff; background: var(--color-primary); border-right: 1px solid #fff; font-size: var(--font-size20); line-height: 1.7em; font-weight: 600; padding: 16px 10px;}
.yt-wrap .top .col .txt { padding: 16px 15px; padding-left: 27px; background: #fef2eb; border: 1px solid var(--color-primary); border-top: none; min-height: 171px; border-right: none; position: relative; border-left: none; }
.yt-wrap .top .col .txt::after { content: ""; position: absolute; right: 0; top: 0; width: 1px; height: 100%; background: var(--color-primary);}
.yt-wrap .top .col .txt p { position: relative; padding-left: 14px; margin-bottom: 6px; font-size: var(--font-size18); line-height: 1.66em; color: #2c2c2c; }
.yt-wrap .top .col .txt p:last-child { margin-bottom: 0; }
.yt-wrap .top .col .txt p::before { content: ""; position: absolute; left: 0; top: 13px; width: 4px; height: 4px; border-radius: 4px; background: #2c2c2c; }
.yt-wrap .top .col:first-child { border-left: 1px solid var(--color-primary);}
.yt-wrap .top .col:nth-child(1),
.yt-wrap .top .col:nth-child(2),
.yt-wrap .top .col:nth-child(3) { width: 16%; }
.yt-wrap .top .col:nth-child(4),
.yt-wrap .top .col:nth-child(5) { width: 26%; }
.yt-wrap .btm { display: flex; gap: 12px; align-items: flex-start; position: relative; z-index: 1;}
.yt-wrap .btm .col { padding: 30px 24px; border-radius: 16px; margin-top: -6px; }  
.yt-wrap .btm .col.gray { margin-top: 40px; background: #eee; }
.yt-wrap .btm .col.yellow { width: 24.5%; padding: 0;}
.yt-wrap .btm .col.yellow .box { width: 100%; padding: 30px 24px; border-radius: 16px; background: #ffeab2; }
.yt-wrap .btm .col.yellow .box.tc { text-align: center; font-size: var(--font-size22); font-weight: 600; line-height: 1.8em; color: #2c2c2c; }
.yt-wrap .btm .col.yellow .plus { text-align: center; margin: 10px 0;}
.yt-wrap .btm .col.green { background: #CFF0B2; width: 25%; }
.yt-wrap .btm .col .yt-tit { margin-bottom: 24px; }
.yt-wrap .btm .col .yt-tit strong { font-size: var(--font-size28);}
.yt-wrap .btm h4 { font-size: var(--font-size26); line-height: 1.53em; color: #2c2c2c; font-weight: 600; margin-bottom: 24px; }
.yt-wrap .btm .jum-txt p { position: relative; line-height: 1.7em; font-size: var(--font-size20); font-weight: 400; padding-left: 12px; }
.yt-wrap .btm .jum-txt p::before { content: ""; position: absolute; left: 0; width: 4px; height: 4px; border-radius: 4px; background: #a8a8a8; top: 14px; }
.yt-wrap .abbox { gap: 10px; position: absolute; right: 0; bottom: 0; display: flex; justify-content: flex-end; }
.yt-wrap .abbox .circle { width: 110px; height: 110px; border-radius: 100%; display: flex; align-items: center; justify-content: center; text-align: center; font-size: var(--font-size20); line-height: 1.4em; color: #ee7c33; border: 1px solid #ee7c33; font-weight: 600; }
.yt-sec3 { padding: 80px 0; background: #fafafa; }
.yt-sec3 .contain { display: flex; align-items: center; }
.yt-sec3 .contain::after { content: none;}
.yt-sec3 .tit { width: 25%; font-size: var(--font-size24); line-height: 1.66em; color: #2c2c2c; font-weight: 600; }
.yt-sec3 .tit span { color: var(--color-primary);}
.yt-sec3 .info { width: 75%; }
.yt-sec3 .info .col { margin-bottom: 6px; display: flex; }
.yt-sec3 .info .col:last-child { margin-bottom: 0; }
.yt-sec3 .info .col .txt { flex: 1 1 auto; min-width: 0; width: 1%; padding-left: 16px; font-size: var(--font-size20); line-height: 1.7em; font-weight: 400; padding-top: 4px; }

/* 고용서비스 */
.em-sec1-wrap { position: relative; }
.em-sec1-wrap .txt { margin-top: 70px; text-align: center; }
.em-sec1-wrap h3 { margin-bottom: 24px; font-size: var(--font-size22); line-height: 1.63em; color: #2c2c2c; font-weight: 500; }
.em-sec1-wrap h3 span { color: var(--color-primary);}
.em-sec1-wrap h3:last-child { margin-bottom: 0; }
.em-sec1-wrap .circle1 { position: absolute; left: 0; top: -75px; z-index: -1; }
.em-sec1-wrap .circle2 { position: absolute; right: 0px; top: 100px; z-index: -1; }
.em-sec2 { background: url(../images/sub/sub3-1-bg.jpg) center no-repeat; background-size: cover;}
.em-diagram { text-align: center; padding: 40px 10px; text-align: center; background: #fff; border-radius: 16px; margin-top: 80px; }
.em-fx { margin-top: 40px; display: flex; }
.em-fx .img { width: 49.5%; }
.em-fx .img img { border-radius: 16px; }
.em-fx .info { width: 50.5%; padding-left: 70px; }
.em-fx .info h3 { font-size: var(--font-size28); line-height: 1.5em; color: #2c2c2c; font-weight: 600; }
.em-fx .info p { font-size: var(--font-size18); line-height: 1.55em; color: #2c2c2c; font-weight: 400; margin: 16px 0 50px;}
.em-fx .info p strong { color: var(--color-primary); font-weight: 600; }
.em-fx .info .gray { padding: 30px; border-radius: 16px; background: #f6f6f6; }
.em-fx .info .gray .col { margin-bottom: 24px; display: flex; align-items: flex-start;}
.em-fx .info .gray .col:last-child { margin-bottom: 0; }
.em-fx .info .gray .num { width: 30px; height: 30px; border-radius: 30px; display: flex; align-items: center; justify-content: center; border: 1px dashed var(--color-primary); margin-right: 12px; }
.em-fx .info .gray .num span { width: 24px; height: 24px; border-radius: 24px; display: flex; align-items: center; justify-content: center; line-height: 1em; color: #fff; background: var(--color-primary); font-size: 14px; line-height: 1em; font-weight: 400; }
.em-fx .info .gray .txtbox { flex: 1 1 auto; min-width: 0; width: 1%; }
.em-fx .info .gray .txtbox .tt { font-size: var(--font-size20); line-height: 1.5em; color: #2c2c2c; font-weight: 600; }
.em-fx .info .gray .txtbox .txt { margin-top: 8px; line-height: 1.5em; }

/* 정부위탁 일자리 사업안내 공통 */
.gv-tbl-wrap { overflow: auto;}
.gv-tbl { width: 100%; border-collapse: collapse; border-top: 1px solid #2c2c2c;}
.gv-tbl tr { border-bottom: 1px solid #dfdfdf; }
.gv-tbl tr th { border-right: 1px solid #dfdfdf; background: #fef2eb; padding: 16px 10px; font-size: var(--font-size20); line-height: 1.7em; color: #2c2c2c; font-weight: 600; }
.gv-tbl tr th:last-child { border: none; }
.gv-tbl tr td { border-right: 1px solid #dfdfdf; text-align: center; padding: 24px; font-size: var(--font-size20); line-height: 1.7em; font-weight: 400; color: #2c2c2c; }
.gv-tbl tr td.left { text-align: left; }
.gv-tbl tr td span { color: var(--color-primary); }
.gv-tbl tr td:last-child { border-right: none; }
.gv-tbl tr td.fw { font-weight: 600; }
.gv-tbl tr td .bf-txt p { position: relative; margin-bottom: 8px; padding-left: 16px; }
.gv-tbl tr td .bf-txt p:last-child { margin-bottom: 0; }
.gv-tbl tr td .bf-txt p::before { content: ""; position: absolute; left: 0; width: 6px; height: 6px; top: 13px; background: url(../images/sub/sub3-4-bf.png) center no-repeat; background-size: contain; }
.gv-tbl.fz tr th { font-size: 16px; padding: 10px 6px; font-weight: 400;}
.gv-tbl.fz tr th.fw { font-weight: 600; }
.gv-tbl.fz tr th.bd { border-right: 1px solid #dfdfdf;}
.gv-tbl.fz tr td { padding: 10px; font-size: 16px; }
.gv-tbl.fz tr td.bd { border-right: 1px solid #dfdfdf;}
.gv-bg { padding: 10px; text-align: center; color: #fff; background-repeat: no-repeat; background-position: center; background-size: cover; border-radius: 40px; margin-bottom: 80px; height: 41vh; display: flex; flex-direction: column; justify-content: center; align-items: center;}
.gv-bg.bg1 { background-image: url(../images/sub/sub3-2-1-bg.jpg);}
.gv-bg.bg2 { background-image: url(../images/sub/sub3-2-2-bg.jpg);}
.gv-bg.bg3 { background-image: url(../images/sub/sub3-2-3-bg.jpg);}
.gv-bg h2 { font-size: var(--font-size42); line-height: 1.38em; font-weight: 600; margin-bottom: 16px; }
.gv-bg p { font-size: var(--font-size24); line-height: 1.66em; font-weight: 600; color: rgba(255,255,255,0.7); margin-bottom: 16px;}
.gv-bg p:last-child { margin-bottom: 0; }
.gv-group { margin-bottom: 60px; }
.gv-tbl-span { display: block; font-size: 14px; line-height: 1.42em; color: #a8a8a8; font-weight: 600; margin-top: 16px; }
.gv-list { display: flex; flex-wrap: wrap; gap: 172px; }
.gv-list li { width: calc(100%/4 - 129px); text-align: center; padding: 28px 10px; border-radius: 16px; border: 1px solid #dfdfdf; font-size: var(--font-size20); line-height: 1.7em; font-weight: 600; position: relative; }
.gv-list li::after { content: ""; position: absolute; top: 0; bottom: 0; margin: auto; width: 50px; height: 67px; background: url(../images/sub/sub3-2-arrow.png) center no-repeat; background-size: contain; right: -110px; }
.gv-list li:last-child::after { display: none; }
.gv-list.wt { gap: 24px 78px; }
.gv-list.wt li { width: auto; padding: 28px 20px; display: inline-block; }
.gv-list.wt li::after { right: -63px; }
.gv-call { display: flex; flex-wrap: wrap; gap: 40px; }
.gv-call .col { width: calc(100%/2 - 20px); padding: 30px 34px; border-radius: 24px; border: 1px solid #dfdfdf; display: flex; }
.gv-call .col .info { flex: 1 1 auto; min-width: 0; width: 1%; padding-right: 20px; }
.gv-call .col .info .tt { font-size: var(--font-size22); color: #2c2c2c; font-weight: 600; line-height: 1.63em; }
.gv-call .col .info .gray { margin: 8px 0 34px; line-height: 1.5em; color: #878787; font-weight: 400; }
.gv-call .col .info a { width: 169px; height: 48px; border-radius: 6px; background: var(--color-primary); color: #fff; line-height: 1em; display: flex; align-items: center; justify-content: center; font-weight: 700; }
.gv-call .col .info .txt { margin-top: 38px; }
.gv-call .col .info .txt p { margin-bottom: 2px; line-height: 1.5em; color: #878787; }
.gv-call .col .info .txt p span { font-weight: 600; color: #505050; }
.gv-call .col .info .txt p:last-child { margin-bottom: 0; }
.gv-textbox h4 { font-size: var(--font-size22); margin-bottom: 8px; color: #2c2c2c; font-weight: 600; line-height: 1.63em; position: relative; padding-left: 12px; }
.gv-textbox h4.mg { margin-bottom: 24px; }
.gv-textbox h4::before { content: ""; position: absolute; left: 0; width: 4px; height: 4px; border-radius: 4px; background: var(--color-primary); top: 15px; }
.gv-textbox .txt p { position: relative; padding-left: 12px; font-size: var(--font-size18); line-height: 1.55em; font-weight: 400; margin-bottom: 8px;  }
.gv-textbox .txt p:last-child { margin-bottom: 0; }
.gv-textbox .txt p::before { content: ""; position: absolute; left: 0; width: 6px; height: 1px; background: #505050; top: 13px; }
.gv-textbox .gray { color: #999; line-height: 1.5em; }

/* 대학 취업 지원 */
.us-sec1-wrap { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 40px; }
.us-sec1-wrap .col { width: calc(100%/3 - 16px); padding: 30px; border-radius: 16px; border: 1px solid #dfdfdf;}
.us-sec1-wrap .col .tit-fx { display: flex; align-items: center; justify-content: space-between; }
.us-sec1-wrap .col .year { font-size: 14px; line-height: 1.14em; color: #999; font-weight: 500; }
.us-sec1-wrap .col .sb { font-size: var(--font-size18); line-height: 1.55em; color: #ddd; font-weight: 700; }
.us-sec1-wrap .col .tt { display: flex; align-items: center; margin: 20px 0;}
.us-sec1-wrap .col .tt strong { display: inline-block; flex: 1 1 auto; min-width: 0; width: 1%; font-size: var(--font-size20); line-height: 1.7em; color: #2c2c2c; font-weight: 600; padding-left: 10px; }
.us-sec1-wrap .col .txt p { position: relative; padding-left: 12px; margin-bottom: 8px; line-height: 1.5em; }
.us-sec1-wrap .col .txt p:last-child { margin-bottom: 0; }
.us-sec1-wrap .col .txt p::before { content: ""; position: absolute; left: 0; width: 5px; height: 1px; background: #505050; top: 11px; }
.us-sec2 { padding: 80px 0 160px; background: #fafafa; }
.us-list { margin: 40px 0; display: flex; flex-wrap: wrap; gap: 18px; }
.us-list li { width: calc(100%/6 - 15px); display: flex; align-items: center; justify-content: center; padding: 20px 5px; border-radius: 16px; border: 1px solid #DFDFDF; background: #FFF;}
.us-list li .txt { font-weight: 600; line-height: 1.3em; padding-left: 8px; }

/* sub3 공통 */
.sub3-wrap { display: flex; flex-wrap: wrap; gap: 16px; }
.sub3-wrap.mg { margin-top: 40px; }
.sub3-wrap .col { flex: 1; text-align: center; }
.sub3-wrap .col img { border-radius: 16px; }
.sub3-wrap .col .tt { font-size: var(--font-size24); font-weight: 600; line-height: 1.66em; margin-top: 20px; }

/* 지자체부문 */
.lc-sec1-wrap { margin: 40px 0; display: flex; flex-wrap: wrap; gap: 16px; }
.lc-sec1-wrap .col { width: calc(100%/2 - 8px); padding: 30px 34px; border-radius: 16px; border: 1px solid #dfdfdf;}
.lc-sec1-wrap .col .tt { padding-left: 14px; position: relative; font-size: var(--font-size22); line-height: 1.63em; font-weight: 600; color: #2c2c2c; margin-bottom: 8px; }
.lc-sec1-wrap .col .tt::before { content: ""; position: absolute; left: 0; width: 6px; height: 6px; top: 13px; background: url(../images/sub/sub3-4-bf.png) center no-repeat; background-size: contain; }
.lc-sec1-wrap .col .txt { font-size: var(--font-size18); line-height: 1.55em; font-weight: 400; }
.lc-sec1-wrap.wt { margin-bottom: 0; }
.lc-sec1-wrap.wt .col { flex: 1;}
.lc-sec1-wrap.wt .col .txt { font-size: 16px; line-height: 1.5em; }
.lc-sec2-wrap { display: flex; flex-wrap: wrap; gap: 40px; margin-top: 40px; }
.lc-sec2-wrap .col { width: calc(100%/2 - 20px); padding: 30px 34px; border: 1px solid #ddd; border-radius: 16px; background: #fff; display: flex; align-items: center;}
.lc-sec2-wrap .col .info { flex: 1 1 auto; min-width: 0; width: 1%; padding-right: 20px; }
.lc-sec2-wrap .col .tt { margin-bottom: 16px; font-size: var(--font-size22); line-height: 1.63em; font-weight: 600; color: #2c2c2c; }
.lc-sec2-wrap .col .txt p { position: relative; padding-left: 12px; margin-bottom: 8px; font-size: var(--font-size18); line-height: 1.55em; }
.lc-sec2-wrap .col .txt p::before { content: ""; position: absolute; left: 0; width: 4px; height: 4px; border-radius: 4px; top: 12px; background: #a8a8a8; }
.lc-sec2-wrap .col .txt p:last-child { margin-bottom: 0; }

/* 공공부문 */
.pb-sec1-wrap .col { margin-bottom: 60px; display: flex; align-items: center; }
.pb-sec1-wrap .col:last-child { margin-bottom: 0; }
.pb-sec1-wrap .col .img { width: 50%; border-radius: 16px; overflow: hidden; }
.pb-sec1-wrap .col .info { width: 50%; padding-left: 80px;}
.pb-sec1-wrap .col .txt p { position: relative; margin-bottom: 8px; padding-left: 19px; font-size: var(--font-size20); line-height: 1.7em; font-weight: 400; }
.pb-sec1-wrap .col .txt p::before { content: ""; position: absolute; left: 0; width: 4px; height: 4px; border-radius: 4px; background: #a8a8a8; top: 15px; }
.pb-sec1-wrap .col .txt p:last-child { margin-bottom: 0; }
.pb-tit { font-size: var(--font-size42); font-weight: 600; line-height: 1.38em; color: #2c2c2c; margin-bottom: 60px; }
.pb-sec2-wrap { margin-top: 40px; display: flex; flex-wrap: wrap; gap: 24px; }
.pb-sec2-wrap .col { width: calc(100%/3 - 16px); border-radius: 16px; overflow: hidden; position: relative; }
.pb-sec2-wrap .col .tt { position: absolute; left: 0; right: 0; margin: auto; text-align: center; bottom: 20px; font-size: var(--font-size24); line-height: 1.66em; font-weight: 600; color: #fff; }

/* 공지사항 */
.noti-list { display: flex; flex-wrap: wrap; gap: 60px 24px;}
.noti-list .item { width: calc(100%/4 - 18px);} 
.noti-list .item a { display: block; }
.noti-list .item .thumb { padding-bottom: 100%; display: block; overflow: hidden; border-radius: 16px; position: relative; }
.noti-list .item .thumb img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover;}
.noti-list .item .ctr { margin: 30px 0 12px; color: var(--color-primary); font-weight: 500; line-height: 1.5em; }
.noti-list .item .tit { margin-bottom: 12px; font-size: var(--font-size20); line-height: 1.7em; font-weight: 600; color: #2c2c2c; }
.noti-list .item .date { font-size: var(--font-size18); line-height: 1.55em; color: #878787; }

/* 프로모션 - 리스트 */
.promotion-list .item { margin-bottom: 40px; display: flex; align-items: center;}
.promotion-list .item:last-child { margin-bottom: 0; }
.promotion-list .item .thumb { width: 330px; margin-right: 60px; }
.promotion-list .item .thumb>div { padding-bottom: 100%; position: relative; overflow: hidden; display: block; border-radius: 16px; }
.promotion-list .item .thumb img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover;}
.promotion-list .item .info { flex: 1 1 auto; min-width: 0; width: 1%; display: flex; justify-content: space-between; align-items: center; }
.promotion-list .item .left { flex: 1 1 auto; min-width: 0; width: 1%; padding-right: 20px; }
.promotion-list .item .ctr { font-weight: 500; line-height: 1.5em; color: var(--color-primary); margin-bottom: 12px; }
.promotion-list .item .tit { font-size: var(--font-size28); line-height: 1.5em; color: #2c2c2c; font-weight: 600; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:normal; display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical;}
.promotion-list .item ul { margin: 40px 0;}
.promotion-list .item ul li { display: flex; line-height: 1.5em; margin-bottom: 12px; }
.promotion-list .item ul li:last-child { margin-bottom: 0; }
.promotion-list .item ul li .tt { color: #a8a8a8; font-weight: 500; width: 75px; }
.promotion-list .item ul li .txt { flex: 1 1 auto; min-width: 0; width: 1%; }
.promotion-list .item .date { font-size: var(--font-size18); color: #878787; line-height: 1.55em; font-weight: 400; }
.promotion-list .item .right { text-align: center; }
.promotion-list .item .right a { width: 172px; height: 56px; border-radius: 6px; background: var(--color-primary); color: #fff; line-height: 1em; display: flex; align-items: center; justify-content: center; font-weight: 700; color: #fff; margin-bottom: 10px; }
.promotion-list .item .right .d-day { font-size: 14px; line-height: 1.42em; color: #a8a8a8; font-weight: 500; }
.promotion-list .item .right .d-day span { color: #676767; }

/* 프로모션 - 상세 */
.promotion-summary { display: flex; height: 100%; align-items: flex-start; padding-top: 100px; }
.promotion-summary .info { flex: 1 1 auto; min-width: 0; width: 1%; }
.promotion-summary .info .title { margin-bottom: 16px; font-size: var(--font-size42); line-height: 1.38em; color: #2c2c2c; font-weight: 600; }
.promotion-summary .info .spanbox { margin-bottom: 40px; }
.promotion-summary .info .spanbox span { display: inline-block; padding-right: 24px; font-size: var(--font-size18); line-height: 1.55em; }
.promotion-summary .info .spanbox span.ctr { color: #676767; font-weight: 500; }
.promotion-summary .info .spanbox span.date { color: #878787; font-weight: 400; }
.promotion-summary .info .spanbox span:last-child { padding-right: 0; }
.promotion-summary .info-list { margin-bottom: 100px; }
.promotion-summary .info-list li { display: flex; padding: 30px 0; border-bottom: 1px solid #eee; font-size: var(--font-size18); line-height: 1.55em; font-weight: 400; }
.promotion-summary .info-list li .tt { color: var(--color-primary); font-weight: 600; width: 200px; }
.promotion-summary .info-list li .txt { flex: 1 1 auto; min-width: 0; width: 1%; }
.promotion-summary .detail-tit { font-size: var(--font-size28); line-height: 1.5em; font-weight: 600; color: #2c2c2c; margin-bottom: 40px; }
.promotion-summary .image { width: 330px; margin-left: 80px; position: sticky; top: 130px; height: 100%;}
.promotion-summary .image .thumb { padding-bottom: 100%; position: relative; overflow: hidden; display: block; border-radius: 16px; }
.promotion-summary .image .thumb img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover;}
.promotion-summary .image .btns { padding: 24px 0; margin-bottom: 24px; border-bottom: 1px solid #eee; }
.promotion-summary .image .btns a { height: 56px; border-radius: 6px; display: flex; align-items: center; justify-content: center; font-weight: 600; line-height: 1em; width: 100%; background: #eee; color: #878787; }
.promotion-summary .image .btns .fx { display: flex; gap: 8px; margin-bottom: 8px; }
.promotion-summary .image .btns .fx a { width: calc(100%/2 - 4px); color: #fff; }
.promotion-summary .image .btns .fx a.apply-btn { background: var(--color-primary);}
.promotion-summary .image .btns .fx a.apply-btn.ended { background: #f9f9f9; color: #ccc; }
.promotion-summary .image .btns .fx a.wating-btn { background: #121212;}
.promotion-summary .image .btns .fx a.wating-btn.ended { background: #f9f9f9; color: #ccc; }
.promotion-summary .image ul li { display: flex; justify-content: space-between; line-height: 1.5em; margin-bottom: 8px; font-weight: 400; }
.promotion-summary .image ul li:last-child { margin-bottom: 0; }
.promotion-summary .image ul li .tt { color: #878787; font-weight: 500; }

/* 감사이야기 */
.story { padding: 40px; border-radius: 16px; background: #F6F6F6; margin-bottom: 80px; }
.story .tit { display: inline-block; font-size: 14px; font-weight: 600; line-height: 1.14em; color: var(--color-primary); padding: 6px 10px 4px; border-radius: 25px; background: #fff; border: 1px solid var(--color-primary); margin-bottom: 20px; }
.story .txt p { position: relative; margin-bottom: 8px; padding-left: 13px; font-size: var(--font-size18); line-height: 1.66em; color: #676767; font-weight: 500; }
.story .txt p::before { content: ""; position: absolute; left: 0; width: 5px; height: 5px; border-radius: 5px; background: #ccc; top: 12px; }
.story .txt p:last-child { margin-bottom: 0; }
.story .txt p strong { color: #2c2c2c; font-weight: 600; }

/* 온라인 상담신청 */
.inq-form .required { color: var(--color-primary);}
.inq-group { margin-bottom: 70px; }
.inq-group h3 { font-size: var(--font-size28); line-height: 1.5em; color: #2c2c2c; font-weight: 600; padding-bottom: 24px; }
.inq-group ul { padding: 66px 0; border-top: 2px solid #2c2c2c; border-bottom: 1px solid #eee;}
.inq-group ul li { display: flex; margin-bottom: 72px; }
.inq-group ul li:last-child { margin-bottom: 0; }
.inq-group ul li .tt { font-size: var(--font-size18); line-height: 1.55em; font-weight: 600; color: #2c2c2c; width: 180px; }
.inq-group ul li .info { flex: 1 1 auto; min-width: 0; width: 1%; padding-top: 2px; }
.inq-form .item-fx { display: flex; flex-wrap: wrap; gap: 10px 24px; }
.inq-form .item-fx .item { font-weight: 500; }
.inquiry .form-wrap { display: flex; flex-wrap: wrap; gap: 40px 20px;}
.inquiry .form-wrap dl { width: calc(100%/2 - 10px); }
.inquiry .form-wrap dl.w100 { width: 100%; }
.inquiry .form-wrap dt { margin-bottom: 20px; line-height: 1.556em; font-size: var(--font-size18); font-weight: 600; color: #2c2c2c; }
.inquiry .form-wrap dd .input { padding: 20px; background-color: #f6f6f6; border-radius: 8px; height: 60px; border: none; width: 100%; }
.inquiry .form-wrap dd .input::placeholder { color: #a8a8a8; font-weight: 400; }
.inquiry .btn-wrap { padding-top: 70px; }
.inquiry .btn-wrap .check { text-align: center; color: #2c2c2c; font-size: 16px; font-weight: 500; line-height: 1.4em; margin-bottom: 34px; }
.inquiry .btn-wrap .check a { color: #a8a8a8; text-decoration: underline; text-underline-position: under; position: relative; top: -1px; margin-left: 5px; }
.inquiry .btn-wrap .checkbox label:before { background-color: #fff; }
.inquiry .btn-wrap .checkbox input:checked + label:before { background:var(--color-primary) url("/images/bbs/checkbox.png") 50% 50% no-repeat; border-color:var(--color-primary);}
.inquiry .btn-wrap .btn-submit { width: 128px; height: 66px; border-radius: 40px; display: flex; align-items: center; justify-content: center; color: #fff; line-height: 1em; margin: auto; background: var(--color-primary); font-size: var(--font-size18); font-weight: 700; cursor: pointer; border: none; }
.file-upload {display:flex; height:60px; gap: 6px; }
.file-button {display:flex; justify-content:center; align-items:center; height:100%; padding:0 20px; border:0; border-radius:8px; background:#121212; color:#fff; cursor:pointer; font-weight: 700; transition: .3s;}
.file-button:hover {background:var(--color-primary);}
.file-name {flex:1 1 auto; min-width:0; width:1%; display:flex; align-items:center; height:100%; padding:0 20px; border-radius:8px; background: #f6f6f6; color: #a8a8a8; font-size: 16px; font-weight: 400; }