/* con_tit ============================== */
.con_tit {
  text-transform: uppercase;
  margin: 7.5% auto 6.5%;
}
.con_tit h2 {
  font-family: "Linux Libertine Capitals";
  font-weight: 400;
  font-size: 3.6rem;
  color: #47645a;
  line-height: 1.7;
}
.con_tit h3 {
  font-family: "Linux Libertine Capitals";
  font-size: 2.5rem;
  font-weight: 400;
  color: #47645a;
  line-height: 1.7;
}
.con_tit p {
  color: #2f2725;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.8;
  padding: 1.1% 0;
  text-transform: none;
}
.con_tit p span {
  color: #47645a;
}
.con_tit p span.b_txt {
  font-weight: 500;
}
.con_tit p b {
  font-weight: bold;
}

/* main_wrapper ============================== */
.main_wrapper img {
  width: 100%;
  height: auto;
}

.main_wrapper {
  margin: 0 auto;
}

/* main_sl ================================= */
#top_main_slide {
  position: relative;
}
#top_main_slide .swiper-button-next,
#top_main_slide .swiper-button-prev {
  max-width: 100%;
  width: auto;
  color: #676464;
  transition: 0.5s;
}
#top_main_slide .swiper-button-next::before,
#top_main_slide .swiper-button-prev::before {
  clear: both;
  content: "";
  display: block;
  position: absolute;
  width: 35px;
  height: 1px;
  color: #676464;
  background-color: #676464;
  top: 50%;
  transform: translate(0%, -50%);
}
#top_main_slide .swiper-button-next span,
#top_main_slide .swiper-button-prev span {
  display: block;
  width: 50px;
  line-height: 50px;
  border-radius: 50%;
  text-align: center;
  transition: inherit;
}
#top_main_slide .swiper-button-next:hover span, #top_main_slide .swiper-button-next:hover::before,
#top_main_slide .swiper-button-prev:hover span,
#top_main_slide .swiper-button-prev:hover::before {
  background: rgba(89, 89, 89, 0.7882352941);
  color: #fff;
}
#top_main_slide .swiper-button-next {
  right: 3.5%;
  left: auto;
  padding-right: 40px;
}
#top_main_slide .swiper-button-next::before {
  right: 0;
}
#top_main_slide .swiper-button-prev {
  left: 3.5%;
  right: auto;
  padding-left: 40px;
}
#top_main_slide .swiper-button-prev::before {
  left: 0;
}
#top_main_slide #swiper-tab {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 3%;
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 1;
}
#top_main_slide #swiper-tab .swiper-pagination-bullet {
  position: relative;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  transition: 0.2s;
}
#top_main_slide #swiper-tab .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 17px;
  height: 17px;
  background-color: #47645a;
}

.video_wrap {
  display: block;
  max-width: 1903px;
  overflow: hidden;
}
.video_wrap video {
  display: block;
}

