div.visual {position:relative;  margin-top:0px; }
div.visual .slick-list, div.visual .slick-slider, div.visual .slick-track {	position: relative;	display: block}
div.visual .slick-loading .slick-slide, div.visual .slick-loading .slick-track {	visibility: hidden}
div.visual .slick-slider {	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}
div.visual .slick-list {	overflow: hidden;	margin: 0;	padding: 0}
div.visual .slick-list:focus {	outline: 0}
div.visual .slick-list.dragging {	cursor: pointer;	cursor: hand}
div.visual .slick-slider .slick-list, div.visual .slick-slider .slick-track {
	-webkit-transform: translate3d(0, 0, 0);	-moz-transform: translate3d(0, 0, 0);	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);	transform: translate3d(0, 0, 0)}
div.visual .slick-track {	top: 0;	left: 0}
div.visual .slick-track:after, div.visual .slick-track:before {	display: table;	content: ''}
div.visual .slick-track:after {	clear: both}
div.visual .slick-slide {	display: none;	float: left;	height: 100%;	min-height: 1px}
[dir=rtl] .slick-slide {	float: right}
div.visual .slick-slide img {	display: block}
div.visual .slick-slide.slick-loading img {	display: none}
div.visual .slick-slide.dragging img {	pointer-events: none}
div.visual .slick-initialized .slick-slide {	display: block}
div.visual .slick-vertical .slick-slide {	display: block;	height: auto;	border: 1px solid transparent}

