@charset "utf-8";

/*========================================================================================================================================= */
/*================================================================ common ================================================================= */
/*========================================================================================================================================= */

#wrapper {
    margin-top: 190px;
}
section:last-of-type {
    padding-bottom: 120px;
}
main {
    overflow: hidden;
}

.link {
    position: absolute;
    top: -120px;
    left: 0;
}
.res-bg {
    padding: 120px 0 !important;
}
.title-num {
    display: flex;
    padding-top: 5px;
    margin: 0 auto 10px;
    background: #2c6eb6;
    color: #fff;
    font-size: 30px;
    width: 60px;
    height: 60px;
    align-items: center;
    justify-content: center;
    font-family: 'NanumSquare', san-serif;
    font-weight: 700;
    transform: skew(-0.1deg);
    border-radius: 50%;
}

.stick ul.flex li h6 {
    background: #2c6eb6;
    color: #fff;
    padding: 10px;
    font-family: 'NanumSquare', san-serif;
    font-weight: 700;
    transform: skew(-0.1deg);
}
.stick ul.flex li:nth-child(2n) h6 {
    background: #2c6eb6;
}

/* 숫자 스타일 */
.num::before {
    content: attr(data-num);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    background-color: #26a6f4;
    color: #fff;
    font-size: 24px;
    font-weight: 500;
    text-align: center;
}
.num.num-posa::before {
    position: absolute;
    margin: 0;
}

/* 미들 타이틀 (작은 타이틀) */
.middle-title {
    /* font-family: 'GmarketSansMedium'; */
    font-weight: 500;
    text-align: center;
    margin-bottom: 40px;
}
.middle-title p {
    font-weight: 400;
    white-space: pre-line;
    margin-top: 20px;
}
.middle-title h4 {
    font-weight: 500;
}
.middle-title h6 {
    font-family: 'NanumSquare', san-serif;
    font-weight: 700;
    transform: skew(-0.1deg);
    white-space: pre-line;
}
.middle-title > span.num::before {
    font-family: 'NanumSquare', san-serif;
    font-weight: 400;
    transform: skew(-0.1deg);
    margin: 0 auto 20px;
}

/* 테이블 스타일 */
.table-wrap {
    text-align: center;
}
.table-wrap .middle-title h4 {
    display: inline-block;
    padding: 12px 20px 8px;
    background-color: #2c6eb6;
    color: #fff;
}
.table-wrap table {
    width: 100%;
    white-space: pre-line;
}
.table-wrap table tr,
.table-wrap table th,
.table-wrap table td {
    font-size: 18px;
    padding: 15px 10px;
    border: 1px solid #eee;
    vertical-align: middle;
}
.table-wrap table thead tr,
.table-wrap table tbody tr th {
    background: #f5f5f5;
    font-weight: 600;
}
.table-wrap .imp-icon img {
    max-width: 50px;
    margin-bottom: 10px;
}

/* 사진 들어간 테이블 */
.photo-table table {
    text-align: center;
    width: 100%;
}
.photo-table table tr,
.photo-table table tr td {
    padding: 15px 10px;
    border: 1px solid #ccc;
    vertical-align: middle;
}
.photo-table table td {
    white-space: pre-line;
}
.photo-table table thead tr:first-of-type td,
.photo-table table thead tr {
    border: none;
}
.photo-table table thead tr:first-of-type td {
    padding: 0;
}
.photo-table table thead tr:last-of-type td {
    background: #f7f7f7;
    font-weight: 600;
    font-size: 20px;
}
.photo-table table thead tr:first-of-type td:not(:first-child) {
    /* border: 1px solid #ccc; */
    border-bottom: none;
}

.photo-table tbody tr td:first-child {
    background-color: #fffcf8;
}

/* 숫자 리스트 */
.num-list .num {
    position: relative;
    margin-bottom: 30px;
    padding-left: 50px;
    text-align: left; /* display: flex; align-items: center; */
}
.num-list .num:last-child {
    margin-bottom: 0;
}
.num-list .num::before {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    left: 0;
    top: 0px;
    width: 35px;
    height: 35px;
    font-size: 20px;
}
.num-list .num:nth-child(2n)::before {
    background-color: #2c6eb6;
}
.num-list.middle .num::before {
    top: 50%;
    transform: translateY(-50%);
}

/* 이미지 테두리 리스트 */
.line-list img {
    border: 1px solid #ccc;
}

/* 원형 이미지 테두리 리스트 */
.circle-list img {
    border-radius: 50%;
    border: 1px solid #ccc;
}

/* 파란 선 들어간 네모 박스 */
.line-box li > div {
    position: relative;
    padding: 30px 20px 30px 30px;
    border: 1px solid #eee;
}
.line-box li > div::after {
    content: '';
    display: block;
    width: 10px;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background-color: #2c6eb6;
}
.line-box h5 {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
    font-weight: 500;
}
.line-box p {
    white-space: pre-line;
}

/* 사진+텍스트 들어간 기본 스타일 */
.basic-box {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-top: 40px;
}
.basic-box:first-of-type {
    margin-top: 0;
}
.basic-box li:first-child {
    flex: 1;
}
.basic-box li:last-child {
    margin-left: 30px;
    flex: 1;
}
.basic-box li h5 {
    margin: 0 0 15px;
    font-weight: 600;
    white-space: pre-line;
    transform: skew(-0.1deg);
}
.basic-box li.num h5 {
    margin: 20px 0 15px;
}
.basic-box li p {
    white-space: pre-line;
}
.basic-box.line li h5 {
    position: relative;
    padding-bottom: 10px;
}
.basic-box.line li h5::before {
    position: absolute;
    content: '';
    left: 0;
    bottom: 0;
    width: 50px;
    height: 2px;
    background: #2c6eb6;
}

