@charset "utf-8";
/*========================================================================================================================================= */
/*================================================================ common ================================================================= */
/*========================================================================================================================================= */

.stick ul.flex li h6{background: #2c4a68; color: #fff; padding: 10px;  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: linear-gradient(to right, #5b7f9d, #152e4c); color: #fff; font-size: 24px; font-weight: 500; text-align: center;}
.num.num-posa::before {position: absolute; margin: 0;}


/* 미들 타이틀 (작은 타이틀) */
.middle-title {text-align: center; margin-bottom: 40px;} 
.middle-title p { font-weight: 400; white-space: pre-line; margin-top: 20px;} 
.middle-title h3 {font-family: "GmarketSansBold";} 
.middle-title h4 {line-height: 1.4; font-weight: 600; transform: skew(-0.1deg); white-space: pre-line;font-family: "GmarketSansBold";} 
.middle-title h5 {font-weight: 900; white-space: pre-line;font-family: "GmarketSansBold";}
.middle-title h6 {font-weight: 700; white-space: pre-line;font-family: "GmarketSansBold";}
.middle-title > span.num::before { font-weight: 400; transform: skew(-0.1deg); margin: 0 auto 20px; border-radius: 50%; background: #00a99e;} 
.middle-title .en-sub{color: #aaa;letter-spacing: 0.5px;margin-bottom: 10px;font-weight: 500;font-size: 1.5em;}

/* 둥그런 타이틀 */
.border-title {text-align: center; margin-bottom: 40px;} 
.border-title h5{display: inline-block;padding: 10px 50px;-webkit-border-radius: 30px;-moz-border-radius: 30px;border-radius:30px ;font-weight: 900;background: #f3f3f3;}


/* 테이블 스타일 */
.table-wrap {text-align: center;}
.table-wrap .middle-title h4 {display: inline-block; padding: 12px 20px 8px; background-color: #2c4a68; 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;color: #000;}
.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: #0cb2fb; 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;}
.photo-table table tbody{background: #fff;}

/* 숫자 리스트 */
.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: #2c4a68;}
.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: 'GmarketSansMedium'; 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: 6px 32px; margin: 0 auto 40px; border-radius: 40px; background: #00a99e; color: #fff; font-family: 'Noto Sans KR','Noto Sans KR'; font-weight: 700;}


/* 둥근 모서리를 가진 배경색 타이틀 */
.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) {
.middle-title .en-sub{font-size: 0.75em;}


/* 테이블 스타일 */
.table-wrap .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) {

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

/* 숫자 스타일 */
.num::before {margin: 10px auto 0;}
.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:425px) {

.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: 40px; height: 40px; 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{line-height: 1.7;}
.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; margin: 0 auto 20px;}


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


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

/* =================================================================================================================================== */
/* =========================================================== main-common =========================================================== */
/* =================================================================================================================================== */

main {overflow: hidden;}
.swiper-container{position: relative; width: 100%; margin: 0 auto;}
.swiper-button-prev, .swiper-button-next {margin: 0;}

.case-comparison {position: relative;}
.case-comparison .case {position: relative;}
.case-comparison .case-num {position: absolute; display: flex; align-items:center; top: 10px; left: 10px; width: 80px; height: 80px; border: 1px solid #fff; z-index: 1; background: rgba(0,0,0,0.6);}
.case-comparison .case-num p {width: 100%; color: #fff; text-align: center; white-space: pre-line; font-weight: 900;}
.case-comparison .case-img {text-align: center; border: 1px solid #727272;}
.case-comparison .case-img img {width: 100%;}
.case-comparison .case-exp {position: absolute; right: 20px; bottom: 20px;}
.case-comparison .case-exp p {color: #fff; font-weight: 700;}
.case-comparison .case-after {position: absolute; top: 0; left: 0; width: 100%; z-index: 0; opacity: 0;}
.case-comparison .case-after {-webkit-animation: fadeIn50 1s 0.3s forwards; animation: fadeIn50 1s 0.3s forwards;}
.case-comparison .case-after.move {-webkit-animation: none; animation: none;}

@-webkit-keyframes fadeIn50 {
    0% {opacity: 0;}
    to {opacity: 0.5;}
}
@keyframes fadeIn50 {
    0% {opacity: 0;}
    to {opacity: 0.5;}
}

.case-slider {padding: 20px 15px 0; display: flex; align-items: center; justify-content: space-between; width: 100%;}
.case-slider .txt {font-size: 18px; font-weight: 700; transform: skew(-0.1deg);}
.case-slider .prog-bar {width: 100%; display: flex; justify-content: center; position: relative;}
.case-slider .prog-bar:after {position: absolute; content: ""; top: 50%; left: 0; transform: translateY(-50%); width: 100%; height: 2px; background: #ededed; z-index: -1;}

.case-slider input[type=range] {-webkit-appearance: none; width: 100%; background: transparent;}
.case-slider input[type='range' i] {appearance: auto; cursor: default; color: -internal-light-dark(rgb(16, 16, 16), rgb(255, 255, 255)); padding: initial; border: initial; margin: 2px;}
.case-slider input[type='range'] {-webkit-appearance: none; width: 100%; background: transparent;}
.case-slider input[type='range']::-webkit-slider-thumb {-webkit-appearance: none; background: #fff; width: 44px; height: 44px; background: url("../img/main/range_arrow.png") center/cover no-repeat;}
.case-slider input[type='range']::-moz-range-thumb {background: #fff; width: 44px; height: 44px; background: url("../img/main/range_arrow.png") center/cover no-repeat;}
.case-slider input[type='range']:focus {outline: none;}
.case-slider input[type='range']::-ms-track {width: 100%; cursor: pointer; background: transparent; border-color: transparent; color: transparent;}

.case-caution ul {display: flex;}
.case-caution ul > li:first-child {margin-right: 5px;}
.case-caution ul > li:last-child {flex: 1;}

#gallery .swiper-container {width: 100%; margin: 0 auto;}
#gallery .swiper-slide-container {height: 100%; margin: 0 auto; display: flex; justify-content: center; align-items: center;}
#gallery .swiper-button-prev, #gallery .swiper-button-next {color: #fff; top: 50%; transform: translateY(-50%);}
.gallery-top {height: 80%; width: 100%;}
.gallery-thumbs {height: 20%; padding: 10px 0;}
.gallery-thumbs .swiper-slide {width: 20%; height: 100%; opacity: 0.4;}
.gallery-thumbs .swiper-slide-thumb-active {opacity: 1;}

/* 탭 메뉴 스타일 */
.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{padding-top: 100px;}
.dentist .tab-content {}
/* #tab-content2, #tab-content3, #tab-content4, #tab-content5 {display: none;} */
.dentist .tab-content > ul {display: flex; width: 100%;gap:50px;align-items: center;}
.dentist .tab-content > ul > li {width: 60%; position: relative;}
.dentist .tab-content > ul > li:first-child{width: 40%;text-align: center;}
.dentist .tab-content .tab-name {border-bottom: 2px dotted #ddd; margin-bottom: 20px; padding-bottom: 20px;}
.dentist .tab-content .tab-name > div {}
.dentist .tab-content .tab-name > div h3 { white-space: pre-line;font-weight: 700;}
.dentist .tab-content .tab-name > div span {padding: 0 5px; font-size: 0.5em; font-weight: 500; background: #0cb2fb; color: #fff;}
.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 > ul > li:first-child img {max-width:500px; width: 100%;}
.dentist .tab-content .disc-box-wrap{display: flex;}

#tab-content1{background: url(../img/main/doctor_01_bg.png) right bottom no-repeat;}
#tab-content2{background: url(../img/main/doctor_02_bg.png) right bottom no-repeat;}
.dentist .tab-content .disc-list {list-style-type: disc; margin-left: 20px;  }
.dentist .tab-content .disc-list li {line-height: 1.8;  font-family: 'Noto Sans KR','Noto Sans KR'; font-weight: 500;}





.case-slide-wrap {position: relative;}
.case-button-next,
.case-button-prev {top: 50%; transform: translateY(-50%); color: #727272; margin-top: 0;}
.case-button-next {right: -50px;}
.case-button-prev {left: -50px;}
.case-pagination {bottom: -40px !important;}
.case-pagination .swiper-pagination-bullet {width: 10px; height: 10px; background: #fff; opacity: 0.8; transition: all 0.5s ease-in-out; border: 1px solid #eee;}
.case-pagination .swiper-pagination-bullet-active { width: 25px; border-radius: 5px; background: #0cb2fb;}

.main-tit {position: relative; text-align: center; margin-bottom: 40px;}
.main-tit.white {color: #fff;}
.main-tit .sub-tit {margin-bottom: 5px; font-weight: 600;letter-spacing: 1px;}
.main-tit .tit {color: #000; font-family:'Noto Sans KR','Noto Sans KR'; font-weight: 800; transform: skew(-0.1deg);}
.main-tit.white .tit {color: #fff;}



/* ===================== Mobile size : 1700px ======================= */

@media screen and (max-width: 1700px){
	.main_promise_left{padding-left: 20px;padding-top: 100px;	}
}

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

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

.dentist .tab-content .tab-name p {display: inline-block;}
.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 > ul > li:first-child 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:first-child{width: 100%;background: #fbfbfb;}
.dentist .tab-content > ul > li:last-child{width: 100% ;margin: 20px 0 0 0;}

.dentist .tab-content .disc-box{display: block;}
.dentist .tab-content .disc-list {display: flex; flex-direction: column; align-items: flex-start; max-width:500px; margin-bottom: 20px; text-align: left;}


}


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

@media screen and (max-width: 1200px){
#content{padding-top: 71.7px;}

.case-slide-wrap {margin: 120px auto 0; padding-bottom: 50px;}
.case-pagination {bottom: 0 !important;}

.case-button-next,
.case-button-prev {top: -75px; transform: none; transition: all 0.3s ease-in-out;}
.case-button-next {right: 20px;}
.case-button-prev {left: auto;right: 90px;}
.case-button-next::after,
.case-button-prev::after {font-size: 35px;}
.case-button-next::before,
.case-button-prev::before {position: absolute;	content: ""; width: 55px; height: 55px; border: 1px solid; left: 50%; top: 50%; transform: translate(-50%, -50%);}




}


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

@media screen and (max-width: 1024px){
.dentist{padding-top: 50px;}



}

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

@media screen and (max-width: 900px){
.case-comparison .case-num {width: 60px; height: 60px;}
.case-comparison .case-num p {font-size: 14px; line-height: 1.3;}
}

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

@media screen and (max-width: 769px){
.dentist .tab-content .disc-box-wrap{flex-direction: column;}

.case-comparison > li:last-child {margin-top: 40px;}
.case-button-next {right: 15px;}
.case-button-prev {right: 80px;}
.case-button-next::after,
.case-button-prev::after {font-size: 30px;}
.case-button-next::before,
.case-button-prev::before {width: 50px; height: 50px;}
}

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

@media screen and (max-width: 600px) {
#gallery .swiper-button-prev:after,
#gallery .swiper-button-next:after {font-size: 30px;}

.dentist .tab-content .disc-list {margin-left: 20px;}

}

/* ===================== Mobile size : 425px ======================= */

@media screen and (max-width: 425px){
#content {padding-top: 66px;}

.case-slider {padding: 0 10px;}
.case-slider .txt {font-size: 14px;}
.case-slider .prog-bar {width: 100%;}
.case-comparison > li:last-child {margin-top: 20px;}

.dentist .tab-btn {margin: 10px auto 30px;}
.dentist .tab-content .tab-name > div h3 {font-size: 25px;}
.dentist .tab-content .tab-name p {font-size: 14px;}
.dentist .tab-content .disc-list {max-width: 260px;}
.dentist .tab-content .disc-box > p{background: #f3f3f3;padding: 10px;-webkit-border-radius: 13px;-moz-border-radius:13px;border-radius: 13px;}
.dentist .tab-content .disc-list li {font-size: 14px;}
.dentist .tab-content img {max-width: 250px;}


.case-slide-wrap {margin: 80px auto 0;}
.case-button-next,
.case-button-prev {top: -65px;}
.case-button-next {right: 10px;}
.case-button-prev {right: 60px;}
.case-button-next::after,
.case-button-prev::after {font-size: 20px;}
.case-button-next::before,
.case-button-prev::before {width: 40px; height: 40px;}

.main-tit {margin-bottom: 20px;}
}


/* =================================================================================================================================== */
/* =========================================================== main-common =========================================================== */
/* =================================================================================================================================== */


/* ==================================================================================================================================== */
/* =========================================================== 메인 슬라이드 영역 =========================================================== */
/* ==================================================================================================================================== */

.main-slide .swiper-slide .img {width: 100%; height: calc(var(--vh, 1vh) * 100 - 55px);}
.main-slide .slide1 .zoom {background: url(../img/main/slide_01.png) center/cover no-repeat;}
.main-slide .slide2 .zoom {background: url(../img/main/slide_02.png) center/cover no-repeat;}
.main-slide .slide3 .zoom {background: url(../img/main/slide_03.png) center/cover no-repeat;}
.main-slide .slide4 .zoom {background: url(../img/main/slide_04.png) center/cover no-repeat;}
.main-slide .slide5 .zoom {background: url(../img/main/slide_05.png) center/cover no-repeat;}
.main-slide .slide6 .zoom {background: url(../img/main/slide_06.png) center/cover no-repeat;}
.main-slide .swiper-slide .txt {position: absolute; display: flex; align-items: center; justify-content: center; left: 0; top: 0; width: 100%; height: 100%; color: #fff;}
.main-slide .swiper-slide .txt article {position: relative; top: 40px; text-align: center; opacity: 0; transition: all 1s ease-in-out; filter: drop-shadow(2px 4px 6px black);}
.main-slide .swiper-slide-active .txt article {top: 0; opacity: 1;}
.main-slide .swiper-slide .txt .logo {margin-bottom: 50px;}
.main-slide .swiper-slide .txt .tit {font-family: "GmarketSansBold";}
.main-slide .swiper-slide .txt .sub {white-space: pre-line; font-size: 1.2em; letter-spacing: 0.05em;margin-bottom: 20px;}
.main-slide .swiper-scrollbar.main-slide-scroll {left: 50%; width: 75%; background: rgba(255,255,255,0.4); transform: translateX(-50%); bottom: 80px;}
.main-slide .swiper-scrollbar.main-slide-scroll .swiper-scrollbar-drag {background: #fff;}

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

}

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

.main-slide .swiper-slide .img {height: 700px;}
.main-slide .swiper-slide .txt article {padding: 0 20px;}

}

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

}
/* ===================== Mobile size : 901px~ ======================= */

@media screen and (min-width:901px){
.main-slide .swiper-button-next {color: #fff; font-size: 65px; right: 30px; width: 50px; height: 100px;  background: rgba(255,255,255,0.1);}
.main-slide .swiper-button-prev {color: #fff; font-size: 65px; left: 30px; width: 50px; height: 100px; background: rgba(255,255,255,0.1);}

}

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

@media screen and (max-width:900px){
.main-slide .swiper-button-next {color: #fff; }
.main-slide .swiper-button-prev {color: #fff; }
.main-slide .swiper-slide .txt .sub{font-size: 1em;}

}


/* ==================================================================================================================================== */
/* =========================================================== 메인 슬라이드 영역 =========================================================== */
/* ==================================================================================================================================== */


/* ==================================================================================================================================== */
/* ============================================================ area1 스타일 ============================================================ */
/* ==================================================================================================================================== */


/* 그리드 */
.about-grid{
  display:grid; gap:24px; grid-template-columns:1fr;
}
@media (min-width:720px){ .about-grid{ grid-template-columns:1fr 1fr; } }
@media (min-width:1040px){ .about-grid{ grid-template-columns:1fr 1fr 1fr; } }

/* 카드 */
.about-card{
  position:relative; display:block; overflow:hidden; 
  min-height:280px; box-shadow:0 10px 30px rgba(0,0,0,.12); color:#fff; text-decoration:none;
}
@supports (aspect-ratio:16/10){ .about-card{ aspect-ratio:16/10; min-height:auto; } }

.about-card__bg{
  position:absolute; inset:0; background-size:cover; background-position:center;
  transition:transform .6s ease, filter .6s ease;
}


/* 카드별 배경 이미지 */
.about-card01 .about-card__bg {
  background: url(../img/main/area1_01.png) center/cover no-repeat;
}
.about-card02 .about-card__bg {
  background: url(../img/main/area1_02.png) center/cover no-repeat;
}
.about-card03 .about-card__bg {
  background: url(../img/main/area1_03.png) center/cover no-repeat;
}


/* 오버레이: 항상 존재(투명), 그라데이션은 ::before로 제어 */
.about-card__overlay{
  position:absolute; inset:0; padding:26px; display:grid; align-content:end;
}
.about-card__overlay::before{
  content:""; position:absolute; inset:0; z-index:0;
  background:linear-gradient(to bottom, rgba(21,53,153,.55) 10%, rgba(0,192,250,.55) 100%);
  opacity:0; transition:opacity .35s ease;
}

/* 텍스트 래퍼: 레이어링 담당 */
.about-card__copy{
  position:relative; z-index:1; display:grid; gap:6px;
}

/* 타이틀: 기본 표시, hover 시 살짝 위로 */
.about-card__title{
  font-size:22px; font-weight:900;
  transform:translateY(0); transition:transform .35s ease;
}

/* 서브 문구: 기본 접힘(max-height 트릭) + 페이드/슬라이드 */
.about-card__text{
  line-height:1.7; color:rgba(255,255,255,.95);
  white-space: pre-line;
  max-height:0; overflow:hidden;
  opacity:0; transform:translateY(8px);
  transition:max-height .35s ease, opacity .35s ease, transform .35s ease;
}

/* Hover 인터랙션 */
.about-card:hover .about-card__bg,
.about-card:focus-visible .about-card__bg{
  transform:scale(1.06); filter:brightness(.85) saturate(1.05);
}
.about-card:hover .about-card__overlay::before,
.about-card:focus-visible .about-card__overlay::before{
  opacity:1; /* 그라데이션 켜기 */
}
.about-card:hover .about-card__title,
.about-card:focus-visible .about-card__title{
  transform:translateY(-4px); /* 타이틀 위로 */
}
.about-card:hover .about-card__text,
.about-card:focus-visible .about-card__text{
  max-height:6em; /* 서브 펼침 높이(2~3줄 가정, 필요 시 조정) */
  opacity:1; transform:translateY(0);
}



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

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

}


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

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

}


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

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

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

}

/* ===================== Mobile size : 425px ======================= */

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

}


/* ==================================================================================================================================== */
/* ============================================================ area1 스타일 ============================================================ */
/* ==================================================================================================================================== */


/* ==================================================================================================================================== */
/* ============================================================ area2 스타일 ============================================================ */
/* ==================================================================================================================================== */


.area2 .bg-animation{ background: url(../img/main/area2_01.png) center/cover no-repeat;}

/* 원장 직함 span */
.dentist .tab-content .tab-name > div h3 span {
    font-size: 0.55em;
    font-weight: 500;
    background: none;
    color: #666;
    padding: 0;
    vertical-align: middle;
}

/* 원장 구분 여백 */
#tab-content1 {
    padding-bottom: 60px;
    border-bottom: 1px solid #ddd;
    margin-bottom: 60px;
}

/* 학술활동 등 소제목 */
.dentist .tab-content .disc-list li.disc-sub-title {
    list-style: none;
    font-weight: 800;
    font-size: 1.05em;
    margin-bottom: 4px;
    padding: 4px 10px;
    background: #2c4a68;
    color: #fff;
    display: inline-block;
}

/* disc-box-wrap 간격 */
.dentist .tab-content .disc-box-wrap + .disc-box-wrap {
    margin-top: 20px;
}

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

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

}

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

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

}

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

@media screen and (max-width: 1024px) {
    #tab-content1 {
        padding-bottom: 40px;
        margin-bottom: 40px;
    }
}

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

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

}

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

@media screen and (max-width: 769px) {
    #tab-content1 {
        padding-bottom: 30px;
        margin-bottom: 30px;
    }
}

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

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

}

/* ===================== Mobile size : 425px ======================= */

@media screen and (max-width: 425px) {
    #tab-content1 {
        padding-bottom: 20px;
        margin-bottom: 20px;
    }
    .dentist .tab-content .tab-name > div h3 span {
        display: block;
        font-size: 0.6em;
        margin-top: 4px;
    }
}


/* ==================================================================================================================================== */
/* ============================================================ area2 스타일 ============================================================ */
/* ==================================================================================================================================== */


/* ==================================================================================================================================== */
/* ============================================================ area3 스타일 ============================================================ */
/* ==================================================================================================================================== */

.area3-bg {background: url(../img/main/area3_01.png) no-repeat center/cover;}
.area3{color: #fff;}
.area3 .naver-img {max-width: 500px; margin: 40px auto 0;}
.naver-adv-list {display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; margin: 60px 0 30px;}
.naver-adv-list li {width: calc(25% - 10px);background: #111; padding: 20px; border-radius: 13px; border: 3px solid #aaa;color: #fff; text-align: center; font-weight: 600; min-width: 120px;}
.naver-adv-list li span {font-size: 16px; font-weight: 400;}
.naver-compare {padding: 10px;display: flex; justify-content: center; gap: 10px;margin-top: 30px;}
.naver-compare .box {text-align: center;}
.naver-compare .box img {width: 100%; max-width: 400px;}
.naver-compare .gray {background: #555; color: #fff; padding: 10px; font-weight: 500;}
.naver-compare .blue {background: #789dbb; color: #fff; padding: 10px; font-weight: 500;}

.center-label{color: #000;}

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

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

}


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

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

}


/* ===================== 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) {
  .naver-adv-list li {min-width: 45%; padding: 15px;}
  .naver-compare .box img {max-width: 100%;}
  .area3-bg {padding: 60px 0 40px;}
}

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

@media screen and (max-width: 600px) {
.center-label{width: 90%;background: #000;color: #fff;margin: auto;padding: 10px;}
}

/* ===================== Mobile size : 425px ======================= */

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


}


/* ==================================================================================================================================== */
/* ============================================================ area3 스타일 ============================================================ */
/* ==================================================================================================================================== */

/* area3 배경 */
.area3-bg {
    background: url(../img/main/area3_01.png) no-repeat center/cover;
}
.area3 { color: #fff; }

/* 시뮬레이션 이미지 2단 그리드 */
.navi-img-wrap { margin: 40px auto; }
.navi-img-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
.navi-img-item img {
    width: 100%;
    height: auto;
    display: block;
    border: 1px solid rgba(255,255,255,0.15);
}

/* 원형 특장점 리스트 */
.navi-circle-list {
    display: flex;
    justify-content: center;
    gap: 24px;
    flex-wrap: wrap;
    margin: 60px 0 20px;
    padding: 0;
    list-style: none;
}
.navi-circle-list li {
    width: calc(25% - 24px);
    min-width: 160px;
}
.navi-circle {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.navi-circle--dark  { background: #1e3560; }
.navi-circle--light { background: #b5a48a; }

.navi-circle h5 {
    color: #fff;
    font-weight: 500;
    line-height: 1.5;
    white-space: pre-line;
    transform: skew(-0.1deg);
}
.navi-circle h5 b {
    font-weight: 900 !important;
}

/* ===================== Mobile size : 769px ======================= */
@media screen and (max-width: 769px) {
    .navi-img-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
    .navi-circle-list { gap: 16px; margin: 40px 0 10px; }
    .navi-circle-list li { min-width: 130px; }
}

/* ===================== Mobile size : 425px ======================= */
@media screen and (max-width: 425px) {
    .navi-img-grid { grid-template-columns: 1fr; }
    .navi-circle-list { gap: 12px; }
    .navi-circle-list li { width: calc(50% - 12px); min-width: 120px; }
    .navi-circle h5 { font-size: 16px; }
}

/* 비포 애프터 슬라이드 */

.before-after-slide{justify-content: space-between; display: flex; width: 100%; flex-wrap:wrap;}
.before-after-slide img{width: 100%;}

.case-img > div:after{content:"";background: url(../img/watermark.svg) center / 100% no-repeat; position: absolute;width: 200px;height: 50px;    left: 50%; bottom: 20%;margin-bottom: -25px;margin-left: -100px;}

.case-area{width: calc(50% - 2%); }
.case-wrap{position: relative;}
.case-img{text-align: center;}
.case-num {left: 3%; top: 5%; text-transform: uppercase; border: 2px solid #c6e8ff; padding: 0.8rem 0.4rem; line-height: 1.4; color: #c6e8ff; width: 4.25rem; height: 4.25rem; position: absolute; z-index: 1; text-align: center;}
.case-logo{bottom: 6%; left: 4%; opacity: .4; position: absolute; z-index: 1;}
.logo-w{width: 10.8rem; height: 6rem; background: url(img/logo.png)50%/100% no-repeat;}
.ir{text-indent: 100%; white-space: nowrap; overflow: hidden;}
img{max-width: 100%; vertical-align: top;}
.case-after {position: absolute; top: 0; left: 0; width: 100%; z-index: 0; opacity: 0;}
.on .case-after {-webkit-animation: fadeIn50 1s 0.3s forwards; animation: fadeIn50 1s 0.3s forwards;}
.on .case-after.move {-webkit-animation: none; animation: none;}
@-webkit-keyframes fadeIn50 {
    0% {opacity: 0;}
    to {opacity: 0.5;}
}
@keyframes fadeIn50 {
    0% {opacity: 0;}
    to {opacity: 0.5;}
}
.case-desc-txt {right: 4%; bottom: 6%; color: #fff; font-weight: 300; position: absolute; z-index: 1;}
.case-slider { padding: 5% 0; align-items: center; justify-content: space-between; display: flex;}
.prog-bar{width: 100%; display: flex; justify-content: center; position: relative;}
input[type=range] {-webkit-appearance: none; width: 100%; background: transparent; z-index: 2;}
input[type="range" i] {appearance: auto; cursor: default; color: -internal-light-dark(rgb(16, 16, 16), rgb(255, 255, 255)); padding: initial; border: initial; margin: 2px;}
.prog-bar:after {position: absolute; content: ""; top: 48%; left: 0; width: 100%; height: 2px; background: #ededed;}
::-webkit-scrollbar {width: 0.8rem;}
::-webkit-scrollbar-thumb {background: hsla(0,0%,77.3%,.5);}
input[type='range'] {-webkit-appearance: none; width: 100%; background: transparent;}
input[type='range']::-webkit-slider-thumb {-webkit-appearance: none; background: #fff; -webkit-border-radius: 50%;-moz-border-radius: 50%;border-radius: 50%; width: 2.75rem; height: 2.75rem;background: url("../img/sub/range_arrow.png") 0 0/100% no-repeat;}
input[type='range']::-moz-range-thumb {background: #fff; -webkit-border-radius: 50%;-moz-border-radius: 50%;border-radius: 50%; width: 2.75rem; height: 2.75rem; background: url("../img/sub/range_arrow.png") 0 0/100% no-repeat;}
input[type='range']:focus {outline: none;}
input[type='range']::-ms-track {width: 100%; cursor: pointer; background: transparent; border-color: transparent; color: transparent;}


/* ===== Before/After Split Slider — Final ===== */

/* 충돌 리셋: 과거 애니메이션/마스크/페이드 제거 */
.on .case-after, .case-after.move { animation: none !important; }
.case-img::after { content: none !important; }                 /* 예전 중앙선 제거 */


/* 레이아웃: before로 높이 확보, after는 오버레이 */
.case-wrap{ position: relative; }
.case-img{ position: relative; overflow: hidden; --pos: 50%; } /* 중앙선 위치(%) */
.case-img .case-before{ position: relative; z-index: 1; }
.case-img .case-after{ position: absolute; inset: 0; z-index: 2; opacity:1 !important; }

/* 핵심: after를 중앙선(--pos) 기준으로 오른쪽만 보이게(와이프) */
.case-img .case-after{
  -webkit-mask-image: linear-gradient(90deg, transparent 0 var(--pos), #000 var(--pos) 100%);
          mask-image: linear-gradient(90deg, transparent 0 var(--pos), #000 var(--pos) 100%);
  transition: -webkit-mask-image .25s ease, mask-image .25s ease;
}

/* 중앙 분할선 */
.case-img::before{
  content:""; position:absolute; top:0; bottom:0; left: var(--pos);
  width:2px; background: rgba(255,255,255,.9);
  box-shadow: 0 0 0 1px rgba(0,0,0,.25);
  z-index: 3; pointer-events:none;
  transition: left .25s ease, opacity .25s ease;
}

/* 워터마크가 after 위로 올라오도록 (필요 시) */
.case-img > div::after{ z-index: 4; }


/* ==== Split Slider 최종 오버라이드 ==== */
.on .case-after, .case-after.move { animation:none !important; } /* 예전 0.5 페이드 제거 */
.case-after { opacity:1 !important; }                            /* 항상 보이게(마스크로 분할) */

.case-wrap{ position:relative; }
.case-img{ position:relative; overflow:hidden; --pos:50%; }
.case-img .case-before{ position:relative; z-index:1; }
.case-img .case-after{ position:absolute; inset:0; z-index:2; }

/* 핵심: 마스크를 강제로 켬(!important) */
.case-img .case-after{
  -webkit-mask-image: linear-gradient(90deg, transparent 0 var(--pos), #000 var(--pos) 100%) !important;
          mask-image: linear-gradient(90deg, transparent 0 var(--pos), #000 var(--pos) 100%) !important;
  transition: -webkit-mask-image .25s ease, mask-image .25s ease;
}

/* ===== BEFORE/AFTER Split (동기화 최종본) ===== */

/* 과거 규칙 무력화 */
.on .case-after, .case-after.move { animation: none !important; }
.case-img::after { content: none !important; } /* 예전 중앙선 제거 */
.case-img .case-before, .case-img .case-after {
  -webkit-mask: none !important; mask: none !important;
  clip-path: none; /* 아래에서 다시 지정 */
}

/* 레이아웃 */
.case-wrap{ position: relative; }
.case-img{ position: relative; overflow: hidden; --pos:50%; }
.case-img .case-before{ position: relative; z-index: 1; }
.case-img .case-after { position: absolute; inset: 0; z-index: 2; opacity:1 !important; }

/* after를 '오른쪽'에서부터 보여주기 (분할선 = --pos) */
/* clip-path: inset( top right bottom left );  right = 100% - pos  */
.case-img .case-after{
  clip-path: inset(0 0 0 var(--pos)) !important; /* ← 방향 수정 */
  transition: none;
}

/* 중앙 분할선 (분할선 위치 = --pos) */
.case-img::before{
  content:""; position:absolute; top:0; bottom:0; left: var(--pos);
  width:2px; background: rgba(255,255,255,.9);
  box-shadow: 0 0 0 1px rgba(0,0,0,.25);
  z-index: 3; pointer-events:none;
  transition: none; /* 이미지와 동일 타이밍 */
}

/* 워터마크 레이어 (필요 시만) */
.case-img > div::after{ z-index: 4; }




/* 비포 애프터 슬라이드 */

/* ==================================================================================================================================== */
/* ============================================================ area4 스타일 ============================================================ */
/* ==================================================================================================================================== */

/* ==================================================================================================================================== */
/* ============================================================ 소아진료 섹션 ============================================================ */
/* ==================================================================================================================================== */

/* 히어로 레이아웃 */
.pedo-section { padding-top: 0; }

.pedo-hero {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 480px;
	background: url(../img/main/pedo_hero.png) right / cover no-repeat;
}

/* 좌: 텍스트 */
.pedo-hero__copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 80px 60px 80px 120px;
}
.pedo-hero__eyebrow {
    font-size: 15px;
    color: #888;
    margin-bottom: 14px;
    letter-spacing: 0.03em;
}
.pedo-hero__title {
    font-size: 36px;
    font-weight: 600;
    line-height: 1.3;
    color: #111;
    margin-bottom: 18px;
}
.pedo-hero__title b { color: #1e3560; }

.pedo-hero__bar {
    width: 40px;
    height: 4px;
    background: #1e3560;
    margin-bottom: 24px;
}
.pedo-hero__desc {
    font-size: 18px;
    color: #333;
    white-space: pre-line;
    line-height: 1.8;
}


/* 진료 과목 아이콘 리스트 */
.pedo-icon-list {
    display: flex;
    justify-content: center;
    gap: 30px;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 20px 0 60px;
}
.pedo-icon-list li {
    text-align: center;
    width: calc(20% - 30px);
    min-width: 120px;
}
.pedo-icon-circle {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    background: #1e3560;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    transition: background 0.3s ease;
}
.pedo-icon-circle:hover { background: #2c4a80; }
.pedo-icon-circle img {
    width: 55%;
    height: auto;
    filter: brightness(0) invert(1);
}
.pedo-icon-list li p {
    font-size: 20px;
    font-weight: 600;
    color: #222;
    white-space: pre-line;
    line-height: 1.6;
	font-family: "GmarketSansBold";
}

/* ===================== 1200px ======================= */
@media screen and (max-width: 1200px) {
    .pedo-hero__copy { padding: 60px 40px; }
    .pedo-icon-circle { width: 110px; height: 110px; }
}

/* ===================== 1024px ======================= */
@media screen and (max-width: 1024px) {
    .pedo-hero__title { font-size: 30px; }
	.case-area{width: 100%; }
}

/* ===================== 769px ======================= */
@media screen and (max-width: 769px) {
    .pedo-hero {
        grid-template-columns: 1fr;
    }
    .pedo-hero__visual {
        min-height: 300px;
        order: -1;
    }
    .pedo-hero__copy {
        padding: 40px 20px;
        text-align: center;
		background: rgba(255, 255, 255, 0.8);
    }
    .pedo-hero__bar { margin: 0 auto 20px; }
    .pedo-icon-list li { width: calc(33% - 20px); }
}

/* ===================== 425px ======================= */
@media screen and (max-width: 425px) {
    .pedo-hero__title { font-size: 24px; }
    .pedo-hero__desc { font-size: 15px; }
    .pedo-hero__visual { min-height: 220px; }
    .pedo-icon-list { gap: 16px; }
    .pedo-icon-list li { width: calc(50% - 16px); min-width: 100px; }
    .pedo-icon-circle { width: 90px; height: 90px; }
    .pedo-icon-list li p { font-size: 14px; }
}

/* ==================================================================================================================================== */
/* ============================================================ 소아진료 섹션 ============================================================ */
/* ==================================================================================================================================== */


/* ==================================================================================================================================== */
/* ============================================================ area4 스타일 ============================================================ */
/* ==================================================================================================================================== */


/* ==================================================================================================================================== */
/* ============================================================ area5 스타일 ============================================================ */
/* ==================================================================================================================================== */
/* ==================================================================================================================================== */
/* ============================================================ 웃음가스 섹션 ============================================================ */
/* ==================================================================================================================================== */

.laughing-gas-section { padding-top: 0; }

/* 히어로: 배경 이미지 전체 */
.laughing-hero {
    background: url(../img/main/laughing_hero.png) right center/cover no-repeat;
    min-height: 480px;
    display: flex;
    align-items: center;
}

/* 좌: 텍스트 */
.laughing-hero__copy {
    width: 50%;
    padding: 80px 60px 80px 120px;
}
.laughing-hero__eyebrow {
    font-size: 15px;
    color: #888;
    margin-bottom: 14px;
    letter-spacing: 0.03em;
}
.laughing-hero__title {
    font-size: 36px;
    font-weight: 600;
    line-height: 1.3;
    color: #111;
    margin-bottom: 18px;
}
.laughing-hero__title b { color: #1e3560; }

.laughing-hero__bar {
    width: 40px;
    height: 4px;
    background: #1e3560;
    margin-bottom: 24px;
}
.laughing-hero__desc {
    font-size: 18px;
    color: #333;
    white-space: pre-line;
    line-height: 1.9;
}

/* 체크리스트 영역 */
.laughing-check-wrap {
    padding: 80px 20px;
    background: #f2e7c9;
}
.laughing-check-wrap .middle-title { margin-bottom: 40px; }

.laughing-check-list {
    list-style: none;
    padding: 0;
    max-width: 700px;
    margin: 0 auto;
}
.laughing-check-list li {
    display: flex;
    align-items: center;
    gap: 20px;
    background: #fff;
    border: 2px solid #6b5d54;
    border-radius: 8px;
    padding: 22px 28px;
    margin-bottom: 16px;
}
.laughing-check-list li:last-child { margin-bottom: 0; }

/* 체크 아이콘 */
.laughing-check-icon {
    width: 44px;
    height: 44px;
}

/* ===================== 1200px ======================= */
@media screen and (max-width: 1200px) {
    .laughing-hero__copy { padding: 60px 20px; }
}

/* ===================== 1024px ======================= */
@media screen and (max-width: 1024px) {
    .laughing-hero__title { font-size: 30px; }
    .laughing-hero__copy { width: 60%; }
    .laughing-check-list li p { font-size: 18px; }
}

/* ===================== 769px ======================= */
@media screen and (max-width: 769px) {
    .laughing-hero {
        background-position: top right;
        min-height: 360px;
        align-items: flex-end;
    }
    .laughing-hero__copy {
        width: 100%;
        background: rgba(255, 255, 255, 0.8);
    }
    .laughing-check-wrap { padding: 50px 20px; }
    .laughing-check-list li p { font-size: 17px; }
}

/* ===================== 425px ======================= */
@media screen and (max-width: 425px) {
    .laughing-hero { min-height: 280px; }
    .laughing-hero__title { font-size: 24px; }
    .laughing-hero__desc { font-size: 15px; }
    .laughing-check-wrap { padding: 40px 15px; }
    .laughing-check-list li { padding: 16px 18px; gap: 14px; }
    .laughing-check-icon { width: 36px; height: 36px; }
    .laughing-check-list li p { font-size: 15px; }
}

/* ==================================================================================================================================== */
/* ============================================================ 웃음가스 섹션 ============================================================ */
/* ==================================================================================================================================== */
/* ==================================================================================================================================== */
/* ============================================================ area5 스타일 ============================================================ */
/* ==================================================================================================================================== */

/* ==================================================================================================================================== */
/* ============================================================ 진료과목 탭 섹션 ============================================================ */
/* ==================================================================================================================================== */

.treatment-tab-section { color: #fff; padding-bottom: 120px; }
.treatment-tab-bg { background: url(../img/main/area6_bg.png) center/cover no-repeat; }

/* 탭 버튼 */
.treat-tab-btn {
    display: flex;
    flex-wrap: wrap;
	justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0 0 40px;
    border-bottom: 2px solid rgba(255,255,255,0.2);
}
.treat-tab-btn li {
    padding: 14px 28px;
    font-size: 17px;
    font-weight: 600;
    color: rgba(255,255,255,0.5);
    cursor: pointer;
    border-bottom: 3px solid transparent;
    margin-bottom: -2px;
    transition: all 0.3s ease;
    white-space: nowrap;
}
.treat-tab-btn li:hover { color: #fff; }
.treat-tab-btn li.active {
    color: #fff;
    border-bottom: 3px solid #9fbfd6;
}

/* 탭 콘텐츠 */
.treat-tab-content {
    display: none;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
}
.treat-tab-content.active { display: grid; }

/* 이미지 */
.treat-tab-img img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 8px;
}

/* 텍스트 */
.treat-tab-copy h4 {
    font-size: 35px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #fff;
}
.treat-tab-copy p {
    font-size: 17px;
    color: rgba(255,255,255,0.85);
    white-space: pre-line;
    line-height: 1.9;
    margin-bottom: 28px;
}

/* 태그 리스트 */
.treat-tag-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    list-style: none;
    padding: 0;
}
.treat-tag-list li {
    padding: 8px 20px;
    border: 1px solid rgba(255,255,255,0.4);
    border-radius: 30px;
    font-size: 15px;
    color: rgba(255,255,255,0.85);
    font-weight: 500;
    transition: all 0.3s ease;
}
.treat-tag-list li:hover {
    background: rgba(255,255,255,0.15);
    border-color: #fff;
    color: #fff;
}

/* ===================== 1024px ======================= */
@media screen and (max-width: 1024px) {
    .treat-tab-copy h4 { font-size: 28px; }
    .treat-tab-btn li { padding: 12px 18px; font-size: 15px; }
}

/* ===================== 769px ======================= */
@media screen and (max-width: 769px) {
    .treatment-tab-section { padding-bottom: 60px; }
    .treat-tab-btn {
        gap: 0;
        border-bottom: none;
        border: 1px solid rgba(255,255,255,0.2);
        border-radius: 8px;
        overflow: hidden;
        margin-bottom: 30px;
    }
    .treat-tab-btn li {
        width: 33.33%;
        text-align: center;
        border-bottom: 1px solid rgba(255,255,255,0.2);
        border-right: 1px solid rgba(255,255,255,0.2);
        margin-bottom: 0;
        padding: 12px 8px;
        font-size: 14px;
    }
    .treat-tab-btn li.active {
        background: rgba(255,255,255,0.15);
        border-bottom: 1px solid rgba(255,255,255,0.2);
        border-color: rgba(255,255,255,0.2);
    }
    .treat-tab-content.active {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    .treat-tab-copy h4 { font-size: 26px; margin-bottom: 14px; }
}

/* ===================== 425px ======================= */
@media screen and (max-width: 425px) {
    .treat-tab-btn li {
        width: 33.33%;
        font-size: 13px;
        padding: 10px 4px;
    }
    .treat-tab-copy h4 { font-size: 22px; }
    .treat-tab-copy p { font-size: 15px; }
    .treat-tag-list li { font-size: 13px; padding: 6px 14px; }
}

/* ==================================================================================================================================== */
/* ============================================================ 진료과목 탭 섹션 ============================================================ */
/* ==================================================================================================================================== */


/* ==================================================================================================================================== */
/* ============================================================ area6 스타일 ============================================================ */
/* ==================================================================================================================================== */

.area6 .info .info-box {
    width: calc(50% - 10px);
    margin-right: 10px;
    padding: 40px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
}

/* 소제목 */
.area6 .info .tit {
    text-align: left;
    margin-top: 30px;
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid #1e3560;
}
.area6 .info .tit:first-child { margin-top: 0; }
.area6 .info .tit h5 {
    font-weight: 700;
    color: #1e3560;
}

/* 전화번호 소제목 */
.area6 .info .tit.tel { text-align: center; border-bottom: none; margin-top: 24px; }
.area6 .info .tit.tel h5 { background: #1e3560; color: #fff; padding: 14px; border-radius: 8px; }
.area6 .info .tit.tel h5 a { color: #fff; font-weight: 700; margin-left: 8px; }

/* 주소 */
.area6 .address ul {
    display: flex;
    align-items: flex-start;
    text-align: left;
    margin-bottom: 6px;
}
.area6 .address ul:last-child { margin-bottom: 0; }
.area6 .address ul li:first-child {
    margin-right: 8px;
    white-space: nowrap;
    font-weight: 700;
}
.area6 .address ul li p { font-size: 24px; }

/* 진료시간 */
.area6 .time {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.area6 .time > li > ul {
    display: flex;
    align-items: center;
    text-align: left;
}
.area6 .time > li > ul > li:first-child {
    width: 110px;
    text-align: justify;
    text-align-last: justify;
    margin-right: 30px;
    flex-shrink: 0;
    position: relative;
}
.area6 .time > li > ul > li h6 {
    font-weight: 500;
    color: #222;
    transform: skew(-0.1deg);
}
.area6 .time > li > ul > li:last-child {
    position: relative;
}

/* 야간진료 뱃지 — 월/수 (1번째 li) */
.area6 .time > li:nth-child(1) ul li h6 { font-weight: 900; }
.area6 .time > li:nth-child(1) > ul > li:last-child::before {
    content: "야간진료";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -80px;
    background: #1e3560;
    color: #fff;
    font-size: 13px;
    font-weight: 500;
    border-radius: 15px;
    padding: 2px 10px;
    white-space: nowrap;
}

/* 토요일 뱃지 — 4번째 li */
.area6 .time > li:nth-child(4) ul li h6 { font-weight: 900; }
.area6 .time > li:nth-child(4) > ul > li:last-child::before {
    content: "점심시간X";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -80px;
    background: #333;
    color: #fff;
    font-size: 13px;
    font-weight: 500;
    border-radius: 15px;
    padding: 2px 10px;
    white-space: nowrap;
}

/* 안내 문구 */
.area6 .notice p {
    text-align: left;
    font-weight: 500;
    color: #888;
    font-size: 14px;
    white-space: pre-line;
}

/* 네이버/카카오 버튼 */
.area6 .call { margin-top: 16px; }
.area6 .call ul { gap: 10px; }
.area6 .call ul li { width: calc(50% - 5px); }
.area6 .call ul.flex a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 10px;
    border-radius: 8px;
    background: #03c75a;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    transition: opacity 0.2s ease;
}
.area6 .call ul.flex a:hover { opacity: 0.85; }
.area6 .call ul.flex a img { width: 28px; height: auto; margin: 0; }
.area6 .call ul.flex > li:nth-child(2) a {
    background: #ffe812;
    color: #333;
}

/* 지도 영역 */
.area6 .block-2:last-child { padding-left: 10px; }
.area6 .root_daum_roughmap { width: 100% !important; }

/* ==================================================================================================================================== */
/* ===================== 1200px ======================= */
@media screen and (max-width: 1200px) {
    .area6 .inner { padding: 0; }
    .area6 .info .info-box { padding: 30px 20px; }
    .area6 .info > ul.flex > li {
        width: 100%;
        margin-right: 0;
        margin: 0 10px;
    }
    .area6 .block-2:last-child { padding-left: 0; margin-top: 20px; }
}

/* ===================== 1024px ======================= */
@media screen and (max-width: 1024px) {
    .area6 .time > li > ul > li:first-child { width: 95px; }
}

/* ===================== 600px ======================= */
@media screen and (max-width: 600px) {
    .area6 .address ul { display: block; text-align: center; margin-bottom: 0px; }
    .area6 .address ul li:first-child { margin-right: 0; }
    .area6 .info .tit { text-align: center;margin-bottom: 0; padding-bottom: 0;}
    .area6 .call ul li { margin-right: 0; }
	.area6 .call{margin-top: 10px;}
    .area6 .call ul.flex > li { width: 100%; margin-bottom: 0px; }
    .area6 .call ul.flex > li:last-child { margin-bottom: 0; }
    .area6 .info .tit h5 {
        background: #eee;
        color: #1e3560;
        padding: 10px;
        border-radius: 5px;
    }
    .area6 .info .tit.tel h5 { background: #1e3560; color: #fff; }
    .area6 .time > li > ul { justify-content: center; }
    .area6 .time > li > ul > li:first-child { margin-right: 16px; }
}

/* ===================== 500px ======================= */
@media screen and (max-width: 500px) {
    .area6 .time > li:nth-child(1) > ul > li:last-child::before {
        content: "야간";
        right: -48px;
        top: 0;
        transform: none;
    }
    .area6 .time > li:nth-child(4) > ul > li:last-child::before {
        content: "주말";
        right: -48px;
        top: 0;
        transform: none;
    }
}

/* ===================== 425px ======================= */
@media screen and (max-width: 425px) {
    .area6 .info .info-box { padding: 20px 15px; }
    .area6 .time > li > ul > li:first-child { width: 80px; }
    .area6 .address ul li p { font-size: 15px; }
    .area6 .call ul.flex a { font-size: 14px; }
}

/* ===================== 375px ======================= */
@media screen and (max-width: 375px) {
    .area6 .time > li:nth-child(1) > ul > li:last-child::before,
    .area6 .time > li:nth-child(4) > ul > li:last-child::before { display: none; }
    .area6 .time > li:nth-child(1) ul { background: #1e3560; padding: 4px 8px; border-radius: 4px; }
    .area6 .time > li:nth-child(4) ul { background: #1e3560; padding: 4px 8px; border-radius: 4px; }
    .area6 .time > li:nth-child(1) ul li h6,
    .area6 .time > li:nth-child(4) ul li h6 { color: #9fbfd6; }
}

/* ==================================================================================================================================== */
/* ============================================================ area6 스타일 ============================================================ */
/* ==================================================================================================================================== */


/* ==================================================================================================================================== */
/* ============================================================ area8 스타일 ============================================================ */
/* ==================================================================================================================================== */


.special_bg6{padding: 100px 50px;background: url(../img/custom/bg20.png) left /cover no-repeat;}


.area8-2 .tit{font-weight: 700;color: #000;}

.treatment-area1 ul {display: flex; flex-wrap: wrap; justify-content: center; gap: 10px;}
.treatment-area1 ul > li {position: relative; width: calc(50% - 10px); height: 350px; background: url(../img/custom/main_83.png) center/cover no-repeat;
	transition-property: width, background-position; /* 어떤 css 프로퍼티를 transition할지 지정 */
    transition-duration: 2s, 2s; /* width와 bg-color가 2초동안 변화 */
}
.treatment-area1 ul .txt {position: absolute; display: flex; justify-content: center; align-items: flex-end; left: 0; top: 0; width: 100%; height: 100%; color: #fff;}
.treatment-area1 ul .txt > div {margin-bottom: 40px; text-align: center; filter: drop-shadow(2px 4px 6px black);}
.treatment-area1 ul .txt h3 {font-family: 'NanumSquare','Noto Sans KR'; margin-bottom: 10px;}
.treatment-area1 ul .txt p {white-space: pre-line;}
.treatment-area1 ul > li:nth-child(2) {background: url(../img/custom/main_84.png) center/cover no-repeat;}
.treatment-area1 ul > li:nth-child(3) {background: url(../img/custom/main_85.png) center/cover no-repeat;}
.treatment-area1 ul > li:nth-child(4) {background: url(../img/custom/main_86.png) center/cover no-repeat;}
.treatment-area1 ul > li:hover{background-position: bottom;}

.eq-slide {padding-bottom: 50px;}
.eq-slide .tit{font-weight: 700;margin-bottom: 10px;margin-top: 10px;}
.eq-slide .tit span{display: inline-block; font-size: 0.75em;margin-left: 5px;color: #999;}
.eq-slide .sub{white-space: pre-line;}
.eq-slide .swiper-scrollbar-drag{background: #000;}
.eq-slide .swiper-scrollbar{height: 10px;}

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

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

}


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

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

}


/* ===================== 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) {
.special_bg6{padding: 50px 10px;background: #f7f7f7;text-align: center;color: #000;}

.area8-1 > div:nth-child(2){padding: 30px 0;} 

.treatment-area1 ul > li {height: 300px;}
.treatment-area1 ul .txt > div {margin-bottom: 20px;}
}

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

@media screen and (max-width: 600px) {
.treatment-area1 ul > li {width: 100%;}

.eq-slide .txt{text-align: center;}
.eq-slide .img img{width: 100%;}
}

/* ===================== Mobile size : 425px ======================= */

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

}


/* ==================================================================================================================================== */
/* ============================================================ area8 스타일 ============================================================ */
/* ==================================================================================================================================== */

