/* ==========================================================
   pages.css — 서브 페이지 전용 (그룹별 모음)
   ----------------------------------------------------------
   섹션 순서:
     1. lecture / cart / regist / lecture_plan
     2. member
     3. community / support
     4. credit / 학과 박스 UI
     5. info
     6. practice
     7. landing
     8. community 이벤트
     9. 학사일정 / 강의계획서 팝업

   각 영역 안에서 페이지별로 "페이지명 (filename.jsp)" 형식의 헤더로 구분.
   공통 UI는 components.css로 이동.
   ========================================================== */

/* 수강신청 (lecture.jsp) */
.lecture_search {
    display: flex;
    justify-content: flex-end;
    position: relative;
}
.lecture_search > .searchTxt2 {
    font-size: 14px;
    border: 1px solid #767676;
    border-radius: 19px;
    padding: 10px 20px;
    outline: none !important;
    box-shadow: 0 0 8px 0 #e4e6e7;
}
.lecture_search .searchTxt3 {
    width: 20px;
    height: 20px;
    background: url(/file/main/images/common/icon_search.svg) no-repeat center / cover;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    border: 0;
}
.pid_list {
    font-family: "Pretendard", sans-serif;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-bottom: 10px;
    word-break: keep-all;
    gap: 10px;
}
.pid_list > li {
    text-align: center;
    background: #f5f5f5;
}
.pid_list > li > a {
    display: block;
    padding: 20px;
    font-size: 1rem;
}
.pid_list_on {
    background-color: #505050;
    color: #fff;
}

.ST_lecture_A {
    background: #fff9ef;
    width: 100%;
    margin-bottom: 10px;
    border-collapse: collapse;
    border: none;
}
.ST_lecture_A th,
.ST_lecture_A td {
    border: 1px solid #e1e1e1;
    padding: 10px 18px;
    line-height: 1.5;
    font-size: 1rem;
}
.ST_lecture_A th {
    color: #333333;
    font-weight: bold;
    width: 30%;
    vertical-align: middle;
}
.ST_lecture_A tr:first-child > * {
    border-top: none;
}
.ST_lecture_A tr:last-child > * {
    border-bottom: none;
}
.ST_lecture_A tr > :first-child {
    border-left: none;
}
.ST_lecture_A tr > :last-child {
    border-right: none;
}
.ST_lecture_A tr:first-child > td {
    color: #af1414;
}

.category_tab {
    margin-bottom: 25px;
}

.category_tab > ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid #e1e1e1;
    border-left: 1px solid #e1e1e1;
}

.category_tab > ul > li {
    box-sizing: border-box;
    width: 16.6667%;
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    background: #fff;
}
.category_tab > ul > li:first-child {
    display: flex;
    text-align: center;
    justify-content: center;
}

.category_tab > ul > li.category_on {
    background: #f1f1f1;
}

.category_tab > ul > li > a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 8px 6px;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
}

.category_tab > ul > li:nth-child(2) > a > span {
    background: #d6ffbc;
}

.category_tab > ul > li > a > strong {
    display: block;
    color: #303030;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.3;
    word-break: keep-all;
}

.category_tab > ul > li:first-child > a > strong {
    color: #af1414;
    text-decoration: underline;
    font-weight: 700;
}

.category_label {
    display: inline-block;
    padding: 2px 4px;
    font-size: 0.75rem;
    line-height: 1.2;
    word-break: keep-all;
}

.cart-text {
    text-decoration: line-through;
    text-decoration-color: black;
}
.cart_sal {
    font-size: 1.2rem;
    color: #777;
}
.cart_sal {
    font-size: 1.2rem;
    color: #d82121;
}

.lecture_scroll_hint {
    display: none;
}

.lecture_table {
    max-width: 100%;
}

.lecture_table > .ST_lecture_B {
    width: 100%;
    table-layout: auto;
}
.ST_lecture_B .state_badge {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 72px;
    padding: 4px 0;
    margin: 4px;
    border-radius: 4px;
    color: #fff;
}
.ST_lecture_B .state_badge.is-close {
    background: #000;
}
.ST_lecture_B .state_badge.is-open {
    background: #1e7a10;
}
.ST_lecture_B .L_ST {
    line-height: 1.4;
    font-weight: bold;
    text-align: left;
}
.t_mode {
    writing-mode: vertical-lr !important;
    font-weight: bold;
    color: #fff;
    letter-spacing: 2.2px;
}

/* 수강신청결제 (regist_confirm.jsp) */
.regist_info {
    padding: 20px;
    border: 1px solid #e1e4e6;
}
.regist_info div {
    transform: skew(-0.03deg);
}
.regist_info h3 {
    font-size: 1.875rem;
}
.regist_rule {
    height: 200px;
    border: 1px solid #e1e4e6;
    padding: 20px;
    overflow-x: hidden;
    font-size: 0.875rem;
    margin-top: 10px;
    transform: skew(-0.03deg);
}
.payment_table {
    width: 100%;
    border-collapse: collapse;
}
.payment_table th,
.payment_table td {
    border: 1px solid #e1e4e6;
    padding: 10px;
}
.pay_method {
    padding: 20px;
    text-align: center;
}
.regist_amount {
    border: 4px solid #e1e4e6;
    padding: 20px;
    text-align: center;
    font-size: 1.25rem;
    color: #f00;
    font-weight: 600;
}

/* 강의계획서 (lecture_plan.jsp / lecture_plan2.jsp) */
#before_payment {
    display: flex;
    flex-wrap: wrap;
    background: #062124;
    border-radius: 0 0 12px 12px;
    overflow: hidden;
}
#before_payment > li {
    box-sizing: border-box;
    width: 25%;
    min-height: 46px;
    text-align: center;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    background: #062124;
}
#before_payment > li:nth-child(4n),
#before_payment > li:last-child {
    border-right: 0;
}
#before_payment > li:hover,
#before_payment > li.active {
    background: #ff9c00;
    font-weight: bold;
}
#before_payment > li > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 46px;
    color: #fff;
    text-decoration: none;
}
#before_payment > li > a > span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: 1rem;
    word-break: keep-all;
    overflow-wrap: break-word;
    white-space: normal;
    overflow-wrap: anywhere;
}
#bofore_payment2 {
    text-align: center;
    margin: 0 auto;
    margin-top: 20px;
    border: 1px solid #000;
    width: 70%;
    padding: 10px;
}
#bofore_payment2 > p {
    display: inline-block;
    font-weight: 800;
    color: red;
    vertical-align: bottom;
}
.bofpay_btn {
    text-align: center;
    margin-top: 10px;
}
.bofpay_btn > button {
    border: 1px solid;
    padding: 5px 8px;
}

.syl_tab {
    position: absolute;
    left: -36px;
    top: -5px;
    width: 36px;
    text-align: center;
}
.syl_tab > li:nth-child(1) {
    background: #000;
    width: 100%;
    border-radius: 10px 0 0 0;
}
.syl_tab > li:nth-child(2) {
    background: #888;
    width: 100%;
    border-radius: 0 0 0 10px;
}
.syl_tab > li {
    height: 160px;
}
.syl_tab > li a {
    display: block;
    width: 100%;
    height: 100%;
    color: #fff;
    padding: 22px 4px 0;
    font-size: 0.95rem;
    line-height: 1.55;
    letter-spacing: 1px;
}
.sylul_1 {
    padding-left: 25px;
}
.syllabus_ul {
    padding: 16px;
}
.syllabus_ul > li > p {
    font-size: 1.3rem;
    padding-left: 15px;
    background: url(/file/main/images/include/POT.png) no-repeat 3px 50%;
    background-size: 7px;
    font-weight: 600;
}
.syllabus_ul > li > div {
    font-size: 1rem;
    margin-top: 5px;
    margin-bottom: 30px;
    line-height: 1.6;
}
#lecturePlan_table td {
    text-align: start;
    padding: 1rem 0.5rem;
}
.professor_info_main > ul {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}
.professor_thumb {
    flex: 0 0 200px;
    width: 200px;
    height: 240px;
    border: 1px solid #d9d9d9;
    background: #f5f5f5;
    overflow: hidden;
}
.professor_thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.professor_thumb_placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 0.9rem;
    color: #888;
    background: #f5f5f5;
}
.professor_info_text {
    flex: 1;
    min-width: 0;
}
.professor_info_text > p {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 14px;
}
.professor_name {
    padding-bottom: 10px;
    border-bottom: 2px solid #062124;
}
.professor_meta {
    margin-top: 6px;
}
.professor_meta dt {
    display: inline-block;
    margin-bottom: 8px;
    padding: 3px 14px;
    font-size: 0.85rem;
    font-weight: 700;
    color: #fff;
    background: #062124;
    border-radius: 999px;
    letter-spacing: 0.5px;
}
.professor_meta dt:not(:first-of-type) {
    margin-top: 18px;
}
.professor_meta dd {
    padding: 0 4px;
    font-size: 0.95rem;
    line-height: 1.6;
    color: #333;
    word-break: keep-all;
}

/* ---- Responsive ---- */

@media (max-width: 1000px) {
    /* 수강신청 테이블 가로 스크롤 (모바일 한정) */
    .lecture_table {
        overflow-x: auto;
    }
    .lecture_table > .ST_lecture_B {
        min-width: 900px;
    }

    /* 수강신청 테이블 가로 스크롤 안내 */
    .lecture_scroll_hint {
        display: block;
        margin: 0 0 8px;
        color: #666;
        font-size: 0.85rem;
        text-align: right;
    }

    /* .disB_tamo img 전역 규칙이 테이블 내 인라인 아이콘을 늘리는 것 복원 */
    table.disB_tamo img {
        width: auto;
    }
}

@media screen and (max-width: 767px) {
    .ST_lecture_A th,
    .ST_lecture_A td {
        padding: 10px;
    }

    .category_tab > ul > li {
        width: 25%;
    }
    .category_tab > ul > li > a {
        padding: 4px 6px;
    }
}
/* ==========================================================
   member 영역 — 로그인 / 회원가입 / 아이디찾기 / 탈퇴 / 공동인증서
   ========================================================== */

