/*
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
*/
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css');

.promotionTmpl div, .promotionTmpl a {
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, 'Helvetica Neue', 'Segoe UI', 'Apple SD Gothic Neo', 'Noto Sans KR', 'Malgun Gothic', sans-serif !important;
    box-sizing: border-box;
}

body {
    margin: 0;
    width: 100%;
}
html {
    width: 100%;
}

.conDiv {
    width: 1200px;
}


.lbti_banner,
.top_banner,
.left_nav_btn,
.left_nav_wrap,
#top_btn2,
#topBtn4Rn {
    display: none;
}

/* GNB */
#aicampus-gnb {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: #fff;
    border-bottom: 1px solid #e8e8e8;
}
#aicampus-gnb .gnb-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1220px;
    margin: 0 auto;
    padding: 0 20px;
    height: 50px;
}
#aicampus-gnb .gnb-logo img {
    width: 83px;
    height: 20px;
    object-fit: contain;
    display: block;
}
#aicampus-gnb .gnb-nav {
    display: flex;
    align-items: center;
    gap: 40px;
}
#aicampus-gnb .gnb-nav ul {
    display: flex;
    align-items: center;
    gap: 40px;
    list-style: none;
    margin: 0;
    padding: 0;
}
#aicampus-gnb .gnb-nav ul li a {
    font-family: 'Pretendard', sans-serif;
    font-weight: 500;
    font-size: 14px;
    color: #000;
    text-decoration: none;
    letter-spacing: -0.28px;
}
#aicampus-gnb .gnb-nav ul li a:hover,
#aicampus-gnb .gnb-nav ul li a._active {
    color: #c00c3f;
}
#aicampus-gnb .gnb-cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #c00c3f;
    color: #fff;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: -0.26px;
    padding: 8px 12px;
    border-radius: 5px;
    text-decoration: none;
    white-space: nowrap;
}
#aicampus-gnb .gnb-cta:hover {
    background: #a00a35;
}
#aicampus-gnb .gnb-cta--kakao {
    background: #332927;
    padding: 8px 10px;
}
#aicampus-gnb .gnb-cta--kakao:hover {
    background: #1e1816;
}
#aicampus-gnb .gnb-cta__kakao-logo {
    display: block;
    width: 18px;
    height: 16px;
    flex-shrink: 0;
}

/* Footer */
#aicampus-footer {
    background: #f8f8f8;
}
#aicampus-footer .footer-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 50px 40px;
}
#aicampus-footer .footer-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 24px;
}
#aicampus-footer .footer-desc {
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    font-size: 14px;
    color: #333842;
    line-height: 1.6;
    margin: 0;
    word-break: keep-all;
}
#aicampus-footer .footer-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 12px;
}
#aicampus-footer .footer-links {
    display: flex;
    align-items: center;
    gap: 10px;
}
#aicampus-footer .footer-links a {
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    font-size: 14px;
    color: #333842;
    text-decoration: none;
    line-height: 1.6;
}
#aicampus-footer .footer-links a:hover {
    text-decoration: underline;
}
#aicampus-footer .footer-links span {
    color: #c7c7c7;
    font-size: 12px;
}
#aicampus-footer .footer-logos {
    display: flex;
    align-items: center;
    gap: 24px;
}
#aicampus-footer .footer-logos img {
    height: 21px;
    object-fit: contain;
}
#aicampus-footer .footer-copyright {
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    font-size: 12px;
    color: #b9bfca;
    line-height: 1.6;
    margin: 0;
}

._flexCenter {
    align-items: center;
    justify-content: center;
}
.conSec1 {
    background: url('/assets/img/aicampus/pc/1/bg.png') no-repeat center center;
    background-size: cover;
}

.conSec2 .tab_wrp {
    height: 58px;
    align-items: center;
}
.conSec2 .tab_wrp .tab_btn {
    width: 50%;
    text-align: center;
    background: #EEE;
    color: #353535;
    font-size: 16px;
    font-weight: 600;
    display: block;
    height: 100%;
    display: flex;
    align-items: center; 
    justify-content: center;
}
.conSec2 .tab_wrp .tab_btn._active {
    background: #900B2E;
    color: #FFF;
}

