@charset "UTF-8";
@import url(//fonts.googleapis.com/earlyaccess/nanummyeongjo.css);

.therapist {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 25px;
    margin-block: 30px 15px;
    background-color: #fff;
    border: 1px solid var(--border-color);
    border-radius: 20px
}

.therapist .left .profile_thumb .thumb_con {
    width: 70px;
    height: 70px
}

.therapist .left .profile_thumb .thumb_upload .upload_btn {
    width: 22px;
    height: 22px
}

.therapist .left .profile_thumb .thumb_upload .upload_btn .img {
    width: 14px
}

.therapist .left .name {
    font-size: 12px;
    font-weight: 700
}

.therapist .left .name .degree {
    font-size: 12px;
    font-weight: 500;
    color: #909090
}

.therapist .right .therap_menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0 10px;
    width: 140px;
    padding-block: 10px
}

.therapist .right .therap_menu .menu {
    width: calc((100% - 10px)/ 2);
    padding-block: 10px;
    text-align: center
}

.therapist .right .therap_menu .menu .link {
    font-size: 12px;
    font-weight: 600
}

.therapy_banner {
    margin-bottom: 15px
}

.talk_banner .swiper-wrapper .swiper-slide {
    position: relative;
    padding: 25px;
    border: 1px solid var(--border-color);
    border-radius: 20px;
    background-color: #fff;
    text-align: left
}

@media (max-width:550px) {
    .talk_banner .swiper-wrapper .swiper-slide {
        height: 380px
    }
}

@media (max-width:410px) {
    .talk_banner .swiper-wrapper .swiper-slide {
        height: auto
    }
}

.talk_banner .swiper-wrapper .swiper-slide .bg_img {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 130px;
    height: auto;
    z-index: 1
}

.talk_banner .swiper-wrapper .swiper-slide .txt_con {
    position: relative;
    z-index: 2
}

.talk_banner .swiper-wrapper .swiper-slide .txt_con .t1 {
    margin-bottom: 20px;
    font-size: 20px;
    font-weight: 700;
    font-family: "Nanum Myeongjo", serif
}

.talk_banner .swiper-wrapper .swiper-slide .txt_con .t2 {
    margin-bottom: 70px;
    font-size: 20px;
    font-weight: 400;
    font-family: "Nanum Myeongjo", serif;
    line-height: 25px;
    letter-spacing: -1.4px
}

.talk_banner .swiper-wrapper .swiper-slide .txt_con .box .t3 {
    margin-bottom: 20px;
    font-size: 15px;
    font-weight: 300;
    line-height: 22px
}

.talk_banner .swiper-wrapper .swiper-slide .txt_con .box .t3:last-child {
    margin-bottom: 0
}

.main_card_con .card_list .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    padding: 30px 25px;
    border: 1px solid var(--border-color);
    border-radius: 20px
}

@media (max-width:380px) {
    .main_card_con .card_list .list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .main_card_con .card_list .list .txt_con {
        text-align: center
    }
}

.main_card_con .card_list .list.reser {
    background: url(../images/img/img_main_card1.png) no-repeat center/cover
}

.main_card_con .card_list .list.reser .link_con {
    background-color: var(--brown-color);
    color: #fff
}

.main_card_con .card_list .list.consulting {
    background: url(../images/img/img_main_card2.png) no-repeat center/cover
}

.main_card_con .card_list .list.consulting .link_con {
    background-color: #fff;
    color: #000
}

.main_card_con .card_list .list .txt_con {
    color: #fff;
    line-height: 20px;
    letter-spacing: -.7px
}

.main_card_con .card_list .list .txt_con .t1 {
    font-size: 14px;
    font-weight: 800;
    font-family: "Nanum Myeongjo", serif
}

.main_card_con .card_list .list .txt_con .t2 {
    font-size: 12px;
    font-weight: 600;
    font-family: "Nanum Myeongjo", serif
}

.main_card_con .card_list .list .link_con {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    padding: 2px 17px;
    border: 1px solid var(--border-color);
    border-radius: 20px
}

.main_card_con .card_list .list .link_con .link {
    font-size: 16px;
    font-weight: 500
}

.talk_therapy {
    margin-top: 35px
}

.recomend_con .btn-secondary {
    background-color: var(--border-color);
    border-color: var(--border-color);
    font-weight: 500;
    color: #000
}

.reason .btn-secondary {
    background-color: var(--border-color);
    border-color: var(--border-color);
    font-weight: 500;
    color: #000
}

.treatment {
    margin-top: 35px
}

@media (max-width:480px) {
    .treatment .common_slide .swiper-wrapper .swiper-slide .txt_con>.d-flex {
        -webkit-box-align: start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.treatment .btn-secondary {
    background-color: var(--border-color);
    border-color: var(--border-color);
    font-weight: 500;
    color: #000
}

.rehabilitator {
    margin-top: 35px
}

.rehabilitator .rehabilitator_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 25px
}

.rehabilitator .rehabilitator_list .list {
    width: calc((100% - 25px)/ 2);
    padding: 15px;
    background-color: #fff;
    border: 1px solid var(--border-color);
    border-radius: 15px
}

.rehabilitator .rehabilitator_list .list .img_con {
    position: relative;
    width: 100%;
    margin: 0 auto;
    border-radius: 50%;
    overflow: hidden
}

@media (max-width:340px) {
    .rehabilitator .rehabilitator_list .list .img_con {
        width: 70%
    }
}

.rehabilitator .rehabilitator_list .list .img_con::before {
    content: "";
    display: block;
    padding-bottom: 100%
}

.rehabilitator .rehabilitator_list .list .img_con img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.rehabilitator .rehabilitator_list .list .txt_con {
    text-align: center
}

.rehabilitator .rehabilitator_list .list .txt_con .name {
    margin-top: 5px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    font-size: 14px;
    font-weight: 700;
    font-family: "Nanum Myeongjo", serif;
    line-height: 28px
}

.rehabilitator .rehabilitator_list .list .txt_con .job {
    margin-bottom: 3px;
    font-size: 10px;
    font-weight: 500;
    line-height: 28px;
    color: #909090
}

@media (max-width:340px) {
    .rehabilitator .rehabilitator_list .list .txt_con .job {
        line-height: 14px
    }
}

.rehabilitator .rehabilitator_list .list .txt_con .rating_con .rate {
    position: relative;
    display: inline-block;
    padding-left: 20px;
    font-size: 10px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: -1.2px;
    color: #909090
}

.rehabilitator .rehabilitator_list .list .txt_con .rating_con .rate::before {
    content: "";
    position: absolute;
    display: block;
    width: 16px;
    height: 16px;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../images/ico/ico_rating_star.png) no-repeat center/cover
}

@media (max-width:340px) {
    .rehabilitator .rehabilitator_list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .rehabilitator .rehabilitator_list .list {
        width: 100%
    }
}

.rehabilitator .btn-secondary {
    background-color: var(--border-color);
    border-color: var(--border-color);
    font-weight: 500;
    color: #000
}

.process {
    margin-top: 35px
}

.process .process_list .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 15px;
    margin-bottom: 35px
}

.process .process_list .list:last-child {
    margin-bottom: 0
}

.process .process_list .list:nth-child(1) .img_con::after {
    content: "1"
}

.process .process_list .list:nth-child(2) .img_con::after {
    content: "2"
}

.process .process_list .list:nth-child(3) .img_con::after {
    content: "3"
}

.process .process_list .list:nth-child(4) .img_con::after {
    content: "4"
}

.process .process_list .list:nth-child(5) .img_con::after {
    content: "5"
}

.process .process_list .list:nth-child(6) .img_con::after {
    content: "6"
}

.process .process_list .list .img_con {
    position: relative;
    width: 50%;
    border-radius: 15px;
    overflow: hidden;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -o-object-fit: cover;
    object-fit: cover
}

.process .process_list .list .img_con::before {
    content: "";
    display: block;
    padding-bottom: 100%
}

.process .process_list .list .img_con::after {
    content: "1";
    position: absolute;
    display: block;
    width: 20px;
    height: 20px;
    top: 15px;
    left: 15px;
    border-radius: 6px;
    background-color: #fff;
    font-size: 15px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: -1.5px;
    text-align: center
}

.process .process_list .list .img_con .img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -o-object-fit: cover;
    object-fit: cover
}

.process .process_list .list .txt_con .tit {
    margin-bottom: 12px;
    font-size: 16px;
    font-weight: 800;
    font-family: "Nanum Myeongjo", serif;
    line-height: 20px;
    letter-spacing: -1.5px
}

.process .process_list .list .txt_con .desc {
    font-size: 10px;
    font-weight: 500;
    line-height: 15px;
    letter-spacing: -1px
}

.process .btn-secondary {
    background-color: var(--border-color);
    border-color: var(--border-color);
    font-weight: 500;
    color: #000
}

.main_bottom {
    position: relative;
    width: 100%;
    background: url(../images/img/img_background_bottom.png) no-repeat center/cover
}

.main_bottom .inner .img_con {
    width: 350px;
    padding-block: 140px 70px;
    margin: 0 auto
}

.main_bottom .inner .img_con .img {
    width: 100%
}

@media (max-width:480px) {
    .main_bottom .inner .img_con {
        width: 100%
    }
}

.main_bottom .inner .logo_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 18px;
    margin-bottom: 25px
}

.main_bottom .inner .logo_con .logo {
    width: 40px
}

.main_bottom .inner .logo_con .txt_logo {
    width: 168px
}

.main_bottom .inner .btn_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 15px;
    margin-bottom: 75px
}

.main_bottom .inner .btn_con .btn {
    border: 1px solid var(--border-color);
    border-radius: 23px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    font-family: "Nanum Myeongjo", serif;
    line-height: 20px;
    letter-spacing: -1.75px
}

.main_bottom .inner .btn_con .policy {
    padding: 3px 10px
}

.main_bottom .inner .btn_con .terms {
    padding: 3px 25px
}

.main_bottom .inner .bottom_footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-block: 15px 30px;
    border-top: 1px solid var(--border-color)
}

.main_bottom .inner .bottom_footer .txt_logo {
    width: 60px
}

.main_bottom .inner .bottom_footer .copyright {
    font-size: 11px;
    font-weight: 500;
    line-height: 15px;
    letter-spacing: -.5px;
    color: #fff
}

.mypage_profile {
    padding-bottom: 30px;
    background-color: #fff
}

.mypage_profile .d-flex {
    gap: 20px
}

.mypage_profile .btn.w-100 {
    margin-top: 30px
}

.mypage_menu {
    background-color: #fff
}

.mypage_menu .menu_con {
    padding-block: 25px
}

.mypage_menu .menu_con .menu_tit {
    margin-bottom: 28px;
    font-size: 24px;
    font-weight: 700
}

.mypage_menu .menu_con .menu_list .list {
    margin-bottom: 25px
}

.mypage_menu .menu_con .menu_list .list:last-child {
    margin-bottom: 0
}

.mypage_menu .menu_con .menu_list .list .link {
    position: relative;
    display: block;
    padding-left: 40px;
    font-size: 16px;
    font-weight: 500
}