/* 탈퇴 (member_secession.jsp) */
.secession_form {
    transform: skew(-0.03deg);
}
.secession_box {
    margin-bottom: 30px;
    border: 4px solid #ddd;
    padding: 15px;
}
.secession_con span {
    display: flex;
}
.secession_con span label {
    padding-right: 4px;
}

/* 로그인 (login.jsp) */
.login_box_A {
    width: 100%;
    background: #f8f9fa;
    padding: 20px;
    margin-top: 20px;
}
.login_box_A p {
    text-align: center;
    font-weight: 800;
    margin-bottom: 18px;
}
.login_box_A span {
    background: yellow;
    font-weight: 800;
    font-size: 1rem;
}
.login_box_A .btn_blue {
    width: 35%;
}
.login_form {
    width: 50%;
    height: 370px;
    border: 1px solid #ddd;
    margin: 0 auto;
    margin-top: 50px;
    text-align: center;
    margin-bottom: 80px;
    border-radius: 12px;
    box-shadow: 1px 1px 8px 1px rgba(0, 0, 0, 0.1);
}
.login_form > fieldset h5 {
    padding: 30px 0px;
}
.login_form > fieldset > ul > li i {
    position: absolute;
    right: 19%;
    top: 35%;
    line-height: 70%;
}
.login_form > fieldset > ul {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.login_form > fieldset > ul > li input {
    width: 70%;
    height: 45px;
    border-radius: 12px;
}
.login_form .btn_blue {
    padding: 0;
    margin-top: 30px;
    margin-bottom: 20px;
}
.login_form_btns {
    padding: 20px;
    border-top: 1px solid #ddd;
}

/* 회원가입 1단계 — 약관동의 (join.jsp) */
.join_sub_title {
    display: flex;
    justify-content: space-between;
}
.join_sub_title > li {
    width: 30%;
    border-bottom: 3px solid #ddd;
    padding: 15px 0px;
    font-size: 17px;
    transform: skew(-0.03deg);
    font-weight: 700;
}
.join_sub_h2 {
    font-weight: 600;
    font-size: 19px;
    line-height: 30px;
    text-align: left;
    margin-top: 70px;
}
.agree_list {
    border-top: 2px solid #707070;
}
.sub_checkbox {
    display: flex;
    padding: 30px 10px;
    background: #ebf7ff;
    border-bottom: 1px solid #eaeaea;
}
.sub_checkbox input,
.sub_checkbox_B input {
    display: none;
    width: 0;
    height: 0;
}
.sub_checkbox input[id="allChk"] + label,
.sub_checkbox_B li input[type="checkbox"] + label {
    width: 26px;
    height: 26px;
    background: #d9d9d9;
    border-radius: 50%;
    cursor: pointer;
}
.sub_checkbox input[id="allChk"] + label.on,
.sub_checkbox_B li input[type="checkbox"] + label.on {
    width: 26px;
    height: 26px;
    background: #0974db;
}
.sub_checkbox input[id="allChk"] + label:after,
.sub_checkbox_B li input[type="checkbox"] + label:after {
    content: "";
    position: absolute;
    left: 10px;
    top: 5px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg);
}
.checkmark_text {
    padding-left: 10px;
    display: inline-block;
}
.sub_checkbox_B li {
    padding: 20px 10px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #eaeaea;
    flex-wrap: wrap;
}
.sub_checktext {
    padding-left: 10px;
}
.sub_checkbox_B b {
    color: red;
    font-size: 13px;
}
.agree_list .btn-open {
    position: absolute;
    right: 18px;
    top: 22px;
    cursor: pointer;
}
.agree_list .btn-open button {
    margin-left: auto;
    font-size: 12px;
    color: #0082ff;
    display: flex;
    align-items: center;
}
.agree_list .btn-open:before {
    content: "";
    display: block;
    transform: rotate(-45deg);
    position: absolute;
    height: 4px;
    width: 4px;
    border: 2px solid #0082ff;
    border-right-width: 0;
    border-top-width: 0;
    top: 5px;
    right: -4px;
}
#term1,
#term2,
#term3,
#term4,
#term5 {
    display: none;
}
#term1 {
    background: #fafafa;
    height: 160px;
    overflow-y: scroll;
    padding: 15px;
    margin-top: 20px;
}
#term2,
#term3,
#term4,
#term5 {
    display: none;
    height: auto;
    margin-top: 10px;
    width: 100%;
}
.marketing_Check input {
    display: inline-block;
    width: 15px;
    height: 15px;
    vertical-align: middle;
}
.join_next {
    display: block;
    margin: 30px auto 0;
}

/* 회원가입 2단계 — 정보입력 (join2.jsp) */
.jointable th label {
    font-size: 1rem;
    font-weight: 600;
}
.jointable {
    text-align: start;
}

/* 회원가입 완료 (join_result.jsp) */
.join_result_form {
    padding: 30px 30px 50px;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 50%;
    height: 400px;
    border: 1px solid #ddd;
    margin: 0 auto;
    border-radius: 12px;
    box-shadow: 1px 1px 8px 1px rgba(0, 0, 0, 0.1);
}
.join_result_form div .login_title {
    margin-top: 10px;
}
.join_result_form h1 {
    font-size: 24px;
    font-weight: 800;
    margin-top: 20px;
}
.join_result_form h1 span {
    font-size: 24px;
    font-weight: 800;
}

/* 공동인증서 등록 (secu_regist.jsp) */
.certificateTB .registbtn {
    margin: auto;
}
.certificateTB th,
.certificateTB td {
    text-align: start;
}

/* ---- Responsive ---- */

@media (max-width: 1000px) {
    .login_box_A {
        display: none;
    }
    .login_form {
        width: 80%;
    }
    .jointable th {
        width: 18vw;
    }
}

@media screen and (max-width: 767px) {
    .jointable th {
        width: 22vw;
    }
}
/* ==========================================================
   community / support 영역 — FAQ / 1:1상담 / 공지 / 수강후기 / 취업지원 / 뉴스
   ========================================================== */

/* 자주묻는질문 (faq.jsp) */
.tabs-faq .tabs-item {
    flex-grow: 1;
}
.tabs-faq .tabs-item a {
    width: 100%;
    display: inline-block;
    line-height: 47px;
    font-size: 16px;
    color: #4f4f4f;
    border-bottom: 3px solid #fff;
}
.tabs-faq .tabs-item a.active {
    border-color: #111;
    color: #111;
    font-weight: 600;
}

/* 1:1 상담 (consult.jsp) */
.consult_box textarea {
    width: 100%;
    padding: 10px;
    font-family: "Pretendard", sans-serif;
}
.consult_box .privacy_info {
    display: flex;
    align-items: center;
}
.consult_box .privacy_info a {
    font-size: 0.875rem;
}

/* 공지사항 (notice.jsp) */
.searchForm .btn_gr {
    width: auto;
    border-radius: 5px;
}

/* 수강후기 (epilogue_list.jsp / epilogue_list02.jsp / epilogue_view.jsp / epilogue_write.jsp / epilogue_write02.jsp) */
.epilogue_write_tail {
    transform: skew(-0.3deg);
}
.epilogue_write_tail input,
.epilogue_write_tail div {
    font-size: 14px;
}
.epilogue_write {
    width: 100%;
    padding: 10px;
}
.epilogue_write02_TB textarea {
    border: 1px solid #ddd;
    margin-top: 10px;
}
.epilogue_write02 {
    margin-top: 15px;
    margin-bottom: 30px;
}
.epwripte_notice {
    line-height: 1.4;
    font-size: 18px;
}
.submitBtns {
    display: flex;
    justify-content: center;
    gap: 10px;
}
.submitBtns .btn_blue {
    margin: auto;
}
.epilogue_header {
    display: flex;
    justify-content: space-between;
    align-items: start;
}
.epilogue_name {
    font-size: 1.33rem;
    font-weight: bold;
    margin-bottom: 5px;
    background: url(/file/main/images/common/h4.png) left no-repeat;
    padding-left: 20px;
}
.epilogue_pp {
    transform: skew(-0.3deg);
    display: flex;
    flex-direction: column;
}
.ico_box {
    border: 1px solid red;
    color: red;
    padding: 2px;
}
.epilogue_box li {
    padding: 10px 0;
    transform: skew(-0.3deg);
}
.epilogue_question {
    font-weight: bold;
    color: #197ec6;
}
.ep_write_btn {
    text-align: right;
}
.ep_write_btn .btn {
    border-radius: 0;
    padding: 10px 0;
}
.epilogue_box {
    border: 1px solid #eee;
    padding: 20px;
    margin-top: 20px;
}

/* 취업지원센터 (jobsupport.jsp / jobsupport02.jsp / jobsupport03.jsp) */
.jobsupport_table td {
    padding: 1rem 0.5rem;
}
.jobsupport_table td a {
    width: 80%;
    padding: 3px 0;
    display: block;
    border: 1px solid #999;
    font-size: 13px;
    font-weight: 600;
    border-radius: 5px;
    margin: 0 auto;
}
.jobsupport_table1 th {
    width: 70%;
    margin: 30px 0;
}

/* 뉴스 (news.jsp / news_view.jsp) */
.news_gubun1 {
    font-weight: 700;
    color: blue;
}
.notice_view dt {
    background: #eee;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    height: 50px;
    line-height: 50px;
    font-size: 1.125rem;
    text-align: center;
}
.notice_view dd {
    width: 100%;
    min-height: 60px;
    padding-top: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #ddd;
    line-height: 1.5;
    text-align: left;
}
/* ==========================================================
   credit / 자격증 / 학과 박스 UI 영역 — 학점은행제 / 학은제 / 자격증 / 증명서
   ========================================================== */