.conSecContent {
    padding: 110px 0 100px 0;
}
.conSecContent ._tit, .conSecContent ._tit2 span {
    color: #262626;
    text-align: center;
    font-size: 54px;
    font-weight: 700;
    line-height: 140%; /* 75.6px */
    letter-spacing: -1.62px;
    background: none;
}
.conSecContent ._tit2 {
    background: linear-gradient(90deg, #900B2E 0%, #FF48B3 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 54px;
    font-weight: 700;
    line-height: 140%;
    letter-spacing: -1.62px;
}
.conSecContent ._txt {
    color: #202020;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%; /* 28.8px */
    letter-spacing: -0.36px;
    word-break: keep-all;
}
.conSecContent ._underline {
    font-weight: 600;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: auto;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}
.content_info_wrp {
    margin-top: 44px;
}

.content_info_wrp .info_box_wrp {
    gap: 24px;
    width: 746px;
    margin: 0 auto;
}

.content_info_wrp .info_box_wrp .info_box {
    width: 48.3%;
    border-radius: 16px;
    background: #FFF3F6;
    padding: 30px 28px;
    display: flex;        
    flex-direction: column;
}
.content_info_wrp .info_box_wrp .info_box2 {
    width: 100%;
}
.content_info_wrp .info_box_wrp .info__tit {
    color: #A50034;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    line-height: 100%; /* 16px */
    letter-spacing: -0.32px;
    margin-bottom: 16px;
}
.content_info_wrp .info_box_wrp .info__txt {
    color: #313131;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 180%;
    letter-spacing: -0.32px;
    display: flex;          
    flex-direction: column;
    align-items: center;     
    justify-content: center; 
    flex: 1 0 0;
    align-self: stretch;
}
.conSecMcp_3 {
    background: #A50034;
}
.conSecMcp_3, .conSecKG_3 {
    margin: 0;
    padding: 0;
}
.con_tit {
    color: #222;
    text-align: center;
    font-size: 40px;
    font-weight: 700;
    line-height: 140%; /* 56px */
    letter-spacing: -0.8px;
    margin-bottom: 16px;
}
.con_txt {
    color: #343333;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 160%; /* 25.6px */
    letter-spacing: -0.32px;
    word-break: keep-all;
}
.tech_box_wrp {
    margin-top: 45px;
    gap: 24px;
}
.tech_box_wrp .tech_box {
    border-radius: 16px;
    background: #F5F5F5;
    padding: 30px 28px;
    width: 380px;
    height: 440px;
}
.tech_box_wrp .tech_img {
    padding-bottom: 24px;
    border-bottom: 1px solid #C7C7C7;
    mix-blend-mode : multiply
}
.tech_box_wrp .tech_info {
    margin-top: 20px;
    padding-top: 20px;
}
.tech_box_wrp .tech_info .__tit {
    color: #000;
    font-size: 24px;
    font-weight: 600;
    line-height: 150%; /* 36px */
    text-align: left;
}
.tech_box_wrp .tech_info .__subtit {
    color: #595959;
    font-size: 16px;
    font-weight: 600;
    line-height: 150%; /* 24px */
    letter-spacing: -0.32px;
    text-align: left;
}
.tech_box_wrp .tech_info .__content {
    color: #242424;
    font-size: 14px;
    font-weight: 400;
    line-height: 160%; /* 22.4px */
    margin-top: 16px;
    text-align: left;
    word-break: keep-all;
}
.conSecMcp_5 {
    background: #FFF3F6;
}
.conSecMcp_5 .con_tit {
    color: #222;
}
.conSecMcp_5 .con_txt {
    color: #343333;
}
.curriculum_wrp {
    width: 1120px;
    margin: auto;
    margin-top: 45px;
}
/* curriculum PC */
.curr_inner {
    display: flex;
    background: #fff;
    border-radius: 30px;
    overflow: hidden;
    min-height: 609px;
    box-shadow: 0 2px 18px 0 #D1B7BE;
}
.curr_list {
    width: 434px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
}
.curr_card {
    cursor: pointer;
    background: #fff;
    border: none;
    padding: 0;
    text-align: left;
    width: 100%;
}
/* .curr_card:nth-child(odd) {
    background: #F5F5F5;
} */
 
.curr_card:hover, .curr_card.is-active {
    background: #FCE2E9;
}
.curr_card__hd {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 22px 24px 22px 32px;
    gap: 18px;
    min-height: 87px;
    box-sizing: border-box;
}
.curr_icon {
    width: 46px;
    height: 46px;
    border-radius: 8px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* .curr_card.is-active .curr_icon {
    background: none;
    width: auto;
    height: auto;
} */
.curr_txt {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
    min-width: 0;
}
.curr_type_row {
    display: flex;
    align-items: center;
    gap: 18px;
}
.curr_type {
    font-size: 12px;
    font-weight: 600;
    color: rgb(84,93,109);
    font-style: normal;
}
.curr_title {
    font-size: 15px;
    font-weight: 600;
    color: rgb(4,4,4);
    word-break: keep-all;
}
.curr_arr {
    display: none;
}
.curr_card__bd {
    display: none;
}
/* PC 우측 패널 */
.curr_panel {
    flex: 1;
    padding: 30px 30px 30px 34px;
    min-width: 0;
    border-left: 1px solid #DEDEDE;
    text-align: left;
}
.curr_panel__item {
    display: none;
    flex-direction: column;
    gap: 22px;
    height: 100%;
}
.curr_panel__item.is-active {
    display: flex;
}
/* 공통 detail 내부 */
.curr_detail_hd {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.curr_detail_type {
    font-size: 13px;
    font-weight: 700;
    color: #C00C3F;
    font-style: normal;
}
.curr_detail_title {
    font-size: 24px;
    font-weight: 700;
    color: #000;
    display: block;
    line-height: 1.3;
    word-break: keep-all;
}
.curr_detail_desc {
    font-size: 14px;
    font-weight: 400;
    color: rgb(81,81,81);
    margin: 4px 0 0;
    line-height: 1.5;
}
.curr_divider {
    border: none;
    border-top: 1px solid #E5E5E5;
    margin: 0;
}
.curr_detail_sec {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.curr_sec_tit {
    font-size: 18px;
    font-weight: 700;
    color: #101010;
    display: block;
}
.curr_sec_txt {
    font-size: 14px;
    font-weight: 400;
    color: #161616;
    margin: 0;
    line-height: 1.6;
    word-break: keep-all;
}
.tch_wrp {
    gap: 24px;
    margin-top: 60px;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
}
.tch_wrp .tch_box {
    padding: 40px 30px;
    border-radius: 16px;
    background: #1D1D1D;
    display: flex;
    flex-direction: row;
    gap: 43px;
    align-items: flex-start;
    max-width: 540px;
    word-break: keep-all;
}
.tch_box .tch_img_wrap {
    display: flex;
    flex-direction: row;
    flex-shrink: 0;
}
.tch_box .tch_img {
    width: 140px;
    height: 165px;
    border-radius: 8px;
    overflow: hidden;
    display: block;
    flex-shrink: 0;
}
.tch_box .tch_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tch_box .tch_name--mo {
    display: none;
}
.tch_box .tch_content {
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-align: left;
}
.tch_box .tch_name {
    font-size: 29px;
    font-weight: 700;
    color: #fff;
    line-height: 150%;
    letter-spacing: -0.58px;
}
.tch_box .tch_career {
    display: flex;
    flex-direction: column;
    gap: 18px;
    list-style: none;
    padding: 0;
    margin: 0;
}
.tch_box .tch_career li {
    padding-left: 15px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    border-left: 2px solid #3C3C3C;
}
.tch_box .career_tit {
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    line-height: 1.2;
}
.tch_box .career_date {
    font-size: 14px;
    font-weight: 400;
    color: #9F9F9F;
    line-height: 1.2;
}
.conSec7 {
    background: #0E0E0E;
}
.conSec8 {
    background: #EEEFEF;
}
.conSec9 {
    padding-bottom: 110px;
}
.lec_info {
    background: #fff;
    width: 921px;
    margin: 0 auto;
    margin-top: 40px;
}
.lec_info__hd {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 0;
    border-bottom: 3px solid #121212;
}
.lec_info__hd_txt {
    font-size: 26px;
    font-weight: 700;
    white-space: nowrap;
    color: var(--LG, #C00C3F);
    line-height: 140%; /* 36.4px */
    letter-spacing: -0.52px;
}
.lec_info__hd_line {
    display: none;
}
.lec_info__list {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
}
.lec_info__row {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 26px;
    padding: 23px 20px;
    background: #fff;
    text-align: left;
    border-bottom: 1px solid #CCC;
}
.lec_info__row + .lec_info__row {
    margin-top: 4px;
}
.lec_info__row dt {
    width: 180px;
    flex-shrink: 0;
    font-size: 19px;
    font-weight: 700;
    color: #1F1F1F;
    line-height: 1.17;
}
.lec_info__row dd {
    margin: 0;
    font-size: 16px;
    font-weight: 500;
    color: #363636;
    line-height: 1.34;
}
.BottomAccordionMainTitle {
    text-align: center;
    padding-left: 0;
}
.accordion-item-header {
    background: url('/assets/img/aicampus/pc/10/arrow_open.svg') no-repeat center right;
}
.accordion-item-header.header_active {
    background: url('/assets/img/aicampus/pc/10/arrow_close.svg') no-repeat center right;
}
.conSec11 {
    padding: 104px 0 75px 0;
    background: url('/assets/img/aicampus/pc/11/bg.png') no-repeat center center;
    background-size: cover;
}

.conSec11 ._tit {
    color: #FFF;
    text-align: center;
    font-size: 25px;
    font-weight: 500;
    line-height: 144%; /* 36px */
    letter-spacing: -0.5px;
}
.conSec11 ._tit2 {
    color: #FFF;
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 144%;
    letter-spacing: -0.8px;
}
.lec_card_wrap {
    margin-top: 37px;
    gap: 24px;
    justify-content: center;
    align-items: center;
}
.lec_card_wrap .lec_card {
    display: flex;
    width: 420px;
    flex-direction: column;
    align-items: flex-start;
    background-color: #fff;
}
.lec_card_wrap .lec_card .lec_card_con {
    padding: 30px 30px 20px 30px;
}
.lec_card_wrap .lec_card .lec_card_con .__tit {
    color: #6E6E6E;
    text-align: left;
    font-size: 15px;
    font-weight: 600;
    line-height: 130%; /* 19.5px */
    letter-spacing: -0.3px;
    margin-bottom: 10px;
}
.lec_card_wrap .lec_card .lec_card_con .__tit2 {
    color: #000;
    font-size: 22px;
    font-weight: 700;
    line-height: 130%; /* 28.6px */
    letter-spacing: -0.44px;
    text-align: left;
}
.lec_card_wrap .lec_card .lec_card_btm {
    display: flex;
    padding: 15px 56px 15px 30px;
    justify-content: flex-end;
    gap: 5px;
    align-self: stretch;
    background: #FFF3F6 url('/assets/img/aicampus/pc/11/icon_1.svg') no-repeat center right 30px;
    color: var(--LG, #C00C3F);
    text-align: right;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: -0.32px;
    align-content: center;
    cursor: pointer;
}

.lec_card_wrap .lec_card2 .lec_card_btm {
    background: #C00C3F url('/assets/img/aicampus/pc/11/icon_2.svg') no-repeat center right 30px;
    color: #fff;
}

._flt {
    bottom: 60px;
}
._fltCon {
    gap: 6px;
    width: 100%;
    justify-content: space-between;
    align-items: center;
}
._fltCon .flt_tit {
    color: #1D1D1D;
    font-size: 15px;
    font-weight: 600;
    line-height: 130%; /* 19.5px */
    letter-spacing: -0.45px;
    margin-bottom: 5px;
}
._fltCon .flt_tit2 {
    color: #3A3A3A;
    text-align: center;
    font-size: 13px;
    font-weight: 500;
    line-height: 130%; /* 16.9px */
    letter-spacing: -0.39px;
    text-align: left;
    gap: 3px;
}
._fltCon .flt_tit2 .count_txt {
    color: var(--LG, #C00C3F);
    text-align: center;
    font-size: 13px;
    font-weight: 500;
    line-height: 130%; /* 16.9px */
    letter-spacing: -0.39px;
}
._fltCon .flt_tit2 .count_txt2 {
    margin-left: -3px;
}
._fltCon .flt_apl_btn {
    display: flex;
    height: 39px;
    padding: 11px 22px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 8px;
    background: var(--LG, #C00C3F);
    color: #FFF;
    font-size: 13px;
    font-weight: 600;
    line-height: 130%; /* 16.9px */
    letter-spacing: -0.39px;
    text-align: center;
    border: 0;
}
.conSecKg_3, .conSecMcp_3 {
    background: #A50034;
}


._trmDiv ._tlt {
    font-weight: 700;
    font-size: 20px;
    line-height: 29px;
    color: #40474D;
}

._trmDiv ._con {
    font-weight: 400;
    font-size: 14px;
    line-height: 25px;
    color: #40474D;
    margin-top: 20px;
    word-break: keep-all;
}


._tpDiv ._t1{
    margin-top: 20px;
    font-weight: 700;
    font-size: 15px;
    line-height: 25px;
    color: #40474D;
}
._tpDiv ._c1{
    margin-top: 4px;
    font-weight: 400;
    font-size: 13px;
    line-height: 22px;
    color: #40474D;
    word-break: keep-all;
}
._tpDiv ._c2{
    margin-top: 12px;
    font-weight: 400;
    font-size: 13px;
    line-height: 22px;
    color: #40474D;
    word-break: keep-all;
}
._tpDiv ._c3{
    margin-top: 20px;
    font-weight: 400;
    font-size: 13px;
    line-height: 22px;
    color: #40474D;
    word-break: keep-all;
}
._tpDiv ._u1{
    counter-reset:u1-num;
}
._tpDiv ._u1 > li{
    position: relative;
    font-weight: 700;
    font-size: 14px;
    line-height: 22px;
    margin-top: 12px;
    list-style: none;
    padding-left: 20px;
    word-break: keep-all;
}
._tpDiv ._u1 > li:before{
    position: absolute;
    content:"■";
    top: 0;
    left: 0;
}
._tpDiv ._u2{
    counter-reset:u2-num;
}
._tpDiv ._u2 > li{
    counter-increment:u2-num;
    position: relative;
    font-weight: 400;
    font-size: 13px;
    line-height: 24px;
    margin-top: 8px;
    list-style: none;
    padding-left: 15px;
    word-break: keep-all;
}
._tpDiv ._u2 > li:before{
    position: absolute;
    content:"- ";
    top: 0px;
    left: 0;
}
._tpDiv ._u3{
    counter-reset:u3-num;
}
._tpDiv ._u3 > li{
    counter-increment:u3-num;
    position: relative;
    font-weight: 700;
    font-size: 13px;
    line-height: 22px;
    margin-top: 12px;
    list-style: none;
    padding-left: 20px;
    word-break: keep-all;
}
._tpDiv ._u3 > li:before{
    position: absolute;
    content: counter(u3-num)")";
    top: 0;
    left: 0;
}
._tpDiv ._dt1{
    margin-top: 12px;
    text-align: right;
    font-size: 12px;
    line-height: 22px;
    color: #40474D;
    padding-right: 24px;
}

._flt {
    border-radius: 120px;
    border: 2px solid rgba(255, 255, 255, 0.40);
    background: linear-gradient(90deg, rgba(144, 11, 46, 0.80) 0%, rgba(252, 45, 99, 0.80) 100%);
    backdrop-filter: blur(4.5px);
    display: inline-flex;
    height: 65px;
    padding: 19px 118px;
    justify-content: center;
    align-items: center;
    gap: 4px;
    cursor: pointer;
    left: 50%;
    transform: translateX(-50%);
}

._fltCon {
    justify-content: center;
}
.flt_rsv_btn {
    border:0;
    color: #FFF;
    font-size: 18px;
    font-weight: 700;
    line-height: normal;
    background: transparent;
    text-align: center;
}
._flt  ._fltBtn {
    color: #FFF;
    font-family: Inter;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}

.accordion-item-body p {
    word-break: keep-all;
}

.info__txt--note {
    color: var(--LG, #C00C3F);
    font-size: 13px;
    font-weight: 400;
    line-height: 150%;
    text-align:left;
}

input[type=radio]+label {
    background: url('/assets/img/aicampus/pc/apply/radio_off.svg') no-repeat left center;
    background-size: contain;
    margin-bottom: 0;
}

input[type=radio]:checked+label {
    background: url('/assets/img/aicampus/pc/apply/radio_on.svg') no-repeat left center;
}

input[type=checkbox]+label {
    background: url('/assets/img/aicampus/pc/apply/check_off.svg') no-repeat left center;
    background-size: contain;
    margin-bottom: 0;
    height: 22px;
}

input[type=checkbox]:checked+label {
    background: url('/assets/img/aicampus/pc/apply/check_on.svg') no-repeat left center;
}


/* 화면이 768px 이하일 때 width를 auto로 변경 */
@media screen and (max-width: 768px) {
    ._mo {
        display: block !important;
    }
    ._pc {
        display: none !important;
    }
    .conDiv {
        width: auto;
    }

    #aicampus-gnb .gnb-nav ul {
        display: none;
    }
    #aicampus-gnb .gnb-nav {
        gap: 0;
    }
    /* index 페이지 모바일: nav 메뉴 노출, CTA 버튼 숨김 */
    .index-page #aicampus-gnb .gnb-nav ul {
        display: flex;
        gap: 15px;
    }
    .index-page #aicampus-gnb .gnb-cta {
        display: none;
    }
    .index-page #aicampus-gnb .gnb-item-course {
        display: none;
    }
    .index-page #aicampus-gnb .gnb-text-full {
        display: none;
    }
    #aicampus-footer .footer-top {
        flex-direction: column;
        gap: 20px;
    }
    #aicampus-footer .footer-right {
        align-items: flex-start;
    }
    #aicampus-footer .footer-inner {
        padding: 40px 20px;
    }

    /* tch_box 모바일 */
    .tch_wrp .tch_box {
        width: 100%;
        border-radius: 20px;
        padding: 20px;
        flex-direction: column;
        gap: 23px;
        max-width: 100%;
    }
    .tch_box .tch_img_wrap {
        flex-direction: row;
        align-items: center;
        gap: 21px;
    }
    .tch_box .tch_img {
        width: 112px;
        height: 112px;
        border-radius: 16px;
    }
    .tch_box .tch_name--mo {
        display: block;
        font-size: 24px;
        font-weight: 700;
        color: #fff;
        letter-spacing: -0.48px;
    }
    .tch_box .tch_name--pc {
        display: none;
    }
    .tch_box .tch_content {
        gap: 18px;
    }
    .tch_box .tch_career li {
        padding-left: 18px;
    }
    .tch_box .career_tit {
        font-size: 14px;
    }
    .tch_box .career_date {
        font-size: 11px;
    }
    .tech_box_wrp .tech_box {
        padding: 16px;
        height: 100%;
    }
    .tech_box_wrp .tech_info .__tit {
        font-size: 20px;
    }
    .tech_box_wrp .tech_info .__subtit {
        font-size: 13px;
    }
    .conSecContent  {
        padding: 50px 20px;
    }
    .conSecContent ._tit, .conSecContent ._tit2 span, .conSecContent ._tit2 {
        font-size: 31px;
    }
    .conSecContent ._txt {
        font-size: 16px;
    }
    .con_tit {
        font-size: 28px;
    }

    /* curriculum 모바일 */
    .curriculum_wrp {
        width: auto;
        margin: 45px 10px 0 10px;
    }
    .curr_inner {
        flex-direction: column;
        background: transparent;
        border-radius: 0;
        overflow: visible;
        min-height: 0;
        gap: 15px;
        box-shadow: none;
    }
    .curr_list {
        width: 100%;
        gap: 15px;
    }
    .curr_card {
        border-radius: 16px;
        overflow: hidden;
        background: #fff !important;
    }
    .curr_card__hd {
        padding: 12px 14px;
        gap: 8px;
        min-height: 0;
        align-items: center;
    }
    .curr_card.is-active .curr_card__hd {
        background: #FCE2E9;
        border: 1px solid #F794B0;
        border-radius: 16px 16px 0 0;
        border-bottom: none;
    }
    .curr_type_row {
        gap: 4px;
        align-items: center;
    }
    .curr_txt {
        gap: 7px;
    }
    .curr_type {
        font-size: 11px;
        color: #C00C3F;
        letter-spacing: -0.22px;
    }
    .curr_title {
        font-size: 17px;
        letter-spacing: -0.34px;
    }
    .curr_arr {
        display: flex;
        width: 24px;
        height: 24px;
        min-width: 24px;
        border-radius: 50%;
        background: #EAEAEA;
        align-items: center;
        justify-content: center;
        transition: background 0.2s;
        align-self: center;
    }
    .curr_arr::after {
        content: '';
        display: block;
        width: 8px;
        height: 8px;
        border-right: 2px solid #1B1B1B;
        border-bottom: 2px solid #1B1B1B;
        transform: rotate(45deg) translate(-2px, -1px);
        transition: transform 0.2s, border-color 0.2s;
    }
    .curr_card.is-active .curr_arr {
        background: #C00C3F;
    }
    .curr_card.is-active .curr_arr::after {
        border-color: #fff;
        transform: rotate(-135deg) translate(-2px, -1px);
    }
    .curr_card__bd {
        display: none;
        padding: 14px;
        flex-direction: column;
        gap: 18px;
    }
    .curr_card.is-active .curr_card__bd {
        display: flex;
        border: 1px solid #F794B0;
        border-radius: 0 0 16px 16px;
    }
    .curr_card__bd .curr_detail_type { font-size: 12px; }
    .curr_card__bd .curr_detail_title { font-size: 18px; }
    .curr_card__bd .curr_detail_desc { color: #A50034; }
    .curr_card__bd .curr_sec_tit { font-size: 14px; }
    .curr_card__bd .curr_sec_txt { font-size: 13px; }
    .curr_panel {
        display: none;
    }
    .curr_icon {
        width: 11px;
        height: 13px;
        background: none;
        border-radius: 0;
        flex-shrink: 0;
    }
    .curr_icon img, .curr_icon picture {
        width: 100%;
        height: 100%;
        display: block;
    }

    /* lec_info 모바일 */
    .lec_info {
        padding: 20px;
        width: 100%;
    }
    .lec_info__hd {
        gap: 20px;
        margin-bottom: 0;
        border-bottom: 0;
    }
    .lec_info__hd_txt {
        font-size: 28px;
    }
    .lec_info__hd_line {
        display: block;
        flex: 1;
        height: 3px;
        background: #C00C3F;
    }
    .lec_info__list {
        gap: 14px;
        margin-top: 14px;
    }
    .lec_info__row {
        flex-direction: column;
        gap: 5px;
        padding: 12px 14px;
        background: #FAF0F3;
        border-radius: 15px;
    }
    .lec_info__row + .lec_info__row {
        margin-top: 0;
    }
    .lec_info__row dt {
        width: auto;
        font-size: 14px;
        color: #010101;
    }
    .lec_info__row dd {
        font-size: 14px;
        line-height: 1.42;
    }

    .content_info_wrp .info_box_wrp {
        width: auto;
        flex-direction: column;
        gap: 20px;
    }

    .content_info_wrp .info_box_wrp .info_box {
        width: 100%;
        height: 100%;
        padding: 20px;
    }

    .content_info_wrp .info_box_wrp .info__tit, .content_info_wrp .info_box_wrp .info__txt {
        text-align:left;
        align-items:unset;
        word-break: keep-all;
    }
    .conSec11 {
        background: url('/assets/img/aicampus/mo/11/bg.png') no-repeat center center;
        background-size: cover;
    }

    .lec_card_wrap .lec_card {
        width: 100%;
        margin: 15px 20px;
    }
    .lec_card_wrap .lec_card .lec_card_con {
        padding: 24px;
    }
    .lec_card_wrap .lec_card .lec_card_con .__tit {
        font-size: 18px;
        margin-bottom: 7px;
    }
    .lec_card_wrap .lec_card .lec_card_con .__tit2 {
        font-size: 26px;
    }
    .lec_card_wrap .lec_card .lec_card_btm {
        padding: 16px 70px 16px 18px;
        background: url('/assets/img/aicampus/mo/11/icon_1.svg') no-repeat center right 18px,
            linear-gradient(90deg, #A90030 0%, #FA1858 100%);
        color: #FFF;
        text-align: right;
        font-size: 20px;
        font-weight: 700;
        line-height: 130%; /* 26px */
        letter-spacing: -0.4px;
    }
    .accordion {
        margin: 20px 10px;
    }
    ._fltCon {
        display:none !important;
    }
    ._flt {
        width: 320px;
        height: auto;
        padding: 12px;
        left: calc(50% - 160px);
        transform: none;
        bottom: 60px;
        display: flex;
        padding: 10px 10px 10px 16px;
        align-items: flex-start;
        gap: 6px;
        border-radius: 10px;
        background: #FFF;
        box-shadow: 0 1px 7px 0 rgba(0, 0, 0, 0.25);
    }
    ._fltCon {
        gap: 6px;
        width: 100%;
        justify-content: space-between;
        align-items: center;
    }
    ._fltCon .flt_tit {
        color: #1D1D1D;
        font-size: 15px;
        font-weight: 600;
        line-height: 130%; /* 19.5px */
        letter-spacing: -0.45px;
        margin-bottom: 5px;
    }
    ._fltCon .flt_tit2 {
        color: #3A3A3A;
        text-align: center;
        font-size: 13px;
        font-weight: 500;
        line-height: 130%; /* 16.9px */
        letter-spacing: -0.39px;
        text-align: left;
        gap: 3px;
    }
    ._fltCon .flt_tit2 .count_txt {
        color: var(--LG, #C00C3F);
        text-align: center;
        font-size: 13px;
        font-weight: 500;
        line-height: 130%; /* 16.9px */
        letter-spacing: -0.39px;
    }
    ._fltCon .flt_tit2 .count_txt2 {
        margin-left: -3px;
    }
    ._fltCon .flt_apl_btn {
        display: flex;
        height: 39px;
        padding: 11px 22px;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 10px;
        border-radius: 8px;
        background: var(--LG, #C00C3F);
        color: #FFF;
        font-size: 13px;
        font-weight: 600;
        line-height: 130%; /* 16.9px */
        letter-spacing: -0.39px;
        text-align: center;
        border: 0;
    }
    ._fltMo {
        display: flex !important;
        flex-direction: column;
        gap: 11px;
        align-items: center;
        width: 100%;
    }
    .flt_mo_top {
        display: flex;
        align-items: center;
        gap: 6px;
    }
    .flt_mo_label {
        color: #3A3A3A;
        font-size: 13px;
        font-weight: 500;
        letter-spacing: -0.39px;
        white-space: nowrap;
    }
    .flt_mo_timer {
        display: flex;
        align-items: center;
        gap: 4px;
    }
    .flt_mo_clock {
        width: 13px;
        height: 13px;
        flex-shrink: 0;
    }
    .flt_mo_time {
        color: #C00C3F;
        font-size: 13px;
        font-weight: 500;
        letter-spacing: -0.39px;
        white-space: nowrap;
    }
    .flt_mo_btns {
        display: flex;
        gap: 6px;
        width: 100%;
    }
    .flt_mo_btn {
        flex: 1;
        height: 34px;
        padding: 8px 22px;
        border-radius: 8px;
        font-size: 13px;
        font-weight: 600;
        letter-spacing: -0.39px;
        text-align: center;
        cursor: pointer;
        border: none;
        white-space: nowrap;
        line-height: 1;
    }
    .flt_mo_btn--outline {
        background: #fff;
        border: 1px solid #C00C3F;
        color: #C00C3F;
    }
    .flt_mo_btn--fill {
        background: #C00C3F;
        color: #fff;
        height: 34px;
        padding: 8px 22px;
    }

    .csmCon {
        width: 100%;
        height: 100%;
        max-height: fit-content;
        padding: 20px;
    }

}
@media (width > 480px) and (width <= 767px) {

}
@media (width > 700px) and (width <= 767px) {

}

/* ===================================================
   사전신청 모달 (conSecMd5)
=================================================== */
.csmCon5 {
    width: 580px;
    max-height: 90vh;
    overflow-y: hidden;
    padding: 30px;
    display: flex;
    flex-direction: column;
    gap: 23px;
    box-sizing: border-box;
    border-radius: 12px;
}

/* 헤더 */
.pam-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    flex-shrink: 0;
}
.pam-header-txt {
    display: flex;
    flex-direction: column;
    gap: 6px;
    flex: 1;
    min-width: 0;
}
.pam-brand {
    font-family: 'Pretendard', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: -0.39px;
    line-height: 1.4;
    background: linear-gradient(90deg, #900b2e 0%, #ff48b3 23%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    display: block;
}
.pam-title {
    font-family: 'Pretendard', sans-serif;
    font-size: 24px;
    font-weight: 700;
    color: #040404;
    letter-spacing: -0.72px;
    line-height: 1.4;
    display: block;
}
.pam-desc {
    font-family: 'Pretendard', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #1d2025;
    letter-spacing: -0.42px;
    line-height: 1.4;
    margin: 0;
    word-break: keep-all;
}
.pam-close {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 폼 영역 */
.pam-form {
    display: flex;
    flex-direction: column;
    gap: 36px;
    padding: 0;
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

/* 동의 항목 행 */
.pam-consent-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
}
.pam-acc-toggle {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.2s;
}
.pam-acc-toggle.is-open {
    transform: rotate(180deg);
}
.pam-acc-body { display: none; }

/* 필드 인라인 에러 */
.pam-field-err {
    font-family: 'Pretendard', sans-serif;
    font-size: 12px;
    color: #e83534;
    letter-spacing: -0.12px;
    line-height: 1.5;
}

/* 에러 메시지 */
.pam-err-msg {
    display: flex;
    align-items: center;
    gap: 4px;
}
.pam-err-icon {
    display: inline-block;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #fa4d4c;
    flex-shrink: 0;
    position: relative;
}
.pam-err-icon::before {
    content: '!';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -54%);
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
}
.pam-err-txt {
    font-family: 'Pretendard', sans-serif;
    font-size: 12px;
    color: #e83534;
    letter-spacing: -0.12px;
    line-height: 1.5;
    word-break: keep-all;
}

/* 제출 버튼 */
.pam-submit-btn {
    width: 100%;
    height: 40px;
    background: #c00c3f;
    color: #fff;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: -0.42px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    line-height: 1.5;
    transition: background 0.15s;
    flex-shrink: 0;
}
.pam-submit-btn:hover { background: #a00a35; }

/* apply.css 폼 클래스 – csmCon5 내부 스코프 */
.csmCon5 .apply-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.csmCon5 .apply-field__label {
    font-family: 'Pretendard', sans-serif;
    font-weight: 600;
    font-size: 15px;
    color: #333842;
    letter-spacing: -0.3px;
    line-height: 1.6;
    margin: 0;
}
.csmCon5 .apply-field__label .req { color: #e83534; }
.csmCon5 .apply-input,
.csmCon5 .apply-select {
    font-family: 'Pretendard', sans-serif;
    font-size: 15px;
    color: #7d879b;
    letter-spacing: -0.45px;
    line-height: 1.5;
    border: 1px solid #99a2b2;
    border-radius: 8px;
    outline: none;
    width: 100%;
    background: #fff;
    box-sizing: border-box;
    transition: border-color 0.15s;
    height: 50px;
}
.csmCon5 .apply-input:focus,
.csmCon5 .apply-select:focus {
    border-color: #333842;
    color: #333842;
}
.csmCon5 .apply-input.is-error,
.csmCon5 .apply-select.is-error { border-color: #fa4d4c; }
.csmCon5 .apply-input {
    padding: 10px 14px;
}
.csmCon5 .apply-select {
    padding: 10px 40px 10px 14px;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 7.5L10 12.5L15 7.5' stroke='%2399a2b2' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 20px;
    cursor: pointer;
}
.csmCon5 .apply-divider {
    height: 1px;
    background: #7d879b;
    border: none;
    margin: 0;
}
.csmCon5 .apply-consent-wrap {
    display: flex;
    flex-direction: column;
    gap: 34px;
}
.csmCon5 .apply-consent-all {
    background: #e8eaee;
    border-radius: 10px;
    padding: 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 7px;
    word-break: keep-all;
}
.csmCon5 .apply-consent-group {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.csmCon5 .apply-check-row {
    display: flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    flex: 1;
    min-width: 0;
}
.csmCon5 .apply-check-row input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 22px;
    height: 22px;
    min-width: 22px;
    border: 1.5px solid #99a2b2;
    border-radius: 4px;
    flex-shrink: 0;
    cursor: pointer;
    position: relative;
    margin: 0;
    background: #fff;
    transition: background 0.15s, border-color 0.15s;
}
.csmCon5 .apply-check-row input[type="checkbox"]:checked {
    background: #c00c3f;
    border-color: #c00c3f;
}
.csmCon5 .apply-check-row input[type="checkbox"]:checked::after {
    content: '';
    position: absolute;
    top: 3px;
    left: 6px;
    width: 7px;
    height: 12px;
    border: 2.5px solid #fff;
    border-top: none;
    border-left: none;
    transform: rotate(45deg);
}
.csmCon5 .apply-check-label {
    font-family: 'Pretendard', sans-serif;
    font-size: 16px;
    color: #040404;
    font-weight: 500;
    letter-spacing: -0.48px;
    line-height: 1.5;
    cursor: pointer;
    word-break: keep-all;
}
.csmCon5 .apply-check-label--all {
    font-size: 17px;
    font-weight: 600;
    letter-spacing: -0.51px;
}
.csmCon5 .apply-check-label .req-badge { color: #e83534; }
.csmCon5 .apply-consent-note {
    font-family: 'Pretendard', sans-serif;
    font-size: 13px;
    color: #1d2025;
    letter-spacing: -0.39px;
    line-height: 1.5;
    margin: 0;
    word-break: keep-all;
}
.csmCon5 .apply-consent-text {
    background: #f3f5f7;
    border-radius: 10px;
    height: 120px;
    overflow-y: auto;
    padding: 12px 16px;
}
.csmCon5 .apply-consent-text p {
    font-family: 'Pretendard', sans-serif;
    font-size: 12px;
    color: #454c59;
    line-height: 1.3;
    letter-spacing: -0.36px;
    margin: 0 0 2px;
}
.csmCon5 .apply-consent-text strong {
    font-family: 'Pretendard', sans-serif;
    font-size: 13px;
    font-weight: 700;
    color: #333842;
    display: block;
    margin-bottom: 4px;
}

/* 완료/중복 알림 모달 (conSecMd6, conSecMd7) */
.csmCon6,
.csmCon7 {
    width: 360px;
    border-radius: 12px;
    padding: 30px 24px;
    background: #fff;
    display: flex;
    flex-direction: column;
}
.pam-alert-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    text-align: center;
}
.pam-alert-title {
    font-size: 18px;
    font-weight: 700;
    color: #1a1a2e;
    letter-spacing: -0.3px;
    margin: 0;
}
.pam-alert-desc {
    font-size: 14px;
    color: #454c59;
    margin: 0 0 8px;
    line-height: 1.5;
}
.pam-alert-btn {
    margin-top: 8px;
    width: 100%;
    height: 40px;
    background: #c00c3f;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
}
.pam-alert-btn:hover { background: #a00a35; }

@media screen and (max-width: 768px) {
    .csmCon6,
    .csmCon7 {
        width: calc(100% - 40px);
    }
}

/* 모바일 */
@media screen and (max-width: 768px) {
    .csmCon5 {
        width: 100%;
        max-height: 100vh;
        max-height: 100dvh;
        border-radius: 0;
        padding: 20px;
        gap: 20px;
    }
    .pam-form {
        padding: 0;
    }
    .pam-desc {
        font-size: 13px;
    }
    .csmCon5 .apply-check-label--all {
        font-size: 15px;
    }
    .csmCon5 .apply-check-label {
        font-size: 13px;
    }
    .csmCon5 .apply-consent-note {
        margin-top: 17px;
    }
    .pam-err-txt {
        font-size: 11px;
    }
}