div.visual .slick-arrow {width:90%; max-width:100%;   border:0px solid #fff;z-index:2; 
position:absolute; top:60%; left:50%; transform:translate(-50%,-50%);  padding:0 10px;  }
div.visual .slick-arrow  button  { display: block !important;   width:55px; height:55px;z-index: 99;
 text-indent: -9999px; cursor:pointer; margin-top:auto; margin-bottom:auto; top:0;opacity:0.9;
 border:1px solid #fff; border-radius:50%;  background-repeat:no-repeat; background-position:center; background-color:rgba(255,255,255,0) }
div.visual .slick-arrow button:hover {position:absolute; background-color:rgba(255,255,255,0.1)}
div.visual .slick-prev {position:absolute; left:20px !important;; background-image:url(../img/prev_wh.png) }
div.visual .slick-next {position:absolute; left:95px !important; background-image:url(../img/next_wh.png)  }

*, *:before, *:after {  box-sizing: border-box;  padding: 0;  margin: 0;}
div.visual .slick-slide,div.visual .slick-slide::before, div.visual .caption,
div.visual .caption::before,div.visual .txtBox {  	-webkit-backface-visibility: hidden;  backface-visibility: hidden;}
div.visual .slick-slide::before {  content: '';  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;}
div.visual .full-wide-slider {  position: relative;   background-color: #fff;  color: #efefef;  text-align: center;
  width: 100%;  height:100vh; overflow:hidden !important;  opacity: 0;  visibility: hidden;  transition: all 1.2s ease;}
div.visual .full-wide-slider.slick-initialized {  opacity: 1;  visibility: visible;}
div.visual .slick-slide {  position: relative;  height: 100vh; }
div.visual .slick-slide::before {  background-color: #000;  opacity: 0.2;  z-index: 1;}
div.visual figure {  position: relative;  height: 100%;}
div.visual .slick-slide .slide-image {  opacity: 0;  height: 100%;  background-size: cover;  background-position: center;  transition: all .8s ease;}
div.visual .slick-slide .slide-image.show {  opacity: 1;}
div.visual .slick-slide .image-entity {  width: 100%;  height: auto;  opacity: 0;}
/*.slick-slide .loading {  position: absolute;  top: 50%;  left: 0;  width: 100%;}*/
div.visual .slick-slide .slide-media {  -webkit-animation: slideOut 0.4s cubic-bezier(0.4, 0.29, 0.01, 1);  animation: slideOut 0.4s cubic-bezier(0.4, 0.29, 0.01, 1);}
div.visual .slick-slide.slick-active {  z-index: 1; }
div.visual .slick-slide.slick-active .slide-media {-webkit-animation: slideIn 2.4s cubic-bezier(0.4, 0.29, 0.01, 1); animation: slideIn 2.4s cubic-bezier(0.4, 0.29, 0.01, 1);}

/* sub h2 tmt */
div.visual div.txtBox {width:90%; max-width:100%; text-align:left; z-index:2; position:absolute; top:45%; left:50%; transform:translate(-50%,-50%);  
margin:0 auto ; text-align:left;   padding:0 15px 70px 15px;  overflow:hidden; height:auto; background-color:rgb(0,0,0,0);}
div.visual .caption span{border: 0px solid;  color: #fff;width:100%; display:block; padding: 0px 0 0 0; }
div.visual .slick-slide.slick-active .caption { text-transform:uppercase ;  opacity: 0;  position: relative;  margin:0 auto;    width:100%; 
 font-weight:300;    margin: 0; font-size: 70px; line-height:80px;  opacity: 0; z-index: 1; -webkit-animation-name: enter;  animation-name: enter;
  -webkit-transform-style: preserve-3d;  transform-style: preserve-3d;  -webkit-animation-duration: 1s; animation-duration: 1s; animation-delay:0.5s;  -webkit-animation-fill-mode: forwards;   animation-fill-mode: forwards;}
div.txtBox .caption,div.txtBox .caption2,div.txtBox .caption3 { opacity:0;}
div.visual .caption2 span{border: 0px solid;  color: #fff;  width:100%; display:block; padding: 10px 0 0 0; }
div.visual .slick-slide.slick-active .caption2 {  opacity: 0;  position: relative; margin:0 auto;   width:100%; 
  font-weight:300;    margin: 0; font-size: 70px; line-height:80px;  opacity: 0; z-index: 1; -webkit-animation-name: enter;  animation-name: enter;
  -webkit-transform-style: preserve-3d;  transform-style: preserve-3d;  -webkit-animation-duration: 1s; animation-duration: 1s;  animation-delay:1s; -webkit-animation-fill-mode: forwards;   animation-fill-mode: forwards;}
div.visual .caption3 span{border: 0px solid;  color: #fff; margin:0 auto; width:100%; display:block; padding: 30px 0 0px 0; }
div.visual .slick-slide.slick-active .caption3 {  opacity: 0;  position: relative; margin:0 auto;  width:100%; 
  font-weight:400;    margin: 0; font-size: 20px;   opacity: 0; z-index: 1; -webkit-animation-name: enter;  animation-name: enter;
  -webkit-transform-style: preserve-3d;  transform-style: preserve-3d;  -webkit-animation-duration: 1s; animation-duration: 1s; animation-delay:1.5s;  -webkit-animation-fill-mode: forwards;   animation-fill-mode: forwards;}

@keyframes enter {
  0% { opacity: 0; -webkit-transform: translateY(30px);  transform: translateY(30px); }
  25% {  opacity: 1; }
  100% { opacity: 1;  -webkit-transform: translateY(0px);  transform: translateY(0px);  }
}

/*slick-dots*/
div.visual .slick-dots {display:none; /*position:absolute;*/ bottom:100px; width:100%; text-align: center;  }
div.visual .slick-dots li {  display: inline-block;  vertical-align: top;  margin: 0 8px;}
div.visual .slick-dots li button { text-indent:-9999px;  width: 12px;  height: 12px;  border: none;  cursor: pointer;  border-radius: 50%;  border: 2px solid #fff;
  box-shadow: 0 0 0 0 transparent;  vertical-align: middle;  color: #fff;  background-color:rgba(0,0,0,0);  transition: all .3s ease;  opacity: 1;}
div.visual .slick-dots li button:focus {  outline: none;}
div.visual .slick-dots li button:hover {  opacity: 1;}
div.visual .slick-dots li.slick-active button { border-color: #fff; background-color:#fff;  box-shadow: 0 0 0 0px #fff;  opacity: 1;}

/*---------------------------------------
  MOBILE RESPONSIVE              
-----------------------------------------*/
@media (max-width: 1023px) {
div.visual { height:550px; width:calc(100% - 0px);  margin:0px auto ; padding-top:0px ; top:0;  background-color:#fff;}
div.visual .slick-slide {  position: relative;  height: 550px; }	
div.txtBox {top:45%; left:50%; transform:translate(-50%,-50%);  padding:0 15px 30px 15px;  }
div.visual .slick-slide.slick-active .caption {  font-size:35px; line-height:45px  }
div.visual .caption2 span{padding: 0px 0 0 0; border:0; font-size:35px; line-height:45px }
div.visual .caption3 span {padding: 10px 0 0px 0; font-size:15px; line-height:25px}
div.visual .full-wide-slider {   height:100%;  }
/*div.visual .slick-dots { position:absolute; bottom:30px;}*/
div.visual .slick-arrow {  top:55%; left:50%; transform:translate(-50%,-50%);  padding:0 10px;  }
}
@media (max-width: 768px) {
div.visual .slick-slide.slick-active .caption {  font-size:30px; line-height:40px  }
div.visual .caption2 span{ border:0; font-size:30px; line-height:40px }
div.visual .caption3 span {padding: 10px 0 0px 0; font-size:13px; line-height:20px}
}
@media (max-width: 640px) {
}
@media (max-width: 480px) {
}
@media (max-width: 320px) {
}