/* 자격증 신청 (certificate01~06.jsp + 일부 placement / cert_issu 공용) */
.certificate_btns {
    margin-top: 30px;
    flex-wrap: wrap;
}
.certificate_btns .btn_black {
    width: 350px;
    padding: 1.3rem 0;
    border-radius: 1rem;
}

/* 증명서발급 (cert_issu1.jsp / cert_issu3.jsp) */
.certificateissue_area {
    display: flex;
    justify-content: space-between;
}
.certificateissue_box {
    width: 48%;
    padding: 30px 12px 26px 12px;
    border: 1px solid #dbdbdb;
    background: url(/file/main/images/sub/certificateissue_logo_01.png) no-repeat 32px 47px;
}
.certificateissue_box .tit {
    padding-left: 182px;
    font-size: 18px;
    color: #222;
}
.certificateissue_box .txt {
    margin-top: 14px;
    padding-left: 182px;
    font-size: 14px;
    color: #888;
    line-height: 22px;
}
.certIssue_btn {
    display: block;
    margin: 32px auto 0;
    background-color: #9fc93c;
    font-size: 15px;
    padding: 11px 20px;
    width: 170px;
    border-radius: 25px;
    font-weight: 500;
    text-align: center;
}
.certificateissue_box + .certificateissue_box {
    margin-left: 10px;
    background: url(/file/main/images/sub/certificateissue_logo_02.png) no-repeat 11px 77px;
    background-size: 34%;
}

@media screen and (max-width: 767px) {
    .certificateissue_area {
        flex-direction: column;
        gap: 14px;
    }
    .certificateissue_box {
        width: 100%;
        padding: 130px 16px 24px;
        background-position: center 24px;
        background-size: auto 90px;
    }
    .certificateissue_box + .certificateissue_box {
        margin-left: 0;
        background-position: center 32px;
        background-size: auto 40px;
    }
    .certificateissue_box .tit {
        padding-left: 0;
        text-align: center;
        font-size: 17px;
    }
    .certificateissue_box .txt {
        padding-left: 0;
        text-align: center;
        font-size: 13px;
        line-height: 20px;
    }
    .certIssue_btn {
        margin-top: 20px;
    }
}

/* 학점은행제 / 학과 박스 (credit*.jsp / everything*.jsp / childcare4*.jsp / lifelongeducation4*.jsp / specialchildcare2*.jsp / welfare4*.jsp 공용) */
.credit_tabs {
    display: flex;
    flex-wrap: wrap;
}
.credit3_tabs li {
    width: 50%;
}
.credit4_tabs li {
    width: 33.33%;
}
.credit_tabs li a {
    width: 100%;
    display: block;
    text-align: center;
    padding: 15px 10px;
    border: 1px solid #eee;
    border-right: 0;
}
.credit3_tabs li:last-child a {
    border: 1px solid #eee;
}
.credit4_tabs li:nth-child(3n) a {
    border: 1px solid #eee;
}
.credit4_tabs li:nth-child(4) a,
.credit4_tabs li:nth-child(5) a,
.credit4_tabs li:nth-child(6) a {
    border-top: 0;
}

.credit_box,
.credit_box2,
.credit_box3 {
    display: flex;
    padding: 30px 0;
    border: 1px solid #ddd;
}
.credit_box li {
    width: 25%;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px 20px 10px;
}
.credit_box li:not(:last-child) {
    border-right: 1px solid #ddd;
}
.credit_box li p {
    text-align: center;
    padding-top: 30px;
}
.credit_box2 {
    justify-content: space-around;
}
.credit_box2 li img {
    width: 150px;
}
.credit_box3 li {
    width: 50%;
    padding: 20px 35px;
}
.credit_box3 li span {
    text-align: center;
}

.credit .conbox {
    border: 1px solid #ddd;
    padding: 15px;
}
.credit .conbox h5 {
    transform: skew(-0.03deg);
    padding-bottom: 10px;
}
.credit p .fw_600 {
    padding-bottom: 10px;
    display: inline-block;
}