.mypage_menu .menu_con .menu_list .list .link::before {
    content: "";
    position: absolute;
    display: block;
    width: 26px;
    height: 26px;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../images/ico/ico_setting.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list .link::after {
    content: "";
    position: absolute;
    display: block;
    width: 8px;
    height: 17px;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../images/ico/ico_menu_arr.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.info-edit .link::before {
    background: url(../images/ico/ico_menu_setting.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.password-change .link::before {
    background: url(../images/ico/ico_menu_lock.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.phone-change .link::before {
    background: url(../images/ico/ico_menu_phone.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.rehab-management .link::before {
    background: url(../images/ico/ico_menu_check_ring.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.reservation-setting .link::before {
    background: url(../images/ico/ico_menu_desk.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.reservation-status .link::before {
    background: url(../images/ico/ico_menu_notebook.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.diagnosis-request .link::before {
    background: url(../images/ico/ico_menu_order.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.class-management .link::before {
    background: url(../images/ico/ico_menu_pin.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.class-schedule .link::before {
    background: url(../images/ico/ico_menu_pen.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.review-history .link::before {
    background: url(../images/ico/ico_menu_chat.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.business-info .link::before {
    background: url(../images/ico/ico_menu_chield_check.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.therapist-info .link::before {
    background: url(../images/ico/ico_stethoscope.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.reservation-history .link::before {
    background: url(../images/ico/ico_nav_mypage.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.diagnosis-history .link::before {
    background: url(../images/ico/ico_menu_arhive.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.class-history .link::before {
    background: url(../images/ico/ico_menu_bookmark.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.inquiry .link::before {
    background: url(../images/ico/ico_group_add.png) no-repeat center/cover
}

.mypage_menu .menu_con .menu_list .list.treatment-review .link::before {
    background: url(../images/ico/ico_menu_star_light.png) no-repeat center/cover
}

.mypage_menu .alarm .form-check .form-check-label {
    font-size: 13px;
    font-weight: 500;
    color: #9f9f9f
}

.info_edit {
    position: relative;
    background-color: #fff
}

.info_edit .btn_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 15px
}

.info_edit .btn_con .link {
    text-decoration: underline
}

.info_edit .btn_con .link.logout {
    color: var(--gray-color)
}

.info_edit .btn_con .link.secession {
    color: var(--brown-color)
}

.info_edit.success {
    position: relative;
    min-height: calc(100vh - 50px)
}

.info_edit.success .complete_con {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.info_edit.success .complete_con .complete_img {
    width: 140px;
    margin: 0 auto 90px
}

.info_edit.success .complete_con .complete_img img {
    width: 100%
}

.info_edit.success .complete_con .complete_txt {
    text-align: center
}

.info_edit.success .complete_con .complete_txt .t1 {
    margin-bottom: 30px;
    font-size: 18px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -.8px
}

.info_edit.success .complete_con .complete_txt .t2 {
    font-size: 18px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: -.7px
}

.download_section {
    padding-bottom: 30px
}

.download_section .download_item {
    margin-bottom: 30px
}

.download_section .download_item:last-child {
    margin-bottom: 0
}

.download_section .download_item .download_title {
    margin-bottom: 10px;
    font-size: 16px;
    font-weight: 600;
    color: #333
}

.download_section .download_item .btn_download {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 8px 10px;
    background-color: #f8f9fa;
    border: 1px solid var(--border-color);
    border-radius: 5px;
    cursor: pointer;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.download_section .download_item .btn_download img {
    width: 24px;
    height: 24px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-filter: brightness(0);
    filter: brightness(0)
}

.download_section .download_item .btn_download span {
    font-size: 14px;
    font-weight: 400;
    color: #999;
    text-align: left
}

.download_section .download_item .btn_download:hover {
    background-color: #f0f0f0;
    border-color: #d5d5d5
}

.download_section .download_item .btn_download:active {
    background-color: #e8e8e8
}

.download_section .download_item .file_input {
    display: none
}

.download_section .download_item.has_file .btn_download {
    background-color: #fff;
    border-color: var(--primary-color, #4a90e2)
}

.download_section .download_item.has_file .btn_download span {
    color: #333;
    font-weight: 500
}

.rehab .filter {
    padding-top: 30px
}

.rehab .search_filter {
    margin-bottom: 15px
}

.rehab .inner {
    background-color: #fff
}

.rehab_list .rehab_item {
    border-bottom: 1px solid var(--border-color)
}

.rehab_list .rehab_item:last-child {
    border-bottom: none
}

.rehab_list .rehab_item:first-child {
    border-bottom: 1px solid var(--border-color)
}

.rehab_list .rehab_item a.link {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
    padding-block: 30px
}

.rehab_list .rehab_item a.link::after {
    content: "";
    position: absolute;
    display: block;
    width: 8px;
    height: 17px;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../images/ico/ico_menu_arr.png) no-repeat center/cover
}

.rehab_list .rehab_item a.link .img_con {
    position: relative;
    width: 100px;
    border-radius: 50%;
    overflow: hidden
}

.rehab_list .rehab_item a.link .img_con::before {
    content: "";
    display: block;
    padding-bottom: 100%
}

.rehab_list .rehab_item a.link .img_con .img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.rehab_list .rehab_item a.link .txt_con .rehab_title {
    font-size: 18px;
    font-weight: 700
}

.rehab_list .rehab_item a.link .txt_con .rehab_price {
    margin-block: 10px
}

.rehab_list .rehab_item a.link .txt_con .rehab_price .t1 {
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    color: #9f9f9f
}

.rehab_list .rehab_item a.link .txt_con .rehab_info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px
}

.rehab_list .rehab_item a.link .txt_con .rehab_info .rehab_condition {
    font-size: 14px;
    font-weight: 700;
    color: var(--brown-color)
}

.rehab_list .rehab_item a.link .txt_con .rehab_info .delete_btn .del_img {
    width: 18px
}

.rehabilitator .profile_thumb {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    margin-block: 30px
}

.rehabilitator .profile_thumb .thumb_con {
    position: relative;
    width: 165px;
    height: auto
}

.rehabilitator .profile_thumb .thumb_con::before {
    content: "";
    display: block;
    padding-bottom: 100%
}

.rehabilitator .info {
    margin-bottom: 30px;
    text-align: center
}

.rehabilitator .info .company_name {
    font-size: 20px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -.8px
}

.rehabilitator .info .rating_con {
    position: relative;
    display: inline-block;
    margin-top: 10px;
    padding-left: 30px
}

.rehabilitator .info .rating_con::before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background: url(../images/ico/ico_rating_star.png) no-repeat center/cover
}

.rehabilitator .info_list .list {
    margin-bottom: 30px
}

.rehabilitator .info_list .list:last-child {
    margin-bottom: 0
}

.rehabilitator .info_list .list .tit {
    margin-bottom: 15px;
    font-size: 20px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -.8px
}

.rehabilitator .info_list .list .desc {
    font-size: 15px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: -.8px
}

.class_history {
    background-color: #fff
}

.date_select {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px
}

.date_select .form-group {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.date_select .form-group label {
    font-size: 14px;
    font-weight: 400;
    color: #000
}

.date_select .form-group .form-control {
    padding-block: 0;
    font-size: 14px;
    font-weight: 400
}

.diagnosis_history {
    background-color: #fff
}

.diagnosis_detail .sub_tit {
    font-size: 16px;
    font-weight: 600;
    line-height: 25px;
    letter-spacing: -2px
}

.diagnosis_detail .banner {
    position: relative;
    width: 100%;
    height: 240px;
    padding-top: 60px;
    overflow: hidden
}

.diagnosis_detail .banner img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -o-object-fit: cover;
    object-fit: cover
}

.diagnosis_detail .profile_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-bottom: 30px
}

.diagnosis_detail .profile_con .profile_thumb .circular_chart {
    position: relative;
    width: 84px;
    height: 84px
}

.diagnosis_detail .profile_con .profile_thumb .circular_chart .circle_svg {
    width: 100%;
    height: 100%;
    -webkit-transform: rotate(0);
    transform: rotate(0)
}

.diagnosis_detail .profile_con .profile_thumb .circular_chart .circle_svg .circle_bg {
    fill: none;
    stroke: #f5f5f5;
    stroke-width: 8
}

.diagnosis_detail .profile_con .profile_thumb .circular_chart .circle_svg .circle_progress {
    fill: none;
    stroke: var(--main-color);
    stroke-width: 8;
    stroke-linecap: round;
    stroke-dasharray: 283;
    stroke-dashoffset: 70.75;
    -webkit-transition: stroke-dashoffset .5s ease;
    transition: stroke-dashoffset .5s ease
}

.diagnosis_detail .profile_con .profile_thumb .circular_chart .score_text {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-size: 36px;
    font-weight: 400;
    line-height: 58px;
    letter-spacing: -3px;
    color: var(--brown-color)
}

.diagnosis_detail .profile_con .profile_info {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.diagnosis_detail .profile_con .profile_info .name_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px
}

.diagnosis_detail .profile_con .profile_info .name_con .name {
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px
}

.diagnosis_detail .profile_con .profile_info .func_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: end;
    margin-top: 20px
}

.diagnosis_detail .profile_con .profile_info .func_con .career {
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--gray-color)
}

.diagnosis_detail .profile_con .profile_info .func_con .opt_btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 60px
}

.diagnosis_detail .profile_con .profile_info .func_con .opt_btn .link.share {
    display: block;
    width: 24px
}

.diagnosis_detail .profile_con .profile_info .func_con .opt_btn .link.share img {
    width: 100%
}

.result_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px
}

.result_con .list {
    width: calc((100% - 10px)/ 2);
    padding: 12px 20px;
    border: 1px solid var(--border-color);
    border-radius: 10px
}

.result_con .list .tit {
    font-size: 16px;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: -1px;
    color: var(--gray-color)
}

.result_con .list .txt {
    margin-top: 10px;
    font-size: 16px;
    font-weight: 700
}

.result_con .list .t1 {
    font-size: 10px;
    font-weight: 600;
    line-height: 20px;
    letter-spacing: -1px;
    color: var(--brown-color)
}

.summary_con .desc {
    font-size: 16px;
    font-weight: 400;
    line-height: 25px;
    letter-spacing: -1px
}

.graph_con .comment {
    position: relative;
    padding-right: 20px;
    font-size: 14px;
    font-weight: 400;
    line-height: 25px;
    letter-spacing: -1px;
    color: var(--gray-color)
}

.graph_con .comment::after {
    content: "";
    position: absolute;
    display: block;
    top: 4px;
    right: 0;
    width: 16px;
    height: 16px
}

.graph_con .comment.up::after {
    background: url(../images/ico/ico_arrow_up.png) no-repeat center/cover
}

.graph_con .comment.down::after {
    background: url(../images/ico/ico_arrow_down.png) no-repeat center/cover
}

.graph_con .comment.rest::after {
    width: 8px;
    height: 12px;
    background: url(../images/ico/ico_rest.png) no-repeat center/cover
}

.comment_con .comment {
    font-size: 14px;
    font-weight: 500;
    line-height: 25px;
    letter-spacing: -1px;
    color: var(--brown-color)
}

.comment_con .comment_box {
    padding: 30px;
    border: 1px solid var(--border-color);
    border-radius: 10px
}

.comment_con .comment_box .txt_con {
    border-top: 1px solid var(--border-color);
    padding-top: 30px
}

.comment_con .comment_box .txt_con .desc {
    font-size: 16px;
    font-weight: 400;
    line-height: 25px;
    letter-spacing: -1px
}

.diagnosis_list_con .list {
    border-bottom: 1px solid var(--gray-color)
}

.diagnosis_list_con .list .link {
    position: relative;
    display: block;
    padding-block: 20px;
    padding-left: 70px
}

.diagnosis_list_con .list .link::before {
    content: "";
    position: absolute;
    display: block;
    top: 20px;
    left: 0;
    width: 53px;
    height: 53px;
    background: url(../images/ico/ico_order.png) no-repeat center/cover
}

.diagnosis_list_con .list .link::after {
    content: "";
    position: absolute;
    display: block;
    top: 25px;
    right: 0;
    width: 8px;
    height: 17px;
    background: url(../images/ico/ico_menu_arr.png) no-repeat center/cover
}

.diagnosis_list_con .list .link .txt_con .tit {
    font-size: 16px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px
}

.diagnosis_list_con .list .link .txt_con .desc {
    font-size: 14px;
    font-weight: 500;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--brown-color)
}

.diagnosis_list_con .list .link .txt_con .desc.end {
    color: var(--gray-color)
}

.diagnosis_list_con .list .link .txt_con .date {
    font-size: 10px;
    font-weight: 500;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--gray-color)
}

.class_info_edit {
    padding-bottom: 73px
}

.class_info_edit .inner {
    margin-bottom: 15px;
    padding-block: 25px;
    background-color: #fff
}

.class_info_edit .class_info .list {
    margin-bottom: 40px
}

.class_info_edit .class_info .list:last-child {
    margin-bottom: 0
}

.class_info_edit .class_info .list .tit {
    margin-bottom: 10px;
    font-size: 16px;
    font-weight: 500
}

.class_info_edit .class_info .list .link {
    position: relative;
    display: block
}

.class_info_edit .class_info .list .link .txt {
    font-size: 16px;
    font-weight: 500;
    color: var(--gray-color)
}

.class_info_edit .class_info .list .link::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 8px;
    height: 17px;
    background: url(../images/ico/ico_menu_arr.png) no-repeat center/cover
}

.class_info_edit .class_info.secession .list .link .txt {
    color: #ff1500
}

.class_info_edit .class_info.secession .list .link::after {
    display: none
}

.rehab_register .tit {
    margin-bottom: 10px;
    font-size: 14px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: 0
}

.rehab_register .form-group label {
    font-size: 14px;
    font-weight: 500;
    color: #000
}

.rehab_register .form-group .form-control::-webkit-input-placeholder {
    font-size: 14px;
    font-weight: 400;
    color: var(--gray-color)
}

.rehab_register .form-group .form-control::-moz-placeholder {
    font-size: 14px;
    font-weight: 400;
    color: var(--gray-color)
}

.rehab_register .form-group .form-control:-ms-input-placeholder {
    font-size: 14px;
    font-weight: 400;
    color: var(--gray-color)
}

.rehab_register .form-group .form-control::-ms-input-placeholder {
    font-size: 14px;
    font-weight: 400;
    color: var(--gray-color)
}

.rehab_register .form-group .form-control::placeholder {
    font-size: 14px;
    font-weight: 400;
    color: var(--gray-color)
}

.rehab_register .form-group .caution {
    margin-bottom: 5px;
    font-size: 12px;
    font-weight: 400;
    color: var(--gray-color)
}

.rehab_register .form-group .caution:last-child {
    margin-bottom: 0
}

.rehab_register .one_line .btn_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px
}

.rehab_register .one_line .btn_con .btn {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.image_upload_con .tit {
    margin-bottom: 10px;
    font-size: 14px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: 0;
    color: #000
}

.image_upload_con .upload_box {
    position: relative;
    width: 170px;
    aspect-ratio: 1
}

.image_upload_con .upload_box .upload_input {
    display: none
}

.image_upload_con .upload_box .upload_label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    border: 1px solid #eee;
    border-radius: 10px;
    background-color: #f9f9f9;
    cursor: pointer;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.image_upload_con .upload_box .upload_label:hover {
    background-color: #f0f0f0
}

.image_upload_con .upload_box .upload_label .icon {
    margin-bottom: 15px
}

.image_upload_con .upload_box .upload_label .icon svg {
    display: block
}

.image_upload_con .upload_box .upload_label .txt {
    font-size: 12px;
    font-weight: 500;
    color: var(--gray-color)
}

.image_upload_con .size {
    font-size: 12px;
    font-weight: 400;
    color: var(--gray-color)
}

.reser_list .filter {
    padding-block: 25px
}

.reser_list .d-flex .filter_btn {
    width: 34px
}

.reser_list .d-flex .filter_btn img {
    width: 100%
}

.filter_select {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    width: 87px
}

.filter_select .txt {
    font-size: 16px;
    font-weight: 500;
    cursor: pointer
}

.filter_select img {
    width: 13px
}

.reser_list_con .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
    padding-block: 20px;
    border-bottom: 1px solid var(--border-color)
}

.reser_list_con .list:last-child {
    border-bottom: none
}

.reser_list_con .list:first-child {
    border-bottom: 1px solid var(--border-color)
}

.reser_list_con .list .img_con {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 84px
}

.reser_list_con .list .img_con .img {
    width: 100%
}

.reser_list_con .list .txt_con {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.reser_list_con .list .txt_con .link {
    position: relative;
    display: block
}

.reser_list_con .list .txt_con .link::after {
    content: "";
    position: absolute;
    display: block;
    width: 8px;
    height: 17px;
    top: 0;
    right: 0;
    background: url(../images/ico/ico_menu_arr.png) no-repeat center/cover
}

.reser_list_con .list .txt_con .link .class_name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px
}

.reser_list_con .list .txt_con .link .class_name .name {
    font-size: 20px;
    font-weight: 400
}

.reser_list_con .list .txt_con .link .career {
    margin-block: 10px;
    font-size: 14px;
    font-weight: 400;
    color: #9f9f9f;
    line-height: 18px;
    letter-spacing: -.7px
}

.reser_list_con .list .txt_con .cash_list {
    position: relative;
    display: inline-block;
    z-index: 100;
    font-size: 14px;
    font-weight: 500;
    color: var(--brown-color)
}

.reser_list_con .list .txt_con .cash_list::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1px;
    left: 0;
    bottom: 0;
    background-color: var(--brown-color)
}

.reser_detail .banner {
    position: relative;
    width: 100%;
    height: 240px;
    padding-top: 60px;
    overflow: hidden
}

.reser_detail .banner img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -o-object-fit: cover;
    object-fit: cover
}

.reser_detail .reser_txt {
    padding-block: 30px 50px;
    font-size: 14px;
    font-weight: 400;
    text-align: center;
    line-height: 18px;
    letter-spacing: -.7px
}

.reser_detail .reser_txt .brown_txt {
    font-weight: 500
}

.reser_detail .profile_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

@media (max-width:400px) {
    .reser_detail .profile_con {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 20px
    }
}

.reser_detail .profile_con .profile_thumb .thumb_con {
    width: 84px;
    height: 84px
}

@media (max-width:400px) {
    .reser_detail .profile_con .profile_thumb .thumb_con {
        width: 120px;
        height: 120px
    }
}

.reser_detail .profile_con .profile_info {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.reser_detail .profile_con .profile_info .name_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px
}

@media (max-width:400px) {
    .reser_detail .profile_con .profile_info .name_con {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 0
    }
}

.reser_detail .profile_con .profile_info .name_con .name {
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px
}

.reser_detail .profile_con .profile_info .name_con .rating_con .rate {
    position: relative;
    display: inline-block;
    padding-left: 20px;
    font-size: 14px;
    font-weight: 500;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--gray-color)
}

.reser_detail .profile_con .profile_info .name_con .rating_con .rate::before {
    content: "";
    position: absolute;
    display: block;
    width: 16px;
    height: 16px;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../images/ico/ico_rating_star.png) no-repeat center/cover
}

.reser_detail .profile_con .profile_info .func_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: end;
    gap: 30px;
    margin-top: 20px
}

.reser_detail .profile_con .profile_info .func_con .career {
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--gray-color)
}

.reser_detail .profile_con .profile_info .func_con .opt_btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 60px
}

.reser_detail .profile_con .profile_info .func_con .opt_btn .link.share {
    display: block;
    width: 26px
}

.reser_detail .profile_con .profile_info .func_con .opt_btn .link.share img {
    width: 100%
}

.reser_detail .career_list .list {
    position: relative;
    margin-bottom: 35px;
    padding-left: 40px
}

.reser_detail .career_list .list:last-child {
    margin-bottom: 0
}

.reser_detail .career_list .list::before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 24px;
    height: 24px
}

.reser_detail .career_list .list .tit {
    margin-bottom: 10px;
    font-size: 14px;
    font-weight: 500;
    line-height: 18px;
    letter-spacing: -.7px
}

.reser_detail .career_list .list .txt {
    font-size: 14px;
    font-weight: 500;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--gray-color)
}

.reser_detail .career_list .list.desc::before {
    background: url(../images/ico/ico_achievement.png) no-repeat center/cover
}

.reser_detail .career_list .list.university::before {
    background: url(../images/ico/ico_student.png) no-repeat center/cover
}

.reser_detail .career_list .list.career::before {
    background: url(../images/ico/ico_school.png) no-repeat center/cover
}

.reser_detail .career_list .list.action::before {
    background: url(../images/ico/ico_nav_mypage.png) no-repeat center/cover
}

.reser_detail .career_list .list.time::before {
    background: url(../images/ico/ico_time_black.png) no-repeat center/cover
}

.reser_detail .career_list .list.special::before {
    background: url(../images/ico/ico_stethoscope.png) no-repeat center/cover
}

.reser_detail .person_desc .txt {
    margin-top: 25px;
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: -.7px
}

.reser_detail .review_link {
    position: relative;
    display: block
}

.reser_detail .review_link::after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 8px;
    height: 17px;
    background: url(../images/ico/ico_menu_arr.png) no-repeat center/cover
}

.reser_detail .schdule_change .btn {
    color: #fff;
    font-weight: 500
}

.count_box {
    padding: 10px;
    border: 1px solid var(--border-color);
    border-radius: 10px
}

.count_box .count_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.count_box .count_con .list {
    position: relative;
    width: calc((100% - 20px)/ 3);
    border-right: 1px solid var(--border-color);
    text-align: center
}

.count_box .count_con .list:last-child {
    border-right: none
}

.count_box .count_con .list .tit {
    margin-bottom: 15px;
    font-size: 14px;
    font-weight: 500;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--gray-color)
}

.count_box .count_con .list .num {
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px
}

.rehab_list_con .list_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px
}

.rehab_list_con .list_con .list {
    width: calc((100% - 10px)/ 2);
    border-radius: 10px;
    overflow: hidden
}

@media (max-width:400px) {
    .rehab_list_con .list_con .list {
        width: 100%
    }
}

.rehab_list_con .list_con .list .link .img_con {
    position: relative
}

.rehab_list_con .list_con .list .link .img_con::before {
    content: "";
    display: block;
    padding-bottom: 100%
}

.rehab_list_con .list_con .list .link .img_con .img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.rehab_list_con .list_con .list .link .txt_con .tit {
    margin-block: 10px;
    font-size: 16px;
    font-weight: 700
}

.rehab_list_con .list_con .list .link .txt_con .pill_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px
}

.reser_setting .sub_txt {
    padding-block: 30px 25px;
    font-size: 14px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px
}

.reser_setting .sub_tit {
    font-size: 14px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px
}

.reser_setting .caution {
    margin-top: 5px;
    font-size: 12px;
    font-weight: 500;
    line-height: 28px;
    color: var(--gray-color)
}

.reser_setting .reser_method .list {
    margin-bottom: 20px;
    border: 1px solid var(--border-color);
    border-radius: 10px
}

.reser_setting .reser_method .list:last-child {
    margin-bottom: 0
}

.reser_setting .reser_method .list .link {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px;
    padding: 15px 30px
}

.reser_setting .reser_method .list .link .img_con {
    width: 50px
}

.reser_setting .reser_method .list .link .img_con img {
    width: 100%
}

.reser_setting .reser_method .list .link .txt_con .tit {
    margin-bottom: 5px;
    font-size: 16px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -.8px
}

.reser_setting .reser_method .list .link .txt_con .desc {
    font-size: 13px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: -.8px
}

.reser_setting .reser_method .list .link input {
    position: absolute;
    width: 21px;
    height: 21px;
    right: 30px;
    top: 15px
}

.reser_setting .reser_method .list:nth-child(1) {
    background-color: #fc0
}

.reser_setting .reser_method .list:nth-child(2) {
    background-color: #784d03;
    color: #fff
}

.reser_setting .reser_method .list:nth-child(3) {
    background-color: #a3c4fa
}

.reser_setting .reser_confirm .btn_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 10px
}

.reser_setting .reser_confirm .btn_con .btn {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.week_select .week_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.week_select .week_con .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px
}

.week_select .week_con .list .week_box {
    width: 21px;
    height: 21px
}

.week_select .week_con .list .day {
    font-size: 14px;
    font-weight: 500;
    color: var(--gray-color)
}

.working_time .input_con {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 35px
}

.working_time .input_con::before {
    content: "";
    position: absolute;
    display: block;
    width: 15px;
    height: 2px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: var(--border-color)
}

.working_time .input_con .input_box {
    width: calc((100% - 35px)/ 2)
}

.working_time .input_con .input_box .time_box {
    width: 100%;
    padding-block: 8px;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background-image: url(../images/ico/ico_time.png);
    background-repeat: no-repeat;
    background-position: 8px center;
    background-size: 24px
}

.working_time .switch_con .switch_txt {
    margin-right: 10px;
    font-size: 12px;
    font-weight: 500;
    color: var(--gray-color)
}

.cash_list_con .list {
    padding-top: 10px;
    padding-bottom: 25px;
    border-bottom: 1px solid var(--border-color)
}

.cash_list_con .list:last-child {
    border-bottom: none
}

.cash_list_con .list:first-child {
    border-bottom: 1px solid var(--border-color)
}

.cash_list_con .list .link {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.cash_list_con .list .link::after {
    content: "";
    position: absolute;
    display: block;
    width: 8px;
    height: 17px;
    top: 5px;
    right: 0;
    background: url(../images/ico/ico_menu_arr.png) no-repeat center/cover
}

.cash_list_con .list .link .date {
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px
}

.cash_list_con .list .link .cash {
    padding-right: 20px;
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px;
    color: var(--gray-color)
}

.cash_detail .date_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    padding-block: 30px
}

.cash_detail .date_con .date {
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px
}

.cash_detail .info_list_con.delivery .list {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start
}

.cash_detail .info_list_con.delivery .list .tit {
    width: 85px
}

.class_score .inner {
    background-color: #ffedc9
}

.class_score .title_con {
    text-align: center
}

.class_score .title_con .big_tit {
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 700;
    line-height: 22px;
    letter-spacing: -2px
}

.class_score .title_con .time {
    line-height: 25px;
    letter-spacing: -2.4px
}

.class_score .title_con .time font {
    size: 16px;
    weight: 400
}

.class_score .circular_chart {
    position: relative;
    width: 190px;
    height: 190px;
    margin: 0 auto
}

.class_score .circular_chart .circle_svg {
    width: 100%;
    height: 100%;
    -webkit-transform: rotate(0);
    transform: rotate(0)
}

.class_score .circular_chart .circle_svg .circle_bg {
    fill: none;
    stroke: rgba(255, 191, 0, .2);
    stroke-width: 8
}

.class_score .circular_chart .circle_svg .circle_progress {
    fill: none;
    stroke: var(--main-color);
    stroke-width: 8;
    stroke-linecap: round;
    stroke-dasharray: 283;
    stroke-dashoffset: 70.75;
    -webkit-transition: stroke-dashoffset .5s ease;
    transition: stroke-dashoffset .5s ease
}

.class_score .circular_chart .txt_con {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.class_score .circular_chart .txt_con .score_text {
    font-size: 64px;
    font-weight: 400;
    line-height: 50px;
    letter-spacing: -9px;
    color: #000
}

.class_score .circular_chart .txt_con .level {
    display: inline-block;
    margin-top: 15px;
    padding: 5px 6px;
    border-radius: 2.5px;
    background: var(--main-color);
    font-size: 16px;
    font-weight: 500;
    color: #fff
}

.class_score .end_ment {
    text-align: center
}

.class_score .end_ment .big_tit {
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 700;
    line-height: 30px;
    letter-spacing: -2.4px
}

.class_score .end_ment .ment {
    line-height: 25px;
    letter-spacing: -2.4px
}

.class_score .end_ment .ment font {
    size: 16px;
    weight: 400
}

.class_score .banner_con .list_con .list {
    position: relative;
    margin-bottom: 15px;
    padding: 18px;
    border: 1px solid var(--gray-color);
    border-radius: 10px;
    background-color: #fff
}

.class_score .banner_con .list_con .list:last-child {
    margin-bottom: 0
}

.class_score .banner_con .list_con .list::before {
    content: "";
    position: absolute;
    display: block;
    width: 72px;
    height: 72px;
    top: 50%;
    left: 18px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.class_score .banner_con .list_con .list .txt_con .t1 {
    padding-left: 95px;
    font-size: 20px;
    font-weight: 400;
    line-height: 26px;
    letter-spacing: -2px
}

.class_score .banner_con .list_con .list.up::before {
    background: url(../images/img/img_score1.png) no-repeat center/cover
}

.class_score .banner_con .list_con .list.down::before {
    background: url(../images/img/img_score2.png) no-repeat center/cover
}

.class_score .banner_con .list_con .list.comment::before {
    background: url(../images/img/img_score3.png) no-repeat center/cover
}

.graph_img {
    margin-top: 30px
}

.graph_img img {
    width: 100%
}

.class_list_con .list {
    border-bottom: 1px solid var(--border-color)
}

.class_list_con .list:last-child {
    border-bottom: none
}

.class_list_con .list:first-child {
    border-bottom: 1px solid var(--border-color)
}

.class_list_con .list .link {
    position: relative;
    display: block;
    padding-block: 20px;
    padding-left: 70px
}

.class_list_con .list .link.art::before {
    background: url(../images/ico/ico_palette.png) no-repeat center/cover
}

.class_list_con .list .link::before {
    content: "";
    position: absolute;
    display: block;
    top: 20px;
    left: 0;
    width: 53px;
    height: 53px;
    background: url(../images/ico/ico_chat_light.png) no-repeat center/cover
}

.class_list_con .list .link::after {
    content: "";
    position: absolute;
    display: block;
    top: 25px;
    right: 0;
    width: 8px;
    height: 17px;
    background: url(../images/ico/ico_menu_arr.png) no-repeat center/cover
}

.class_list_con .list .link .txt_con .tit {
    font-size: 16px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px
}

.class_list_con .list .link .txt_con .desc {
    font-size: 14px;
    font-weight: 500;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--brown-color)
}

.class_list_con .list .link .txt_con .desc.end {
    color: var(--gray-color)
}

.class_list_con .list .link .txt_con .date {
    font-size: 10px;
    font-weight: 500;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--gray-color)
}

.class_comment .profile_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-block: 40px 30px;
    border-bottom: 1px solid var(--gray-color)
}

.class_comment .profile_con .profile_thumb .thumb_con {
    width: 90px;
    height: 90px
}

.class_comment .profile_con .profile_info {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    position: relative
}

.class_comment .profile_con .profile_info::after {
    content: "";
    position: absolute;
    display: block;
    width: 8px;
    height: 17px;
    top: 5px;
    right: 0;
    background: url(../images/ico/ico_menu_arr.png) no-repeat center/cover
}

.class_comment .profile_con .profile_info .class_name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px
}

.class_comment .profile_con .profile_info .class_name .name {
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px
}

.class_comment .profile_con .profile_info .career_con {
    margin-top: 20px
}

.class_comment .profile_con .profile_info .career_con .name {
    margin-bottom: 5px;
    font-size: 14px;
    font-weight: 500;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--brown-color)
}

.class_comment .profile_con .profile_info .career_con .career {
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--gray-color)
}

.class_comment .comment_con {
    padding-block: 25px;
    border-bottom: 1px solid var(--border-color)
}

.class_comment .comment_con .title_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    gap: 10px;
    margin-bottom: 20px
}

.class_comment .comment_con .title_con .txt_con .t1 {
    margin-bottom: 5px;
    font-size: 16px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -.8px
}

.class_comment .comment_con .title_con .txt_con .t2 {
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--gray-color)
}

.class_comment .comment_con .daily_comment .txt {
    font-size: 14px;
    font-weight: 400;
    line-height: 25px;
    letter-spacing: -.6px;
    color: var(--gray-color)
}

.class_comment .comment_con .more_btn {
    border: 1px solid var(--border-color);
    background-color: var(--border-color);
    color: #000
}

.class_comment .no_comment {
    text-align: center
}

.class_comment .no_comment .img_con {
    max-width: 180px;
    width: calc(100% - 40px);
    margin: 50px auto 30px
}

.class_comment .no_comment .img_con .img {
    width: 100%
}

.class_comment .no_comment .txt {
    font-size: 14px;
    font-weight: 400;
    line-height: 25px;
    letter-spacing: -.6px;
    color: var(--gray-color);
    text-align: center
}

.download_con {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    padding: 5px 10px;
    border: 1px solid var(--border-color);
    border-radius: 5px;
    background-color: #dadada
}

.download_con .download {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 7px;
    font-size: 12px;
    font-weight: 500;
    line-height: 14px;
    letter-spacing: -.6px;
    color: var(--gray-color)
}

.download_con .download img {
    width: 18px
}

.class_comment_detail .profile_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-block: 40px 30px;
    border-bottom: 1px solid var(--gray-color)
}

.class_comment_detail .profile_con .profile_thumb .thumb_con {
    width: 90px;
    height: 90px
}

.class_comment_detail .profile_con .profile_info {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    position: relative
}

.class_comment_detail .profile_con .profile_info::after {
    content: "";
    position: absolute;
    display: block;
    width: 8px;
    height: 17px;
    top: 5px;
    right: 0;
    background: url(../images/ico/ico_menu_arr.png) no-repeat center/cover
}

.class_comment_detail .profile_con .profile_info .class_name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 30px
}

