/* 팝업 */
.pop-parent {
    position: fixed;
    top: 20%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 999;
    transition: all 0.2s;
}

.pop-parent .m-ratioBox-wrap {
    width: 100%;
    padding-top: 100%;
    position: relative;
    overflow: hidden;
}
.pop-parent .m-ratioBox-wrap .m-ratioBox {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center;
}
/*
.m-ratioBox-wrap .m-ratioBox:after {content:""; width:83px; height:28px; position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); background:url("../img/logo.png") no-repeat; background-size:100%; opacity:0.4;}
 */
.pop-parent .m-ratioBox-wrap img {
    display: block;
    width: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 1;
}
.pop-parent .m-ratioBox-wrap iframe {
    width: 105%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 1;
}

.pop-parent .swiper {
    overflow: hidden;
}
.pop-parent .swiper-container {
    overflow: visible;
}
.pop-parent .swiper-pagination {
    display: flex;
}
.pop-parent .pop {
    width: 500px;
    position: relative;
}
.pop-parent .pop .btn-toggle {
    width: 40px;
    height: 40px;
    position: relative;
    background-color: black;
    cursor: pointer;
    display: none;
}
.pop-parent .pop .btn-toggle img {
    width: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.3s;
}
.pop-parent .pop-btns {
    display: flex;
    justify-content: space-between;
    position: absolute;
    width: 100%;
    bottom: -35px;
    left: 0px;
    background-color: #3c3c3c;
    opacity: 1;
}
.pop-parent .pop-btns a {
    color: #fff;
    padding: 7px 14px;
}
.pop-parent .pop-btns #oneday_check {
    position: absolute;
    clip: rect(0, 0, 0, 0);
}
.pop-parent .pop-btns #oneday_check + label {
    display: flex;
    align-items: center;
    padding: 0 10px;
    font-size: 14px;
    color: #fff;
    cursor: pointer;
}
.pop-parent .pop-btns #oneday_check + label:before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    margin-right: 10px;
    border: 1px solid #fff;
}
.pop-parent .pop-btns #oneday_check:checked + label .icon {
    position: absolute;
    left: 7px;
    top: 7px;
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url("/img/check_checked.png") no-repeat center center;
}

.pop-parent .pop .swiper-btn-control {
    width: 8px;
    height: 11px;
    margin-left: 16px;
    position: relative;
    top: 2px;
}
.pop-parent .swiper-control {
    display: flex;
    align-items: center;
    position: absolute;
    top: 21px;
    right: 20px;
    z-index: 2;
}
.pop-parent .swiper-control .swiper-pagination {
    position: static;
}
.pop-parent .swiper-pagination-bullet {
    flex: 0 0 auto;
    width: 10px;
    height: 10px;
    margin: 0 5px;
    border-radius: 0;
    border: 1px solid white;
    opacity: 0.5;
    background-color: transparent;
}
.pop-parent .swiper-pagination-bullet-active {
    background-color: #fff;
    opacity: 1;
}
.pop-parent.active {
    right: -700px;
}
.pop-parent.active .btn-toggle {
    transform: rotate(180deg);
}

.pop-parent .pop .btn-close {
    display: block;
    width: 40px;
    height: 40px;
    position: relative;
    background-color: black;
}

/* @media screen and (max-width: 1200px) {

} */