/* 원 안에 아이콘 없는 박스 */
.circle-box > div > div {
    border-radius: 50%;
    background-color: #2c6eb6;
    color: #fff;
}
.circle-box:nth-child(2n-1) > div > div {
    background-color: #26a6f4;
}
.circle-box > div > div::after {
    content: '';
    display: block;
    padding-bottom: 100%;
}
.circle-box p {
    position: absolute;
    width: 100%;
    height: auto;
    bottom: 50%;
    transform: translate(0, 50%);
    text-align: center;
    white-space: pre-line;
}
.circle-box h5 {
    position: absolute;
    white-space: pre-line;
    text-align: center;
    bottom: 50%;
    transform: translateY(50%);
    display: inline-block;
    width: 100%;
}
/* .circle-box span{font-size: 24px; font-weight: bold;} */

/* 원 안에 아이콘 들어간 리스트 */
.circle-icon > li > div > div {
    border-radius: 50%;
    border: 2px solid #f5f5f5;
    width: 100%;
    height: 100%;
}
/* .circle-icon > li:nth-child(2n-1) > div > div {
    border: 2px solid #d9dfee;
} */
.circle-icon > li > div > div::after {
    content: '';
    display: block;
    padding-bottom: 100%;
}
.circle-icon > li > div > div > div {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    top: 50%;
    transform: translate(-50%, -50%);
    left: 50%;
    height: 50%;
    width: 100%;
}
.circle-icon p {
    margin-top: 15px;
    line-height: 1.4;
}