/* 학은제의 모든 것 — 탭 시스템 (everything02~06.jsp / welfare.jsp 공용) */
.everything {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sabok_tabs_head {
    display: flex;
    text-align: center;
    position: absolute;
    top: 320px;
    z-index: 1;
    width: 100%;
    border-radius: 10px;
    overflow: hidden;
}
.sabok_tab {
    flex: 1;
    background: #eee;
    color: #777;
    cursor: pointer;
    padding: 20px 0;
    font-size: 1.2rem;
    font-weight: bold;
}

.sabok_tab.sabok_tab_active {
    background: #0812cb;
    color: #fff;
}
.sabok_item {
    display: none;
}
.sabok_item_active {
    display: block;
}

/* ── Responsive ── */

@media (max-width: 1000px) {
    .sabok_tabs_head {
        width: 90%;
    }
    .sabok_tabs {
        display: flex;
        justify-content: center;
    }
}
/* ==========================================================
   info 영역 — 사이트맵 / 교육원소개 / 연혁 / 개인정보 / 지도
   ========================================================== */

/* 사이트맵 (sitemap.jsp) */
.support_div {
    width: 100%;
}
.support_divli {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.support_divli li {
    width: 25%;
    margin-bottom: 1.5vw;
}
.support_divli li h5 {
    font-weight: 700;
    font-family: "Pretendard", sans-serif !important;
    font-size: 1.18rem;
    line-height: 1.4;
}
.support_divli li p {
    padding: 4% 2%;
}
.support_divli li h5::before {
    content: " · ";
}
.support_divli li p::before {
    content: " - ";
}

/* 교육원소개 — 텍스트 디자인 박스 (education.jsp 등) */
.intro_section {
    background: #f9fafc;
    padding: 60px 20px;
    line-height: 1.8;
    color: #333;
}
.intro_box {
    max-width: 900px;
    margin: 0 auto;
    background: #fff;
    border-radius: 12px;
    padding: 50px 60px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.intro_title {
    font-size: 1.8rem;
    font-weight: 700;
    color: #004aad;
    text-align: center;
    margin-bottom: 30px;
    position: relative;
}
.intro_title:after {
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    background: #004aad;
    margin: 10px auto 0;
    border-radius: 3px;
}
.intro_txt {
    font-size: 1.05rem;
    margin-bottom: 20px;
}
.highlight {
    color: #004aad;
    font-weight: 600;
}
.point {
    background: #e8f1ff;
    padding: 3px 6px;
    border-radius: 4px;
}
.intro_quote {
    font-style: italic;
    color: #004aad;
    font-weight: 600;
    text-align: center;
    border-left: 4px solid #004aad;
    margin: 30px 0;
    padding: 15px 20px;
    background: #f2f6ff;
    border-radius: 6px;
}
.thanks {
    display: inline-block;
    margin-top: 10px;
    font-weight: 600;
    color: #004aad;
}

/* 개인정보처리방침 (privacy.jsp) */
.privacy .placement_tabs li {
    width: 50%;
}
.privacy_con {
    margin-top: 60px;
}
.privacy_tit {
    text-align: center;
    font-size: 1.1rem;
    font-weight: 800;
    color: #0974db;
}
.privacy_second > ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.privacy_second > ul > li {
    width: 33.33%;
    margin-top: 35px;
}
.privacy_second > ul > li > a > img {
    display: block;
    margin: 0 auto;
    margin-bottom: 10px;
}
.privacy_second > ul > li > a > p {
    text-align: center;
    font-weight: 700;
    font-size: 0.9rem;
}

.privacy_third ul {
    margin-top: 20px;
    border: 1px solid #ddd;
    display: flex;
    flex-wrap: wrap;
    padding: 24px;
}
.privacy_third_ul li {
    width: 50%;
    margin: 10px 0;
}
.privacy_third_ul li a {
    display: flex;
    align-items: center;
}
.privacy_third_ul li a img {
    width: 24px;
}
.privacy_third_ul li a p {
    text-decoration: underline;
    font-size: 0.9rem;
    font-weight: 600;
    padding-left: 8px;
}

.privacy_ul > li {
    margin-top: 30px;
}
.privacy_ul h6 {
    font-size: 1.1rem;
    margin-bottom: 15px;
    color: #0974db;
}
.privacy_ul h6 img {
    width: 4.5%;
    padding-right: 10px;
}

.privacy_ul p,
.privacy_ul dt,
.privacy_ul dd {
    font-size: 0.9rem;
}
.privacy_ul dt {
    font-weight: 600;
}
.counter_ver01 {
    counter-reset: ver01 0;
}
.counter_ver01 > dt::before {
    content: counter(ver01) ".";
    counter-increment: ver01 1;
    color: #ad0000;
    padding-right: 3px;
}
.counter_ver02 {
    counter-reset: ver02 0;
    padding-top: 5px;
    margin-bottom: 10px;
}
.counter_ver02 > li {
    padding-left: 20px;
    color: #707070;
    font-weight: 600;
    font-size: 0.9rem;
    margin-bottom: 8px;
    line-height: 1.4;
}
.counter_ver02 > li::before {
    position: absolute;
    top: 9px;
    left: 0.25em;
    transform: translateY(-50%);
    counter-increment: ver02 1;
    content: counter(ver02);
    color: #fff;
    z-index: 1;
}
.counter_ver02 > li::after {
    content: "";
    position: absolute;
    top: 9px;
    left: 0;
    transform: translateY(-50%);
    display: inline-block;
    background-color: #707070;
    border-radius: 50%;
    width: 1.1em;
    height: 1.2em;
}
.privacy_btn {
    border: none;
    background: #0974db;
    color: #fff;
    border-radius: 10px;
    padding: 10px 26px;
    font-weight: 700;
    margin-top: 10px;
}
.privacy_btnCon {
    display: none;
}
.privacy_table td {
    border-left: 1px solid #f7f7f7;
}
.privacy_old {
    border-top: 2px solid #000;
    margin-top: 20px;
}
.privacy_old > li {
    border-bottom: 1px solid #ddd;
}
.privacy_old > li > a {
    display: flex;
    justify-content: space-between;
    padding: 16px 12px;
}
.privacy_old > li > a > span:first-child {
    text-decoration: underline;
    font-weight: 600;
    margin-top: 6px;
    font-size: 0.9rem;
}
.privacy_old > li > a > span:last-child {
    font-size: 24px;
    color: #999;
}

.privacy_ul {
    counter-reset: number 0;
}
.privacy_ul > li > h5 {
    font-size: 1.1rem;
    margin-bottom: 15px;
    color: #0974db;
    padding-left: 30px;
}
.privacy_ul > li > h5::before {
    content: counter(number);
    counter-increment: number 1;
    width: 22px;
    line-height: 22px;
    color: #fff;
    background: #0974db;
    border-radius: 50%;
    text-align: center;
    position: absolute;
    left: 0;
}
.privacy_table td {
    padding: 1rem 0.6rem;
}

/* 개인정보처리방침 구버전 (privacy_old01~08.jsp) */
.privacy_old_top h1 {
    width: 100%;
    background: #0974db;
    color: #fff;
    font-weight: 600;
    transform: skew(-0.03deg);
    padding: 25px;
}
.privacy_old_top p {
    padding: 25px 10px 0 10px;
}
.privacy_ul02 {
    padding: 0 10px;
}
.privacy_ul02 > li {
    margin-top: 30px;
}
.privacy_ul02 > li > h5 {
    font-size: 1.2rem;
    font-weight: 700;
}
.privacy_ul02 > li > p {
    margin-top: 10px;
    line-height: 1.2;
}
.privacy_ul02 > li > dl > dt {
    margin-top: 10px;
    line-height: 1.2;
    font-weight: 600;
}
.privacy_ul02 > li > dl > dt,
.privacy_ul02 > li > dl > dd {
    font-size: 0.9rem;
    line-height: 1.2;
}
.counter_ver01_old {
    counter-reset: ver01 0;
}
.counter_ver01_old > li {
    font-weight: 700;
    margin-top: 10px;
    line-height: 1.2;
    font-size: 0.9rem;
}
.counter_ver01_old > li::before {
    content: counter(ver01) ".";
    counter-increment: ver01 1;
    color: #ad0000;
    padding-right: 3px;
}
.counter_ver02_old {
    counter-reset: ver02 0;
    padding-top: 5px;
}
.counter_ver02_old > li {
    position: relative;
    margin-left: 10px;
    padding-left: 20px;
    color: #707070;
    font-weight: 700;
    margin-bottom: 3px;
    line-height: 1.4;
    font-size: 0.9rem;
}
.counter_ver02_old > li::before {
    position: absolute;
    top: 9px;
    left: 0.2em;
    transform: translateY(-50%);
    counter-increment: ver02 1;
    content: counter(ver02);
    color: #fff;
    z-index: 1;
}
.counter_ver02_old > li::after {
    content: "";
    position: absolute;
    top: 9px;
    left: 0;
    transform: translateY(-50%);
    display: inline-block;
    background-color: #707070;
    border-radius: 50%;
    width: 1em;
    height: 1em;
}

/* 교육원소개 (education.jsp) */
.intro_con {
    display: flex;
    padding: 20px 0;
    border: 1px solid #e1e4e6;
}
.intro_con li {
    width: 25%;
    text-align: center;
    border-right: 1px solid #e1e4e6;
    transform: skew(-0.03deg);
}
.intro_con li:last-child {
    border-right: none;
}
/* 연혁 (history.jsp) */
.history_list {
    display: flex;
    justify-content: space-between;
}
.history_list > li {
    margin-bottom: 50px;
}
.history_list > li:nth-child(1) {
    width: 20%;
    border-top: 4px solid #0974db;
}
.history_list > li:nth-child(2) {
    width: 72%;
}
.history_list > li h4 {
    font-size: 32px;
    font-weight: 700;
    color: #0974db;
    margin: 12px 0 0;
}
.list_dot > li:first-child {
    border-top: 1px solid #ddd;
}
.list_dot > li {
    border-bottom: 1px solid #ddd;
    padding: 14px 0 16px 20px;
    color: #222;
    position: relative;
    line-height: 1.5;
}
.list_dot > li:before {
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #bbb;
    position: absolute;
    content: "";
    left: 0;
}

/* 오시는길 (map.jsp) */
.map_info ul {
    display: flex;
}
.map_info > ul > li:first-child {
    width: 15%;
    padding: 15px 10px 15px 0;
    border-top: 1px solid #ddd;
}
.map_info > ul > li:last-child {
    width: 85%;
    padding: 15px;
    border-top: 1px solid #ddd;
    transform: skew(-0.03deg);
}
.map_strong {
    font-weight: 800;
    color: #516bb3;
    transform: skew(-0.03deg);
    display: inline-block;
}
/* ==========================================================
   practice 영역 — 실습지원센터 / 현장실습 / 학습설계
   ========================================================== */

/* 현장실습안내 (placement01.jsp / placement02.jsp / placement03.jsp) */
.placement_tabs {
    display: flex;
}
.placement_tabs li {
    width: 33.33%;
}
.placement_tabs li a {
    width: 100%;
    display: block;
    text-align: center;
    padding: 15px 10px;
    border: 1px solid #eee;
    border-right: 0;
}
.placement_tabs li:last-child a {
    border-right: 1px solid #eee;
}
/* 학습설계신청 (plan.jsp) */
.scholarship_tb {
    text-align: start;
}
.scholarship_tb th label {
    font-weight: 600;
}

/* 실습지원센터 — 메인 (practice01.jsp / practice01_view.jsp) */
.practice_ul li {
    margin-top: 10px;
}
.practice_div_step {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
}
.practice_div_step > li {
    margin-bottom: 40px;
    width: 100%;
    position: relative;
}
.practice_div_step > li:last-child {
    margin-bottom: 0;
}
.practice_div_step > li > i {
    display: block;
    text-align: center;
    font-size: 32px;
    color: #999;
    position: absolute;
    left: 50%;
    bottom: -34px;
}
.practice_div_step > li > dl {
    overflow: hidden;
    width: 100%;
    height: 100%;
}
.practice_div_step > li > dl > dd,
.practice_div_step > li > dl > dt {
    border: 1px solid #ddd;
}
.practice_div_step > li > dl > dd {
    float: right;
    width: 73%;
    height: 100%;
    line-height: 1.2;
    padding: 20px;
}
.practice_div_step > li > dl > dt {
    float: left;
    width: 26%;
    height: 100%;
    background: #f3fbff;
    position: relative;
}
.practice_div_step > li > dl > dt > p {
    color: #0019b2;
    text-align: center;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
}
.practice_div_step > li > dl > dt > p > span {
    color: #fff;
}
.step_small {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
}

/* 실습지원센터 — practice02 (practice02.jsp) */
/* 실습지원센터 — practice03 (practice03.jsp / practice03_02.jsp / practice03_03.jsp / practice04*.jsp) */
.practice03 table span {
    font-weight: 600;
    font-size: 0.9rem;
}
.practice03 td a {
    width: 80%;
    padding: 3px 0;
    display: block;
    border: 1px solid #999;
    font-size: 13px;
    font-weight: 600;
    border-radius: 5px;
    margin: 0 auto;
}
.practice03 td a:last-child {
    margin-top: 5px;
    background: #eee;
}
.practice03 .table_gray td,
.practice03 .table_gray td li {
    font-size: 0.9rem;
}
.practice03 .table_gray td img {
    width: 20px;
}

.practice04_table td {
    padding: 1rem 0.6rem;
}

/* 반응형 ----------------------------------------------- */

@media (max-width: 1000px) {
    /* 반응형 — practice03 */
    .practice03 td a {
        padding: 6px 4px;
        display: inline;
    }
    .practice03 td {
        text-align: start;
    }
    .practice03 td ul li {
        margin: 5px 0;
    }
    .practice03 td ul li:last-child {
        margin-top: 10px;
    }
}

@media screen and (max-width: 767px) {
}
/* ==========================================================
   landing 영역 — 학과별 서브페이지 / 학과별 이벤트 / 랜딩 페이지
   ========================================================== */

/* ─── 학과별 서브페이지 공용 (welfare / childcare / specialchildcare / lifelongeducation / youth / beauty / business / healthfamily / korean / psychology / library) ─── */
.sub_advice_wrap {
    background: url(/file/main/images/landing/sub_advice_bg.png) no-repeat;
    background-position: top center;
    background-size: cover;
}
.sub_advice_wrap .inner {
    padding: 100px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.sub_advice_tit {
    width: 45%;
}
.sub_advice_tit h3,
.sub_advice_tit b {
    font-weight: 300;
    font-size: 42px;
    color: #fff;
    margin-bottom: 40px;
}
.sub_advice_tit b {
    font-weight: 800;
}
.condiv_adCALL {
    color: #fff;
    transform: skew(-0.03deg);
}
.sub_advice_box {
    background: #fff;
    padding: 50px 40px;
}
.sub_advice_box th {
    transform: skew(-0.03deg);
    width: 20%;
    text-align: left;
}
.sub_advice_box td {
    padding-bottom: 20px;
}
.sub_advice_box small a {
    font-size: 0.875rem;
}
@media screen and (max-width: 767px) {
    .sub_advice_wrap .inner {
        display: flex;
        flex-wrap: wrap;
        padding: 50px 0;
    }
    .sub_advice_tit {
        width: 100%;
        text-align: center;
        margin: 0 auto;
    }
    .sub_advice_tit h3 {
        margin-bottom: 20px;
    }
    .sub_advice_box {
        margin: 20px 0;
    }
}

.formtable input {
    width: 100%;
    background: #f1f1f1;
    padding: 15px 20px;
}
.formtable select {
    width: 100%;
    background: #f1f1f1 url(/rtImages/ns_w/main/select_btn.png) no-repeat;
    background-position: calc(100% - 20px) 50%;
    padding: 15px 20px;
}
.formtable .phone {
    width: 30%;
}
.course_Tb th,
.course_Tb td {
    padding: 0.6rem 0.4rem !important;
    font-size: 14px;
}
.course_Tb td {
    font-size: 14px;
}

.people_bg {
    background: url("/file/main/images/landing/subpage_review_bg.png") center no-repeat;
}

/* 사회복지사 서브페이지 (welfare.jsp / welfare2.jsp / welfare3.jsp / welfare4.jsp / welfare4_02.jsp) */
.sabok_pc01 {
    position: relative;
    background: url(/file/main/images/landing/sabok1_bg.png) center no-repeat;
}
.sabok_pc02,
.sabok_pc04,
.sabok_pc06 {
    background: #123370;
}
.sabok_mo02tit {
    background: #123370;
}
.sabok_mo02 * {
    overflow: visible;
}
.sabok_mo03tit {
    background: #123370;
}
.sabok_mo04 {
    position: relative !important;
    background-color: #fff !important;
    /* 제목 이미지와 탭이 겹칠 공간을 미리 확보합니다 */
    padding-bottom: 30px !important;
}

/* 종전법 개정법 구간 탭 css */
.sabok_mo04 .cont_maxW {
    position: relative;
}
/* 탭 박스: 부모의 바닥을 기준으로 위치 잡기 */
.sabok_mo04_tabs {
    position: absolute;
    top: 16%; /* 👈 이미지의 전체 높이 대비 위치를 %로 조절 */
    width: 100%;
    z-index: 10;
}
.sabok_mo04_tabs_head {
    margin: 20px;
    display: flex;
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); /* 겹쳤을 때 선명하게 보이게 */
}
.sabok_mo04_tab {
    flex: 1;
    cursor: pointer !important; /* 손가락 모양 확실히 나오게 */
    padding: 2% 0;
    text-align: center;
}
/* 탭 아래 오는 실제 표 내용 */
.sabok_mo04_tab.sabok_tab_active {
    background: #0812cb;
    color: #fff;
}

@media screen and (max-width: 767px) {
    .step_welfare3 {
        flex-wrap: wrap;
        row-gap: 8px;
    }
    .step_welfare3 > li {
        width: 48%;
    }
}

/* 보육교사 서브페이지 (childcare.jsp / childcare2.jsp / childcare3.jsp / childcare4.jsp / childcare4_02.jsp) */
.childcare_pc01 {
    position: relative;
    background: url(/file/main/images/landing/childcare1_bg.png) center no-repeat;
}
.childcare_pc02 {
    background: #f29c9f;
}
.childcare_pc03 {
    background: #fffbf0;
}
.childcare_pc04 {
    background: #f29c9f;
}
.childcare_mo02 {
    background: #fffbf0;
}
.childcare_mo02 * {
    overflow: visible;
}
@media screen and (max-width: 767px) {
    .step_childcare3 {
        flex-wrap: wrap;
        row-gap: 8px;
    }
    .step_childcare3 > li {
        width: 48%;
    }
}

/* 장애영유아 서브페이지 (specialchildcare.jsp / specialchildcare2.jsp / specialchildcare2_1.jsp / specialchildcare3.jsp / specialchildcare4.jsp) */
.specialchild_pc01 {
    position: relative;
    background: url(/file/main/images/landing/specialchild1_bg.png) center no-repeat;
}
.specialchild_pc06 {
    background: url(/file/main/images/landing/specialchild6_bg.png) center no-repeat;
}
.specialchild_mo03tit img {
    width: 82%;
    height: auto;
    display: block;
    margin: 0 auto;
}

/* 평생교육사 서브페이지 (lifelongeducation.jsp / lifelongeducation2~4_2.jsp) */
.lifelongeducation_pc01 {
    position: relative;
    background: url(/file/main/images/landing/lifelongeducation1_bg.png) center no-repeat;
}
.lifelongeducation_pc03,
.lifelongeducation_pc05 {
    background: #00794b;
}
.step_lifelongeducation3 > li > .xi_angleright {
    right: -48px;
}
.step_lifelongeducation3_B li {
    width: 14.5%;
}
@media screen and (max-width: 767px) {
    .step_lifelongeducation3_B {
        flex-wrap: wrap;
        row-gap: 8px;
    }
    .step_lifelongeducation3_B li {
        width: 48%;
    }
}

/* 청소년지도사 서브페이지 (youth.jsp / youth2~4.jsp) */
.youth_pc01 {
    background: #fdf5f3;
}
.youth_pc02,
.youth_pc05,
.youth_pc08 {
    background: #b2ceeb;
}
.youth_pc09 {
    position: relative;
    background: url(/file/main/images/landing/youth5_bg.png) center no-repeat;
}

/* 미용학사 서브페이지 (beauty.jsp / beauty2~4.jsp) */
.beauty_pc01 {
    position: relative;
    background: url(/file/main/images/landing/beauty_sp01_bg.png) center no-repeat;
}
.beauty_pc02 {
    background: #da5362;
}
.beauty_pc03 {
    background: #f4eded;
}
.beauty_pc04 {
    background: #da5362;
}
.beauty_pc06 {
    background: #da5362;
}

.beauty_mo02tit {
    background: #da5362;
}
.beauty_mo03tit {
    background: #da5362;
}
.beauty_mo04tit {
    background: #da5362;
}

/* 경영학 서브페이지 (business.jsp / business2~4.jsp) */
.cpa_pc01 {
    position: relative;
    background: url(/file/main/images/landing/cpa1_bg.png) center no-repeat;
}
.cpa_pc02,
.cpa_pc05 {
    background: #0829bb;
}

/* 건강가정사 서브페이지 (healthfamily.jsp / healthfamily2~4.jsp) */
.healthfamily_pc01 {
    position: relative;
    background: url(/file/main/images/landing/healthfamily1_bg.png) center no-repeat;
}
.healthfamily_pc02 {
    background: #fffde3;
}
.healthfamily_pc05 {
    background: #1c7b1c;
}

/* 한국어교원 서브페이지 (korean.jsp / korean2~4.jsp) */
.korean_pc01 {
    position: relative;
    background: url(/file/main/images/landing/korean1_bg.png) center no-repeat;
}
.korean_pc02,
.korean_pc05 {
    background: #1e134f;
}

/* 심리학사 서브페이지 (psychology.jsp / psychology2~3.jsp) */
.psychology_pc01 {
    background: url(/file/main/images/landing/psychology1_bg.png) center no-repeat;
}
.psychology_pc02,
.psychology_pc04 {
    background: #cd4555;
}

/* 문헌정보학 서브페이지 (library.jsp / library2~4.jsp) */
.library_pc01 {
    background: url(/file/main/images/landing/library_sp01_bg.png) center no-repeat;
}
.library_pc02,
.library_pc05 {
    background: #342223;
}
.library_pc07 {
    background: url(/file/main/images/landing/library_sp05_bg.png) center no-repeat;
}

/* ─── 학과별 이벤트 페이지 (event/*.jsp 그룹) ─── */

/* 이벤트 페이지 전용 말풍선 배지 (전체 이벤트 공용) */
.mo_fcfs_badge {
    width: 22vw !important;
    height: 22vw !important;
    position: absolute;
    top: 3vw;
    left: 3vw;
}

/* 사회복지사 이벤트 sabok_event_ad.jsp */
.sabok_ev_ad_pc01 {
    background: #4cf3fc;
    position: relative;
}
.sabok_ev_ad_pc01_btns {
    width: 100%;
    display: flex;
    justify-content: space-between;
    position: absolute;
    bottom: 3%;
}
.sabok_ev_ad_pc01_btns > ul {
    width: 50%;
}
.sabok_ev_ad_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.sabok_ev_ad_pc03 {
    background: #e6efff;
}
.sabok_ev_ad_pc04 {
    background: #faeffe;
}
.sabok_ev_ad_pc06 {
    background: #fff8f5;
}
.sabok_ev_ad_mo03 > img {
    margin-bottom: 20px;
}
.sabok_ev_ad_mo01 {
    position: relative;
}
.sabok_ev_ad_mo01_btns {
    width: 100%;
    display: flex;
    justify-content: space-between;
    position: absolute;
    bottom: 3%;
}
.sabok_ev_ad_mo01_btns > ul {
    width: 50%;
}

/* 사회복지사 이벤트 sabok_event.jsp */
.sabok_ev_pc01 {
    background: #4cf3fc;
    position: relative;
}
.sabok_ev_pc01_btns {
    width: 100%;
    display: flex;
    justify-content: space-between;
    position: absolute;
    bottom: 3%;
}
.sabok_ev_pc01_btns > ul {
    width: 50%;
}
.sabok_ev_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.sabok_ev_pc03 {
    background: #e6efff;
}
.sabok_ev_pc04 {
    background: #faeffe;
}
.sabok_ev_pc05 {
    background: #fff;
}
.sabok_ev_mo01 {
    position: relative;
}
.sabok_ev_mo01_btns {
    width: 100%;
    display: flex;
    justify-content: space-between;
    position: absolute;
    bottom: 3%;
}
.sabok_ev_mo01_btns ul {
    width: 50%;
}

/* 보육교사 이벤트 childcare_event_ad.jsp */
.childcare_ev_ad_pc01 {
    background: #4cf3fc;
    position: relative;
}
.childcareEV_btns {
    position: absolute;
    top: 86.5%;
    left: 26%;
    width: 50%;
}
.childcare_ev_ad_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.childcare_ev_ad_pc03 {
    padding-bottom: 50px;
}
.childcare_ev_ad_pc03 > div > ul {
    display: flex;
    gap: 2%;
    justify-content: center;
}
.childcare_ev_ad_pc03 > div > ul > li {
    display: flex;
    justify-content: center;
}
.childcare_ev_ad_pc04 {
    background: #ffdae1;
}
.childcare_ev_ad_pc04 > div > ul {
    display: flex;
    flex-direction: column;
    row-gap: 30px;
    padding-bottom: 50px;
}
.childcare_ev_ad_pc07 {
    background: #fffae5;
}
.childcare_ev_ad_pc08 {
    background: #fff1b8;
}
.childcare_ev_ad_btns {
    position: absolute;
    left: 831px;
    top: 165px;
}
.childcare_ev_ad_btns > li:nth-child(2) {
    position: absolute;
    left: 0;
    top: 359px;
}
.childcare_ev_ad_btns > li:nth-child(3) {
    position: absolute;
    left: 0;
    top: 640px;
}
.childcare_ev_ad_mo01 {
    position: relative;
}
.childcare_ev_ad_mo01 > a {
    position: absolute;
    bottom: 5%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}
.childcare_ev_ad_mo03 > ul > li {
    display: flex;
    justify-content: center;
}
.childcare_ev_ad_mo04 {
    background: #fff2fc;
}
/* 보육교사 이벤트 (childcare_event.jsp) */
.childcare_ev_pc01 {
    background: #4cf3fc;
    position: relative;
}
.childcare_ev_pc01 > div > div {
    position: absolute;
    top: 86.5%;
    left: 26%;
    width: 50%;
}
.childcare_ev_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.childcare_ev_pc04 {
    padding-bottom: 50px;
}
.childcare_ev_pc04 > div > ul {
    display: flex;
    gap: 2%;
    justify-content: center;
}
.childcare_ev_pc05 {
    background: #ffdae1;
}
.childcare_ev_pc05 > div > ul {
    display: flex;
    flex-direction: column;
    row-gap: 30px;
    padding-bottom: 50px;
}
.childcare_ev_pc07 {
    padding-bottom: 50px;
}
.childcare_ev_pc07 > div > ul {
    display: flex;
    flex-direction: column;
    row-gap: 30px;
}
.childcare_ev_pc08 {
    background: #fffae5;
}
.childcare_ev_mo01 {
    position: relative;
}
.childcare_ev_mo01 > a {
    position: absolute;
    bottom: 5%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}
.childcare_ev_mo04 > ul > li {
    display: flex;
    justify-content: center;
}
.childcare_ev_mo05 {
    background: #fff2fc;
}

/* 장애영유아 이벤트 specialchildcare_event_ad.jsp */
.specialchildcare_ev_ad_pc01 {
    background: #4cf3fc;
    position: relative;
}
.specialchildcare_ev_ad_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.specialchildcare_ev_ad_pc03 {
    background: #7020f4;
}
.specialchildcare_ev_ad_pc03 > div > ul {
    width: 100%;
    position: absolute;
    display: flex;
    justify-content: space-between;
    top: 320px;
    overflow: hidden;
}
.specialchildcare_ev_ad_pc03 > div > a {
    position: absolute;
    bottom: 175px;
    left: 23%;
}
.specialchildcare_ev_ad_pc06 {
    background: #e2feff;
}
.specialchildcare_ev_ad_mo03 {
    position: relative;
}
.specialchildcare_ev_ad_mo03 > a {
    width: 60%;
    position: absolute;
    bottom: 16vw;
    left: 21%;
}

/* 장애영유아 이벤트 specialchildcare_event.jsp */
.specialchildcare_ev_pc01 {
    background: #4cf3fc;
    position: relative;
}
.specialchildcare_ev_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.specialchildcare_ev_pc03 {
    background: #7020f4;
}
.specialchildcare_ev_pc03 > div > ul {
    width: 100%;
    position: absolute;
    display: flex;
    justify-content: space-between;
    top: 320px;
    overflow: hidden;
}
.specialchildcare_ev_pc03 > div > a {
    position: absolute;
    bottom: 175px;
    left: 23%;
}
.specialchildcare_ev_pc03 > a {
    position: absolute;
    bottom: 175px;
    left: 23%;
}
.specialchildcare_ev_pc06 {
    background: #e2feff;
}
.specialchildcare_ev_mo03 {
    position: relative;
}
.specialchildcare_ev_mo03 > a {
    width: 60%;
    position: absolute;
    bottom: 16vw;
    left: 21%;
}

/* 평생교육사 이벤트 lifelongeducation_event_ad.jsp*/
.lifelongeducation_ev_ad_pc01 {
    background: #4cf3fc;
    position: relative;
}
.lifelongeducation_ev_ad_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.lifelongeducation_ev_ad_pc02 {
    background: #f9f9f9;
}
.lifelongeducation_ev_ad_pc06 {
    background: #e3f6fc;
}
.lifelongeducation_ev_ad_pc_support {
    position: absolute;
    bottom: 100px;
    left: 155px;
}
.lifelongeducation_ev_ad_pc08 > div {
    display: flex;
    justify-content: center;
}
.lifelongeducation_ev_ad_mo3 {
    background: #f9f9f9;
}
.lifelongeducation_ev_ad_mo7 {
    position: relative;
}
.lifelongeducation_ev_ad_mo7 > a {
    position: absolute;
    width: 40%;
    bottom: 9%;
    left: 7%;
}

/* 평생교육사 이벤트 lifelongeducation_event.jsp */
.lifelongeducation_ev_pc01 {
    background: #4cf3fc;
    position: relative;
}
.lifelongeducation_ev_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.lifelongeducation_ev_pc02 {
    background: #f9f9f9;
}
.lifelongeducation_ev_pc06 {
    background: #e3f6fc;
}
.lifelongeducation_ev_pc_support {
    position: absolute;
    bottom: 100px;
    left: 155px;
}
.lifelongeducation_ev_mo03 {
    background: #f9f9f9;
}
.lifelongeducation_ev_mo07 {
    position: relative;
}
.lifelongeducation_ev_mo07 > a {
    position: absolute;
    width: 40%;
    bottom: 9%;
    left: 7%;
}

/* 청소년지도사 이벤트 youth_event_ad.jsp */
.youth_ev_ad_pc01 {
    background: #4cf3fc;
    position: relative;
}
.youth_ev_ad_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.youth_ev_ad_pc05 {
    background: url(/file/main/images/landing/youthPK_pccon04_bg.png) center;
    position: relative;
}
.youth_ev_ad_pc05 > div > a {
    position: absolute;
    top: 75%;
    left: 24%;
}
.youth_ev_ad_pc06 {
    background: #2f4781;
}
.youth_ev_ad_pc07 {
    position: relative;
    background: #d4d9ff;
}
.youth_ev_ad_pc07 > div > a {
    position: absolute;
    top: 80%;
    left: 60%;
}
.youth_ev_ad_mo04 {
    position: relative;
}
.youth_ev_ad_mo04 > a {
    position: absolute;
    top: 45.6vw;
    left: 21%;
    width: 60%;
}
.youth_ev_ad_mo06 {
    position: relative;
}
.youth_ev_ad_mo06 > a {
    position: absolute;
    top: 103vw;
    left: 54vw;
}

/* 청소년지도사 이벤트 youth_event.jsp */
.youth_ev_pc01 {
    background: #4cf3fc;
    position: relative;
}
.youth_ev_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.youth_ev_pc05 {
    position: relative;
    background: url(/file/main/images/landing/youthPK_pccon04_bg.png) center;
}
.youth_ev_pc05 > div > a {
    position: absolute;
    top: 75%;
    left: 24%;
}
.youth_ev_pc06 {
    background: #2f4781;
}
.youth_ev_pc07 {
    position: relative;
    background: #d4d9ff;
}
.youth_ev_pc07 > div > a {
    position: absolute;
    top: 80%;
    left: 60%;
}
.youth_ev_mo04 {
    position: relative;
}
.youth_ev_mo04 > a {
    position: absolute;
    top: 45.6vw;
    width: 60%;
    left: 21%;
}
.youth_ev_mo06 {
    position: relative;
}
.youth_ev_mo06 > a {
    position: absolute;
    top: 103vw;
    left: 54vw;
}

/* 미용학사 이벤트 beauty_event_ad.jsp */
.beauty_ev_ad_pc01 {
    background: #4cf3fc;
    position: relative;
}
.beauty_ev_ad_pc01 .fcfs_badge {
    width: 200px;
    height: 200px;
    position: absolute;
    top: 100px;
    left: 0;
}
.beauty_ev_ad_pc04 {
    background: #f6f1f1;
}

/* 미용학사 이벤트 beauty_event.jsp */
.beauty_ev_pc01 {
    background: #4cf3fc;
    position: relative;
}
.beauty_ev_pc01 .fcfs_badge {
    width: 200px;
    height: 200px;
    position: absolute;
    top: 100px;
    left: 0;
}
.beauty_ev_pc04 {
    background: #f6f1f1;
}

/* 경영학 이벤트 cpa_event_ad.jsp */
.cpa_ev_ad_pc01 {
    background: #4cf3fc;
    position: relative;
}
.cpa_ev_ad_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.cpa_ev_ad_pc02 {
    background: #f1f5ff;
}
.cpa_ev_ad_pc06 {
    background: #eff3fc;
}
.cpa_ev_ad_pc08 {
    background: #f8f8f8;
}
.cpa_ev_ad_pc09 {
    background: #f8f8f8;
    padding-bottom: 50px;
}
.cpa_ev_ad_pc09 > div > ul {
    display: flex;
    flex-direction: column;
    row-gap: 30px;
}
.cpa_ev_ad_pc09 > div > ul > li {
    width: 100%;
    display: flex;
    justify-content: center;
}
.cpa_ev_ad_mo09 > ul {
    background: #f8f8f8;
}

/* 경영학 이벤트 cpa_event.jsp  */
.cpa_ev_pc01 {
    background: #4cf3fc;
    position: relative;
}
.cpa_ev_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.cpa_ev_pc06 {
    background: #eff3fc;
}
.cpa_ev_pc08 {
    background: #f8f8f8;
}
.cpa_ev_pc09 {
    background: #f8f8f8;
    padding-bottom: 50px;
}
.cpa_ev_pc09 > div > ul {
    display: flex;
    flex-direction: column;
    row-gap: 30px;
}
.cpa_ev_pc09 > div > ul > li {
    width: 100%;
    display: flex;
    justify-content: center;
}
.cpa_ev_mo09 {
    background: #f8f8f8;
}

/* 건강가정사 이벤트 healthfamily_event_ad.jsp*/
.healthfamily_ev_ad_pc01 {
    background: #4cf3fc;
    position: relative;
}
.healthfamily_ev_ad_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.healthfamily_ev_ad_pc02 {
    background: #fffcd4;
}
.healthfamily_ev_ad_pc_btn {
    position: absolute;
    top: 62%;
    right: 31.6%;
}
.healthfamily_ev_ad_pc07 {
    background: url(/file/main/images/landing/healthfamilyPK_pccon06_bg.png) repeat center;
}
.healthfamily_ev_ad_mo02 {
    position: relative;
}
.healthfamily_ev_ad_mo02 > a {
    position: absolute;
    margin-top: 58%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}

/* 건강가정사 이벤트 healthfamily_event.jsp*/
.healthfamily_ev_pc01 {
    background: #4cf3fc;
    position: relative;
}
.healthfamily_ev_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.healthfamily_ev_pc06 {
    background: url(/file/main/images/landing/healthfamilyPK_pccon06_bg.png) repeat center;
}

/* 한국어교원 이벤트 korean_event_ad.jsp */
.korean_ev_ad_pc01 {
    background: #4cf3fc;
    position: relative;
}
.korean_ev_ad_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.korean_ev_ad_pc01 > div > img:nth-child(3) {
    position: absolute;
    top: 100px;
    right: 0;
    width: 200px;
    height: 200px;
}
.korean_ev_ad_pc02 {
    background: url(/file/main/images/landing/korean_lanpc03_bg.png) center center no-repeat;
}
.korean_ev_ad_pc03 {
    background: #335040;
}
.korean_ev_ad_pc04 {
    background: url(/file/main/images/landing/korean_lanpc05_bg.png) center center no-repeat;
}
.korean_ev_ad_pc06 {
    background: url(/file/main/images/landing/korean_lanpc07_bg.png) center center no-repeat;
}

/* 한국어교원 이벤트 korean_event.jsp */
.korean_ev_pc01 {
    background: #4cf3fc;
    position: realtive;
}
.korean_ev_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.korean_ev_pc01 .notelock {
    position: absolute;
    top: 100px;
    right: 0;
    width: 200px;
    height: 200px;
}
.korean_ev_pc02 {
    background: url(/file/main/images/landing/korean_lanpc03_bg.png) center center no-repeat;
}
.korean_ev_pc03 {
    background: #335040;
}
.korean_ev_pc04 {
    background: url(/file/main/images/landing/korean_lanpc05_bg.png) center center no-repeat;
}
.korean_ev_pc06 {
    background: url(/file/main/images/landing/korean_lanpc07_bg.png) center center no-repeat;
}

/* 심리학사 이벤트 psychology_event_ad.jsp*/
.psychology_ev_ad_pc01 {
    background: #4cf3fc;
    position: relative;
}
.psychology_ev_ad_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}

/* 심리학사 이벤트 psychology_event.jsp*/
.psychology_ev_pc01 {
    background: #4cf3fc;
    position: relative;
}
.psychology_ev_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}

/* 문헌정보학 이벤트 library_event_ad.jsp */
.library_ev_ad_pc01 {
    background: #4cf3fc;
    position: relative;
}
.library_ev_ad_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.library_ev_ad_pc05 {
    background: #fffbf7;
}

/* 문헌정보학 이벤트 library_event.jsp */
.library_ev_pc01 {
    background: #4cf3fc;
    position: relative;
}
.library_ev_pc01 .fcfs_badge {
    position: absolute;
    top: 100px;
    left: 0;
    width: 200px;
    height: 200px;
}
.library_ev_pc05 {
    background: #fffbf7;
}

/* 신규 이벤트 (event/new_event.jsp / new_event_n.jsp) */
.new_event_pc01 {
    background: #3766fe;
}
.new_event_pc02 {
    background: #e7eeff;
}
.new_event_pc03 {
    background: #fff;
}
.new_event_pc04 {
    background: #7f7fd5;
}
.new_event_pc05 {
    background: #e7eeff;
}
#realstory_wrap {
    background: url(/file/main/images/include/realstory_pc_bg.png) no-repeat center;
    background-size: cover;
}
#realstory {
    background: url(/file/main/images/include/realstory_pc.png) no-repeat center;
}
.realstory_btns {
    overflow: hidden;
    margin: 0 auto;
    padding: 10px 0 38px 0;
}

