/********** error **********/
.error_page_wrap {
    width: 100%;
    height: calc(var(--vh, 1vh) * 100);
}

.error_page_wrap .error_inner {
    height: 100%;
    margin: 0 auto;
    padding: 40px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.error_page_wrap .error_inner i {
    font-size: 100px;
    color: #007fa0;
}

.error_page_wrap .error_inner h2 {
    text-align: center;
    font-weight: 800;
    font-size: 32px;
}

.error_page_wrap .error_inner h2 br {
    display: none;
}

.error_page_wrap .error_inner p {
    text-align: center;
    font-size: 18px;
    line-height: 24px;
}

.error_page_wrap .error_inner p br {
    display: block;
}


.error_page_wrap .error_inner .btn_group {
    display: flex;
    gap: 8px;
}

.error_page_wrap .error_inner .btn_group .btn {
    width: 135px;
    font-size: 16px;
    height: 48px;
}

@media screen and (max-width: 1199px) {
    .error_page_wrap .error_inner i {
        font-size: 60px;
    }

    .error_page_wrap .error_inner h2 {
        font-size: 28px;
        line-height: 36px;
    }

    .error_page_wrap .error_inner h2 br {
        display: block;
    }

    .error_page_wrap .error_inner p br {
        display: none;
    }

    .error_page_wrap .error_inner p {
        font-size: 16px;
        line-height: 22px;
    }
}

/********** login **********/
.login_wrap {
    width: 100%;
    height: calc(var(--vh, 1vh) * 100);
}

.login_wrap .login_inner {
    width: 400px;
    height: 100%;
    margin: 0 auto;
    padding: 100px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.login_wrap .login_inner .login_title {
    font-size: 60px;
    font-weight: 800;
    margin-bottom: 40px;
}

.login_wrap .login_inner .form_wrap {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.login_wrap .login_inner .form_wrap input {
    width: 100%;
    border-radius: 8px;
    background: #f2f2f2;
    height: 56px;
    font-size: 18px;
    padding: 12px 16px;
}

.login_wrap .login_inner .form_wrap .checks {
    margin-top: 8px;
}

.login_wrap .login_inner .form_wrap .login_btn {
    margin-top: 16px;
    border-radius: 8px;
    background-color: #007fa0;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    height: 64px;
}

.login_wrap .login_inner .form_wrap .termination_btn {
    margin-top: 4px;
    border-radius: 8px;
    border: 1px solid #007fa0;
    color: #007fa0;
    background: #fff;
    font-size: 20px;
    font-weight: 600;
    height: 64px;
}

.login_wrap .login_inner .auth_menu {
    margin-top: 32px;
    display: flex;
    align-items: center;
    gap: 51px;
}

.login_wrap .login_inner .auth_menu a {
    font-size: 17px;
    position: relative;
}

.login_wrap .login_inner .auth_menu a + a::after {
    content: "";
    position: absolute;
    top: 50%;
    left: -24px;
    transform: translateY(-50%);
    width: 1px;
    height: 16px;
    background: #cecece;
}

.login_wrap .login_inner .manual_wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    gap: 8px;
    margin-top: 32px;
}

.login_wrap .login_inner .manual_wrap .btn {
    height: 48px;
    font-size: 16px;
    width: 50%;
    border: 1px solid #aaa;
}

@media screen and (max-width: 1199px) {
    .login_wrap .login_inner {
        padding: 100px 20px;
        width: 100%;
    }

    .login_wrap .login_inner .login_title {
        font-size: 40px;
        margin-bottom: 48px;
    }

    .login_wrap .login_inner .form_wrap .termination_btn {
        font-size: 18px;
        height: 48px;
    }

    .login_wrap .login_inner .auth_menu {
        gap: 25px;
    }

    .login_wrap .login_inner .auth_menu a {
        font-size: 16px;
    }

    .login_wrap .login_inner .auth_menu a + a::after {
        left: -12px;
    }

    .login_wrap .login_inner .manual_wrap {
        flex-direction: column;
    }

    .login_wrap .login_inner .manual_wrap .btn {
        width: 100%;
        height: 40px;
    }
}

/********** birth **********/
.birth_wrap {
    width: 100%;
    height: calc(var(--vh, 1vh) * 100);
}

.birth_wrap .birth_inner {
    width: 400px;
    height: 100%;
    margin: 0 auto;
    padding: 100px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.birth_wrap .birth_inner .title {
    font-size: 40px;
    font-weight: 800;
    margin-bottom: 55px;
}

.birth_wrap .birth_inner p {
    font-size: 18px;
    margin-bottom: 24px;
}

.birth_wrap .birth_inner input {
    height: 48px;
    width: 100%;
    max-width: 330px;
    margin-bottom: 16px;
    font-size: 18px;
}

.birth_wrap .birth_inner .btn {
    width: 100%;
    max-width: 330px;
    height: 56px;
    font-size: 18px;
}

@media screen and (max-width: 1199px) {
    .birth_wrap .birth_inner {
        padding: 100px 20px;
        width: 100%;
    }

    .birth_wrap .birth_inner .title {
        font-size: 40px;
        margin-bottom: 48px;
    }

    .birth_wrap .birth_inner p {
        font-size: 16px;
    }
}


/********** header **********/
.header {
    background: transparent;
    height: auto;
    left: 0;
    opacity: 1;
    position: fixed;
    top: 0;
    transform: translate3d(0, 0, 0);
    transition: background 0.4s, opacity 0.15s, transform 0.4s;
    width: 100%;
    z-index: 50;
}

.header .inner {
    height: 80px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 90px 0 60px;
}

.header .logo_wrap a {
    color: #fff;
    font-size: 30px;
    font-weight: 800;
}

.header .logo_wrap .moblie_menu_open_btn {
    display: none;
}

.header .gnb_bar {
    background: #007fa0;
    top: 74px;
    height: 6px;
    opacity: 0;
    position: absolute;
    transition: opacty 0.2s, transform 1000ms cubic-bezier(0.23, 1, 0.32, 1);
    width: auto;
}

.header .gnb_wrap {
    display: flex;
    align-items: center;
    gap: 68px;
    height: 80px;
}

.header .gnb_wrap .gnb_item {
    display: inline-block;
    position: relative;
    vertical-align: middle;
    white-space: nowrap;
}

.header .gnb_wrap .gnb_item > a {
    color: #fff;
    font-weight: 600;
    font-size: 20px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header .gnb_wrap .gnb_item > a:hover {
    color: #007fa0;
    font-weight: 700;
    position: relative;
}

.header .gnb_wrap .gnb_2dep {
    left: 0;
    opacity: 0;
    pointer-events: none;
    padding-top: 55px;
    position: absolute;
    transition: opacity 0.2s;
    user-select: none;
    width: 100%;
}

.header .gnb_wrap .gnb_2dep.hover {
    opacity: 1;
    pointer-events: auto;
    user-select: auto;
}

.header .gnb_wrap .gnb_2dep li + li {
    padding-top: 16px;
}

.header .gnb_wrap .gnb_2dep li a {
    font-size: 18px;
}

.header .gnb_wrap .gnb_2dep li a:hover {
    font-weight: 700;
}

.header .gnb_mobile {
    display: none;
}

.header .pc_auth_menu .auth_menu {
    display: flex;
    gap: 8px;
}

.header .pc_auth_menu .auth_menu .auth_item {
    color: #fff;
    border-radius: 100px;
    padding: 0 24px;
    background: #007fa0;
    display: flex;
    height: 40px;
    align-items: center;
    justify-content: center;
}

.header .pc_auth_menu .lang_wrap {
    position: relative;
    z-index: 1;
}

.header .pc_auth_menu .lang {
    background: #000;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    border-radius: 100px;
    height: 40px;
    padding: 0 12px;
    width: 120px;
    position: relative;
    z-index: 1;
}

.header .pc_auth_menu .lang i {
    font-size: 12px;
    transition: all 0.3s cubic-bezier(0, 0, 1, 1);
}

.header .pc_auth_menu i.active {
    transform: rotate(180deg);
}

.header .pc_auth_menu .lang_change {
    position: absolute;
    background: #000;
    border-radius: 0 0 20px 20px;
    top: 20px;
    display: none;
    padding-top: 16px;
}

.header .pc_auth_menu .lang_change a {
    color: #fff;
    height: 50px;
    padding: 0 12px 0 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 120px;
}

.header_white {
    background: #fff;
}

.header_white::after {
    content: "";
    position: absolute;
    top: 80px;
    left: 0;
    height: 1px;
    width: 100%;
    background: #ebebeb;
}

.header_white .logo_wrap a {
    color: #000;
}

.header_white .logo_wrap .moblie_menu_open_btn img {
    filter: invert(1);
}

.header_white .gnb_wrap .gnb_item > a {
    color: #000;
}

@media screen and (max-width: 1399px) {
    .header {
        padding: 16px 20px;
    }

    .header_white::after {
        top: 59px;
    }

    .header .inner {
        padding: 0;
        height: auto;
    }

    .header .logo_wrap {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
    }

    .header .logo_wrap a {
        font-size: 18px;
    }

    .header .logo_wrap .moblie_menu_open_btn {
        display: block;
        background: transparent;
    }

    .header .gnb_bar {
        display: none;
    }

    .header .gnb_wrap {
        display: none;
    }

    .header .pc_auth_menu {
        display: none;
    }

    .header .gnb_mobile {
        display: block;
        width: 100%;
        height: calc(var(--vh, 1vh) * 100);
        position: fixed;
        top: 0;
        left: 100%;
        z-index: 5;
        background: #fff;
        transition: all 0.3s;
    }

    .header .gnb_mobile .top {
        padding: 24px 20px;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .header .gnb_mobile .top .auth_menu {
        display: flex;
        align-items: center;
        gap: 4px;
    }

    .header .gnb_mobile .top .auth_menu .auth_item {
        background: #007fa0;
        padding: 8px 12px;
        border-radius: 30px;
        font-size: 14px;
        color: #fff;
        display: block;
        height: 36px;
        text-align: center;
    }

    .header .gnb_mobile .top .auth_menu .lang_wrap {
        position: relative;
    }

    .header .gnb_mobile .top .auth_menu .lang {
        background: #000;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 4px;
        border-radius: 100px;
        height: 36px;
        padding: 0 12px;
        width: 100px;
        position: relative;
        z-index: 1;
    }

    .header .gnb_mobile .top .auth_menu .lang i {
        font-size: 12px;
        margin-left: 4px;
        transition: all 0.3s cubic-bezier(0, 0, 1, 1);
    }

    .header .gnb_mobile .top .auth_menu .lang i.active {
        transform: rotate(180deg);
    }

    .header .gnb_mobile .top .auth_menu .lang_change {
        position: absolute;
        background: #000;
        border-radius: 0 0 20px 20px;
        top: 16px;
        display: none;
        padding-top: 16px;
    }

    .header .gnb_mobile .top .auth_menu .lang_change a {
        color: #fff;
        height: 36px;
        padding: 0 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100px;
    }

    .header .gnb_mobile .top .gnb_close_btn {
        background: transparent;
    }

    .header .gnb_mobile .top .gnb_close_btn img {
        display: block;
    }

    .header .gnb_mobile .gnb_mobile_wrap {
        padding: 20px;
        height: calc(100% - 84px);
        overflow: auto;
    }

    .header .gnb_mobile .gnb_item + .gnb_item {
        padding-top: 20px;
    }

    .header .gnb_mobile .gnb_item img {
        transition: all 0.3s cubic-bezier(0, 0, 1, 1);
    }

    .header .gnb_mobile .gnb_item img.active {
        transform: rotate(180deg);
    }

    .header .gnb_mobile .gnb_item > p {
        border-bottom: 1px solid #ebebeb;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-bottom: 12px;
        font-size: 18px;
        font-weight: 700;
        cursor: pointer;
    }

    .header .gnb_mobile .gnb_mobile_wrap .gnb_2dep {
        display: flex;
        flex-direction: column;
        gap: 14px;
        padding: 14px 0;
    }

    .header .gnb_mobile .gnb_mobile_wrap .gnb_2dep a {
        display: flex;
        align-items: center;
        gap: 4px;
    }
}

/********** main visual **********/
.main_visual {
    position: relative;
}

.main_visual > .swiper-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    bottom: 80px;
}

.main_visual > .swiper-pagination .swiper-pagination-bullet {
    width: 100px;
    border-radius: 2px;
    height: 4px;
    background: #fff;
    opacity: 0.26;
    margin: 0 !important;
}

.main_visual > .swiper-pagination .swiper-pagination-bullet-active {
    background: #fff;
    opacity: 1;
}

.main_visual_text {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 180px;
    position: relative;
    padding: 250px 0 260px;
}

.main_visual_text::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
}

.main_visual .main_visual_text:nth-child(1) {
    background: url(../images/main_visual_01.jpg) no-repeat center;
    background-size: cover;
}

.main_visual .main_visual_text:nth-child(2) {
    background: url(../images/main_visual_02.jpg) no-repeat center;
    background-size: cover;
}

.main_visual_text .title {
    color: #fff;
    font-weight: 800;
    font-size: 92px;
    text-align: center;
    line-height: 1.2;
}

.main_visual_text .btn {
    border-radius: 100px;
    background: #0054a2;
    width: 400px;
    height: 80px;
    box-shadow: 0 3px 16px 0 rgba(0, 0, 0, 0.35);
    gap: 40px;
    color: #fff;
    font-size: 28px;
}

@media screen and (max-width: 1199px) {
    .main_visual > .swiper-pagination {
        gap: 8px;
        bottom: 30px;
    }

    .main_visual > .swiper-pagination .swiper-pagination-bullet {
        width: 40px;
    }

    .main_visual_text {
        gap: 100px;
        padding: 160px 20px 80px;
    }

    .main_visual_text .title {
        font-size: 38px;
        line-height: 48px;
    }

    .main_visual_text .btn {
        height: 48px;
        font-size: 17px;
        width: 100%;
        max-width: 300px;
    }

    .main_visual_text .btn img {
        display: none;
    }
}

/********** main menu **********/
.main_menu_wrap {
    background: #007fa0;
}

.main_menu_wrap .main_menu_list {
    width: 1200px;
    margin: 0 auto;
    display: flex;
    padding: 50px 0;
}

.main_menu_wrap .main_menu_list li {
    width: 16.6667%;
}

.main_menu_wrap .main_menu_list a {
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: center;
    justify-content: center;
}

.main_menu_wrap .main_menu_list .img_wrap {
    height: 64px;
    display: flex;
    align-items: center;
}

.main_menu_wrap .main_menu_list .img_wrap img {
    display: block;
}

.main_menu_wrap .main_menu_list p {
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
}

@media screen and (max-width: 1199px) {
    .main_menu_wrap .main_menu_list {
        width: 100%;
        padding: 40px 20px;
        flex-wrap: wrap;
        gap: 40px;
    }

    .main_menu_wrap .main_menu_list li {
        width: calc(33.3333% - 27px);
    }

    .main_menu_wrap .main_menu_list a {
        gap: 10px;
    }

    .main_menu_wrap .main_menu_list .img_wrap {
        height: 40px;
    }

    .main_menu_wrap .main_menu_list .img_wrap img {
        width: 40px;
    }

    .main_menu_wrap .main_menu_list p {
        font-size: 15px;
        font-weight: 500;
    }
}

/********** main nano **********/
.main_nano_wrap {
    background: #40aecb url(../images/middle_visual.jpg) no-repeat center;
    background-size: contain;
    background-position: right;
}

.main_nano_wrap .main_nano_inner {
    width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 80px 0 60px;
}

.main_nano_wrap .main_nano_inner .title {
    font-size: 60px;
    font-weight: 800;
    color: #fff;
    margin-bottom: 40px;
}

.main_nano_wrap .main_nano_inner .text_wrap {
    display: flex;
    flex-direction: column;
    margin-bottom: 60px;
}

.main_nano_wrap .main_nano_inner .text_wrap .sub_text {
    font-size: 20px;
}

.main_nano_wrap .main_nano_inner .badge_wrap {
    display: flex;
    gap: 12px;
}

.main_nano_wrap .main_nano_inner .badge_wrap .badge {
    font-size: 24px;
    font-weight: 700;
    padding: 16px 32px;
    color: #000;
    background: #258db1;
    border-radius: 50px;
}

.main_nano_wrap .main_nano_inner .right {
    width: 420px;
}

.main_nano_wrap .main_nano_inner .right p {
    font-size: 100px;
    font-weight: 800;
    color: rgba(32, 35, 103, 0.2);
    line-height: 90px;
}

.main_nano_wrap .main_nano_inner .right .bottom {
    text-align: right;
}

@media screen and (max-width: 1199px) {
    .main_nano_wrap {
        background: #40aecb;
    }

    .main_nano_wrap .main_nano_inner {
        width: 100%;
        padding: 40px 20px;
    }

    .main_nano_wrap .main_nano_inner .left {
        width: 100%;
    }

    .main_nano_wrap .main_nano_inner .title {
        font-size: 28px;
        margin-bottom: 20px;
    }

    .main_nano_wrap .main_nano_inner .text_wrap {
        margin-bottom: 20px;
    }

    .main_nano_wrap .main_nano_inner .text_wrap .sub_text {
        font-size: 16px;
        line-height: 20px;
    }

    .main_nano_wrap .main_nano_inner .badge_wrap {
        flex-wrap: wrap;
    }

    .main_nano_wrap .main_nano_inner .badge_wrap .badge {
        font-size: 16px;
        padding: 8px 16px;
    }

    .main_nano_wrap .main_nano_inner .right {
        display: none;
    }
}

/********** program **********/
.program_inner {
    width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 48px;
    padding: 100px 0 120px;
}

.program_inner h3 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 40px;
    font-weight: 800;
}

.program_inner h3 img {
    display: block;
}

.program_inner .program_item_wrap {
    display: flex;
    gap: 60px;
}

.program_inner .program_item_wrap .program_item {
    border-radius: 20px;
    position: relative;
    overflow: hidden;
}

.program_inner .program_item_wrap .program_item::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.2);
    width: 100%;
    height: 100%;
}