/* 배경색 타이틀 */
.bg-tit {
    display: inline-block;
    padding: 4px 28px;
    margin: 0 auto;
    background: linear-gradient(to right, #1f3d74, #4067aa);
    color: #fff;
}

/* 둥근 모서리를 가진 배경색 타이틀 */
.radius-tit {
    display: inline-block;
    padding: 8px 42px;
    margin: 0 auto;
    border-radius: 40px;
    background: linear-gradient(to right, #1f3d74, #4067aa);
    color: #fff;
}

/*================================================================ 1500px 이하 ================================================================= */
@media screen and (max-width: 1500px) {
}

/*================================================================ 1200px 이하 ================================================================= */
@media screen and (max-width: 1200px) {
    #wrapper {
        margin-top: 69px;
    }
}

/*================================================================ 1025px 이하 ================================================================= */
@media screen and (max-width: 1025px) {
}

/*================================================================ 900px 이하 ================================================================= */
@media screen and (max-width: 900px) {
    /* 테이블 스타일 */
    .table-wrap .table-scroll {
        overflow-x: scroll;
        overflow-y: hidden;
        max-width: 100%;
    }
    .table-wrap table {
        min-width: 900px;
    }
    .table-wrap table tr,
    .table-wrap table th,
    .table-wrap table td {
        font-size: 15px;
    }
}

/*================================================================ 769px 이하 ================================================================= */
@media screen and (max-width: 769px) {
    section:last-of-type {
        padding-bottom: 80px;
    }

    .res-bg {
        padding: 80px 0 !important;
    }

    /* 숫자 스타일 */
    .num::before {
        margin: 10px auto 0;
        width: 40px;
        height: 40px;
    }
    .num-list .num::before {
        margin: 0 10px 0 0;
    }

    /* 사진 들어간 테이블 */
    .photo-table table td {
        font-size: 15px;
    }
    .photo-table table thead tr:last-of-type td {
        font-size: 18px;
    }

    /* 사진+텍스트 들어간 기본 스타일 */
    .basic-box {
        display: flex;
        text-align: center;
        flex-direction: column;
    }
    .basic-box:nth-child(2n){
        flex-direction: column-reverse;
        text-align: center;
    }
    .basic-box:not(:first-of-type) {
        margin-top: 40px;
    }
    .basic-box li:last-child {
        margin-left: 0;
        margin-top: 20px;
    }
    .basic-box li h5 {
        margin: 20px 0 10px !important;
    }
    .basic-box li img {
        border-radius: 20px;
        max-width: 500px;
        width: 100%;
    }
    .basic-box.line li h5::before {
        left: 50%;
        transform: translateX(-50%);
    }

    /* 파란 선 들어간 네모 박스 */
    .line-box li::after {
        width: 8px;
    }
    .line-box li > div {
        height: auto !important;
    }
}

/*================================================================ 600px 이하 ================================================================= */
@media screen and (max-width: 600px) {
}

/*================================================================ 425px 이하 ================================================================= */
@media screen and (max-width: 425px) {
    section:last-of-type {
        padding-bottom: 60px;
    }

    .link {
        top: -60px;
    }
    .res-bg {
        padding: 50px 0 !important;
    }
    .stick .flex > li > div.m10 {
        margin: 5px;
    }
    .title-num {
        font-size: 20px;
        width: 45px;
        height: 45px;
    }

    /* 숫자 스타일 */
    .num::before {
        width: 35px;
        height: 35px;
        font-size: 17px;
        margin: 0 auto;
    }
    .num-list .num {
        display: flex;
        align-items: center;
        margin-bottom: 0;
        padding-left: 40px;
    }
    .num-list .num:not(:first-child) {
        margin-top: 20px;
    }
    .num-list .num::before {
        width: 30px;
        height: 30px;
        margin: 0 auto;
        font-size: 16px;
    }

    /* 미들 타이틀 (작은 타이틀) */
    .middle-title {
        margin-bottom: 20px;
    }
    .middle-title p {
        margin-top: 10px;
    }
    .middle-title > span.num::before {
        margin: 0 auto 10px;
    }

    /* 사진+텍스트 들어간 기본 스타일 */
    .basic-box li img {
        border-radius: 10px;
        max-width: 70%;
    }
    .basic-box li h5 {
        margin: 15px 0 10px !important;
        line-height: 1.4;
    }

    /* 원 안에 아이콘 없는 박스 */
    .circle-box > div {
        margin: 5px !important;
    }
    .circle-box h5 {
        font-size: 15px;
    }

    /* 파란 선 들어간 네모 박스 */
    .line-box li::after {
        width: 5px;
    }
    .line-box li > div {
        padding: 25px 20px 30px 25px;
    }
    .line-box li h5 {
        padding-bottom: 5px;
        margin-bottom: 10px;
    }

    /* 테이블 스타일 */
    .table-wrap table {
        min-width: 700px;
    }
    .table-wrap table tr,
    .table-wrap table th,
    .table-wrap table td {
        font-size: 12px;
    }
    .table-wrap .imp-icon img {
        max-width: 30px;
        margin-bottom: 5px;
    }

    /* 사진 들어간 테이블 */
    .photo-table table td {
        font-size: 12px;
    }
    .photo-table table tr,
    .photo-table table tr td {
        padding: 10px 5px;
    }
    .photo-table table thead tr:last-of-type td {
        font-size: 15px;
    }

    /* 배경색 타이틀 */
    .bg-tit {
        padding: 3px 24px;
    }

    /* 둥근 모서리를 가진 배경색 타이틀 */
    .radius-tit {
        padding: 6px 32px;
    }
}

/*========================================================================================================================================= */
/*================================================================ common ================================================================= */
/*========================================================================================================================================= */

/*========================================================================================================================================= */
/*================================================================ banner ================================================================= */
/*========================================================================================================================================= */

/* common */
.banner-bg {
    padding: 100px 0;
    min-height: 600px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.banner-bg h2 {
    color: #fff;
    text-align: center;
}
.banner-bg p {
    color: #fff;
    text-align: center;
    /* font-size: 13px; */
    letter-spacing: 2px;
}
/* 서브페이지 배너 */
.banner-bg-01.banner-bg {
    background: url(../img/sub/banner_01.jpg) center/cover no-repeat;
}
.banner-bg-02.banner-bg {
    background: url(../img/sub/banner_02.jpg) center/cover no-repeat;
}
.banner-bg-03.banner-bg {
    background: url(../img/sub/banner_03.jpg) center/cover no-repeat;
}
.banner-bg-04.banner-bg {
    background: url(../img/sub/banner_04.jpg) center/cover no-repeat;
}
.banner-bg-05.banner-bg {
    background: url(../img/sub/banner_05.jpg) center/cover no-repeat;
}
.banner-bg-06.banner-bg {
    background: url(../img/sub/banner_06.jpg) center/cover no-repeat;
}

/* about */
.about-bg.banner-bg {
    background: url(../img/sub/about_bg.jpg) center/cover no-repeat;
}
.info-dentist-bg.banner-bg {
    background: url(../img/sub/info_dentist_bg.jpg) center/cover no-repeat;
}
.info-equipment-bg.banner-bg {
    background: url(../img/sub/info_equipment_bg.jpg) center/cover no-repeat;
}
.info-interior-bg.banner-bg {
    background: url(../img/sub/info_interior_bg.jpg) center/cover no-repeat;
}
.info-time-bg.banner-bg {
    background: url(../img/sub/info_time_bg.jpg) center/cover no-repeat;
}
.info-map-bg.banner-bg {
    background: url(../img/sub/info_map_bg.jpg) center/cover no-repeat;
}
.info-special-bg.banner-bg {
    background: url(../img/custom/info_special_bg.jpg) center/cover no-repeat;
}

/* sub2, sub3 */
.implant-bg.banner-bg {
    background: url(../img/sub/implant_bg.jpg) center/cover no-repeat;
}
.ortho-bg.banner-bg {
    background: url(../img/sub/ortho_bg.jpg) center/cover no-repeat;
}
.basic-bg.banner-bg {
    background: url(../img/sub/basic_bg.jpg) center/cover no-repeat;
}
.member-bg.banner-bg {
    background: url(../img/sub/login_bg.jpg) center/cover no-repeat;
}

/* sub4 */
.wisdom-bg.banner-bg {
    background: url(../img/sub/wisdom_bg.jpg) center/cover no-repeat;
}
.jaw-point-bg.banner-bg {
    background: url(../img/sub/jaw_point_bg.jpg) center/cover no-repeat;
}
.caries-bg.banner-bg {
    background: url(../img/sub/caries_bg.jpg) center/cover no-repeat;
}
.prosthetic-bg.banner-bg {
    background: url(../img/sub/prosthetic_bg.jpg) center/cover no-repeat;
}
.denture-bg.banner-bg {
    background: url(../img/sub/denture_bg.jpg) center/cover no-repeat;
}
.gum-therapy-bg.banner-bg {
    background: url(../img/sub/gum_therapy_bg.jpg) center/cover no-repeat;
}
.root-canal-bg.banner-bg {
    background: url(../img/sub/root_canal_bg.jpg) center/cover no-repeat;
}
.aesthetic-bg.banner-bg {
    background: url(../img/sub/aesthetic_bg.jpg) center/cover no-repeat;
}
.tooth-bg.banner-bg {
    background: url(../img/sub/tooth_bg.jpg) center/cover no-repeat;
}

/*================================================================ 1500px 이하 ================================================================= */
@media screen and (max-width: 1500px) {
}

/*================================================================ 1200px 이하 ================================================================= */
@media screen and (max-width: 1200px) {
    .banner-bg {
        padding: 150px 0;
    }
}

/*================================================================ 1025px 이하 ================================================================= */
@media screen and (max-width: 1025px) {
}

/*================================================================ 900px 이하 ================================================================= */
@media screen and (max-width: 900px) {
}

/*================================================================ 769px 이하 ================================================================= */
@media screen and (max-width: 769px) {
    .banner-bg {
        min-height: auto;
        padding: 100px 0;
    }
}

/*================================================================ 600px 이하 ================================================================= */
@media screen and (max-width: 600px) {
}

/*================================================================ 425px 이하 ================================================================= */
@media screen and (max-width: 425px) {
    .banner-bg {
        padding: 60px 0;
    }
}

/*========================================================================================================================================= */
/*================================================================ banner ================================================================= */
/*========================================================================================================================================= */

/*============================================================================================================================================= */
/*================================================================ sub1 style ================================================================= */
/*============================================================================================================================================= */

/* =========== info-dentist======== */
/* 탭 메뉴 스타일 */
.dentist .tab-btn {
    display: flex;
    margin: 20px 0 40px;
}
.dentist .tab-btn input {
    display: none;
}
.dentist .tab-btn label {
    display: inline-block;
    padding: 15px 25px;
    text-align: center;
    border: 1px solid #ccc;
    color: #bbb;
    background-color: #fff;
}
.dentist .tab-btn label:hover {
    color: #2c6eb6;
    cursor: pointer;
    transition: all ease 0.3s;
}
.dentist .tab-btn input:checked + label {
    color: #fff;
    background-color: #295093;
    transition: all ease 0.3s;
}

/* 탭 메뉴 내용 스타일 */
.dentist .tab-content {
}
#tab-content2,
#tab-content3,
#tab-content4,
#tab-content5 {
    display: none;
}
.dentist .tab-content > ul {
    display: flex;
    width: 100%;
}
.dentist .tab-content > ul > li {
    width: 50%;
}
.dentist .tab-content > ul > li:last-child {
    margin-left: 30px;
}
.dentist .tab-content .tab-name {
    border-bottom: 2px dotted #ddd;
    margin-bottom: 20px;
    padding-bottom: 20px;
}
.dentist .tab-content .tab-name > div {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
.dentist .tab-content .tab-name > div h3 {
    font-weight: 900;
}
.dentist .tab-content .tab-name > div span {
    font-size: 0.6em;
    font-weight: 500;
}
.dentist .tab-content .tab-name p {
    font-weight: 700;
}
.dentist .tab-content .disc-list {
    list-style-type: disc;
    margin-left: 20px;
}
.dentist .tab-content .disc-list li {
    line-height: 1.8;
}

/* 의료진 문구 */
.dentist-p {
    text-align: center;
    font-size: 24px;
    white-space: pre-line;
    padding: 30px 0;
    background-color: #ccc;
    margin-bottom: 120px;
}

@media screen and (max-width: 1025px) {
    .dentist-p {
        font-size: 14px;
        padding: 20px 0;
        margin-bottom: 60px;
    }
}

/* =========== info-interior ======== */
.gallery-top {
    position: relative;
    height: 80%;
    width: 100%;
    overflow: hidden;
}
.gallery-thumbs {
    position: relative;
    height: 20%;
    padding: 10px 0;
    overflow: hidden;
}
.gallery-thumbs .swiper-slide {
    width: 20%;
    height: 100%;
    opacity: 0.4;
}
.gallery-thumbs .swiper-slide-thumb-active {
    opacity: 1;
}

#gallery img {
    width: 100%;
}
#gallery .swiper-button-prev,
#gallery .swiper-button-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    margin: 0;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.8);
    color: #333;
    text-align: center;
    line-height: 30px;
    cursor: pointer;
    transition: all 0.4s ease-in-out;
}
#gallery .swiper-button-prev:after,
#gallery .swiper-rtl .swiper-button-next:after {
    display: none;
}
#gallery .swiper-button-next:after,
#gallery .swiper-rtl .swiper-button-prev:after {
    display: none;
}
#gallery .swiper-button-prev i,
#gallery .swiper-button-next i {
    font-size: 16px;
}
#gallery .swiper-button-prev {
    left: 10px;
}
#gallery .swiper-button-next {
    right: 10px;
}
#gallery .swiper-button-prev:hover,
#gallery .swiper-button-next:hover {
    background-color: rgba(22, 22, 22, 0.8);
    color: #fff;
}