/* main_con01 ================================= */
.main_con01 .main_vidoe_wrap {
  display: block;
  height: 44vw;
  -o-object-fit: fill;
     object-fit: fill;
}
@media all and (max-width: 767px) {
  .main_con01 .main_vidoe_wrap {
    height: 94vw;
  }
}
.main_con01 .main_vidoe_wrap video {
  display: block;
}
.main_con01_txt {
  width: 40%;
  max-width: 879px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.main_con01_btn {
  width: 30%;
  max-width: 163px;
  top: 86%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* main_con02 ================================= */
.main_con02_txt {
  transform: translate(-50%, -50%);
  top: auto;
  bottom: 10%;
  left: 50%;
  width: 100%;
}

/* main_con02 ================================= */
.s0101_con03 .con_tit h2 {
  font-family: "NanumMyeongjoBold";
  font-weight: bold;
}

/* main_con03 ================================= */
/* main_con04 ================================= */
.doctor_con {
  position: relative;
}
.doctor_con ul {
  transform: translate(-50%, -50%);
}
.doctor_con_01 ul {
  top: 26.5%;
  left: 25%;
}
@media all and (max-width: 767px) {
  .doctor_con_01 ul {
    top: 32%;
    left: 50%;
    width: 80%;
  }
}
.doctor_con_01 ul li {
  width: 78vw;
}
.doctor_con_01 ul li img {
  width: 350px;
}
.doctor_con_01 ul li:last-child {
  margin-top: 0.5%;
}
@media all and (max-width: 767px) {
  .doctor_con_01 ul li:last-child {
    margin-top: 1%;
  }
}
.doctor_con_02 ul {
  top: 38%;
  right: -3%;
  left: 50%;
}
@media all and (max-width: 767px) {
  .doctor_con_02 ul {
    right: auto;
    left: 50%;
    width: 80%;
    top: 39%;
  }
}
.doctor_con_02 ul li {
  width: 78vw;
}
.doctor_con_02 ul li img {
  width: 350px;
}
.doctor_con_02 ul li:last-child {
  margin-top: 0.5%;
}
@media all and (max-width: 767px) {
  .doctor_con_02 ul li:last-child {
    margin-top: 1%;
  }
}

/* main_con05 ================================= */
.main_con05_wrap {
  position: relative;
}
.main_con05_fir, .main_con05_sec {
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
/* main_con06 ================================= */
.main_con06 {
  background-color: #fbfbfb;
}
.main_con06_con {
  position: relative;
}
.main_con06_li {
  margin: 5% auto 9%;
  background: transparent;
  max-width: 1600px;
}
.main_con06 h2 {
  font-family: "NanumMyeongjoBold";
  font-weight: bold;
  font-size: 3.6rem;
  text-transform: uppercase;
  color: #47645a;
  line-height: 1.7;
  margin: 7% auto;
}
.main_con06 li {
  margin: 0 0.4%;
  background: transparent;
}
.main_con06 li:nth-of-type(odd) {
  margin-top: 4%;
}
.main_con06 li img {
  position: relative;
  filter: drop-shadow(11px 8px 5px rgba(77, 71, 71, 0.15));
  transition: opacity 0.1s, transform 0.5s;
  background: transparent;
  border-radius: 20px;
  width: auto;
}
.main_con06 li:hover img {
  opacity: 1;
  transform: scale(1.08);
}

/* main_con14 ================================= */
.main_con14 .root_daum_roughmap {
  margin: 4% auto;
  max-width: 1300px;
  box-shadow: 11px 8px 10px 5px rgba(77, 71, 71, 0.15);
}

/* main_map ================================= */
.main_map_con {
  max-width: 1780px;
  margin: 0 auto;
}
.main_map_con h2 {
  font-family: "NanumMyeongjoBold";
  font-weight: bold;
  font-size: 3.6rem;
  text-transform: uppercase;
  color: #47645a;
  line-height: 1.7;
  margin: 7% auto 0;
}
.main_map_con h3 {
  color: #47645a;
  font-size: 2.2rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: -0.045em;
  margin-bottom: 3%;
}

.main_map_con .d_flex_c {
  position: relative;
}
.main_map_txt {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  left: 0;
  top: -0.2%;
  bottom: 0;
  flex-direction: column;
  width: 50%;
}

/* footer ================================= */
#foot {
  position: relative;
  margin: 0 auto;
  padding: 6rem 0 4rem;
  background-color: #f5f5f5;
}
#foot .ft_inner_con {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 80%;
  max-width: 1200px;
  margin: 0 auto;
}
#foot dl {
  text-align: left;
}
#foot dt {
  width: 100%;
  max-width: 367px;
  margin: -2.3rem auto 1rem 0;
}
#foot dd {
  word-spacing: 3px;
  padding: 0;
  color: #4c4948;
  font-weight: 400;
  font-size: 1.1rem;
}
#foot dd span {
  font-weight: bold;
}
#foot dd.copy_right {
  word-spacing: normal;
  padding-top: 1.1rem;
}
#foot .price {
  margin-top: 5%;
  font-size: 18px;
  color: #afafaf;
  font-weight: 500;
}
@media all and (max-width: 767px) {
  #foot .price {
    font-size: 3.3vw;
  }
}
#foot .price_modal {
  position: fixed;
  left: 0;
  top: 0;
  opacity: 0;
  visibility: hidden;
  transition: all 0.6s ease;
  width: 100%;
  height: 100%;
  background: rgba(136, 136, 136, 0.7);
  z-index: 99999;
}
#foot .price_modal .price_modal_in {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
@media all and (max-width: 767px) {
  #foot .price_modal .price_modal_in {
    padding: 0 20px;
  }
}
#foot .price_modal .price_modal_in > div {
  position: relative;
}
#foot .price_modal .mfp-close {
  position: absolute;
  right: 5px;
  top: 5px;
  z-index: 1;
  width: 55px;
  height: 55px;
  border: 0;
  font-size: 16px;
  color: #fff;
  opacity: 1;
  overflow: hidden;
  background: transparent;
  text-indent: -999px;
}
@media all and (max-width: 767px) {
  #foot .price_modal .mfp-close {
    width: 45px;
    height: 45px;
  }
}
#foot .price_modal .mfp-close::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../img/btn_close.png") no-repeat center center/50%;
  transition: transform 300ms;
  border-radius: 50%;
  filter: grayscale(100%) brightness(0);
}
#foot .price_modal .mfp-close:hover:after {
  transform: rotate(270deg);
}
#foot #member_login {
  position: absolute;
  top: 10%;
  right: 12%;
  display: flex;
  justify-content: flex-end;
  display: none;
}
#foot #member_login li {
  margin: 0 0 0 20px;
  font-size: 15px;
}
#foot #member_login li:hover a {
  color: tomato;
}

/* top_bn ================================= */
#go_top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  border-radius: 50px;
  line-height: 50px;
  background: rgba(71, 100, 90, 0.7);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
  border: none;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  opacity: 0;
  visibility: hidden;
  transition: 0.5s;
  z-index: 99;
}
#go_top.active {
  opacity: 1;
  visibility: visible;
}
@media all and (max-width: 767px) {
  #go_top {
    bottom: 92px;
    right: 10px;
  }
}