.program_inner .program_item_wrap .program_item img {
    display: block;
}

.program_inner .program_item_wrap .program_item p {
    position: absolute;
    left: 32px;
    bottom: 32px;
    color: #fff;
    font-size: 30px;
    line-height: 36px;
    font-weight: 700;
    z-index: 1;
}

@media screen and (max-width: 1199px) {
    .program_inner {
        width: auto;
        padding: 40px 0;
        gap: 24px;
    }

    .program_inner h3 {
        font-size: 22px;
        padding: 0 20px;
    }

    .program_inner h3 img {
        width: 19px;
    }

    .program_inner .program_item_section {
        display: flex;
        position: relative;
        overflow: auto hidden;
    }

    .program_inner .program_item_wrap {
        align-items: flex-start;
        flex-direction: row;
        gap: 10px;
        padding-inline-start: 20px;
        padding-inline-end: 20px;
        flex-wrap: nowrap;
    }

    .program_inner .program_item_wrap .program_item {
        width: 50vw;
        height: 25vh;
        border-radius: 12px;
    }

    .program_inner .program_item_wrap .program_item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .program_inner .program_item_wrap .program_item p {
        font-size: 20px;
        line-height: 24px;
        left: 24px;
        bottom: 24px;
    }
}

/********** main notice **********/
.main_notice_wrap {
    padding: 80px 0 90px;
    background: #f2f2f2;
}

.main_notice_wrap .notice_inner {
    width: 1200px;
    margin: 0 auto;
}

.main_notice_wrap .notice_inner h3 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 40px;
    font-weight: 800;
    margin-bottom: 60px;
}

.main_notice_wrap .notice_inner h3 img {
    display: block;
}

.main_notice_wrap .notice_item_wrap {
    display: flex;
    gap: 201px;
}

.main_notice_wrap .notice_item_wrap .notice_main_none {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.main_notice_wrap .notice_item_wrap .notice_main_none p {
    text-align: center;
    font-size: 18px;
}

.main_notice_wrap .notice_item_wrap .notice_item {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: calc(50% - 101px);
    position: relative;
}

.main_notice_wrap .notice_item_wrap .notice_item:last-child::after {
    content: "";
    position: absolute;
    left: -100px;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 72px;
    background: #bebebe;
}

.main_notice_wrap .notice_item_wrap .notice_item .title {
    font-size: 22px;
    font-weight: 600;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    word-break: keep-all;
}

.main_notice_wrap .notice_item_wrap .notice_item .date {
    font-size: 17px;
    color: #444;
}

@media screen and (max-width: 1199px) {
    .main_notice_wrap {
        padding: 40px 20px;
    }

    .main_notice_wrap .notice_inner {
        width: auto;
    }

    .main_notice_wrap .notice_inner h3 {
        font-size: 22px;
        margin-bottom: 24px;
    }

    .main_notice_wrap .notice_inner h3 img {
        width: 19px;
    }

    .main_notice_wrap .notice_item_wrap {
        flex-direction: column;
        gap: 24px;
    }

    .main_notice_wrap .notice_item_wrap .notice_main_none p {
        font-size: 16px;
    }

    .main_notice_wrap .notice_item_wrap .notice_item {
        width: 100%;
        gap: 4px;
    }

    .main_notice_wrap .notice_item_wrap .notice_item:last-child::after {
        display: none;
    }

    .main_notice_wrap .notice_item_wrap .notice_item .title {
        font-size: 18px;
    }

    .main_notice_wrap .notice_item_wrap .notice_item .date {
        font-size: 16px;
    }
}

/********** main convention **********/
.convention_wrap {
    padding: 100px 0 120px;
}

.convention_wrap .convention_inner {
    width: 1200px;
    margin: 0 auto;
}

.convention_wrap .convention_inner .title_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 60px;
    position: relative;
}

.convention_wrap .convention_inner .title_wrap h3 {
    font-size: 40px;
    font-weight: 800;
}

.convention_wrap .convention_inner .swiper_navigation_wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.convention_wrap .convention_inner .swiper_navigation_wrap .btn_icon {
    width: 32px;
    height: 32px;
    border-radius: 50px;
    background: #f5f5f5;
    cursor: pointer;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    left: 0;
    margin-top: 0;
}

.convention_wrap .convention_inner .swiper_navigation_wrap .btn_play {
    display: none;
}

.convention_wrap .convention_inner .swiper_navigation_wrap .swiper-button-next:after {
    background: url(../images/icon_company_next.png) no-repeat center;
    color: transparent;
    font-size: unset;
    background-size: contain;
}

.convention_wrap .convention_inner .swiper_navigation_wrap .swiper-button-prev:after {
    background: url(../images/icon_company_prev.png) no-repeat center;
    color: transparent;
    font-size: unset;
    background-size: contain;
}

.convention_wrap .convention_inner .swiper-wrapper {
    align-items: center;
}

.convention_wrap .convention_inner .swiper-slide img {
    display: block;
    max-width: 100%;
}

@media screen and (max-width: 1199px) {
    .convention_wrap {
        padding: 40px 20px;
    }

    .convention_wrap .convention_inner {
        width: auto;
    }

    .convention_wrap .convention_inner .title_wrap {
        margin-bottom: 24px;
    }

    .convention_wrap .convention_inner .title_wrap h3 {
        font-size: 22px;
    }
}

