@charset "utf-8";

/* 메인 ------------------------------------------------------------------------------------------------------------------------------------------------ */
.main_index h2::before {
    content: "";
    display: inline-block;
    width: 28px;
    height: 28px;
    margin-right: 16px;
    vertical-align: middle;
    background: url(../images/user_main_status.svg) no-repeat left center/cover;
}
.main_index h2 span {
    margin-left: 22px;
    color: #BCB7B7;
    font-size: 1rem;
    font-weight: normal;
}
.main_index .tit { font-weight: bold; }
.main_index .date { color: #898989; }
.main_index .slide_controll {
    display: flex;
    align-items: center;
    margin-top: 2.8%;
}
.main_index section:not(.sec01) .swiper-button-prev, .main_index section:not(.sec01) .swiper-button-next {
    display: block;
    position: inherit;
    width: 30px;
    height: 30px;
    margin-top: 0;
    color: transparent;
    background: url(../images/user_btn.svg) no-repeat right center/cover;
    opacity: 1;
}
.main_index section:not(.sec01) .swiper-button-prev {
    margin: 0 6px 0 auto;
    background-position: left center;
}
.main_index .swiper-pagination-progressbar {
    width: 200px;
    height: 2px;
    background-color: rgba(255, 255, 255, 0.5);
}
.main_index .search_form {
    display: flex;
    margin-top: 25px;
    padding: 0 20px;
    background-color: #fff;
    border-radius: 40px;
}
.main_index .search_form input {
    flex: 1 1 auto;
    padding: 11px 0;
    text-align: left;
    background-color: transparent;
    border: 0;
}
.main_index .search_form button { width: 17.5px; }

/* .sec01 (메인 비주얼) */
.main_index .sec01 .swiper { height: 600px; }
.main_index .sec01 .swiper .txt {
    position: absolute;
    left: 50%;
    top: 20%;
    color: #676FBA;
    transform: translateX(-50%);
    z-index: 1000;
}
.main_index .sec01 .swiper h3 {
    margin-bottom: 25px;
    font-family: 'Montserrat', 'NanumSquareAc', sans-serif;
    letter-spacing: -1.44px;
}
.main_index .sec01 .swiper p { line-height: 1.65; }
.main_index .sec01 .swiper img { 
    object-fit: cover;
    height: inherit;
    object-position: center center;
}
.main_index .sec01 .container.pagination {
    position: relative;
    top: -25%;
    z-index: 1000;
}
.main_index .sec01 .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { background-color: #C3C6E1; }

/* sec02 (search 등) */
.main_index .sec02 {
    position: relative;
    color: #fff;
    z-index: 100;
    transform: translateY(-50%);
}
.main_index .sec02 .container {
    display: grid;
    grid-template-columns: 2fr 0.5fr 0.5fr 0.5fr 0.5fr;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
}
.main_index .sec02 .container>div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 40px 10%;
}
.main_index .sec02 .search { background-color: var(--color01); }
.main_index .sec02 .search .txt {
    display: flex;
    align-items: end;
    gap: 24px;
}
.main_index .sec02 .search .txt a { color: #fff; }
.main_index .sec02 .container>div:not(.search) {
    text-align: center;
    background-color: #333;
    border-right: 1px solid #464646;
}
.main_index .sec02 .container>div:last-child { border-right: 0; }
.main_index .sec02 .container>div:not(.search) strong {
    display: block;
    margin-top: 15px;
}

/* .sec03 (진행중인 채용 공고) */
.main_index .sec03 { margin-bottom: 5%; }
.main_index .sec03 h2 { margin-bottom: 44px; }
.main_index .sec03 .ongoingSwiper { overflow: visible; }
.main_index .sec03 .ongoingSwiper::before,
.main_index .sec03 .ongoingSwiper::after {
    content: "";
    position: absolute;
    left: calc(-100% - 20px);
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    z-index: 100;
}
.main_index .sec03 .ongoingSwiper::after {
    left: inherit;
    right: calc(-100% - 20px);
}
.main_index .sec03 ul li {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    height: auto;
    padding: 36px 28px;
    border: 1px solid #E1E1E1;
    border-radius: 10px;
}
.main_index .sec03 ul li .tit {
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    margin: 12px 0 60px;
    line-height: 1.3;
}
.main_index .sec03 ul li button {
    width: fit-content;
    margin-top: auto;
    padding: 8px 43px;
    color: var(--color01);
    background-color: #CDE0FD;
}
.main_index .sec03 ul li .date { margin: 16px 0 9px; }
.main_index .sec03 ul li .tag_cont { overflow-x: hidden; margin: 0; }
.main_index .sec03 ul li .tag_cont .tag { width: max-content; }
.main_index .sec03 .slide_controll { margin-top: 6%; }
.main_index .sec03 .slide_controll .swiper-pagination-num {
    display: block;
    width: inherit;
    margin-right: 25px;
    color: #B9B9B9;
}
.main_index .sec03 .slide_controll .swiper-pagination-current { color: #676767; }
.main_index .sec03 .swiper-pagination-progressbar.swiper-pagination-horizontal {
    display: block;
    position: relative;
    background-color: #E1E1E1;
}
.main_index .sec03 .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { background-color: #676767; }

/* .se04 (발표/마감 공고) */
.main_index .sec04 {
    padding: 6% 0;
    background-color: #F8F8F8;
}
.main_index .sec04 h2 { margin-bottom: 24px; }
.main_index .sec04 h2::before { background-position: right center; }
.main_index .sec04 ul { flex-direction: column; }
.main_index .sec03 ul li:hover {
    border-color: var(--color01);
    box-shadow: 7px 8px 13px 0 rgba(0, 0, 0, 0.13);
}
.main_index .sec04 ul li a {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 30px;
    padding: 33px;
    border-bottom: 1px solid #DFDFDF;
}
.main_index .sec04 .txt_left {
    overflow-x: hidden;
    flex: 1 1 auto; 
    max-width: calc(100% - 265px);
}
.main_index .sec04 .txt_left .tit {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.main_index .sec04 .txt_left .basic_info { margin: 12px 0 15.5px; }
.main_index .sec04 .txt_right { text-align: center; }
.main_index .sec04 .txt_right .status {
    width: 100%;
    min-width: 265px;
    margin-bottom: 9px;
    padding: 9px 20px;
    color: var(--color02);
    font-size: 1.25rem;
    font-weight: bold;
    text-align: center;
    border: 1px solid var(--color02);
}
/* 마감 스타일 */
.main_index .sec04 ul li.finish { color: #B1B1B1; }
.main_index .sec04 ul li.finish .txt_right .status {
    color: var(--color03);
    border-color: var(--color03);
}
.main_index .sec04 ul li.finish .txt_right .date { color: #D1D1D1; }
.main_index .sec04 .pagination { 
    display: flex;
    justify-content: end;
    gap: 4px;
    margin-top: 42px;
 }
.main_index .sec04 .pagination button {
    width: 30px;
    height: 30px;
    background: url(../images/user_btn.svg) no-repeat left center/cover;
}
.main_index .sec04 .pagination .right { background-position: right center; }

/* 메인 모달(팝업) */
.main_modal {
    position: fixed;
    left: 50px;
    top: 200px;
    width: 500px;
    background-color: #fff;
    box-shadow: 3px 5px 5px rgba(0, 0, 0, 0.15);
    z-index: 10000;
}
.main_modal .comp_notice_modal  { box-shadow: 3px 5px 5px rgba(0, 0, 0, 0.15); }
.main_modal .contents { 
    overflow-y: auto;
    max-height: 70vh;
    line-height: 1.5;
}
.main_modal .modal_bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 15px;
    color: #fff;
    background-color: #333;
}
.main_modal .modal_bottom label { margin-left: 5px; }
.main_modal .modal_bottom button { width: 15px; }
.main_modal .se-contents>p{ margin : 0 !important; }

/* 메인 _ 풀화면 비주얼 ------------------------------------------------------------------------------------------------------------------------------------------------ */
:root {
    --swiper-navigation-size: 60px;
}
.full_page .main_index .sec01 {
    position: relative;
    height: 100vh;
    min-height: max-content;
}
.full_page .main_index .sec01 .fix_cont {
    padding: 110px 0;
    height: 100%;
}
.full_page .main_index .sec01 .search_form {
    position: relative;
    width: 340px; 
    margin: 20px 0 0 auto;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 10;
}
.full_page .main_index .search_form input,
.full_page .main_index .search_form input::placeholder { color: #fff; }
.full_page .main_index .search_form input:-webkit-autofill { -webkit-text-fill-color: #fff; -webkit-box-shadow: 0 0 0 30px #0b1723 inset !important; }
.full_page .main_index .search_form button { filter: brightness(0) invert(1); }
.full_page .main_index .sec01 .sec03_btn {
    position: absolute;
    left: 50%;
    top: calc(350px + 10%);
    width: fit-content;
    padding: 20px 64px 20px 36px;
    color: #FFF;
    line-height: 1;
    background: url(../images/next_ico.svg) no-repeat right 36px center/14px;
    border: 1px solid #FFF;
    border-radius: 50px;
    transform: translateX(-50%);
    z-index: 1000;
    filter: brightness(0) invert(1);
}
.full_page .main_index .sec01 .apply_num {
    display: flex;
    justify-content: center;
    gap: 30px;
    position: absolute;
    left: 50%;
    top: calc(560px + 3%);
    transform: translate(-50%);
    z-index: 1000;
}
.full_page .main_index .sec01 .apply_num>div {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 18px;
    position: relative;
    width: 208px;
    height: 208px;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.5);
}
.full_page .main_index .sec01 .apply_num a {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 20px;
    height: 20px;
    background: url(../images/plus.svg) no-repeat center center/20px;
}
.full_page .main_index .sec01 .pagination { 
    position: absolute;
    left: 50%;
    top: calc(350px + 8%);
    transform: translateX(-50%);
}
.full_page .main_index .sec01 .swiper { 
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.full_page .main_index .sec01 .swiper .txt {
    top: calc(180px + 8%);
    color: #fff;
    text-align: center;
}
.full_page .main_index .sec01 .swiper img {
    position: absolute;
    top: 0;
    height: 100%;
}
.full_page .main_index .sec01 .swiper-button-next,.full_page .main_index .sec01 .swiper-button-prev {
    display: block;
    position: inherit;
    width: 43px;
    height: 84px;
    margin-top: 0;
    color: transparent;
    background: url(../images/fullPage_next.svg) no-repeat right center/cover;
}
.full_page .main_index .sec01 .swiper-button-prev { background: url(../images/fullPage_prev.svg) no-repeat left center/cover; }
.full_page .main_index .sec03 { padding-top: 130px; }

/* sub_공고 상세 페이지 ------------------------------------------------------------------------------------------------------------------------------------------------ */
.recruit_default {
    position: relative;
    padding: 50px 0 86px;
    min-height: calc(100vh - 293.84px);
}
.recruit_default .top {
    padding-bottom: 16px;
    border-bottom: 1px solid var(--color03);
}
.recruit_default .top>div:not(.tag) {
    display: flex;
    align-items: center;
    gap: 28px;
}
.recruit_default .top .tit { margin-top: 40px; }
.recruit_default .top .tit h2 {
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    line-height: 1.35;
    max-width: calc(100% - 140px);
    word-break: break-all;
}
.recruit_default .top .status {
    display: inline-block;
    padding: 11.5px 58.5px;
    color: var(--color01);
    font-weight: bold;
    border: 1px solid var(--color01);
}
.recruit_default .top .status.result { color: var(--color02); border: 1px solid var(--color02); }
.recruit_default .top .status.finish { color: var(--color03); border: 1px solid var(--color03); }
.recruit_default .top .tit a {
    display: inline-block;
    padding: 8px 33px 8px 14px;
    color: var(--color02);
    font-weight: bold;
    background: url(../images/recruit_submit_g.svg) no-repeat right 13px center/13px 16px;
    border: 1px solid var(--color02);
}
.recruit_default .top .tit a.apply {
    min-width: fit-content;
    color: #fff;
    background-color: var(--color01);
    background-image: url(../images/recruit_submit_w.svg);
    border-color: var(--color01);
}
.recruit_default .top .date {
    margin: 20px 0 33px;
    color: #898989;
}
.recruit_default .contents { margin: 67px 0 120px; }
.recruit_default .contents>div:not(:last-child) { margin-bottom: 50px; }
.recruit_default .contents .img_cont {
    max-width: 1000px;
    margin: 0 auto 60px !important;
}
.recruit_default .contents .tit {
    margin-bottom: 40px;  
    font-weight: bold;
}
.recruit_default .contents table { width: 100%; }
.recruit_default .contents table tr { align-items: stretch; }
.recruit_default .contents tr:not(:first-child) { border-top: 0; }
.recruit_default .contents th {
    flex-basis: 117px;
    padding: 13px 28px;
    background-color: #F8F8F8;
}
.recruit_default .contents th:nth-of-type(2n) { border-left: 1px solid #d1d1d1; }
.recruit_default .contents td {
    flex: 1 1 calc(50% - 117px);
    padding: 8px 13px;
    line-height: 1.35;
    border-right: 0;
}
.recruit_default .contents button {
    margin: 0 10px 10px 0;
    line-height: 1.35;
}
.recruit_default .contents #dev_attend_state {
    display: block;
    margin-top: 10px;
    color: #FF0000;
}

.recruit_default .submit_btn {
    display: block;
    margin: 120px auto 0;
}
.recruit_default .submit_btn .cm_btn01 {
    display: inline-block;
    padding: 15px 93px 15px 70px;
    font-weight: bold;
    background: var(--color01) url(../images/recruit_submit_w.svg) no-repeat right 69px center/17px 18px;
}
.recruit_default .top_btn {
    position: absolute;
    right: 9.5%;
    bottom: 3%;
    width: 34px;
}
.recruit_default .top_btn.fixed {
    position: fixed;
    bottom: 5%;
}

/* 게시판 스타일 ---------------------------------------------------------------------------------------------------------------- */
.cm_list>.container {
    display: flex;
    flex-direction: column;
    gap: 44px;
    padding: 56px 0;
    min-height: calc(100vh - 290px);
}
.cm_list>.container>.tit {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
}
.cm_list>.container>.tit h2 { font-weight: 800; }
.cm_list>.container>.tit .num { color: var(--color03); }
.cm_list>.container>.tit .search {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-left: auto;
}
.cm_list>.container>.tit .search .select {
    position: relative;
    min-width: 116.5px;
    color: var(--color03);
}
.cm_list>.container>.tit .search .select p {
    padding: 11px 36px 11px 16px;
    line-height: 1;
    background: url(../images/down_arrow.svg) no-repeat right 16px center/10px;
    border: 1px solid #B1B1B1;
    border-radius: 5px;
    cursor: pointer;
}
.cm_list>.container>.tit .search .select p.active { background-image: url(../images/up_arrow.svg); }
.cm_list>.container>.tit .search .select ul {
    position: absolute;
    left: 0;
    top: calc(100% - 3px);
    width: 100%;
    background-color: #fff;
    border: 1px solid #B1B1B1;
    border-top-width: 0;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}
.cm_list>.container>.tit .search .select ul li {
    padding: 11px 16px;
    cursor: pointer;
}
.cm_list>.container>.tit .search .select ul li:last-of-type { border-radius: 0 0 5px 5px; }
.cm_list>.container>.tit .search .select ul li:hover { background-color: #f3f3f3; }
.cm_list>.container>.tit .search .search_form {
    padding: 0 20px;
    border: 1px solid #B1B1B1;
    border-radius: 5px;
}
.cm_list>.container>.tit .search .search_form input {
    padding: 10px 0;
    border: 0;
}
.cm_list>.container>.tit .search .search_form button { width: 17px; }

.cm_list table { width: 100%; }
.cm_list table thead tr,
.cm_list table td .status.finish  {
    color: var(--color03);
    border-color: var(--color03);
}
.cm_list table th {
    padding: 17px 25px;
    border-right-width: 0;
}
.cm_list table tbody tr { border-color: #D1D1D1; cursor: pointer; }
.cm_list table td {
    padding: 21.5px 25px;
    border-right-width: 0;
}
.cm_list table th:first-child,
.cm_list table td:first-child { width: 140px; }
.cm_list table th:last-child,
.cm_list table td:last-child { width: 230px; }
.cm_list table td .status {
    display: inline-block;
    width: 100%;
    max-width: 180px;
    padding: 11.5px 32px;
    color: var(--color01);
    font-weight: bold;
    border: 1px solid var(--color01);
}
.cm_list table td .status.result {
    color: var(--color02);
    border-color: var(--color02);
}
.cm_list table td:not(.tit) { text-align: center; }
.cm_list table td.tit {
    display: grid;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.cm_list table td.tit .tag_cont { overflow: auto; }
.cm_list table td.tit .tag_cont::-webkit-scrollbar { height: 6px; }
.cm_list table td.tit .tag_cont::-webkit-scrollbar-thumb {
    background-color: #e0e0e0;
    background-clip: padding-box;
    border-right: 4px solid transparent;
}
.cm_list table td.tit span { font-size: 0.94rem; }
.cm_list table td.tit strong {
    overflow: hidden;
    display: block;
    margin-top: 13px;
    font-size: 1.125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.cm_list>.container .paging {
    display: flex;
    align-items: center;
    margin-top: auto;
    font-size: 18px;
}
.cm_list>.container .paging span { color: #B9B9B9; }
.cm_list>.container .paging .btn_cont,
.cm_list>.container .paging .btn_cont div {
    display: flex;
    align-items: center;
    gap: 21px;
    margin: 0 auto;
}
.cm_list>.container .paging .btn_cont>button { width: 11px; }
.cm_list>.container .paging .btn_cont div { gap: 6px; }
.cm_list>.container .paging .btn_cont div button {
    width: 30px;
    height: 30px;
    background: url(../images/user_btn.svg) no-repeat left center/cover;
}
.cm_list>.container .paging .btn_cont .right { background-position: right center; }

/* 지원확인 / 합격자 발표 ---------------------------------------------------------------------------------------------------------------- */
.confirm_style .contents .cont_tit,
.confirm_style .btn_cont {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.confirm_style .contents .cont_tit {
    gap: 28px;
    margin-bottom: 30px;
    line-height: 1.35;
    word-break: break-all;
}
.confirm_style .contents .cont_tit button {
    min-width: fit-content;
    padding: 8px 25px;
    color: var(--color03);
    background-color: #F1F1F1;
    border: 1px solid #D1D1D1;
}
.confirm_style table tbody tr { text-align: left; padding: 0; cursor: default; }
.confirm_style table th,
.confirm_style.cm_list table td {
    padding: 12px 0;
    color: var(--color03);
    text-align: left; 
    font-weight: normal;
}
.confirm_style table td input {
    width: 60%;
    padding: 12px 16px;
    color: var(--color03);
    border: 1px solid #D1D1D1;
}

.confirm_style .btn_cont button {
    padding: 15px 40px;
    font-weight: bold;
    border-radius: 5px;
}
.confirm_style .btn_cont .back_list {
    padding-left: 66px;
    color: #6A6A6A;
    background: url(../images/prev_ico.svg) no-repeat left 40px center/16px;
    border: 1px solid #D1D1D1;
}
.confirm_style .btn_cont .cm_btn01 {
    padding-right: 66px;
    background: var(--color01) url(../images/user_confirm.svg) no-repeat right 40px center/19px;
}

.confirm_style .password_modal .cm_modal { min-width: 550px; }
.confirm_style .password_modal table th,
.confirm_style .password_modal table td {
    padding: 12px 30px;
}
.confirm_style .password_modal td input { width: 100%; padding: 8px 16px; }

/* 합격자 발표 */
.result_content .top { padding-bottom: 40px; }
.result_content .info .ment {
    margin-bottom: 24px; 
    padding: 59px 130px 78px; 
    color: #fff; 
    background: url(../images/reusltContent_ment_bg.png) no-repeat right 30% center/cover;
}
.result_content .info .ment .f18 { font-family: "Montserrat"; }
.result_content .info .ment .f40 { margin-top: 22px; }
.result_content .info .user_info table { flex-basis: 50%; }
.result_content .info .user_info tr { display: table-row; }
.result_content .info .user_info th { width: 150px; border-left: 1px solid #D1D1D1; }
.result_content .info .user_info th:first-child { border-left: 0; }
.result_content .info .user_info td { font-weight: bold; }
.result_content .info .user_info li:nth-of-type(2) { margin: 15px 0 25px; }
.result_content .info .user_info li strong {
    display: inline-block;
    width: 128px;
    margin-right: 20px;
    border-right: 2px solid #333;
}
.result_content .info .user_info li button {
    padding: 4px 12px;
    color: var(--color01);
    border: 1px solid var(--color01);
}
.result_content .info .user_info li.highlight {
    color: #FF0000;
    font-weight: bold;
    line-height: 1.5;
}
.result_content .info .user_info li.highlight span { 
    display: block; 
    margin-left: 20px;
}

/* 추가정보 입력 */
.result_add_info form {
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding: 30px 0;
}
.result_add_info h2 { font-weight: 800; }
.result_add_info section>p {
    margin-bottom: 10px;;
    color: #FF0000;
}
.result_add_info section>p:last-of-type {
    margin: 24px 0 0;
    text-align: center;
    line-height: 1.65;
}
.result_add_info thead tr th {
    padding: 17px 12px;
    color: var(--color03);
    text-align: left;
    border: 0;
    border-top: 1px solid var(--color03);
    border-bottom: 1px solid var(--color03);
}
.result_add_info thead tr th:first-of-type { text-align: center; }
.result_add_info td {
    padding: 12px;
    line-height: 1.5;
    border: 0;
}
.result_add_info tbody td:not(:last-of-type) { min-width: 144px !important; }
.result_add_info input {
    width: 100%;
    padding: 10px;
    border: 1px solid #D1D1D1;
}
.result_add_info .photo {
    display: flex;
    align-items: end;
    gap: 20px;
}
.result_add_info .img_cont {
    width: 150px; height: 200px;
    border: 1px solid #D1D1D1;
}
.result_add_info .photo_btn {background-color: #042F45; border-radius: 5px; }
.result_add_info .photo p {
    margin-top: 15px;
    color: var(--color03);
}
.result_add_info .file_btn:first-of-type { margin-left: 0; }
.result_add_info .versatile td input { margin-top: 10px; }
.result_add_info .versatile td .select_wrap {
    width: 100%;
    margin-top: 10px;
}
.result_add_info td.deadline {
    color: #FF0000;
    text-align: center;
    font-size: 14px;
}
.result_add_info .btn_cont {
    display: flex;
    gap: 10px;
    margin-bottom: 8px;
}
.result_add_info .file_btn {
    margin-left: 10px;
    padding: 7px 32px 7px 20px;
    color: #fff;
    font-size: 14px;
    border-radius: 5px;
}
.result_add_info .btn_file_upload { background: var(--color02) url(../images/find_file_w.png) no-repeat right 18px center/10px; }
.result_add_info .btn_upload_view { background: var(--color03) url(../images/search2.png) no-repeat right 18px center/10px; }
.result_add_info .btn_upload_delete {
    color: #FF0000;
    background: url(../images/find_file_r.png) no-repeat right 18px center/10px; 
    border: 1px solid #FF0000;
}
.result_add_info .save_btn {
    margin: 0 auto;
    padding: 12px 55px 12px 30px;
    font-weight: bold;
    background: var(--color01) url(../images/user_confirm.svg) no-repeat right 30px center/19px;
    border-radius: 5px;
}
.result_add_info .file_btn {
    margin-left: 10px;
    padding: 7px 32px 7px 20px;
    color: #fff;
    font-size: 14px;
    line-height: 1;
    border-radius: 5px;
}
.result_add_info .file_btn:first-of-type { margin-left: 0; }
.result_add_info .btn_file_upload { background: var(--color02) url(../images/find_file_w.svg) no-repeat right 18px center/10px; }
.result_add_info .btn_upload_view { background: var(--color03) url(../images/search2_w.svg) no-repeat right 18px center/10px; }
.result_add_info .btn_upload_delete {
    color: #FF0000;
    background: url(../images/find_file_r.svg) no-repeat right 18px center/10px; 
    border: 1px solid #FF0000;
}

/* 설문조사 ---------------------------------------------------------------------------------------------------------------- */
.result_survey .contents { margin-bottom: 45px; }
.result_survey .contents p { margin-bottom: 20px; }
.result_survey .contents th {
    padding: 15px;
    line-height: 1.5;
    border-right: 1px solid var(--color03);
}
.result_survey .contents tbody td {
    padding: 12px;
    line-height: 1.5;
    border-right-width: 1px;
}
.result_survey .contents tbody td:first-of-type { text-align: left; }
.result_survey .contents th:last-of-type,
.result_survey .contents tbody td:last-of-type { border-right-width: 0; }
.result_survey .contents tbody td ul {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.result_survey .contents tbody td ul li {
    display: flex;
    align-items: center;
    gap: 10px;
    line-height: 1;
}
.result_survey .cm_btn01 {
    display: block;
    margin: 0 auto;
    padding: 15px 100px 15px 70px;
    background: var(--color01) url(../images/recruit_submit_W.png) no-repeat right 70px center/20px;
}

/* faq ---------------------------------------------------------------------------------------------------------------- */
.faq .contents ul li {
    padding: 22px 30px 0;
    color: var(--color03);
    border-top: 1px solid var(--color03);
}
.faq .contents ul li:last-child { border-bottom: 1px solid var(--color03); }
.faq .contents ul li .question {
    overflow: hidden;
    position: relative;
    padding: 0 30px 22px 0;
    font-weight: bold;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
}
.faq .contents ul li .question::after {
    content: "";
    position: absolute;
    right: 0;
    top: 5px;
    width: 15px;
    height: 9px;
    background: url(../images/down_arrow.svg) no-repeat center center/cover;
    transition: 0.5s;
}
.faq .contents ul li.active { border-top-width: 3px; }
.faq .contents ul li.active .question::after { transform: rotate(180deg); }
.faq .contents ul li .answer {
    display: none;
    margin-bottom: 22px;
    padding: 20px 28px;
    background-color: #F8F8F8;
}

/* notice_view ---------------------------------------------------------------------------------------------------------------- */
.notice_view .contents .tit {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 22px 0;
    border-top: 3px solid var(--color03);
    border-bottom: 1px solid #B1B1B1;
}
.notice_view .contents .tit strong {
    display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}
.notice_view .contents .txt {
    padding: 32px 40px;
    min-height: calc(100vh - 643.84px);
    font-size: 1.125rem;
    line-height: 1.7;
    border-bottom: 1px solid #B1B1B1;
}
.notice_view .contents .txt p:not(:last-child) { margin-bottom: 20px; }
.notice_view .paging {
    display: flex;
    justify-content: space-between;
}
.notice_view .paging .prev,
.notice_view .paging .next {
    display: flex;
    align-items: center;
    gap: 12px;
    font-weight: bold;
}
.notice_view .paging .img_cont { width: 16px; }
.notice_view .paging .list {
    padding: 13px 38px 13px 64px;
    background: url(../images/list_ico.svg) no-repeat left 38px center/18px;
    border: 1px solid #CDC9C9;
}

/* 1:1 문의 / 지원서 작성 공통 ---------------------------------------------------------------------------------------------------------------- */
.qna_write .privacy, 
.pre_confirm .privacy { 
    padding-bottom: 20px;
    border-bottom: 1px solid var(--color03);
}
.qna_write .privacy .txt,
.pre_confirm .privacy .txt {
    overflow-y: auto;
    max-height: 294px;
    margin: 20px 0;
    padding: 20px 32px;
    font-size: 0.94rem;
    line-height: 1.7;
    background-color: #F3F3F3;
    border: 1px solid #D1D1D1;
}
.qna_write .privacy input,
.pre_confirm .privacy input { margin-right: 12px; }
.pre_confirm table input,
.qna_write .contents input,
.qna_write .contents textarea {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid #D1D1D1;
}
.qna_write .contents table,
.pre_confirm table { color: var(--color03); }
.qna_write .contents .select,
.pre_confirm .select {
    position: relative;
    max-width: 713px;
    min-width: 135px;
    color: var(--color03);
}
.qna_write .contents .select p,
.pre_confirm .select p {
    padding: 13px 36px 13px 16px;
    background: url(../images/down_arrow.svg) no-repeat right 16px center/10px;
    border: 1px solid #D1D1D1;
    cursor: pointer;
}
.qna_write .contents .select p.active,
.pre_confirm .select p.active { background-image: url(../images/up_arrow.svg); }
.qna_write .contents .select ul,
.pre_confirm .select ul {
    position: absolute;
    left: 0;
    top: calc(100% - 3px);
    width: 100%;
    background-color: #fff;
    border: 1px solid #D1D1D1;
    border-top-width: 0;
    z-index: 100;
}
.qna_write .contents .select ul li,
.pre_confirm .select ul li {
    padding: 11px 16px;
    cursor: pointer;
}
.qna_write .contents .email td>div,
.pre_confirm .email td>div {
    display: flex;
    align-items: center;
    gap: 8px;
}
.qna_write .contents th,
.pre_confirm th {
    width: 106px;
    padding: 12px 0;
    text-align: left;
    font-weight: normal;
    border: 0;
}
.qna_write .contents td,
.pre_confirm .contents td {
    padding: 12px 0;
    border: 0;
}

/* 1:1 문의 ---------------------------------------------------------------------------------------------------------------- */
.qna_write>.container { padding: 72px 0 84px; }
.qna_write h2 {
    padding: 56px 45px 20px;
    background: url(../images/user_user.svg) no-repeat left bottom 20px/25px;
}
.qna_write h2 span { letter-spacing: -3px; }
.qna_write .privacy .f24 { font-weight: bold; }
.qna_write .privacy .txt p:not(:last-child) { margin-bottom: 20px; }
.qna_write .contents {
    display: flex;
    flex-direction: column;
}
.qna_write .contents input { max-width: 270px; }
.qna_write .contents .phone input {
	width: 30%;
  	max-width: 120px;
  	text-align: center; 
}
.qna_write .contents tr { 
    display: table;
    width: 100%;
    border-top-width: 0;
}
.qna_write .contents tr:first-child {
    display: grid;
    grid-template-columns: 106px 300px 106px 270px;
    align-items: center;
    border-top-width: 1px;
}
.qna_write .contents tr:first-child td:first-of-type { margin-right: 30px; }
.qna_write .contents .tit input { max-width: 713px; }
.qna_write .contents .file button {
    padding: 10px 62px 10px 42px;
    color: var(--color01);
    font-weight: bold;
    line-height: 1;
    background: url(../images/find_file.svg) no-repeat right 42px center/15px;
    border: 1px solid var(--color01);
    border-radius: 5px;
}
.qna_write .contents .file p {
    margin-top: 12px;
    color: #B1B1B1;
    font-size: 0.815rem;
}

.qna_write .contents .enroll_btn {
    margin: 20px 0 0 auto;
    padding: 15px 63px 15px 40px;
    color: #fff;
    font-weight: bold;
    border-radius: 5px;
    background: var(--color02) url(../images/enroll_ico.svg) no-repeat right 40px center/16px;
}

/* 지원서 작성 */
.pre_confirm .container { gap: 0; }
.pre_confirm .privacy { padding-bottom: 30px; }
.pre_confirm .privacy .txt { margin-top: 30px; color: #686868; }
.pre_confirm .apply_form { margin-top: 57px; }
.pre_confirm .apply_form tr {
    display: grid;
    grid-template-columns: repeat(2, 140px calc(50% - 140px));
    align-items: center;
    border-top-width: 0;
    cursor: default;
}
.pre_confirm .apply_form tr:first-child { border-top-width: 1px; }
.pre_confirm .apply_form tr td { 
    width: 100%; 
    text-align: left;
} 
.pre_confirm .apply_form tr:first-child td { grid-column: 2 / 5; max-width: 100%; }
.pre_confirm .apply_form th { width: fit-content; }
.pre_confirm .select_wrap { min-width: fit-content; }
.pre_confirm .enroll_btn {
    display: block;
    width: fit-content;
    margin: 30px auto 0;
    padding: 15px 93px 15px 70px;
    color: #fff;
    font-weight: bold;
    background: var(--color01) url(../images/recruit_submit_w.svg) no-repeat right 69px center/17px 18px;
}

/* 지원서 작성 페이지 ----------------------------------------------------------------------------------------------------------------------------------  */
.resume_write span.fixed_icon { color: #FF0000; font-weight: 100; }
.resume_write .container { gap: 56px; }
.resume_write .container .main_tit {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
}
.resume_write .container .main_tit h2 {
    min-width: fit-content;
    padding-left: 44px;
    background: url(../images/enroll_ico_b.svg) no-repeat left center/28px;
}
.resume_write .container .main_tit .txt { text-align: right; }
.resume_write .container .main_tit .f24 {
    margin-top: 12px;
    font-weight: bold;
    line-height: 1.35;
    word-break: break-all;
}
.resume_write .container section {
    padding-top: 35px;
    border-top: 3px solid #333;
}
.resume_write .container section:first-of-type { margin-top: 0; }
.resume_write .container .tit { 
    display: flex;
    align-items: center;
    gap: 34px;
    margin-bottom: 20px;
    font-weight: bold;
}
.resume_write .container .tit .f24 { font-weight: bolder; }
.resume_write .container .tit .view_btn {
    display: none;
    padding: 8px 10px;
    color: #A4A4A4;
    border: 1px solid #E3E3E3;
    border-radius: 5px;
}
.resume_write .container .view {
    overflow-y: auto;
    max-height: 294px;
    margin: 24px 0;
    padding: 20px 24px;
    color: var(--color03);
    font-size: 0.94rem;
    line-height: 1.5;
    word-break: break-all;
    white-space: break-spaces;
    background-color: #F5F5F5;
    border: 1px solid #D1D1D1;
    border-radius: 5px;
}
.resume_write .container table input,
.resume_write .container table textarea {
    width: 100%;
    padding: 10px 5px;
    border: 1px solid #D1D1D1; 
    resize : vertical;
}
.resume_write .container table th {
    padding: 8px 10px 8px 0;
    color: var(--color03);
    line-height: 1.5;
    text-align: left;
}
.resume_write .container table tr { border: 0; cursor: default; }
.resume_write .container .field tr,
.resume_write .container .ncs table tr {
    border-top: 1px solid #D1D1D1;
    border-bottom: 1px solid #D1D1D1;
 }
 .resume_write .container table td {
    position: relative;
    width: auto;
    padding: 8px 0;
    text-align: left;
}
.resume_write .container table .select_wrap {
    width: auto;
    max-width: 200px;
    min-width: 125px;
    border-radius: 5px;
    background-position: right 10px center;
    background-size: 8px auto;
}
.resume_write .container table select { padding: 11px 22px 11px 10px; }
.resume_write .container table .select_wrap select,
.resume_write .container button:not(.f24) { font-size: 0.8375rem; line-height: 1; }
.resume_write .container table td .select_wrap:not(:only-child) { display: inline-block; }
.resume_write .container table td input:not(:only-of-type, [type="radio"]) { width: calc(100% - 130px); padding: 10px 20px 10px 5px; }
.resume_write .container td button.close {
    position: absolute;
    right: 5px;
    top: 50%;
    width: 9px;
    transform: translateY(-50%);
}

/* 클래스명 공통 */
.resume_write .container .w50 { width: 50px !important; min-width: auto !important; }
.resume_write .container .w65 { width: 65px !important; min-width: auto !important; }
.resume_write .container .w90 { width: 65px !important; min-width: auto !important; }
.resume_write .container .w110 { width: 110px !important; min-width: auto !important; }
.resume_write .container .add_btn {
    width: max-content;
    min-width: 68px;
    margin-left: auto;
    padding: 7.5px 15px;
    color: var(--color01);
    background-color: #D7E7FF ;
}
.resume_write .container .delete_btn {
    min-width: 68px;
    margin-left: 10px;
    padding: 7.5px 15px;
    color: #E72255;
    background-color: #FFE0E8;
}
.resume_write .container .flex_cont {
    display: flex;
    align-items: center;
    gap: 12px;
}
.resume_write .container .flex_cont input:not([type="checkbox"], [type="radio"]) { flex: 1 1 auto; }
.resume_write .container input.dev_singlepicker { max-width: 93px; padding-right: 5px !important; }
.resume_write .container .resume_cm_style tr th {
    width: 90px;
    padding: 24px 10px;
    padding: 12px 10px;
    text-align: center;
}
.resume_write .container .resume_cm_style tr th:first-of-type { padding-left: 0; text-align: left; }
.resume_write .container .user_write p {
    display: inline-block;
    color: #BCB7B7;
    font-weight: normal;
    font-size: 0.9375rem;
}

/* 기본사항 */
.resume_write .container .field th { width: 110px; font-size: 1.25rem; }
.resume_write .container .field .cm_btn01 {
    margin-left: 12px;
    padding: 7.5px 15px;
    color: var(--color01);
    background-color: #D7E7FF;
}

/* 기본인적사항 */
.resume_write .personal>.flex_cont {
    align-items: flex-start;
    gap: 44px;
}
.resume_write .container .personal table th { padding: 10px 10px 10px 0; }
.resume_write .container .personal table td { padding: 10px 10px; }
.resume_write .personal button:not(.view_btn, .close) {
    padding: 12px 16px;
    font-size: 0.9375rem;
    color: #fff;
    background-color: #042F45;
    border-radius: 5px;
}
.resume_write .personal .photo {
    flex: 1 1 auto;
    padding: 24px 30px;
    text-align: center;
    background-color: #F2F2F2;
}
.resume_write .personal .photo .img_cont {
    display: flex;
    width: 210px;
    height: 280px;
    margin: 0 auto;
    border: 1px solid #D1D1D1;
}
.resume_write .personal .photo button {
    margin: 24px 0;
    padding: 10px 12px 10px 37px;
    background: #042F45 url(../images/user_photo.svg) no-repeat left 12px center/15px;
}
.resume_write .personal .photo p {
    color: var(--color03);
    line-height: 1.5;
}
.resume_write .personal input:not(.name, .address, .email) { max-width: 150px; }
.resume_write .personal input[type="checkbox"] { width: 20px; background-color: #fff; }
.resume_write .personal label { width: max-content; }
.resume_write .personal input.name { max-width: 200px; }
.resume_write .personal input[type="radio"] {
    width: auto;
    margin: 0 15px 0 5px;
    transform: translateY(1.5px);
}
.resume_write .container td .address_search>div { position: relative; }
.resume_write .container td .address_search>div button.close { transform: translateY(calc(-50% - 6px)) }
.resume_write .personal .address_search input { width: auto !important; max-width: 150px; margin-bottom: 12px; }
.resume_write .personal .address_cont { gap: 12px; }
.resume_write .personal .address_search button[class*="search"] {
    margin-bottom: 12px;
    padding-left: 42px;
    background: #042F45 url(../images/search2_w.svg) no-repeat left 16px center/17px;
}
.resume_write .personal input.email { width: 50%; min-width: 250px; }

/* miltiary */
.resume_write .container .military table .select_wrap { min-width: 100px; }

/* career */
.resume_write .container .career table input[type="text"] { min-width: 75px; }
.resume_write .container .career table input[type="text"].team { min-width: 120px; }
.resume_write .container .career table .select_wrap { min-width: 90px; }
.resume_write .container .career table .user_write { padding-left: 32px; }
.resume_write .container .career table .user_write textarea { height: 80px; margin-top: 9px; }

/* education 학력사항 */
.resume_write .container .education table,
.resume_write .container .education tbody { display: block; width: 100%; }
.resume_write .container .education tbody:not(:first-of-type) {
    padding: 30px 0;
    border-top: 1px solid #D1D1D1;
}
.resume_write .container .education tbody:first-of-type { padding-bottom: 30px; }
.resume_write .container .education tbody:last-of-type { padding-bottom: 0; }
.resume_write .container .education tbody tr {
    display: grid;
    grid-template-columns: repeat(4, 75px auto) 90px;
    align-items: center;
}
.resume_write .container .education table .select_wrap:not(.edu) { min-width: 85px; }
.resume_write .container .education td input { min-width: 80px; }
.resume_write .container .education td .score input { min-width: 35px; }
.resume_write .container .education tbody td.edu_delete {
    grid-row: 1 / 2;
    grid-column: 9 / 10;
    text-align: right; 
}
.resume_write .container .education tbody tr.tr_education_thesis td { grid-column: 2 / 10; }

/* ncs */
.resume_write .container .ncs .ti_1:not(:last-of-type) tr { border-bottom: 0; }
.resume_write .container .ncs .ti_1:last-of-type tbody tr { border-top: 0; }
.resume_write .container .ncs tr:first-of-type { font-size: 1.0625rem; }
.resume_write .container .dev_ncs_table+table td:last-child { text-align: right; }
.resume_write .container .ncs table:not(:first-of-type) th { width: 80px; }
.resume_write .container .ncs table label { 
    display: inline-block;
    margin-right: 12px;
}
.resume_write .container .ncs table input[type="radio"] { width: auto; vertical-align: middle; }
.resume_write .container .ncs table .add_btn { margin-left: 10px; }

/* 다용도 */
.resume_write .container .div_resume_wideuse th { width: 100%; }
.resume_write .container .div_resume_wideuse tr {
    display: grid;
    grid-template-columns: 1fr;
}
.resume_write .container .div_resume_wideuse tr .select_wrap { max-width: max-content; }

/* 자기소개서 */
.resume_write .container .cover_letter th {
    padding: 28px 24px;
    text-align: left;
    word-break: break-all;
    background-color: #F5F5F5;
    border: 1px solid #D1D1D1;
    border-bottom: 0;
}
.resume_write .container .cover_letter table p { margin-left: 24px; }
.resume_write .container .cover_letter td { padding: 0; border-left: 1px solid #D1D1D1; }
.resume_write .container .cover_letter textarea {
    width: calc(100% + 0.5px);
    padding: 10px 20px;
    border-left: 0;
}

/* 파일 */
.resume_write .file table td div {
    display: flex;
    justify-content: end;
    align-items: center;
}
.resume_write .file table td div input:read-only {
    flex: 1;
    width: auto;
    margin-right: auto;
    padding: 2px 0 0;
    background-color: #fff;
    border: 0;
}
.resume_write .file table td div input:read-only::placeholder { color: #333; font-size: 1rem; }
.resume_write .file table td .file_btn {
    margin-left: 20px;
    padding: 7px 32px 7px 20px;
    color: #fff;
    border-radius: 5px;
}
.resume_write .file table td .file_btn:not(:first-of-type) { margin-left: 10px; }
.resume_write .file table td .file_btn.upload {
    background: var(--color01) url(../images/find_file_w.svg) no-repeat right 18px center/10px;
}
.resume_write .file table td .file_btn.view_btn { background: var(--color03) url(../images/search2_w.svg) no-repeat right 18px center/10px; }
.resume_write .file table td .file_btn.delete {
    color: #FF0000;
    background: url(../images/find_file_r.svg) no-repeat right 18px center/10px; 
    border: 1px solid #FF0000;
}
.resume_write .file table td .delete_btn { margin-left: 24px; }

.resume_write .submit_btn {
    display: inline-block;
    width: fit-content;
    margin: 0 auto;
    padding: 15px 100px 15px 70px;
    line-height: 1;
    background: var(--color01) url(../images/recruit_submit_w.svg) no-repeat right 70px center/20px;
}

/* 모달 */
.resume_write .cm_modal_cont.search_modal .cm_modal { width: 650px; }
.resume_write .cm_modal_cont .info { margin-bottom: 10px; color: var(--color03); }
.resume_write .cm_modal_cont .highlight { color: #FF0000; }
.resume_write .cm_modal_cont .search_form {
    display: flex;
    margin-bottom: 10px;
    padding: 0 20px;
    border: 1px solid #B1B1B1;
    border-radius: 5px;
}
.resume_write .cm_modal_cont .search_form input {
    flex: 1 1 auto;
    padding: 11px 0;
    text-align: left;
    border: 0;
}
.resume_write .cm_modal_cont .search_form button { width: 17.5px; }
.resume_write .cm_modal_cont .flex_cont {
    display: flex;
    align-items: center;
    gap: 10px;
}
.resume_write .cm_modal_cont .flex_cont button { margin: 0 0 0 auto; }
.resume_write .cm_modal_cont .search_list_cont {
    overflow-y: auto;
    max-height: 30vh;
    margin-top: 20px;
    padding: 20px;
    background-color: #F2F2F2;
    border: 3px solid #F2F2F2;
}
.resume_write .cm_modal_cont .search_list_cont a,
.resume_write .cm_modal_cont .form_cont input {
    display: block;
    padding: 10px;
    background-color: #fff;
    border: 1px solid #D1D1D1;
}
.resume_write .cm_modal_cont .search_list_cont a:not(:last-child) { border-bottom: 0; }
.resume_write .cm_modal_cont .search_list_cont a:hover { background-color: #f1f7ff; }
.resume_write .cm_modal_cont .btn_cont {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 30px;
}
.resume_write .cm_modal_cont .btn_cont button {
    width: 30px;
    height: 30px;
    background: url(../images/user_btn.svg) no-repeat left center/cover;
}
.resume_write .cm_modal_cont .btn_cont .right { background-position: right center; }
.resume_write .cm_modal_cont .not_found {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.resume_write .cm_modal_cont .not_found .select_wrap { width: 100%; }
.resume_write .cm_modal_cont .not_found button { margin: 20px auto 0; }
.resume_write .cm_modal_cont .form_cont {
    display: grid;
    grid-template-columns: 100px auto;
    align-items: center;
}
.resume_write .cm_modal_cont ul.info { 
    position: relative;
    padding-left: 10px;
}
.resume_write .cm_modal_cont ul.info li::before {
    content: "·";
    position: absolute;
    left: 0;
    color: var(--color03);
}
.resume_write .cm_modal_cont .table_cont { margin-top: 20px; }
.resume_write .cm_modal_cont .table_cont tr { cursor: default; }
.resume_write .cm_modal_cont .table_cont th { padding: 10px 15px; }
.resume_write .cm_modal_cont .table_cont td {
    padding: 10px 15px;
    text-align: left;
}
.resume_write .cm_modal_cont .table_cont th:nth-child(2),
.resume_write .cm_modal_cont .table_cont td:nth-child(2) {
    border-right: 1px solid #D1D1D1;
    border-left: 1px solid #D1D1D1;
}
.resume_write .cm_modal_cont .table_cont td li {
    position: relative;
    padding-left: 15px;
}
.resume_write .cm_modal_cont .table_cont td li::before {
    content: "-";
    position: absolute;
    left: 0;
}
.resume_write .handicap_modal .cm_modal { min-width: 820px; }
.resume_write .field_modal .cm_modal { min-width: 500px; }
.resume_write .field_modal .highlight { margin-bottom: 20px; }

/* 지원서 view ---------------------------------------------------------------------------------------------------------------- */
.applicant_view .cm_main {
    margin: 0 auto;
    padding: 56px 0;
    border: 0;
}
.applicant_view .cm_main_tit { margin-left: 0; }
.applicant_view .cm_main>.alert-danger { float: left; } 
.applicant_view .cm_main>.text-center { margin-bottom: 50px; text-align: right; } 
.applicant_view .flex_cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    margin: 50px 0 10px;
    text-align: center;
}
.applicant_view .text-right { margin: 0 !important; }
.applicant_view [class*="btn_"] {
    padding: 15px 66px 15px 40px;
    font-weight: bold;
    background: url(../images/user_confirm_g.svg) no-repeat right 40px center/19px;
    border: 1px solid var(--color02);
    border-radius: 5px;
}
.applicant_view .btn_s1 { color: var(--color02); }
.applicant_view .btn_s2 {
    background-image: url(../images/download.svg);
    filter: invert(38%) sepia(38%) saturate(2381%) hue-rotate(194deg) brightness(86%) contrast(101%);
    border-color: var(--color03);
}
.applicant_view .alert-danger {
    flex: 1 1 100%;
    margin-bottom: 10px;
    line-height: 1.5 !important;
}
.applicant_view .btn-danger.btn-lg {
    padding: 15px 66px 15px 40px !important;
    color: #fff;
    font-size: 1.25rem !important;
    background: var(--color01) url(../images/recruit_submit_w.svg) no-repeat right 40px center/20px;
    border-radius: 5px;
}
.applicant_view .flex_cont+.alert-danger { text-align: center; }

/* 소개 및 채용안내 ---------------------------------------------------------------------------------------------------------------- */
.recruit_info {
    display: flex;
    flex-direction: column;
    gap: 200px;
    padding: 89px 0 189px;
}
.recruit_info section:not(.intro) .f40 {
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: -1.6px;
}
.recruit_info .tit .f20 {
    margin-top: 48px;
    line-height: 1.65;
}

.recruit_info .process .step { padding: 80px 86px 74px; }
.recruit_info .process .step ul {
    display: flex;
    justify-content: center;
    text-align: center;
    gap: 21px;
    position: relative;
}
.recruit_info .process .step ul::before {
    content: "";
    position: absolute;
    left: 0;
    top: calc(50% + 18px);
    width: 100%;
    height: 00px;
    border: 1px dashed var(--color01);
    z-index: -1;
}
.recruit_info .process .step .step_txt {
    color: var(--color01);
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
}
.recruit_info .process .step .f20 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 179px;
    height: 179px;
    margin-top: 24px;
    font-weight: bold;
    background-color: #fff;
    border: 1px solid var(--color01);
    border-radius: 50%;
}
.recruit_info .process .step ul li:last-child .f20 {
    color: #fff;
    background-color: var(--color01);
}
.recruit_info .process .step ul li:first-child::before,
.recruit_info .process .step ul li:last-child::before {
    content: "";
    position: absolute;
    left: -5px;
    top: calc(50% + 11.5px);
    width: 15px;
    height: 15px;
    background-color: var(--color01);
    border-radius: 50%;
}
.recruit_info .process .step ul li:last-child::before { left: inherit; right: -5px; }
.recruit_info .process .video {
    overflow: hidden;
    position: relative;
    width: 90%;
    max-width: 1000px;
    margin-bottom: 40px;
    padding: 15% 0;
}
.recruit_info .process .video iframe {
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    height: 100%;
    max-height: 576px;
    transform: translateY(-50%);
}
.recruit_info .process .bg_area {
    color: #fff;
    background-color: var(--color01);
}
.recruit_info .process .bg_area .container { padding: 80px 86px; }
.recruit_info .process .bg_area li .num {
    display: inline-block;
    width: 18px;
    margin-right: 20px;
    color: var(--color01);
    text-align: center;
    font-size: 0.75rem;
    line-height: 18px;
    vertical-align: middle;
    background-color: #fff;
    border-radius: 50%;
}
.recruit_info .process .bg_area li ul {
    margin: 17px 0 36px  36px;
    line-height: 1.65;
}
.recruit_info .process .bg_area li:last-child ul { margin-bottom: 0; }

.recruit_info .about_us .tit { margin-bottom: 130px; }
.recruit_info .about_us .img_cont {
    overflow: hidden;
    height: 500px;
}

.recruit_info .intro .img_cont {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: start;
    gap: 36px;
    margin-top: 97px;
}
.recruit_info .intro .img_cont>div:nth-child(2) { 
    grid-row: 1 / 3;
    grid-column: 2 / 3;
}
.recruit_info .intro .img_cont>div:nth-child(3) { grid-row: 2 / 4; }
.recruit_info .intro .right {
    grid-row: 3 / 4;
    position: relative;
    text-align: right;
}
.recruit_info .intro .right>div {
    position: absolute;
    right: 0;
    bottom: 0;
}

.recruit_info .benefit .tit {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.recruit_info .benefit .tit .f20 { margin-top: 0; text-align: right; }
.recruit_info .benefit .slide_area { transform: translateX(-50%); }
.recruit_info .benefit .slide_cont {
    display: flex;
    gap: 36px;
    position: relative;
    width: 200%;
    margin: 110px 36px 110px 0;
}
.recruit_info .benefit .slide_item { width: 33.333%; }
.recruit_info .benefit .contents>div {
    display: grid;
    grid-template-columns: 0.5fr 1fr;
    gap: 79px;
}
.recruit_info .benefit .contents>div:not(:last-of-type) { margin-bottom: 94px; }
.recruit_info .benefit .contents .f24 {
    padding: 24px 0 0 66px;
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: -0.72px;
    background: url(../images/user_time.svg) no-repeat left top 18px/36px auto;
    border-top: 1px solid #333;
}
.recruit_info .benefit .contents .work .f24 { background-image: url(../images/user_work.svg); }
.recruit_info .benefit .contents ul { padding-top: 24px; }
.recruit_info .benefit .contents li { padding: 0 0 40px 24px; }
.recruit_info .benefit .contents li:last-of-type { padding-bottom: 0; }
.recruit_info .benefit .contents li strong {
    display: block;
    position: relative;
    margin-bottom: 12px;
}
.recruit_info .benefit .contents li strong::before {
    content: "·";
    position: absolute;
    left: -20px;
}
.recruit_info .benefit .contents li span { line-height: 1.4; }

/* 개인정보처리방침 페이지 ----------------------------------------------------------------------------------------------------------------------------------- */
.privacy_page { line-height: 1.5; }
.privacy_page .f24 { color: var(--color01); }
.privacy_page .f20 { font-weight: bold; }
.privacy_page .txt {
    margin-top: 15px;
    padding: 20px;
    background-color: #F3F3F3;
    border: 1px solid #D1D1D1;
}
.privacy_page .txt p:not(:first-of-type) { margin-top: 15px; }
.privacy_page .txt ul { margin: 10px 0 0 15px; }
.privacy_page .txt ul li {
    position: relative;
    margin-top: 5px;
    padding-left: 20px;
}
.privacy_page .txt ul li::before {
    content: "-";
    position: absolute;
    left: 0;
}

/* 면접일정 조율 -------------------------------------------------------------------------------------------------------------------------------------------- */
.interview_schedule { background-color: #F3F3F3; }
.interview_schedule h1 {
    width: 200px;
    margin: 0 auto 30px;
}
.interview_schedule .container {
    display: flex;
    flex-direction: column;
    gap: 50px;
    max-width: 750px;
    padding: 50px 0;
}
.interview_schedule .f18 { text-align: center; }
.interview_schedule p:not(.f18) { line-height: 1.65; }

.interview_schedule .cont {
    display: flex;
    flex-direction: column;
    gap: 50px;
    padding: 50px 30px;
    color: var(--color03);
    background-color: #fff;
}
.interview_schedule .cont .contents { padding: 0 30px; white-space: pre-line;}

.interview_schedule h2 {
    margin-bottom: 30px;
    padding-left: 30px;
    color: #333;
    background: url(../images/user_confirm_g.svg) no-repeat left center/18px;
}
.interview_schedule section:not(:last-of-type) {
    padding-bottom: 50px;
    border-bottom: 1px solid #e9e9e9;
}

.interview_schedule .common li {
    display: grid;
    grid-template-columns: 80px auto;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
}
.interview_schedule .common li:last-of-type { margin-bottom: 0; }
.interview_schedule .common li p {
    display: flex;
    justify-content: space-between;
}

.interview_schedule .common li .copy {
    padding: 7.5px 15px;
    color: var(--color01);
    background-color: #D7E7FF;
}

.interview_schedule .sec04 ul li:hover, .interview_schedule .sec04 button:hover,
.interview_schedule .sec04 .active { filter: invert(28%) sepia(99%) saturate(2190%) hue-rotate(208deg) brightness(89%) contrast(88%); }
.interview_schedule .sec04 ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}
.interview_schedule .sec04 ul li, .interview_schedule .sec04 button {
    padding: 12px 16px;
    font-weight: bold;
    text-align: center;
    border: 1px solid #D1D1D1;
    border-radius: 5px;
    cursor: pointer;
}
.interview_schedule .sec04 ul span {
    padding-left: 17px;
    background: url(../images/calender.svg) no-repeat left center/12px;
}
.interview_schedule .sec04 ul .date {}
.interview_schedule .sec04 ul .time {
    margin-left: 15px;
    background-image: url(../images/time.svg);
}
.interview_schedule .sec04 button {
    width: 100%;
    margin: 30px 0 10px;
    color: var(--color03);
}
.interview_schedule textarea {
    display: none;
    width: 100%;
    min-height: 100px;
    margin-top: 20px;
    padding: 12px 16px;
    border: 1px solid #D1D1D1;
    border-radius: 5px;
}
.interview_schedule .cm_btn01 {
    width: max-content;
    margin: 0 auto;
    padding: 15px 66px 15px 40px;
    font-weight: bold;
    line-height: 1;
    background: var(--color01) url(../images/user_confirm.svg) no-repeat right 40px center/19px;
    border-radius: 5px;
}

/* 입사지원증명서 -------------------------------------------------------------------------------------------------------------------------------------------- */
.apply_verify_form {
    height: 100%;
    margin: 0 auto;
    font-size: 16px;
    background-color: #fff;
}
.apply_verify_form .top_line {
    height: 30px;
    background-image: linear-gradient(to right, #005BAC, #07B178);
}
.apply_verify_form .container {
    position: relative;
    width: 100%;
    height: calc(100% - 30px);
    padding: 80px 40px;
}

.apply_verify_form .container .top_info p {
    display: inline-block;
    color: var(--color03);
    font-size: 12px;
    text-align: left;
    vertical-align: bottom;
}
.apply_verify_form .container .top_info .img_cont {
    float: right;
    width: 100px;
    text-align: right;
}
.apply_verify_form .container .user_info h1 {
    margin: 92px 0 56px;
    color: #005BAC;
    font-weight: 800;
    text-align: center;
}
.apply_verify_form .container .user_info .info_list {
    margin-bottom: 140px;
    padding: 12px 0;
    border-top: 1px solid #E0E0E0;
    border-bottom: 1px solid #E0E0E0;
}
.apply_verify_form .container .user_info tr { border: 0; }
.apply_verify_form .container .user_info th {
    width: 86px;
    padding: 12px 16px;
    color: var(--color03);
    font-weight: 400;
    text-align: center;
    border: 0;
}
.apply_verify_form .container .user_info td {
    padding: 12px 16px;
    font-weight: 600;
}
.apply_verify_form .container .user_info>p {
    line-height: 2;
    text-align: center;
}

.apply_verify_form .container .bottom_info {
    position: absolute;
    bottom: 70px;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
}
.apply_verify_form .container .bottom_info .date {
    margin-bottom: 16px;
    font-size: 14px;
}
.apply_verify_form .container .bottom_info span {
    display: inline-block;
    font-size: 16px;
    font-weight: 600;
}
.apply_verify_form .container .bottom_info .company_logo {
    max-width: 120px;
    margin-right: 8px;
}
.apply_verify_form .container .bottom_info .company_logo img { max-height: 20px; }
.apply_verify_form .container .bottom_info .journeyman {
    width: 38px;
    margin-left: 8px;
    vertical-align: super;
}

/* ----------------------------------------------------------------------------------------- @ 반응형 --------------------------------------------------------------------------------------------------------- */
@media (max-width: 1440px) {
    /* education 학력사항 */
    .resume_write .container .education tbody tr { grid-template-columns: repeat(3, 75px auto); }
    .resume_write .container .education tbody th:nth-of-type(4) { padding-left: 0; text-align: left; }
    .recruit_info .process .video { padding: 19.5% 0; }
}
@media (max-width: 1280px) {
    .main_index .sec04 .txt_right .status { min-width: 230px; }
    
    .resume_write .personal td>.flex_cont:not(.address_search) {
        flex-direction: column;;
        align-items: baseline;
    }
    .resume_write .personal input:not(.name, .address, .email, [type="radio"], [type="checkbox"]) { width: 100px; }
    .resume_write .container .education tbody tr { grid-template-columns: repeat(2, 75px auto); }
    .resume_write .container .education tbody th:nth-of-type(4) { padding-left: 10px; text-align: center; }
    .resume_write .container .education tbody tr th:nth-of-type(3n) { padding-left: 0; text-align: left; }

    .pre_confirm .apply_form tr { grid-template-columns: repeat(2, 123px calc(50% - 123px)); }
    .pre_confirm .apply_form .email {
        grid-template-columns: 123px auto;
    }
    .pre_confirm .apply_form tr input { max-width: 250px; }

    .recruit_info { gap: 100px; padding: 70px 0 100px; }
    .recruit_info .about_us .tit { margin-bottom: 80px; }
    .recruit_info .process .step { padding: 50px 0; }
    .recruit_info .process .step .f20 {
        width: 150px; height: 150px;
        line-height: 1.35;
    }
    .recruit_info .process .video { padding: 25.625% 0; }
    .recruit_info .process .bg_area .container { padding: 50px 0; }
    .recruit_info .intro .img_cont {
        width: 90%;
        margin: 60px auto 0;
    }
    .recruit_info .about_us .img_cont { height: auto; }
    .recruit_info .benefit .slide_cont { margin: 70px 36px 70px 0; }
}

@media (min-height: 1025px) { /* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- 풀페이지 메인용 */
    .full_page .main_index .sec01 .swiper h3 { font-size: 4.5rem; }
    .full_page .main_index .sec01 .swiper p { font-size: 1.35rem; }
    .full_page .main_index .sec01 .pagination,
    .full_page .main_index .sec01 .sec03_btn { top: calc(360px + 15%); }
    .full_page .main_index .sec01 .apply_num { top: calc(560px + 15%); }
} /* // ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 풀페이지 메인용 */

@media (max-width: 1024px) {
    .main_index .sec01 .swiper { height: 450px; }
    .main_index .sec02 { margin: 30px 0; transform: translateY(0); }
    .main_index .sec02 .container { grid-template-columns: repeat(4, 1fr); box-shadow: none; }
    .main_index .sec02 .container>div { padding: 30px; border-top: 1px solid #464646; }
    .main_index .sec02 .container>.search { grid-column: 1 / 5; }
    .main_index .sec02 .search .search_form { margin-top: 20px; }
    .main_index .sec02 .container>div:not(.search) strong { margin-top: 5px; line-height: 1; }
    .main_index .sec03 h2 { margin-bottom: 30px; }
    .main_index .sec04 { padding: 30px 0; }
    .main_index .sec04 h2 { margin-bottom: 10px; }
    .full_page .main_index .sec01 .apply_num {
        flex-wrap: wrap;
        gap: 15px;
    }
    .full_page .main_index .sec01 .apply_num>div { flex: 1 1 48% !important; }
    .full_page .main_index .sec03 { padding-top: 50px; }

    .recruit_default .tag { flex-wrap: wrap; width: auto; }
    .recruit_default .contents tr {
        /* display: grid !important; */
        grid-template-columns: 150px auto;
    }
    .recruit_default .contents th { border-left: 0 !important; border-bottom: 1px solid #D1D1D1; }
    .recruit_default .contents th:last-of-type,
    .recruit_default .contents td:last-of-type { border-bottom: 0 !important; }
    .recruit_default .contents td { 
        padding: 9.5px 13px;
        border-bottom: 1px solid #D1D1D1;
    }
    .result_content .info .ment { padding: 35px 50px; }
    .result_content .info .ment .f40 { margin-top: 15px; }

    .qna_write>.container,
    .cm_list>.container { padding: 50px 0; }
    .qna_write .privacy .txt, .pre_confirm .privacy .txt { padding: 15px 20px; }
    .qna_write .contents tr:first-child { grid-template-columns: repeat(2, 106px auto); }
    .qna_write .contents .enroll_btn { padding: 10px 53px 10px 30px; background-position: right 30px center; }
    
    /* (반응형) 1024이하 지원서 작성 */
    .resume_write .container .main_tit h2 { background-size: 24px auto; }
    .resume_write .container .cover_letter th { padding: 20px 24px; }
    .resume_write .personal>.flex_cont { flex-direction: column; gap: 20px; }
    .resume_write .personal .photo {
        display: grid;
        grid-template-columns: 150px calc(100% - 150px);
        gap: 20px;
        width: 100%;
        text-align: left;
    }
    .resume_write .personal .photo .img_cont {
        grid-row: 1 / 3;  
        width: 150px;
        height: 200px;
    }
    .resume_write .personal .photo button {
        width: fit-content;
        height: fit-content;
        margin: auto 0 0;
    }
    .resume_write .container section:not(.field, .personal, .education, .cover_letter, .file) table tr  {
        display: grid;
        grid-template-columns: repeat(3, 80px 2fr);
        align-items: center;
    }
    .resume_write .container .education tbody tr th:first-of-type,
    .resume_write .container .education tbody th:nth-of-type(3) { padding-left: 0; text-align: left; }
    .resume_write .container .education tbody td.edu_delete { grid-row: inherit; grid-column: 4 / 5; }
    .resume_write .container section table tr:not(:first-child) { border-top: 0; }
    .resume_write .container .career table .user_write { grid-column: 3 / 6; }
    .resume_write .container .resume_cm_style tr th:first-of-type { padding-left: 10px; text-align: center; }
    .resume_write .container section.ncs table thead tr {
        grid-template-columns: auto 70px 90px; 
        border-bottom: 0;
    }
    .resume_write .container .ncs thead tr th { width: fit-content; }
    .resume_write .container .ncs thead tr th:first-of-type { width: 100%; text-align: left;  }
    .resume_write .container .ncs.high table th { width: inherit; } 
    .resume_write .container section.div_resume_wideuse table tr { grid-template-columns: 1fr 1fr; margin-top: 10px; }
    .resume_write .container section.div_resume_wideuse table th { width: 100%; }

    .recruit_info .tit .f20 { margin-top: 10px; }
    .recruit_info .process .step .f20 {
        width: 135px;
        height: 135px;
    }
}

@media (max-height: 820px) { /* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- 풀페이지 메인용 */
    .full_page .main_index .sec01 .fix_cont { padding: 93px 0; }
    .full_page .main_index .sec01 .swiper .txt { top: calc(180px + 5%); }
    .full_page .main_index .sec01 .sec03_btn {
        top: calc(300px + 10%);
        padding: 15px 64px 15px 36px;
        font-size: 1rem;
    }
    .full_page .main_index .sec01 .apply_num { top: calc(450px + 3%); }
    .full_page .main_index .sec01 .apply_num>div {
        width: 180px;
        height: 180px;
    }
    .full_page .main_index .sec01 .pagination { top: calc(300px + 8%); }
    .full_page .main_index .sec01 .swiper-button-next, .full_page .main_index .sec01 .swiper-button-prev {
        width: 30px;
        height: 59px;
    }
} /* // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 풀페이지 메인용 */

@media (max-height: 670px) { /* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- 풀페이지 메인용 */
    .full_page .main_index .sec01 .apply_num { width: 90%; }
    .full_page .main_index .sec01 .apply_num>div {
        flex: 1 1 25%;
        flex-direction: row;
        width: max-content;
        height: auto;
        padding: 20px 40px;
    }
    .full_page .main_index .sec01 .apply_num a {
        position: relative;
        right: 0;
        top: 0;
        border: 1px solid #fff;
        border-radius: 50%;
        background-size: 10px;
    }
} /* // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 풀페이지 메인용 */

@media (max-width: 768px) {
    /* (반응형) 768이하 메인(기본) */
    .main_index .sec01 .swiper h3 { line-height: 1.1; }
    .main_index .swiper-pagination-progressbar { max-width: 45%; }
    .main_index .sec04 ul li a {
        overflow-x: hidden;
        padding: 20px;
        flex-direction: column;
        align-items: baseline;
    }
    .main_index .sec04 .txt_left {
        overflow-x: inherit;
        max-width: 100%;
    }
    .main_modal .comp_notice_modal {
        left: 5% !important;
        max-width: 90% !important;
    }
    .main_modal .comp_notice_modal .se-image { width: fit-content !important; height: fit-content !important; }
    .main_modal .comp_notice_modal img { width: 100% !important; height: auto !important; }

    /* (반응형) 768이하 메인(풀페이지) */
    .full_page .main_index .sec01 .fix_cont { padding: 73px 0; }
    .full_page .main_index .sec01 .swiper .txt { top: calc(140px + 5%); }
    .full_page .main_index .sec01 .sec03_btn {
        top: calc(330px + 10%);
        padding: 10px 49px 10px 25px;
        font-size: 1rem;
        background-position: right 25px center;
    }
    .full_page .main_index .sec01 .apply_num { width: 90%; top: calc(450px + 5%); gap: 10px; }
    .full_page .main_index .sec01 .apply_num>div {
        flex-direction: row;
        gap: 10px;
        width: max-content;
        height: auto;
        padding: 10px;
    }
    .full_page .main_index .sec01 .apply_num .f40 { font-size: 1.5rem; }
    .full_page .main_index .sec01 .apply_num a {
        position: relative;
        right: 0;
        top: 0;
        border: 1px solid #fff;
        border-radius: 50%;
        background-size: 10px;
    }
    .full_page .main_index .sec01 .swiper .txt { text-align: left; }
    .full_page .main_index .sec01 .pagination { top: calc(350px + 10.25%); }
    .full_page .main_index .sec01 .swiper-button-next, .full_page .main_index .sec01 .swiper-button-prev {
        width: 15px;
        height: 30px;
    }
    .full_page .main_index .sec01 .swiper-button-prev { left: 80%; }

    /* (반응형) 768이하 공고/합격자발표 상세 페이지  */
    .applicant_view .cm_main { padding: 56px 30px; }
    .recruit_default .contents tr { grid-template-columns: 70px auto; }
    .recruit_default .contents th { padding: 10px; }
    .recruit_default .top .status { padding: 6px 35px; }
    .recruit_default .top>div:not(.tag) { flex-wrap: wrap; gap: 15px; }
    .recruit_default .top .tit { margin-top: 20px; }
    .recruit_default .top .date { margin: 10px 0 20px; }
    .recruit_default .contents { margin: 40px 0; }
    .recruit_default .contents .tit { margin-bottom: 20px; }
    .recruit_default .submit_btn { margin-top: 50px; }
    .result_content .top { padding-bottom: 30px; }
    .result_content .info .ment { padding: 35px 30px; }
    .result_content .info .ment .f40 { margin-top: 0; }
    .result_content .info .user_info th { width: 100%; }

    /* (반응형) 768이하 리스트 페이지 공통 */
    .qna_write>.container,
    .cm_list>.container { gap: 25px; padding: 30px 0; }
    .cm_list .contents { overflow-x: auto; }
    .cm_list>.container>.tit .search {
        flex: 1 1 auto;
        width: 100%;
        margin-left: 0;
    }
    .cm_list>.container>.tit .search .select { min-width: 90px; }
    .cm_list>.container>.tit .search .search_form { flex: 1 1 auto; padding: 0 10px; }
    .cm_list>.container>.tit .search .search_form input { width: calc(100% - 20px); }
    .cm_list table, .cm_list tbody,
    .cm_list table td.tit { display: block; }
    .cm_list table thead { display: none; }
    main:not(.resume_write, .confirm_style, .pre_confirm).cm_list table tr {
        display: flex;
        flex-direction: column;
        padding: 10px 0;
    }
    .cm_list table th:first-child, .cm_list table td:first-child { width: 110px; }
    main:not(.pre_confirm).cm_list table tr:not(:last-child) { border-bottom: 0; }
    .cm_list table td:not(:last-child) {
        margin-bottom: 10px;
        padding: 0;
        text-align: left;
    }
    .cm_list table td:last-child {
        flex: 1 1 100%;
        width: auto;
        max-width: 230px;
        padding: 0;
    }
    .cm_list table td.tit strong { margin-top: 5px; }
    .cm_list table td .status { max-width: inherit; padding: 8px 20px; }
    .cm_list>.container .paging { font-size: 13px; }
    .notice_view .paging .list {
        padding: 10px 20px 9px 43px;
        background-size: 13px;
        background-position: left 20px center;
    }
    
    /* (반응형) 768이하 지원/합격자 확인 form */
    .confirm_style .contents .cont_tit {
        flex-direction: column;
        align-items: baseline;
        gap: 10px;
    }
    .confirm_style.cm_list table tr {
        display: flex;
        padding: 10px 0;
    }
    .confirm_style.cm_list table tr:not(:first-of-type) { border-top: 0; }
    .confirm_style.cm_list table tr input { width: 100%; }
    .confirm_style .btn_cont button { padding: 15px 20px; }
    .confirm_style .btn_cont .back_list { padding-left: 46px; background-position: left 20px center; }
    .confirm_style .btn_cont .cm_btn01 { padding-right: 49px; background-position: right 20px center; }
    .confirm_style.cm_list table tr { align-items: center; padding-bottom: 5px; }
    .confirm_style.cm_list table tr:last-child { padding-bottom: 10px; }
    .confirm_style .password_modal table th, .confirm_style .password_modal table td { padding: 0; }

    /* (반응형) 768이하 공지,faq/1:1문의 */
    .notice_view .contents .txt { padding: 20px 0; word-break:break-all; }
    .faq .contents ul li { padding: 15px 20px 0; }
    .faq .contents ul li .question { padding-bottom: 15px; }
    .faq .contents ul li .answer { padding: 15px 20px; }
    .qna_write h2 {
        padding-left: 35px;
        background-position: left bottom 27px;
        background-size: 20px;
    }
    .qna_write .contents tr:first-child { grid-template-columns: repeat(1, 65px auto); align-items: stretch; }
    .qna_write .contents tr:first-child th:nth-of-type(2),
    .qna_write .contents tr:first-child td:nth-of-type(2) { padding: 12px 0; border-top: 1px solid #D1D1D1; }
    .qna_write .contents th, .pre_confirm th { width: 65px; }
    .qna_write .contents .email td>div, .pre_confirm .email td>div {
        flex-direction: column;
        align-items: baseline;
    }
    .qna_write .contents .file button {
        padding: 8px 42px 8px 25px; 
        line-height: 1;
        background-position: right 25px center; 
        background-size: 12.5px;
    }
    .notice.cm_list table td:first-of-type { font-weight: bold; }
    .notice.cm_list table td:first-of-type::before { content: "No. "; }
    .notice.cm_list table td:not(.tit) { text-align: left; }

    /* (반응형) 768이하 개인정보동의 */
    .pre_confirm .privacy .txt { margin-top: 15px; }
    .pre_confirm .apply_form { margin-top: 20px; }
    .pre_confirm .apply_form .email .select_wrap,
    .pre_confirm.cm_list .apply_form .classify td:first-of-type { margin-bottom: 10px; }
    .pre_confirm.cm_list .apply_form tr {
        grid-template-columns: 1fr;
        padding: 10px 0;
    }
    .pre_confirm.cm_list .apply_form th { padding: 0; }
    .pre_confirm.cm_list .apply_form td { margin-bottom: 0; }

    /* (반응형) 768이하 채용안내 */
    .recruit_info { gap: 60px; }
    .recruit_info .process .step {
        padding: 100px 0;
        background: url(../images/recruit_info_process.png) no-repeat center center/100%;
    }
    .recruit_info .process .step ul { display: none; }
    .recruit_info .intro .right>div {
        position: inherit;
        margin-top: 30px;
    }
    .recruit_info .intro .img_cont { gap: 13px; }
    .recruit_info .about_us .tit { margin-bottom: 30px; }
    .recruit_info .benefit .tit { flex-direction: column; align-items: baseline; }
    .recruit_info .benefit .tit .f20 { margin-top: 10px; text-align: left; }
    .recruit_info .benefit .slide_cont { margin: 30px 36px 30px 0; }
    .recruit_info .benefit .contents ul { padding-top: 10px; }
    .recruit_info .benefit .contents li { padding-bottom: 20px; }
    .recruit_info .benefit .contents>div {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    .recruit_info .benefit .contents>div:not(:last-of-type) { margin-bottom: 50px; }
    .recruit_info .benefit .contents .f24 {
        padding: 18px 0 0 38px;
        background-size: 26px auto;
    }

    /* (반응형) 768이하 지원서 작성 */
    .resume_write .container .main_tit { flex-wrap: wrap; }
    .resume_write .container .main_tit .txt { flex: 1 1 100%; margin-top: 20px; text-align: left; }
    .resume_write .container .main_tit .f24 { margin-top: 5px; }
    .resume_write .container .tit { gap: 15px; margin-bottom: 10px; }
    .resume_write .container .view { margin: 15px 0; font-size: 10px; }
    .resume_write .container .flex_cont { min-width: max-content; }
    .resume_write .container section { padding-top: 20px; }
    .resume_write .container section:not(.cover_letter) tbody th { padding-left: 0 !important; text-align: left !important; }
    .resume_write .container section:not(.field, .personal, .cover_letter, .div_resume_wideuse, .file) table tr { grid-template-columns: 80px auto; }
    .resume_write .container section:not(.field, .personal, .cover_letter, .div_resume_wideuse, .file) table th, .resume_write .container .resume_cm_style tr th:first-of-type { margin-bottom: 10px; padding: 0; }
    .resume_write .container td:last-child { max-width: 100%; }
    .resume_write .container .delete_btn { margin-left: 0; }
    .resume_write .container .field tr {
        display: grid;
        border: 0;
    }
    .resume_write .container .military tr:last-of-type { margin-top: 10px; } 
    .resume_write .container section:not(.field, .personal, .military, .career, .education, .cover_letter, .file) tr { margin-top: 10px; padding: 10px 0; border-top: 1px solid #D1D1D1 !important; } 
    .resume_write .container section:not(.field, .personal, .military, .career, .education, .ncs, .cover_letter, .file) tr:first-of-type { padding-bottom: 0; border-top: 0 !important; } 
    .resume_write .container .education td:last-of-type { margin-bottom: 10px; }
    .resume_write .container .education tbody td.edu_delete { grid-column: inherit; text-align: left; }
    .resume_write .container .career table th:first-of-type,
    .resume_write .container .career table td:first-of-type { margin-top: 10px; }
    .resume_write .container .career table .user_write {
        grid-column: 2 / 3;
        padding-left: 0;
    }
    .resume_write .container .career table .user_write textarea { margin-top: 0; }
    .resume_write .container .ncs thead { display: block; }
    .resume_write .container .ncs thead tr,
    .resume_write .container .ncs tbody tr:not(:only-child):first-of-type { padding-bottom: 0; }
    .resume_write .container .ncs tr:first-of-type th { margin-bottom: 0; }
    .resume_write .container .cover_letter thead { display: block; }
    .resume_write .container .cover_letter tbody:not(:last-of-type) { margin-bottom: 20px; }
    .resume_write .container .cover_letter tr { display: grid; grid-template-columns: 1fr; }
    .resume_write .container .cover_letter th,
    .resume_write .container .cover_letter td { width: 100%; max-width: 100%; }
    .resume_write .container .file tr { display: grid; margin-top: 10px; }
    .resume_write .submit_btn { margin-top: 20px; }
    
    .resume_write .cm_modal_cont .table_cont {
        overflow-x: auto;
        width: max-content;
    }
    .resume_write .cm_modal_cont .table_cont th { padding: 5px; }
    
    /* 면접일정 */
    .interview_schedule .f18 { text-align: left; }
    .interview_schedule .cont { padding: 30px 20px; }
    .interview_schedule .cont .contents { padding: 0 10px; }
    .interview_schedule .common li {
        grid-template-columns: 1fr;
        margin-bottom: 30px;
    }
    .interview_schedule .sec04 ul {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .main_index .sec02 .container { grid-template-columns: repeat(2, 1fr); }
    .main_index .sec02 .container>.search { grid-column: 1 / 3; }
    .main_index .sec02 .search .txt { flex-wrap: wrap; gap: 5px; }
    .main_index .sec02 .container>div { padding: 20px; }
    .main_index .sec03 ul li .tit { margin-bottom: 40px; }

    .qna_write .privacy .txt, .pre_confirm .privacy .txt,
    .resume_write .container .view { padding: 15px; }
    .resume_write .container .delete_btn { margin-left: 0; }
    .resume_write .container .tit { flex-wrap: wrap; gap: 10px; }
    .resume_write .container .tit .f24 { flex: 1 1 100%; }
    .resume_write .container table .select_wrap {
        width: fit-content;
        max-width: none;
    }
    .resume_write .container table tr {
        display: grid;
        grid-template-columns: 1fr !important;
    }
    .resume_write .container section:not(.career, .div_resume_wideuse) table tr th { margin-top: 10px; text-align: left !important; }
    .resume_write .container .flex_cont { flex-wrap: wrap; min-width: 100%; }
    .resume_write .container .personal>.flex_cont { min-width: auto; }
    .resume_write .container .personal table td { padding: 0; }
    .resume_write .personal .photo { grid-template-columns: 1fr; gap: 10px; padding: 15px; }
    .resume_write .personal .photo .img_cont {
        width: 80px;
        height: 107px;
        margin: 0;
        background-size: 30px auto;
    }
    .resume_write .personal input:not(.name, .address, .email, .dev_singlepicker, [type="radio"], [type="checkbox"]) { width: 60px; }
    .resume_write .container table td input.addr1_input { width: 100%; }
    .resume_write .container table td input.dev_onlyNum { width: 30%; }
    .resume_write .container .education tbody tr.tr_education_thesis td { grid-column: inherit; }
    .resume_write .container .career table td { grid-column: 1 / 3 !important; }
    .resume_write .container .ncs tr td:last-child { text-align: left; }
    .resume_write .file table td div input:read-only { width: 100%; }
    .resume_write .file table td button { margin-bottom: 5px; }
    .resume_write .file table td .file_btn { margin-left: 10px; }
}