/* 이벤트 페이지 실제 마크업(<ul><li>)에 적용되는 PC 본문 */
.realstory_phone > ul {
    position: relative;
    height: 800px;
}
.realstory_phone > ul > li {
    position: absolute;
    top: 39.5%;
    left: 7.6%;
}
.realstory_phone > ul > li > a {
    display: block;
    width: 100%;
    height: 100%;
}
.realstory_phone > ul > li > a > img {
    display: block;
    width: 100%;
    height: 100%;
}
.realstory_btns > ul {
    overflow: hidden;
    width: 788px;
    margin: 0 auto;
}
.realstory_btns > ul > li {
    float: left;
    padding: 0 10px;
    cursor: pointer;
}
.realstory_btns > ul > li > a {
    display: block;
    width: 177px;
    height: 105px;
}
.realstory_btns > ul > li:nth-child(1) > a {
    background: url(/file/main/images/landing/rs_pcbtn01_off.png) no-repeat center;
}
.realstory_btns > ul > li:nth-child(2) > a {
    background: url(/file/main/images/landing/rs_pcbtn02_off.png) no-repeat center;
}
.realstory_btns > ul > li:nth-child(3) > a {
    background: url(/file/main/images/landing/rs_pcbtn03_off.png) no-repeat center;
}
.realstory_btns > ul > li:nth-child(4) > a {
    background: url(/file/main/images/landing/rs_pcbtn04_off.png) no-repeat center;
}
.realstory_btns > ul > li:nth-child(1):hover a {
    background: url(/file/main/images/landing/rs_pcbtn01_on.png) no-repeat center;
}
.realstory_btns > ul > li:nth-child(2):hover a {
    background: url(/file/main/images/landing/rs_pcbtn02_on.png) no-repeat center;
}
.realstory_btns > ul > li:nth-child(3):hover a {
    background: url(/file/main/images/landing/rs_pcbtn03_on.png) no-repeat center;
}
.realstory_btns > ul > li:nth-child(4):hover a {
    background: url(/file/main/images/landing/rs_pcbtn04_on.png) no-repeat center;
}