/********** section layout **********/
.section_wrap {
    padding: 60px 0 120px;
    margin-top: 80px;
}

.section_wrap .inner {
    width: 1200px;
    margin: 0 auto;
}

.section_wrap .inner .section_title {
    font-size: 40px;
    font-weight: 800;
    margin-bottom: 32px;
}

.section_wrap .tab_wrap {
    padding-bottom: 20px;
    border-bottom: 1px solid #dfdfdf;
}

.section_wrap .tab_wrap ul {
    display: flex;
    gap: 20px;
}

.section_wrap .tab_wrap li a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3px 20px;
    border-radius: 4px;
    font-size: 18px;
    font-weight: 600;
    gap: 4px;
}

.section_wrap .tab_wrap li a.active {
    background: #007fa0;
    color: #fff;
}

.section_wrap .tab_wrap li a.active img {
    filter: invert(1);
}

.section_wrap .content_section .section_sub_title {
    margin-top: 64px;
    font-size: 60px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.section_wrap .content_section .section_sub_title button {
    background: #007fa0;
    border-radius: 8px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 160px;
    height: 56px;
    font-size: 18px;
}

@media screen and (max-width: 1199px) {
    .section_wrap {
        margin-top: 59px;
        padding: 30px 0 72px;
        position: relative;
    }

    .section_wrap .inner {
        width: auto;
    }

    .section_wrap .inner .section_title {
        font-size: 28px;
        padding: 0 20px;
    }

    .section_wrap .tab_wrap {
        display: flex;
        position: relative;
        overflow: auto hidden;
        padding-bottom: 8px;
    }

    .section_wrap .tab_wrap::-webkit-scrollbar {
        display: none;
    }

    .section_wrap .tab_wrap ul {
        align-items: flex-start;
        flex-direction: row;
        gap: 10px;
        padding-inline-start: 20px;
        padding-inline-end: 20px;
        flex-wrap: nowrap;
    }

    .section_wrap .tab_wrap ul li {
        width: max-content;
    }

    .section_wrap .tab_wrap li a {
        font-size: 16px;
    }

    .section_wrap .content_section {
        padding: 0 20px;
    }

    .section_wrap .content_section .section_sub_title {
        margin-top: 30px;
        font-size: 32px;
    }

    .section_wrap .content_section .section_sub_title button {
        box-shadow: 0 8px 9px 1px rgba(0, 0, 0, 0.2);
        width: 72px;
        height: 72px;
        flex-direction: column;
        font-size: 15px;
        position: absolute;
        right: 20px;
        bottom: -20px;
    }
}

/********** 센터소개 - 센터소개 **********/
.section_wrap .center_introduce_wrap {
    margin-top: 80px;
}

.section_wrap .center_introduce_wrap .center_introduce_text {
    font-size: 20px;
}

.section_wrap .center_introduce_wrap .center_name_wrap {
    margin-top: 60px;
}

.section_wrap .center_introduce_wrap .center_name_wrap p {
    display: flex;
    gap: 8px;
    align-items: flex-end;
    font-size: 18px;
    font-weight: 700;
}

.section_wrap .center_introduce_wrap .center_name_wrap p span {
    font-size: 32px;
    font-weight: 800;
    line-height: 39px;
}

@media screen and (max-width: 1199px) {
    .section_wrap .center_introduce_wrap {
        margin-top: 20px;
    }

    .section_wrap .center_introduce_wrap .center_introduce_text {
        font-size: 16px;
    }

    .section_wrap .center_introduce_wrap .center_name_wrap {
        margin-top: 30px;
    }

    .section_wrap .center_introduce_wrap .center_name_wrap p {
        font-size: 16px;
    }

    .section_wrap .center_introduce_wrap .center_name_wrap p span {
        font-size: 28px;
        line-height: 32px;
    }
}

/********** 센터소개 - 조직도 **********/
.section_wrap .organization_chart_wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 60px;
    margin-top: 80px;
}

.section_wrap .organization_chart_wrap p {
    font-weight: 700;
    font-size: 36px;
    text-align: center;
}

.section_wrap .organization_chart_wrap .pc_block {
    display: block;
}

.section_wrap .organization_chart_wrap .m_block {
    display: none;
}

@media screen and (max-width: 1199px) {
    .section_wrap .organization_chart_wrap {
        margin-top: 20px;
        gap: 20px;
    }

    .section_wrap .organization_chart_wrap p {
        font-size: 18px;
        line-height: 22px;
    }

    .section_wrap .organization_chart_wrap .pc_block {
        display: none;
    }

    .section_wrap .organization_chart_wrap .m_block {
        display: block;
        max-width: 100%;
    }
}

/********** 센터소개 - 찾아오시는길 **********/
.directions_wrap .top {
    margin-top: 80px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    margin-bottom: 56px;
}

.directions_wrap .top .top_item {
    display: flex;
    gap: 16px;
    align-items: center;
}

.directions_wrap .top .top_item .img_wrap {
    width: 54px;
    height: 54px;
    background: #f4f4f4;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 54px;
}

.directions_wrap .top .top_item .content {
    display: flex;
    flex-direction: column;
}

.directions_wrap .top .top_item .content .title {
    font-size: 28px;
    font-weight: 700;
}

.directions_wrap .top .top_item .content .text {
    font-size: 18px;
    display: flex;
    gap: 24px;
}

.directions_wrap .top .top_item .content .text span {
    font-weight: 700;
}

.directions_wrap .map_wrap img {
    display: block;
    width: 100%;
}

.directions_wrap .map_wrap > div {
    width: 100% !important;
}

.directions_wrap .bottom {
    display: flex;
    flex-direction: column;
    margin-top: 40px;
    gap: 32px;
}

.directions_wrap .bottom .item {
    display: flex;
    flex-direction: column;
}

.directions_wrap .bottom .item .title_wrap {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 8px;
}

.directions_wrap .bottom .item .title_wrap img {
    display: block;
}

.directions_wrap .bottom .item .title_wrap .title {
    font-size: 18px;
    font-weight: 700;
}

.directions_wrap .bottom .item > p {
    padding-left: 8px;
    position: relative;
}

.directions_wrap .bottom .item > p::after {
    content: "";
    position: absolute;
    top: 10px;
    left: 0;
    width: 3px;
    height: 3px;
    border-radius: 10px;
    background: #000;
}

