/*메인슬라이드*/
#vis {
  height: 600px;
}
#vis .swiper-slide {
  overflow: hidden;
}
.main_wrap {
  width: 1200px;
  margin: 0 auto;
}

#vis .wrap {
  position: relative;
  width: 1200px;
  margin: 0 auto;
  height: 100%;
}
#vis .sw_a {
  position: absolute;
}
#vis.swiper-container .swiper-button-nextVis {
  width: 50px;
  height: 99px;
  background-image: url(../../images/visual/vis_next.png);
  background-size: 100%;
  position: absolute;
  right: 150px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 999;
  cursor: pointer;
}
#vis.swiper-container .swiper-button-prevVis {
  width: 50px;
  height: 99px;
  background-image: url(../../images/visual/vis_prev.png);
  background-size: 100%;
  position: absolute;
  left: 150px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 999;
  cursor: pointer;
}
#vis .swiper-paginationVis {
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
  width: fit-content;
  z-index: 99;
}
#vis .swiper-paginationVis .swiper-pagination-bullet {
  display: inline-block;
  width: 15px;
  height: 15px;
  border: 1px solid #fff;
  background-color: rgba(0, 0, 0, 0);
  opacity: 1;
  font-size: 0;
  border-radius: 0;
}
#vis .swiper-paginationVis .swiper-pagination-bullet-active {
  background-color: #ff9182;
  border-color: #ff9182;
}

/*vis1*/
#vis .sw1 {
  background: url(../../images/visual/01/bg.jpg) no-repeat center;
  background-size: cover;
  height: 600px;
}
.sw1 .wrap {
  width: 100%;
  max-width: 1500px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 40px;
}
.sw1 .sw_a1 {
  transform: translateX(-30%);
  left: -50px;
  bottom: -60px;
  height: 650px;
  opacity: 0;
}
.sw1 .sw_a2 {
  right: 0;
  transform: translateX(30%);
  bottom: -60px;
  height: 650px;
  opacity: 0;
}
.sw1 .sw_a3,
.sw1 .sw_a4 {
  position: initial !important;
  opacity: 0;
}
.sw1 .sw_a4 {
  opacity: 0;
  transform: translateY(50%);
  /* -webkit-animation: blink 1.5s infinite; */
  /* animation: blink 1.5s infinite; */
}

/*vis2*/
#vis .sw2 {
  background: url(../../images/visual/02/bg.jpg) no-repeat center;
  background-size: cover;
  height: 600px;
}
.sw2 .wrap {
  width: 1200px;
}
.sw2 .sw_a1 {
  left: -350px;
}
.sw2 .sw_a2 {
  top: 120px;
}
.sw2 .sw_a3 {
  bottom: 220px;
}
.sw2 .sw_a4 {
  bottom: 130px;
  -webkit-animation: blink 1.5s infinite;
  animation: blink 1.5s infinite;
}
@keyframes blink {
  0% {
    opacity: 0.5;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0.5;
  }
}
/*vis3*/
#vis .sw3 {
  background: url(../../images/visual/03/bg.jpg) no-repeat center;
  background-size: cover;
  height: 600px;
}
.sw3 .wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 50px;
}
.sw3 .sw_a {
  position: initial !important;
}

/* 두번째 슬라이드 */
#vis2_wrap {
  position: relative;
  margin: 100px 0;
}
#vis_wrap .slick_container {
  position: relative;
}
#vis2 .slick_slider-text {
  height: 500px;
  width: 50vw;
}
#vis2 .slick_slider-img {
  position: absolute;
  height: 500px;
  width: 50vw;
  right: 0;
  top: 0;
}
#vis2 .slick_slide {
  display: flex;
  justify-content: flex-end;
}
#vis2 .slick_slide .wrap {
  width: 600px;
  height: 500px;
  position: relative;
}
#vis2 .sw_img {
  position: absolute;
  left: 100px;
}
.vis2_text {
  bottom: 70px;
}
.slick_slider-img div:first-child {
  display: block;
}
.slick_slider-img div {
  display: none;
  position: absolute;
  top: 0;
}
/* 각 슬라이드 사진 */
.vis2_img_1 {
  width: 100%;
  height: 500px;
  background: url(../../images/visual2/01/vis_bg.jpg) no-repeat;
}
.vis2_img_2 {
  width: 100%;
  height: 500px;
  background: url(../../images/visual2/02/vis_bg.jpg) no-repeat;
}
.vis2_img_3 {
  width: 100%;
  height: 500px;
  background: url(../../images/visual2/03/vis_bg.jpg) no-repeat;
}