.class_comment_detail .profile_con .profile_info .class_name .name {
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px
}

.class_comment_detail .profile_con .profile_info .career_con {
    margin-top: 20px
}

.class_comment_detail .profile_con .profile_info .career_con .name {
    font-size: 14px;
    font-weight: 500;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--brown-color)
}

.class_comment_detail .profile_con .profile_info .career_con .career {
    margin-bottom: 5px;
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--gray-color)
}

.class_comment_detail .comment_con {
    padding-block: 25px
}

.class_comment_detail .comment_con .title_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    gap: 10px;
    margin-bottom: 20px
}

.class_comment_detail .comment_con .title_con .txt_con .t1 {
    margin-bottom: 5px;
    font-size: 16px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -.8px
}

.class_comment_detail .comment_con .title_con .txt_con .t2 {
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: -.7px;
    color: var(--gray-color)
}

.class_comment_detail .comment_con .title_con .download_con {
    padding: 5px 10px;
    border: 1px solid var(--border-color);
    border-radius: 5px;
    background-color: #dadada
}

.class_comment_detail .comment_con .title_con .download_con .download {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 7px;
    font-size: 12px;
    font-weight: 500;
    line-height: 14px;
    letter-spacing: -.6px;
    color: var(--gray-color)
}

.class_comment_detail .comment_con .title_con .download_con .download img {
    width: 18px
}