@media screen and (max-width: 1199px) {
    .directions_wrap .top {
        margin-top: 30px;
        margin-bottom: 40px;
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .directions_wrap .top .top_item {
        gap: 12px;
    }

    .directions_wrap .top .top_item .img_wrap {
        width: 60px;
        height: 60px;
    }

    .directions_wrap .top .top_item .content {
        width: calc(100% - 72px);
        gap: 4px;
    }

    .directions_wrap .top .top_item .content .title {
        font-size: 18px;
        line-height: 20px;
    }

    .directions_wrap .top .top_item .content .text {
        font-size: 16px;
        line-height: 20px;
        gap: 16px;
    }

    .directions_wrap .top .top_item .content .text p {
        display: flex;
        flex-direction: column;
    }

    .directions_wrap .top .top_item .content .text em {
        display: none;
    }

    .directions_wrap .top .top_item .content .text span {
        font-size: 14px;
    }

    .directions_wrap .bottom {
        margin-top: 20px;
        gap: 20px;
    }

    .directions_wrap .bottom .item .title_wrap .title {
        font-size: 16px;
    }

    .directions_wrap .bottom .item .title_wrap img {
        max-width: 20px;
    }

    .directions_wrap .bottom .item > p {
        font-size: 14px;
    }

    .directions_wrap .bottom .item > p::after {
        top: 8px;
    }
}

/********** 교육 프로그램 - 교육혁신모델 **********/
.content_section .educational_wrap {
    margin-top: 80px;
}

.content_section .educational_wrap .sub_tab_wrap ul {
    display: flex;
    gap: 16px;
}

.content_section .educational_wrap .sub_tab_wrap li a {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 60px;
    font-size: 18px;
    font-weight: 500;
    background: #ebebeb;
    width: 60px;
    height: 60px;
}

.content_section .educational_wrap .sub_tab_wrap li a.active {
    background: #fff;
    border: 3px solid #007fa0;
    color: #007fa0;
    font-size: 20px;
    font-weight: 700;
    box-shadow: 0 8px 9px 1px rgba(0, 0, 0, 0.2);
}

.content_section .educational_wrap .text_wrap {
    display: flex;
    flex-direction: column;
    background: #f6f6f6;
    border-radius: 20px;
    padding: 40px;
    gap: 12px;
    margin-top: 40px;
}

.content_section .educational_wrap .text_wrap .sm_title {
    font-weight: 600;
    font-size: 22px;
}

.content_section .educational_wrap .text_wrap .lg_title {
    font-weight: 800;
    font-size: 40px;
    line-height: 40px;
}

.content_section .educational_wrap .pc_block {
    display: block;
    margin-top: 60px;
    width: 100%;
}

.content_section .educational_wrap .m_block {
    display: none;
}

.content_section .educational_wrap .bottom_wrap {
    display: flex;
    flex-direction: column;
    gap: 80px;
    margin-top: 100px;
}

.content_section .educational_wrap .bottom_wrap .bottom_item {
    display: flex;
    gap: 60px;
}

.content_section .educational_wrap .bottom_wrap .bottom_item .left {
    border-top: 4px solid #007fa0;
    padding-top: 20px;
}

.content_section .educational_wrap .bottom_wrap .bottom_item .left.w_300 {
    width: 300px;
}

.content_section .educational_wrap .bottom_wrap .bottom_item .left.w_380 {
    width: 380px;
}

.content_section .educational_wrap .bottom_wrap .bottom_item .left.w_430 {
    width: 430px;
}

.content_section .educational_wrap .bottom_wrap .bottom_item .left p {
    font-size: 30px;
    font-weight: 800;
    line-height: 38px;
}

.content_section .educational_wrap .bottom_wrap .bottom_item .right {
    width: calc(100% - 490px);
}

.content_section .educational_wrap .bottom_wrap .bottom_item .right p {
    font-size: 20px;
    font-weight: 500;
}

.content_section .educational_wrap .bottom_wrap .bottom_item .right p + p.text_bold {
    margin-top: 28px;
}

.content_section .educational_wrap .bottom_wrap .bottom_item .right .text_bold {
    font-size: 20px;
    font-weight: 700;
}

.content_section .educational_wrap .bottom_wrap .bottom_item .right .text_medium {
    font-size: 18px;
    font-weight: 500;
}

@media screen and (max-width: 1199px) {
    .section_wrap .content_section_02 {
        padding: 0;
    }

    .section_wrap .content_section_02 .section_sub_title {
        padding: 0 20px;
    }

    .content_section .educational_wrap {
        margin-top: 20px;
    }

    .content_section .educational_wrap .text_wrap {
        padding: 20px;
        gap: 8px;
        margin-top: 16px;
    }

    .content_section .educational_wrap .text_wrap .sm_title {
        font-size: 15px;
        line-height: 18px;
    }

    .content_section .educational_wrap .text_wrap .lg_title {
        font-size: 20px;
        line-height: 20px;
    }

    .content_section .educational_wrap .pc_block {
        display: none;
    }

    .content_section .educational_wrap .m_block {
        display: block;
        max-width: 100%;
        margin-top: 30px;
        align-self: center;
    }

    .content_section .sub_tab_content {
        display: flex;
        flex-direction: column;
        padding: 0 20px;
    }

    .content_section .educational_wrap .sub_tab_wrap {
        display: flex;
        position: relative;
        overflow: auto hidden;
        padding-bottom: 8px;
    }

    .content_section .educational_wrap .sub_tab_wrap::-webkit-scrollbar {
        display: none;
    }

    .content_section .educational_wrap .sub_tab_wrap ul {
        align-items: flex-start;
        flex-direction: row;
        padding-inline-start: 20px;
        padding-inline-end: 20px;
        flex-wrap: nowrap;
    }

    .content_section .educational_wrap .sub_tab_wrap li a {
        width: 48px;
        height: 48px;
        font-size: 16px;
    }

    .content_section .educational_wrap .sub_tab_wrap li a.active {
        font-size: 16px;
        box-shadow: 0 3px 9px 1px rgba(0, 0, 0, 0.2);
    }

    .content_section .educational_wrap .bottom_wrap {
        margin-top: 56px;
        gap: 48px;
    }

    .content_section .educational_wrap .bottom_wrap .bottom_item {
        flex-direction: column;
        gap: 28px;
    }

    .content_section .educational_wrap .bottom_wrap .bottom_item .left {
        border-top: 3px solid #007fa0;
        width: 100%;
        padding-top: 32px;
    }

    .content_section .educational_wrap .bottom_wrap .bottom_item .left.w_300 {
        width: 100%;
    }

    .content_section .educational_wrap .bottom_wrap .bottom_item .left.w_380 {
        width: 100%;
    }

    .content_section .educational_wrap .bottom_wrap .bottom_item .left.w_430 {
        width: 100%;
    }

    .content_section .educational_wrap .bottom_wrap .bottom_item .left p {
        font-size: 24px;
        line-height: 30px;
    }

    .content_section .educational_wrap .bottom_wrap .bottom_item .right {
        width: 100%;
    }

    .content_section .educational_wrap .bottom_wrap .bottom_item .right p + p.text_bold {
        margin-top: 16px;
    }

    .content_section .educational_wrap .bottom_wrap .bottom_item .right .text_bold {
        font-size: 18px;
    }

    .content_section .educational_wrap .bottom_wrap .bottom_item .right .text_medium {
        font-size: 15px;
    }

    .content_section .educational_wrap .bottom_wrap .bottom_item .right p {
        font-size: 18px;
    }
}

/********** 교육 프로그램 - 학습자로드맵 **********/
.content_section .roadmap_wrap .pc_block {
    display: block;
    margin-top: 80px;
    width: 100%;
}

.content_section .roadmap_wrap .m_block {
    display: none;
}

.content_section .roadmap_wrap .bottom_wrap {
    display: flex;
    flex-direction: column;
    gap: 80px;
    margin-top: 100px;
}

.content_section .roadmap_wrap .bottom_wrap .bottom_item {
    display: flex;
    gap: 60px;
}

.content_section .roadmap_wrap .bottom_wrap .bottom_item .left {
    border-top: 4px solid #007fa0;
    padding-top: 20px;
    min-width: 380px;
}

.content_section .roadmap_wrap .bottom_wrap .bottom_item .left p {
    font-size: 30px;
    font-weight: 800;
    line-height: 38px;
}

.content_section .roadmap_wrap .bottom_wrap .bottom_item .right p {
    font-size: 20px;
    font-weight: 500;
}

.content_section .roadmap_wrap .bottom_wrap .bottom_item .right p + p.text_bold {
    margin-top: 28px;
}

.content_section .roadmap_wrap .bottom_wrap .bottom_item .right .text_bold {
    font-size: 20px;
    font-weight: 700;
}

.content_section .roadmap_wrap .bottom_wrap .bottom_item .right .text_medium {
    font-size: 18px;
    font-weight: 500;
}

@media screen and (max-width: 1199px) {
    .content_section .roadmap_wrap {
        display: flex;
        flex-direction: column;
    }

    .content_section .roadmap_wrap .pc_block {
        display: none;
    }

    .content_section .roadmap_wrap .m_block {
        display: block;
        max-width: 100%;
        margin-top: 30px;
        align-self: center;
    }

    .content_section .roadmap_wrap .bottom_wrap {
        margin-top: 56px;
        gap: 48px;
    }

    .content_section .roadmap_wrap .bottom_wrap .bottom_item {
        flex-direction: column;
        gap: 28px;
    }

    .content_section .roadmap_wrap .bottom_wrap .bottom_item .left {
        border-top: 3px solid #007fa0;
        min-width: 100%;
        padding-top: 32px;
    }

    .content_section .roadmap_wrap .bottom_wrap .bottom_item .left p {
        font-size: 24px;
        line-height: 30px;
    }

    .content_section .roadmap_wrap .bottom_wrap .bottom_item .right .text_bold {
        font-size: 18px;
    }

    .content_section .roadmap_wrap .bottom_wrap .bottom_item .right .text_medium {
        font-size: 15px;
    }

    .content_section .roadmap_wrap .bottom_wrap .bottom_item .right p {
        font-size: 18px;
    }
}

/********** 교육 프로그램 - 나노디그리 교육과정, 나노디그리 전공과정 **********/
.content_section .nanodegree_wrap .bottom_wrap {
    display: flex;
    flex-direction: column;
    gap: 80px;
    margin-top: 100px;
}

.content_section .nanodegree_wrap .bottom_wrap .bottom_item {
    display: flex;
    gap: 60px;
}

.content_section .nanodegree_wrap .bottom_wrap .bottom_item .left {
    border-top: 4px solid #007fa0;
    padding-top: 20px;
    width: 240px;
}

.content_section .nanodegree_wrap .bottom_wrap .bottom_item .left p {
    font-size: 30px;
    font-weight: 800;
    line-height: 38px;
}

.content_section .nanodegree_wrap .bottom_wrap .bottom_item .right p {
    font-size: 20px;
    font-weight: 500;
}

.content_section .nanodegree_wrap .bottom_wrap .bottom_item .right p + p.text_bold {
    margin-top: 28px;
}

.content_section .nanodegree_wrap .bottom_wrap .bottom_item .right .text_bold {
    font-size: 20px;
    font-weight: 700;
}

.content_section .nanodegree_wrap .bottom_wrap .bottom_item .right .text_medium {
    font-size: 18px;
    font-weight: 500;
}

.content_section .nanodegree_wrap .table_wrap {
    margin-top: 80px;
    display: flex;
    flex-direction: column;
    width: 100%;
}

.content_section .nanodegree_wrap .table_wrap .table_top {
    display: flex;
    border-radius: 10px 10px 0 0;
    overflow: hidden;
}

.content_section .nanodegree_wrap .table_wrap .table_top p {
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 60px;
}

.content_section .nanodegree_wrap .table_wrap .table_top p:first-child {
    background: #3595ae;
    width: 220px;
}

.content_section .nanodegree_wrap .table_wrap .table_top p:last-child {
    background: #66b2c6;
    width: calc(100% - 220px);
}

.content_section .nanodegree_wrap .table_wrap .table_bottom {
    display: flex;
    flex-direction: column;
    border: 2px solid #e5eff2;
    border-radius: 0 0 10px 10px;
    border-top: 0;
}

.content_section .nanodegree_wrap .table_wrap .table_bottom .table_item {
    display: flex;
    align-items: center;
}

.content_section .nanodegree_wrap .table_wrap .table_bottom .table_item + .table_item {
    border-top: 2px solid #e5eff2;
}

.content_section .nanodegree_wrap .table_wrap .table_bottom p {
    padding: 24px;
    height: 120px;
    font-size: 18px;
    display: flex;
    align-items: center;
}

.content_section .nanodegree_wrap .table_wrap .table_bottom p:first-child {
    width: 220px;
    text-align: center;
    justify-content: center;
    font-weight: 700;
}

.content_section .nanodegree_wrap .table_wrap .table_bottom p:last-child {
    width: calc(100% - 220px);
    border-left: 2px solid #e5eff2;
    font-size: 17px;
}

@media screen and (max-width: 1199px) {
    .content_section .nanodegree_wrap .table_wrap {
        margin-top: 20px;
    }

    .content_section .nanodegree_wrap .table_wrap .table_top p {
        padding: 16px;
        height: auto;
        font-size: 16px;
    }

    .content_section .nanodegree_wrap .table_wrap .table_top p:first-child {
        width: 20%;
    }

    .content_section .nanodegree_wrap .table_wrap .table_top p:last-child {
        width: 80%;
    }

    .content_section .nanodegree_wrap .table_wrap .table_bottom p {
        font-size: 15px;
        height: auto;
        padding: 16px;
    }

    .content_section .nanodegree_wrap .table_wrap .table_bottom p:first-child {
        width: 20%;
    }

    .content_section .nanodegree_wrap .table_wrap .table_bottom p:last-child {
        width: 80%;
        font-size: 15px;
    }

    .content_section .nanodegree_wrap .bottom_wrap {
        margin-top: 56px;
        gap: 48px;
    }

    .content_section .nanodegree_wrap .bottom_wrap .bottom_item {
        flex-direction: column;
        gap: 28px;
    }

    .content_section .nanodegree_wrap .bottom_wrap .bottom_item .left {
        border-top: 3px solid #007fa0;
        width: 100%;
        padding-top: 32px;
    }

    .content_section .nanodegree_wrap .bottom_wrap .bottom_item .left p {
        font-size: 24px;
        line-height: 30px;
    }

    .content_section .nanodegree_wrap .bottom_wrap .bottom_item .right .text_bold {
        font-size: 18px;
    }

    .content_section .nanodegree_wrap .bottom_wrap .bottom_item .right .text_medium {
        font-size: 15px;
    }

    .content_section .nanodegree_wrap .bottom_wrap .bottom_item .right p {
        font-size: 18px;
    }
}

@media screen and (max-width: 767px) {
    .content_section .nanodegree_wrap .table_wrap .table_top p:first-child {
        width: 30%;
    }

    .content_section .nanodegree_wrap .table_wrap .table_top p:last-child {
        width: 70%;
    }

    .content_section .nanodegree_wrap .table_wrap .table_bottom p {
        padding: 12px;
    }

    .content_section .nanodegree_wrap .table_wrap .table_bottom p:first-child {
        width: 30%;
        word-break: keep-all;
    }

    .content_section .nanodegree_wrap .table_wrap .table_bottom p:last-child {
        width: 70%;
    }
}

/********** 교육 프로그램 - 선행학점제 **********/
.content_section .credit_wrap {
    display: flex;
    flex-direction: column;
    gap: 70px;
    margin-top: 80px;
}

.content_section .credit_wrap .credit_item {
    display: flex;
    gap: 60px;
}

.content_section .credit_wrap .credit_item .left {
    border-top: 4px solid #007fa0;
    padding-top: 20px;
    min-width: 430px;
}

.content_section .credit_wrap .credit_item .left p {
    font-size: 30px;
    font-weight: 800;
    line-height: 38px;
}

.content_section .credit_wrap .credit_item .right p {
    font-size: 20px;
    font-weight: 500;
}

.content_section .credit_wrap .credit_item .right p + p.text_bold {
    margin-top: 28px;
}

.content_section .credit_wrap .credit_item .right .text_only {
    line-height: 28px;
}

.content_section .credit_wrap .credit_item .right .text_only span {
    font-weight: 700;
}

.content_section .credit_wrap .credit_item .right .text_bold {
    font-size: 20px;
    font-weight: 700;
}

.content_section .credit_wrap .credit_item .right .text_medium {
    font-size: 18px;
    font-weight: 500;
}

.content_section .credit_wrap .btn_group {
    margin-top: 10px;
}

.content_section .credit_wrap .btn_group .btn {
    width: 240px;
    height: 56px;
}

@media screen and (max-width: 1199px) {
    .content_section .credit_wrap {
        margin-top: 20px;
        gap: 48px;
    }

    .content_section .credit_wrap .credit_item {
        flex-direction: column;
        gap: 28px;
    }

    .content_section .credit_wrap .credit_item .left {
        border-top: 3px solid #007fa0;
        min-width: 100%;
        padding-top: 32px;
    }

    .content_section .credit_wrap .credit_item .left p {
        font-size: 24px;
        line-height: 30px;
    }

    .content_section .credit_wrap .credit_item .right .text_only {
        font-size: 18px;
    }

    .content_section .credit_wrap .credit_item .right .text_bold {
        font-size: 18px;
    }

    .content_section .credit_wrap .credit_item .right .text_medium {
        font-size: 16px;
    }

    .content_section .credit_wrap .btn_group .btn {
        width: 100%;
    }
}


/********** 학생지원 - 융합형교육과정 **********/
.student_support_wrap {
    margin-top: 80px;
}

.student_support_wrap .pc_block {
    display: block;
    width: 100%;
}

.student_support_wrap .m_block {
    display: none;
}

.student_support_wrap .bottom {
    margin-top: 100px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.student_support_wrap .bottom .title {
    font-size: 30px;
    line-height: 40px;
    position: relative;
    padding-top: 24px;
}

.student_support_wrap .bottom .title::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 240px;
    height: 4px;
    background: #007fa0;
}

.student_support_wrap .bottom .title span {
    font-weight: 800;
}

.student_support_wrap .bottom .sub_title {
    font-size: 24px;
    line-height: 28px;
}

.student_support_wrap .bottom .sub_title span {
    font-weight: 700;
}

.student_support_wrap .bottom .etc {
    font-size: 18px;
    color: #005e7d;
}

@media screen and (max-width: 1199px) {
    .student_support_wrap {
        margin-top: 20px;
    }

    .student_support_wrap .pc_block {
        display: none;
    }

    .student_support_wrap .m_block {
        display: block;
        width: 100%;
    }

    .student_support_wrap .bottom {
        margin-top: 30px;
        gap: 16px;
    }

    .student_support_wrap .bottom .title {
        font-size: 24px;
        line-height: 30px;
    }

    .student_support_wrap .bottom .title br {
        display: none;
    }

    .student_support_wrap .bottom .sub_title {
        font-size: 18px;
    }

    .student_support_wrap .bottom .etc {
        font-size: 16px;
    }
}

/********** 학생지원 - 대학별교육과정 **********/
.student_img_wrap {
    margin-top: 80px;
    display: flex;
    flex-direction: column;
    gap: 80px;
}

.student_img_wrap .pc_block {
    display: block;
    width: 100%;
}

.student_img_wrap .m_block {
    display: none;
}

@media screen and (max-width: 1199px) {
    .student_img_wrap {
        margin-top: 20px;
        gap: 40px;
    }

    .student_img_wrap .pc_block {
        display: none;
    }

    .student_img_wrap .m_block {
        display: block;
        max-width: 100%;
        align-self: center;
    }
}

/********** 입학안내 - 입학전 준비 **********/
.before_admission_wrap {
    margin-top: 80px;
    display: flex;
    flex-direction: column;
    gap: 80px;
}

.before_admission_wrap .before_admission_item {
    display: flex;
    gap: 80px;
}

.before_admission_wrap .before_admission_item .left_title {
    border-top: 4px solid #007fa0;
    padding-top: 20px;
    width: 240px;
    font-size: 30px;
    font-weight: 800;
    line-height: 38px;
}

.before_admission_wrap .before_admission_item .right {
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: calc(100% - 320px);
}

.before_admission_wrap .before_admission_item .right > .text {
    font-size: 20px;
}

.before_admission_wrap .before_admission_item .right .bagde_item {
    display: flex;
    align-items: center;
    gap: 12px;
}

.before_admission_wrap .before_admission_item .right .bagde_item + .bagde_item {
    margin-top: 8px;
}

.before_admission_wrap .before_admission_item .right .bagde_item .badge_text {
    background: #007fa0;
    border-radius: 20px;
    font-size: 20px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
}

.before_admission_wrap .before_admission_item .right .bagde_item .text {
    font-size: 24px;
    font-weight: 700;
}

.before_admission_wrap .before_admission_item .right .item {
    display: flex;
    gap: 16px;
    align-items: center;
}

.before_admission_wrap .before_admission_item .right .item .text {
    font-size: 20px;
}

.before_admission_wrap .before_admission_item .right .item + .item {
    margin-top: 8px;
}

.before_admission_wrap .before_admission_item .right .text_bold {
    font-size: 20px;
    font-weight: 700;
}

.before_admission_wrap .before_admission_item .right .text_medium {
    font-size: 18px;
    font-weight: 500;
}

@media screen and (max-width: 1199px) {
    .before_admission_wrap {
        margin-top: 20px;
        gap: 48px;
    }

    .before_admission_wrap .before_admission_item {
        flex-direction: column;
        gap: 28px;
    }

    .before_admission_wrap .before_admission_item .left_title {
        border-top: 3px solid #007fa0;
        min-width: 100%;
        padding-top: 32px;
        font-size: 24px;
        line-height: 30px;
    }

    .before_admission_wrap .before_admission_item .right .bagde_item .badge_text {
        width: 60px;
        font-size: 18px;
    }

    .before_admission_wrap .before_admission_item .right .bagde_item .text {
        font-size: 18px;
    }

    .before_admission_wrap .before_admission_item .right {
        width: 100%;
    }

    .before_admission_wrap .before_admission_item .right .item .text {
        font-size: 18px;
    }

    .before_admission_wrap .before_admission_item .right > .text {
        font-size: 18px;
    }

    .before_admission_wrap .before_admission_item .right .text_bold {
        font-size: 18px;
    }

    .before_admission_wrap .before_admission_item .right .text_medium {
        font-size: 15px;
    }
}

/********** 입학안내 - 입학절차 **********/
.admission_process_wrap {
    margin-top: 80px;
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

.admission_process_wrap .admission_process_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    background: #66b2c6;
    border-radius: 20px;
    flex: 1 1 10%;
    padding: 20px;
}

.admission_process_wrap .admission_process_item .num {
    font-size: 30px;
    font-weight: 700;
    color: #fff;
    align-self: flex-start;
}

.admission_process_wrap .admission_process_item .bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 71px;
}

