/*-----------------------------------------------------*/
/* 메인 비주얼 */
/*-----------------------------------------------------*/
#mainSlide {
 overflow:hidden;
 position:relative;
 width:100%;
 height:850px;
 margin:0 auto;
}
#mainSlide .visual-list-con,#mainSlide .visual-con,#mainSlide .slick-list,#mainSlide .slick-track,.visual-item {
 height:100%;
}
#mainSlide .slick-list {
 z-index:1;
}
.visual-con {
 position:relative;
 z-index:2;
}
.visual-bg {
 width:100%;
 height:100%;
 background-size:cover !important;
 -ms-transform:scale(1.1,1.1);
 -o-transform:scale(1.1,1.1);
 -moz-transform:scale(1.1,1.1);
 -webkit-transform:scale(1.1,1.1);
 transform:scale(1.1,1.1);
 -ms-transition:transform 5000ms ease-in-out;
 -o-transition:transform 5000ms ease-in-out;
 -moz-transition:transform 5000ms ease-in-out;
 -webkit-transition:transform 5000ms ease-in-out;
 transition:transform 5000ms ease-in-out;
}

.visual-item.active-item .visual-bg {
 -ms-transform:scale(1.0,1.0) rotate(0.0001deg);
 -o-transform:scale(1.0,1.0) rotate(0.0001deg);
 -moz-transform:scale(1.0,1.0) rotate(0.0001deg);
 -webkit-transform:scale(1.0,1.0) rotate(0.0001deg);
 transform:scale(1.0,1.0) rotate(0.0001deg);
}
.visual-item.active-item .visual-tit1,.visual-item.active-item .visual-tit2 {
 opacity:1;
 filter:Alpha(opacity=100);
 -ms-transform:translateY(0px);
 -o-transform:translateY(0px);
 -moz-transform:translateY(0px);
 -webkit-transform:translateY(0px);
 transform:translateY(0px);
}
@media screen and (max-width:1600px) {
 #mainSlide {
  height:45vw !important;
 }
}
@media screen and (max-width:1199px) {
 #mainSlide {
  height:50vw !important;
 }
}
@media screen and (max-width:767px) {
 #mainSlide {
  height:60vw !important;
 }
}
@media screen and (max-width:560px) {
 #mainSlide {
  height:65vw !important;
 }
}
@media screen and (max-width:480px) {
 #mainSlide {
  height: 85vw !important;
  margin-top:5px;
 }
}
/*-----------------------------------------------------*/
/* Slick Dots */
/*-----------------------------------------------------*/
#mainSlide .slick-dots {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  display: flex; /* ✅ 핵심 */
  justify-content: center;
  align-items: center;
  gap: 4px; /* li 간격 조정 */
  padding: 0;
  margin: 0;
  list-style: none;
  z-index: 999;
}

#mainSlide .slick-dots li {
  display: block; /* flex 내부니까 inline-block 불필요 */
}

#mainSlide .slick-dots li button {
 cursor:pointer;
 margin:0;
 padding:0;
 border:0;
 font-size:0;
 width:20px;
 height:4px;
 border-radius:0;
 background-color:#fff;
}
#mainSlide .slick-dots li.slick-active button {
 cursor:pointer;
 margin:0;
 padding:0;
 border:0;
 font-size:0;
 width:20px;
 height:4px;
 border-radius:0;
 background-color:#333;
}
@media screen and (max-width:767px) {
  #mainSlide .slick-dots {
    position: absolute;
    left: 50%;
    bottom: 30px;
    transform: translateX(-50%);
    text-align: center;
    z-index: 999;
  }
}

@media screen and (max-width:480px) {
  #mainSlide .slick-dots {
    position: absolute;
    left: 50%;
    bottom: 13px;
    transform: translateX(-50%);
    text-align: center;
    z-index: 999;
  }
}

/*-----------------------------------------------------*/
/* Prev,Next */
/*-----------------------------------------------------*/
.slick-arrow {
 font-size:0;
 position:absolute;
 top:50%;
 margin-top:-33px;
 width:55px;
 height:55px;
 z-index:999;
 outline:0;
 cursor:pointer;
}
.slick-prev,.slick-next {
 font-size:0;
 position:absolute;
 bottom:20px;
 color:#fff;
 border:0;
 background:none;
 z-index:99;
}
.slick-prev {
 left:50px;
 text-align:left;
}
.slick-prev:after {
 content:"\f104";
 font:40px/1 'FontAwesome';
}
.slick-next {
 right:50px;
 text-align:right;
}
.slick-next:after {
 content:"\f105";
 font:40px/1 'FontAwesome';
}
.slick-prev:hover:after,.slick-next:hover:after {
 color:#7e7e7e;
}
@media screen and (max-width:767px) {
 .slick-prev {
  left:10px;
  text-align:left;
 }
 .slick-prev:after {
  content:"\f104";
  font:30px/1 'FontAwesome';
 }
 .slick-next {
  right:10px;
  text-align:right;
 }
 .slick-next:after {
  content:"\f105";
  font: 30px/1 'FontAwesome';
 }
}
@media screen and (max-width:480px) {
 .slick-arrow {
  font-size:0;
  position:absolute;
  top:50%;
  margin-top:-20px;
  width:55px;
  height:55px;
  z-index:999;
  outline:0;
  cursor:pointer;
 }
}
/* Slider */
.slick-slider {
 position:relative;
 display:block;
 box-sizing:border-box;
 -webkit-user-select:none;
 -moz-user-select:none;
 -ms-user-select:none;
 user-select:none;
 -webkit-touch-callout:none;
 -khtml-user-select:none;
 -ms-touch-action:pan-y;
 touch-action:pan-y;
 -webkit-tap-highlight-color:transparent;
}
.slick-list {
 position:relative;
 display:block;
 overflow:hidden;
 margin:0;
 padding:0;
}
.slick-list:focus {
 outline:none !important;
}
.slick-list.dragging {
 cursor:pointer;
 cursor:hand;
}
.slick-track {
 position:relative;
 top:0;
 left:0;
 display:block;
 margin-left: auto;
 margin-right: auto;
}
.slick-track:before,.slick-track:after {
 display:table;
 content:'';
}
.slick-track:after {
 clear:both;
}
.slick-loading .slick-track {
 visibility:hidden;
}
.slick-slide {
 display:none;
 float:left;
 height:100%;
 min-height:1px;
}
[dir='rtl'] .slick-slide {
 float:right;
}
.slick-slide img {
 display:block;
}
.slick-slide.slick-loading img {
 display:none;
}
.slick-slide.dragging img {
 pointer-events:none;
}
.slick-initialized .slick-slide {
 display:block;
}
.slick-loading .slick-slide {
 visibility:hidden;
}
.slick-vertical .slick-slide {
 display:block;
 height:auto;
 border:1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}
.slick-slider *:focus {
 outline: none !important;
}