.class_comment_detail .comment_con .daily_comment .txt {
    font-size: 14px;
    font-weight: 400;
    line-height: 25px;
    letter-spacing: -.6px;
    color: var(--gray-color)
}

.class_comment_detail .comment_con .more_btn {
    border: 1px solid var(--border-color);
    background-color: var(--border-color);
    color: #000
}

.class_comment_detail .comment_con .func_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
    margin-top: 33px
}

.class_comment_detail .comment_con .func_con .list {
    cursor: pointer
}

.class_comment_detail .comment_con .func_con .list img {
    width: 33px;
    height: 33px
}

.class_comment_detail .like_con .like_label input[type=checkbox]:checked+.ic_heart {
    background-image: url(../images/ico/ico_like_comment_on.png)
}

.class_comment_detail .like_con .like_label .ic_heart {
    width: 33px;
    height: 33px;
    background: url(../images/ico/ico_like_comment.png) no-repeat center/cover
}

.comment_reply {
    margin-top: 20px;
    padding: 20px 15px;
    border-top: 1px solid var(--border-color)
}

.comment_reply .txt {
    font-size: 14px;
    font-weight: 400;
    line-height: 25px;
    letter-spacing: -.6px;
    color: var(--gray-color);
    text-align: center
}

.comment_reply .reply_con .reply {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    gap: 15px;
    margin-bottom: 25px
}

.comment_reply .reply_con .reply:last-child {
    margin-bottom: 0
}

.comment_reply .reply_con .reply .profile_thumb {
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.comment_reply .reply_con .reply .profile_thumb .thumb_con {
    width: 54px;
    height: 54px
}

.comment_reply .reply_con .reply .txt_con {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.comment_reply .reply_con .reply .txt_con .comment_header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px
}

.comment_reply .reply_con .reply .txt_con .comment_header .menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px
}

.comment_reply .reply_con .reply .txt_con .comment_header .menu .name {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: -.8px;
    line-height: 22px
}

.comment_reply .reply_con .reply .txt_con .comment_header .menu .delete {
    width: 20px;
    -webkit-transform: translateY(-3px);
    transform: translateY(-3px)
}

.comment_reply .reply_con .reply .txt_con .comment_header .menu .delete img {
    width: 100%
}

.comment_reply .reply_con .reply .txt_con .desc {
    margin-block: 10px 5px;
    font-size: 16px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: -.7px
}

.comment_reply .reply_con .reply .txt_con .date {
    font-size: 12px;
    font-weight: 400;
    letter-spacing: -.7px;
    line-height: 18px;
    color: var(--gray-color)
}

.class_manage .box {
    padding-bottom: 20px
}

.class_manage .box .therapist {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 25px;
    padding: 20px 25px;
    margin: 0;
    background-color: #fff;
    border: 1px solid var(--border-color);
    border-radius: 20px
}

.class_manage .box .therapist .left .profile_thumb .thumb_con {
    width: 75px;
    height: 75px
}

.class_manage .box .therapist .left .profile_thumb .thumb_upload .upload_btn {
    width: 23px;
    height: 23px
}

.class_manage .box .therapist .left .profile_thumb .thumb_upload .upload_btn .img {
    width: 15px
}

.class_manage .box .therapist .right {
    min-width: 180px;
    width: 100%
}

.class_manage .box .therapist .right .name_con {
    position: relative;
    max-width: 340px;
    margin-bottom: 20px;
    margin-left: auto
}

.class_manage .box .therapist .right .name_con::after {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 5px;
    height: 10px;
    background: url(../images/ico/ico_link_arr.png) no-repeat center/cover
}

.class_manage .box .therapist .right .name_con .link .name {
    font-size: 14px;
    font-weight: 400;
    color: var(--gray-color)
}

.class_manage .box .therapist .right .name_con .link .name b {
    color: #000
}

.class_manage .box .therapist .right .class_info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.class_manage .box .therapist .right .class_info .list {
    width: 33.3333333333%;
    text-align: center;
    border-right: 1px solid var(--border-color)
}

.class_manage .box .therapist .right .class_info .list:last-child {
    border-right: none
}

.class_manage .box .therapist .right .class_info .list .tit {
    font-size: 12px;
    font-weight: 400;
    color: var(--gray-color);
    line-height: 18px;
    letter-spacing: -.7px
}

.class_manage .box .therapist .right .class_info .list .num {
    margin-top: 10px;
    font-size: 16px;
    font-weight: 600;
    line-height: 18px;
    letter-spacing: -.7px
}

.calendar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.calendar .cal_btn img {
    width: 8px
}

.calendar .date {
    font-size: 18px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: -.8px
}

.class_card {
    margin-bottom: 20px
}

.class_card .date {
    margin-bottom: 15px;
    font-size: 20px;
    font-weight: 600;
    line-height: 28px;
    letter-spacing: 0
}

.class_card .card_con .list {
    margin-bottom: 15px;
    padding: 15px 20px;
    border: 1px solid var(--border-color);
    border-radius: 10px
}

.class_card .card_con .list .txt_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    gap: 20px
}

.class_card .card_con .list .txt_con .tit {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 14px;
    font-weight: 500;
    line-height: 23px;
    letter-spacing: -1px
}

.class_card .card_con .list .txt_con .txt {
    font-size: 14px;
    font-weight: 300;
    line-height: 23px;
    letter-spacing: -1px
}