/* 슬라이드2 컨트롤 */
.vis2_wrap_control {
  position: absolute;
  right: 50vw;

  display: flex;
  flex-direction: column;
  top: 0;
  height: 500px;
}
.bestSeller {
  position: absolute;
  top: 70px;
  right: 120px;
}
.vis2_wrap_control-btn {
  display: flex;
  justify-content: space-between;
  width: 500px;
  right: 90px;
  position: absolute;
  bottom: 110px;
}
#vis2.slick_container .slick-button-nextVis {
  width: 50px;
  height: 50px;
  background: url(../../images/visual2/vis_next.png) no-repeat;
  background-size: 100%;
  cursor: pointer;
  z-index: 9999;
}
#vis2.slick_container .slick-button-prevVis {
  width: 50px;
  height: 50px;
  background: url(../../images/visual2/vis_prev.png) no-repeat;
  background-size: 100%;
  cursor: pointer;
  z-index: 9999;
}
#vis2 .slick-paginationVis {
  width: 500px;
  position: absolute;
  bottom: 40px;
  right: 90px;
}
.slick-dots li button:before {
  background: black;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  line-height: 0 !important;
  overflow: hidden !important;
}
.slick-dots li.slick-active button:before {
  opacity: 0.75;
  line-height: 0 !important;
  overflow: hidden !important;
}

#vis2 .vis2_sw2 .sw_img {
  left: 90px;
}

.withCore {
  width: 1200px;
  margin: 100px auto;
  position: relative;
}
.withCore .kakao_chat {
  position: absolute;
  right: -100px;
  top: -100px;
  cursor: pointer;
}