/* ---------------------------------------------- */

/* 장애영유아 지금이 기회다 이벤트 (event/specialchildcare_event*.jsp) */
.specialchildcarePK_pcbtn01 {
    position: absolute;
    bottom: 175px;
    left: 23%;
}

/* 학은제3차 건강가정사 랜딩 (event/healthfamily_event*.jsp) */
.healthfamily_pc01 {
    position: relative;
}

/* 반응형 ----------------------------------------------- */

@media (max-width: 1000px) {
    .container p img {
        width: 100%;
    }

    /* new_event.jsp */
    #realstory {
        background: url(/file/main/images/landing/realstory_mo.png) no-repeat center;
        background-size: 100%;
    }
    .realstory_phone > ul {
        height: 100vw;
    }
    .realstory_phone > ul > li {
        top: 34%;
        left: 1.9%;
        width: 96vw;
    }
    .realstory_phone > ul > li > a > img {
        display: block;
        width: 100%;
        height: 100%;
    }
    .realstory_btns > ul {
        overflow: hidden;
        width: 90%;
        padding-bottom: 10vw;
    }
    .realstory_btns > ul > li {
        width: 50%;
    }
    .realstory_btns > ul > li > a {
        height: 13vw;
        background-size: cover !important;
        width: 100%;
    }
    .realstory_btns > ul > li:nth-child(1) > a {
        background: url(/file/main/images/landing/rs_mobtn01_off.png) no-repeat center;
    }
    .realstory_btns > ul > li:nth-child(2) > a {
        background: url(/file/main/images/landing/rs_mobtn02_off.png) no-repeat center;
    }
    .realstory_btns > ul > li:nth-child(3) > a {
        background: url(/file/main/images/landing/rs_mobtn03_off.png) no-repeat center;
    }
    .realstory_btns > ul > li:nth-child(4) > a {
        background: url(/file/main/images/landing/rs_mobtn04_off.png) no-repeat center;
    }
    .realstory_btns > ul > li:nth-child(1):hover a {
        background: url(/file/main/images/landing/rs_mobtn01_on.png) no-repeat center;
    }
    .realstory_btns > ul > li:nth-child(2):hover a {
        background: url(/file/main/images/landing/rs_mobtn02_on.png) no-repeat center;
    }
    .realstory_btns > ul > li:nth-child(3):hover a {
        background: url(/file/main/images/landing/rs_mobtn03_on.png) no-repeat center;
    }
    .realstory_btns > ul > li:nth-child(4):hover a {
        background: url(/file/main/images/landing/rs_mobtn04_on.png) no-repeat center;
    }
    .realstory_btns {
        padding: 0 !important;
    }
}