@media screen and (max-width: 768px) {
    .pop-parent .pop {
        width: 310px;
    }

    .pop-parent {
        top: 50%;
        right: unset;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .pop-parent .pop-btns {
        transform: translateY(100%);
        top: unset;
        bottom: 0;
        left: 0;
        width: 100%;
        justify-content: space-between;
    }
    .pop-parent .pop .btn-toggle {
        display: none;
    }
    .pop-parent .pop .btn-close {
        display: block;
    }
}

/*///////////////////////// 공통 css /////////////////////////*/

/* form */
.form-wrap { gap: 32px; }
.form-list { width: 100%; gap: 32px; }
.form-list.border { padding-bottom: 32px; border-bottom: 1px solid #aeaeae; }
.form-title { width: 100%; font-size: 24px; font-weight: 500; display: flex; align-items: center; flex-flow: wrap; margin-bottom: -8px; position: relative; }
.form-item { gap: 8px; width: 100%; }
.form-item.half { width: calc( 50% - 16px ); }
.form-item .item-default { font-size: 16px; font-weight: bold; }
.form-item .item-default .guide-txt { font-size: 14px; color: #707070; font-weight: normal; margin-top: 4px; }
.form-item .item-user { gap: 16px;}
.form-input-wrap { gap: 8px; }
.form-input-wrap.col-group { align-items: center; }
.form-input-wrap .form-input { min-width: unset; }
.form-input { width: 100%; padding: 0 16px; height: 52px; border: 1px solid #d8d8d8; font-size: 16px; border-radius: 8px; background-color: #fff; }
.form-input.disable { background: #f5f5f5; }
.form-date { padding-right: 30px; cursor: pointer; background-image: url(../images/icon-calendar.png); background-repeat: no-repeat; background-size: 18px; background-position: right 8px center; }
.form-textarea { width: 100%; padding: 16px; border: 1px solid #d8d8d8; border-radius: 8px; background: #fff; height: 250px; font-size: 17px; }
.form-input::placeholder, .form-textarea::placeholder { color: #aeaeae; }
.form-search-wrap { position: relative; width: 100%;}
.form-search-input { height: 52px; padding: 0 16px; padding-right: 48px; width: 100%; background-color: #fff; border: 1px solid #e4e4e4; border-radius: 8px; font-size: 16px; }
.form-search-input:focus { border-color: #0088db; box-shadow: inset 0 3px 6px 0 rgba(0, 136, 219, 0.16); }
.form-search-input::placeholder { color: #aeaeae; }
.form-search-btn { font-size: 20px; color: #0088db; position: absolute; right: 24px; top: 50%; transform: translateY(-50%);}

.form-label-wrap { display: flex; gap: 8px; flex-flow: wrap; }
.form-label-wrap.border:not(:first-child) { padding-top: 16px; border-top: 1px solid #e4e4e4; margin-top: 16px; }
.form-label-wrap.per4 .form-label { width: calc( ( 100% - 8px * 3 ) / 4 ); }
.form-label-wrap.per2 .form-label { width: calc( ( 100% - 8px ) / 2 ); }
.form-label-wrap.per3 .form-label { width: calc( ( 100% - 16px ) / 3 ); }
.form-label-item { display: flex; justify-content: center; align-items: center; gap: 8px; height: 52px; border: 1px solid #e4e4e4; background: #fff; font-size: 16px; border-radius: 8px; color: #aeaeae; transition: .2s; }
.form-label-item .icon { color: #fff; font-size: 20px; display: none; }
input:checked + .form-label-item, .form-label-item.active { border: 1px solid #0088db; background: #0088db; color: #fff; }
input:checked + .form-label-item .icon, .form-label-item.active .icon { display: block; }

.form-btn-wrap { gap: 8px; width: 100%; }
.form-btn { width: 100%; height: 52px; font-size: 16px; font-weight: 600; color: #fff; border: 1px solid #fff; border-radius: 8px; text-align: center; display: flex; align-items: center; gap: 8px; justify-content: center; transition: .2s; background: #0088db; }
.form-btn.white { color: #0088db; border-color: #0088db; background: #fff; transition: .1s; }
.form-btn.white:hover { color: #fff; background: #0088db; }
.form-btn.submit { background: #484848; }
.form-btn.done { background: #707070; }
.form-btn.disable { background: #e4e4e4; }
.form-btn-wrap .form-btn { width: 152px; }
.form-btn-wrap .form-input { width: calc( 100% - 160px ); }

.form-sticker-wrap { position: relative; }
.form-sticker-wrap .form-sticker{ font-size: clamp( 14px, 0.83vw, 16px ); color: #fff; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); }
.form-sticker-wrap .form-input { padding-right: 64px; }

.form-footer-wrap { margin-top: 8px; gap: 16px; }
.form-footer-txt { text-align: center; font-size: 18px; font-weight: 600; line-height: 1.5; margin-bottom: 24px; }
.form-submit-btn { width: 100%; max-width: 860px; margin: 0 auto; display: flex; align-items: center; justify-content: center; gap: 16px; height: 56px; background: #484848; text-align: center; font-size: 16px; font-weight: bold; color: #fff; transition: .2s; border-radius: 8px; }
.form-submit-btn.submit { background: #0088db; }
.form-submit-btn.disable { background: #e4e4e4; border-color: #e4e4e4; color: #fff; }
.form-submit-btn .icon { font-size: 24px; }

.guide-txt-wrap { display: flex; flex-flow: column; gap: 4px; }
.guide-txt { font-size: 14px; line-height: 1.5; position: relative; color: #999; }
.guide-txt.dot { padding-left: 16px; }
.guide-txt.dot::after { content: ''; display: block; position: absolute; width: 4px; height: 4px; background: #999; left: 0; top: 8.5px; border-radius: 50%; }

@media screen and (max-width: 1280px) {
  .form-wrap { gap: 24px; }
  .form-list { gap: 24px 8px; }
  .form-list.border { padding-bottom: 24px; }
  .form-title { font-size: 20px; }
  .form-item { gap: 8px; }
  .form-item.half { width: 100%; }
  .form-item .item-default { font-size: 14px; }
  .form-item .item-default .guide-txt { font-size: 12px; }
  .form-input-wrap { gap: 8px; }
  .form-input { font-size: 14px; height: 48px; }
  .form-textarea { padding: 16px; height: 160px; font-size: 14px; }
  .form-search-wrap { position: relative; }
  .form-search-input { height: 48px; border-radius: 24px; padding-right: 32px; font-size: 14px; }
  .form-search-btn { font-size: 20px; right: 16px; }

  .form-label-wrap.per4 .form-label { width: calc( ( 100% - 8px * 2 ) / 3 ); }
  .form-label-item { gap: 4px; height: 48px; font-size: 14px; }
  .form-label-item .icon { font-size: 16px; }

  .form-btn { height: 48px; font-size: 14px; }
  .form-btn-wrap .form-btn { width: 110px; }
  .form-btn-wrap .form-input { width: calc( 100% - 118px ); }

  .form-footer-wrap { margin-top: 24px; gap: 8px; }
  .form-footer-txt { font-size: 14px; margin-bottom: 16px; }
  .form-submit-btn { height: 48px; line-height: 48px; font-size: 14px; }

  .guide-txt { font-size: 12px; }
}

/* form - 체크박스 */
.checked-item { display: flex; align-items: center; gap: 8px; }
.checked-item .icon { width: 20px; height: 20px; border: 1px solid #9999a6; border-radius: 2px; display: flex; align-items: center; justify-content: center; }
.checked-item .icon i { color: #aeaeae; font-weight: bold; font-size: 12px; line-height: 12px; }
.checked-item .txt { font-size: 16px; font-weight: 600; color: #202020; opacity: .5; line-height: 1.5; }
.checked-item .link { margin-left: auto; font-size: 14px; text-decoration: underline; }
.form-checkbox:checked + .checked-item .txt { opacity: 1; }
.form-checkbox:checked + .checked-item .icon { border: 1px solid #0088db; background: #0088db; }
.form-checkbox:checked + .checked-item .icon i { color: #fff; }

@media screen and (max-width: 1280px) {
  .checked-item  { gap: 6px; }
  .checked-item .txt { font-size: 14px; }
}

/* form - 라디오 */
.form-radio + .checked-item .icon { width: 20px; height: 20px; border: 1px solid #e4e4e4; background: #fff; border-radius: 50%; display: block; position: relative; }
.form-radio + .checked-item .icon::after { content: ''; position: absolute; width: 12px; height: 12px; border-radius: 50%; background: #0088db; left: 50%; top: 50%; transform: translate(-50%, -50%); display: none; }
.form-radio:checked + .checked-item .txt { color: #fff; }
/* .form-radio:checked + .checked-item .icon { border: 1px solid #0088db; background: #0088db; } */
.form-radio:checked + .checked-item .icon::after { display: block; }
@media screen and (max-width: 1440px) {
  .form-radio + .checked-item .icon { width: 20px; height: 20px; border: 1px solid #bfbfbf; background: #fff; border-radius: 50%; display: block; position: relative; }
  .form-radio + .checked-item .icon::after { content: ''; position: absolute; width: 12px; height: 12px; border-radius: 50%; background: #0088db; left: 50%; top: 50%; transform: translate(-50%, -50%); display: none; }
  .form-radio:checked + .checked-item { color: #0088db; }
  .form-radio:checked + .checked-item .icon { border: 1px solid #0088db; background: #fff; }
  .form-radio:checked + .checked-item .icon::after { display: block; }
}

/* modal */
.modal-container { position: fixed; top: 0; right: 0; left: 0; bottom: 0; z-index: 99999; background: rgba(0, 0, 0, 0.6); display: none; }
.modal-wrap { background: #fff; width: calc( 100% - 80px ); height: auto; left: 50%; top: 50%; transform: translate(-50%, -50%); border-radius: 16px; position: absolute; padding: 40px 32px; }
.modal-wrap.w1040 { max-width: 1040px; }
.modal-wrap.w600 { max-width: 600px; }
.modal-wrap.w480 { max-width: 480px; }
.modal-wrap::-webkit-scrollbar { display: none; }
.close-btn { position: absolute; font-size: 32px; cursor: pointer; top: 24px; right: 24px; z-index: 9; }
.modal-scroll-container .modal-scroll-wrap { width: 100%; }
.modal-scroll-wrap { max-height: 50dvh; overflow-y: auto; overflow-x: hidden; }
.modal-title-wrap { display: flex; flex-flow: column; gap: 16px; }
.modal-title-wrap.border { padding-bottom: 16px; border-bottom: 1px solid #c4c4c4; }
.modal-title-wrap.center { text-align: center; }
.modal-title { font-size: 24px; font-weight: bold; }
.modal-sub-title { font-size: 16px; line-height: 1.5; margin-top: 12px; color: #707070; }
.modal-content-wrap { display: flex; flex-flow: column; gap: 24px; }
.modal-txt { font-size: 16px; line-height: 1.5; }
.modal-sub-txt { font-size: 16px; line-height: 1.5; }

.modal-footer { align-items: center; gap: 8px; }
.modal-footer.center { justify-content: center; }
.modal-footer.border-top { padding-top: 24px; border-top: 1px solid #222; }
.modal-footer-btn { width: 100%; height: 52px; border-radius: 0; text-align: center; line-height: 50px; font-size: 16px; font-weight: bold; color: #202020; background: #fff; border: 1px solid #202020; padding: 0 24px; border-radius: 4px; }
.modal-footer-btn.min { width: fit-content; padding: 0 40px; }
.modal-footer-btn.close-btn { position: static; font-size: 16px; background: #aeaeae; color: #fff; border: 1px solid #aeaeae; }
.modal-footer-btn.submit-btn { background: #0088db; color: #fff; border: 1px solid #0088db; }
.modal-footer-btn.cancel-btn { background: #707070; color: #fff; border-color: #707070; }
.modal-footer-btn.write-btn { color: #0088db; border-color: #0088db; }
.modal-footer-btn.disable { background: #aeaeae; border: 1px solid #aeaeae; }

.modal-alert { border: 2px solid #e4e4e4; height: auto; width: calc( 100% - 80px ); padding: 40px; max-width: 480px; text-align: center; border-radius: 16px; left: 50%; right: unset; top: 50%; bottom: unset; transform: translate(-50%, -50%); }
.modal-alert .icon { display: block; width: 24px; margin: 0 auto; font-size: 24px; margin-bottom: 16px; }
.modal-alert .modal-title-wrap { margin-bottom: 0; }
.modal-alert .modal-title-wrap .icon { margin-bottom: 8px; font-size: 40px; }
.modal-alert .modal-title { font-size: 24px; }
.modal-alert .modal-footer { margin-top: 32px; }
.modal-alert .close-btn { font-size: 24px; top: 16px; right: 16px; }

.modal-select-wrap { width: 100%; top: unset; height: auto; transform: translateX(-50%) translateY(100%); bottom: 0; border-radius: 0; border-top-left-radius: 20px; border-top-right-radius: 20px; padding: 16px; transition: .2s; }
.modal-container.active .modal-select-wrap { transform: translateX(-50%) translateY(0%); }
.modal-select-wrap .modal-title-wrap { text-align: center; padding-top: 20px; position: relative; margin-bottom: 16px; }
.modal-select-wrap .modal-title-wrap::after { content: ''; display: block; width: 104px; height: 2px; background: #f0f0f0; border-radius: 2px; position: absolute; top: 0; left: 50%; transform: translateX(-50%); }
.modal-select-wrap .close-btn { top: 36px; }

.select-item:not(:last-child) { border-bottom: 1px solid #f0f0f0; }
.select-check { height: 50px; }
.select-check .icon { width: 22px; height: 22px; border-radius: 50%; border: 1px solid #e1e1e1; position: relative; background: #fff; transition: .2s;  }
.select-check .icon::after { content: ''; position: absolute; width: 12px; height: 12px; border-radius: 50%; left: 50%; top: 50%; transform: translate(-50%, -50%); background: #0088db; opacity: 0; transition: .2s; }
input:checked ~ .select-check .icon { border: 1px solid #0088db; }
input:checked ~ .select-check .icon::after { opacity: 1; }

.select-group.wrap .select-item { width: 50%; }
.select-item.checkbox .select-check .icon { width: 17px; height: 17px; border-radius: 2px; }
.select-item.checkbox .select-check .icon::after { display: none; }
.select-item.checkbox .select-check .icon i { width: 100%; font-size: 12px; text-align: center; line-height: 15px; color: #fff; font-weight: bold; }
.select-item.checkbox input:checked ~ .select-check .icon { background: #0088db; }

.modal-menu-wrap { top: 0; left: unset; height: 100dvh; width: 300px; right: 0; transform: translateX(100%); transition: .2s; }
.modal-container.active .modal-menu-wrap { transform: translateX(0); }
.modal-menu-wrap .select-group { max-height: calc( 100dvh - 151px ); overflow: auto; }
.modal-menu-wrap .select-group::-webkit-scrollbar { display: none; }

.modal-notice-txt { position: fixed; top: 50%; width: calc( 100% - 32px ); max-width: 480px; left: 50%; transform: translate(-50%, -50%); z-index: 99999; padding: 12px 16px; font-size: 14px; font-weight: 500; text-align: center; line-height: 1.25; background: #000; border-radius: 4px; color: #fff; opacity: 0; display: none; transform: .2s; }
.modal-notice-txt.active { display: block; animation: fadeInOut 2s forwards; }
@keyframes fadeInOut {
  0%, 99% { opacity: 0; }
  10%, 90% { opacity: .75; }
  100% { display: none; }
}

@media screen and (max-width: 1280px) {
  .modal-wrap { width: calc( 100% - 32px ); padding: 32px 16px; max-height: 80vh; overflow-y: auto; }
  .close-btn { font-size: 18px; top: 16px; right: 16px; }
  .modal-title { font-size: 20px; }
  .modal-sub-title { font-size: 14px; margin-top: 8px; }
  .modal-content-wrap { gap: 16px; }
  .modal-scroll-wrap { max-height: unset; overflow-y: unset; overflow-x: unset; }
  .modal-txt { font-size: 14px; }
  .modal-sub-txt { font-size: 12px; }

  .modal-footer.border-top { padding-top: 16px; }
  .modal-footer-btn { height: 48px; line-height: 46px; font-size: 14px; padding: 0 16px; }
  .modal-footer-btn.min { padding: 0 24px; }
  .modal-footer-btn.close-btn { font-size: 14px; }
}

/* login */
/* 로그인 */
.login { min-height: calc( 100vh - 128px - 252px ); padding: 120px 0; display: flex; flex-flow: column; justify-content: center; align-items: center; }
.user-section { width: 100%; max-width: 520px; margin: 0 auto; }
.user-title-wrap { text-align: center; margin-bottom: 40px; gap: 32px; }
.user-title-wrap.border { padding-bottom: 40px; border-bottom: 1px solid #aeaeae; }
.user-title { font-size: 40px; font-weight: bold; }
.user-txt { font-size: 17px; word-break: keep-all; line-height: 1.5; }
.user-sub-txt { display: block; margin-top: 8px; font-size: 14px; }
.user-section .input-wrap { display: flex; flex-direction: column; gap: 16px; margin-bottom: 24px;}
.user-section .form-input:focus { border-color: #0088db; box-shadow: inset 0 3px 6px 0 rgba(0, 136, 219, 0.16); }
.user-section .login-btn { width: 100%; height: 56px; border-radius: 4px; background: #0088db; font-size: 17px; font-weight: bold; color: #fff; margin-bottom: 24px; }
.user-section .user-link-wrap { display: flex; align-items: center; justify-content: center; padding-bottom: 32px; border-bottom: 1px solid #202020; margin-bottom: 40px; }
.user-section .user-link-wrap .div-mark { width: 1px; height: 19px; background-color: #e4e4e4; margin: 0 15.5px; }
.user-section .user-link-wrap .find-btn { font-size: 16px; font-weight: 300; color: #949599; }
.user-section .login-sns-wrap { display: flex; flex-direction: column; gap: 16px; padding-bottom: 32px; border-bottom: 1px solid #202020; margin-bottom: 32px; }
.user-section .login-sns-wrap .btn { width: 100%; height: 56px; border-radius: 4px; overflow: hidden; display: flex; align-items: center; gap: 16px; justify-content: center; font-size: 16px; font-weight: 600; }
.user-section .login-sns-wrap .btn img { height: 100%; object-fit: cover; object-position: center; }
.user-section .login-sns-wrap .btn .icon { font-size: 24px; }
.user-section .sub { text-align: center; font-size: 18px; font-weight: 600; color: #202020; margin-bottom: 24px; }
.user-section .sub .blue { color: #0088db; }
.user-section .join-btn { width: 100%; height: 56px; text-align: center; line-height: 52px; border-radius: 4px; font-size: 16px; color: #0088db; border: 2px solid #0088db; font-weight: bold; background-color: #fff; transition: .2s; }
.user-section .join-btn:hover { background: #0088db; color: #fff; }

@media screen and (max-width: 1280px) {
  .login { padding: 104px 16px 64px; }
  .user-section .user-wrap { width: 100%; padding-top: 0; }
  .user-title-wrap { margin-bottom: 24px; gap: 16px; }
  .user-title-wrap.border { padding-bottom: 24px; }
  .user-title { font-size: 24px; }
  .user-txt { font-size: 14px; }
  .user-section .input-wrap { gap: 8px; margin-bottom: 8px; }
  .user-section .login-btn { height: 48px; font-size: 14px; margin-bottom: 16px; }
  .user-section .user-link-wrap { margin-bottom: 24px; }
  .user-section .user-link-wrap .div-mark { margin: 0 20px; height: 12px; }
  .user-section .user-link-wrap .find-btn { font-size: 14px; }
  .user-section .login-sns-wrap { gap: 8px; padding-bottom: 24px; margin-bottom: 24px; }
  .user-section .login-sns-wrap .btn { height: 48px; font-size: 14px; gap: 8px; }
  .user-section .sub { font-size: 14px; margin-bottom: 16px; }
  .user-section .join-btn { height: 48px; line-height: 44px; font-size: 14px; margin-bottom: 0; }
}

/* 회원가입 */
.join-intro-wrap { display: flex; justify-content: center; gap: 24px; }
.join-intro-item { width: 100%; max-width: 400px; background-color: #fff; border-radius: 24px; border: 1px solid #e4e4e4; padding: 32px; text-align: center; cursor: pointer; }
.login .join-intro-item { max-width: 360px; }
.join-intro-item, .join-intro-item * { transition: .2s; }
.join-intro-item .item-img { width: 100%; max-width: 240px; object-fit: contain; object-position: center; margin-bottom: 32px; }
.join-intro-item .item-title { font-size: 23px; font-weight: bold; line-height: 1.2; margin-bottom: 24px; }
.join-intro-item .item-txt { font-size: 16px; line-height: 1.5; margin-bottom: 40px; }
.join-intro-item .item-btn { width: 100%; height: 52px; line-height: 52px; border-radius: 8px; background: #0088db; font-size: 16px; font-weight: bold; color: #fff; }
.join-intro-item:hover { background-color: #0088db; }
.join-intro-item:hover .item-title,
.join-intro-item:hover .item-txt { color: #fff; }
.join-intro-item:hover .item-btn { background: #fff; color: #0088db; }

.step-wrap { gap: 120px; align-items: center; justify-content: center; }
.step-wrap.per4 { gap: 88px; }
.step-item { position: relative; align-items: center; gap: 8px; text-align: center; z-index: 0; }
.step-item:not(:last-child):after { content: ''; display: block; position: absolute; width: calc( 100% + 120px ); height: 2px; background: #e4e4e4; top: 19px; left: 50%; z-index: -1; }
.step-wrap.per4 .step-item:not(:last-child):after { width: calc( 100% + 88px ); }
.step-item .num { width: 40px; height: 40px; border-radius: 50%; border: 2px solid #e4e4e4; background: #fff; line-height: 36px; font-size: 18px; font-weight: 500; position: relative; }
.step-item .txt { font-size: 14px; }
.step-item .title { font-size: 16px; font-weight: bold; }
.step-item * { color: #aeaeae; }

.step-item.active *, .step-item.before * { color: #0088db; border-color: #0088db; }
.step-item.before .num {  background: #0088db; color: #fff; }
.step-item.before::after { background: #0088db; }

.join-top-item { display: flex; align-items: center; justify-content: space-between; padding: 16px 24px; border-radius: 8px; background: #e8f7fe; }
.join-top-item .item-default { font-size: 16px; line-height: 1.5; }
.join-top-item .item-user { font-size: 16px; font-weight: bold; line-height: 1.5; }

.form-title .form-checkbox { margin-left: auto; }
.form-title .guide-txt { width: 100%; font-size: 16px; color: #707070; margin-top: 8px; }

.policy-agree-wrap { width: 100%; gap: 16px; }
.policy-agree-wrap .checked-all-item { padding: 12px 16px; background: #f5f5f5; border-radius: 4px; }
.policy-agree-wrap .checked-all-item .checked-item { padding-left: 0; padding-right: 0; }
.policy-agree-wrap .checked-item { gap: 8px; padding-left: 16px; padding-right: 16px; align-items: center; }
.policy-agree-wrap .checked-item .icon { width: 24px; height: 24px; }
.policy-agree-wrap .checked-item .txt { width: calc( 100% - 48px - 16px ); font-size: 16px; }
.policy-agree-wrap .checked-item .link { text-decoration: underline; }

.company-info-wrap { gap: 16px; }
.company-info-item { border: 1px solid #e4e4e4; padding: 24px; }
.company-info-top { display: flex; align-items: center; padding-bottom: 16px; border-bottom: 1px solid #e4e4e4; margin-bottom: 16px; gap: 8px; }
.company-info-top.row-group { align-items: flex-start; gap: 16px; position: relative; }
.company-info-item .item-title-wrap { display: flex; gap: 16px; align-items: baseline;}
.company-info-item .item-title { font-size: 20px; font-weight: 600; }
.company-info-item .item-label { line-height: 24px; padding: 0 12px; border-radius: 8px; background: #aeaeae; font-size: 14px; color: #fff; }
.company-info-item .item-label.active, .company-info-item .item-label.on { background: #3da0dc; }
.company-info-item .item-label.off { background: #0a55a7; }
.company-info-top .item-btn-wrap { margin-left: auto; }
.company-info-top.row-group .item-btn-wrap { position: absolute; top: 0; right: 0; }
.company-info-item .item-btn-wrap { display: flex; align-items: center; gap: 24px; }
.company-info-item .item-btn { font-size: 16px; color: #aeaeae; position: relative; }
.company-info-item .item-btn:hover { text-decoration: underline; }
.company-info-item .item-btn:not(:last-child)::after { content: ''; display: block; width: 1px; height: 16px; background: #aeaeae; position: absolute; right: -13px; top: 50%; transform: translate(-50%, -50%); }
.company-info-item .item-group { display: flex; flex-flow: column; gap: 8px; }
.company-info-item .item { display: flex; align-items: baseline; }
.company-info-item .item-default { width: 80px; font-size: 14px; font-weight: 600; line-height: 1.5; }
.company-info-item .item-user { width: calc( 100% - 80px ); font-size: 14px; line-height: 1.5; }
.company-info-item .item-sub-title-group { display: flex; gap: 24px; align-items: baseline; }
.company-info-item .item-sub-title { font-size: 16px; position: relative; }
.company-info-item .item-sub-title:not(:last-child)::after { content: ''; display: block; position: absolute; width: 1px; height: 12px; background: #aeaeae; right: -12px; top: 50%; transform: translate(-50%, -50%); }

@media screen and (max-width: 1280px) {
  .join-intro-wrap { flex-flow: wrap; }
  .join-intro-item { border-radius: 16px; padding: 24px; }
  .join-intro-item .item-img { max-width: 190px; margin-bottom: 24px; }
  .join-intro-item .item-title { font-size: 18px; margin-bottom: 16px; }
  .join-intro-item .item-txt { font-size: 14px; margin-bottom: 24px; }
  .join-intro-item .item-btn { height: 48px; line-height: 48px; font-size: 14px; }

  .step-wrap { gap: 64px; }
  .step-item:not(:last-child):after { width: calc( 100% + 64px ); top: 15px; }
  .step-item .num { width: 32px; height: 32px; line-height: 28px; font-size: 16px; }
  .step-item .txt { font-size: 12px; }
  .step-item .title { font-size: 14px; }

  .join-top-item { padding: 16px; }
  .join-top-item .item-default { font-size: 14px; }
  .join-top-item .item-user { font-size: 14px; }

  .form-title .guide-txt { font-size: 12px; }

  .policy-agree-wrap { gap: 8px; }
  .policy-agree-wrap .checked-all-item { padding: 8px; }
  .policy-agree-wrap .checked-all-item .checked-item { padding-left: 0; padding-right: 0; }
  .policy-agree-wrap .checked-item { padding: 8px; }
  .policy-agree-wrap .checked-item .icon { width: 20px; height: 20px; }
  .policy-agree-wrap .checked-item .txt { width: calc( 100% - 44px - 16px ); font-size: 14px; }

  .company-info-item { padding: 16px; }
  .company-info-top { padding-bottom: 8px; margin-bottom: 8px; gap: 8px; }
  .company-info-item .item-title { font-size: 16px; }
  .company-info-item .item-label { padding: 0 8px; border-radius: 4px; font-size: 12px; }
  .company-info-item .item-btn-wrap { gap: 16px; }
  .company-info-item .item-btn { font-size: 14px; }
  .company-info-item .item-btn:not(:last-child)::after { height: 14px; right: -9px; }

  .company-info-item .item-sub-title-group { gap: 16px; }
  .company-info-item .item-sub-title { font-size: 14px; }
  .company-info-item .item-sub-title:not(:last-child)::after { right: -8px; }
}

/* 결과 페이지 */
.result-section { display: flex; flex-flow: column; justify-content: center; }
.join_result .result-section { padding-top: 0; min-height: unset; }
.result-section .result-wrap { width: 100%; margin: 0 auto; text-align: center; }
.result-section .result-inner { display: flex; flex-flow: column; gap: 40px; align-items: center; }
.result-section .result-wrap i { font-size: 48px; color: #0088db; margin-bottom: -16px; }
.result-section .result-title { font-size: 40px; font-weight: normal; }
.result-section .result-title .blue { color: #0088db; }
.result-section .result-wrap .info-wrap { display: flex; justify-content: center; align-items: center; gap: 16px; width: 100%; max-width: 463px; padding: 17px 0 18px 0;  background-color: #f5f5f5; border-radius: 28px; }
.result-section .result-wrap .inner-wrap { display: flex; align-items: center; gap: 4px; }
.result-section .result-wrap .info-txt { font-size: 18px; font-weight: 300; }
.result-section .div-mark { font-size: 18px; color: #aeaeae; }
.result-section .btn-wrap { display: flex; justify-content: center; gap: 16px; margin-top: 8px; width: 100%; }
.result-section .btn-wrap .btn { width: 100%; max-width: 320px; height: 64px; display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: bold; border-radius: 8px; }
.result-section .btn-wrap .btn.blue { background-color: #0088db; color: #fff; border: 2px solid #0088db; }
.result-section .title { font-size: 18px; line-height: 1.5; }
.result-section .title.underline { text-decoration: underline; }
.result-section .txt { font-size: 14px; line-height: 1.5; }
.result-section .sub-txt { font-size: 14px; color: #aeaeae; line-height: 1.5; }

@media screen and (max-width: 1280px) {
  .result-section { padding-top: 40px; min-height: unset; }
  .result-section .result-inner { gap: 16px; }
  .result-section .result-wrap i { font-size: 40px; margin-bottom: -8px; }
  .result-section .result-title { font-size: 24px; }
  .result-section .result-wrap .info-wrap { padding: 12px 16px; gap: 8px; }
  .result-section .result-wrap .info-txt { font-size: 14px; }
  .result-section .div-mark { font-size: 14px; }
  .result-section .btn-wrap { gap: 8px; margin-top: 8px; }
  .result-section .btn-wrap .btn { max-width: unset; height: 48px; font-size: 14px; border-radius: 4px; }
  .result-section .title { font-size: 14px; }
  .result-section .txt { font-size: 12px; }
  .result-section .sub-txt { font-size: 12px; }
}

/* index */
.default-label-wrap { display: flex; flex-flow: wrap; gap: 8px; }
.default-label { padding: 0 12px; line-height: 24px; border-radius: 4px; background: #707070; color: #fff; font-size: 14px; }
.default-label.color-1 { background: #98886e; }
.default-label.color-2 { background: #ef8047; }
.default-label.color-3 { background: #83b523; }
.default-label.color-4 { background: #3da0dc; }
.default-label.color-5 { background: #0a55a7; }
.default-label.red { background: #eb3131; }
.default-label.invert { background: none; border: 1px solid #fff; }

@media screen and (max-width: 1280px) {
  .default-label-wrap { gap: 4px; }
  .default-label { padding: 0 8px; line-height: 22px; font-size: 12px; }
}

/* index-main-slide */
.index-main-slide .swiper-slide { width: 100%; max-width: 1280px; height: 600px; border-radius: 24px; overflow: hidden; position: relative; }
.index-main-slide .img-container { padding-top: 600px; z-index: -1; }
.index-main-slide .txt-wrap { position: absolute; top: 0; width: 100%; height: 100%; padding: 80px; padding-bottom: 88px; display: flex; flex-flow: column; justify-content: flex-end; gap: 24px; }
.index-main-slide .txt-wrap .title { font-size: 56px; font-weight: bold; line-height: 1.2; color: #fff; }
.index-main-slide .txt-wrap .sub-title { font-size: 24px; font-weight: 500; color: #fff; line-height: 1.2; }
.index-main-slide .txt-wrap .txt { font-size: 18px; font-weight: bold; line-height: 1.33;  color: #fff;}
.index-main-slide .txt-wrap .sub-txt { font-size: 16px; line-height: 1.5; opacity: .7; color: #fff; }
.index-main-slide-btn-wrap { position: absolute; display: flex; gap: 8px; align-items: center; bottom: 32px; right: calc(( ( 100vw - 1280px ) / 2 ) + 32px ); z-index: 9; width: fit-content; }
.index-main-slide-btn { display: block; width: 56px; height: 56px; line-height: 56px; border-radius: 50%; cursor: pointer; background-color: rgba(0, 0, 0, 0.4); text-align: center; line-height: 56px; font-size: 20px; color: #fff; }
.index-main-slide .index-main-slide-pagination { position: static; width: 104px; height: 56px; border-radius: 28px; display: flex; justify-content: center; align-items: center; background-color: rgba(0, 0, 0, 0.4); font-size: 18px; font-weight: 500; color: rgba(255, 255, 255, 0.5); gap: 4px;}
.index-main-slide .index-main-slide-pagination .swiper-pagination-current { color: #fff; }

@media screen and (max-width: 1280px) {
  .index { margin-top: 80px; }
  .index-main-slide { padding: 0 32px; padding-top: 24px; }
  .index-main-slide .swiper-slide { height: auto; border-radius: 0; overflow: visible; }
  .index-main-slide .img-container { padding-top: 62%; border-radius: 16px; overflow: hidden; }
  .index-main-slide .txt-wrap { position: static; height: auto; padding: 0; padding-top: 24px; gap: 16px; }
  .index-main-slide .txt-wrap .title { font-size: 28px; color: #222; }
  .index-main-slide .txt-wrap .sub-title { font-size: 18px; color: #222; }
  .index-main-slide .txt-wrap .txt { font-size: 16px; color: #222; }
  .index-main-slide .txt-wrap .sub-txt { font-size: 14px; color: #222; }
  .index-main-slide-btn-wrap { bottom: unset; top: calc( ( 100vw - 64px ) * 0.62 + 24px ); transform: translateY( calc( -100% - 8px ) ); right: 40px; }
  .index-main-slide-btn { display: block; width: 36px; height: 36px; line-height: 36px; line-height: 36px; font-size: 16px; }
  .index-main-slide .index-main-slide-pagination { width: 60px; height: 30px; border-radius: 15px; font-size: 12px; gap: 2px;}
}

/* index section */
.index-section-wrap { display: flex; flex-flow: column; gap: 120px; padding: 120px 0; }
.index-section-title-wrap { display: flex; align-items: center; gap: 16px; margin-bottom: 40px; }
.index-section-title { display: flex; align-items: center; gap: 16px; font-size: 40px; font-weight: bold; }
.index-section-title .icon { width: 48px; }

@media screen and (max-width: 1280px) {
  .index-section-wrap { gap: 40px; padding: 60px 0; }
  .index-section-title-wrap { gap: 8px; margin-bottom: 24px; flex-flow: wrap; }
  .index-section-title { gap: 8px; font-size: 24px; }
  .index-section-title .icon { width: 32px; }
}

/* index section - 교류회 · 포럼 행사일정 */
.index-event-wrap { display: flex; flex-flow: column; gap: 32px; }
.index-event-top { padding: 24px; border-radius: 16px; box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.16); background-color: #fff; display: flex; }
.index-event-top .year-select-wrap { display: flex; align-items: center; }
.index-event-top .year { width: 112px; text-align: center; font-size: 32px; font-weight: bold; }
.index-event-top .year-select-btn { width: 48px; height: 48px; font-size: 20px; color: #aeaeae; }
.index-event-top .month-select-wrap { width: calc( 100% - 208px ); display: flex; justify-content: center; gap: 4px; align-items: center; }
.index-event-top .month-select-btn { width: 100%; max-width: 72px; line-height: 72px; border-radius: 16px; background: #fff; font-size: 20px; font-weight: 600; color: #aeaeae; }
.index-event-top .month-select-btn.active { background: #0088db; color: #fff; }
.index-event-list { display: flex; flex-flow: column; gap: 16px; }
.index-event-item { display: flex; align-items: center; padding: 16px; border-radius: 16px; border: 1px solid #e4e4e4; transition: .2s; }
.index-event-item:hover { border-color: #0088db; }
.index-event-item .item-date { width: 88px; height: 88px; display: flex; flex-flow: column; justify-content: center; align-items: center; text-align: center; border-radius: 16px; }
.index-event-item.color-1 .item-date { background-color: rgba(239, 128, 71, 0.1); }
.index-event-item.color-2 .item-date { background-color: rgba(10, 85, 167, 0.1); }
.index-event-item.color-3 .item-date { background-color: rgba(131, 181, 35, 0.1); }
.index-event-item .item-date .txt { font-size: 16px; font-weight: 500; line-height: 1.5; }
.index-event-item .item-date .date { font-size: 32px; font-weight: bold; }
.index-event-item.color-1 .item-date .date { color: #EF8047; }
.index-event-item.color-2 .item-date .date { color: #0a55a7; }
.index-event-item.color-3 .item-date .date { color: #83b523; }
.index-event-item .item-txt-wrap { width: calc( 100% - 88px - 480px ); padding: 0 16px; display: flex; flex-flow: column; gap: 16px; }
.index-event-item .item-txt-wrap .title { display: flex; gap: 8px; align-items: center; flex-flow: wrap; font-size: 24px; font-weight: bold; line-height: 1.2; }
.index-event-item .item-txt-wrap .title .status { padding: 0 12px; line-height: 24px; border-radius: 12px; background: #3da0dc; font-size: 14px; color: #fff; }
.index-event-item .item-txt-wrap .txt { font-size: 16px; color: #aeaeae; line-height: 1.5; }
.index-event-item .item-sub-txt-wrap { width: 480px; display: flex; flex-flow: column; gap: 16px; }
.index-event-item .item-sub-txt-wrap .txt { font-size: 16px; font-weight: 300; line-height: 1.5; }

@media screen and (max-width: 1280px) {
  .index-event-wrap { gap: 16px; }
  .index-event-top { flex-flow: wrap; padding: 0; border-radius: 0; box-shadow: none; gap: 16px; }
  .index-event-top .year-select-wrap { display: flex; align-items: center; }
  .index-event-top .year { width: 80px; font-size: 24px; }
  .index-event-top .year-select-btn { width: 32px; height: 32px; line-height: 30px; font-size: 16px; }
  .index-event-top .month-select-wrap { justify-content: flex-start; width: 100%; overflow-x: auto; }
  .index-event-top .month-select-wrap::-webkit-scrollbar { display: none; }
  .index-event-top .month-select-btn { min-width: 50px; line-height: 50px; border-radius: 8px; font-size: 14px; }
  .index-event-list { gap: 48px; }
  .index-event-item { flex-flow: wrap; padding: 0; border-radius: 0; border: 0; padding-left: 72px; position: relative; gap: 16px; }
  .index-event-item:not(:last-child)::after { content: ''; display: block; position: absolute; width: 100%; height: 1px; background: #e4e4e4; bottom: -24px; left: 0; }
  .index-event-item .item-date { position: absolute; left: 0; top: 0; width: 60px; height: 100%; border-radius: 8px; }
  .index-event-item .item-date .txt { font-size: 14px; }
  .index-event-item .item-date .date { font-size: 24px; }
  .index-event-item .item-txt-wrap { width: 100%; padding: 0; gap: 8px; }
  .index-event-item .item-txt-wrap .title { flex-flow: column-reverse; align-items: flex-start; font-size: 16px; }
  .index-event-item .item-txt-wrap .title .status { padding: 0 8px; line-height: 22px; font-size: 12px; }
  .index-event-item .item-txt-wrap .txt { font-size: 14px; }
  .index-event-item .item-sub-txt-wrap { gap: 4px; }
  .index-event-item .item-sub-txt-wrap .txt { font-size: 14px; }
}

/* index section - 배너 */
.index-banner { position: relative; padding: 56px; border-radius: 32px; background: #1a7cec; }
.index-banner .title-wrap { display: flex; flex-flow: column; gap: 16px; }
.index-banner .sub-title { font-size: 18px; font-weight: 300; color: #fff; letter-spacing: .2em; opacity: .64; }
.index-banner .title { font-size: 40px; font-weight: bold; color: #fff; line-height: 1.2; }
.index-banner .bg-img { position: absolute; width: auto; height: calc( 100% - 24px ); right: 40px; top: 50%; transform: translateY(-50%); }

@media screen and (max-width: 1280px) {
  .index-banner { padding: 24px; border-radius: 16px; }
  .index-banner .title-wrap { gap: 8px; max-width: 50%; }
  .index-banner .sub-title { font-size: 12px; }
  .index-banner .title { font-size: 18px; }
  .index-banner .bg-img { height: calc( 100% - 40px ); max-width: 50%; right: 20px; }
}

/* index section - 접수중인 공개강좌 */
.index-tab-wrap { display: flex; align-items: center; gap: 8px; margin-bottom: 40px; }
.index-tab { line-height: 48px; padding: 0 24px; border-radius: 24px; background: #f5f5f5; font-size: 16px; font-weight: 500; transition: .2s; cursor: pointer; }
.index-tab-wrap.square .index-tab { border-radius: 8px; }
.index-tab.active { background: #222222; color: #fff; }
.index-tab-content { display: none; }
.index-tab-content.active { display: block; }
.index-class-wrap { display: flex; flex-flow: wrap; gap: 56px 32px; }
.index-class-item { width: calc( ( 100% - 32px * 3 ) / 4 ); }
.index-class-item .img-container { padding-top: 100%; border-radius: 24px; overflow: hidden; }
.index-class-item .img-container::after { content: ''; display: block; position: absolute; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); top: 0; left: 0; z-index: -1; }
.index-class-item .top-title-wrap { position: absolute; top: 0; left: 0; width: 100%; padding: 32px 24px; display: flex; flex-flow: column; gap: 16px; align-items: flex-start; }
.index-class-item .top-title { font-size: 24px; font-weight: bold; color: #fff; line-height: 1.33; }
.index-class-item .txt-wrap { margin-top: 24px; display: flex; flex-flow: column; gap: 16px; }
.index-class-item .title { font-size: 20px; font-weight: bold; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.index-class-item .txt-group { display: flex; flex-direction: column; gap: 8px; }
.index-class-item .txt { font-size: 14px; font-weight: 300; }
.wide-more-btn { width: 100%; display: flex; justify-content: center; align-items: center; gap: 8px; margin-top: 56px; height: 64px; border-radius: 16px; background: #fff; border: 1px solid #e4e4e4; font-size: 20px; font-weight: bold; transition: .2s; }
.wide-more-btn:hover { background: #f5f5f5; }

@media screen and (max-width: 1280px) {
  .index-tab-wrap { margin-bottom: 16px; overflow-x: auto; }
  .index-tab-wrap::-webkit-scrollbar { display: none; }
  .index-tab { line-height: 40px; padding: 0 16px; font-size: 14px; white-space: nowrap; }
  .index-tab-wrap.square .index-tab { border-radius: 4px; }
  .index-class-wrap { gap: 32px 16px; }
  .index-class-item { width: calc( ( 100% - 16px ) / 2 ); }
  .index-class-item .img-container { padding-top: 100%; border-radius: 16px; }
  .index-class-item .top-title-wrap { padding: 24px; gap: 8px; }
  .index-class-item .top-title { font-size: 18px; }
  .index-class-item .txt-wrap { margin-top: 16px; gap: 8px; }
  .index-class-item .title { font-size: 18px; }
  .index-class-item .txt-group { gap: 4px; }
  .wide-more-btn { margin-top: 24px; height: 48px; border-radius: 8px; font-size: 14px; }
}

@media screen and (max-width: 560px) {
  .index-class-item { width: 100%; }
  .index-class-item .img-container { padding-top: 50%; }
}

/* index section - 흑자경영연구소 일정 */
.index-section-title-wrap .calendar-year { padding: 0 16px; line-height: 45px; background: #222222; color: #fff; font-size: 24px; font-weight: 500; border-radius: 8px; }
.index-section-title-wrap .more-btn { margin-left: auto; display: flex; align-items: center; gap: 16px; font-size: 16px; }
.index-calendar { border: 1px solid #ddd; border-radius: 16px; overflow: hidden; }
.index-calendar .fc-scrollgrid, .index-calendar th { border: 0; }
.index-calendar .fc-scrollgrid-section> td { border: 0; }
.index-calendar .fc-toolbar.fc-header-toolbar { display: none; }
.index-calendar .fc-col-header-cell { background: #222222; padding: 16px 0; }
.index-calendar .fc-col-header-cell-cushion { padding: 0; color: #fff; font-size: 18px; font-weight: 500; }
.index-calendar .fc-daygrid-day-frame { padding: 8px; }
.index-calendar .fc-daygrid-day { position: relative; }
.index-calendar .fc-daygrid-day.fc-day-today { background-color: #e8f7fe; }
.index-calendar .fc-daygrid-day-number { padding: 8px 16px; font-size: 17px; font-weight: 500; color: #707070; }
.index-calendar .fc-day-sun .fc-daygrid-day-number { color: #eb3131; }
.index-calendar .fc-daygrid-day.fc-day-today .fc-daygrid-day-number { color: #0088db; }
.index-calendar .ko_event { background: none; border: none; text-align: right; font-size: 14px; font-weight: 500; color: #eb3131; padding-right: 16px; }
.index-calendar .ko_event .fc-event-title { color: #707070; display: none; }
.index-calendar .ko_event.ko_event_red .fc-event-title { color: #eb3131; display: block; }
.index-calendar .fc-day-other .ko_event .fc-event-title { opacity: .3; }
.index-calendar .fc-event-title { color: #fff; overflow: hidden; text-overflow: ellipsis; font-size: 14px; }
.index-calendar .fc-daygrid-event { margin: 0; margin-top: 2px; padding: 4px 8px; cursor: pointer; }
.index-calendar .fc-daygrid-event.textBold .fc-event-title { color: #004b9a; font-weight: bold; }
.index-calendar .member-event-label { position: absolute; left: 10px; top: 22px; color: #004b9a; font-weight: bold; padding-left: 10px; font-size: 14px; }
.index-calendar .member-event-label::after { content: ''; display: block; position: absolute; width: 4px; height: 4px; border-radius: 50%; background-color: #004b90; left: 0; top: 50%; transform: translateY(-50%); }
#eventDetail { display: none; position: absolute; background: #fff; color: #222222; font-size: 14px; padding: 8px 12px; border-radius: 4px; box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.16); white-space: nowrap; z-index: 9999; pointer-events: none; }

@media screen and (max-width: 1280px) {
  .index-section-title-wrap .calendar-year { order: 3; line-height: 40px; font-size: 20px; border-radius: 4px; margin: 0 auto; }
  .index-section-title-wrap .more-btn { order: 2; gap: 8px; font-size: 14px; justify-content: flex-end; }
  .index-calendar { border: 0; border-radius:0; overflow: visible; }
  .index-calendar .fc-col-header-cell { background: none; padding: 8px 0; }
  .index-calendar .fc-col-header-cell-cushion { color: #222; font-size: 12px; }
  .index-calendar .fc-daygrid-day-frame { padding: 0; }
  .index-calendar .fc-daygrid-day.fc-day-today { background-color: #e8f7fe; }
  .index-calendar .fc-daygrid-day-number { padding: 8px; font-size: 12px; }
  .index-calendar .ko_event { display: none;}
  .index-calendar .fc-event-title { display: none; }
  .index-calendar .fc-daygrid-body-unbalanced .fc-daygrid-day-events { min-height: unset; margin-bottom: 4px; }
  .index-calendar .fc-daygrid-event.textBold { background-color: #004b9a !important; position: absolute; width: 6px; height: 6px; border-radius: 50%; padding: 0; top: -32px; right: 6px; }
  .index-calendar .fc-daygrid-day-top { justify-content: center; }
  /* .index-calendar.fc-theme-standard td { border: 0; } */
  .index-calendar .member-event-label { color: transparent; left: 4px; top: 4px; padding-left: 0; }
  .index-calendar .member-event-label::after { transform: none; top: 0; width: 6px; height: 6px; }
  #eventDetail { font-size: 12px;  }
}

/* index section - 공지사항 */
.index-notice-list { border-top: 2px solid #222222; border-bottom: 2px solid #222222; }
.index-notice-item { display: flex; align-items: center; justify-content: space-between; }
.index-notice-item:not(:last-child) { border-bottom: 1px solid #e6e6e6; }
.index-notice-item .item-txt-wrap { width: calc( 100% - 80px ); padding: 32px 40px; display: flex; flex-flow: column; gap: 16px; }
.index-notice-item .item-txt-wrap .title { font-size: 24px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.index-notice-item .item-txt-wrap .txt { font-size: 16px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #aeaeae; max-height: 1.2em; }
.index-notice-item .icon { font-size: 40px; }

@media screen and (max-width: 1280px) {
  .index-notice-item .item-txt-wrap { width: calc( 100% - 32px ); padding: 16px 0; gap: 8px; }
  .index-notice-item .item-txt-wrap .title { font-size: 16px; }
  .index-notice-item .item-txt-wrap .txt { font-size: 14px; }
  .index-notice-item .icon { font-size: 24px; }
}

/* 퀵메뉴 팝업 */
.download-btn-wrap { display: flex; flex-flow: column; gap: 16px; }
.download-btn { width: 100%; height: 72px; display: flex; justify-content: center; align-items: center; gap: 8px; font-size: 18px; font-weight: bold; border-width: 1px; border-style: solid; border-radius: 8px; }
.download-btn.blue { border-color: #0088db; background-color: #0088db; color: #fff; }
.download-btn.white { border-color: #0088db; background-color: #fff; color: #0088db; }
.download-btn.disable { border-color: #aeaeae; background-color: #aeaeae; color: #fff; }

.course-search-wrap { display: flex; justify-content: center; gap: 16px; padding: 24px; background: #f5f5f5; border-radius: 8px; }
.course-search-wrap .form-input { width: calc( ( 100% - ( 138px - 32px ) ) / 2 ); }
.course-search-wrap .form-btn { max-width: 138px; }

.default-table-wrap table { table-layout: fixed; width: 100%; border-collapse: collapse;  }
.default-table-wrap.sticky thead { position: sticky; top: 0; }
.default-table-wrap.type-1 th { padding: 12px; background: #484848; font-size: 16px; color: #fff; font-weight: normal; }
.default-table-wrap.type-1 th:first-child { border-top-left-radius: 8px; border-bottom-left-radius: 8px; }
.default-table-wrap.type-1 th:last-child { border-top-right-radius: 8px; border-bottom-right-radius: 8px; }
.default-table-wrap.type-1 td { padding: 12px; border-bottom: 1px solid #e4e4e4; font-size: 16px; line-height: 1.5; }
.default-table-wrap .center { text-align: center; }
.default-table-wrap .left { text-align: left; }
.default-table-wrap .right { text-align: right; }
.default-table-wrap .default-min-btn { margin: 0 auto; }
.default-min-btn { width: fit-content; height: 28px; display: flex; justify-content: center; align-items: center; padding: 0 12px; border-radius: 6px; font-size: 14px; color: #fff; background: #484848; gap: 8px; }
.default-min-btn.blue { background: #004b9a; }
.default-min-btn.gray { background: #707070; }
.default-min-btn.border-blue {background: #fff; border: 1px solid #0088db; color: #0088db;  }
.default-table-wrap .pagination { margin-top: 24px; }
.default-table-btn { font-size: 16px; font-weight: 600; text-decoration: underline; }

.null-txt-wrap { padding: 32px 0; background: #f5f5f5; text-align: center; display: flex; flex-flow: column; gap: 16px; align-items: center; justify-content: center; }
.null-txt-wrap .icon { font-size: 24px; color: #aeaeae; }
.null-txt-wrap .title { font-size: 18px; font-weight: 500; color: #707070; }
.null-txt-wrap .txt { font-size: 16px; line-height: 1.5; color: #aeaeae; }

.default-table-title { font-size: 20px; font-weight: 600; padding-left: 12px; position: relative; }
.default-table-title::after { content: ''; display: block; position: absolute; width: 4px; height: 24px; background: #0088db; border-radius: 2px; left: 0; top: 50%; transform: translateY(-50%); }

.default-table-wrap.type-2 table { border-top: 2px solid #222222; border-bottom: 1px solid #222; }
.default-table-wrap.type-2 thead th { border-bottom: 1px solid #222; }
.default-table-wrap.type-2 thead th:not(:last-child) { border-right: 1px solid #e4e4e4; }
.default-table-wrap.type-2 tbody th { border-right: 1px solid #e4e4e4; }
.default-table-wrap.type-2 th { padding: 12px 16px; background: #f5f5f5; font-size: 16px; font-weight: 600; }
.default-table-wrap.type-2 td:not(:last-child) { border-right: 1px solid #e4e4e4; }
.default-table-wrap.type-2 td { padding: 12px 16px; }
.default-table-wrap.type-2 tr:not(:last-child) td,
.default-table-wrap.type-2 tbody tr:not(:last-child) th { border-bottom: 1px solid #e4e4e4; }
.default-table-wrap.type-2 td .col-group { align-items: center; gap: 8px; }
.default-table-wrap.type-2 td .col-group .default-min-btn { margin: 0; }

.company-create-btn { display: flex; align-items: center; justify-content: space-between; min-height: 72px; padding: 16px; border-radius: 8px; background: #0088db; }
.company-create-btn .item-default { display: flex; align-items: center; gap: 8px; font-size: 16px; color: #fff; }
.company-create-btn .item-default .icon { font-size: 24px; }
.company-create-btn .item-user { display: flex; align-items: center; gap: 16px; font-size: 14px; color: #fff; }
.company-create-btn .item-user .icon { display: block; width: 40px; line-height: 40px; text-align: center; border-radius: 50%;background: #fff; font-size: 14px; color: #0088db; }

@media screen and (max-width: 1280px) {
  .download-btn-wrap { gap: 8px; }
  .download-btn { height: 48px; font-size: 14px; }

  .course-search-wrap { flex-flow: wrap; gap: 8px; padding: 16px; }
  .course-search-wrap .form-input { width: 100%; max-width: unset; }

  .default-table-wrap { width: 100%; overflow-x: auto; }
  .default-table-wrap::-webkit-scrollbar { display: none; }
  .default-table-wrap table { table-layout: auto; }
  .default-table-wrap td { white-space: nowrap; }
  .default-table-wrap.type-1 th { padding: 8px; font-size: 14px; }
  .default-table-wrap.type-1 td { padding: 8px; font-size: 14px; }
  .default-min-btn { height: 24px; padding: 0 8px; border-radius: 4px; font-size: 12px; gap: 4px; }
  .default-table-wrap .pagination { margin-top: 16px; }
  .default-table-btn { font-size: 14px; }

  .null-txt-wrap { padding: 24px 0; gap: 8px; }
  .null-txt-wrap .icon { font-size: 20px; }
  .null-txt-wrap .title { font-size: 16px; }
  .null-txt-wrap .txt { font-size: 14px; }

  .default-table-title { font-size: 16px; padding-left: 8px; }
  .default-table-title::after { width: 3px; height: 16px; }

  .default-table-wrap.type-2 table { border-top: 1px solid #222222; }
  .default-table-wrap.type-2 th { padding: 8px; font-size: 14px; }
  .default-table-wrap.type-2 td { padding: 8px; font-size: 14px; }

  .company-create-btn { min-height: 72px; padding: 16px; border-radius: 8px; background: #0088db; }
  .company-create-btn .item-default { font-size: 14px; text-align: left; }
  .company-create-btn .item-default .icon { width: 40px; height: 40px; background: #fff; border-radius: 50%; text-align: center; line-height: 40px; font-size: 24px; color: #0088db; }
  .company-create-btn .item-user { gap: 8px; font-size: 18px; font-weight: bold; }
  .company-create-btn .item-user .icon { width: auto; line-height: 1; font-size: 16px; color: #fff; background: none; }
}

/* subpage */
.subpage-content { padding: 56px 0 120px; }
.subpage-title-wrap { padding-bottom: 24px; margin-bottom: 40px; border-bottom: 2px solid #e4e4e4; position: relative; }
.subpage-title-wrap::after { content: ''; display: block; position: absolute; width: 286px; height: 2px; background: #0088db; left: 0; bottom: -2px; }
.subpage-title { font-size: 40px; font-weight: bold; }

@media screen and (max-width: 1280px) {
  .subpage { margin-top: 104px; }
  .subpage-content { padding: 40px 0 64px; }
  .subpage-title-wrap { padding-bottom: 0; margin-bottom: 24px; border-bottom: 0; }
  .subpage-title-wrap::after { display: none; }
  .subpage-title { font-size: 28px; }
}

/* subpage - top */
.subpage-top-wrap { width: calc( 100% - 80px ); margin: 0 auto; height: 400px; border-radius: 40px; background-size: cover; background-repeat: no-repeat; background-position: center; }
.subpage-top-wrap.bg-01 { background-image: url(../images/sub_bg_01.png); }
.subpage-top-wrap.bg-02 { background-image: url(../images/sub_bg_02.png); }
.subpage-top-wrap.bg-03 { background-image: url(../images/sub_bg_03.png); }
.subpage-top-wrap.bg-04 { background-image: url(../images/sub_bg_04.png); }
.subpage-top-wrap.bg-05 { background-image: url(../images/sub_bg_05.png); }
.subpage-top-wrap .container { height: 100%; position: relative; }
.subpage-top-title-wrap { height: 100%; display: flex; flex-flow: column; justify-content: center; gap: 16px; }
.subpage-top-title-wrap .sub-title { font-size: 20px; color: #fff; }
.subpage-top-title-wrap .title { font-size: 56px; font-weight: bold; color: #fff; }
.subpage-top-title-wrap .txt { font-size: 16px; color: #fff; opacity: .8; margin-top: 8px; }

.subpage-nav-wrap { position: absolute; bottom: 0; right: 0; display: flex; margin-bottom: -20px; border: 20px solid #fff; border-radius: 48px; border-bottom-right-radius: 0; border-bottom-left-radius: 0; gap: 20px; z-index: 9; }
.subpage-nav-wrap::after { content: ''; display: block; position: absolute; width: 40px; height: 40px; background-image: url(../images/sub_nav_left.png); background-repeat: no-repeat; background-size: contain; left: -59px; bottom: 0; }
.subpage-nav-wrap::before { content: ''; display: block; position: absolute; width: 40px; height: 40px; background-image: url(../images/sub_nav_right.png); background-repeat: no-repeat; background-size: contain; right: -59px; bottom: 0; }
.subpage-nav { position: relative; }
.subpage-nav-default { width: 320px; height: 56px; position: relative; cursor: pointer; display: flex; align-items: center; padding: 0 32px; font-size: 16px; color: #fff; justify-content: space-between; transition: .2s; z-index: 1; }
.subpage-nav-default::after { content: ''; display: block; position: absolute; width: 100%; height: 100%; border-radius: 48px; border: 20px solid #fff; top: -20px; left: -20px; }
.subpage-nav-list { position: absolute; top: 56px; width: 100%; border-bottom-left-radius: 24px; border-bottom-right-radius: 24px; z-index: 0; visibility: hidden; opacity: 0; }
.subpage-nav-list::after { content: ''; display: block; position: absolute; width: 100%; height: 56px; top: -56px;  background: #004b9a; border-radius: 24px; z-index: -1; transition: .2s; }
.subpage-nav-item { padding: 10px 32px; font-size: 16px !important; color: #fff !important; opacity: .5; transition: .2s; }
.subpage-nav-item:hover { opacity: 1; text-decoration: underline; }
.subpage-nav.active .subpage-nav-default::after { border-bottom-left-radius: 0; border-bottom-right-radius: 0; border-bottom-color: transparent; border-bottom-width: 0; }
.subpage-nav.active .subpage-nav-list { visibility: visible; opacity: 1; }
.subpage-nav.active .subpage-nav-list::after { height: calc( 100% + 56px + 16px ); }

@media screen and (max-width: 1280px) {
  .subpage-top-wrap { width: 100%; height: auto; background: none !important; border-radius: 0; }
  .subpage-top-title-wrap { gap: 8px; min-height: 200px; padding: 48px 16px; border-radius: 16px; background-size: cover; background-repeat: no-repeat; background-position: center; }
  .subpage-top-wrap.bg-01 .subpage-top-title-wrap { background-image: url(../images/sub_bg_01.png); }
  .subpage-top-wrap.bg-02 .subpage-top-title-wrap { background-image: url(../images/sub_bg_02.png); }
  .subpage-top-wrap.bg-03 .subpage-top-title-wrap { background-image: url(../images/sub_bg_03.png); }
  .subpage-top-wrap.bg-04 .subpage-top-title-wrap { background-image: url(../images/sub_bg_04.png); }
  .subpage-top-wrap.bg-05 .subpage-top-title-wrap { background-image: url(../images/sub_bg_05.png); }
  .subpage-top-title-wrap .sub-title { font-size: 14px; }
  .subpage-top-title-wrap .title { font-size: 28px; }
  .subpage-top-title-wrap .txt { font-size: 14px; margin-top: 0; }

  .subpage-nav-wrap { position: relative; margin-bottom: 0; border: 0; border-radius: 0; gap: 8px; margin-top: 8px; }
  .subpage-nav-wrap::after { display: none; }
  .subpage-nav-wrap::before { display: none; }
  .subpage-nav { width: 100%; }
  .subpage-nav:first-child:not(:last-child) { display: none; }
  .subpage-nav-default { width: 100%; height: 48px; padding: 0 16px; font-size: 14px; color: #222; border: 1px solid #e4e4e4; border-radius: 16px; line-height: 1.33; }
  .subpage-nav.active  .subpage-nav-default { color: #fff; border-color: transparent; }
  .subpage-nav-default::after { display: none; }
  .subpage-nav-list { top: 48px; border-bottom-left-radius: 16px; border-bottom-right-radius: 16px; }
  .subpage-nav-list::after { height: 48px; top: -48px; border-radius: 16px; }
  .subpage-nav-item { padding: 12px 16px; font-size: 14px !important; line-height: 1.33; }
  .subpage-nav.active .subpage-nav-list::after { height: calc( 100% + 48px + 8px ); }
}

/* 공개강좌 - 교육과정 안내 */
.lecture-calendar-wrap { display: flex; flex-flow: column; gap: 40px; }
.lecture-calendar-top-wrap { display: flex; flex-flow: wrap; justify-content: space-between; gap: 40px; align-items: center; }
.lecture-calendar-top-wrap .form-input { min-width: unset; max-width: 168px; }
.lecture-calendar-top-wrap .year-select-wrap { width: calc( 100% - 208px ); }
.year-select-wrap { display: flex; align-items: center; }
.year-select-btn { cursor: pointer; width: 48px; height: 48px; background: #fff; text-align: center; border: 1px solid #e4e4e4; line-height: 46px; font-size: 20px; color: #aeaeae; border-radius: 50%; }
.year-select-title { width: 220px; text-align: center; font-size: 32px; font-weight: bold; }
.lecture-calendar-top-wrap .index-tab-wrap { margin-bottom: 0; }
.lecture-calendar-top-wrap .index-tab span { line-height: 48px; }

.lecture-calendar-table-wrap { border-radius: 16px; overflow: hidden; border: 1px solid #e4e4e4; }
.lecture-calendar-table { border-collapse: collapse; table-layout: fixed; width: 100%; }
.lecture-calendar-table th { height: 64px; padding: 0 8px; background: #222; font-weight: 18px; font-weight: 500; color: #fff; }
.lecture-calendar-table th:first-child { text-align: left; padding-left: 24px; }
.lecture-calendar-table th:not(:last-child) { border-right: 1px solid #e4e4e4; }
.lecture-calendar-table td { padding: 16px 0; text-align: center; }
.lecture-calendar-table td:first-child { text-align: left; padding-left: 24px; }
.lecture-calendar-table td:not(:last-child) { border-right: 1px solid #e4e4e4; }
.lecture-calendar-table tr:not(:last-child) td { border-bottom: 1px solid #e4e4e4; }
.lecture-calendar-table td:nth-child(2),
.lecture-calendar-table td:nth-child(3) { background-color: #f5f5f5; }
.lecture-calendar-table .sub-txt { font-size: 14px; font-weight: normal; }

.lecture-calendar-table th.is-current-month { background-color: #0088db; }
.lecture-calendar-table td.is-current-month { background-color: rgba(0, 136, 219, 0.1);}
.lecture-calendar-table .active { color: #0088db; }
.lecture-calendar-table .prev { color: #aeaeae; }

.notice-txt-wrap { background: #f5f5f5; padding: 32px; border-radius: 16px; font-size: 16px; line-height: 1.5; }

@media screen and (max-width: 1280px) {
  .lecture-calendar-wrap { gap: 0; }
  .year-select-btn { width: 32px; height: 32px; line-height: 30px; font-size: 16px; }
  .year-select-title { width: 150px; font-size: 20px; }

  .lecture-calendar-top-wrap { gap: 24px; }
  .lecture-calendar-top-wrap .year-select-wrap { order: 2; width: 100%; justify-content: center; }
  .lecture-calendar-top-wrap .form-input { display: none; }
  .lecture-calendar-top-wrap .index-tab-wrap { order: 1; }
  .lecture-calendar-top-wrap .index-tab-wrap.square { order: 3; gap: 16px; width: 100%; position: relative; }
  .lecture-calendar-top-wrap .index-tab-wrap.square::after { content: ''; display: block; position: absolute; width: 100%; height: 2px; background: #e4e4e4; bottom: 0; left: 0; }
  .lecture-calendar-top-wrap .index-tab-wrap.square .index-tab { padding: 0; background: none; color: #aeaeae; padding-bottom: 12px; position: relative; z-index: 1; }
  .lecture-calendar-top-wrap .index-tab-wrap.square .index-tab.active { color: #222; }
  .lecture-calendar-top-wrap .index-tab-wrap.square .index-tab.active::after { content: ''; display: block; position: absolute; width: 100%; height: 2px; background: #222; bottom: 0; left: 0; }
  .lecture-calendar-top-wrap .index-tab span { line-height: 1; }

  .lecture-calendar-table-wrap { margin-top: 24px; overflow-x: auto; border-radius: 8px; margin-bottom: 16px; }
  .lecture-calendar-table { table-layout: auto; width: auto; }
  .lecture-calendar-table th { height: 48px; font-size: 16px; }
  .lecture-calendar-table th:first-child {  padding-left: 16px; }
  .lecture-calendar-table td { padding: 8px 16px; font-size: 14px; white-space: nowrap; }
  .lecture-calendar-table td:first-child { padding-left: 16px; }
  .lecture-calendar-table .sub-txt { font-size: 12px; }

  .notice-txt-wrap { padding: 16px; border-radius: 8px; font-size: 14px; }
}

/* 공개강좌 - 접수중인 교육과정 - 상세 */
.lecture-detail-top { display: flex; gap: 56px; align-items: flex-start; margin-bottom: 56px; }
.lecture-detail-top .left-group { width: 480px; }
.lecture-detail-top .right-group { width: calc( 100% - 480px - 56px ); }
.lecture-detail-top .index-class-item .top-title-wrap { padding: 40px; }
.lecture-detail-top .index-class-item .top-title { font-size: 38px; }
.lecture-detail-top .download-btn-wrap { margin-top: 24px; }

.lecture-detail-top .detail-section-wrap .detail-section { padding-bottom: 24px; margin-bottom: 24px; }
.lecture-detail-top .detail-section-wrap .detail-section:last-child { padding-bottom: 0; margin-bottom: 0; border-bottom: 0; }

.lecture-detail-top .default-label-wrap { width: calc( 100% - 40px ); margin-bottom: 24px; }
.lecture-detail-top .title { font-size: 36px; font-weight: bold; line-height: 1.2; }
.lecture-detail-top .share-btn { font-size: 32px; color: #aeaeae; position: absolute; top: 0; right: 0; }
.detail-item-wrap { display: flex; flex-flow: column; gap: 16px; }
.detail-item { display: flex; align-items: baseline; line-height: 1.7; font-size: 18px; }
.detail-item .item-title { width: 128px; display: flex; align-items: baseline; gap: 16px; font-size: 18px; font-weight: 600; line-height: 1.2; }
.detail-item .item-title i { color: #0088db; }
.detail-item .item-title + .item-txt { width: calc( 100% - 128px ); }
.detail-item .item-txt { display: flex; flex-flow: wrap; gap: 4px 8px; align-items: baseline; font-size: 18px; line-height: 1.2; }
.detail-item .item-sub-txt { font-size: 16px; }
.detail-item .item-min-txt { font-size: 14px; }
.detail-item .right { text-align: right; justify-content: flex-end; }

.detail-table-wrap { border-radius: 8px; overflow: hidden; border: 1px solid #e4e4e4; }
.detail-table { border-collapse: collapse; border-spacing: 0; table-layout: fixed; width: 100%; border-radius: 8px; overflow: hidden; border: 1px solid #e4e4e4;}
.detail-table th { border: 1px solid #e4e4e4; padding: 16px 0; font-size: 16px; font-weight: 600; background: #f5f5f5; }
.detail-table td { border: 1px solid #e4e4e4; padding: 16px 8px; text-align: center; font-size: 16px; line-height: 1.5; }
.detail-table.cost td:nth-child(1) { background-color: #f9f9f9; }
.detail-table.calendar td { font-weight: 600; }
.detail-table th.is-current-month { background-color: #222222; color: #fff; }
.detail-table td.is-current-month { background-color: #f5f5f5; color: #222222; }

.detail-tab-wrap { margin-bottom: 56px; width: 100%; display: flex; border-radius: 16px; background: #f5f5f5; overflow: hidden; z-index: 99; }
.detail-tab-wrap.sticky { position: sticky; top: 16px; }
.detail-tab { width: 100%; text-align: center; height: 56px; display: flex; align-items: center; justify-content: center; font-size: 18px !important; font-weight: 600; cursor: pointer; transition: .2s; }
.detail-tab.active { background: #222; color: #fff; }

.detail-section-wrap .detail-section { padding-bottom: 56px; margin-bottom: 56px; border-bottom: 1px solid #aeaeae; }
.detail-section { position: relative; }
.detail-section-title { margin-bottom: 40px; font-size: 32px; font-weight: bold; padding-left: 24px; position: relative; }
.detail-section-title::after { content: ''; display: block; position: absolute; width: 8px; height: 38px; border-radius: 4px; background: #3da0dc; left: 0; top: 50%; transform: translateY(-50%); }
.detail-section-txt * { line-height: 1.5; float: unset !important; }
.detail-section-txt img { height: auto; }
.detail-section-txt ul, .detail-section-txt ol, .detail-section-txt li { padding: revert; list-style: revert; }
.detail-section-anchor { position: absolute; top: -96px; }

.detail-review-wrap { display: flex; flex-flow: column; gap: 40px; }
.detail-review-btn { display: flex; justify-content: space-between; align-items: center; padding: 16px; border-radius: 16px; box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.16); background-color: #0088db; }
.detail-review-btn .title { display: flex; align-items: center; gap: 16px; font-size: 18px; color: #fff; white-space: nowrap; }
.detail-review-btn .img { width: 32px; }
.detail-review-btn .btn { display: flex; align-items: center; gap: 16px; font-size: 17px; font-weight: bold; color: #fff; }
.detail-review-btn .icon { display: block; width: 40px; height: 40px; text-align: center; line-height: 40px; border-radius: 50%; background: #fff; font-size: 20px; color: #0088db; }
.detail-review-group { display: flex; flex-flow: column; gap: 16px; }
.detail-review-item { padding: 32px; position: relative; border-radius: 16px; border: 1px solid #e4e4e4; }
.detail-review-item .item-title-wrap { padding-bottom: 24px; border-bottom: 1px solid #e4e4e4; margin-bottom: 24px; display: flex; flex-flow: wrap; gap: 8px; align-items: baseline; }
.detail-review-item .item-title { font-size: 17px; font-weight: 600; line-height: 1.4; max-width: calc( 100% - 88px ); }
.detail-review-item .item-txt { font-size: 16px; line-height: 1.5; width: calc( 100% - 40px ); }
.detail-review-item .item-name { margin-top: 16px; font-size: 16px; font-weight: bold; }
.detail-review-item .del-btn { position: absolute; top: 24px; right: 24px; font-size: 16px; color: #aeaeae; }
.detail-review-item .del-btn:hover { text-decoration: underline; }
.detail-review-wrap .wide-more-btn { margin-top: 0; height: 56px; font-size: 17px; }

@media screen and (max-width: 1280px) {
  .lecture_detail { padding-top: 0; padding-bottom: 40px; }
  .lecture-detail-top { flex-flow: wrap; gap: 24px; margin-bottom: 24px; }
  .lecture-detail-top .left-group { width: 320px; }
  .lecture-detail-top .right-group { width: calc( 100% - 320px - 24px ); }
  .lecture-detail-top .index-class-item .top-title-wrap { padding: 32px 24px; }
  .lecture-detail-top .index-class-item .top-title { font-size: 24px; }
  .lecture-detail-top .download-btn-wrap { margin-top: 0; position: fixed; bottom: 16px; width: calc( 100% - 32px ); z-index: 9999; }

  .lecture-detail-top .detail-section-wrap .detail-section { padding-bottom: 16px; margin-bottom: 16px; }

  .lecture-detail-top .default-label-wrap { width: calc( 100% - 24px ); margin-bottom: 16px; }
  .lecture-detail-top .title { font-size: 24px; }
  .lecture-detail-top .share-btn { font-size: 24px; }
  .detail-item-wrap { gap: 8px; }
  .detail-item .item-title { width: 88px; gap: 8px; font-size: 14px; }
  .detail-item .item-title + .item-txt { width: calc( 100% - 88px ); }
  .detail-item .item-txt { gap: 4px; font-size: 14px; }
  .detail-item .item-sub-txt { font-size: 14px; }
  .detail-item .item-min-txt { font-size: 12px; }

  .detail-table-wrap { overflow-x: auto; }
  .detail-table { table-layout: auto; width: auto; border-radius: 8px;}
  .detail-table th { padding: 8px; font-size: 14px; }
  .detail-table td { padding: 8px; font-size: 14px; white-space: nowrap; }

  .detail-tab-wrap { margin-bottom: 24px; border-radius: 8px; overflow-x: auto; }
  .detail-tab-wrap::-webkit-scrollbar { display: none; }
  .detail-tab-wrap.sticky { top: 80px; }
  .detail-tab { height: 40px; padding: 0 16px; font-size: 14px !important; white-space: nowrap; }

  .detail-section-wrap .detail-section { padding-bottom: 24px; margin-bottom: 24px; }
  .detail-section-title { margin-bottom: 24px; font-size: 24px; padding-left: 16px; }
  .detail-section-title::after { width: 6px; height: 24px; transform: none; top: 2px; }
  .detail-section-anchor { top: -132px; }

  .detail-review-wrap { gap: 16px; }
  .detail-review-btn { flex-flow: wrap; align-items: flex-start; padding: 16px; padding-left: 72px; position: relative; }
  .detail-review-btn .title { font-size: 12px; line-height: 1.5; }
  .detail-review-btn .img { display: none; }
  .detail-review-btn .btn { line-height: 1.5; }
  .detail-review-btn .icon { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); }
  .detail-review-item { padding: 16px; border-radius: 8px; }
  .detail-review-item .item-title-wrap { padding-bottom: 12px; margin-bottom: 12px; }
  .detail-review-item .item-title { font-size: 16px; max-width:unset; width: 100%; }
  .detail-review-item .item-txt { font-size: 14px; width: 100%; }
  .detail-review-item .item-name { margin-top: 8px; font-size: 14px; }
  .detail-review-item .del-btn { top: unset; bottom: 16px; right: 16px; font-size: 14px; }
  .detail-review-wrap .wide-more-btn { height: 48px; font-size: 14px; }
}

@media screen and (max-width: 768px) {
  .lecture-detail-top .left-group { width: 100%; }
  .lecture-detail-top .right-group { width: 100%; }
}

/* 공개강좌 - 접수중인 교육과정 - 신청서 작성 */
.create-notice-wrap { text-align: left; padding: 32px; background: #fff; border-radius: 16px; box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.16); }
.create-notice-wrap .title { text-align: center; font-size: 20px; font-weight: bold; margin-bottom: 32px; }
.create-notice-wrap .title .icon { display: block; font-size: 24px; margin-bottom: 8px; }
.create-notice-wrap .guide-txt-wrap { gap: 16px; margin-bottom: 32px; }
.create-notice-wrap .guide-txt { font-size: 15px; font-weight: 600; color: #222; }
.create-notice-wrap .guide-txt.dot::after { background-color: #222; }

.user-section .index-class-item { width: 100%; padding: 32px 0; border-top: 1px solid #aeaeae; border-bottom: 1px solid #aeaeae; }
.user-section .index-class-item .txt-wrap { margin-top: 0; text-align: left; }
.user-section .index-class-item .title { font-size: 24px; white-space: unset; }
.user-section .index-class-item .txt { font-size: 16px; }

.form-title .checked-item { position: absolute; top: 0; right: 0; }
.total-price-wrap { display: flex; justify-content: space-between; padding: 16px 24px; border-radius: 8px; background-color: #004b9a; }
.total-price-wrap .item-default { font-size: 16px; font-weight: 500; color: #fff; }
.total-price-wrap .item-user { font-size: 16px; font-weight: bold; color: #fff; }

@media screen and (max-width: 1280px) {
  .create-notice-wrap { padding: 16px; border-radius: 8px; }
  .create-notice-wrap .title { font-size: 16px; margin-bottom: 24px; }
  .create-notice-wrap .title .icon { font-size: 16px; }
  .create-notice-wrap .guide-txt-wrap { gap: 8px; margin-bottom: 24px; }
  .create-notice-wrap .guide-txt { font-size: 14px;; }

  .user-section .index-class-item { padding: 24px 0; }
  .user-section .index-class-item .title { font-size: 18px; }
  .user-section .index-class-item .txt { font-size: 14px; }
}

/* 공개강좌 - 교육장 안내 */
.location-section-wrap { display: flex; flex-flow: column; gap: 56px; }
.location-section .map-wrap { border-radius: 32px; overflow: hidden; }
.location-section .map-wrap .root_daum_roughmap,
.location-section .map-wrap .root_daum_roughmap .wrap_map { width: 100%; height: 640px; }
.location-section .map-wrap .root_daum_roughmap .wrap_controllers,
.location-section .map-wrap .root_daum_roughmap .cont { display: none; }
.location-section .section-item:not(:last-child) { padding-bottom: 56px; border-bottom: 1px solid #e4e4e4; margin-bottom: 56px; }
.location-section .section-item { display: flex; }
.location-section .item-default { width: 268px; font-size: 36px; font-weight: bold; }
.location-section .item-user { width: calc( 100% - 268px ); display: flex; flex-flow: column; gap: 16px; }
.location-section .item-txt { font-size: 16px; display: flex; align-items: baseline; gap: 12px; }
.location-section .item-txt i { font-size: 20px; }
.location-section .item-sub-txt { font-size: 14px; color: #aeaeae; }
.location-section .item-txt-wrap { display: flex; }
.location-section .item-txt-group { width: 100%; display: flex; flex-flow: column; gap: 16px; }
.location-section .item-title { font-size: 24px; font-weight: bold; }
.location-section .num { display: block; width: 20px; height: 20px; text-align: center; line-height: 20px; border-radius: 50%; font-size: 14px; color: #fff; }
.location-section .num.subway-5 { background: #833edb; color: #fff; }
.location-section .num.subway-9 { background: #c9a754; color: #fff; }
.location-section .subway-5 { color: #833edb; }
.location-section .subway-9 { color: #c9a754; }
.location-section .bus { padding: 0 8px; line-height: 22px; border-radius: 11px; font-size: 14px; color: #fff; }
.location-section .bus-1 { background: #3556a7; }
.location-section .bus-2 { background: #48922d; }
.location-section .bus-3 { background: #d31118; }
.location-section .bus-4 { background: #fa2830; }
.location-section .bus-5 { background: #3970b3; }
.location-section .bus-6 { background: #71b116; }

@media screen and (max-width: 1280px) {
  .location-section-wrap { gap: 24px; }
  .location-section .map-wrap { border-radius: 16px; }
  .location-section .map-wrap .root_daum_roughmap,
  .location-section .map-wrap .root_daum_roughmap .wrap_map { width: 100%; height: 320px; }
  .location-section .section-item:not(:last-child) { padding-bottom: 24px; margin-bottom: 24px; }
  .location-section .section-item { flex-flow: column; gap: 16px; }
  .location-section .item-default { width: 100%; font-size: 24px; }
  .location-section .item-user { width: 100%; gap: 8px; }
  .location-section .item-txt { font-size: 14px; gap: 8px; }
  .location-section .item-txt i { font-size: 16px; }
  .location-section .item-sub-txt { font-size: 12px; }
  .location-section .item-txt-wrap { flex-flow: column; gap: 24px; }
  .location-section .item-txt-group { gap: 8px; }
  .location-section .item-title { font-size: 18px; }
  .location-section .num { width: 18px; height: 18px; line-height: 18px; font-size: 12px; }
  .location-section .bus { font-size: 12px; }
}

/* 회원사업 */
.membership-01 .color { color: #0a55a7; }
.membership-01 .bg-color { background-color: #0a55a7; }
.membership-02 .color { color: #ef8047; }
.membership-02 .bg-color { background-color: #ef8047; }
.membership-02 .detail-section-title::after { background-color: #ef8047; }
.membership-03 .color { color: #83b523; }
.membership-03 .bg-color { background-color: #83b523; }
.membership-03 .detail-section-title::after { background-color: #83b523; }

/* 회원사업 - 참가안내의 말씀 */
.sub-section-wrap { display: flex; flex-flow: column; gap: 120px; }
.sub-section { display: flex; flex-flow: column; gap: 40px; }
.sub-section .detail-section-title { margin-bottom: 0; display: flex; align-items: baseline; gap: 16px; }
.sub-section .detail-section-title .sub-txt { font-size: 16px; font-weight: normal; }
.ms-title { font-size: 32px; font-weight: bold; line-height: 1.38; }
.ms-txt { font-size: 18px; line-height: 1.5; }
.sub-section .download-btn { height: 56px; width: 100%; max-width: 328px; font-size: 17px; color: #fff; }
.ms-recommneded { padding: 56px; border-radius: 40px; position: relative; display: flex; flex-flow: column; gap: 24px; padding-right: 27.5%; }
.ms-recommneded .sub-title { font-size: 16px; opacity: .4; letter-spacing: 0.1em; color: #fff; }
.ms-recommneded .title { font-size: 24px; font-weight: bold; line-height: 1.4; color: #fff; }
.ms-recommneded .txt { font-size: 18px; line-height: 1.5; color: #fff; }
.ms-recommneded .bg-img { position: absolute; width: auto; height: calc( 100% - 112px ); object-fit: contain; object-position: center; right: 5%; top: 50%; transform: translateY(-50%); }
.ms-timeline { display: flex; flex-flow: column; gap: 24px; align-items: flex-start; }
.ms-timeline img { width: auto; height: 280px; }
.ms-notice-txt { font-size: 16px; font-weight: 600; line-height: 1.5; }

@media screen and (max-width: 1280px) {
  .sub-section-wrap { gap: 40px; }
  .sub-section { gap: 24px; }
  .sub-section .detail-section-title { flex-flow: column; gap: 8px; }
  .sub-section .detail-section-title .sub-txt { font-size: 14px; }
  .ms-title { font-size: 18px; }
  .ms-txt { font-size: 14px;; }
  .sub-section .download-btn { max-width: 420px; height: 48px; font-size: 14px; }
  .ms-recommneded { padding: 24px; border-radius: 16px; gap: 16px; z-index: 0; }
  .ms-recommneded .sub-title { font-size: 12px; }
  .ms-recommneded .title { font-size: 18px; }
  .ms-recommneded .txt { font-size: 14px; }
  .ms-recommneded .bg-img { height: 112px; right: 16px; top: unset; bottom: 24px; transform: none; z-index: -1; opacity: .6; }
  .ms-timeline { gap: 16px; }
  .ms-timeline img { width: 100%; height: auto; }
  .ms-notice-txt { font-size: 14px; }
}

/* 회원사업 - 교류회 일정 */
.detail-section-title-wrap { display: flex; flex-flow: column; gap: 24px; }
.detail-section-sub-title { line-height: 1.6; color: #707070; }
.ms-schedule-wrap { display: flex; flex-flow: wrap; gap: 40px; }
.ms-schedule-item { width: calc( ( 100% - 40px * 2 ) / 3 ); padding: 40px 32px; border-radius: 24px; border: 1px solid #e4e4e4; position: relative; display: flex; flex-flow: column; gap: 24px; }
.ms-schedule-item .item-label { position: absolute; top: 24px; right: 24px; width: 60px; line-height: 24px; text-align: center; background: #3da0dc; text-align: center; font-size: 14px; color: #fff; border-radius: 12px; display: none; }
.ms-schedule-item .item-title-wrap { display: flex; flex-flow: column; }
.ms-schedule-item .item-sub-txt { font-size: 20px; color: #aeaeae; }
.ms-schedule-item .item-title { font-size: 56px; font-weight: bold; }
.ms-schedule-item .item-sub-title { font-size: 20px; font-weight: bold; line-height: 1.5; }
.ms-schedule-item .item-txt { font-size: 16px; line-height: 1.5; }

.ms-schedule-item.active { border-color: #0088db; }
.ms-schedule-item.active .item-label { display: block; }
.ms-schedule-item.active .item-title { color: #0088db; }

@media screen and (max-width: 1280px) {
  .detail-section-title-wrap { gap: 16px; }
  .ms-schedule-wrap { gap: 24px; }
  .ms-schedule-item { width: calc( ( 100% - 24px ) / 2 ); padding: 16px; border-radius: 16px; gap: 16px; }
  .ms-schedule-item .item-label { top: 16px; right: 16px; width: 52px; line-height: 22px; font-size: 12px; }
  .ms-schedule-item .item-sub-txt { font-size: 16px; }
  .ms-schedule-item .item-title { font-size: 32px; }
  .ms-schedule-item .item-sub-title { font-size: 18px; }
  .ms-schedule-item .item-txt { font-size: 14px; }
}
@media screen and (max-width: 640px) {
  .ms-schedule-item { width: 100%; }
}

/* 회원사업 - 가입문의 및 신청 */
.ms-join-info { display: flex; gap: 32px; }
.ms-join { width: 37.5%; padding: 40px; border-radius: 32px; display: flex; flex-flow: column; justify-content: flex-end; gap: 24px; background-size: cover; background-position: center; background-repeat: no-repeat; }
.membership-01 .ms-join { background-image: url(../images/ms_1_join_bg.png); }
.membership-02 .ms-join { background-image: url(../images/ms_2_join_bg.png); }
.membership-03 .ms-join { background-image: url(../images/ms_3_join_bg.png); }
.ms-join .title-wrap { display: flex; flex-flow: column; gap: 16px; }
.ms-join .title { font-size: 40px; font-weight: bold; color: #fff; text-transform: uppercase; }
.ms-join .txt { font-size: 20px; line-height: 1.5; color: #fff; }
.ms-join .btn { width: 100%; height: 64px; border-radius: 8px; border: 1px solid #fff; text-align: center; line-height: 62px; font-size: 17px; font-weight: bold; color: #fff; }
.ms-join-info-group { display: flex; flex-flow: wrap; width: calc( 62.5% - 32px ); gap: 24px; }
.ms-join-info-item { width: calc( ( 100% - 48px ) / 3 ); background: #fff; border-radius: 24px; box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.16); padding: 40px 0; display: flex; flex-flow: column; text-align: center; align-items: center; justify-content: center; }
.ms-join-info-item .img { width: auto; height: 50px; margin-bottom: 32px; }
.ms-join-info-item .title { font-size: 18px; font-weight: bold; margin-bottom: 16px; }
.ms-join-info-item .txt { font-size: 16px; line-height: 1.5; }

.ms-join-notice-item { display: flex; gap: 40px; }
.ms-join-notice-item .item-default { width: 210px; padding: 24px 0; border-top-width: 2px; border-top-style: solid; font-size: 18px; font-weight: bold; }
.membership-01 .ms-join-notice-item .item-default { border-color: #0a55a7; color: #0a55a7; }
.membership-02 .ms-join-notice-item .item-default { border-color: #ef8047; color: #ef8047; }
.membership-03 .ms-join-notice-item .item-default { border-color: #28ac58; color: #28ac58; }
.ms-join-notice-item:last-child .item-default { border-bottom-width: 2px; border-bottom-style: solid; }
.ms-join-notice-item .item-user { width: calc( 100% - 210px - 40px ); padding: 24px 0; border-top: 2px solid #e4e4e4; }
.ms-join-notice-item:last-child .item-user { border-bottom: 2px solid #e4e4e4; }
.ms-join-notice-item .item-txt { font-size: 18px; line-height: 1.5; }
.ms-join-notice-item .item-sub-txt { font-size: 16px; line-height: 1.5; }
.ms-join-notice-item .item-group { display: flex; flex-flow: wrap; gap: 16px; }
.ms-join-notice-item .item { width: calc( ( 100% - 16px * 3 ) / 4 ); min-height: 56px; text-align: center; border: 1px solid #e4e4e4; border-radius: 8px; font-size: 16px; line-height: 1.5; display: flex; align-items: center; justify-content: center; padding: 16px; }

@media screen and (max-width: 1280px) {
  .ms-join-info { flex-flow: wrap; gap: 24px; }
  .ms-join { padding: 16px; border-radius: 16px; gap: 16px; padding-top: 180px; }
  .ms-join .title { font-size: 28px; }
  .ms-join .txt { font-size: 14px; }
  .ms-join .btn { height: 48px; line-height: 46px; font-size: 14px; }
  .ms-join-info-group { width: calc( 62.5% - 24px ); gap: 16px; }
  .ms-join-info-item { width: calc( ( 100% - 32px ) / 3 ); border-radius: 16px; padding: 24px 0; }
  .ms-join-info-item .img { height: 40px; margin-bottom: 24px; }
  .ms-join-info-item .title { font-size: 16px; margin-bottom: 8px; }
  .ms-join-info-item .txt { font-size: 14px; }

  .ms-join-notice-item { flex-flow: wrap; gap: 16px; }
  .ms-join-notice-item .item-default { width: 160px; border-top-width: 1px; font-size: 16px; }
  .ms-join-notice-item:last-child .item-default { border-bottom-width: 1px; }
  .ms-join-notice-item .item-user { width: calc( 100% - 160px - 16px ); padding: 24px 0; border-top: 1px solid #e4e4e4; }
  .ms-join-notice-item:last-child .item-user { border-bottom: 1px solid #e4e4e4; }
  .ms-join-notice-item .item-txt { font-size: 14px; }
  .ms-join-notice-item strong.item-txt { font-size: 16px; }
  .ms-join-notice-item .item-sub-txt { font-size: 14px; }
  .ms-join-notice-item .item-group { gap: 8px; }
  .ms-join-notice-item .item { width: calc( ( 100% - 8px * 2 ) / 3 ); min-height: 40px; font-size: 14px; padding: 12px; }
}

@media screen and (max-width: 960px) {
  .ms-join-info-item { width: calc( ( 100% - 16px ) / 2 ); }
}

@media screen and (max-width: 640px) {
  .ms-join { width: 100%; }
  .ms-join-info-group { width: 100%; }
  .ms-join-notice { border-top: 2px solid #0a55a7; border-bottom: 2px solid #0a55a7; }
  .membership-02 .ms-join-notice { border-color: #ef8047; }
  .membership-03 .ms-join-notice { border-color: #28ac58; }
  .ms-join-notice-item { padding: 24px 0; }
  .ms-join-notice-item:not(:last-child) { border-bottom: 2px solid #e4e4e4; }
  .ms-join-notice-item .item-default { width: 100%; padding: 0; border: 0; }
  .ms-join-notice-item:last-child .item-default { border-bottom-width: 0; }
  .ms-join-notice-item .item-user { width: 100%; padding: 0; border: 0; }
  .ms-join-notice-item .item { width: calc( ( 100% - 8px ) / 2 ); }
}

/* 회원사업 - 이달의 행사 */
.default-table-wrap.type-3 th { padding: 16px 0; background-color: #222; font-size: 17px; font-weight: bold; color: #fff; border: 1px solid #e4e4e4; }
.default-table-wrap.type-3 td { padding: 24px 0; border: 1px solid #e4e4e4; background-color: #fff; font-size: 17px; font-weight: 500; line-height: 1.5; }
.default-table-wrap.type-3 td:nth-child(1) { text-align: center; background-color: #f5f5f5; }
.default-table-wrap.type-3 td:nth-child(2) { text-align: center; }
.default-table-wrap.type-3 td:nth-child(3) { padding-left: 40px; padding-right: 40px; }
.instructor-wrap { display: flex; flex-flow: column; gap: 40px; }
.instructor-item { display: flex; }
.instructor-item .item-default { width: 220px; display: flex; flex-flow: column; gap: 12px; }
.instructor-item .item-user { width: calc( 100% - 220px ); display: flex; flex-flow: wrap; gap: 32px; }
.instructor-item .item-title { font-size: 40px; font-weight: bold; }
.instructor-item .item-sub-title { font-size: 24px; }
.instructor-item .item { width: calc( 50% - 16px ); display: flex; flex-flow: column; gap: 16px; }
.instructor-item .item-txt { font-size: 18px; font-weight: bold; }
.instructor-item .item-sub-txt-wrap { display: flex; flex-flow: column; gap: 8px; }
.instructor-item .item-sub-txt { font-size: 16px; line-height: 1.5; padding-left: 16px; position: relative; }
.instructor-item .item-sub-txt::after { content: ''; display: block; position: absolute; width: 6px; height: 6px; background: #222; border-radius: 50%; left: 0; top: 8px; }

@media screen and (max-width: 1280px) {
  .default-table-wrap.type-3 th { font-size: 14px; }
  .default-table-wrap.type-3 td { padding: 16px; font-size: 14px; }
  .default-table-wrap.type-3 td:nth-child(3) { padding-left: 16px; padding-right: 16px; }
  .instructor-wrap { gap: 24px; }
  .instructor-item { flex-flow: column; gap: 16px; }
  .instructor-item .item-default { width: 100%; flex-flow: row; gap: 8px; align-items: baseline; }
  .instructor-item .item-user { width: 100%; gap: 24px; }
  .instructor-item .item-title { font-size: 28px; }
  .instructor-item .item-sub-title { font-size: 16px; }
  .instructor-item .item { gap: 12px; }
  .instructor-item .item-txt { font-size: 16px; }
  .instructor-item .item-sub-txt-wrap { gap: 4px; }
  .instructor-item .item-sub-txt { font-size: 14px; padding-left: 12px; }
  .instructor-item .item-sub-txt::after { width: 4px; height: 4px; }
}

@media screen and (max-width: 640px) {
  .instructor-item .item { width: 100%; }
}

/* 회원사업 - 자료실 */
.archive-wrap { display: flex; flex-flow: wrap; gap: 40px; }
.archive-item { width: calc( ( 100% - 80px ) / 3 ); cursor: pointer; }
.archive-item .img-container { padding-top: 56.25%; border-radius: 16px; overflow: hidden; margin-bottom: 24px; }
.archive-item .running-time { position: absolute; line-height: 24px; padding: 0 8px; background-color: #000; border-radius: 4px; font-size: 14px; color: #fff; bottom: 16px; right: 16px; }
.archive-item .item-txt-wrap { display: flex; flex-flow: column; gap: 12px; }
.archive-item .item-title { font-size: 20px; font-weight: 500; line-height: 1.5; }
.archive-item .item-txt-group { display: flex; align-items: baseline; flex-flow: wrap; gap: 8px; }
.archive-item .item-txt { font-size: 16px; font-weight: 500; line-height: 1.5; }
.archive-item .item-sub-txt { font-size: 14px; color: #aeaeae; line-height: 1.5; }
.archive_modal .modal-wrap { max-width: 1024px; padding: 0; overflow: hidden; }
.archive_modal .archive-item { width: 100%; }
.archive_modal .archive-item .img-container { border-radius: 0; margin-bottom: 0; }
.archive_modal .archive-item .item-txt-wrap { padding: 32px; }
.archive_modal .modal-footer { margin-top: 16px; }

@media screen and (max-width: 1280px) {
  .archive-wrap { gap: 24px; }
  .archive-item { width: calc( ( 100% - 24px ) / 2 ); }
  .archive-item .img-container { margin-bottom: 16px; }
  .archive-item .running-time {line-height: 22px; font-size: 12px; bottom: 12px; right: 12px; }
  .archive-item .item-txt-wrap { gap: 8px; }
  .archive-item .item-title { font-size: 16px; }
  .archive-item .item-txt { font-size: 14px; }
  .archive-item .item-sub-txt { font-size: 12px; }
  .archive_modal .archive-item { width: 100%; }
  .archive_modal .archive-item .item-txt-wrap { padding: 16px; }
  .archive_modal .modal-footer { margin-top: 8px; justify-content: center; }
}

@media screen and (max-width: 640px) {
  .archive-item { width: 100%; }
}

/* 사내교육 - 사내위탁교육 소개 */
.subpage-top-txt { font-size: 18px; line-height: 1.5; padding-bottom: 40px; border-bottom: 1px solid #e4e4e4; margin-bottom: 40px; }
.field-list { display: flex; flex-flow: wrap; gap: 40px 32px; }
.field-item { width: calc( ( 100% - 64px ) / 3 ); padding: 64px 24px; border-radius: 16px; background-color: #e8f7fe; display: flex; flex-flow: column; align-items: center; text-align: center; gap: 32px; }
.field-item .item-num { font-size: 18px; font-weight: bold; }
.field-item .item-img { width: 163px; height: 163px; object-fit: contain; object-position: center; }
.field-item .item-title { font-size: 20px; font-weight: bold; line-height: 1.4; }
.process-list { display: flex; flex-flow: column; gap: 24px; position: relative; }
.process-list::after { content: ''; display: block; position: absolute; width: 1px; height: 80%; background: #0088db; left: 14px; top: 10%; }
.process-item { display: flex; align-items: center; padding-left: 56px; position: relative; }
.process-item .item-icon { display: block; width: 60px; height: 60px; border-radius: 50%; background-image: url(../images/internal_process_icon.png);; background-color: #fff; background-repeat: no-repeat; background-size: 28px 28px; background-position: center; position: absolute; left: -16px; top: 50%; transform: translateY(-50%); z-index: 2; }
.process-item .item-img { width: 170px; position: relative; z-index: 1; }
.process-item .item-img::after { content: ''; display: block; position: absolute; width: calc( 100% + 64px ); height: calc( 100% + 64px ); background: #fff; border-radius: 50%; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: -1; }
.process-item .item-txt-wrap { width: calc( 100% - 170px - 56px ); background: #f9f9f9; border-radius: 16px; padding: 48px; padding-left: 100px; display: flex; flex-flow: column; gap: 10px; }
.process-item .item-title { font-size: 20px; font-weight: bold; color: #0088db; }
.process-item .item-txt { font-size: 16px; line-height: 1.5; }

@media screen and (max-width: 1280px) {
  .subpage-top-txt { font-size: 14px; padding-bottom: 24px; margin-bottom: 24px; }
  .field-list { gap: 16px; }
  .field-item { width: calc( ( 100% - 32px ) / 3 ); padding: 16px; gap: 16px; }
  .field-item .item-num { font-size: 16px; }
  .field-item .item-img { width: 72px; height: 72px; }
  .field-item .item-title { font-size: 14px; }
  .process-list { gap: 24px; }
  .process-list::after { left: 8.5px; }
  .process-item { padding-left: 32px; }
  .process-item .item-icon { width: 32px; height: 32px; background-size: 16px 16px; left: -6.5px; }
  .process-item .item-img { width: 112px; position: absolute; left: 48px; top: 0; }
  .process-item .item-img::after { display: none; }
  .process-item .item-txt-wrap { width: 100%; margin-top: 56px; padding: 16px; padding-top: 72px; }
  .process-item .item-title { font-size: 16px; }
  .process-item .item-txt { font-size: 14px; }
}
@media screen and (max-width: 640px) {
  .field-item { width: calc( ( 100% - 16px ) / 2 ); }
}

/* 사내교육 - 사내교육 주요실적 */
.performance-list { display: flex; flex-flow: wrap; gap: 32px; }
.performance-item { width: calc( (100% - 64px) / 3 ); border-radius: 16px; box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.16); border: 1px solid #e4e4e4; }
.performance-item .item-img { padding: 24px; }
.performance-item .item-img img { width: 100%; height: 40px; object-fit: contain; object-position: center; }
.performance-item .item-txt { border-top: 1px solid #e4e4e4; padding: 24px; text-align: center; font-size: 16px; font-weight: 500; line-height: 1.5; }

@media screen and (max-width: 1280px) {
  .performance-list { gap: 24px; }
  .performance-item { width: calc( (100% - 48px) / 3 );}
  .performance-item .item-img img { height: 32px; }
  .performance-item .item-txt { padding: 16px; text-align: center; font-size: 14px; }
}
@media screen and (max-width: 840px) {
  .performance-item { width: calc( (100% - 24px) / 2 );}
}
@media screen and (max-width: 480px) {
  .performance-item { width: 100%;}
}

/* 회사소개 - 인사말씀/사업안내 */
.ms-sub-title { font-size: 16px; color: #aeaeae; letter-spacing: 0.2em; margin-bottom: -16px; }
.ms-txt.min { font-size: 16px; }
.sub-section-bg { padding: 120px 0; background: #f5f5f5; margin-bottom: -120px; }
.project-list { display: flex; flex-flow: wrap; gap: 32px; }
.project-item { width: calc( ( 100% - 64px ) / 3 ); background: #fff; border-radius: 16px; padding: 32px; display: flex; flex-flow: column; gap: 24px; }
.project-item .item-icon { width: 40px; height: 40px; object-fit: contain; object-position: left center; }
.project-item .item-title { font-size: 24px; font-weight: bold; color: #004b9a; }
.project-item .item-txt { font-size: 16px; line-height: 1.5; word-break: keep-all; }
.project-item .item-sub-txt-wrap { display: flex; flex-flow: column; gap: 8px; padding-top: 24px; border-top: 1px solid #e4e4e4; }
.project-item .item-sub-txt-group { display: flex; align-items: center; gap: 8px; }
.project-item .item-sub-icon { width: 32px; }
.project-item .item-sub-txt { font-size: 16px; line-height: 1.5; width: calc( 100% - 40px ); }

@media screen and (max-width: 1280px) {
  .ms-sub-title { font-size: 12px; }
  .ms-txt.min { font-size: 14px; }
  .sub-section-bg { padding: 64px 0; margin-bottom: -64px; }
  .project-list { display: flex; flex-flow: wrap; gap: 24px; }
  .project-item { width: calc( ( 100% - 48px ) / 3 ); padding: 16px;gap: 16px; }
  .project-item .item-icon { width: 32px; height: 32px; }
  .project-item .item-title { font-size: 18px; }
  .project-item .item-txt { font-size: 14px; }
  .project-item .item-sub-txt-wrap { padding-top: 16px; }
  .project-item .item-sub-icon { width: 24px; }
  .project-item .item-sub-txt { font-size: 14px; width: calc( 100% - 32px ); }
}
@media screen and (max-width: 960px) {
  .project-item { width: 100%; }
}

/* 회사소개 - 비전 */
.vision-img { display: block; max-width: 800px; margin: 0 auto; }
.vision-img.mb { display: none; }
@media screen and (max-width: 1280px) {
  .vision-img.pc { display: none; }
  .vision-img.mb { display: block; max-width: 480px; }
}

/* 이용안내 - 공개강좌 신청안내 */
.guidance-info-img { max-width: 1024px; object-fit: contain; margin: 0 auto; }
@media screen and (max-width: 1280px) {
  .guidance-info-img { max-width: 220px;; }
}

/* 공지사항 */
.subpage-title-wrap.notice { padding-bottom: 0; border-bottom: 0; display: flex; flex-flow: wrap; justify-content: space-between; }
.subpage-title-wrap.notice::after { display: none; }
.subpage-title-wrap .form-search-wrap { max-width: 360px; }
.subpage-title-wrap .form-search-input { height: 56px; border-radius: 28px; }

.notice-list { margin-top: 0; border-top: 2px solid #202020; border-bottom: 2px solid #202020; }
.notice-item { padding: 20px 24px; padding-left: 0; align-items: center; justify-content: space-between; transition: .2s; cursor: pointer; }
.notice-item:hover { background: #f5f5f5; }
.notice-item:not(:last-child) { border-bottom: 1px solid #e4e4e4; }
.notice-item .txt-wrap { width: 100%; align-items: center; gap: 16px; }
.notice-item .txt { max-width: calc( 100% - 88px - 88px ); font-size: 20px; font-weight: 300; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.notice-item .date-wrap { width: 88px; }
.notice-item .date-wrap .day { font-size: 40px; font-weight: bold; color: #a4a4a4; transition: .2s; text-align: center; }
.notice-item .date-wrap .month { font-size: 17px; font-weight: 300; color: #a4a4a4; transition: .2s; text-align: center; }
.notice-item .icon { display: none; width: 56px; height: 56px; margin-left: 24px; text-align: left; }
.notice-item.top .icon { display: block; }
.notice-item.top .date-wrap .day, .notice-item.top .date-wrap .month { display: none; }
.notice-item.top .txt { font-weight: bold; }
.notice-item .more-btn { font-size: 32px; transition: .2s; margin-left: auto; }

@media screen and (max-width: 1280px) {
  .subpage-title-wrap.notice { gap: 8px; align-items: flex-end; }
  .subpage-title-wrap .form-search-input { height: 48px; border-radius: 24px; }

  .notice-list { border-top: 1px solid #202020; border-bottom: 1px solid #202020; }
  .notice-item { padding: 16px 0; }
  .notice-item .txt-wrap { gap: 8px; }
  .notice-item .txt { max-width: calc( 100% - 56px - 32px ); font-size: 14px; line-height: 1.5; display: -webkit-box; word-wrap: break-word; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; height: calc((14px* 1.5)* 2); white-space: unset; }
  .notice-item .date-wrap { width: 56px; }
  .notice-item .date-wrap .day { font-size: 20px; }
  .notice-item .date-wrap .month { font-size: 12px; }
  .notice-item .icon { width: 40px; height: 40px; margin-left: 8px; }
  .notice-item .more-btn { font-size: 16px; }
}

/* 게시글 상세 */
.board_detail { padding-top: 56px; padding-bottom: 160px; min-height: calc( 100vh - 252px ); background: #fff; }
.board_detail .container { max-width: 1280px; }
.board_detail .title-wrap { align-items: center; text-align: center; gap: 16px; padding-bottom: 40px; border-bottom: 1px solid #e4e4e4; }
.board_detail .title-wrap .sub-title { font-size: 18px; font-weight: bold; }
.board_detail .title-wrap .title { font-size: 40px; font-weight: bold; line-height: 1.4; }
.board_detail .title-wrap .txt-group { gap: 32px; }
.board_detail .title-wrap .txt { font-size: 16px; }
.board_detail .title-wrap .txt strong { font-weight: 500; }
.board_detail .con-wrap { padding: 40px 0 80px; margin: 0 auto; }
.board_detail .con-wrap * { font-size: inherit; line-height: inherit; font-style: revert; float: unset !important; }
.board_detail .con-wrap img { max-width: 100%; width: unset; height: auto; }
.board_detail .con-wrap ol, .board_detail .con-wrap ul, .board_detail .con-wrap li { padding: revert; list-style: revert; }

.file-download-group { gap: 8px; margin-bottom: 24px; }
.file-download-wrap { height: 52px; align-items: center; padding: 0 16px; background: #e8f7fe; border-radius: 4px; gap: 8px; }
.file-download-wrap .icon { font-size: 20px; color: #009eff; }
.file-download-wrap .file-title { font-size: 16px; width: calc( 100% - 56px ); min-width: 136px; font-size: 16px; font-weight: normal; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.board_detail .btm-item-wrap { margin-top: 40px; display: flex; justify-content: space-between; align-items: center; position: relative; width: 100%; border-top: 1px solid #202020; padding-top: 24px; min-height: 56px; box-sizing: content-box; }
.board_detail .btm-item-wrap .item { font-size: 17px; color: #a4a4a4; font-weight: bold; display: flex; gap: 8px; align-items: baseline; width: calc( (100% - 88px ) / 2 ); cursor: pointer; }
.board_detail .btm-item-wrap .next-item { justify-content: flex-end; }
.board_detail .btm-item-wrap .item-default { width: 80px; }
.board_detail .btm-item-wrap .next-item .item-default { text-align: right; }
.board_detail .btm-item-wrap .item-user { color: #a4a4a4; font-weight: 300; max-width: calc( 100% - 92px ); font-size: 17px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; line-height: 1.5; }
.board_detail .btm-item-wrap .list-btn { width: 56px; height: 56px; border-radius: 50%; border: 2px solid #aeaeae; text-align: center; cursor: pointer; position: absolute; left: 50%; top: 24px; transform: translateX(-50%); }
.board_detail .btm-item-wrap .list-btn i { font-size: 24px; color: #aeaeae; line-height: 52px; }

.board-detail-list { gap: 24px; }
.board-detail-item .item-title { width: 122px; font-size: 17px; font-weight: bold; position: relative; line-height: 1.5; }
.board-detail-item .item-title::after { content: ''; display: block; position: absolute; width: 2px; height: 18px; background: #d5d5d5; right: 0; top: 4px; }
.board-detail-item .item-txt { width: calc( 100% - 122px ); padding-left: 24px; font-size: 17px; line-height: 1.5; }

@media screen and (max-width:1280px) {
  .board_detail { padding-top: 0; padding-bottom: 40px; }
  .board_detail .container { padding-left: 16px; padding-right: 16px; }
  .board_detail .title-wrap { padding: 0; padding-bottom: 24px; border-top: 0; gap: 12px; }
  .board_detail .title-wrap .sub-title { font-size: 14px; }
  .board_detail .title-wrap .title { font-size: 18px;}
  .board_detail .title-wrap .txt-group { gap: 24px; width: 100%; justify-content: center; }
  .board_detail .title-wrap .txt { font-size: 13px; }
  .board_detail .con-wrap { padding: 24px 0; }
  .file-download-group { gap: 8px; }
  .file-download-wrap { height: 40px; padding: 0 16px; }
  .file-download-wrap i { font-size: 16px; }
  .file-download-wrap .file-title { font-size: 14px; width: calc( 100% - 48px ); }
  .board_detail .btm-item-wrap { margin-top: 24px; padding-top: 16px; min-height: 40px; }
  .board_detail .btm-item-wrap .item { flex-flow: column; font-size: 14px; gap: 8px; width: calc( (100% - 56px ) / 2 ); }
  .board_detail .btm-item-wrap .item-default { width: auto; font-size: 14px; }
  .board_detail .btm-item-wrap .next-item { flex-flow: column-reverse; align-items: flex-end; }
  .board_detail .btm-item-wrap .next-item .item-default { text-align: right; }
  .board_detail .btm-item-wrap .item-user { max-width: 100%; font-size: 14px; }
  .board_detail .btm-item-wrap .list-btn { width: 40px; height: 40px; border: 1px solid #aeaeae; top: 16px; }
  .board_detail .btm-item-wrap .list-btn i { font-size: 20px; line-height: 38px; }

  .board-detail-list { gap: 16px; }
  .board-detail-item .item-title { width: 96px; font-size: 14px; }
  .board-detail-item .item-title::after { height: 14px; }
  .board-detail-item .item-txt { width: calc( 100% - 96px ); padding-left: 16px; font-size: 14px; }
}

/* 자주하는 질문 */
.faq-contents-wrap { border-top: 2px solid #202020; border-bottom: 2px solid #202020; }
.faq-contents-item { border-bottom: 1px solid #e4e4e4; width: 100%;  cursor: pointer;  }
.faq-contents-item .icon { display: block; font-size: 32px; line-height: 56px; }
.faq-contents-item .content-wrap { padding: 20px 24px; display: flex; width: 100%; align-items: flex-start; min-height: 88px; position: relative; background: #fff; transition: .2s;}
.faq-contents-item .faq-text { width: 56px; height: 56px; border-radius: 50%; text-align: center; background: #0088db; font-size: 32px; line-height: 56px; font-weight: bold; color: #fff; }
.faq-contents-item .faq-title { width: calc( 100% - 88px ); padding: 0 24px; padding-top: 13px; font-size: 20px; font-weight: 300; line-height: 1.5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.faq-contents-item .answer-wrap { background: #f5f5f5; border-top: 1px solid #e4e4e4; display: none; }
.faq-contents-item .answer-wrap .content-wrap { align-items: flex-start; padding-top: 40px; padding-bottom: 40px; background: none; }
.faq-contents-item .answer-wrap .faq-text { background: #fff; color: #0088db; }
.faq-contents-item .answer-wrap .faq-title { white-space: unset; padding-top: 0; }

.faq-contents-item.active .faq-title { white-space: unset; }
.faq-contents-item.active .answer-wrap { display: block; }
.faq-contents-item.active .icon { transform: rotate(180deg); }

@media screen and (max-width: 1280px) {
  .faq-contents-wrap { border-top: 1px solid #202020; border-bottom: 1px solid #202020; }
  .faq-contents-item .icon { font-size: 16px; line-height: 40px; }
  .faq-contents-item .content-wrap { padding: 16px 8px; min-height: 72px; }
  .faq-contents-item .faq-text { width: 40px; height: 40px; font-size: 24px; line-height: 40px; }
  .faq-contents-item .faq-title { width: calc( 100% - 56px ); padding: 0 16px; padding-top: 0; font-size: 14px; ine-height: 1.5; display: -webkit-box; word-wrap: break-word; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; height: calc((14px* 1.5)* 2); white-space: unset; }

  .faq-contents-item .answer-wrap .content-wrap { padding-top: 16px; padding-bottom: 16px; }
  .faq-contents-item .answer-wrap .faq-title { height: auto; }
  .faq-contents-item .answer-wrap .faq-title * { font-size: 14px; }

  .faq-contents-item.active .faq-title { height: auto; display: block; }
}

/* 문의하기 */
.inquiry-form-wrap, .inquiry-form-wrap .form-list { gap: 24px; }
.inquiry-form-wrap .checked-item { justify-content: center; }
.inquiry-form-wrap .form-submit-btn { max-width: 360px; border-radius: 28px; }
.inquiry-form-wrap .form-item .item-default { position: relative }
.inquiry-form-wrap .form-item .item-default .checked-item { position: absolute; right: 0; top: 0; gap: 4px; }
.inquiry-form-wrap .form-item .item-default .checked-item .icon { width: 14px; height: 14px; border-radius: 50%; }
.inquiry-form-wrap .form-item .item-default .checked-item .icon i { font-size: 10px; }
.inquiry-form-wrap .form-item .item-default .checked-item .txt { font-size: 14px; }

.file-upload-wrap { width: 100%; gap: 16px; flex-flow: wrap; align-items: flex-start; }
.file-upload-btn { width: 100%; display: flex; justify-content: center; gap: 8px; height: 52px; background-color: #707070; text-align: center; align-items: center; font-size: 16px; font-weight: 500; color: #fff; border-radius: 8px; }

.select-preview-wrap { width: 100%; display: flex; flex-flow: column; gap: 8px; }
.select-preview-item { width: 100%; height: 52px; display: flex; align-items: center; padding: 0 16px; background: #e8f7fe; }
.select-preview-item .icon { font-size: 20px; }
.select-preview-wrap .title { width: calc( 100% - 36px ); font-size: 16px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding-left: 8px; }
.select-preview-wrap .del-btn { font-size: 16px; color: #aeaeae; }

@media screen and (max-width: 1280px) {
  .inquiry-form-wrap, .inquiry-form-wrap .form-list { flex-flow: column; }
  .inquiry-form-wrap .form-submit-btn { border-radius: 8px; }
  .inquiry-form-wrap .form-item .item-default .checked-item .txt { font-size: 12px; }

  .file-upload-wrap { width: 100%; gap: 16px; flex-flow: wrap; align-items: flex-start; }
  .file-upload-btn { height: 48px; font-size: 14px; }

  .select-preview-item { height: 48px; }
  .select-preview-item .icon { font-size: 16px; }
  .select-preview-wrap .title { width: calc( 100% - 24px ); font-size: 14px; padding-left: 8px; }
  .select-preview-wrap .del-btn { font-size: 14px; }
}

/* 문의내역 */
.inquiry-btn { width: 200px; height: 52px; border-radius: 26px; background: #0088db; text-align: center; line-height: 52px; font-size: 17px; font-weight: bold; color: #fff; margin-left: auto; }
.inquiry-list { border-top: 2px solid #222222; border-bottom: 2px solid #222222; }
.inquiry-item { padding: 24px; display: flex; align-items: center; }
.inquiry-item:not(:last-child) { border-bottom: 1px solid #e4e4e4; }
.inquiry-item .item-label { width: 104px; line-height: 36px; text-align: center; border-radius: 18px; background: #222222; font-size: 16px; font-weight: bold; color: #fff; }
.inquiry-item .item-label.active { background: #eb3131; }
.inquiry-item .item-txt-wrap { width: calc( 100% - 104px - 150px ); display: flex; align-items: center; gap: 16px; padding-left: 16px; }
.inquiry-item .item-title { font-size: 18px; font-weight: 600; color: #0088db; white-space: nowrap; }
.inquiry-item .item-txt { font-size: 18px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.inquiry-item .item-sub-txt { width: 150px; text-align: right; font-size: 16px; color: #aeaeae; }

@media screen and (max-width: 1280px) {
  .inquiry-btn { width: 120px; height: 40px; line-height: 40px; font-size: 14px; }
  .inquiry-list { border-top: 1px solid #222222; border-bottom: 1px solid #222222; }
  .inquiry-item { padding: 16px 0; flex-flow: column; gap: 12px; align-items: flex-start; }
  .inquiry-item .item-label { width: 72px; line-height: 24px; font-size: 13px; }
  .inquiry-item .item-txt-wrap { width: 100%; flex-flow: column; align-items: flex-start; gap: 8px; padding-left: 0; }
  .inquiry-item .item-title { font-size: 14px; }
  .inquiry-item .item-txt { font-size: 14px; line-height: 1.4; display: -webkit-box; word-wrap: break-word; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; max-height: calc( ( 1em * 1.4 ) * 2 ); white-space: unset; }
  .inquiry-item .item-sub-txt { width: fit-content; text-align: left; font-size: 12px; }

  .inquiry_modal .modal-alert { top: unset; transform: none; bottom: 0; left: 0; right: 0; width: 100%; max-width: unset; border-bottom-right-radius: 0; border-bottom-left-radius: 0; }
}

/* 문의내역 - 상세 */
.inquiry_detail .title-wrap { align-items: flex-start; text-align: left; gap: 8px; padding: 24px 0; position: relative; padding-right: 104px; }
.inquiry_detail .title-wrap .title { font-size: 20px; }
.inquiry_detail .title-wrap .txt { font-size: 16px; color: #aeaeae; }
.inquiry_detail .title-wrap .label { width: 104px; line-height: 36px; text-align: center; border-radius: 18px; background: #222222; font-size: 16px; font-weight: bold; color: #fff; position: absolute; right: 0;top: 24px; }
.inquiry_detail .title-wrap .label.active { background: #eb3131; }
.inquiry_detail .con-wrap { max-width: unset; padding: 24px 0; font-size: 16px; line-height: 1.5; }

.inquiry-detail-wrap { border-top: 2px solid #222222; }
.inquiry-detail-item:not(:last-child) { border-bottom: 1px solid #222222; }
.inquiry-detail-item .a-content { padding: 40px; background: #f5f5f5; margin: 24px 0; }
.inquiry-detail-item .a-content .txt-group { align-items: baseline; gap: 16px; margin-bottom: 16px; }
.inquiry-detail-item .a-content .txt { font-size: 20px; font-weight: bold; line-height: 1.5; }
.inquiry-detail-item .a-content .sub-txt { color: #aeaeae; font-size: 14px; }
.inquiry-detail-item .a-content .item-txt { font-size: 16px; line-height: 1.5; align-items: flex-start; }

.inquiry_detail .form-footer { margin-top: 40px; }
.inquiry_detail .form-submit-btn { margin: 0; max-width: 280px; }

@media screen and (max-width: 1280px) {
  .inquiry_detail .title-wrap { padding-right: 0; padding: 16px 0; }
  .inquiry_detail .title-wrap .title { font-size: 16px; }
  .inquiry_detail .title-wrap .txt { font-size: 12px; }
  .inquiry_detail .title-wrap .label { width: 72px; line-height: 24px; font-size: 13px; position: static; margin-bottom: 4px; }
  .inquiry_detail .con-wrap { padding: 16px 0; font-size: 14px; }

  .inquiry-detail-item .a-content { padding: 16px; margin: 16px 0; }
  .inquiry-detail-item .a-content .txt-group { gap: 8px; margin-bottom: 8px; }
  .inquiry-detail-item .a-content .txt { font-size: 16px; }
  .inquiry-detail-item .a-content .sub-txt { font-size: 12px; }
  .inquiry-detail-item .a-content .item-txt { font-size: 14px; }

  .inquiry_detail .form-submit-btn { max-width: unset; }
}

/* 마이페이지 */
.mypage { padding: 56px 16px 120px; display: flex; gap: 56px; width: 1392px; margin: 0 auto; }
.mypage_index .mypage-nav { width: 100%; max-width: 640px; margin: 0 auto; }
.mypage-nav { width: 224px; }
.mypage-nav-top { font-size: 20px; line-height: 1.5; padding-bottom: 24px; border-bottom: 1px solid #222222; }
.mypage-nav-top strong { font-size: 40px; }
.mypage-nav-list { padding: 24px 0; display: flex; flex-flow: column; gap: 16px; }
.mypage-nav-title { font-size: 20px; font-weight: 600; }
.mypage-nav-item-group { display: flex; flex-flow: column; gap: 16px; }
.mypage-nav-item { font-size: 16px; color: #8c8c8c; width: fit-content; text-align: left; line-height: 1.2; }
.mypage-nav-item.active { color: #222222; }
.mypage-wrap { width: calc( 100% - 280px ); }
.mypage-section-wrap { display: flex; flex-flow: column; gap: 24px; }
.mypage-title-wrap { display: flex; align-items: flex-end; gap: 16px; padding-bottom: 24px; position: relative; }
.mypage-title-wrap.border { border-bottom: 2px solid #222; margin-bottom: 40px; }
.mypage-title { font-size: 32px; font-weight: bold; }
.mypage-sub-title { font-size: 16px; color: #8c8c8c; }

.mp-sub-nav-wrap { display: flex; align-items: center; gap: 4px; color: #aeaeae }
.mp-sub-nav-item { font-size: 14px; color: #aeaeae; }

@media screen and (max-width: 1280px) {
  .mypage { margin-top: 80px; padding: 0; padding-bottom: 64px; width: 100%; display: block; }
  .mypage-nav { width: 100%; position: sticky; top: 80px; background: #fff; z-index: 9; }
  .mypage-nav-top { display: none; }
  .mypage-nav-wrap { display: flex; }
  .mypage-nav-list { width: 100%; padding: 0; gap: 0; background: #fff; }
  .mypage-nav-title { font-size: 14px; line-height: 40px; text-align: center; font-weight: 500; }
  .mypage-nav-list.active .mypage-nav-title { color: #0088db; }
  .mypage-nav-item-group { display: none; position: absolute; top: 40px; left: 0; width: 100vw; flex-flow: row; gap: 0; padding: 0 16px; background-color: #f5f5f5; }
  .mypage-nav-list.active .mypage-nav-item-group { display: flex; }
  .mypage-nav-item { width: 100%; text-align: center; font-size: 16px; line-height: 40px; font-size: 14px; position: relative; }
  .mypage-nav-item.active::after { content: ''; display: block; position: absolute; width: 100%; height: 2px; background: #222; bottom: 0; left: 0; right: 0; }
  .mypage-nav-item.logout-btn { display: none; }
  .mypage-wrap { width: 100%; padding: 0 16px; padding-top: 64px; }
  .mypage-section-wrap { display: flex; flex-flow: column; gap: 24px; }
  .mypage-title-wrap { flex-flow: wrap; gap: 8px; padding-bottom: 16px; position: relative; }
  .mypage-title-wrap.border { border-bottom: 1px solid #222; margin-bottom: 24px; }
  .mypage-title { font-size: 24px; }
  .mypage-sub-title { font-size: 14px; }

  .mp-sub-nav-wrap { width: 100%; }
  .mp-sub-nav-item { font-size: 12px; }

  .mypage-title-wrap .inquiry-btn { position: absolute; top: 0; right: 0; }

}

/* 마이페이지 회원 정보 수정 */
.mypage .user-section { margin: 0; }
.mypage div.form-input { display: flex; align-items: center; justify-content: space-between; }
.input-default { font-size: 16px; }
.input-user { font-size: 16px; font-weight: bold; }
.leave-btn { margin: 16px auto 0; display: block; font-size: 16px; font-weight: 500; color: #aeaeae; text-decoration: underline; }

@media screen and (max-width: 1280px) {
  .input-default { font-size: 14px; }
  .input-user { font-size: 14px; }
  .leave-btn { font-size: 14px; }
}

/* 마이페이지 회원 기간 */
.mp-membership-top { padding: 24px; border-radius: 24px; background: #e8f7fe; display: flex; justify-content: space-between; align-items: center; }
.mp-membership-top .txt { display: flex; align-items: center; gap: 8px; font-size: 20px; }
.mp-membership-top .date { padding: 12px 16px; background: #fff; border-radius: 8px; font-size: 20px; font-weight: bold; }
.mp-membership-top .btn { width: 100%; max-width: 280px; height: 56px; border-radius: 8px; background: #0088db; text-align: center; line-height: 56px; font-size: 17px; font-weight: bold; color: #fff; }
.default-table-wrap.type-4 { border: 1px solid #e4e4e4; border-radius: 16px; overflow: hidden; }
.default-table-wrap.type-4 th { background: #f5f5f5; padding: 16px; font-size: 18px; font-weight: 600; border-bottom: 1px solid #e4e4e4; }
.default-table-wrap.type-4 th:not(:last-child) { border-right: 1px solid #e4e4e4; }
.default-table-wrap.type-4 td { padding: 16px; font-size: 17px; font-weight: 500; }
.default-table-wrap.type-4 tr:not(:last-child) td { border-bottom: 1px solid #e4e4e4; }
.default-table-wrap.type-4 td:not(:last-child) { border-right: 1px solid #e4e4e4; }

@media screen and (max-width: 1280px) {
  .mp-membership-top { padding: 16px; border-radius: 16px; flex-flow: wrap; gap: 16px; justify-content: center; }
  .mp-membership-top .txt { font-size: 14px; }
  .mp-membership-top .date { padding: 8px; font-size: 16px; }
  .mp-membership-top .btn { max-width: 320px; height: 48px; line-height: 48px; font-size: 14px; }
  .default-table-wrap.type-4 { border-radius: 8px; overflow-x: auto; }
  .default-table-wrap.type-4 th { padding: 16px; font-size: 14px; }
  .default-table-wrap.type-4 td { padding: 16px; font-size: 14px; white-space: nowrap; }
}

.privacy { padding: 40px 0 120px; max-width: 1280px; margin: 0 auto;}
.privacy * { line-height: 1.5; }
.privacy .modal_top {width:100%; border-bottom:2px solid #4b4b4b; padding-bottom:8px; }
.privacy .modal_top h3 {font-size:24px; font-weight:bold; }
.privacy .modal_top p {padding-top:3px; color:#a2a2a2}

.privacy .privacy_con {margin-top:30px; border: 1px solid #d3d3d3; padding:20px; color:#2d2d2d;}
.privacy .privacy_con h5 {font-weight:bold; color:#000; margin-top:15px; }
.privacy .privacy_con p span {color:#000}
.privacy .privacy_box {border: 1px solid #d3d3d3; padding:15px; margin:15px 0}

.privacy .privacy_cs {border: 1px solid #d3d3d3; padding:15px; margin:15px 0}
.privacy .privacy_cs h4 {font-weight:bold; color:#000; }

@media screen and (max-width: 1280px) {
  .privacy { padding: 104px 16px 40px;}
  .privacy * { font-size: 14px; }
  .privacy .modal_top h3 {font-size:18px; font-weight:bold; }

}

/* 홍보담당자 성장포럼 - 자료실 */
.default-table-wrap.type-5 table { border-top: 2px solid #222; border-bottom: 2px solid #222; }
.default-table-wrap.type-5 th { padding: 20px 16px; font-size: 18px; font-weight: bold; border-bottom: 1px solid #222; }
.default-table-wrap.type-5 td { padding: 32px 16px; font-size: 18px; border-bottom: 1px solid #e4e4e4; }
.archive-table th:nth-child(1), .archive-table td:nth-child(1) { width: 136px; }
.archive-table th:nth-child(3), .archive-table td:nth-child(3) { width: 207px; }
.archive-btn { width: 175px; height: 44px; border-radius: 4px; display: flex; justify-content: center; align-items: center; gap: 16px; background-color: #ffe4e4; font-size: 17px; color: #eb3131; }
.archive-btn.disable { background-color: #e4e4e4; color: #aeaeae; }
.archive-btn.download { background-color: #0088db; color: #fff; }
@media screen and (max-width: 1280px) {
  .default-table-wrap.type-5 th { padding: 12px 8px; font-size: 14px; }
  .default-table-wrap.type-5 td { padding: 16px 8px; font-size: 14px; }
  .archive-btn { width: 120px; height: 36px; gap: 8px; font-size: 13px; }
}