.class_card .card_con .list.user {
    padding: 0
}

.class_card .card_con .list.user .link {
    position: relative;
    display: block;
    padding: 15px 20px
}

.class_card .card_con .list.user .link::after {
    content: "";
    position: absolute;
    display: block;
    top: 15px;
    right: 20px;
    width: 6px;
    height: 11px;
    background: url(../images/ico/ico_link_arr.png) no-repeat center/cover
}

.class_card .card_con .list.user .link .therapist {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    padding: 0;
    border: none;
    margin-block: 0
}

.notice .box {
    margin-bottom: 15px;
    padding: 20px;
    background-color: #fff
}

.notice_con .list {
    position: relative;
    padding-block: 24px;
    border-bottom: 1px solid var(--border-color)
}

.notice_con .list a::after {
    content: "";
    position: absolute;
    display: block;
    width: 9px;
    height: 16px;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../images/ico/ico_link_arr.png) no-repeat center/cover
}

.notice_con .list a .delete_btn {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.notice_con .list a .delete_btn .delete_img {
    width: 16px;
    height: 16px
}

.notice_con .list a .t1 {
    width: calc(100% - 40px);
    margin-bottom: 5px;
    font-size: 16px;
    font-weight: 400
}

.notice_con .list a .date {
    font-size: 14px;
    font-weight: 500;
    color: var(--gray-color)
}

.notice_detail .title_con {
    margin-bottom: 15px;
    padding-block: 20px;
    border-bottom: 1px solid var(--border-color)
}

.notice_detail .title_con .d-flex {
    gap: 12px;
    margin-bottom: 0
}

.notice_detail .title_con .d-flex .title {
    font-size: 16px;
    font-weight: 700
}

.notice_detail .title_con .date {
    font-size: 16px;
    font-weight: 400;
    color: var(--gray-color)
}

.notice_detail .notice_contents {
    min-height: 200px;
    padding-top: 20px;
    border-bottom: 1px solid var(--border-color)
}

.notice_detail .notice_contents p {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px
}

.notice_reply .inner {
    padding-top: 20px
}

.notice_reply .reply_box {
    position: relative;
    padding: 12px;
    border-radius: 8px;
    background-color: #f6f6f6
}

.notice_reply .reply_box::before {
    content: "A.";
    position: absolute;
    display: block;
    top: 12px;
    left: 12px;
    font-size: 16px;
    font-weight: 500
}

.notice_reply .reply_box p {
    font-size: 16px;
    font-weight: 500;
    color: #454545
}

.notice_reply .reply_box .reply {
    min-height: 95px;
    padding-left: 18px
}

.notice_reply .reply_box .date {
    text-align: right
}

.event .box {
    margin-bottom: 15px;
    padding: 20px;
    background-color: #fff
}

.event .btn-group {
    gap: 4px;
    padding-block: 20px
}

.event .event_list .list .link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 20px;
    padding-block: 24px;
    border-bottom: 1px solid var(--border-color)
}

.event .event_list .list .link .txt_con .tit {
    margin-bottom: 7px;
    font-size: 16px;
    font-weight: 500
}

.event .event_list .list .link .txt_con .date {
    font-size: 14px;
    font-weight: 400;
    color: var(--gray-color)
}

.event .event_list .list .link .btn {
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.my_inquiry_list {
    background-color: #fff
}

.my_inquiry_list .title_con {
    padding-block: 15px;
    border-bottom: 1px solid var(--border-color)
}

.my_inquiry_list .title_con .d-flex {
    gap: 10px
}

.my_inquiry_list .title_con .d-flex .title {
    font-size: 16px;
    font-weight: 700
}

.my_inquiry_list .title_con .date {
    font-size: 12px;
    font-weight: 500;
    color: #777
}

.ani_txt {
    position: relative;
    padding-block: 70px
}

.ani_txt::after {
    content: "";
    position: absolute;
    display: block;
    width: 150px;
    height: 150px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background: url(../images/icon/ico_point.png) no-repeat center/cover;
    z-index: 0;
    -webkit-filter: invert(.5);
    filter: invert(.5);
    opacity: .2
}

.ani_txt .text-container {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    overflow: hidden;
    z-index: 1
}

.ani_txt .text-container h1 {
    font-size: 18px;
    font-weight: 700;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    white-space: pre-wrap;
    text-align: center;
    line-height: 1.5
}

.ani_txt .text-container h1 span {
    color: #888;
    -webkit-transition: color .2s ease;
    transition: color .2s ease
}

.sub_banner {
    position: relative;
    width: 100%;
    height: 140px
}

@media (min-width:768px) {
    .sub_banner {
        height: 250px
    }
}

.sub_banner::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .3);
    z-index: 0
}

.sub_banner .txt_con {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 1
}

.sub_banner .txt_con .t1 {
    font-size: 1.5rem;
    font-weight: 700;
    color: #fff
}

@media (min-width:768px) {
    .sub_banner .txt_con .t1 {
        font-size: 36px
    }
}

.sub_banner.review_banner {
    background: url(../images/img/img_review_banner.jpg) no-repeat center/cover
}

.about {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-block: 30px 100px
}

@media (min-width:768px) {
    .about {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: start;
        gap: 30px;
        margin-block: 100px 30px
    }
}

.about .txt_con {
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2
}

.about .txt_con .sub_tit {
    margin-bottom: 30px;
    font-size: 24px;
    font-weight: 700
}

.about .txt_con .t1 {
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4
}

.about .txt_con .t1:last-child {
    margin-bottom: 0
}

.about .img_con {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: none
}

@media (min-width:768px) {
    .about .img_con {
        display: block
    }
}

.about .img_con img {
    width: 100%
}

.process.sub {
    margin-top: 50px
}

@media (min-width:768px) {
    .process.sub {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        margin-top: 80px
    }
}

.detail_process {
    margin-top: 50px
}

.detail_process .left_txt {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-bottom: 30px;
    font-size: 24px;
    font-weight: 700
}

.detail_process .right_box .detail_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 30px
}

.detail_process .right_box .detail_list .list {
    width: 100%
}

.detail_process .right_box .detail_list .list .img_con {
    position: relative;
    margin-bottom: 15px;
    width: 100%;
    border-radius: 15px;
    overflow: hidden
}

.detail_process .right_box .detail_list .list .img_con::before {
    content: "";
    display: block;
    padding-bottom: 60%
}

.detail_process .right_box .detail_list .list .img_con img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.detail_process .right_box .detail_list .list .txt_con .t1 {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 700;
    color: var(--main)
}

.detail_process .right_box .detail_list .list .txt_con .t2 {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.4
}

@media (min-width:576px) {
    .detail_process .right_box .detail_list .list .txt_con .t2 {
        font-size: 16px;
        font-weight: 500
    }
}

.solution.sub {
    margin-top: 0
}

.solution .list_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 30px
}

.solution .list_box .box {
    width: 100%
}

.solution .list_box .box .img_con {
    border-radius: 10px;
    overflow: hidden;
    aspect-ratio: 2/1;
    -webkit-box-shadow: 3px 3px 10px 3px rgba(0, 128, 0, .1);
    box-shadow: 3px 3px 10px 3px rgba(0, 128, 0, .1)
}

.solution .list_box .box .img_con .img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.solution .list_box .box .txt_con {
    margin-top: 20px
}

.solution .list_box .box .txt_con .t1 {
    font-size: 1rem;
    font-weight: 500;
    color: var(--main)
}

.solution .list_box .box .txt_con .t2 {
    margin-top: 10px;
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--main)
}

.solution .list_box .box .t3 {
    margin-top: 10px;
    font-size: 1rem;
    font-weight: 400;
    color: #3c3c3c;
    line-height: 1.4
}

.tit_con {
    margin-bottom: 30px;
    text-align: left
}

.tit_con .title {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.4
}

.tit_con .title span {
    color: var(--main)
}

.tit_con .t1 {
    margin-top: 15px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7
}

.recommend {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0;
    margin-top: 50px
}

.recommend .tit_con {
    margin-bottom: 30px;
    text-align: left
}

.recommend .tit_con .title {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.4
}

.recommend .txt_con {
    width: 100%
}

.recommend .txt_con .list {
    position: relative;
    margin-bottom: 15px;
    padding: 25px;
    border-radius: 30px;
    background-color: rgba(0, 64, 45, .1)
}

.recommend .txt_con .list p {
    position: relative;
    padding-left: 35px;
    font-size: .9rem;
    font-weight: 400
}

.recommend .txt_con .list p::before {
    content: "1";
    position: absolute;
    display: block;
    top: -3px;
    left: 0;
    font-size: 20px;
    font-weight: 700;
    color: var(--primary)
}

.recommend .txt_con .list:nth-child(1) p::before {
    content: "01."
}

.recommend .txt_con .list:nth-child(2) p::before {
    content: "02."
}

.recommend .txt_con .list:nth-child(3) p::before {
    content: "03."
}

.recommend .txt_con .list:nth-child(4) p::before {
    content: "04."
}

.method {
    margin-block: 50px 0
}

.method .tit_con {
    margin-bottom: 20px
}

.method .tit_con .title {
    text-align: left
}

.method .method_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 15px
}

.method .method_con .list {
    position: relative;
    width: calc((100% - 15px)/ 2);
    border-radius: 15px;
    background-color: #eee
}

.method .method_con .list::before {
    content: "";
    display: block;
    padding-bottom: 100%
}

.method .method_con .list .box {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    padding: 10px
}

.method .method_con .list .box .img_con {
    position: relative;
    height: 70px;
    margin-bottom: 10px;
    text-align: center
}

.method .method_con .list .box .img_con img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 50px
}

.method .method_con .list .box .txt_con {
    text-align: center
}

.method .method_con .list .box .txt_con .t1 {
    margin-bottom: 10px;
    font-size: 1rem;
    font-weight: 700
}

.method .method_con .list .box .txt_con .t2 {
    font-size: .8rem
}

@media (max-width:370px) {
    .method .method_con .list {
        width: 100%
    }

    .method .method_con .list .box .img_con {
        height: 140px;
        margin-bottom: 35px
    }

    .method .method_con .list .box .img_con img {
        width: 120px
    }

    .method .method_con .list .box .txt_con .t1 {
        font-size: 1.2rem
    }

    .method .method_con .list .box .txt_con .t2 {
        font-size: 1rem
    }
}

.rate_setting {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 5px
}

.rate_setting .list {
    width: calc((100% - 5px)/ 2);
    margin-top: 25px
}

.rate_setting .list .tit {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 700
}

.rate_setting .list .star_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 4px
}

.rate_setting .list .star_con .star {
    width: 27px
}

.rate_setting .list .star_con .star img {
    width: 100%
}

.form-group {
    width: 100%;
    max-width: 1000px;
    margin: 10px 0
}

.form-group .box {
    padding: 15px;
    border: 1px solid var(--border);
    border-radius: 6px
}

.form-group .box:has(textarea:focus) {
    border: 2px solid #333
}

.form-group .box .form-textarea {
    width: 100%;
    min-height: 225px;
    border: none;
    outline: 0;
    font-size: 16px;
    font-weight: 400;
    resize: none
}

.form-group .box .form-textarea:focus {
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none
}

.form-group .box .char-count {
    text-align: right;
    font-size: 14px;
    font-weight: 400;
    color: #a2a2a2;
    margin-top: 3px
}

.review_avg {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 25px;
    border-radius: 10px;
    background-color: #f7f8fa
}

.review_avg .company_profile {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-bottom: 20px
}

.review_avg .company_profile .thumb_con {
    margin-bottom: 20px
}

.review_avg .company_profile .txt_con {
    text-align: center
}

.review_avg .company_profile .txt_con .name {
    font-size: 24px;
    font-weight: 700
}

.review_avg .avg_num {
    position: relative;
    width: 35%;
    text-align: center
}

.review_avg .avg_num::after {
    content: "";
    position: absolute;
    display: block;
    width: 1px;
    height: 100px;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background-color: var(--gray1)
}

.review_avg .avg_num .avg {
    font-size: 36px;
    font-weight: 500
}

.review_avg .avg_num .star_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 2px
}

.review_avg .avg_num .star_con .list {
    width: 12px
}

.review_avg .avg_num .star_con .list img {
    width: 100%
}

.review_avg .rating-graph {
    width: 60%
}

.review_avg .rating-graph .rating-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 8px
}

.review_avg .rating-graph .rating-row:last-child {
    margin-bottom: 0
}

.review_avg .rating-graph .rating-row .rating-label {
    width: 23px;
    margin-right: 10px;
    color: var(--gray-color);
    font-size: 14px;
    font-weight: 500
}

.review_avg .rating-graph .rating-row .rating-label.active {
    color: var(--main-color);
    font-weight: 600
}

.review_avg .rating-graph .rating-row .rating-bar {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-right: 8px
}