@media screen and (max-width: 767px) {
    /* 리얼스토리 (mingan_event / new_event / new_event_n / psychology_event) */
    .realstory_phone > ul > li {
        top: 41.5%;
        left: 1.8%;
        width: 94.5vw;
    }
}

/* ==========================================================
   community 이벤트 영역 — 이벤트 목록 / 신청 폼 / 민간자격 이벤트
   ========================================================== */

/* ── 이벤트 목록 (event.jsp) ───────────────────────────── */
.event_card_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.event_card {
    border: 1px solid #e5e5e5;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
}
.event_card_thumb {
    aspect-ratio: 16 / 9;
    background: #f4f4f4;
    overflow: hidden;
}
.event_card_thumb a {
    display: block;
    width: 100%;
    height: 100%;
}
.event_card_thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.event_card_body {
    padding: 18px;
}
.event_card_title {
    font-size: 20px;
    font-weight: 500;
    color: #222;
    margin-bottom: 8px;
}
.event_card_period {
    font-size: 14px;
    color: #666;
    margin-bottom: 14px;
}
.event_card_btn {
    display: inline-block;
    padding: 10px 18px;
    background: #d32f2f;
    color: #fff;
    border-radius: 8px;
    font-weight: 700;
}
.event_paging {
    margin-top: 40px;
}