/* =========== info-equipment ======== */
#equipment li:nth-child(n + 4):nth-child(-n + 99) {
    margin-top: 20px;
}
#equipment li h5 {
    margin-top: 10px;
    font-family: 'NanumSquare', san-serif;
    transform: skew(-0.1deg);
    font-weight: 800;
}
#equipment li img {
    width: 100%;
    border: 1px solid #eee;
}





/*================================================================ 1500px 이하 ================================================================= */
@media screen and (max-width: 1500px) {
}

/*================================================================ 1200px 이하 ================================================================= */
@media screen and (max-width: 1200px) {
    .time-table article {
        margin-top: 40px;
    }
}

/*================================================================ 1025px 이하 ================================================================= */
@media screen and (max-width: 1025px) {
    .dentist .tab-content > ul {
        background-size: 30%;
    }
}

/*================================================================ 900px 이하 ================================================================= */
@media screen and (max-width: 900px) {
}

/*================================================================ 769px 이하 ================================================================= */
@media screen and (max-width: 769px) {
    /* =========== info-dentist ======== */
    .dentist .tab-btn {
        margin: 20px auto 40px;
        flex-direction: column;
        max-width: 350px;
    }
    .dentist .tab-btn label {
        padding: 8px 15px;
    }

    .dentist .tab-content .tab-name > div {
        display: block;
    }
    .dentist .tab-content img {
        max-width: 350px;
        width: 100%;
    }
    .dentist .tab-content > ul {
        display: block;
        background: none;
    }
    .dentist .tab-content > ul > li {
        width: 100%;
        text-align: center;
    }
    .dentist .tab-content > ul > li:last-child {
        margin: 20px 0 0 0;
    }
    .dentist .tab-content .disc-list {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        max-width: 400px;
        margin: 0 auto;
        text-align: left;
    }

    
}