.review_avg .rating-graph .rating-row .rating-bar .progress {
    height: 6px;
    background-color: #e6e6e6;
    border-radius: 4px;
    overflow: hidden
}

.review_avg .rating-graph .rating-row .rating-bar .progress .progress-bar {
    background-color: var(--main-color);
    border-radius: 15px
}

.review_avg .rating-graph .rating-row .rating-count {
    width: 30px;
    margin-left: 10px;
    text-align: left;
    color: var(--gray1);
    font-size: 14px;
    font-weight: 500
}

@media (max-width:450px) {
    .review_avg {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .review_avg .avg_num {
        width: 100%;
        margin-bottom: 30px
    }

    .review_avg .avg_num::after {
        display: none
    }

    .review_avg .rating-graph {
        width: 100%
    }
}

.review_all .review {
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--gray1)
}

.review_all .review .thumb_nail {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.review_all .review .thumb_nail .info_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    width: 100%
}

.review_all .review .thumb_nail .info_con .img_con {
    width: 50px;
    height: 50px
}

.review_all .review .thumb_nail .info_con .txt_con .star_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.review_all .review .thumb_nail .info_con .txt_con .star_con .list img {
    width: 15px
}

.review_all .review .thumb_nail .info_con .txt_con .date {
    margin-top: 3px;
    margin-left: 5px;
    font-size: 12px;
    font-weight: 500;
    color: var(--gray1)
}

.review_all .review .review_img {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 5px;
    margin-top: 15px
}

.review_all .review .review_img .list {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: calc((100% - 15px)/ 4)
}

.review_all .review .desc_con {
    margin-top: 15px
}

.review_all .review .desc_con .desc {
    font-size: 14px;
    font-weight: 500;
    line-height: 22px
}

.counselor {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.counselor .left_box {
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.counselor .left_box .thumb_con {
    margin-bottom: 20px
}

.counselor .left_box .txt_con .name {
    font-size: 24px;
    font-weight: 700
}

.counselor .left_box .txt_con .rating {
    padding-left: 10px
}

.counselor .left_box .txt_con .rating .rate {
    position: relative;
    padding-left: 30px;
    font-size: 24px;
    font-weight: 700
}

.counselor .left_box .txt_con .rating .rate::before {
    content: "";
    position: absolute;
    display: block;
    width: 25px;
    height: 25px;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../images/icon/ico_rate_star.png) no-repeat center/cover
}

.counselor .left_box .txt_con .rating .rate span {
    font-size: 16px;
    font-weight: 500;
    color: #b2b2b2
}

.thumb_con .img_con {
    position: relative;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    overflow: hidden
}

.thumb_con .img_con .img_thumb {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.thumb_nail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 15px
}

.thumb_nail .img_con {
    position: relative;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    overflow: hidden
}

.thumb_nail .img_con .img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.thumb_nail .txt_con .name {
    font-size: 16px;
    font-weight: 700
}

.web_review {
    text-align: center;
    border-bottom: 1px solid var(--border)
}

.web_review .sub_title {
    font-size: 36px;
    font-weight: 500
}

.review_con {
    margin-top: 50px
}

.review_con .title_con {
    margin-bottom: 30px
}

.review_con .review_list .list .specialist {
    margin-bottom: 5px;
    font-size: 20px;
    font-weight: 700
}

.bottom_btn_con {
    margin-top: 15px
}

.rect {
    overflow: hidden;
    position: relative;
    width: 100%
}

.rect::after {
    content: "";
    display: block;
    padding-bottom: 100%
}

.rect>img {
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.header_menu {
    position: fixed;
    width: 100%;
    max-width: 580px;
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: all .2s;
    transition: all .2s;
    border-bottom: 1px solid var(--border-color);
    z-index: 100
}

.header_menu.active {
    background-color: #fff;
    -webkit-transition: all .2s;
    transition: all .2s
}

.header_menu.type_main {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 16px
}

.header_menu.type_main .left_area,
.header_menu.type_main .right_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 40px
}

.header_menu.type_main .left_area {
    gap: 20px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.header_menu.type_main .left_area img {
    height: 24px
}

.header_menu.type_main .right_area {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.header_menu.type_main .right_area img {
    width: 24px
}

.header_menu.type_main .btn_icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: 0 0;
    border: none;
    cursor: pointer;
    padding: 0
}

.header_menu.type_sub {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 16px
}

.header_menu.type_sub .left_area,
.header_menu.type_sub .right_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 40px
}

.header_menu.type_sub .left_area {
    gap: 20px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.header_menu.type_sub .left_area img {
    height: 24px
}

.header_menu.type_sub .right_area {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.header_menu.type_sub .right_area img {
    width: 24px
}

.header_menu.type_sub .page_title {
    font-size: 16px;
    font-weight: 700;
    color: #333;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.header_menu.type_sub .btn_icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: 0 0;
    border: none;
    cursor: pointer;
    padding: 0
}

.ft_nav {
    position: fixed;
    width: 100%;
    max-width: 580px;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    border-top: 1px solid var(--border-color);
    background-color: #fff;
    z-index: 2000
}

.ft_nav .ft_menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 88px
}

.ft_nav .ft_menu .menu {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    text-align: center;
    opacity: .5
}

.ft_nav .ft_menu .menu .link .img_con {
    position: relative;
    width: 40px;
    height: 40px;
    margin: 0 auto
}

.ft_nav .ft_menu .menu .link .img_con::before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.ft_nav .ft_menu .menu .link .img_con img {
    width: 100%
}

.ft_nav .ft_menu .menu .link .img_con.home::before {
    background: url(../images/ico/ico_nav_home.png) no-repeat center/cover
}

.ft_nav .ft_menu .menu .link .img_con.reser::before {
    background: url(../images/ico/ico_nav_reser.png) no-repeat center/cover
}

.ft_nav .ft_menu .menu .link .img_con.self_test::before {
    background: url(../images/ico/ico_nav_self.png) no-repeat center/cover
}

.ft_nav .ft_menu .menu .link .img_con.my_info::before {
    background: url(../images/ico/ico_nav_mypage.png) no-repeat center/cover
}

.ft_nav .ft_menu .menu .link .tit {
    font-size: 13px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: -.8px
}

.ft_nav .ft_menu .menu.on {
    opacity: 1
}

.profile_thumb {
    position: relative;
    display: inline-block
}

.profile_thumb .thumb_con {
    position: relative;
    width: 105px;
    height: 105px;
    border-radius: 50%;
    overflow: hidden
}

.profile_thumb .thumb_con .thumb {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.profile_thumb .thumb_upload {
    position: absolute;
    bottom: 0;
    right: 0
}

.profile_thumb .thumb_upload .upload_input {
    display: none
}

.profile_thumb .thumb_upload .upload_btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: #f0f0f0;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
    box-shadow: 0 2px 4px rgba(0, 0, 0, .1)
}

.profile_thumb .thumb_upload .upload_btn svg {
    width: 18px;
    height: 18px;
    fill: #fff
}

.profile_thumb .thumb_upload .upload_btn:active {
    -webkit-transform: scale(.95);
    transform: scale(.95)
}

.user_info .name {
    margin-bottom: 10px;
    font-size: 24px;
    font-weight: 700
}

.user_info .email,
.user_info .phone {
    font-size: 16px;
    font-weight: 500
}

.offcanvas.offcanvas-bottom {
    max-width: 580px;
    width: 100%;
    height: auto;
    left: 50%;
    right: initial;
    -webkit-transform: translate(-50%, 100%);
    transform: translate(-50%, 100%);
    border-radius: 16px 16px 0 0
}

.offcanvas.show:not(.hiding) {
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0)
}

.offcanvas-backdrop {
    max-width: 580px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.select_con .select_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.select_con .select_list.one .select_item {
    width: 100%
}

.select_con .select_list.three {
    gap: 10px
}

.select_con .select_list .select_item {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 10px;
    border: 1px solid #eee;
    border-radius: 10px;
    cursor: pointer
}

.select_con .select_list .select_item::before {
    content: "";
    position: absolute;
    display: block;
    width: 13px;
    height: 6px;
    top: 50%;
    right: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../images/ico/ico_down_arr.png) no-repeat center/cover
}

.search_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border: 1px solid #eee;
    border-radius: 10px;
    padding: 6px 10px;
    -webkit-transition: border .2s ease;
    transition: border .2s ease
}

.search_con:focus-within {
    border: 1px solid #000
}

.search_con .search_input {
    -webkit-box-flex: 1;
    -ms-flex: auto;
    flex: auto;
    border: none;
    font-size: 16px;
    font-weight: 400
}

.search_con .search_input:focus {
    outline: 0;
    border: none
}

.search_con .search_btn {
    width: 24px;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.search_filter {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px
}

.search_filter .filter_item {
    width: calc((100% - 10px)/ 4);
    border: 1px solid #eee;
    border-radius: 25px;
    text-align: center;
    padding: 5px 10px;
    cursor: pointer
}

.search_filter .filter_item.on {
    background-color: var(--brown-color);
    color: #fff
}

.swiper {
    width: 100%;
    height: 100%
}

.swiper .swiper-pagination.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: var(--brown-color)
}