/* 이벤트 */
.withEvent {
  position: relative;
  height: auto;
  background: url(../../images/event_bg.jpg) no-repeat;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.withEvent .slick_slider {
  width: 100%;
  margin: 100px 50px;
  overflow: hidden;
}
.withEvent .slick_slide img {
  width: 100%;
}
.withEvent .slick-track {
  margin-top: 20px;
  display: flex;
  align-items: center;
  height: 80vh;
  transition: all 0.3s ease;
}
.withEvent .slick_slide {
  height: auto;
  margin: 0;
  width: calc(20vw - 30px);
  scale: 0.8;
  transition: all 0.3s ease;
  position: relative;
}
.withEvent .slick_slide::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #00000069;
  width: 100%;
  height: 100%;
}
.withEvent .slick_slide.slick-center {
  scale: 1.3 !important;
  margin: 0 50px !important;
  /* top: 100% !important; */
  /* width: 25vw !important; */
}
.withEvent .slick_slide.slick-center::after {
  background: #00000000;
}
.withEvent .progress_bar {
  position: absolute;
  bottom: 100px;
  display: block;
  margin-top: 80px;
  width: 200px;
  height: 3px;
  border-radius: 10px;
  background: #6e7275;
  background-image: linear-gradient(to right, #bfcde2, #bfcde2);
  background-repeat: no-repeat;
  background-size: 0 5px;
  transition: background-size 0.3s ease-in-out;
  transform: translateX(-30px);
}
.withEvent .progress_bar-label {
  position: absolute;
  right: -80px;
  top: 50%;
  transform: translateY(-50%);
  color: #bfcde2;
  font-size: 16px;
  font-weight: 800;
}
.withEvent .progress_bar-label span {
  font-size: 27px;
  color: white;
  margin-right: 0.2ch;
}
/* 후기사진 */
.beforeAfter {
  margin: 100px 0;
  height: 800px;
  background: url(../../images/beforeAfter_bg.jpg) no-repeat;
  background-size: cover;
  background-position: center;
  display: grid;
  place-items: center;
}
.beforeAfter_inner {
  width: 1200px;
  height: 80%;
  display: flex;
  justify-content: flex-end;
}
.beforeAfter_content {
  width: 770px;
  height: 100%;
  display: flex;
  align-items: center;
  flex-direction: column;
}
.beforeAfter_cates {
  display: flex;
  width: 100%;
  gap: 2px;
  margin: 50px 0;
}
.beforeAfter_cate {
  font-size: 16px;
  font-weight: bold;
  color: white;
  background: #b9bcc3;
  width: 100%;
  height: 50px;
  display: grid;
  place-items: center;
  cursor: pointer;
}
.beforeAfter_img {
  width: 100%;
  display: none;
}
.beforeAfter_img.active {
  display: block;
}
.beforeAfter_cate.active {
  background: #4d5d76;
}
.beautySolution {
  margin: 100px auto;
  height: 800px;
  width: 1200px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.beautySolution > img {
  margin: 50px 0;
}
.beautySolution .slick_slider {
  width: 1200px;
}
.beautySolution .slick_slide {
  padding: 0 25px;
}
.beautySolution .slick_slide img {
  width: 100%;
}

.beautySolution .progress_bar {
  position: relative;
  display: block;
  margin-top: 80px;
  width: 200px;
  height: 3px;
  border-radius: 10px;
  background: #aeaeae;
  background-image: linear-gradient(to right, #4d5d76, #4d5d76);
  background-repeat: no-repeat;
  background-size: 0 5px;
  transition: background-size 0.3s ease-in-out;
}
.beautySolution .progress_bar-label {
  height: 15px;
  width: 15px;
  background: #4d5d76;
  position: absolute;
  border-radius: 50%;
  top: 50%;
  transform: translateY(-50%);
  transition: left 0.3s ease-in-out;
}

/* 코어 티비 */
.coreTV {
  margin: 100px auto;
  width: 1200px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.coreTV > img {
  margin: 50px 0;
}
.coreTV_contents {
  display: grid;
  grid-template-columns: 5fr 1fr;
}
.coreTV_contents > div {
  display: grid;
  gap: 20px;
}

/* 게시글 */
.coreContents {
  width: 1200px;
  margin: 100px auto;
  height: 260px;
  display: grid;
  grid-template-columns: 1fr 1fr 0.5fr;
}
.coreContents_sns {
  height: 255px;
}

/*인포메이션*/
.infoArea {
  margin-top: 100px;
}
.infoArea .infoWrap {
  display: flex;
  width: 100vw;
}

/* 오른쪽 */
.infoArea .infoRight {
  background: #b8bbc2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 40px;
  padding: 40px;
  width: 50%;
}

.infoArea .infoWrap .infoLeft .mapWrap {
  position: relative;
  width: 50vw;
}
.infoArea .infoWrap .infoLeft .mapWrap .wrap_controllers {
  display: none;
}
.infoArea .infoWrap .infoRight .mapWrap .mapNaver {
  position: absolute;
  right: 20px;
  top: 20px;
  z-index: 9;
}
.infoArea .infoWrap .infoRight .mapWrap .mapKakao {
  position: absolute;
  right: 20px;
  top: 78px;
  z-index: 9;
}
.infoArea .infoWrap .infoRight .mapInfo {
  position: relative;
  background-color: #f7f7f7;
  height: 114px;
  line-height: 114px;
}
.infoArea .infoWrap .infoRight .mapInfo img {
  position: absolute;
  top: 50%;
  left: 30px;
  transform: translateY(-50%);
}
.infoArea .infoWrap .infoRight .mapInfo h3 {
  padding-left: 90px;
  font-size: 22px;
  color: #222;
  line-height: 1;
  padding-top: 30px;
  margin-bottom: 12px;
}
.infoArea .infoWrap .infoRight .mapInfo p {
  padding-left: 90px;
  font-size: 18px;
  color: #555;
}