/*================================================================ 600px 이하 ================================================================= */
@media screen and (max-width: 600px) {
    /* =========== info-equipment ======== */
    #equipment li {
        width: 50%;
    }
    #equipment li:nth-child(n + 3):nth-child(-n + 99) {
        margin-top: 20px;
    }
}

/*================================================================ 425px 이하 ================================================================= */
@media screen and (max-width: 425px) {
    /* =========== info-dentist ======== */
    .dentist .tab-btn {
        margin: 10px auto 30px;
    }

    .dentist .tab-content .tab-name > div h3 {
        font-size: 32px;
    }
    .dentist .tab-content .tab-name p {
        font-size: 14px;
    }
    .dentist .tab-content .disc-list {
        max-width: 260px;
    }
    .dentist .tab-content .disc-list li {
        font-size: 14px;
    }

    /* =========== info-equipment ======== */
    #equipment > li > div.m10 {
        margin: 5px;
    }
}

/*============================================================================================================================================= */
/*================================================================ sub1 style ================================================================= */
/*============================================================================================================================================= */

/*========================================================================================================================================= */
/*======================================================== sub etc style ================================================================== */
/*========================================================================================================================================= */

/* ============= imp-navigation ============ */
.imp-navi-area1 article {
    margin-top: 60px;
    text-align: center;
}
.imp-navi-area1 article * {
    white-space: pre-line;
}
.imp-navi-area1 article h5 {
    position: relative;
    display: inline-block;
    margin: 0 auto;
    border-bottom: 5px solid #d9dfee;
    border-top: 5px solid #d9dfee;
    padding: 30px 100px;
    font-weight: 500;
}
.imp-navi-area1 article h5::before,
.imp-navi-area1 article h5::after {
    position: absolute;
    font-size: 80px;
    font-weight: 600;
    line-height: 1;
}
.imp-navi-area1 article h5::before {
    content: '“';
    left: 0;
    top: 0;
}
.imp-navi-area1 article h5::after {
    content: '”';
    right: 0;
    top: 0;
}

/* ============= imp-highlevel ============ */
.imp-high-area1 ul.flex > li > div img {
    border: 1px solid #ccc;
    border-radius: 50%;
}

/* ============= imp-denture ============ */
.imp-den-area1 .line-box li > div {
    height: 200px;
}

.imp-den-area2 table {
    width: 100%;
}
.imp-den-area2 table tr {
    border-top: 1px solid #eee;
    border-left: 1px solid #eee;
    display: flex;
}
.imp-den-area2 table tr td {
    border-right: 1px solid #eee;

    width: 40%;
    text-align: center;
}
.imp-den-area2 table tr:last-child td {
    border-bottom: 1px solid #eee;
}
.imp-den-area2 table tr:first-child td {
    background: #f7f7f7;
    font-weight: 800;
}
.imp-den-area2 table tr:first-child td:nth-child(2) {
    background: #fffcf8;
}
.imp-den-area2 table tr td:first-child {
    width: 20%;
    background: #f7f7f7;
    font-weight: 800;
}
.imp-den-area2 table tr:first-child td:nth-child(2) p {
    color: #fff;
}
.imp-den-area2 table tr td:nth-child(2) p {
    color: #2c6eb6;
    font-weight: 800;
}
.imp-den-area2 table tr:not(:first-child) td {
    padding: 15px 5px;
}

.imp-den-area2 .middle-title p {
    display: inline-block;
    padding: 4px 14px;
    color: #fff;
    background: #2c6eb6;
}

/* ============= imp-oneday ============ */
.imp-oneday-area1 .line-box li > div {
    height: 300px;
}

/* ============= imp-caution ============ */
.imp-caution-area1 .line-box li > div {
    height: 400px;
}

/* ============= imp-insurance ============== */
.imp-insurance {
    text-align: center;
}

.insurance-box {
    border: 2px solid #eee;
    padding: 60px 0;
    background: url(../img/sub/imp_insurance.jpg) no-repeat;
    background-size: cover;
    background-position: center bottom;
}
.insurance-box .point {
    display: flex;
    align-items: flex-end;
    justify-content: center;
}
.insurance-box .point li:nth-child(2) {
    margin: 0 20px;
}
.insurance-box .point li h1 {
    font-size: 90px;
    font-family: 'GmarketSansMedium';
    transform: skew(-0.1deg);
    letter-spacing: -3px;
}
.insurance-box .point li p {
    display: inline-block;
    padding: 2px 10px;
    font-weight: 600;
    background-color: #f5f5f5;
}
.insurance-box .point li:last-child h1 {
    font-family: 'GmarketSansBold';
    transform: skew(-0.1deg);
}
.insurance-box .point li:last-child p {
    background-color: #d9dfee;
}

.insurance-box .info {
    position: relative;
    margin: 40px auto 0;
    padding: 15px 30px 15px 40px;
    width: 100%;
    max-width: 550px;
    border: 2px solid #eee;
    text-align: left;
    background: #fff;
}
.insurance-box .info::before {
    position: absolute;
    content: '';
    display: block;
    left: 0;
    top: 0;
    width: 15px;
    height: 100%;
    background-color: #2c6eb6;
}
.insurance-box .info li {
    display: flex;
    align-items: center;
    padding: 20px 0;
    border-bottom: 2px solid #eee;
}
.insurance-box .info li:last-child {
    border-bottom: none;
}
.insurance-box .info li h6 {
    margin-right: 30px;
    font-weight: 500;
}
.insurance-box .info li p {
    white-space: pre-line;
}

/* =========== gum-therapy =========== */
.gum-therapy-area2 .basic-box li:first-child {
    text-align: center;
}
.gum-therapy-area2 .basic-box li:last-child {
    flex: 2;
}

