/*! Flickity v2.2.1
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled{ position:relative; }
.flickity-enabled:focus{ outline:none; }

.flickity-viewport{ overflow:hidden; position:relative; height:100%; }
.flickity-slider{ position:absolute; width:100%; height:100%; }

/* draggable */
.flickity-enabled.is-draggable{ -webkit-tap-highlight-color:transparent; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none; }
.flickity-enabled.is-draggable .flickity-viewport{ cursor:move; cursor:-webkit-grab; cursor:grab; }
.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down{ cursor:-webkit-grabbing; cursor:grabbing; }

/* ---- flickity-button ---- */
.flickity-button{ display:none; position:absolute; background:hsla(0, 0%, 100%, 0.75); border:none; color:#333; }
.flickity-button:hover{ background:white; cursor:pointer; }
.flickity-button:focus{ outline:none; box-shadow:0 0 0 5px #19F; }
.flickity-button:active{ opacity:0.6; }
.flickity-button:disabled{ opacity:0.3; cursor:auto; /* prevent disabled button from capturing pointer up event. #716 */ pointer-events:none; }
.flickity-button-icon{ fill:currentColor; }

/* ---- previous/next buttons ---- */
.flickity-prev-next-button{ top:50%; width:44px; height:44px; border-radius:50%; /* vertically center */ transform:translateY(-50%); }
.flickity-prev-next-button.previous{ left:10px; }
.flickity-prev-next-button.next{ right:10px; }

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous{ left:auto; right:10px; }
.flickity-rtl .flickity-prev-next-button.next{ right:auto; left:10px; }
.flickity-prev-next-button .flickity-button-icon{ position:absolute; left:20%; top:20%; width:60%; height:60%; }

/* ---- page dots ---- */
.flickity-page-dots{ display:none; position:absolute; width:100%; bottom:-25px; padding:0; margin:0; list-style:none; text-align:center; line-height:1; }
.flickity-rtl .flickity-page-dots{ direction:rtl; }
.flickity-page-dots .dot{ display:inline-block; width:10px; height:10px; margin:0 8px; background:#333; border-radius:50%; opacity:0.25; cursor:pointer; }
.flickity-page-dots .dot.is-selected{ opacity:1; }

/* 이미지 블럭 */
.carousel{  }
.carousel-cell{ width:100%; counter-increment:carousel-cell; }

/* cell number */
/* .carousel-cell:before{ display:block; text-align:center; content:counter(carousel-cell); line-height:200px; font-size:80px; color:white; } */

/* 타이틀 */
.carousel_wrap{ overflow:hidden; position:relative; height:660px; }
.carousel_title{ z-index:2; position:absolute; left:0; top:65px; width:100%; text-align:center; }
.carousel_title h1{ margin:5px 0 15px; font:400 46px/56px 'Lora',serif,'Pretendard'; color:#1e1205; }
.carousel_title p{ }
.carousel_title p:nth-of-type(2){ display:none; }

/* 메인비주얼 */
.main_visual_wrap{ position:relative; width:100%; }
.main_visual_wrap{ animation: 1s ease-out 0s 1 slideInFromLeft; }
.main_visual{ position:relative; height:660px; }

/* 메인비주얼 텍스트 */
.main_visual_wrap .centerWrap{ display:flex; align-items:center; justify-content:space-between; }
.main_visual_wrap .main_title{ margin-top:65px; position:relative; margin-bottom:25px; text-align:left; }
/* .main_visual_wrap .main_title:before{ position:absolute; left:-28px; top:-90px; content:''; width:558px; height:646px; background:url(/img/qfont.png) no-repeat center; background-size:100%; } */
.main_visual_wrap .main_title p{ margin:25px auto 0; font-size:22px; font-weight:500; line-height:36px; }
.main_visual_wrap .main_title .view_btn{ }
.main_visual_wrap:hover .main_title .view_btn{ background:#242424; }

.main_title > a{ display:block; }

/* 메인비주얼 이미지 */
.main_visual_img{ display:block; position:relative; margin-top:55px; }
/* .main_visual_img:before{ position:absolute; right:-67px; bottom:-90px; content:''; width:739px; height:457px; background:#eee; } */
/* .main_visual_img:after{ z-index:2; position:absolute; left:73px; bottom:-44px; content:''; width:92px; height:92px; background:#0067b4 url(/img/main_visual_plus.png) no-repeat center; border-radius:100px; } */
.main_visual_img:hover:after{ background-color:#085392; }
.main_visual_img .img_wrap{ position:relative; width:821px; height:460px; box-shadow:5px 5px 25px rgb(0 0 0 / 15%); }
.main_visual_img .img_wrap{ transition: background-size .4s ease; -moz-transition: background-size .4s ease; -web-kit-transition: background-size .4s ease; }
.main_visual_img:hover .img_wrap{ background-size:auto 107% !important;  }
.main_visual_img span{ display:block; position:relative; padding-top:15px; font-weight:400; font-size:17px; color:#333; text-align:right; }

/* prev next 버튼 : 트리거 */
.mainvisual_btn{ display:flex; padding:85px 0 0 3px; font-size:0; }
.mainvisual_btn span{ position:relative; display:inline-block; width:27px; height:17px; background:transparent; cursor:pointer; }
.mainvisual_btn span:first-child{ margin-right:36px; }
.mainvisual_btn span:before{ -webkit-transition-duration:0.2s; -moz-transition-duration:0.2s; -o-transition-duration:0.2s; -ms-transition-duration:0.2s; transition-duration:0.2s; }
.mainvisual_btn span:before{ position:absolute; top:5px; content:''; width:100%; height:2px; background:#141414; }
.mainvisual_btn span:after{ -webkit-transition-duration:0.2s; -moz-transition-duration:0.2s; -o-transition-duration:0.2s; -ms-transition-duration:0.2s; transition-duration:0.2s; }
.mainvisual_btn span:after { position:absolute; top:0; content:''; width:12px; height:12px; border-top:2px solid #141414;  border-right:2px solid #141414; }
.mainvisual_btn span:hover:before{ background:#0067b4; }
.mainvisual_btn span:hover:after{ border-color:#0067b4; }

.mainvisual_prev:before{ left:0; }
.mainvisual_prev:after{ left:0; transform:rotate(225deg); }

.mainvisual_next:before{ right:0; }
.mainvisual_next:after{ right:0; transform:rotate(45deg); }


@media(max-width:1400px){

.carousel_wrap, 
.main_visual{ height:620px; }

.main_visual_wrap .main_title{ margin-top:70px; margin-bottom:15px; }
.main_visual_wrap .main_title:before{ top:-70px; width:500px; height:579px; }
.main_title strong{ font-size:18px; }
.main_title h4{ font-size:50px; }
.main_visual_wrap .main_title p{ font-size:20px; }

.main_visual_img .img_wrap{ width:730px; height:398px; background-size:100% auto !important; }
.main_visual_img:hover .img_wrap{ background-size:107% auto !important;  }
.main_visual_img:before{ width:719px; height:410px; }
.main_visual_img:after{ width:84px; height:84px; left:35px; bottom:-41px; }

}

@media(max-width:1200px){

.carousel_wrap, 
.main_visual{ height:580px; }

.main_visual_wrap .main_title{ margin-top:80px; }
.main_visual_wrap .main_title:before{ top:-50px; width:440px; height:509px; }
.main_title strong{ font-size:17px; }
.main_title h4{ font-size:46px; }
.main_visual_wrap .main_title p{ font-size:18px; }

.main_visual_img .img_wrap{ width:650px; height:354px; background-size:cover !important; }
.main_visual_img:hover .img_wrap{ background-size:cover !important; }
.main_visual_img:before{ width:640px; height:373px; }
.main_visual_img:after{  }
.main_visual_img span{ font-size:15px; }

.mainvisual_btn{ padding-top:70px; }

}

@media(max-width:999px){

.carousel-cell{ overflow:hidden; }
.carousel_wrap, 
.main_visual{ /* min-height:635px; height:auto; */ }

.main_visual_wrap .centerWrap{ display:block; }

.main_visual_wrap .main_title{ margin-top:30px; }
.main_title strong{ margin-bottom:5px; font-size:15px; }
.main_title h4{ margin-bottom:10px; font-size:28px; }
.main_visual_wrap .main_title p{ margin-bottom:15px; font-size:16px; line-height:26px; }
.main_visual_wrap .main_title:before{ left:-15px; top:-25px; content:''; width:90%; max-width:558px; height:500px; background-size:100%; background-position:left top; }

.main_visual_img{ margin-top:30px; }
.main_visual_img .img_wrap{ width:100%; height:280px; }
.main_visual_img:before{ width:100%; height:320px; right:-60px; bottom:-60px; }
.main_visual_img:after{ width:60px; height:60px; bottom:-29px; left:31px; background-size:40%; }
.main_visual_img span{ font-size:14px; }

.mainvisual_btn{ padding-top:30px; }

}

@media(max-width:600px){

/* .carousel_wrap{ height:320px; }
.carousel-cell{ height:320px; }

.carousel_title{  }
.carousel_title h1{ margin-bottom:2px; font-size:22px; line-height:28px; }
.carousel_title p:nth-of-type(1){ display:none; }
.carousel_title p:nth-of-type(2){ display:block; } */

}