.swiper-slide {
    text-align: center;
    font-size: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.common_slide .swiper-wrapper .swiper-slide {
    border-radius: 20px;
    overflow: hidden;
    text-align: left
}

.common_slide .swiper-wrapper .swiper-slide .txt_con {
    padding: 25px;
    background-color: #fff
}

.common_slide .swiper-wrapper .swiper-slide .txt_con .tit {
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 700;
    font-family: "Nanum Myeongjo", serif;
    line-height: 28px
}

.common_slide .swiper-wrapper .swiper-slide .txt_con .solution {
    margin-bottom: 10px;
    font-size: 12px;
    font-weight: 700;
    font-family: "Nanum Myeongjo", serif
}

.common_slide .swiper-wrapper .swiper-slide .txt_con .t1 {
    font-size: 15px;
    font-weight: 300;
    line-height: 22px;
    letter-spacing: -1px
}

.therapy_slide .swiper-wrapper .swiper-slide {
    border-radius: 20px;
    overflow: hidden;
    text-align: left
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con {
    padding: 30px 20px;
    background-color: #fff
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .link {
    position: relative;
    display: block;
    margin-bottom: 20px;
    font-size: 20px;
    font-weight: 600;
    line-height: 20px;
    letter-spacing: -1.5px
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .link::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 8px;
    height: 17px;
    background: url(../images/ico/ico_link_arr.png) no-repeat center/cover
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .txt {
    position: relative;
    padding-left: 60px;
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: 400;
    color: #909090
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .txt:last-child {
    margin-bottom: 0
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .txt::before {
    content: "";
    position: absolute;
    display: block;
    width: 40px;
    height: 40px;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .txt.t1::before {
    background: url(../images/ico/ico_stethoscope.png) no-repeat center/cover
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .txt.t2::before {
    background: url(../images/ico/ico_book_open.png) no-repeat center/cover
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .txt.t3::before {
    background: url(../images/ico/ico_glass.png) no-repeat center/cover
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .txt.t4::before {
    background: url(../images/ico/ico_signs.png) no-repeat center/cover
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .txt.t5::before {
    background: url(../images/ico/ico_Home_light.png) no-repeat center/cover
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .txt.t6::before {
    background: url(../images/ico/ico_group_add.png) no-repeat center/cover
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .txt.t7::before {
    background: url(../images/ico/Lamp_light.png) no-repeat center/cover
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .txt.t8::before {
    background: url(../images/ico/ico_book.png) no-repeat center/cover
}

.therapy_slide .swiper-wrapper .swiper-slide .txt_con .txt.t9::before {
    background: url(../images/ico/ico_chat.png) no-repeat center/cover
}

/* 메뉴가 열렸을 때 배경 스크롤 방지 */
body.scroll_lock {
    overflow: hidden;
    height: 100%;
    position: fixed; /* 일부 모바일 브라우저 대응 */
    width: 100%;
}

.main_menu {
    position: fixed;
    top: 0;
    left: 100%;
    width: 100%;
    max-width: 580px;
    height: 100%;
    padding-block: 20px;
    visibility: hidden;
    opacity: 0;
    background-color: #fff;
    z-index: 2000;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.main_menu.active {
    position: fixed;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    visibility: visible;
    opacity: 1;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
}

.main_menu .inner .user_info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 20px;
    border-bottom: 10px solid var(--border-color)
}

.main_menu .inner .user_info .left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px
}

.main_menu .inner .user_info .left .user_profile {
    width: 27px
}

.main_menu .inner .user_info .left .user_profile .img {
    width: 100%
}

.main_menu .inner .user_info .left .user_name .t1 {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: -1px
}

.main_menu .inner .user_info .left .user_name .t2 {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: -1.4px;
    color: #909090
}

.main_menu .inner .close_btn {
    width: 22px;
    height: 22px;
    cursor: pointer
}

.main_menu .inner .close_btn .close_icon {
    width: 100%
}

.main_menu .inner .menu_list {
    margin-block: 30px 65px;
    padding-inline: 20px
}

.main_menu .inner .menu_list .menu {
    margin-bottom: 20px
}

.main_menu .inner .menu_list .menu .link {
    font-size: 16px;
    font-weight: 600;
    line-height: 26px;
    letter-spacing: -.94px
}

.main_menu .menu_footer {
    padding: 30px 50px;
    background: rgba(255, 191, 0, .2)
}

.main_menu .menu_footer .company_name {
    margin-bottom: 20px;
    font-size: 20px;
    font-weight: 700;
    line-height: 18px;
    letter-spacing: -1px;
    color: rgba(120, 77, 3, .6)
}

.main_menu .menu_footer .company_info .txt {
    font-size: 14px;
    font-weight: 700;
    color: rgba(120, 77, 3, .6)
}

.check_con {
    margin-bottom: 15px;
    cursor: pointer
}

.check_con:last-child {
    margin-bottom: 0
}

.check_con input {
    display: none
}

.check_con input:checked+.form-check-label {
    border: 1px solid var(--brown-color);
    background-color: var(--brown-color);
    color: #fff
}

.check_con .form-check-label {
    display: block;
    padding: 10px 20px;
    border: 1px solid var(--border-color);
    border-radius: 10px;
    cursor: pointer;
    font-size: 18px;
    font-weight: 500
}

.event .btn-group-toggle label.btn input {
    display: none
}

.form-control {
    padding: 7.5px 10px;
    font-size: 16px;
    font-weight: 400
}

.form-group .address_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px
}

.form-group .address_con .form-control {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.form-group .address_con .btn {
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.form-validate .form-label {
    margin-bottom: 6px;
    font-size: 16px;
    font-weight: 500;
    color: var(--gray-color)
}

.pill_con .pill_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    gap: 3px
}

@media (max-width:400px) {
    .pill_con .pill_list {
        overflow: scroll
    }
}

.pill_con .pill_list .pill_item {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 400;
    cursor: pointer
}

.pill_con .pill_list .pill_item .btn {
    padding: 2px 19px;
    border: 1px solid var(--border-color)
}

.pill_con .pill_list .pill_item .btn.active {
    color: #fff
}

.tab_con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff
}

.tab_con .tab {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding-block: 15px;
    border-bottom: 2px solid var(--border-color);
    text-align: center;
    color: var(--gray-color)
}

.tab_con .tab .link .txt {
    font-size: 16px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: -1px
}

.tab_con .tab.active {
    border-bottom: 2px solid var(--main-color);
    color: #000
}

.switch_con {
    display: inline-block;
    position: relative
}

.switch_con .switch_input {
    display: none
}

.switch_con .switch_input:checked+.switch_label {
    background-color: var(--brown-color)
}

.switch_con .switch_input:checked+.switch_label::before {
    left: calc(100% - 23px)
}

.switch_con .switch_label {
    position: relative;
    display: block;
    width: 44px;
    height: 19px;
    background-color: #dadada;
    border: 1px solid var(--border-color);
    border-radius: 5px;
    cursor: pointer;
    -webkit-transition: background-color .3s ease;
    transition: background-color .3s ease
}

.switch_con .switch_label::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 1px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 22px;
    height: 17px;
    background-color: var(--main-color);
    border-radius: 4px;
    -webkit-transition: left .3s ease;
    transition: left .3s ease
}

.form-check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    cursor: pointer
}

.form-check.form-switch .form-check-input {
    margin-top: 0;
    background-image: url(../images/ico/ico_switch_circle.png);
    background-size: 18px;
    background-position: left 3px center
}

.form-check.form-switch .form-check-input:checked {
    background-color: var(--brown-color);
    border-color: var(--brown-color);
    background-image: url(../images/ico/ico_switch_white.png);
    background-size: 18px;
    background-position: right 3px center
}

.form-check.form-switch .form-check-input:focus {
    border-color: var(--brown-color);
    -webkit-box-shadow: 0 0 0 .25rem rgba(var(--brown-color), .5);
    box-shadow: 0 0 0 .25rem rgba(var(--brown-color), .5)
}

.form-check.form-switch .form-check-label {
    font-size: 14px;
    font-weight: 500;
    color: var(--gray-color)
}

#modal_sm_1 .modal-body {
    padding-block: 30px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -.8px;
    line-height: 22px;
    text-align: center
}

#modal_sm_1 .modal-body .img_con {
    position: relative;
    width: 100px;
    margin: 0 auto 20px
}

#modal_sm_1 .modal-body .img_con .img-fluid {
    width: 100%
}

#modal_sm_1 .modal-footer {
    padding: 0 0 30px;
    border-top: none;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#modal_sm_1 .modal-footer .btn {
    width: 120px
}

#modal_sm_2 .modal-body {
    padding-block: 30px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -.8px;
    line-height: 22px;
    text-align: center
}

#modal_sm_2 .modal-body .img_con {
    position: relative;
    width: 100px;
    margin: 0 auto 20px
}

#modal_sm_2 .modal-body .img_con .img-fluid {
    width: 100%
}

#modal_sm_2 .modal-footer {
    padding: 0 0 30px;
    border-top: none;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#modal_sm_2 .modal-footer .form-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 5px;
    width: 100%;
    padding-inline: 16px
}

#modal_sm_2 .modal-footer .form-row .btn {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

#modal_md_1 .modal-body {
    padding-block: 30px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -.8px;
    line-height: 22px;
    text-align: center
}

#modal_md_1 .modal-body .img_con {
    position: relative;
    width: 100px;
    margin: 0 auto 20px
}

#modal_md_1 .modal-body .img_con .img-fluid {
    width: 100%
}

#modal_md_1 .modal-footer {
    padding: 0 0 30px;
    border-top: none;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#modal_md_1 .modal-footer .btn {
    width: 120px
}

#modal_md_2 .modal-body {
    padding-block: 30px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -.8px;
    line-height: 22px;
    text-align: center
}

#modal_md_2 .modal-body .img_con {
    position: relative;
    width: 100px;
    margin: 0 auto 20px
}

#modal_md_2 .modal-body .img_con .img-fluid {
    width: 100%
}

#modal_md_2 .modal-footer {
    padding: 0 0 30px;
    border-top: none;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#modal_md_2 .modal-footer .form-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 5px;
    width: 100%;
    padding-inline: 16px
}

#modal_md_2 .modal-footer .form-row .btn {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

#modal-default .modal-body {
    padding-block: 30px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -.8px;
    line-height: 22px;
    text-align: center
}

#modal-default .modal-body .img_con {
    position: relative;
    width: 100px;
    margin: 0 auto 20px
}

#modal-default .modal-body .img_con .img-fluid {
    width: 100%
}

#modal-default .modal-footer {
    padding: 0 0 30px;
    border-top: none;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#modal-default .modal-footer .form-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 5px;
    width: 100%;
    padding-inline: 16px
}

#modal-default .modal-footer .form-row .btn {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

#modal_bottom .modal-body {
    padding-block: 30px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -.8px;
    line-height: 22px;
    text-align: center
}

#modal_bottom .modal-body .img_con {
    position: relative;
    width: 100px;
    margin: 0 auto 20px
}

#modal_bottom .modal-body .img_con .img-fluid {
    width: 100%
}

#modal_bottom .modal-footer {
    padding: 0 0 30px;
    border-top: none;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#modal_bottom .modal-footer .form-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 5px;
    width: 100%;
    padding-inline: 16px
}

#modal_bottom .modal-footer .form-row .btn {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

#modal_full .modal-body {
    padding-block: 30px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -.8px;
    line-height: 22px;
    text-align: center
}

#modal_full .modal-body .img_con {
    position: relative;
    width: 100px;
    margin: 0 auto 20px
}

#modal_full .modal-body .img_con .img-fluid {
    width: 100%
}

#modal_full .modal-footer {
    padding: 0 0 30px;
    border-top: none;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#modal_full .modal-footer .form-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 5px;
    width: 100%;
    padding-inline: 16px
}

#modal_full .modal-footer .form-row .btn {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.modal-content .modal-body .img_con {
    position: relative;
    width: 100px;
    margin: 0 auto 20px
}

.modal-content .modal-body .img_con .img-fluid {
    width: 100%
}

:root {
    --main-color: #ffbf00;
    --brown-color: #784d03;
    --gray-color: #909090;
    --background-color: rgba(163, 196, 250, 0.2);
    --border-color: #dadada
}

* {
    padding: 0;
    margin: 0
}

body {
    font-family: SF-Pro, sans-serif;
    color: #000
}

li,
ol,
ul {
    list-style: none;
    margin: 0;
    padding: 0
}

a {
    text-decoration: none;
    color: inherit
}

p {
    margin: 0;
    padding: 0
}

.nl {
    display: block;
    line-height: inherit
}

.brown_txt {
    color: var(--brown-color)
}

.white_txt {
    color: #fff
}

.gray_txt {
    color: var(--gray-color)
}

.inner {
    max-width: 580px;
    margin: 0 auto;
    padding-inline: 20px;
    background-color: #fff
}

.wrapper {
    position: relative;
    max-width: 580px;
    width: 100%;
    margin: 0 auto;
    overflow: hidden
}

.contents {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(163, 196, 250, .2)), to(rgba(255, 191, 0, .2)));
    background: linear-gradient(180deg, rgba(163, 196, 250, .2) 0, rgba(255, 191, 0, .2) 100%)
}

.page-wrap {
    position: relative
}

h3.sub_title {
    font-size: 20px;
    font-weight: 600;
    line-height: 20px;
    letter-spacing: -1.5px
}

.pt-0 {
    padding-top: 0
}

.pt-5 {
    padding-top: 5px
}

.pt-10 {
    padding-top: 10px
}

.pt-15 {
    padding-top: 15px
}

.pt-20 {
    padding-top: 20px
}

.pt-25 {
    padding-top: 25px
}

.pt-30 {
    padding-top: 30px
}

.pt-35 {
    padding-top: 35px
}

.pt-40 {
    padding-top: 40px
}

.pt-45 {
    padding-top: 45px
}

.pt-50 {
    padding-top: 50px
}

.pt-55 {
    padding-top: 55px
}

.pt-60 {
    padding-top: 60px
}

.pt-65 {
    padding-top: 65px
}

.pt-70 {
    padding-top: 70px
}

.pt-75 {
    padding-top: 75px
}

.pt-80 {
    padding-top: 80px
}

.pt-85 {
    padding-top: 85px
}

.pt-90 {
    padding-top: 90px
}

.pt-95 {
    padding-top: 95px
}

.pt-100 {
    padding-top: 100px
}

.pb-0 {
    padding-bottom: 0
}

.pb-5 {
    padding-bottom: 5px
}

.pb-10 {
    padding-bottom: 10px
}

.pb-15 {
    padding-bottom: 15px
}

.pb-20 {
    padding-bottom: 20px
}

.pb-25 {
    padding-bottom: 25px
}

.pb-30 {
    padding-bottom: 30px
}

.pb-35 {
    padding-bottom: 35px
}

.pb-40 {
    padding-bottom: 40px
}

.pb-45 {
    padding-bottom: 45px
}

.pb-50 {
    padding-bottom: 50px
}

.pb-55 {
    padding-bottom: 55px
}

.pb-60 {
    padding-bottom: 60px
}

.pb-65 {
    padding-bottom: 65px
}

.pb-70 {
    padding-bottom: 70px
}

.pb-75 {
    padding-bottom: 75px
}

.pb-80 {
    padding-bottom: 80px
}

.pb-85 {
    padding-bottom: 85px
}

.pb-90 {
    padding-bottom: 90px
}

.pb-95 {
    padding-bottom: 95px
}

.pb-100 {
    padding-bottom: 100px
}

.pr-0 {
    padding-right: 0
}

.pr-5 {
    padding-right: 5px
}

.pr-10 {
    padding-right: 10px
}

.pr-15 {
    padding-right: 15px
}

.pr-20 {
    padding-right: 20px
}

.pr-25 {
    padding-right: 25px
}

.pr-30 {
    padding-right: 30px
}

.pr-35 {
    padding-right: 35px
}

.pr-40 {
    padding-right: 40px
}

.pr-45 {
    padding-right: 45px
}

.pr-50 {
    padding-right: 50px
}

.pr-55 {
    padding-right: 55px
}

.pr-60 {
    padding-right: 60px
}

.pr-65 {
    padding-right: 65px
}

.pr-70 {
    padding-right: 70px
}

.pr-75 {
    padding-right: 75px
}

.pr-80 {
    padding-right: 80px
}

.pr-85 {
    padding-right: 85px
}

.pr-90 {
    padding-right: 90px
}

.pr-95 {
    padding-right: 95px
}

.pr-100 {
    padding-right: 100px
}

.pl-0 {
    padding-left: 0
}

.pl-5 {
    padding-left: 5px
}