.admission_process_wrap .admission_process_item .bottom .text {
    font-size: 24px;
    font-weight: 700;
    color: #005e7d;
}

.admission_process_wrap .admission_process_item .bottom .text_badge {
    font-size: 15px;
    font-weight: 500;
    padding: 2px 16px;
    border-radius: 5px;
    background: #005e7d;
    color: #fff;
    cursor: pointer;
}

@media screen and (max-width: 1199px) {
    .admission_process_wrap {
        margin-top: 20px;
    }

    .admission_process_wrap .admission_process_item {
        flex: auto;
        width: 100%;
    }
}

/********** 커뮤니티 공통 **********/
/* list */
.board_wrap .board_top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 40px;
    margin-bottom: 30px;
}

.board_wrap .board_top .total {
    font-size: 18px;
    font-weight: 400;
    display: flex;
    gap: 4px;
}

.board_wrap .board_top .total span {
    font-weight: 700;
}

.board_wrap .board_top .right_group {
    display: flex;
    gap: 8px;
}

.board_wrap .board_top .right_group select {
    min-width: 140px;
}

.board_wrap .board_top .right_group .input_group {
    position: relative;
}

.board_wrap .board_top .right_group .input_group input {
    width: 500px;
    border-radius: 10px;
    border: 2px solid #5b5b5b;
    font-size: 20px;
    height: 60px;
    padding: 12px 20px;
    background: #fff;
    padding-right: 90px;
}

.board_wrap .board_top .right_group .input_group i {
    position: absolute;
    top: 50%;
    right: 60px;
    font-size: 20px;
    color: #bbb;
    transform: translateY(-50%);
    cursor: pointer;
}

.board_wrap .board_top .right_group .input_group .search_button {
    background: transparent;
    width: 60px;
    height: 60px;
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.board_wrap .board_top .right_group .input_group .search_button img {
    display: block;
}

.board_wrap .board_top .faq_select select {
    min-width: 240px;
    border: 0;
    background-color: #e4f0f3;
}

.board_wrap .data_none_wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 32px;
    padding: 110px 0 130px;
}

.board_wrap .data_none_wrap p {
    font-size: 18px;
    color: #666;
}

/* detail */
.board_detail_wrap {
    margin-top: 80px;
}

.board_detail_wrap .title_wrap {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-bottom: 30px;
}

.board_detail_wrap .title_wrap .title {
    font-size: 28px;
    font-weight: 600;
    word-break: keep-all;
}

.board_detail_wrap .title_wrap .date_view {
    display: flex;
    gap: 25px;
}

.board_detail_wrap .title_wrap .date_view p {
    color: #555;
    font-weight: 400;
    position: relative;
}

.board_detail_wrap .title_wrap .date_view p + p::before {
    content: "";
    position: absolute;
    left: -12px;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 16px;
    background: #b9b9b9;
}

.board_detail_wrap .content_wrap {
    border-top: 2px solid #000;
    border-bottom: 1px solid #e3e3e3;
    padding: 30px 0;
}

