@charset "utf-8";

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

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: #7fcef4; 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: #7fcef4; 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: #006a65;}


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


/* 미들 타이틀 (작은 타이틀) */
.middle-title {font-family: 'NanumSquare',san-serif; text-align: center; margin-bottom: 40px;} 
.middle-title p {font-weight: 400; white-space: pre-line; margin-top: 20px;} 
.middle-title h4 {line-height: 1.4; font-weight: 900; transform: skew(-0.1deg); white-space: pre-line;} 
.middle-title h6 {font-weight: 700; transform: skew(-0.1deg); white-space: pre-line;}
.middle-title b {font-weight: 900;}
.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: #7fcef4; 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: #7fcef4; color: #fff; 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;}


/* 숫자 리스트 */
.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: #00635e;}
.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: #7fcef4;}
.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; font-family: 'NanumSquare',san-serif; font-weight: 800; 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: #274c8d;}


/* 원 안에 아이콘 없는 박스 */
.circle-box > div > div {border-radius: 50%; background-color: #f5f5f5;}
.circle-box:nth-child(2n-1) > div > div {background-color: #ebf4f2;}
.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;}


/* 자세히 보기 버튼 */
.detail-btn a {position: relative; display: inline-block; margin-top: 20px; padding: 12px 30px; border: 1px solid #333; font-size: 15px; font-weight: 700; transition: 0.4s ease-in-out;}
.detail-btn a::before {content: ""; position: absolute; top: 0; left: 0; width: 0; height: 100%; background-color: #327cbd; transition: 0.4s ease-in-out; z-index: -1;}
.detail-btn a:hover::before {width: 100%;}
.detail-btn a:hover {color: #fff; border: 1px solid #327cbd;}

/*================================================================ 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-scroll {overflow-x: scroll; overflow-y: hidden; max-width: 100%;}
.table-scroll::-webkit-scrollbar {width: 12px;}
.table-scroll::-webkit-scrollbar-track {-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1); box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1); border-radius: 5px; background-color: rgba(220, 220, 220, 0.3);}
.table-scroll::-webkit-scrollbar-thumb {background-clip: padding-box; border-radius: 5px; background-color: #516371; border: 2px solid transparent;}
.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: block; 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:480px) {
#wrapper {margin-top: 55px;}
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: 260px 0;}
.banner-bg h2 {color: #fff; text-align: center;}
.banner-bg p {color: #fff; text-align: center; font-size: 20px; letter-spacing: 0.1em;}


/* 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: 160px 0;}
}

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

}

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

}

/*================================================================ 769px 이하 ================================================================= */
@media screen and (max-width:769px) {
.banner-bg{padding: 120px 0;}
.banner-bg p {font-size: 17px;}
}

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

}

/*================================================================ 425px 이하 ================================================================= */
@media screen and (max-width:480px) {
.banner-bg{padding: 70px 0;}
.banner-bg h2 {font-size: 28px;}
.banner-bg p {font-size: 13px;}
}


/*========================================================================================================================================= */
/*================================================================ 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: #7fcef4; cursor: pointer; transition: all ease 0.3s;}
.dentist .tab-btn input:checked + label {color: #fff; background-color: #111; 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%; background: url(../img/custom/logo.png) no-repeat; background-position: right bottom; background-size: auto;}
.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 .tab-name p.txt {margin-top: 20px; padding-top: 20px; font-weight: 400; white-space: pre-line; border-top: 2px dotted #ddd;}
.dentist .tab-content .disc-list{list-style-type: disc; margin-left: 20px;}
.dentist .tab-content .disc-list li {line-height: 1.8;}

/* =========== 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+5):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 .sub {margin-top: 15px; line-height: 1.5;}
#equipment li img {width: 100%; border: 1px solid #eee;}

/* =========== info-time ======== */
.time-table * {text-align: center;}
.time-table ul {display: flex; justify-content: center; align-items: center; max-width: 1000px; width: 100%; margin: 40px auto 0;}
.time-table ul li {width: 100%;}
.time-table ul li:last-child {margin-left: 50px;}
.time-table h6 {padding: 5px 0; font-family:'NanumSquare',san-serif; font-weight: 700; transform: skew(-0.1deg); font-size: 20px;}
.time-table h6:nth-of-type(2n) {padding: 10px 0;}
.time-table h6:nth-of-type(2n-1) {background-color: #f0f0f0; font-weight: 800;}
.time-table h6.night-time {background: linear-gradient(to right, #1f3d74, #7fcef4); color: #fff;}
.time-table article {margin-top: 80px;}
.time-table article img {margin-right: 20px;}

/* ========= info-map ========= */
.map ul.flex > li > div {padding: 50px 0; /* height: 350px; */ border: 1px solid #dfdfdf;}
.map ul.flex h5 {margin-top: 10px; font-family:'NanumSquare',san-serif; font-weight: 800; transform: skew(-0.1deg);}
.map ul.flex p {position: relative; margin-top: 10px; padding-top: 20px; font-weight: 700;}
.map ul.flex p::before {content: ''; display: block; width: 80px; height: 2px; background-color: #ddd; position: absolute; top: 0; left: 50%; transform: translate(-50%, 0);}

.map ul.flex > li:nth-child(2) p span {display: inline-block; margin: 5px 5px 0; padding: 2px 13px; border-radius: 20px; background: #6175f5; color: #fff;}
.map ul.flex > li:nth-child(2) p span:nth-child(2) {background: #47af1b;}
.map ul.flex > li:nth-child(2) p span:nth-child(3) {background: #00afbd;}
.map .root_daum_roughmap {width: calc(100% - 20px) !important; margin: 0 auto;}


/*================================================================ 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%;}

#equipment li {width: 33.3%;}
#equipment li:nth-child(n+4):nth-child(-n+99) {margin-top: 20px;}
}

/*================================================================ 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;}

/* =========== info-time ======== */
.time-table ul {display: block; max-width: 500px; margin: 0 auto;}
.time-table ul li img {width: 70%;}
.time-table ul li:last-child {margin: 40px auto 0;}
.time-table h6 {font-size: 18px;}

/* ========= info-map ========= */
.map ul.flex {flex-wrap: wrap; justify-content: center;}
.map ul.flex > li {width: 100%;}
.map ul.flex > li > div {height: auto;}
}

/*================================================================ 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;}

/* =========== info-time ======== */
.time-table ul li:last-child {max-width: 320px;}
.time-table article img {max-width: 50px;}
}

/*================================================================ 425px 이하 ================================================================= */
@media screen and (max-width:480px) {
/* =========== 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;}
.dentist .tab-content img {max-width: 250px;}

/* =========== info-equipment ======== */
#equipment li .sub {margin-top: 10px;}

/* =========== info-time ======== */
.time-table ul {width: 100%;}
.time-table h6 {font-size: 16px;}
.time-table article {margin-top: 30px;}
.time-table article img {max-width: 40px; margin-right: 15px;}

/* ========= info-map ========= */
.map ul.flex > li > div {padding: 30px 0;}
.map ul.flex > li p {margin-top: 5px; padding-top: 15px;}
.map ul.flex > li img {max-height: 50px;}
}

@media screen and (max-width:400px) {
#equipment li h5 {font-size: 17px;}
#equipment li .sub {font-size: 12px;}
}


/*============================================================================================================================================= */
/*================================================================ 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 {display: flex;}
.imp-den-area2 table tr td {width: 20%; text-align: center;}
.imp-den-area2 table tr td:first-child, .imp-den-area2 table tr td:last-child {width: 40%;}
.imp-den-area2 table tr td:nth-child(2) p {font-weight: 800;}
.imp-den-area2 table tr:first-child td {background: #fff !important;}
.imp-den-area2 table tr:first-child td:not(:nth-child(2)) p {color: #fff;}
.imp-den-area2 table tr td:last-child p {color: #7fcef4; font-weight: 800;}
.imp-den-area2 table tr:nth-child(2n) td {background: #dce3ef;}
.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: #7fcef4;}

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

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


/* ============= 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: #7fcef4;}
.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;}


/* =========== whitening =========== */
.whitening-area1 {background: #ebf4f2 !important;}


/* =========== 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;}


/* =========== ortho-age =========== */
.ortho-age-box .db-1025 {background: #d8e1e7;}


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


/* =========== ortho-retainer =========== */
.ortho-retainer-area1 ul.flex > li > div {padding: 60px 10px; background: #fbfbfb;}
.ortho-retainer-area1 ul.flex > li:nth-child(2n) > div {background: #e6f4fd;}
.ortho-retainer-area1 ul.flex h4 {position: relative; margin-bottom: 20px; padding-bottom: 10px; color: #1860ab;}
.ortho-retainer-area1 ul.flex h4::before {position: absolute; content: ''; left: 50%; bottom: 0; transform: translateX(-50%); width: 50px; height: 2px; background: #1860ab;}
.ortho-retainer-area1 ul.flex p {font-weight: 700;}


/* =========== ortho-caution =========== */
.ortho-caution-area1 .basic-box > li:first-child {flex: none; padding-right: 40px;}
.ortho-caution-area1 .basic-box > li img {border: 2px solid #eee;}


/* ========= ortho-trans, ortho-clippy ========== */
.trans-clippy {display: flex; justify-content: center;}
.trans-clippy ul {display: flex; position: relative; max-width: 426px;}
.trans-clippy ul::before {content: '+'; display: block; border: none; color: #1860ab; position: absolute; left: 50%; font-size: 40px; font-weight: 600; transform: translate(-50%, -50%); top: 50%;}
.trans-clippy ul li {border: 2px solid #1860ab; border-radius: 50%; width: 100%; position: relative; margin-left: 10%;}
.trans-clippy ul li:first-child {margin-left: 0;}
.trans-clippy ul li p {position: absolute; width: 100%; height: auto; top: 50%; transform: translate(0, -50%); text-align: center; white-space: pre-line;}
.trans-clippy ul li::after {content: ''; display: block; padding-bottom: 100%;}

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

}

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


/* ========= ortho-trans, ortho-clippy ========== */
.ortho-trans-area2 ul.flex {max-width: 600px; width: 100%; margin: 0 auto;}
}

/*================================================================ 1025px 이하 ================================================================= */
@media screen and (max-width:1025px) {
/* =========== ortho-age =========== */
.ortho-age-box > ul.flex > li {width: 100%;}
}

/*================================================================ 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: 60px;}


/* ============= 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;}


/* =========== ortho-braces =========== */
.ortho-braces-area1 ul.flex > li:nth-child(n+3):nth-child(-n+8) {margin-top: 30px;}


/* =========== ortho-caution =========== */
.ortho-caution-area1 .basic-box > li:first-child {padding: 0;}
.ortho-caution-area1 .basic-box li img {max-width: 40%;}


/* ========= ortho-trans, ortho-clippy ========== */
.trans-clippy img {max-width: 300px; border: 1px solid #ccc; border-radius: 30px;}
.trans-clippy > li:last-child {margin-top: 20px; text-align: center;}
.trans-clippy ul {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;}


/* =========== ortho-age =========== */
.ortho-age-box .circle-icon img {max-width: 50px;}


/* ========= ortho-trans, ortho-clippy ========== */
.ortho-trans-area2 ul.flex img {width: 40%;}
}

/*================================================================ 425px 이하 ================================================================= */
@media screen and (max-width:480px) {
/* ============= 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: 50px;}


/* ============= 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;}


/* =========== 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;}


/* =========== ortho-age =========== */
.ortho-age-box .circle-icon img {max-width: 40px;}
.ortho-age-box .circle-icon p {margin-top: 10px;}
.ortho-age-box ul.flex > li > div.m5 {margin: 3px;}


/* =========== ortho-braces =========== */
.ortho-braces-area1 ul.flex > li:nth-child(n+2):nth-child(-n+8) {margin-top: 30px;}
.ortho-braces-area1 ul.flex > li > div {max-width: 220px; margin: 5px auto;}


/* =========== ortho-retainer =========== */
.ortho-retainer-area1 ul.flex > li > div {margin: 5px; padding: 40px 10px;}
.ortho-retainer-area1 ul.flex h4 {margin-bottom: 10px;}
.ortho-retainer-area1 ul.flex h4::before {width: 30px;}


/* ========= ortho-trans, ortho-clippy ========== */
.trans-clippy img {max-width: 220px;}
.trans-clippy > li:last-child {margin: 0;}
.ortho-trans-area2 ul.flex > li > div {margin: 5px;}
}


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


/* 만성질환 특화페이지 커스텀 */
.bon-senior .inner{
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.bon-senior{
    padding-top: 0 !important;
    height: 1080px;
        max-width: 1920px;
    width: 100%;
    margin: 0 auto;
}

.bon-senior .main-tit h2{
    font-size: 60px;
}

.bon-senior h3{
    font-size: 60px;
}
@media screen and (max-width: 769px) {
    .bon-senior .main-tit h2 , .bon-senior h3{
        
    }
}

@media screen and (max-width: 1024px) {
    .bon-senior .main-tit h2 , .bon-senior h3{
        font-size: 30px;
    }
}

/* 1,2 공통 */
.bon-senior01 .main-tit, .bon-senior02 .main-tit{
    display: flex;
    flex-direction: column;
}

/* Bon senior 01 */
.bon-senior01{
    color: #fff;
    background: url(../img/sub/bon-senior01-bg.jpg) center/cover 
    no-repeat;
}
.bon-senior01 .main-tit{
    gap: 420px;
}

/* Bon senior 02 */
.bon-senior02{
    color: #fff;
    text-align: end;
    background: url(../img/sub/bon-senior02-bg.jpg) center/cover 
    no-repeat;
}
.bon-senior02 .main-tit{
    gap: 130px;
}
.bon-senior02 .main-tit > span{
    display: flex;
    flex-direction: column;
    gap: 40px;
}

/* Bon senior 03 */
.bon-senior03{
    color: #fff;
    display: flex;
}
.bon-senior03 .inner {
    padding-left: 40px;
}
.bon-senior03 > div:first-child{
    background: url(../img/sub/bon-senior03-1.jpg) center/cover 
    no-repeat;
}
.bon-senior03 > div:last-child{
    background: url(../img/sub/bon-senior03-2.jpg) center/cover 
    no-repeat;
}

/* Bon senior 04 */
.bon-senior04{
    color: #fff;
    display: flex;
}
.bon-senior04 .inner {
    padding-right: 40px;
}
.bon-senior04 > div:first-child{
    text-align: end;
    background: url(../img/sub/bon-senior04-1.jpg) center/cover 
    no-repeat;
}
.bon-senior04 > div:last-child{
    background: url(../img/sub/bon-senior04-2.jpg) center/cover 
    no-repeat;
}
.bon-senior04 .main-tit > span:last-child {
    display: flex;
    flex-direction: column;
    gap: 40px;
}
/* 3,4 공통 */
.bon-senior03 , .bon-senior04 {
    position: relative;
}
.bon-senior03 > div , .bon-senior04 > div {
    width: 50%;
}

/* Bon senior 05 */
.bon-senior05{
    position: relative;
    white-space: pre-line;
    color: #fff;
    background: url(../img/sub/bon-senior05-bg.jpg) center/cover 
    no-repeat;
}
.bon-senior05 .doc {
    position: absolute;
    right: 13vw;
    bottom: 0;
}

/* Bon senior 06 */
.special-section{
    margin-bottom: 120px;
    background: url(../img/main/main-section-bg-test.jpg) center/cover no-repeat;
}
.special-section .inner{
            color: #fff;
            height: 843px;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }
        .special-section ul{
            display: flex;
            flex-direction: column;
            gap: 20px;
            align-items: start;
        }
        .special-section .tit {
            font-size: 50px;
            margin-bottom: 40px;
            text-align: center;
        }
        .special-section .special-section-con {
            padding-left: 500px;
        }
        
        .special-section .special-section-con > div:last-child{

        }
        .special-section .special-section-con > div:last-child{
            /* border-left: 1px solid #fff; */
            box-sizing: border-box;
        }

        .special-section .special-section-con ul > li {
            display: flex;
        }
        .special-section .special-section-con ul > li > div:first-child{
            display: flex;
            justify-content: center;
            align-items: center;
            font-family: "GmarketSansMedium";
            font-size: 2.5rem;
            font-weight: 700;
            color: #06dae8;
            width: 120px;
        }
        
        @media (max-width:769px) {
            /* Bon senior 02 */
            .bon-senior02{
                background: url(../img/sub/m_bon-senior02-bg.jpg) center/cover 
            }
            .special-section .inner{
                background: url(../img/sub/m_bon-senior06-bg.jpg) center/cover no-repeat;
            }
        }

/* Bon senior 07 */
.bon-senior07{
    color: #fff;
    background: url(../img/sub/bon-senior07-bg.jpg) center/cover 
    no-repeat;
}
/* 7,8,9 공통 */
.bon-disease{
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    gap: 20px;
    padding-left: 870px;
}

.bon-disease ul{
    display: flex;
    gap: 40px;
    border-left: 2px solid #fff;
    padding-left: 20px;
    flex-direction: column;
}

.bon-senior08 .bon-disease ul{
    border-left: 2px solid black;
}

.bon-disease li{
    display: flex;
    align-items: center;
    gap: 20px;
}

.bon-disease p{
    font-weight: 600;
    font-size: 24px;
}

.bon-disease li h5 {
    font-weight: 400;
}


/* Bon senior 08 */
.bon-senior08{
    background: url(../img/sub/bon-senior08-bg.jpg) center/cover 
    no-repeat;
}
.bon-senior08 .bon-disease {
    padding-left: 300px;
}

/* Bon senior 09 */
.bon-senior09{
    color: #fff;
    background: url(../img/sub/bon-senior09-bg.jpg) center/cover 
    no-repeat;
}

/* Bon senior 10 */
.bon-senior10{
    text-align: center;
    background: url(../img/sub/bon-senior10-bg.jpg) center/cover 
    no-repeat;
}
.bon-senior10 .inner {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center; 
}
.bon-senior10 ul {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.bon-senior10 ul li{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    line-height: 28px;
}
.bon-senior10 ul li img {
    height: 32px;
    margin-right: 8px;
}
@media screen and (max-width: 1200px) {
    .bon-senior07 .inner, .bon-senior08 .inner, .bon-senior09.inner{
        justify-content: start;
    }
    .bon-senior05 {
        height: 2000px;
    }
}


@media screen and (max-width: 769px) {
    .bon-senior {
        height: 600px;
    }
    .bon-senior01 .main-tit{
        gap: 30px;
    }
    .bon-senior01 .main-tit .x1_4{
        font-size: 1rem;
    }
    .bon-senior02 {
        text-align: start;
    }
    .bon-senior02 .main-tit {
        gap: 40px;
    }
    .bon-senior02 .main-tit > span{
        gap: 20px;
    }
    .bon-senior03 > div , .bon-senior04 > div {
        width: 100%;
    }
    .bon-senior03 .inner {
        padding-left: 8px;
    }
    .bon-senior03 > div:last-child {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: url("");
        background-color: rgb(0, 0, 0, 0.6);
    }
    .bon-senior04 > div:first-child {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: url("");
        background-color: rgb(0, 0, 0, 0.6);
        text-align: start;
    }
    .bon-senior04 > div:last-child {
        
    }
    .bon-senior04 .main-tit > span:last-child h5{
        font-size: 1rem;
    }
    .bon-senior05 {
        height: 1080px;
    }
    .bon-senior05 .doc{
        right: 20vw;
        left: 20vw;
    }
    .bon-senior05 .inner{
        justify-content: start;
        padding-top: 40px;
    }
    .bon-senior05 .main-tit{
        display: flex;
        flex-direction: column;
    }
    .special-section .tit{
        font-size: 40px;
    }
    .special-section .special-section-con{
            padding-left: 0px !important;
    }
    .special-section .special-section-con ul > li > div:first-child{
        width: 100px !important;
    }
    .special-section{
        padding: 0 !important;
    }

    .bon-disease {
        padding: 0 8px !important;
    }
    .bon-disease p {
        font-size: 1rem;
    }
    .bon-disease ul {
        gap: 12px;
    }
    .bon-senior10 .main-tit > img:first-child{
        width: 40px !important;
    }

   

    /* Bon senior 07 */
    .bon-senior07{
        color: #fff;
        background: url(../img/sub/m_bon-senior07-bg.jpg) center/cover 
        no-repeat;
    }
    
    /* Bon senior 08 */
    .bon-senior08{
        background: url(../img/sub/m_bon-senior08-bg.jpg) center/cover 
        no-repeat;
    }

    /* Bon senior 09 */
    .bon-senior09{
        color: #fff;
        background: url(../img/sub/m_bon-senior09-bg.jpg) center/cover 
        no-repeat;
    }

    .bon-senior10 .x1_8{
        font-size: 1rem;
    }
    .bon-senior10 ul{
        gap: 12px;
    }
    .bon-senior10 ul li {
        flex-direction: column;
    }
    .bon-senior10 ul li img {
        height: 24px;
        margin-right: 4px;
    }
    
    .promise .deco{
        display: none;
    }
 }

/* Bon senior 06*/
.promise{
    position: relative;
    text-align: center;
    color: #fff;
    background-color: #00a6b2;
    font-weight: 400;
    padding-bottom: 120px;
    line-height: 1.5;
    overflow: hidden;
}
.promise .deco{
    position: absolute;
       right: 8vw;
       bottom: 30px;
       width: 10%;
}
.promise .main-tit{
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.promise .main-tit h2{
    font-weight: 300;
}


