@import url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap'); /* font-family: 'Inter', sans-serif; */

/* #content */
/*section .main_title {letter-spacing: -0.02em; line-height: 56px; margin-bottom: 20px;}*/
/*section .main_title.on {display: none;}*/
/*section .sub_text {letter-spacing: -0.02em;}*/

.img_box img {width: 100%;}


.sub_visual { text-align: center; width: 100%; height:450px; position: relative;
    background-image: url(../images/img_visual_bg.webp);  background-repeat: no-repeat;  background-position: center bottom; background-size: cover;
    background-color: rgba(0, 0, 0, 0.2); background-blend-mode: darken;}
.sub_visual .text_box {text-align: center; color: #fff;}
.sub_visual .text_box .add_text{font-family: "El Messiri", sans-serif; font-size: 24px; font-weight: 400; line-height: 1.1; margin-bottom: 20px;}
.sub_visual .text_box h3{font-size: 40px; font-weight: 500; line-height: 1.3; }

.tab_area .inner {padding: 0 16.66%; margin-top: 100px;}
.tab_area .inner .tab_con .con.pc_ver {box-sizing: border-box;border-radius: 20px;display: flex;justify-content: space-between;width: calc(720/ 1420 * 100%);margin: 0 auto;gap:  20px;}
.tab_area .inner .tab_con .con .details{flex:1;}
.tab_area .inner .tab_con .con ul li input[type="radio"] ,.tab_area .inner .popup_con ul li input[type="radio"] {display: none;}
.tab_area .inner .tab_con .con ul li label {
    display: block;
    border-radius: 8px;
    padding: 0 16px;
    line-height: 40px;
    box-sizing: border-box;
    cursor: pointer;
    color: var(--gray-color-1000);
    font-size: 18px;
    font-weight: 500;
    letter-spacing: -1px;
    white-space: nowrap;
}
.tab_area .inner .tab_con .con ul li input[type="radio"]:checked + label span{display: inline-block;}
.tab_area .inner .tab_con .con ul li input[type="radio"]:checked + label span{text-decoration: underline;text-underline-offset: 5px;}

.tab_area .inner .tab_con .tab_detail .details .label_title {font-size: 22px; font-weight: 700; line-height: 130%; letter-spacing: -1px; white-space: nowrap; cursor: default;}
.tab_area .inner .tab_con .tab_detail .sch_btn {
    line-height: 50px;
    height: 50px;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: -1px;
    color: #fff;
    padding: 0 45px;
    border-radius: 190px;
    background: var(--primary-color);
    position: relative;
}
.tab_area .inner .tab_con .tab_detail .details {position: relative;}
.tab_area .inner .tab_con .tab_detail .details .dropdown.on::after {transform: rotate(225deg);}
.tab_area .inner .tab_con .tab_detail .details .dropdown, .tab_area .inner .tab_con .tab_detail .options .select_option{
    display: inline-block;
    position: relative;
    vertical-align: middle;
    font-size: 18px;
    letter-spacing: -1px;
    line-height: 50px;
    height: 50px;
    color: var(--primary-color);
    transform: skew(-0.1deg);
    width: 100%;
    box-sizing: border-box;
    cursor: pointer;
    padding: 0 20px;
    border-radius: 190px;
    border: 1px solid var(--primary-color);
    background: #fff;
    white-space: nowrap;
}
.tab_area .inner .tab_con .tab_detail .details .dropdown::after, .tab_area .inner .tab_con .tab_detail .options .select_option::after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    position: absolute;
    top: 50%;
    right: 20px;
    border: 2px solid var(--primary-color);
    border-top: none;
    border-left: none;
    transform: rotate(45deg) translate(0, -50%);
    transition: all .1s;
}
.tab_area .inner .tab_con .tab_detail .details ul {
    width: 100%;
    box-sizing: border-box;
    position: absolute;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 999;
    border-radius: 10px;
    border: 1px solid #F4D2E2;
    background: #FBEFF4;
    padding: 8px 4px;
    display: none;
}
.tab_area .inner .tab_con .tab_detail .details .dropdown.on + ul{display: block;}
.tab_area .inner .tab_con .tab_detail .details li {/* background: #fff; *//* border-radius: 8px; *//* padding: 0 20px; */}
.tab_area .inner .tab_con .tab_detail .details li:hover label{ background: rgba(244, 210, 226, 0.50);}
.tab_area .inner .tab_con .tab_detail .details li a {display: block; padding: 6.5px 0; text-align: center; white-space: nowrap;}
.tab_area .inner .tab_con .tab_detail .details li a span {display: inline-block; font-size: 18px; line-height: normal; letter-spacing: -1px; color: var(--primary-color);}
.tab_area .inner .tab_con .tab_detail .details li.on a span {border-bottom: 1px solid var(--primary-color);}