.board_detail_wrap .content_wrap .file_wrap {
    margin-bottom: 60px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.board_detail_wrap .content_wrap .file_wrap button {
    background: #f3f3f3;
    border-radius: 10px;
    font-size: 18px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.board_detail_wrap .content_wrap .content_text {
    font-size: 18px;
    line-height: 30px;
    padding-bottom: 140px;
}

.board_detail_wrap .content_wrap .content_answer {
    padding: 40px;
    background: #f4f4f4;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.board_detail_wrap .content_wrap .content_answer .answer_top {
    display: flex;
    align-items: center;
    gap: 8px;
}

.board_detail_wrap .content_wrap .content_answer .answer_top img {
    display: block;
}

.board_detail_wrap .content_wrap .content_answer .answer_top p {
    display: flex;
    gap: 25px;
}

.board_detail_wrap .content_wrap .content_answer .answer_top p span {
    color: #555;
    font-weight: 400;
    position: relative;
}

.board_detail_wrap .content_wrap .content_answer .answer_top p span + span::before {
    content: "";
    position: absolute;
    left: -12px;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 16px;
    background: #b9b9b9;
}

.board_detail_wrap .content_wrap .content_answer .answer_text {
    font-size: 18px;
}

.board_detail_wrap .bottom {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 40px;
}


.board_detail_wrap .bottom button {
    width: 160px;
    height: 56px;
    border-radius: 8px;
    font-size: 18px;
}

.board_detail_wrap .bottom_btn_wrap {
    justify-content: space-between;
}

.board_detail_wrap .bottom .right_btn {
    display: flex;
    gap: 8px;
}

/* write */
.board_write_wrap {
    margin-top: 80px;
}

.board_write_wrap .board_write_content {
    padding: 40px;
    background: #f4f4f4;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.board_write_wrap .board_write_content .form_group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.board_write_wrap .board_write_content .form_group .form_label {
    color: #333;
}

.board_write_wrap .board_write_content .form_group .form_text {
    font-size: 18px;
}

.board_write_wrap .board_write_content .form_group .form_control {
    height: 48px;
    padding: 16px;
    border-radius: 4px;
    border: 1px solid #d4d4d4;
    background: #fff;
    font-size: 18px;
}

.board_write_wrap .board_write_content .form_group .file_group {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

.board_write_wrap .board_write_content .form_group .file_group input {
    position: absolute;
    left: -9999px;
    visibility: hidden;
}

.board_write_wrap .board_write_content .form_group .file_group .btn_file_find {
    width: 120px;
    height: 40px;
    padding: 12px;
    border-radius: 4px;
    background: #696969;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.board_write_wrap .board_write_content .form_group .file_group .file_item_wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    width: calc(100% - 136px);
}

.board_write_wrap .board_write_content .form_group .file_group .file_item_wrap button {
    padding: 8px 16px;
    min-height: 40px;
    border-radius: 120px;
    border: 1px solid #dfdfdf;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 16px;
}

.board_write_wrap .bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 40px;
}

.board_write_wrap .bottom button {
    width: 160px;
    height: 56px;
    border-radius: 8px;
    font-size: 18px;
}

.board_write_wrap .bottom .btn_outline_dark {
    color: #000;
    border: 1px solid #777;
    background: #fff;
}

.board_write_wrap .bottom .btn_submit {
    background: #007fa0;
    color: #fff;
}

@media screen and (max-width: 1199px) {
    .board_wrap .board_top {
        margin-top: 30px;
        margin-bottom: 20px;
        gap: 10px;
    }

    .board_wrap .board_top .total {
        display: none !important;
    }

    .board_wrap .board_top .faq_select select {
        min-width: 100%;
        height: 48px;
        font-size: 16px;
        padding: 8px 32px 8px 12px;
        background-color: #e4f0f3;
        background-size: 12px;
    }

    .board_wrap .board_top .right_group {
        width: 100%;
    }

    .board_wrap .board_top .right_group select {
        min-width: 90px;
        height: 48px;
        font-size: 16px;
        padding: 8px 32px 8px 12px;
        background: #fff url(../images/icon_select_down.png) no-repeat calc(100% - 12px) center;
        background-size: 12px;
    }

    .board_wrap .board_top .right_group .input_group {
        width: calc(100% - 88px);
    }

    .board_wrap .board_top .right_group .input_group input {
        width: 100%;
        height: 48px;
        font-size: 16px;
        padding: 8px 70px 8px 12px;
    }

    .board_wrap .board_top .right_group .input_group i {
        right: 48px;
    }

    .board_wrap .board_top .right_group .input_group .search_button {
        width: 48px;
        height: 48px;
    }

    .board_wrap .board_faq_top .faq_select {
        width: 50%;
    }

    .board_wrap .board_faq_top .right_group {
        width: calc(50% - 10px);
    }

    .board_wrap .board_faq_top .right_group .input_group {
        width: 100%;
    }

    .board_wrap .data_none_wrap {
        padding: 80px 0;
    }

    .board_wrap .data_none_wrap p {
        font-size: 16px;
    }

    .board_detail_wrap {
        margin-top: 20px;
    }

    .board_detail_wrap .title_wrap .title {
        font-size: 20px;
        line-height: 26px;
    }

    .board_detail_wrap .title_wrap .date_view p {
        font-size: 14px;
    }

    .board_detail_wrap .title_wrap .date_view p + p::before {
        height: 14px;
    }

    .board_detail_wrap .content_wrap {
        padding: 20px 0;
    }

    .board_detail_wrap .content_wrap .content_text {
        font-size: 16px;
        line-height: 24px;
    }

    .board_detail_wrap .content_wrap .file_wrap {
        margin-bottom: 20px;
    }

    .board_detail_wrap .content_wrap .file_wrap button {
        font-size: 15px;
        padding: 12px;
    }

    .board_detail_wrap .content_wrap .content_answer {
        padding: 20px;
    }

    .board_detail_wrap .content_wrap .content_answer .answer_top p {
        gap: 2px;
        flex-direction: column;
    }

    .board_detail_wrap .content_wrap .content_answer .answer_top p span {
        font-size: 14px;
    }

    .board_detail_wrap .content_wrap .content_answer .answer_top p span + span::before {
        display: none;
    }

    .board_detail_wrap .content_wrap .content_answer .answer_text {
        font-size: 16px;
        line-height: 24px;
    }

    .board_detail_wrap .bottom_btn_wrap {
        gap: 8px;
    }

    .board_detail_wrap .bottom button {
        width: 70px;
        height: 48px;
        font-size: 16px;
    }

    .board_write_wrap {
        margin-top: 20px;
    }

    .board_write_wrap .board_write_content {
        padding: 20px 20px 4px 20px;
    }

    .board_write_wrap .board_write_content .form_group .file_group {
        flex-direction: column;
    }

    .board_write_wrap .board_write_content .form_group .file_group .file_item_wrap {
        width: 100%;
    }

    .board_write_wrap .board_write_content .form_group .file_group .file_item_wrap button {
        font-size: 14px;
    }

    .board_write_wrap .bottom {
        gap: 12px;
        margin-top: 20px;
    }

    .board_write_wrap .bottom button {
        width: calc(50% - 6px);
        height: 48px;
        font-size: 16px;
    }
}

/********** 페이지네이션 **********/
.pagination {
    margin-top: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.pagination_mobile {
    display: none !important;
}

.pagination a {
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
}

.pagination a.active {
    border-radius: 100px;
    color: #fff;
    background: #747474;
}

.pagination a.disabled {
    opacity: 0.3;
    cursor: inherit;
}

@media screen and (max-width: 1199px) {
    .pagination {
        margin-top: 20px;
        display: none !important;
    }

    .pagination_mobile {
        display: flex !important;
    }

    .pagination .m_none {
        display: none;
    }

    .pagination a {
        width: 30px;
        height: 30px;
    }
}

/********** 커뮤니티 - 교육후기 **********/
.education_review_content {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.education_review_content .education_review_item {
    padding: 30px;
    border-radius: 10px;
    background: #f3f3f3;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 54px;
    width: calc(33.3333% - 20px);
}

.education_review_content .education_review_fix {
    background: #e4f0f3;
}

.education_review_content .education_review_item:hover {
    box-shadow: 0 0 0 3px #bfdce3 inset;
}

.education_review_content .education_review_item .title .text {
    font-size: 20px;
    line-height: 24px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    word-break: keep-all;
}

.education_review_content .education_review_fix .title {
    display: flex;
    gap: 12px;
}

.education_review_content .education_review_fix .title .icon {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #007fa0;
    border-radius: 8px;
}

.education_review_content .education_review_fix .title .text {
    width: calc(100% - 44px);
    font-size: 20px;
    line-height: 24px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.education_review_content .education_review_item .bottom_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.education_review_content .education_review_item .bottom_wrap .bottom_item {
    display: flex;
    align-items: center;
    gap: 16px;
}

.education_review_content .education_review_item .bottom_wrap .name {
    color: #333;
}

.education_review_content .education_review_item .bottom_wrap .date {
    color: #777;
}

@media screen and (max-width: 1199px) {
    .education_review_content {
        flex-direction: column;
        gap: 12px;
    }

    .education_review_content .education_review_item {
        width: 100%;
        gap: 16px;
        padding: 20px;
    }

    .education_review_content .education_review_item .title .text {
        font-size: 16px;
        line-height: 20px;
        display: block;
        white-space: nowrap;
    }

    .education_review_content .education_review_fix .title {
        flex-direction: column;
        gap: 8px;
    }

    .education_review_content .education_review_fix .title .icon {
        width: 24px;
        height: 24px;
        border-radius: 4px;
    }

    .education_review_content .education_review_fix .title .text {
        font-size: 16px;
        line-height: 20px;
        width: 100%;
        display: block;
        white-space: nowrap;
    }

    .education_review_content .education_review_fix .title .icon img {
        width: 14px;
    }

    .education_review_content .education_review_item .bottom_wrap p {
        font-size: 14px;
    }

    .education_review_content .education_review_item .bottom_wrap img {
        width: 15px;
    }
}

/********** 커뮤니티 - 자유게시판 **********/
.free_board_list {
    border-top: 2px solid #000;
    table-layout: fixed;
}

.free_board_list tr th {
    height: 56px;
    font-size: 16px;
    font-weight: 500;
    color: #333;
    border-bottom: 1px solid #e3e3e3;
}

.free_board_list tr td {
    height: 64px;
    border-bottom: 1px solid #e3e3e3;
    padding: 12px;
    text-align: center;
    font-size: 16px;
}

.free_board_list tr td.color_dark {
    color: #333;
    font-weight: 500;
}

.free_board_list tr.fix_item {
    background: #f2fafc;
}

.free_board_list tr.fix_item td .fix_img {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #007fa0;
    margin: 0 auto;
}

.free_board_list tr.fix_item td .m_block {
    display: none;
}

.free_board_list tr td.lg_text a {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
}

.free_board_list tr td.lg_text p {
    font-size: 18px;
    font-weight: 600;
    text-align: left;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.free_board_list tr td.color_gray {
    color: #777;
    font-weight: 400;
}

@media screen and (max-width: 1199px) {
    .free_board_list {
        border-top: 0;
    }

    .free_board_list colgroup {
        display: none;
    }

    .free_board_list thead {
        display: none;
    }

    .free_board_list tr {
        display: grid;
        grid-template-columns: auto 1fr;
        gap: 12px;
        border-bottom: 1px solid #e3e3e3;
        padding: 20px 0;
        position: relative;
    }

    .free_board_list tr:first-child {
        padding-top: 10px;
    }

    .free_board_list tr td:first-child {
        display: none;
    }

    .free_board_list tr td {
        height: auto;
        padding: 0;
        border: none;
    }

    .free_board_list tr td.date {
        text-align: center;
    }

    .free_board_list tr td.color_dark {
        font-size: 14px;
    }

    .free_board_list tr td.lg_text {
        font-size: 16px;
    }

    .free_board_list tr td.lg_text .answer_img {
        width: 15px;
    }

    .free_board_list tr.fix_item td.lg_text .m_block {
        width: 24px;
        height: 24px;
        border-radius: 4px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #007fa0;
    }

    .free_board_list tr.fix_item td.lg_text .m_block img {
        width: 14px;
    }

    .free_board_list tr td.lg_text p {
        width: calc(100% - 32px);
    }

    .free_board_list tr td.color_gray {
        font-size: 14px;
    }

    .free_board_list tr td:nth-child(2) {
        grid-column: 1 / 3;
    }

    .free_board_list tr td:nth-child(3) {
        order: 2;
        text-align: left;
    }

    .free_board_list tr td:nth-child(4) {
        order: 3;
        text-align: left;
    }

    .free_board_list tr.fix_item {
        background: #fff;
    }
}

/********** 커뮤니티 - 자료실 **********/
.data_room_wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.data_room_wrap .data_room_item {
    padding: 30px;
    border-radius: 10px;
    background: #f3f3f3;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 24px;
    width: calc(33.3333% - 20px);
}

.data_room_wrap .data_room_item:hover {
    box-shadow: 0 0 0 3px #bfdce3 inset;
}

.data_room_wrap .data_room_item .title_wrap {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.data_room_wrap .data_room_item .title_wrap .title {
    display: flex;
    align-items: flex-end;
    gap: 8px;
}

.data_room_wrap .data_room_item .title_wrap .title p {
    font-size: 20px;
    line-height: 24px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    word-break: keep-all;
}

.data_room_wrap .data_room_item .title_wrap .title img {
    display: inline-block;
    position: relative;
    top: 0;
}

.data_room_wrap .data_room_item .date {
    text-align: right;
    color: #777;
    font-weight: 400;
}

@media screen and (max-width: 1199px) {
    .data_room_wrap {
        flex-direction: column;
        gap: 12px;
    }

    .data_room_wrap .data_room_item {
        width: 100%;
        gap: 16px;
        padding: 20px;
    }

    .data_room_wrap .data_room_item .title_wrap .title {
        width: calc(100% - 35px);
    }

    .data_room_wrap .data_room_item .title_wrap .title p {
        font-size: 16px;
        line-height: 20px;
        display: block;
        white-space: nowrap;
    }

    .data_room_wrap .data_room_item .title_wrap .title img {
        width: 15px;
        top: -3px;
    }

    .data_room_wrap .data_room_item .date {
        font-size: 14px;
        text-align: left;
    }
}

/********** 커뮤니티 - qna **********/
.qna_list {
    border-top: 2px solid #000;
    table-layout: fixed;
}

.qna_list tr th {
    height: 56px;
    font-size: 16px;
    font-weight: 500;
    color: #333;
    border-bottom: 1px solid #e3e3e3;
}

.qna_list tr td {
    height: 64px;
    border-bottom: 1px solid #e3e3e3;
    padding: 12px;
    text-align: center;
    font-size: 16px;
}

.qna_list tr td.color_dark {
    color: #333;
    font-weight: 500;
}

.qna_list tr td.lg_text {
    font-size: 18px;
    font-weight: 600;
    text-align: left;
}

.qna_list tr td.lg_text a {
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.qna_list tr td.color_gray {
    color: #777;
    font-weight: 400;
}

.qna_list tr td span {
    padding: 4px 10px;
    border-radius: 4px;
    color: #fff;
    font-size: 15px;
    font-weight: 400;
}

.qna_list tr td span.answer_wait {
    background: #a4a4a4;
}

.qna_list tr td span.answer_complete {
    background: #444;
}

@media screen and (max-width: 1199px) {
    .qna_list {
        border-top: 0;
    }

    .qna_list colgroup {
        display: none;
    }

    .qna_list thead {
        display: none;
    }

    .qna_list tr {
        display: grid;
        grid-template-columns: auto 1fr;
        gap: 4px;
        border-bottom: 1px solid #e3e3e3;
        padding: 20px 0;
        position: relative;
    }

    .qna_list tr:first-child {
        padding-top: 10px;
    }

    .qna_list tr td:first-child {
        display: none;
    }

    .qna_list tr td {
        height: auto;
        padding: 0;
        border: none;
    }

    .qna_list tr td.date {
        text-align: center;
    }

    .qna_list tr td.color_dark {
        font-size: 14px;
    }

    .qna_list tr td.lg_text {
        font-size: 16px;
    }

    .qna_list tr td.lg_text a {
        white-space: nowrap;
        display: block;
    }

    .qna_list tr td.color_gray {
        font-size: 14px;
    }

    .qna_list tr td span {
        font-size: 12px;
        display: inline-block;
        padding: 2px 10px;
        width: 65px;
    }

    .qna_list tr td:nth-child(2) {
        grid-column: 1 / 4;
    }

    .qna_list tr td:nth-child(3) {
        text-align: left;
        display: flex;
        align-items: center;
    }

    .qna_list tr td:nth-child(4) {
        text-align: left;
        display: flex;
        align-items: center;
    }

    .qna_list tr td:nth-child(5) {
        grid-column: 1 / 4;
        display: flex;
        justify-content: flex-end;
    }
}

/********** 커뮤니티 - faq **********/
.faq_wrap {
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    position: relative;
    z-index: 1;
}

.faq_wrap .faq_list_wrap {
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    position: relative;
    z-index: 1;
}

.faq_wrap .faq_item {
    display: flex;
    flex-direction: column;
    background: #f3f3f3;
    border-radius: 20px;
    overflow: hidden;
}

.faq_wrap .faq_item .faq_title {
    display: flex;
    align-items: baseline;
    gap: 16px;
    padding: 30px 40px;
    cursor: pointer;
}

.faq_wrap .faq_item .faq_title span {
    border-radius: 50px;
    background: #dfdfdf;
    padding: 8px 24px;
    font-weight: 600;
    flex: none;
}

.faq_wrap .faq_item .faq_title p {
    width: 100%;
    font-size: 20px;
    font-weight: 600;
    overflow-wrap: anywhere;
}

.faq_wrap .faq_item .faq_title img {
    flex: none;
    transition: all 0.3s;
}

.faq_wrap .faq_item .faq_title img.open {
    transform: rotate(180deg);
}

.faq_wrap .faq_item .faq_content {
    display: none;
    background: #f2fafc;
    border-radius: 0 0 20px 20px;
    padding: 30px 40px;
}

.faq_wrap .faq_item .faq_content pre {
    font-size: 18px;
    overflow-wrap: anywhere;
}

@media screen and (max-width: 1199px) {
    .faq_wrap .faq_item .faq_title {
        padding: 20px;
        display: grid;
        grid-template-columns: 1fr 21px;
    }

    .faq_wrap .faq_item .faq_title span {
        padding: 4px 16px;
        font-size: 14px;
        grid-column: 1 / 3;
        width: fit-content;
    }

    .faq_wrap .faq_item .faq_title p {
        font-size: 16px;
    }

    .faq_wrap .faq_item .faq_content {
        padding: 20px;
    }

    .faq_wrap .faq_item .faq_content pre {
        font-size: 16px;
    }
}

/********** 커뮤니티 - 공지사항 **********/
.notice_sub_wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.notice_sub_wrap .notice_sub_list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.notice_sub_wrap .notice_item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #f3f3f3;
    border-radius: 10px;
    padding: 30px 40px;
}

.notice_sub_wrap .notice_item_fix {
    background: #e4f0f3;
}

.notice_sub_wrap .notice_item:hover {
    box-shadow: 0 0 0 3px #bfdce3 inset;
}

.notice_sub_wrap .notice_item .title_wrap {
    display: flex;
    align-items: center;
    gap: 12px;
    width: calc(100% - 120px);
}

.notice_sub_wrap .notice_item .title_wrap .fix {
    border-radius: 10px;
    background: #007fa0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.notice_sub_wrap .notice_item .title_wrap .fix img {
    display: block;
}

.notice_sub_wrap .notice_item .title_wrap .file_group {
    display: flex;
    gap: 8px;
    align-items: center;
    width: calc(100% - 100px);
}

.notice_sub_wrap .notice_item .title_wrap .file_group .title {
    font-size: 20px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.notice_sub_wrap .notice_item .img_group {
    display: flex;
    align-items: center;
    gap: 8px;
}

.notice_sub_wrap .notice_item .date {
    color: #777;
    font-size: 18px;
    font-weight: 400;
}

@media screen and (max-width: 1199px) {
    .notice_sub_wrap {
        gap: 8px;
    }

    .notice_sub_wrap .notice_item {
        padding: 20px;
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .notice_sub_wrap .notice_item .title_wrap {
        width: 100%;
        gap: 8px;
    }

    .notice_sub_wrap .notice_item .title_wrap .fix {
        width: 24px;
        height: 24px;
        border-radius: 4px;
    }

    .notice_sub_wrap .notice_item .title_wrap .fix img {
        width: 14px;
    }

    .notice_sub_wrap .notice_item .title_wrap .file_group {
        width: calc(100% - 32px);
    }

    .notice_sub_wrap .notice_item .title_wrap .file_group .title {
        font-size: 16px;
    }

    .notice_sub_wrap .notice_item .title_wrap .file_group img {
        width: 15px;
    }

    .notice_sub_wrap .notice_item .date {
        font-size: 14px;
    }
}

/********** footer **********/
.footer {
    background: #383838;
}

.footer_inner {
    width: 1200px;
    margin: 0 auto;
    padding: 50px 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.footer_inner .footer_logo {
    color: #fff;
    font-size: 22px;
    font-weight: 700;
}

.footer_inner .agree_menu {
    display: flex;
    gap: 33px;
}

.footer_inner .agree_menu a {
    color: #fff;
    font-weight: 600;
    position: relative;
}

.footer_inner .agree_menu a:first-child {
    color: #76e3ff;
}

.footer_inner .agree_menu a + a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -16px;
    transform: translateY(-50%);
    width: 1px;
    height: 14px;
    background: #686868;
}

.footer_inner .middle p {
    font-size: 14px;
    color: #fff;
}

.footer_inner .middle p span {
    color: #717171;
    font-size: 12px;
    padding: 0 8px;
}

.footer_inner .middle p .m_block {
    display: block;
    height: 0;
}

.footer_inner .copyright {
    color: #a5a5a5;
    font-weight: 400;
    font-size: 13px;
}

.footer_inner .img_wrap {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-top: 24px;
}

.footer_inner .img_wrap img {
    display: block;
}

@media screen and (max-width: 1199px) {
    .footer_inner {
        width: auto;
        flex-direction: column;
        padding: 30px 20px 40px 20px;
    }

    .footer_inner .agree_menu a {
        font-size: 13px;
    }

    .footer_inner .middle p {
        font-size: 12px;
    }

    .footer_inner .middle p span {
        font-size: 11px;
        padding: 0 4px;
    }

    .footer_inner .middle p .m_block {
        display: inline;
        height: 0;
    }

    .footer_inner .copyright {
        font-size: 11px;
    }

    .footer_inner .img_wrap {
        gap: 20px;
    }

    .footer_inner .img_wrap img {
        width: 130px;
    }
}

/*************** 개인정보 처리방침 ***************/
.policy_container {
    word-break: keep-all;
    margin-top: 40px;
}

.policy_container .top_box {
    background: #f8f8f8;
    border: 1px solid #e3e3e3;
    padding: 20px;
    font-size: 18px;
}

.policy_container .labeling_wrap {
    margin-top: 20px;
}

.policy_container .labeling_wrap .top_title {
    border-top: 2px solid #000;
    border-bottom: 1px solid #e3e3e3;
    padding: 12px 0;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
}

.policy_container .labeling_wrap .item_wrap {
    display: flex;
    flex-wrap: wrap;
}

.policy_container .labeling_wrap .item_wrap .item {
    width: calc(100% / 3);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 16px 0;
    border-bottom: 1px solid #e3e3e3;
    border-right: 1px solid #e3e3e3;
}

.policy_container .labeling_wrap .item_wrap .item:nth-child(3n) {
    border-right: 0;
}

.policy_container .labeling_wrap .item_wrap .item img {
    display: block;
    margin-bottom: 10px;
}

.policy_container .labeling_wrap .item_wrap .item .title {
    font-weight: 700;
    font-size: 18px;
}

.policy_container .labeling_wrap .item_wrap .item .text {
    color: #777;
}

.policy_container .index_wrap {
    margin-top: 20px;
}

.policy_container .index_wrap .top_title {
    border-top: 2px solid #000;
    border-bottom: 1px solid #e3e3e3;
    padding: 12px 0;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
}

.policy_container .index_wrap .item_wrap {
    display: flex;
    flex-wrap: wrap;
}

.policy_container .index_wrap .item_wrap .item {
    width: calc(100% / 2);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 16px 0;
    border-bottom: 1px solid #e3e3e3;
    border-right: 1px solid #e3e3e3;
}

.policy_container .index_wrap .item_wrap .item:nth-child(even) {
    border-right: 0;
}

.policy_container .text_box_wrap {
    margin-top: -80px;
    padding-top: 80px;
}

.policy_container .text_box_wrap .title {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 16px;
    padding-top: 50px;
}

.policy_container .text_box_wrap .title p {
    font-size: 28px;
    font-weight: 700;
}

.policy_container .text_box_wrap .title img {
    width: 34px;
}

.policy_container .text_box_wrap .title .img_group {
    display: flex;
    gap: 8px;
}

.policy_container .text_box_wrap .text_group {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.policy_container .text_box_wrap .num_text {
    display: flex;
    gap: 6px;
    font-size: 18px;
    font-weight: 600;
}

.policy_container .text_box_wrap .num_text span {
    width: 16px;
}

.policy_container .text_box_wrap .hyphen_text {
    display: flex;
    gap: 8px;
    padding-left: 22px;
}

.policy_container .text_box_wrap .hyphen_text span {
    width: 8px;
}

.policy_container .text_box_wrap .text_group > a {
    font-size: 18px;
    color: #007fa0;
    align-self: flex-start;
}

.policy_container .text_box_wrap .sub_num_text {
    display: flex;
    gap: 6px;
    padding-left: 22px;
}

.policy_container .text_box_wrap .sub_num_text a {
    font-size: 16px;
    color: #007fa0;
}

.policy_container .text_box_wrap .sub_num_text span {
    width: 14px;
}

.policy_container .text_box_wrap .sub_num_text_02 {
    display: flex;
    gap: 6px;
    padding-left: 42px;
}

.policy_container .text_box_wrap .sub_ko_text {
    display: flex;
    gap: 6px;
}

.policy_container .text_box_wrap .btn_group {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: flex-start;
    padding-left: 22px;
}

.policy_container .text_box_wrap .btn_group .btn {
    font-size: 16px;
    border-radius: 0;
}

.policy_container .agree_list {
    border-top: 2px solid #000;
    table-layout: fixed;
    margin-top: 10px;
}

.policy_container .agree_list tr th {
    height: 56px;
    font-size: 16px;
    font-weight: 500;
    color: #333;
    border-bottom: 1px solid #e3e3e3;
    border-right: 1px solid #e3e3e3;
    background: #f7f7f7;
}

.policy_container .agree_list tr th:last-child {
    border-right: 0;
}

.policy_container .agree_list tr td {
    height: 64px;
    border-bottom: 1px solid #e3e3e3;
    border-right: 1px solid #e3e3e3;
    padding: 12px;
    text-align: center;
    font-size: 16px;
}

.policy_container .agree_list tr td:last-child {
    border-right: 0;
}

.policy_container .agree_list tr td .text_red {
    color: #f51b1b;
}

.policy_container .agree_list .table_text_group p {
    padding-left: 0;
}

@media screen and (max-width: 1199px) {
    .policy_container {
        margin-top: 20px;
    }

    .policy_container .top_box {
        font-size: 16px;
    }

    .policy_container .labeling_wrap .item_wrap .item {
        width: 100%;
        border-right: 0;
    }

    .policy_container .labeling_wrap .item_wrap .item img {
        width: 70px;
    }

    .policy_container .index_wrap .item_wrap .item {
        width: 100%;
        border-right: 0;
        padding: 10px 0;
    }

    .policy_container .text_box_wrap {
        margin-top: -59px;
        padding-top: 59px;
    }

    .policy_container .text_box_wrap .title {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        padding-top: 30px;
    }

    .policy_container .text_box_wrap .title p {
        font-size: 22px;
    }

    .policy_container .text_box_wrap .num_text {
        font-size: 16px;
    }

    .policy_container .text_box_wrap .hyphen_text {
        font-size: 14px;
    }

    .policy_container .text_box_wrap .text_group > a {
        font-size: 16px;
    }

    .policy_container .text_box_wrap .sub_num_text {
        font-size: 14px;
    }

    .policy_container .text_box_wrap .sub_num_text span {
        font-size: 14px;
    }

    .policy_container .text_box_wrap .sub_num_text a {
        font-size: 14px;
    }

    .policy_container .text_box_wrap .sub_num_text_02 {
        font-size: 14px;
    }

    .policy_container .agree_table_wrap {
        overflow-x: auto;
    }

    .policy_container .agree_list {
        min-width: 1200px;
    }

    .policy_container .agree_list tr th, .policy_container .agree_list tr td {
        font-size: 14px;
    }

    .policy_container .text_box_wrap .btn_group .btn {
        height: fit-content;
        padding: 12px 16px;
        text-align: left;
    }
}

/*************** 약관 ***************/
.terms_wrap {
    margin-top: 80px;
    word-break: keep-all;
    word-wrap: break-word;
}

.terms_wrap h3 {
    font-size: 24px;
    font-weight: 600;
}

.terms_wrap h3 span {
    font-size: 30px;
    font-weight: 700;
}

.terms_wrap .text-huge {
    font-size: 22px;
    font-weight: 600;
}

.terms_wrap .text-huge {
    font-size: 25px;
}

.terms_wrap .table {
    margin-top: 10px;
    overflow-x: auto;
}

.terms_wrap .table table {
    table-layout: fixed;
    min-width: 800px;
}

.terms_wrap .table thead th {
    border: 1px solid #e3e3e3;
    height: 56px;
    color: #333;
    padding: 10px;
    background: #f4f4f4;
}

.terms_wrap .table tbody td {
    height: 64px;
    padding: 10px;
    border: 1px solid #e3e3e3;
}

.terms_wrap a {
    color: #007fa0;
}

@media screen and (max-width: 1199px) {
    .terms_wrap {
        margin-top: 30px;
    }
}

/*************** modal ***************/
.modal_wrap {
    position: fixed;
    z-index: 999;
    top: 0;
    left: 0;
    display: flex !important;
    visibility: hidden;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.3s ease-out;
}

.modal_wrap.show {
    visibility: visible;
    opacity: 1;
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
}

.modal_content {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
    transform: translate(-50%, -50%);
    border-radius: 20px;
    background: #fff;
    max-height: 90%;
    overflow: hidden;
    box-shadow: 0 3px 9px 0 rgba(0, 0, 0, 0.2);
}

.modal_content.modal_lg {
    max-width: 850px;
}

.modal_content.modal_xl {
    max-width: 1200px;
}

.modal_header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 40px 30px 30px;
}

.modal_header .modal_title {
    font-size: 24px;
    font-weight: 800;
    line-height: 24px;
}

.modal_header .btn {
    padding: 0;
    width: 18px;
    height: 18px;
}

.modal_header .btn img {
    width: 100%;
}

.modal_body {
    overflow: auto;
    padding: 0 30px;
}

.modal_body p {
    font-size: 15px;
    line-height: 20px;
}

.modal_body p span.name {
    font-weight: 700;
}

.modal_body p span.id {
    font-weight: 700;
    color: #007fa0;
}

.modal_body::-webkit-scrollbar {
    width: 4px;
}

.modal_body::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.15);
}

.modal_body .form_group {
    background: #f4f4f4;
    padding: 16px 16px 10px 16px;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
}

.modal_body .form_group + .form_group {
    margin-top: 16px;
}

.modal_body .form_group .label {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 15px;
    line-height: 16px;
    color: #555;
}

.modal_body .form_group input {
    width: 100%;
    height: 34px;
    padding: 0;
    font-size: 16px;
}

.modal_body .form_find_group {
    flex-direction: inherit;
    justify-content: space-between;
    gap: 12px;
    margin-top: 60px;
}

.modal_body .form_find_group .left {
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: calc(100% - 102px);
}

.modal_body .form_find_group .left input {
    height: 24px;
    font-size: 16px;
}

.modal_body .form_find_group button {
    background: #777;
    border-radius: 6px;
    width: 90px;
    height: 38px;
    font-size: 15px;
    color: #fff;
}

.modal_body .find_result .time {
    margin-top: 5px;
    color: #f51b1b;
}

.modal_body .find_result button.disabled {
    opacity: 0.5;
    cursor: inherit;
}

.modal_body .smart_wrap {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.modal_body .smart_wrap .lg_title {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #f0f8fa;
    color: #007fa0;
    padding: 10px;
    border-radius: 8px;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 5px;
}

.modal_body.pdf_modal_body {
    padding: 0;
    overflow: hidden;
}

.modal_body.pdf_modal_body .pdf_view_wrap {
    height: 600px;
}

.modal_footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 30px 30px 40px;
}

.modal_footer .btn {
    width: 120px;
    height: 48px;
    font-size: 16px;
}

.modal_footer .btn_group {
    display: flex;
    gap: 8px;
}

.modal_view_content .modal_footer .btn {
    width: fit-content;
}

/* alert */
.modal_alert {
    padding: 20px 32px 24px;
    max-width: 480px !important;
    background: #fff;
    border-radius: 20px;
    max-height: fit-content;
    height: auto;
}

.modal_alert.info {
    border: 2px solid #c6c6c6;
}

.modal_alert.success {
    border: 2px solid #acf7bc;
}

.modal_alert.warning {
    border: 2px solid #ffe79d;
}

.modal_alert.error {
    border: 2px solid #ffd1d0;
}

.modal_alert.question {
    border: 2px solid #cbbffc;
}

.modal_alert .modal_body {
    display: flex;
    flex-direction: column;
    padding: 0;
    max-height: fit-content;
    height: auto;
}

.modal_alert .modal_body p {
    font-size: 15px;
    text-align: left;
}

.modal_alert .modal_body img {
    display: block;
    width: 32px;
    height: 32px;
    margin-bottom: 12px;
}

.modal_alert .modal_footer {
    padding: 0;
    margin-top: 24px;
    justify-content: flex-end;
}

.modal_alert .modal_footer .btn {
    min-width: 80px;
    height: 32px;
    border-radius: 4px;
    font-size: 14px;
    width: auto;
}

@media screen and (max-width: 1199px) {
    .modal_content {
        max-width: 100% !important;
        max-height: 100%;
        border-radius: 0;
        width: 100%;
        height: 100%;
    }

    .modal_header {
        padding: 20px;
    }

    .modal_header .modal_title {
        font-size: 18px;
        line-height: 18px;
    }

    .modal_header .btn {
        width: 16px;
        height: 16px;
    }

    .modal_header .btn img {
        width: 16px;
    }

    .modal_body {
        padding: 20px;
    }

    .modal_btn_none_body {
        max-height: calc(100vh - 67px);
    }

    .modal_footer {
        padding: 20px;
    }

    .modal_body .smart_wrap .lg_title {
        padding: 8px;
        font-size: 16px;
    }

    .modal_body.pdf_modal_body {
        padding: 0;
        overflow: hidden;
    }

    .modal_body.pdf_modal_body .pdf_view_wrap {
        height: 400px;
    }

    .modal_content.modal_alert {
        max-width: 480px !important;
        border-radius: 20px;
        max-height: fit-content;
        height: auto;
        width: calc(100% - 40px);
        padding: 20px 24px;
    }

    .modal_view_content .modal_footer {
        flex-direction: column;
    }

    .modal_view_content .modal_footer .btn {
        width: 100%;
    }
}

/* ck editor */
.ck.ck-editor {
    width: 100% !important;
}

.ck.ck-editor__main > .ck-read-only {
    border: 0 !important;
    padding: 0 !important;
}

.ck.ck-editor__editable.ck-focused:not(.ck-editor__nested-editable) {
    border: 1px solid #ccced1 !important;
    box-shadow: none !important;
}

.ck.ck-editor__main > .ck-read-only.ck-focused:not(.ck-editor__nested-editable) {
    border: transparent !important;
}

.ck.ck-editor__main > .ck-read-only.ck-editor__editable_inline > :first-child {
    margin-top: 0 !important;
}

.ck.ck-editor__main > .ck-read-only.ck-editor__editable_inline > :last-child {
    margin-bottom: 0 !important;
}

.image img {
    display: block;
    width: 100%;
}

.ck-read-only.ck-editor__editable_inline {
    min-height: auto !important;
}

.ck-editor__editable_inline {
    min-height: 300px;
    padding: 0 16px !important;
}

.ck .ck-link_selected {
    background: transparent !important;
    color: #007fa0;
}

.ck .ck-link_selected:hover {
    text-decoration: underline;
}

.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label {
    color: #007fa0 !important;
    font-family: "pretendard", "맑은 고딕", "돋움", Dotum, Arial, sans-serif !important;
    font-weight: 500 !important;
}

.ck.ck-editor p,
.ck.ck-editor span {
    word-break: keep-all !important;
}

.ck-reset_all :not(.ck-reset_all-excluded *), .ck.ck-reset, .ck.ck-reset_all {
    position: inherit !important;
}