.pl-10 {
    padding-left: 10px
}

.pl-15 {
    padding-left: 15px
}

.pl-20 {
    padding-left: 20px
}

.pl-25 {
    padding-left: 25px
}

.pl-30 {
    padding-left: 30px
}

.pl-35 {
    padding-left: 35px
}

.pl-40 {
    padding-left: 40px
}

.pl-45 {
    padding-left: 45px
}

.pl-50 {
    padding-left: 50px
}

.pl-55 {
    padding-left: 55px
}

.pl-60 {
    padding-left: 60px
}

.pl-65 {
    padding-left: 65px
}

.pl-70 {
    padding-left: 70px
}

.pl-75 {
    padding-left: 75px
}

.pl-80 {
    padding-left: 80px
}

.pl-85 {
    padding-left: 85px
}

.pl-90 {
    padding-left: 90px
}

.pl-95 {
    padding-left: 95px
}

.pl-100 {
    padding-left: 100px
}

.mt-0 {
    margin-top: 0
}

.mt-5 {
    margin-top: 5px
}

.mt-10 {
    margin-top: 10px
}

.mt-15 {
    margin-top: 15px
}

.mt-20 {
    margin-top: 20px
}

.mt-25 {
    margin-top: 25px
}

.mt-30 {
    margin-top: 30px
}

.mt-35 {
    margin-top: 35px
}

.mt-40 {
    margin-top: 40px
}

.mt-45 {
    margin-top: 45px
}

.mt-50 {
    margin-top: 50px
}

.mt-55 {
    margin-top: 55px
}

.mt-60 {
    margin-top: 60px
}

.mt-65 {
    margin-top: 65px
}

.mt-70 {
    margin-top: 70px
}

.mt-75 {
    margin-top: 75px
}

.mt-80 {
    margin-top: 80px
}

.mt-85 {
    margin-top: 85px
}

.mt-90 {
    margin-top: 90px
}

.mt-95 {
    margin-top: 95px
}

.mt-100 {
    margin-top: 100px
}

.mb-0 {
    margin-bottom: 0
}

.mb-5 {
    margin-bottom: 5px
}

.mb-10 {
    margin-bottom: 10px
}

.mb-15 {
    margin-bottom: 15px
}

.mb-20 {
    margin-bottom: 20px
}

.mb-25 {
    margin-bottom: 25px
}

.mb-30 {
    margin-bottom: 30px
}

.mb-35 {
    margin-bottom: 35px
}

.mb-40 {
    margin-bottom: 40px
}

.mb-45 {
    margin-bottom: 45px
}

.mb-50 {
    margin-bottom: 50px
}

.mb-55 {
    margin-bottom: 55px
}

.mb-60 {
    margin-bottom: 60px
}

.mb-65 {
    margin-bottom: 65px
}

.mb-70 {
    margin-bottom: 70px
}

.mb-75 {
    margin-bottom: 75px
}

.mb-80 {
    margin-bottom: 80px
}

.mb-85 {
    margin-bottom: 85px
}

.mb-90 {
    margin-bottom: 90px
}

.mb-95 {
    margin-bottom: 95px
}

.mb-100 {
    margin-bottom: 100px
}

.mr-0 {
    margin-right: 0
}

.mr-5 {
    margin-right: 5px
}

.mr-10 {
    margin-right: 10px
}

.mr-15 {
    margin-right: 15px
}

.mr-20 {
    margin-right: 20px
}

.mr-25 {
    margin-right: 25px
}

.mr-30 {
    margin-right: 30px
}

.mr-35 {
    margin-right: 35px
}

.mr-40 {
    margin-right: 40px
}

.mr-45 {
    margin-right: 45px
}

.mr-50 {
    margin-right: 50px
}

.mr-55 {
    margin-right: 55px
}

.mr-60 {
    margin-right: 60px
}

.mr-65 {
    margin-right: 65px
}

.mr-70 {
    margin-right: 70px
}

.mr-75 {
    margin-right: 75px
}

.mr-80 {
    margin-right: 80px
}

.mr-85 {
    margin-right: 85px
}

.mr-90 {
    margin-right: 90px
}

.mr-95 {
    margin-right: 95px
}

.mr-100 {
    margin-right: 100px
}

.ml-0 {
    margin-left: 0
}

.ml-5 {
    margin-left: 5px
}

.ml-10 {
    margin-left: 10px
}

.ml-15 {
    margin-left: 15px
}

.ml-20 {
    margin-left: 20px
}

.ml-25 {
    margin-left: 25px
}

.ml-30 {
    margin-left: 30px
}

.ml-35 {
    margin-left: 35px
}

.ml-40 {
    margin-left: 40px
}

.ml-45 {
    margin-left: 45px
}

.ml-50 {
    margin-left: 50px
}

.ml-55 {
    margin-left: 55px
}

.ml-60 {
    margin-left: 60px
}

.ml-65 {
    margin-left: 65px
}

.ml-70 {
    margin-left: 70px
}

.ml-75 {
    margin-left: 75px
}

.ml-80 {
    margin-left: 80px
}

.ml-85 {
    margin-left: 85px
}

.ml-90 {
    margin-left: 90px
}

.ml-95 {
    margin-left: 95px
}

.ml-100 {
    margin-left: 100px
}

.text_line_1 {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical
}

.text_line_2 {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical
}

.text_line_3 {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical
}

.text_line_4 {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical
}

.text_line_5 {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical
}

.border-top-layout {
    border-top: 5px solid #eee
}

.border-top {
    border-top: 1px solid var(--border-color) !important
}

.border-bottom {
    border-bottom: 1px solid var(--border-color) !important
}

.bottom_fixed {
    position: fixed;
    bottom: 30px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100%;
    max-width: 580px;
    padding-inline: 20px
}

.fixed_right_bottom {
    position: fixed;
    right: 50%;
    -webkit-transform: translateX(275px);
    transform: translateX(275px);
    bottom: 120px;
    width: 60px;
    padding: 10px;
    border: 1px solid var(--border-color);
    border-radius: 10px;
    background-color: var(--main-color);
    -webkit-box-shadow: 0 4px 4px 0 rgba(255, 255, 255, .1);
    box-shadow: 0 4px 4px 0 rgba(255, 255, 255, .1);
    text-align: center
}

@media (max-width:580px) {
    .fixed_right_bottom {
        -webkit-transform: none;
        transform: none;
        right: 20px
    }
}

.fixed_right_bottom .link .img_con {
    width: 30px;
    margin: 0 auto
}

.fixed_right_bottom .link .img_con img {
    width: 100%
}

.fixed_right_bottom .link .txt {
    margin-top: 10px;
    font-size: 10px;
    font-weight: 700;
    color: #784d03;
    line-height: 12px;
    letter-spacing: -.4px
}

.btn.btn-primary {
    background-color: var(--main-color);
    color: var(--brown-color);
    border: 1px solid var(--main-color)
}

.btn.btn-primary.active {
    background-color: var(--main-color);
    color: var(--brown-color);
    border: 1px solid var(--main-color)
}

.btn.btn-outline-primary {
    border: 1px solid var(--main-color);
    color: var(--main-color)
}

.btn.btn-outline-primary:hover {
    background-color: var(--main-color);
    color: #fff
}

.btn.btn-outline-primary.active {
    color: #fff
}

.btn.btn-secondary {
    background-color: var(--brown-color);
    color: #fff;
    border: 1px solid var(--brown-color)
}

.btn.btn-outline-secondary {
    border: 1px solid var(--brown-color);
    color: var(--brown-color)
}

.btn.btn-outline-secondary:hover {
    background-color: var(--brown-color);
    color: #fff
}

.form-group label {
    margin-bottom: 6px;
    font-size: 16px;
    font-weight: 500;
    color: var(--gray-color)
}

@media (max-width:400px) {
    .form-group .form-row {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .form-group .form-row .col-3 {
        width: 100%
    }
}

.pill_badge {
    display: inline-block;
    padding: 2px 6px;
    border: 1px solid var(--border-color);
    border-radius: 10px;
    background-color: var(--brown-color);
    font-size: 14px;
    font-weight: 400;
    color: #fff
}

.info_list_con .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 20px
}

.info_list_con .list:last-child {
    margin-bottom: 0
}

.info_list_con .list .tit {
    font-size: 15px;
    font-weight: 500;
    color: var(--gray-color);
    line-height: 28px;
    letter-spacing: -1px
}

.info_list_con .list .info {
    font-size: 15px;
    font-weight: 500;
    text-align: right;
    line-height: 28px;
    letter-spacing: -1px
}

.info_list_con .list .info.point {
    color: var(--brown-color)
}

.info_list_con.two {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0 20px
}

.info_list_con.two .list {
    width: calc((100% - 20px)/ 2);
    margin-bottom: 20px
}

.like_con .like_label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    position: relative
}

.like_con .like_label input[type=checkbox] {
    position: absolute;
    opacity: 0;
    pointer-events: none
}

.like_con .like_label input[type=checkbox]:checked+.ic_heart {
    background-image: url(../images/ico/ico_like_on.png)
}

.like_con .like_label .ic_heart {
    width: 24px;
    height: 24px;
    background: url(../images/ico/ico_like.png) no-repeat center/cover;
    -webkit-transition: background-image .15s ease, -webkit-transform .15s ease;
    transition: background-image .15s ease, -webkit-transform .15s ease;
    transition: transform .15s ease, background-image .15s ease;
    transition: transform .15s ease, background-image .15s ease, -webkit-transform .15s ease
}

.like_con .like_label:active .ic_heart {
    -webkit-transform: scale(.9);
    transform: scale(.9)
}

@font-face {
    font-family: Pretendard;
    font-weight: 900;
    font-display: swap;
    src: local("Pretendard Black"), url(../fonts/Pretendard-Black.woff2) format("woff2"), url(woff/Pretendard-Black.woff) format("woff")
}

@font-face {
    font-family: Pretendard;
    font-weight: 800;
    font-display: swap;
    src: local("Pretendard ExtraBold"), url(../fonts/Pretendard-ExtraBold.woff2) format("woff2"), url(woff/Pretendard-ExtraBold.woff) format("woff")
}

@font-face {
    font-family: Pretendard;
    font-weight: 700;
    font-display: swap;
    src: local("Pretendard Bold"), url(../fonts/Pretendard-Bold.woff2) format("woff2"), url(woff/Pretendard-Bold.woff) format("woff")
}

@font-face {
    font-family: Pretendard;
    font-weight: 600;
    font-display: swap;
    src: local("Pretendard SemiBold"), url(../fonts/Pretendard-SemiBold.woff2) format("woff2"), url(woff/Pretendard-SemiBold.woff) format("woff")
}

@font-face {
    font-family: Pretendard;
    font-weight: 500;
    font-display: swap;
    src: local("Pretendard Medium"), url(../fonts/Pretendard-Medium.woff2) format("woff2"), url(woff/Pretendard-Medium.woff) format("woff")
}

@font-face {
    font-family: Pretendard;
    font-weight: 400;
    font-display: swap;
    src: local("Pretendard Regular"), url(../fonts/Pretendard-Regular.woff2) format("woff2"), url(woff/Pretendard-Regular.woff) format("woff")
}

@font-face {
    font-family: Pretendard;
    font-weight: 300;
    font-display: swap;
    src: local("Pretendard Light"), url(../fonts/Pretendard-Light.woff2) format("woff2"), url(woff/Pretendard-Light.woff) format("woff")
}

@font-face {
    font-family: Pretendard;
    font-weight: 200;
    font-display: swap;
    src: local("Pretendard ExtraLight"), url(../fonts/Pretendard-ExtraLight.woff2) format("woff2"), url(woff/Pretendard-ExtraLight.woff) format("woff")
}

@font-face {
    font-family: Pretendard;
    font-weight: 100;
    font-display: swap;
    src: local("Pretendard Thin"), url(../fonts/Pretendard-Thin.woff2) format("woff2"), url(woff/Pretendard-Thin.woff) format("woff")
}

@font-face {
    font-family: SF-Pro;
    font-weight: 100 900;
    font-display: swap;
    src: local("SF Pro Display"), url(../fonts/SF-Pro.ttf) format("truetype")
}

@font-face {
    font-family: NanumMyeongjo;
    font-weight: 800;
    font-display: swap;
    src: local("Nanum Myeongjo ExtraBold"), url(../fonts/NanumMyeongjoExtraBold.ttf) format("truetype")
}

@font-face {
    font-family: NanumMyeongjo;
    font-weight: 700;
    font-display: swap;
    src: local("Nanum Myeongjo Bold"), url(../fonts/NanumMyeongjoBold.ttf) format("truetype")
}

@font-face {
    font-family: NanumMyeongjo;
    font-weight: 400;
    font-display: swap;
    src: local("Nanum Myeongjo"), url(../fonts/NanumMyeongjo.ttf) format("truetype")
}

/*# sourceMappingURL=style.min.css.map */