/* =========== root-canal =========== */
.root-canal-area1 ul.flex > li:nth-child(n + 4):nth-child(-n + 5) {
    margin-top: 20px;
}
.root-canal-area2 ul.flex img {
    max-width: 90px;
}

/* =========== replantation =========== */
.rep-area1 ul.flex > li:nth-child(n + 4):nth-child(-n + 5) {
    margin-top: 30px;
}

/* =========== chin =========== */
.chin-area1 ul.flex > li:nth-child(n + 4):nth-child(-n + 5) {
    margin-top: 30px;
}
.chin-area1 ul.flex img {
    width: 100%;
}

/* =========== prosthetic =========== */
.prosthetic-area1 img {
    max-width: 350px;
}

/* =========== children =========== */
.children-area1 .middle-title {
    background-color: #f6f4f5;
    border-radius: 30px;
    padding: 40px 20px;
}
.children-area2 {
    background-color: #f5faff;
    padding: 80px 0;
}
.children-area3 {
    background: linear-gradient(to right, #c4dcf9, #e3f1ff 20%);
    border-radius: 30px;
    padding: 40px 20px;
}
.children-area4 > li > div {
    padding: 20px 5px;
    border: 2px solid #007cfb;
    border-radius: 15px;
}

/*================================================================ 1500px 이하 ================================================================= */
@media screen and (max-width: 1500px) {
}

/*================================================================ 1200px 이하 ================================================================= */
@media screen and (max-width: 1200px) {
    .navi h5::before,
    .navi h5::after {
        font-size: 60px;
    }
}

/*================================================================ 1025px 이하 ================================================================= */
@media screen and (max-width: 1025px) {
}

/*================================================================ 900px 이하 ================================================================= */
@media screen and (max-width: 900px) {
    /* =========== prosthetic =========== */
    .prosthetic-area1.table-wrap table {
        min-width: 700px;
    }
}

/*================================================================ 769px 이하 ================================================================= */
@media screen and (max-width: 769px) {
    /* ============= imp-navigation ============ */
    .imp-navi-area1 article h5 {
        padding: 10px 0;
        display: block;
        width: 100%;
        max-width: 600px;
    }
    .imp-navi-area1 article h5::before,
    .imp-navi-area1 article h5::after {
        font-size: 50px;
        height: 40px;
        position: relative;
        width: 100%;
        display: block;
        top: 0;
    }
    .imp-navi-area1 article h5::after {
        margin-top: 5px;
    }

    /* ============= imp-denture ============ */
    .imp-den-area2 table tr:not(:first-child) td {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 0;
        height: 80px;
        font-size: 11px;
    }

    /* ============= imp-insurance ============= */
    .insurance-box {
        padding: 40px 10px;
    }
    .insurance-box .point li h1 {
        font-size: 70px;
    }
    .insurance-box .info::before {
        width: 10px;
    }

    /* ============= imp-caution ============ */
    .imp-caution-area1 .line-box .num::before {
        margin: 0;
    }
    .imp-caution-area2 .num-list {
        max-width: 400px;
        margin: 20px auto 0;
    }

    /* =========== gum-therapy =========== */
    .gum-therapy-area2 .basic-box img {
        max-width: 250px;
    }

    /* =========== root-canal =========== */
    .root-canal-area1 ul.flex > li:nth-child(n + 3):nth-child(-n + 5) {
        margin-top: 20px;
    }

    /* =========== replantation =========== */
    .rep-area1 ul.flex > li:nth-child(n + 3):nth-child(-n + 5) {
        margin-top: 20px;
    }

    /* =========== chin =========== */
    .chin-area1 ul.flex > li:nth-child(n + 3):nth-child(-n + 5) {
        margin-top: 20px;
    }

    /* =========== aesthetic =========== */
    .aesthetic-area1 .num-list {
        max-width: 400px;
        margin: 0 auto;
    }
}

/*================================================================ 600px 이하 ================================================================= */
@media screen and (max-width: 600px) {
    /* ============= imp-navigation ============ */
    .imp-navi-area1 ul.flex > li {
        width: 100%;
    }
    .imp-navi-area1 ul.flex > li:not(:first-child) {
        margin-top: 20px;
    }

    /* =========== gum-therapy =========== */
    .gum-therapy-area1 ul.flex > li {
        width: 50%;
    }

    /* =========== root-canal =========== */
    .root-canal-area2 ul.flex img {
        max-width: 50px;
    }
}

/*================================================================ 425px 이하 ================================================================= */
@media screen and (max-width: 425px) {
    /* ============= imp-navigation ============ */
    .imp-navi-area1 article::before,
    .imp-navi-area1 article:after {
        font-size: 35px;
        height: 25px;
    }

    /* ============= imp-highlevel ============ */
    .imp-high-area2.table-wrap table {
        min-width: 550px;
    }
    .imp-high-area2.table-wrap table td {
        padding: 10px 5px;
    }

    /* ============= imp-denture ============ */
    .imp-den-area2 table tr:not(:first-child) td {
        height: 80px;
    }

    /* ============= imp-insurance ============= */
    .insurance-box {
    }
    .insurance-box .point li h1 {
        font-size: 50px;
    }
    .insurance-box .info {
        padding: 10px 20px;
        margin: 20px auto 0;
    }
    .insurance-box .info::before {
        width: 5px;
    }
    .insurance-box .info li {
        padding: 15px 0;
    }
    .insurance-box .info li h6 {
        margin-right: 20px;
    }

    /* ============= imp-caution ============ */
    .imp-caution-area2 .num-list {
        max-width: 280px;
        margin: 10px auto 0;
    }

    /* =========== gum-therapy =========== */
    .gum-therapy-area2 .basic-box img {
        max-width: 180px;
    }

    /* =========== root-canal =========== */
    .root-canal-area1 ul.flex > li:nth-child(n + 3):nth-child(-n + 5) {
        margin-top: 0;
    }
    .root-canal-area2 ul.flex > li > div {
        margin: 5px;
    }

    /* =========== chin =========== */
    .chin-area1 ul.flex > li:nth-child(n + 3):nth-child(-n + 5) {
        margin-top: 5px;
    }
    .chin-area1 ul.flex > li > div {
        margin: 5px;
    }

    .chin-area2 ul.flex img {
        max-width: 250px;
    }
    .chin-area2 ul.flex > li:not(:first-child) {
        margin-top: 20px;
    }

    /* =========== prosthetic =========== */
    .prosthetic-area1 img {
        max-width: 200px;
    }
    .prosthetic-area1.table-wrap table {
        min-width: 500px;
    }

    /* =========== aesthetic =========== */
    .aesthetic-area1 .num-list {
        max-width: 260px;
    }

    /* =========== children =========== */
    .children-area1 .middle-title {
        padding: 30px 15px;
    }
    .children-area2 {
        padding: 40px 0;
    }
    .children-area3 {
        padding: 30px 15px;
    }
    .children-area4 > li > div {
        padding: 10px 5px;
        margin: 5px !important;
    }
}

/*========================================================================================================================================= */
/*======================================================== sub etc style ================================================================== */
/*========================================================================================================================================= */


/* 레이아웃 */
	.col-2, .col-3, .col-4, .col-5 {display: flex; flex-wrap: wrap; width: 100%; justify-content: center;}
	.col-2 li, .col-3 li, .col-4 li, .col-5 li {position: relative; margin-left: 2%; flex: 0 0 auto; width: 100%;}
	.col-2 li {width: calc(50% - 2%);}
	.col-4 li {width: calc(25% - 2%);}
	.col-3 li, .col-5 li {width: calc(33.3% - 2%);}
	.col-2 li:first-child, .col-2 li:nth-child(3), .col-2 li:nth-child(5), 
	.col-3 li:first-child, .col-3 li:nth-child(4), .col-3 li:nth-child(7),
	.col-4 li:first-child, .col-4 li:nth-child(5),
	.col-5 li:first-child, .col-5 li:nth-child(4) {margin-left: 0;}
	.col-2 li:nth-child(3), .col-2 li:nth-child(4),	.col-2 li:nth-child(5),
	.col-3 li:nth-child(4), .col-3 li:nth-child(5), .col-3 li:nth-child(6), .col-3 li:nth-child(7), .col-3 li:nth-child(8), .col-3 li:nth-child(9),
	.col-4 li:nth-child(5), .col-4 li:nth-child(6), .col-4 li:nth-child(7), .col-4 li:nth-child(8),
	.col-5 li:nth-child(4), .col-5 li:nth-child(5), .col-5 li:nth-child(6), .col-5 li:nth-child(7), .col-5 li:nth-child(8), .col-5 li:nth-child(9), .col-5 li:nth-child(10),
	.col-5 li:nth-child(11), .col-5 li:nth-child(12), .col-5 li:nth-child(13), .col-5 li:nth-child(14), .col-5 li:nth-child(15) {margin-top: 3%;}
	.col-2 li h5, .col-3 li h5, .col-4 li h5, .col-5 li h5 {margin: 3% 0 2% 0; font-weight: 500;}

	.one-col-5{display: flex; flex-wrap: wrap; width: 100%; justify-content: center;}
	.one-col-5 li{flex:1;}

    	/* 동그란 사진, 사각형 사진 들어간 리스트 */
	.line-list {text-align: center; margin-bottom: 3%;}
	.line-list:last-of-type {margin-bottom: 0;}
	.line-list li img {border: 2px solid #eee; width: 100%;}
	.line-list .num::before {position: absolute; top: 0; left: 0;}
	.circle-list {text-align: center;}
	.circle-list li img {border: 2px solid #eee; border-radius: 50%;}
	.line-list li h5, .circle-list li h5,.circle-list li p {white-space: pre-line; margin-top: 3%;}

    .bd-tit {
        padding: 15px 10px;
        text-align: center;
        margin-top: 40px;
        color: #fff;
        background: #26a6f4;
        font-weight: 900;
        font-family: 'NanumSquare', san-serif;
    }

    .shadow {
        box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.1);
    }
   

    /* 시간 */
.info-wrap {display: flex; align-items: center; flex-wrap: wrap; background: #f9f9f9;}
.info-wrap > li {width: 50%; height: 100%;}
.info-wrap .time-wrap {display: flex; justify-content: center;}
.time-wrap .time {display: flex; flex-direction: column;}
.time-wrap .time > ul {display: flex; flex-direction: column;}
.time-wrap .time > ul > li {padding: 0 10px;}
.time-wrap .time > ul > li:not(:first-child) {margin-top: 10px;}
.time-wrap .time > ul > li.night {position: relative; background: #28afd7; color: #fff; }
.time-wrap .time > ul ul {display: flex; align-items: center;}
.time-wrap .time > ul ul > li:first-child {width: 160px; text-align-last: justify; margin-right: 30px;}
.time-wrap .time > ul ul > li:first-child h4 {font-weight: bold;}
.time-wrap .time > ul ul > li:last-child h4 {font-weight: 300;}
.time-wrap .time .notice {margin-top: 20px;}
.time-wrap .time .notice p {white-space: pre-line; font-size: 22px; line-height: 1.5;}
.time-wrap .time .notice p b {color: #009bd3;}
.map-wrap .root_daum_roughmap {width: 100%;}
.map-wrap .wrap_map {width: 100%; height: 500px !important;}
.map-wrap .root_daum_roughmap .wrap_controllers {display: none;}

.info-time .btm {padding: 40px 20px; background: #28afd7; color: #fff;}
.info-time .btm > ul {display: flex; align-items: center;}
.info-time .btm > ul > li {width: 50%;}
.info-time .btm .tit {display: inline-block; width: 110px; text-align: center; padding: 2px 20px; border-radius: 20px; font-weight: 900; background: #fff; color: #333;}
.info-time .btm .left {text-align: center;}
.info-time .btm .right ul > li {display: flex; align-items: center; margin-top: 10px;}
.info-time .btm .right ul > li p.sub {margin-left: 15px;}

/* ===================== Mobile size : 1500px ======================= */

@media screen and (max-width: 1500px){

}


/* ===================== Mobile size : 1200px ======================= */

@media screen and (max-width: 1200px){
.info-wrap > li {width: 100%;}
.time-wrap > div {padding: 40px 0;}
.map-wrap .wrap_map {height: 350px !important;}

.info-time .btm .right ul > li {display: block;}
.info-time .btm .right ul > li p.sub {margin: 5px 0 0 0;}
}


/* ===================== Mobile size : 1024px ======================= */

@media screen and (max-width: 1024px){

}

/* ===================== Mobile size : 900px ======================= */

@media screen and (max-width: 900px){

}

/* ===================== Mobile size : 769px ======================= */

@media screen and (max-width: 769px){
.time-wrap .time > ul ul > li:first-child {width: 120px; margin-right: 20px;}
.time-wrap .time .notice p {font-size: 18px;}
.map-wrap .wrap_map {height: 300px !important;}
}

/* ===================== Mobile size : 600px ======================= */

@media screen and (max-width: 600px) {
.info-time .btm > ul {flex-wrap: wrap;}
.info-time .btm > ul > li {width: 100%;}
.info-time .btm .right ul {margin-top: 40px; text-align: center;}
}

/* ===================== Mobile size : 480px ======================= */

@media screen and (max-width: 480px){
.time-wrap .time > ul > li.night {border-radius: 10px 0 10px 0;}
.time-wrap .time > ul > li.night::before {width: 30px; height: 30px; left: -35px;}
.time-wrap .time > ul ul > li:first-child {width: 85px;}
.time-wrap .time h4 {font-size: 20px;}
.time-wrap .time .notice p {font-size: 15px;}

.info-time .btm .right ul {margin-top: 20px;}
}

/* ===================== Mobile size : 380px ======================= */

@media screen and (max-width: 380px){

}

	/* 상단 조건 안내 */
	.condition-box .con-box{
		margin: 8px;
		border: 1px solid #ccc;
		display: flex;
		flex-direction: column;
		text-align: center;
	}
	.condition-box .con-box > span{
		padding: 8px;
	}
	.condition-box .con-box > span:nth-child(1){
		background-color: #28afd7;
		color: #fff;
		border-bottom: 1px solid #ccc;
		font-weight: 700;
	}
	.condition-box .con-box > span:nth-child(2){
		font-weight: 500;
	}

	.condition-note {
	  color: #555;
	  line-height: 1.6;
	  margin-bottom: 30px;
	  padding-left: 6px;
	}

	/* 검사 항목 표 */
	.check-table {
	  width: 100%;
	  border-collapse: collapse;
	  margin-bottom: 30px;
	}

	.check-table th {
	  	background-color: #28afd7;
		color: #fff;
		font-weight: 700;
	  	padding: 12px;
	  	text-align: center;
	  	border: 1px solid #ccc;
	}

	.check-table td {
	  padding: 14px 12px;
	  vertical-align: top;
	  border: 1px solid #ccc;
	  line-height: 1.6;
	}

	.check-table .blue {
		background-color: #eafaff;
	  	color: #28afd7;
		font-weight: 700;
	  	width: 150px;
	  	text-align: center;
	}

	/* 주의사항 안내 */
	.notice-box {
	  background-color: #f5f5f5;
	  padding: 24px;
	  border-radius: 6px;
	}

	.notice-title {
	  font-size: 17px;
	  font-weight: 600;
	  color: #28afd7;
	  margin-bottom: 18px;
	}

	.notice-wrap {
	  line-height: 1.6;
	}

	.notice-block > div{
		padding: 8px 0 ;
	}

    .toggle-button {
      cursor: pointer;
      user-select: none;
    }

    .toggle-content {
      	position: relative;
	  	overflow: hidden;
	  	transition: all 0.5s;
	  	height: 0;
	  	opacity: 0;
    }

	.toggle-content.on {
      	height: 100%;
	  	opacity: 1;
		flex: 1;
    }


	.sub4-box{
		display: flex;
		flex-direction: column;
		padding: 16px;
		gap: 40px;
	}
    .sub4-price-box {
        text-align: center;
    }
	.sub4-price-box-con li{
		padding: 8px;
		display: flex;
		flex-direction: column;
	}
	.sub4-price-box-con .sub4-price-sub img{
		width: 100%;
	}
	.sub4-price-box-con .sub4-price-sub{
		transition: all 0.7s;
	}

	.sub4-price-box-con .sub4-price-box{
		background-color: #363636;
		min-height: 220px;
		padding: 40px 0;
		color: #fff;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		align-items: center;
	}
	.sub4-price-box-con .sub4-price-box.sub4-box2{
		background-color: #f4fbfd;
		color: #000;
	}
	.sub4-price-btn{
		display: inline-block;
		font-size: 24px;
		border: 1px solid #fff;
		padding: 4px 16px;
    	margin-top: 20px;
		cursor: pointer;
		transition: all 0.5s;
	}
	.sub4-price-btn:hover{
		color: #000;
		background-color: #fff;
	}
	.sub4-color-btn{
        transition: all 0.5s;
		cursor: pointer;
	}
    .sub4-color-btn:hover{
        filter: brightness(1.2);
    }

	@media(max-width:769px) {
		.sub4-color-box{
			gap: 40px;
		}
		.sub4-color-box img{
			width: 100%;
		}
	}