@media screen and (max-width: 1000px) {
    .event_card_grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
}
@media screen and (max-width: 768px) {
    .event_card_grid {
        grid-template-columns: 1fr;
    }
}

/* ── 이벤트 신청 (event_apply.jsp) ─────────────────────── */
.event_apply_wrap {
    line-height: 1.5;
    color: #333;
}
.event_apply_wrap .dis_pc {
    display: block;
}
.event_apply_wrap .dis_mo {
    display: none;
}

.event_apply_wrap .section-visual {
    width: 100%;
}
.event_apply_wrap .section-visual img {
    width: 100%;
}

.event_apply_wrap .section-form {
    padding: 50px 20px;
    background-color: #fff;
}
.event_apply_wrap .container_form {
    max-width: 1000px;
    margin: 0 auto;
    width: 100%;
}

.event_apply_wrap .event-info {
    margin-bottom: 40px;
    list-style: none;
}
.event_apply_wrap .event-info li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 15px;
    font-size: 18px;
}
.event_apply_wrap .event-info li::before {
    content: "+";
    position: absolute;
    left: 0;
    color: #5b48ff;
    font-weight: bold;
}
.event_apply_wrap .event-info li strong {
    color: #5b48ff;
}
.event_apply_wrap .event-info li span {
    color: #ff4d4d;
    font-size: 14px;
}

.event_apply_wrap .form-box {
    border: 2px solid #eee;
    border-radius: 20px;
    padding: 30px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
}
.event_apply_wrap .form-box h3 {
    font-size: 24px;
    margin-bottom: 25px;
    border-bottom: 1px solid #eee;
    padding-bottom: 15px;
}
.event_apply_wrap .form-box h3 span {
    font-size: 14px;
    color: #666;
    font-weight: normal;
    margin-left: 10px;
}
.event_apply_wrap .form-flex-container {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
}
.event_apply_wrap .input-group {
    flex: 1;
    display: flex;
    align-items: flex-start;
    margin-bottom: 15px;
}
.event_apply_wrap .input-group label {
    width: 100px;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    flex-shrink: 0;
}
.event_apply_wrap .input-group input {
    flex: 1;
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 14px;
}
.event_apply_wrap .column-inputs {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.event_apply_wrap .btn-submit {
    display: block;
    width: 50%;
    margin: 10px auto 0;
    padding: 15px;
    background: #5b48ff;
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 18px;
    font-weight: bold;
    cursor: pointer;
}

.event_apply_wrap .section-guide {
    padding: 60px 20px;
    background-color: #f9fbff;
}
.event_apply_wrap .container_evt {
    max-width: 1000px;
    margin: 0 auto;
    width: 100%;
}
.event_apply_wrap .guide-title {
    display: block;
    width: fit-content;
    margin: 0 auto 30px;
    padding: 10px 40px;
    background: #1e88e5;
    color: #fff;
    border-radius: 30px;
    font-size: 20px;
    text-align: center;
}
.event_apply_wrap .step-list {
    list-style: none;
    margin-bottom: 50px;
}
.event_apply_wrap .step-list li {
    display: flex;
    align-items: center;
    background: #fff;
    margin-bottom: 12px;
    padding: 12px 25px;
    border-radius: 50px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    border: 1px solid #e1e8f5;
}
.event_apply_wrap .step-num {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    margin-right: 15px;
    background: #4facfe;
    color: #fff;
    border-radius: 50%;
    font-weight: bold;
}
.event_apply_wrap .step-list p {
    font-size: 15px;
    color: #444;
    line-height: 2;
}
.event_apply_wrap .step-list p strong {
    color: #1e88e5;
}
.event_apply_wrap .step-list p span {
    font-size: 13px;
    color: #888;
}

.event_apply_wrap .notice-box {
    background: #fff;
    border: 1px solid #dce3f0;
    border-radius: 15px;
    padding: 30px;
}
.event_apply_wrap .notice-title {
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #f0f0f0;
    font-size: 24px;
    color: #333;
    text-align: center;
}
.event_apply_wrap .notice-list {
    list-style: none;
}
.event_apply_wrap .notice-list li {
    position: relative;
    padding-left: 15px;
    margin-bottom: 10px;
    font-size: 16px;
    color: #666;
    line-height: 1.6;
}
.event_apply_wrap .notice-list li::before {
    content: "•";
    position: absolute;
    left: 0;
    color: #4facfe;
    font-weight: bold;
}
.event_apply_wrap .notice-strong {
    font-size: 20px;
    font-weight: 700;
    color: #1e88e5;
}

@media screen and (max-width: 768px) {
    .event_apply_wrap .dis_pc {
        display: none;
    }
    .event_apply_wrap .dis_mo {
        display: block;
    }
    .event_apply_wrap .form-flex-container {
        flex-direction: column;
    }
    .event_apply_wrap .input-group {
        display: block;
    }
    .event_apply_wrap .input-group label {
        display: block;
        width: 100%;
        margin-bottom: 8px;
    }
    .event_apply_wrap .step-list p {
        font-size: 14px;
    }
    .event_apply_wrap .notice-strong {
        font-size: 16px;
    }
}

/* 민간자격 이벤트 (mingan_event.jsp) */
.mingan_event .march_events_pccon04 {
    background: #3765ff;
}
.mingan_event .march_events_pccon05 {
    background: #ffffff;
}
.mingan_event .march_events_pccon07 {
    background: #fefff1;
}

/* ==========================================================
   학사일정 / 강의계획서 팝업 영역
   ----------------------------------------------------------
   사용처 : schedule.jsp / lecture_plan.jsp / lecture_plan2.jsp
   ========================================================== */

.mysche_text {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.mysche_text h2 span {
    font-size: 1.2rem;
}
.web_allclick {
    display: flex;
    justify-content: center;
}
.web_allclick select {
    margin-right: 6px !important;
}
.web_allclick input,
.web_allclick select {
    margin: 20px 0;
    padding: 10px;
}

/* --- 학사일정 팝업 --- */
.popupclass {
    width: 1000px;
    margin-bottom: 0;
}
#popup_wrapper {
    width: 1000px;
    overflow: hidden;
    font-family: "Pretendard", sans-serif;
    font-weight: 200;
}
#popup {
    width: 90%;
    margin: 50px auto;
}
#pop_top {
    overflow: hidden;
}
#pop_top > h1 {
    float: left;
    font-size: 3rem;
    color: #516566;
}
#pop_top > h1 > span {
    font-size: 2rem;
    color: #062124;
}
#pop_top > h3 {
    float: right;
    font-size: 1.8rem;
    color: #516566;
    padding-top: 20px;
}
#pop_mid {
    border-top: 5px solid #062124;
    border-bottom: 5px solid #062124;
    margin: 11px 0;
    position: relative;
}
.mysche_text > div {
    overflow: hidden;
    margin: 30px 10px;
    display: none;
}
.mysche_text > div:nth-child(1) {
    display: block;
}
.mysche_text > div > h2 {
    float: left;
    width: 75%;
    margin-bottom: 15px;
    padding-left: 3%;
    background-size: 20px;
}
.mysche_text > div > h2 span {
    font-size: 1.3rem;
}
.mysche_text > div > a {
    float: right;
    display: block;
    font-size: 0.9rem;
    color: #000;
    font-weight: 800;
    background: #ff9c00;
    width: 20%;
    text-align: center;
    padding: 5px 0;
    border-radius: 15px;
}
.mysche_text > div > a:hover {
    background: #ff6600;
    transition: all 0.3s;
}
.mysche_text > div > div {
    clear: both;
}
.mysche_table {
    width: 100%;
    margin: 15px 0;
    border-collapse: inherit;
}
.mysche_table th {
    background: #e6e7e9;
    padding: 10px 0;
}
.mysche_table td {
    border: 1px solid #e6e7e9;
    padding: 0 30px;
    vertical-align: middle;
}
.mysche_t1 th:nth-child(1),
.mysche_t1 th:nth-child(3) {
    width: 15%;
}
.mysche_t1 td:nth-of-type(2) span {
    font-size: 0.85rem;
}
.mysche_t2 th {
    border: 1px solid #fff;
}
.mysche_t2 th:nth-child(1) {
    width: 15%;
    font-weight: 700;
}
.mysche_t2 td {
    border-top: 0;
    border-left: 0;
    letter-spacing: -0.2px;
}
.mysche_t2 tbody tr:hover td:nth-of-type(1) {
    background: #fff5e5;
}
.sche_select {
    width: 78%;
    font-size: 1.3rem;
    font-weight: 700;
    color: #000;
    margin: 20px auto;
    display: inline-block;
    padding: 5px 15px;
    border: 1px solid #999;
    background: #516566;
    color: #fff;
    font-family: "Pretendard", sans-serif;
}
.sche_select_all {
    height: auto !important;
}
.sche_select_all > option {
    font-size: 1.2rem;
    font-family: "Pretendard", sans-serif;
    color: #fff;
    cursor: pointer;
    line-height: 1.1;
}
.sche_p {
    line-height: 1.2;
    font-size: 0.85rem;
}
.web_allclick {
    width: 55%;
    margin: 20px auto;
}