.list_box {padding: 0 16.66%; margin-bottom: 80px;}
.list_box .banner {font-size: 26px; letter-spacing: -1px; text-align: center; padding: 20px 0; margin: 50px 0; background: #FAFAFA; border-radius: 16px;}
.list_box > ul {display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 20px; row-gap: 52px;}
.list_box > ul > li > a {display: block;}
.list_box > ul > li {padding: 16px 4% 25px; border-radius: 16px; border: 1px solid #DFE0E2;}
.list_box > ul > li .img_box {position: relative; border-radius: 16px; overflow: hidden; margin-bottom: 20px;}
.list_box > ul > li .img_box img {height: 100%; object-fit: cover;}
.list_box > ul > li .img_box ul {display: flex; border-radius: 20px; overflow: hidden;}
.list_box > ul > li .img_box ul .before_box,.list_box > ul > li .img_box ul .after_box {width: 50%; min-height: 230px;}
.list_box > ul > li .img_box .blur {width: 50%; height: 100%; background: rgba(0,0,0, .85); backdrop-filter: blur(2px); position: absolute; top: 0; right: 0; z-index: 10;}
.list_box > ul > li .img_box .blur p {width: 100%; height: 100%; font-weight: 500; font-size: 18px; line-height: 26px; letter-spacing: -.26px; color: #fff;
    text-align: center; display: flex; align-items: center; justify-content: center;}
.list_box > ul > li .img_box .subject_box {width: 103px; height: 103px; border-radius: 100px; background: rgba(12, 130, 254, .8);
    display: flex; justify-content: center; align-items: center; text-align: center; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 20;}
.list_box > ul > li .img_box .subject_box p {font-weight: 700; font-size: 18px; line-height: 120%; color: #FFF;}
.list_box > ul > li .text_box {font-weight: 500;}
.list_box > ul > li .text_box .title_target .badge {display: inline-block; line-height: 24px; height: 24px; font-size: 15px; letter-spacing: -1px; color: #fff;
    padding: 0 10px; background: var(--primary-color); border-radius: 100px; text-align: center;}
.list_box > ul > li .text_box .title_target .badge span {display: inline-block;}
.list_box > ul > li .text_box .title_target .badge span:first-of-type::after {content: ''; display: inline-block; width: 1px; height: .8rem;
    background: rgba(255,255,255,.8); margin: 0 .5rem; vertical-align: middle;}
.list_box > ul > li .text_box .title_target strong {display: block; font-weight: 500; font-size: 16px; letter-spacing: -1px; color: #777C81; margin: 12px 0 10px;
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden;}
.list_box > ul > li .text_box .title_treatment {font-size: 18px; letter-spacing: -1px; margin: 10px 0; color: var(--primary-color); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden;}

.tab_area .inner .tab_con .con.mo_ver{display: none;}
.tab_area .inner .tab_con .tab_detail .options{display: flex; justify-content: space-between; align-items: center;}
.tab_area .inner .tab_con .tab_detail .options .select_option{flex: 1;}
.btn_write {display: inline-block; outline: none; line-height: 50px; height: 50px; padding: 0 30px; border: 1px solid #777C81; border-radius: 100px; background: #fff;
    font-size: 18px; letter-spacing: -1px; white-space: nowrap; position: relative; left: calc(100% - 105px); margin-bottom: 32px;}
.btn_write::after {display: none !important;}


.btn-edit {display: inline-block; font-weight: 500; font-size: 14px; line-height: 18px; color: #fff; padding: 6px 12px; border-radius: 4px;
    background: #001E3D; position: absolute; top: 14px; right: 14px;}

.popup_bg {position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
    z-index: 300;
}

.popup_area {
    width: 100%;
    padding: 20px;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 1000;
    background: #fff;
    border-radius: 14px 14px 0 0;
    overflow: hidden;
    transform: translateY(100%);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out, visibility 0.3s ease-in-out;
    box-sizing: border-box;
}


/* 팝업 활성화 시 */
.popup_bg.active {
    opacity: 1;
    visibility: visible;
}

.popup_area.active {
    opacity: 1;
    visibility: visible;
    transform:  translateY(0);
}
.tab_area .inner .tab_con .tab_detail .options .select_option{font-size: 14px; padding: 0 16px;line-height:36px; height: 36px;}
.tab_area .inner .popup_con h5{font-size: 14px; }
.tab_area .inner .popup_con ul {display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin: 12px 0 24px;}
.tab_area .inner .popup_con ul li label {display: block; border-radius: 190px; padding: 0 10px; line-height: 30px; box-sizing: border-box; cursor: pointer;
    background: #fff; border: 1px solid rgba(197, 199, 201, 0.59);  color: var(--gray-color-1000); font-size: 13px; font-weight: 400; letter-spacing: -1px; white-space: nowrap; box-sizing:border-box;}
.tab_area .inner .popup_con ul li input[type="radio"]:checked + label {background: var(--primary-color); color: #fff; border:none;}

.popup_btn{display: flex;justify-content: space-between;align-items: center;gap: 20px;}
.popup_btn button{display: flex; justify-content: center; align-items: center; border-radius: 8px;font-size: 14px;height: 40px; box-sizing: border-box;}
.popup_btn .bth-reset{padding: 0 10px; background: transparent; border: 1px solid var(--gray-color-400);width: 20%;}
.popup_btn .sch_btn{background: var(--primary-color);color: #fff;width: 80%;}

/* PC (해상도 1440px ~ 1540px) */
@media screen and (max-width:1540px) {
    .tab_area .inner {padding: 0 12%;}
    .list_box {padding: 0 12%;}
    .btn_write {right: calc(12% + 20px);}
    .tab_area .inner .tab_con .con.pc_ver {width: 80%;}
}
/* PC (해상도 1058px ~ 1440px) */
@media screen and (max-width:1440px) {
    .tab_area .inner {padding: 0 8%;}
    .list_box {padding: 0 8%;}
    .btn_write {right: calc(8% + 20px);}

}
/* PC (해상도 1024px ~ 1058px) */
@media screen and (max-width:1058px) {
    .tab_area .inner {padding: 0 6%;}
    .list_box {padding: 0 6%;}
    .btn_write {right: calc(6% + 20px);}
}


/* 태블릿 (해상도 769px ~ 1024px) */
@media screen and (max-width:1024px) {
    /*html body #content {margin-top: 94px;}*/
    /* content */
    section .main_title {font-size: 28px; margin-bottom: 12px; line-height: 36px;}
    section .main_title i {display: block;}


    .tab_area .inner {padding: 0 5%; margin-top: 80px;}
    .tab_area .inner .tab_con .con ul {gap: 12px;}

    .tab_area .inner .tab_con .tab_detail .details {grid-template-columns: 70px auto; gap: 12px;}


    .list_box {padding: 0 5%; margin-bottom: 60px;}
    .list_box .banner {font-size: 20px; margin: 20px 0;}
    .list_box > ul {grid-template-columns: repeat(2, 1fr); column-gap: 10px; row-gap: 40px;}
    .list_box > ul > li .img_box ul {border-radius: 10px; height: 252px;}
    .list_box > ul > li .text_box .title_target {display: flex; gap: 10px;}
    .list_box > ul > li .text_box .title_target .badge {flex-shrink: 0; line-height: 20px; height: 20px; font-size: 13px; padding: 0 8px;}
    .list_box > ul > li .text_box .title_target strong {flex-grow: 1; font-size: 14px; margin: 0; -webkit-line-clamp: 2;}
    .list_box > ul > li .text_box .title_treatment {font-size: 16px; margin: 8px 0; -webkit-line-clamp: 2;}


    .btn_write {display: none;}

}

/* 모바일 가로, 모바일 세로 (해상도 375px ~ 768px)*/
@media screen and (max-width:768px) {
    .wrap { min-width: 375px; }
    /*html body #content {margin-top: 72px;position : relative;}*/
    /* content */
    .sub_visual {box-sizing: border-box;height: 240px;background-image: url(../images/img_visual_bg_mo.jpg);background-position: center center;background-attachment:local ;}
    .sub_visual .text_box h3{font-size: 26px; }
    .sub_visual .text_box .add_text{font-size:20px;}


    .tab_area .inner {margin-top: 60px;}
    .tab_area .inner .tab_con .con ul {gap: 10px;}
    .tab_area .inner .tab_con .con ul li label {padding: 0 10px; line-height: 30px; background: #F0EBFF; font-size: 14px; color: var(--primary-color);}

    .tab_area .inner .tab_con .con.pc_ver{display: none;}
    .tab_area .inner .tab_con .con.mo_ver{display: block;}

    .tab_area .inner .tab_con .tab_detail .details {align-items: start; grid-template-columns: 30px auto; gap: 16px; margin-bottom: 24px;}
    .tab_area .inner .tab_con .tab_detail .details .label_title {font-size: 16px; line-height: 30px; font-weight: 500;}
    .tab_area .inner .tab_con .tab_detail .sch_btn {line-height: 40px; height: 40px; font-size: 16px; padding: 0 30px; margin-top: 0;}


    .list_box .banner {font-size: 18px;}
    .list_box > ul {grid-template-columns: 1fr; gap: 20px;}


}

@media (min-width: 768px) {
    /* .list_box > ul > li .img_box ul .before_box {
        height:230px;
    } */
}
