/*AOS관련 -> 모바일에서는 애니메이션 효과가 안나타나게 선언 후, 그로인해 화면이 안나오는 문제 해결을 위한 css 추가*/
@media screen and (max-width: 767px) { 
  [data-aos] {
    pointer-events: auto !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

/* 메인 비주얼 슬라이드 */
.idx_vis{ position: relative;}
.idx_vis .slider-wrap{ width: 100%;}
.idx_vis .slider-wrap .mvisual{ width: 100%; height: 100vh; background-position: center center; background-repeat: no-repeat; background-size: cover; position: relative;}
.idx_vis .slider-wrap .mvisual01{ background-image: url(../img/main/visual01.jpg);}
.idx_vis .slider-wrap .mvisual02{ background-image: url(../img/main/visual02.jpg);}

.idx_vis .main_text{ position: absolute; left: 50%; bottom: 250px; margin-left: -550px; z-index: 20;}
.mvisual01 .main_text h2{ font-family: "Noto Serif KR", serif; font-size: 20px; font-weight: 900; letter-spacing: 2px; color: #B59179;}
.mvisual01 .main_text p{ font-size: 33px; color:#fff; margin: 50px 0 15px 0; text-shadow: 0 0px 10px rgba(197,166,145,.6);}
.mvisual01 .main_text h1{ font-weight: normal; font-weight: 700; font-size: 55px; color: #fff; text-shadow: 0 0px 10px rgba(197,166,145,.6);}
.mvisual02 .main_text h1{ font-weight: normal; font-weight: 700; font-size: 45px; line-height: 1.2; letter-spacing: -1px; color: #24344E;}
.mvisual02 .main_text p{ font-size: 20px; font-weight: 300; line-height: 1.6; color:#8C8C8A; letter-spacing: -1px; margin-top: 30px;}

.slider-bottom { position: absolute; bottom: 170px; left: 50%; margin-left: -550px; z-index: 2; 
  display: flex; align-items: center; justify-content: center; gap: 20px;}
.slider-counter { font-size: 16px; font-weight: 500; color: #fff;}
.slider-counter .current { font-weight: 700;}
.slider-counter .total { color: #DEBCA1;}
.slider-bottom .slick-dots{ display: flex !important;}
.slider-bottom .slick-dots li{ width: 80px; height: 3px; background: #fff; position: relative; overflow: hidden; margin: 0; cursor: pointer;}
.slider-bottom .slick-dots li button{ display: none;}
/* 채워지는 바 */
.slick-dots li .progress-bar { position: absolute; left: 0; top: 0; height: 100%; width: 0; background: #DEBCA1;pointer-events: none;}

.scroll_down{ position: absolute; bottom:230px; left: 3%; z-index: 21;}
.scroll_down p{ font-size: 13px; font-weight: 300; color: #fff; letter-spacing: 1px; text-transform: uppercase; transform: rotate(90deg); position:relative;}
.scroll_down p::after{ display: block; content: ""; width: 50px; height: 2px; background-color: #fff; position: absolute; bottom: 9px; left: -70px;}
.scroll_down .scr_arw{ position: absolute; bottom: -80px; left: 40px; width: 23px; height: 23px; border-radius: 50%; border: 2px solid #fff;}
.scroll_down .scr_arw span{ display: block; width: 6px; height: 2px; background-color: #fff; transform: rotate(45deg); position: absolute; top: 9px; left: 5px;}
.scroll_down .scr_arw span:nth-of-type(2){ transform: rotate(-45deg); left: 8px;}


/* 메인 비주얼 PC 높이 축소 */
@media screen and (min-width: 1024px) {

    .idx_vis .slider-wrap .mvisual{
        height: 500px;
    }

    .idx_vis .main_text{
        bottom: 145px;
    }

    .slider-bottom{
        bottom: 75px;
    }

    .scroll_down{
        bottom: 135px;
    }

}

@media screen and (max-width: 1279px) {
  .idx_vis .main_text{ left: 10%; margin-left: 0; }
  .slider-bottom{ left: 10%; margin-left: 0; }
}
@media screen and (max-width: 1023px) {
  .idx_vis .slider-wrap .mvisual{ height: 600px;}
  .idx_vis .main_text{ left:5%; bottom: 120px;}
  .mvisual01 .main_text h2{ font-size: 16px;}
  .mvisual01 .main_text p{ font-size: 23px; margin: 40px 0 10px 0;}
  .mvisual01 .main_text h1{ font-size: 40px;}
  .mvisual02 .main_text h1{ font-size: 35px;}
  .mvisual02 .main_text p{ font-size: 16px; margin-top: 20px;}
  .slider-bottom { bottom: 50px; left: 5%;}
  .slider-bottom .slick-dots li{ width: 60px; }
  .scroll_down{ display: none;}
}
@media screen and (max-width: 767px) { 
  .idx_vis .slider-wrap .mvisual{ height: 500px;}
  .idx_vis .slider-wrap .mvisual01{ background-position: 60% top;}
  .idx_vis .slider-wrap .mvisual02{ background-position: 60% top;}
  .idx_vis .main_text{ left:0; bottom: 120px; width: 100%; padding: 0 0 0 5%;}
  .mvisual01 .main_text h2{ font-size: 15px;}
  .mvisual01 .main_text p{ font-size: 22px;}
  .mvisual01 .main_text h1{ font-size: 35px;}
  .mvisual02 .main_text h1{ font-size: 28px;}
  .mvisual02 .main_text p{ font-size: 15px;}
  .scroll_down{ display: none;}
}


/*미앤미의원 소개*/
.cont01{ position: relative; padding: 120px 0 0 0;}
.cont01_in{ width: 100%; max-width: 1400px; margin: 0 auto; position: relative; z-index: 2;}
.cont01 .tit{ margin-bottom: 80px;}
.cont01 .tit h1{ font-family: "Noto Serif KR"; font-weight: 600; font-size: 50px; letter-spacing: -2px; color: #333; margin-bottom: 30px; display: inline-block;
position: relative;}
.cont01 .tit h1 > span{ display: block; width: 10px; height: 10px; border-radius: 50%; background-color: #C19475; position: absolute; bottom: -5px; right: -20px;}
.cont01 .tit p{ font-size: 19px; color: #9F7660; line-height:1.6; padding-left:280px;}
.cont01 .btn{ width: 140px; position: absolute; top: 100px; right: 0px; z-index: 1;}
.cont01 .btn > a{ display: block; border: 1px solid #C19475; background-color: #fff; border-radius: 50px; line-height: 45px; letter-spacing: 0px; font-family: "Noto Serif KR"; font-weight: 600; font-size: 15px; color: #C19475; text-align:center; transition: all .3s;}
.cont01 .btn > a:hover{ background-color: #C19475; color: #fff; transition: all .3s;}
.cont01 .btn > a:hover img{ filter: brightness(0) invert(1);}

.cont_box{ display: flex;}
.cont01_img{ flex:5; text-align: center;}
.cont01_txt{ flex:5; padding-top: 100px;}
.cont01_txt dl{ margin-bottom: 50px;}
.cont01_txt dt{ font-family: "Noto Serif KR"; font-size: 30px; font-weight: normal; font-weight: 500; color: #333; margin-bottom: 30px; position: relative; z-index: 1;}
.cont01_txt dt > span{ font-weight: 800; font-size: 70px; color: #EEE9E5; position: absolute; bottom: -5px; left: -50px; z-index: -1;}
.cont01_txt dd{ font-size: 18px; font-weight: 300; color: #777; line-height: 1.8;}

/*흐르는 텍스트 바*/
.flow_txt{ white-space: nowrap; box-sizing: border-box; overflow: hidden; position: absolute; bottom:150px; width: 100%;}
.flow_txt::after{ display: block; content: ""; width: 40%; height: 170px; background-color: #fff; position: absolute; top: 0px; right: 0px; z-index: 1;}
.flow_txt > h1{ display: inline-block; font-family: "Noto Serif KR"; font-size: 140px; font-weight: 900; color:#FAF6F5; animation: text-to-left 200s linear infinite;}

.flow_txt2{ white-space: nowrap; box-sizing: border-box; overflow: hidden; width: 100%; position: relative;}
.flow_txt2::before{ display: block; content: ""; width: 45%; height: 170px; background-color: #fff; position: absolute; top: 0px; left: 0px; z-index: 1;}
.flow_txt2 > h1{ display: inline-block; font-family: "Noto Serif KR"; font-size: 140px; font-weight: 900; color:#FAF6F5; animation: text-to-left 250s linear infinite;}

@keyframes text-to-left {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}

@media screen and (max-width: 1279px) {
  .cont01_in{ max-width: 90%;}
  .cont01 .tit p{ padding-left:200px;}
  .cont01_img img{ width: 400px;}
  .cont01_img{ flex:4; text-align: left;}
  .cont01_txt{ flex:6; padding: 80px 0 0 30px;}
  .cont01_txt dd{ font-size: 17px;}

  .flow_txt{ bottom:100px; }
  .flow_txt::after{ width: 30%; height: 120px;}
  .flow_txt > h1{ font-size: 100px; }
  .flow_txt2::before{ width: 35%; height: 120px;}
  .flow_txt2 > h1{ font-size: 100px;}
}
@media screen and (max-width: 1023px) {
  .cont01{ padding: 90px 0 0 0;}
  .cont01_in{ max-width: 95%;}
  .cont01 .tit{ margin-bottom: 60px;}
  .cont01 .tit h1{ font-size: 40px;}
  .cont01 .tit p{ font-size: 17px; padding-left:100px;}
  .cont01 .btn{ width: 120px; top: 70px;}
  .cont01 .btn > a{ line-height: 40px; font-size: 14px;}

  .cont_box{ display: block;}
  .cont01_img img{ width: 350px;}
  .cont01_img{ flex:1; text-align: center;}
  .cont01_txt{ flex:1; padding: 50px 8% 0 8%;}
  .cont01_txt dt{ font-size: 28px;}
  .cont01_txt dt > span{ font-size: 60px; left: -40px;}
  .cont01_txt dd{ font-size: 17px;}
  .cont01_txt .brno{ display: none;}
  .flow_txt2{ margin-bottom: -50px;}
}
@media screen and (max-width: 767px) {
  .cont01{ padding: 60px 0 40px 0;}
  .cont01_in{ max-width: 90%;}
  .cont01 .tit{ margin-bottom: 20px;}
  .cont01 .tit h1{ font-size: 35px; line-height: 1.2; margin-bottom: 20px;}
  .cont01 .tit p{ font-size: 16px; padding-left:0;}
  .cont01 .tit h1 > span{ bottom: auto; right: auto; top: -5px; left: -10px;}
  .cont01 .btn{ position: relative; top: auto; right: auto; margin-bottom: 50px;}
  .cont01 .btn > a{ line-height: 35px; font-size: 13px;}

  .cont01_img img{ width: 300px;}
  .cont01_txt{ padding: 50px 5% 0 5%;}
  .cont01_txt dt{ font-size: 28px;}
  .cont01_txt dt > span{ left: -30px;}
  .cont01_txt dl:nth-of-type(2) dt > span{ top: -30px;}
  .flow_txt{ bottom:60px; }
  .flow_txt::after{ height: 70px;}
  .flow_txt > h1{ font-size:70px; }
  .flow_txt2{ margin-bottom: 0px; position: absolute; bottom: 0px; left: 0;}
  .flow_txt2::before{ height: 70px;}
  .flow_txt2 > h1{ font-size: 70px;}

}


/*특화시술*/
.cont02{ margin-bottom: 120px; overflow-x: hidden; overflow-y: hidden;}
.cont02 .cont02_in{ padding-left: 240px;}
.cont02 .txt_box p{ font-family: "Noto Serif KR"; font-size: 22px; letter-spacing: 0px; color: #B99479; margin-bottom: 60px;}
.cont02 .txt_box h2{ font-size: 40px; font-weight: normal; font-weight: 600; color: #222; }
.cont02 .txt_box h1{ font-size: 50px; font-weight: normal; font-weight: 600; color: #222; margin: 10px 0 30px 0;}
.cont02 .txt_box h1 strong{ color: #B99479; font-weight: normal; font-weight: 600;}
.cont02 .txt_name{ margin-bottom: 60px;}
.cont02 .txt_name li{ display: inline-block; margin-right: 10px; font-size: 18px; color: #B59179; border-radius: 50px; border: 1px solid #B59179; text-align: center;
padding: 0 30px; line-height: 50px;}

.cont02 .cont02_box{ width: 100%; position: relative;}
.cont02 .cont02_box .boston_box{ padding: 20px 0 20px 20px; display: flex; align-items: center;}
.cont02 .cont02_box .boston_box .bost_img{ width: 700px; height: 400px; box-shadow: 0 5px 20px rgba(0,0,0,.1); border-radius: 40px; overflow: hidden;}
.cont02 .cont02_box .boston_box .bost_txt{ padding-left: 80px;}
.cont02 .cont02_box .boston_box .bost_txt dt{ font-size: 35px; font-weight: 700; color: #222; margin-bottom: 20px;}
.cont02 .cont02_box .boston_box .bost_txt dd{ font-size: 18px; color:#777; line-height: 1.8;}
.cont02 .cont02_box .btn{ width: 180px; margin-top: 30px;}
.cont02 .cont02_box .btn img{ display: inline-block !important; padding-left: 10px;}
.cont02 .cont02_box .btn > a{ display: block; background-color: #FAE9E0; border:1px solid #FAE9E0; border-radius: 50px; line-height: 48px; font-size: 15px; color: #AA846C; text-align:center; transition: all .3s;}
.cont02 .cont02_box .btn > a:hover{ border-color: #C19475; transition: all .3s;}

.cont02 .slide_speical{ width: 100%; min-width: 1500px; z-index:1;}
.cont02 .slide_speical .slick-list{ overflow: visible; width: 1500px;}

.cont02 .slide_speical .slick-arrow{ width: 65px; height: 65px; background-color: #fff; border: 1px solid #333; border-radius: 50%; position: absolute; top: -130px; z-index: 1;
 transition: all .3s;}
.cont02 .slide_speical .slick-prev{ right: 370px;}
.cont02 .slide_speical .slick-next{ right: 300px;}
.slick-prev:before,
.slick-next:before { display:none;}
.cont02 .slide_speical .slick-arrow:hover{ background-color: #333; transition: all .3s;}
.cont02 .slide_speical .slick-arrow:hover img{ filter: brightness(0) invert(1);}


@media screen and (max-width: 1279px) {
  .cont02 .cont02_in{ padding: 0 3%;}
  .cont02 .cont02_box .boston_box .bost_img{ width: 500px; height: 330px; border-radius: 30px;}
  .cont02 .cont02_box .boston_box .bost_img img{ width: 125%;}
  .cont02 .cont02_box .boston_box .bost_txt{ padding-left: 50px;}
  .cont02 .cont02_box .boston_box .bost_txt dt{ font-size: 32px;}
  .cont02 .cont02_box .boston_box .bost_txt dd{ font-size: 17px;}
  .cont02 .slide_speical{ min-width: 100%;}
  .cont02 .slide_speical .slick-list{ width: 100%;}
  .cont02 .slide_speical .slick-prev{ right: 120px;}
  .cont02 .slide_speical .slick-next{ right: 50px;}
}
@media screen and (max-width: 1023px) {
  .cont02{ margin-bottom: 90px;}
  .cont02 .txt_box { padding: 0 2%;}
  .cont02 .txt_box p{ font-size: 18px; margin-bottom: 50px;}
  .cont02 .txt_box h2{ font-size: 30px;}
  .cont02 .txt_box h1{ font-size: 45px; margin: 10px 0 30px 0;}
  .cont02 .txt_name{ margin-bottom: 40px;}
  .cont02 .txt_name li{ font-size: 16px; padding: 0 20px; line-height: 40px;}
  .cont02 .cont02_box .boston_box{ display: block;}
  .cont02 .cont02_box .boston_box .bost_img{ width: 680px; height: 350px; border-radius: 20px; margin: 0 auto;}
  .cont02 .cont02_box .boston_box .bost_img img{ width: 100%;}
  .cont02 .cont02_box .boston_box .bost_txt{ padding: 40px 2% 0 2%;}
  .cont02 .cont02_box .boston_box .bost_txt dt{ font-size: 30px;}
  .cont02 .cont02_box .boston_box .bost_txt dd{ font-size: 16px; line-height: 1.5;}
  .cont02 .cont02_box .boston_box .bost_txt dd > br{ display: none;}
  .cont02 .cont02_box .btn{ width: 160px; margin-top: 20px;}
  .cont02 .cont02_box .btn > a{ line-height: 45px; font-size: 14px;}
  .cont02 .slide_speical .slick-arrow{ width: 50px; height: 50px; top: -90px;}
  .cont02 .slide_speical .slick-prev{ right: 55px;}
  .cont02 .slide_speical .slick-next{ right: 0px;}
}
@media screen and (max-width: 767px) { 
  .cont02{ margin: 20px 0 60px 0;}
  .cont02 .cont02_in{ padding: 0 5%;}
  .cont02 .txt_box { padding: 0 2%;}
  .cont02 .txt_box p{ font-size: 18px; margin-bottom: 40px;}
  .cont02 .txt_box h2{ font-size: 25px;}
  .cont02 .txt_box h1{ font-size: 32px; margin: 10px 0 20px 0;}
  .cont02 .txt_name{ margin-bottom: 70px;}
  .cont02 .txt_name li{ font-size: 15px; padding: 0 10px; line-height: 35px; margin: 0 5px 5px 0;}
  .cont02 .cont02_box .boston_box{ padding: 0px; margin: 0 auto;}
  .cont02 .cont02_box .boston_box .bost_img{ width: 100%; height: auto; box-shadow: none;}
  .cont02 .cont02_box .boston_box .bost_txt{ padding: 30px 2% 0 2%;}
  .cont02 .slide_speical .slick-list{ overflow: hidden;}
  .cont02 .slide_speical .slick-arrow{ width: 40px; height: 40px; top: -50px;}
  .cont02 .slide_speical .slick-arrow img{ width: 7px;}
  .cont02 .slide_speical .slick-prev{ right: auto; left: 0px;}
  .cont02 .slide_speical .slick-next{ right: auto; left: 43px;}
}


/*유튜브*/
.cont03{ width: 100%; margin: 0 auto; background-color: #f7f7f7; border-bottom: 1px solid #eee; padding: 120px 10%;}
.cont03 .tit{ margin-bottom: 50px; }
.cont03 .tit h1{ font-family: "Noto Serif KR"; font-weight: normal; font-weight: 500; font-size: 40px; color: #333; letter-spacing: 0px;}
.cont03 .tit h2{ font-size: 20px; font-weight: 400; color: #333;  margin-top: 10px;}
.cont03_box{ display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;}
.cont03_box div{ width: 32%;}
.cont03_box iframe{ height: 270px; border-radius: 20px;}
.cont03 .tc_btn{ margin-top: 55px; text-align: center;}
.cont03 .tc_btn a{ display: inline-block; background-color: #222; font-size: 16px; color: #fff; line-height: 50px; padding: 0 30px; transition: all 0.3s;}
.cont03 .tc_btn a:hover{ background-color:#B99479; transition: all 0.3s;}

@media screen and (max-width: 1279px) {
  .cont03{ padding: 120px 3%;}
  .cont03_box iframe{ height: 190px;}
}
@media screen and (max-width: 1023px) {
  .cont03{ padding: 80px 3%;}
  .cont03 .tit{ margin-bottom: 30px; }
  .cont03 .tit h1{ font-size: 30px;}
  .cont03 .tit h2{ font-size: 18px;}
  .cont03_box iframe{ height: 150px; border-radius: 10px;}
  .cont03 .tc_btn{ margin-top: 30px;}
}  
@media screen and (max-width: 767px) { 
  .cont03{ padding: 50px 7%;}
  .cont03_box div{ width: 100%; margin-bottom: 10px;}
  .cont03_box iframe{ height: 200px;}
}

/*진료과목*/
.cont04{ width: 100%; padding: 120px 0 150px 0; background: url(../img/main/cont03_bg.jpg) no-repeat center bottom #FCF4EF;}
.cont04 .tit{ text-align: center; margin-bottom: 80px;}
.cont04 .tit h2{ font-family: "Noto Serif KR"; font-size: 20px; font-weight: normal; font-weight: 400; letter-spacing: 0px; color: #B99479; margin-bottom: 50px;}
.cont04 .tit h1{ font-size: 50px; font-weight: normal; font-weight: 700; color: #222;}
.cont04 .tit p{ font-size: 18px; color: #999; margin-top: 30px;}

.cont04 .slide_jin { width: 100%;}
.cont04 .slide_jin .slick-list { overflow: visible;}
.cont04 .slide_jin .jin_box { margin: 0 80px;}
.cont04 .slide_jin .jin_img{ border-radius: 20px; overflow: hidden; box-shadow: 0 5px 20px rgba(0,0,0,.1);}
.cont04 .slide_jin .jin_img img{ width: 100%;}
.cont04 .slide_jin .jin_txt{ background-color: #fff; padding: 50px 60px; border-radius: 20px; box-shadow: 0 5px 20px rgba(0,0,0,.1); width: 75%;
margin-top: -60px; position: relative; z-index: 1;}
.cont04 .slide_jin .jin_txt h2{ font-family: "Noto Serif KR"; font-size: 16px; letter-spacing: 0px; color: #B99479;}
.cont04 .slide_jin .jin_txt h1{ font-size: 35px; font-weight: normal; font-weight: 700; color: #333; margin: 20px 0 30px 0;}
.cont04 .slide_jin .jin_txt p{ font-size: 17px; color: #999; line-height: 1.6;}
.cont04 .slide_jin .jin_txt .btn{ position: absolute; top: 0px; right: 0px; width: 70px; height: 70px;}
.cont04 .slide_jin .jin_txt .btn > a{ display: block; width: 100%; height: 100%; background-color: #333; text-align: center; line-height: 70px; transition: all .3s;}
.cont04 .slide_jin .jin_txt .btn img{ display: inline-block !important;}
.cont04 .slide_jin .jin_txt .btn > a:hover{ background-color: #B99479; transition: all .3s;}

.cont04 .slide_jin .slick-arrow{ width: 65px; height: 65px; border: 0; background: none; border: 1px solid #333; border-radius: 50%; position:absolute; top: 50%; 
  margin-top: -70px; z-index: 10; transition: all 0.3s; opacity: .5;}
.cont04 .slide_jin .slick-arrow:hover{ transition: all 0.3s; opacity: 1;}
.cont04 .slide_jin .slick-prev{ left: 50%; margin-left: -590px;}
.cont04 .slide_jin .slick-next{ left: 50%; margin-left: 520px;}

.cont04 .slide_jin .slick-dots{ display: flex; justify-content: center; align-items: center; position: absolute; bottom: -70px; left: 50%; transform: translateX(-50%); }
.cont04 .slide_jin .slick-dots li{ margin: 0 5px;}
.cont04 .slide_jin .slick-dots li button{ text-indent: -9999px; width: 10px; height: 10px; border-radius: 50%; background-color: #fff; border: 0;}
.cont04 .slide_jin .slick-dots li.slick-active button{ width: 12px; height: 12px; background-color: transparent; border: 1px solid #fff;}
@media screen and (max-width: 1279px) {
  .cont04 .slide_jin .jin_box{ margin: 0 40px;}
  .cont04 .slide_jin .jin_txt{ padding: 40px 40px; width: 90%;}
  .cont04 .slide_jin .slick-prev{ left: 12%; margin-left: 0px;}
  .cont04 .slide_jin .slick-next{ left: auto; right: 12%; margin-left: 0px;}
}
@media screen and (max-width: 1023px) {
  .cont04{ padding: 90px 0 100px 0;}
  .cont04 .tit{ margin-bottom: 50px;}
  .cont04 .tit h2{ font-size: 18px; margin-bottom: 30px;}
  .cont04 .tit h1{ font-size: 40px;}
  .cont04 .tit p{ font-size: 16px; margin-top: 20px;}
  .cont04 .slide_jin .jin_box{ margin: 0 60px;}
  .cont04 .slide_jin .jin_txt{ padding: 40px 40px; width: 90%;}
  .cont04 .slide_jin .jin_txt h2{ font-size: 14px;}
  .cont04 .slide_jin .jin_txt h1{ font-size: 30px;}
  .cont04 .slide_jin .jin_txt p{ font-size: 16px;}
  .cont04 .slide_jin .jin_txt .btn{ width: 50px; height: 50px;}
  .cont04 .slide_jin .jin_txt .btn > a{ line-height: 50px;}
  .cont04 .slide_jin .slick-dots{ bottom: -50px; }
}
@media screen and (max-width:767px) {
  .cont04{ padding: 60px 0 90px 0;}
  .cont04 .tit{ margin-bottom: 30px; padding: 0 5%;}
  .cont04 .tit h2{ font-size: 16px;}
  .cont04 .tit h1{ font-size: 35px;}
  .cont04 .tit p{ font-size: 15px;}
  .cont04 .slide_jin .jin_box{ margin: 0 20px;}
  .cont04 .slide_jin .jin_img{ border-radius: 20px;}
  .cont04 .slide_jin .jin_txt{ padding: 30px 20px; width: 100%; border-radius: 20px; margin-top: 0;}
  .cont04 .slide_jin .jin_txt h1{ font-size: 25px;}
  .cont04 .slide_jin .jin_txt p{ font-size: 15px;}
  .cont04 .slide_jin .slick-dots{ bottom: -40px; }
}

/*배너
.cont04{ width: 100%; height: 570px; background: url(../img/main/mcont04_img.jpg) no-repeat left center #e9f3f2; margin-bottom:150px; position: relative;}
.cont04 .ct4_txt{ position: absolute; left: 50%; top: 50%;  transform: translateY(-50%);}
.cont04 .ct4_txt h1{ font-family: 'NanumMyeongjoBold'; font-size: 40px; color: #222;}
.cont04 .ct4_txt p{ font-size: 18px; line-height: 1.8; color: #777; margin: 40px 0 55px 0;}
.cont04 .ct4_txt .btn_view a{ font-family: 'OAGothic-Medium'; font-size: 16px; color: #222; letter-spacing: 0;}
.cont04 .ct4_txt .btn_view a span{ display: inline-block; width: 28px; height: 28px; border-radius: 50%; background-color: #E51081; text-align: center; padding-top: 2px;}
@media screen and (max-width: 1279px) {
  .cont04{ height: 450px; background-size: auto 500px;}
  .cont04 .ct4_txt{ left: auto; right: 5%;}
  .cont04 .ct4_txt h1{ font-size: 30px;}
  .cont04 .ct4_txt p{ font-size: 16px;}
}
@media screen and (max-width: 1023px) {
  .cont04{ height: 300px; background-size: auto 400px; margin-bottom:100px;}
  .cont04 .ct4_txt{ right: 1%; width: 45%;}
  .cont04 .ct4_txt h1{ font-size: 25px;}
  .cont04 .ct4_txt p{ font-size: 14px; margin: 20px 0 35px 0;}
  .cont04 .ct4_txt .btn_view a{ font-size: 14px;}
  .cont04 .ct4_txt .btn_view a span{ width: 24px; height: 24px; padding-top: 1px;}
}
@media screen and (max-width:768px) {
  .cont04{ height: 250px; background-size: auto 270px; background-position: -90% center; margin-bottom:80px;}
  .cont04 .ct4_txt{ top: 50px; transform:translateY(0); right: 2%; width: 50%;}
  .cont04 .ct4_txt h1{ font-size: 20px; line-height: 1.3;}
  .cont04 .ct4_txt p{ font-size: 13px; line-height: 1.5; margin: 10px 0 20px 0;}
  .cont04 .ct4_txt .btn_view a{ font-size: 13px;}
}*/

/*고객센터지도*/
.cont05{ width: 100%; padding: 120px 10%; display: flex; justify-content: space-between; }
.cont05 .ct5_txt { flex: 4;}
.cont05 .ct5_txt h1{ font-family: "Noto Serif KR";  font-size: 40px; font-weight: normal; color: #222; margin-bottom: 60px;}
.cont05 .ct5_txt h3{ font-size: 20px; font-weight: 700; margin-bottom: 10px;}
.cont05 .ct5_txt h2{ font-family: "Noto Serif KR"; font-size: 40px; font-weight: 700; color: #B99479; margin-bottom: 40px;}
.cont05 .ct5_txt ul{ margin-bottom: 40px;}
.cont05 .ct5_txt li{ font-size: 20px; font-weight: 300; letter-spacing: 0; color: #666; line-height: 1.6;}
.cont05 .ct5_txt li span{ display: inline-block; width: 80px;}
.cont05 .ct5_txt li strong{ font-weight: 600; color: #B99479; font-size: 15px;}
.cont05 .ct5_txt h4{ font-weight: 600; font-size: 22px; color: #222; line-height: 1.5;}
.cont05 .ct5_txt h4 > span{ display: block; font-size: 18px; color: #999;}
.cont05 .ct5_map{ flex: 6; margin-top: 80px;}
.cont05 .ct5_map .wrap_map{ height: 450px;}
.cont05 .ct5_map .wrap_controllers{ display: none;}
.cont05 .ct5_map .cont{ display: none;}


@media screen and (max-width: 1279px) {
  .cont05{ padding: 120px 3%;}
}
@media screen and (max-width: 1023px) {
  .cont05{ padding: 90px 5%; display: block;}
  .cont05 .ct5_txt { flex: 1;}
  .cont05 .ct5_txt h1{ font-size: 30px; margin-bottom: 40px;}
  .cont05 .ct5_txt h3{ font-size: 18px;}
  .cont05 .ct5_txt h2{ font-size: 35px;}
  .cont05 .ct5_txt li{ font-size: 18px;}
  .cont05 .ct5_txt li span{ width: 70px;}
  .cont05 .ct5_txt h4{ font-size: 20px;}
  .cont05 .ct5_txt h4 > span{ font-size: 16px;}
  .cont05 .ct5_map{ flex: 1; margin-top: 40px;}
  .cont05 .ct5_map .wrap_map{ height: 300px;}
}
@media screen and (max-width: 767px) { 
  .cont05{ padding: 60px 5%;}
  .cont05 .ct5_map .wrap_map{ height: 250px;}
}


/*빠른상담신청 모달팝업*/
.btn_consult{ position: fixed; z-index: 20; bottom: 5%; left: 2%;}
.modal_btn { display: block; padding: 0px 40px; background-color: #fff; border:1px solid #d3b19c; border-radius: 50px 5px 50px 50px; cursor: pointer; font-size: 18px; font-weight: 500; letter-spacing: -1px; color: #B18568; line-height: 65px; box-shadow: 0 5px 15px rgba(0,0,0,0.1); transition: all 0.2s;}
.modal_btn:hover { background-color: #444; color: #fff; transition: all 0.2s;}
.modal { display: none ; /*평소에는 보이지 않도록*/ position: fixed; top:0; left: 0; width: 100%; height: 100vh; overflow: hidden; background: rgba(0,0,0,0.6); z-index: 1100;}
.modal.on { display: block;}
.modal .modal_popup { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background: #ffffff; box-shadow: 0 10px 20px rgba(0,0,0,0.3);}
.modal .modal_popup .close_btn { display: block; background-color:transparent; border: none; cursor: pointer; position: absolute; top: -25px; right: 32px;}
.modal .modal_popup .close_btn span{ display: block; width: 35px; height: 2px; background-color: #fff; transform: rotate(-45deg); position: absolute; left: 0px; top: 0px;}
.modal .modal_popup .close_btn span:nth-of-type(2){ transform: rotate(45deg); top: 1px;}

.consult{ width: 600px; margin: 0 auto; padding: 50px 50px; position: relative; z-index: 1;}
.consult .cs_tit{ text-align: center; margin-bottom: 30px;}
.consult .cs_tit img{ width: 180px; margin: 0 auto 10px auto;}
.consult .cs_tit h1{ font-size: 30px; font-weight: normal; font-weight: 700; color: #9C895E;}
.consult form { width: 100%; }
.consult .form-group { margin-bottom: 20px;}
.consult label { display: block; margin-bottom: 6px; font-weight: 400; color: #333;}
.consult .required { color: #c40000; background: none !important;}
.consult input.error, .consult textarea.error { border-color: #c40000;}
.consult .error-msg { margin-top: 6px; font-size: 13px; color: #c40000; display: none;}
.consult .input-error{ border:1px solid #c40000 !important;}
.consult input[type="text"], 
.consult input[type="tel"], 
.consult textarea { width: 100%; height: 45px; padding: 10px 12px; border: 1px solid #ccc; box-sizing: border-box; font-family: 'Pretendard'; font-weight: 500;
color: #222; letter-spacing: -0.5px;}
.consult textarea { height: 100px; padding: 10px 12px;}
.consult .btn-submit { width: 100%; height: 60px; background-color: #222; font-size: 22px; font-weight: 600; letter-spacing: -1px; line-height: 60px; color: #fff; 
  border: none; cursor: pointer; transition: all .3s;}
.consult .btn-submit:hover{ background-color: #9C895E; transition: all .3s;}

.consult .agree-box{ display:flex; align-items:center; gap:10px; margin:20px 0; font-size:14px;}
.consult .agree-label{ display:flex; align-items:center; gap:5px; font-size: 14px; color: #666; margin: 0;}
.consult .btn-privacy{ border:none; background:none; color:#666; cursor:pointer; text-decoration:underline; line-height: 16px; letter-spacing: -1px;}

/* 개인정보취급방침 팝업 */
.consult .privacy-popup{ position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.5); display:none;justify-content:center; align-items:center; z-index:9999;}
.consult .privacy-content{ background:#fff; width:90%; max-width:500px; padding:30px; position:relative; max-height:100vh; overflow-y:auto; font-size: 14px; line-height: 1.5;}
.consult .privacy-close{ position:absolute; top:10px; right:20px; border:none; background:none; font-size:30px; color: #333; cursor:pointer;}
.consult .privacy-content h3{ margin-bottom: 20px;}

@media screen and (max-width: 1023px) {
  .btn_consult{ bottom: 90px; left: auto; right: 2%;}
  .modal_btn { padding: 0px 20px; background-color: rgba(255,255,255,.8);font-size: 15px; line-height: 40px;}
}
@media screen and (max-width: 767px) { 
  .btn_consult { /*position: absolute; bottom: auto; right: 1%; top: 15px; z-index: 24;*/ bottom: 80px; left: 5px; right: auto;}
  .modal_btn { padding: 0px 12px; border-radius: 30px; font-size: 14px; font-weight: 700; line-height: 35px; background-color: #fff;}
  .modal_btn img{ width: 16px;}
  .modal_btn:hover { background-color: #fff; color: #B18568; transition: none;}
  .modal .modal_popup { width: 90%;}

  .consult{ width: 95%; padding: 30px 15px;}
  .consult .cs_tit img{ width: 120px;}
  .consult .cs_tit h1{ font-size: 25px;}
  .consult h1{ font-size: 25px;}
  .consult .form-group { margin-bottom: 10px;}
  .consult .error-msg { font-size: 12px;}
  .consult input[type="text"], 
  .consult input[type="tel"], 
  .consult textarea { height: 40px; padding: 0 10px;}
  .consult textarea { height: 100px;  padding: 10px 10px;}
  .consult .btn-submit { height: 50px; line-height: 50px; font-size: 18px;}
  .consult .privacy-content{ width:100%; max-width:500px; padding:20px;}
  .consult .privacy-close{ top:0px; right:10px; font-size:40px;}
}
