@import url("common.css");


/* css 공통 */
.title_area{text-align:center; padding: 0 0 50px;}
.title_area .fs19{padding: 10px 0 0;}

@keyframes eff_ani {
	from {transform:translateY(60px); opacity: 0;}
	to {transform:translateY(0); opacity: 1;}
}



/* 메인비주얼 */
#visual{position: relative; width: 100%; height: 100vh; background:var(--bk000); overflow: hidden;}
#visual .visual_in{position: relative; left:0; top:0; width: 100%; height: 100%;}
#visual .visual_in .v_txt{position: absolute; left:50%; top:20%; transform:translateX(-50%); z-index: 9999;}
#visual .visual_in .v_txt .fs21{padding: 0 0 25px; color:var(--white); font-weight: 600; transform:translateY(60px); opacity: 0; animation:eff_ani 1s 0.3s forwards;}
#visual .visual_in .v_txt .fs55{color:var(--white); transform:translateY(60px); opacity: 0; animation:eff_ani 1s 0.6s forwards;}
#visual .visual_in .v_bg{position: absolute; left:0; top:0; width: 100%; height: 100%;}
#visual .visual_in .v_bg::after{content:''; display: block; width: 100%; height: 100%; opacity: 0.4; background: linear-gradient(90deg, #000 0%, rgba(0, 0, 0, 0.00) 100%); position: absolute; left:0; top:0;}
#visual .visual_in .v_bg .jarallax{position: relative; width: 100%; height:100%;}
#visual .visual_in .v_bg .jarallax iframe{position: absolute;}

#visual .scroll_down{display: flex; align-items:center; gap:10px; position: absolute;  left: 50%; margin-left: -765px; bottom: 60px; z-index: 9999; font-size:13px; font-weight: 600; font-family:var(--eng); color:rgba(255,255,255,.4); transition:all .4s; transform:translateY(60px); opacity: 0; animation:eff_ani 1s 0.9s forwards;}
#visual .scroll_down:hover{color:var(--white);}
#visual .scroll_down span{display: block; width: 33px; height: 33px; box-sizing:border-box; border-radius:50%; border:1px solid rgba(255,255,255,.2); transition:all .4s; position: relative; overflow: hidden;}
#visual .scroll_down span::after{content:''; display:block; width:3px; aspect-ratio:1/1; border-radius:50%; background:var(--white); position: absolute; left:50%; top:50%; margin-left: -1px; margin-top: -3px; animation: upDown 1.2s ease-in-out infinite;}
#visual .scroll_down:hover span{border-color:rgba(255,255,255,.5);}

@keyframes upDown {
	0% {
		opacity: 0.1;
		transform:  translateY(-33px);
	}
	50% {
		opacity: 1;
		transform: translateY(50%);
	}
	100% {
		opacity: 0.1;
		transform:  translateY(33px);
	}
}


/* 주요 고객사 */
#partner{padding: 80px 0; overflow: hidden;}
#partner .partner_in{position: relative;}
#partner .partner_in .tit_area{position: absolute; left: 50%; margin-left: -765px; top:50%; transform:translateY(-50%); background:var(--white); z-index: 999;}
#partner .partner_in .tit_area .fs35{}
#partner .partner_in .tit_area .fs35 img{display: inline-block; vertical-align: middle; width: 24px; height: auto; margin: -2px 12px 0 0;}
#partner .partner_in .partner_area{padding-left: 50%; margin-left: -240px; position: relative; z-index: 2;}
#partner .partner_in .partner_area::before{content:''; display: block; width: 100%; height: 100%; margin-right: 240px; background:var(--white); position: absolute; right:50%;  top:0; z-index: 999;}
#partner .partner_in .partner_wrap{display: flex;}
#partner .partner_in .partner_wrap ul{display: flex;}
#partner .partner_in .partner_wrap ul li{width: 250px; margin-right: 6px;}
#partner .partner_in .partner_wrap ul li a{display: block; aspect-ratio:2/0.8; overflow: hidden; position: relative;}
#partner .partner_in .partner_wrap ul li a img{display: block; width: 100%; object-fit:contain;}
#partner .partner_in .partner_wrap ul li p{position: absolute; left: 0; top:50%; transform:translateY(-50%); padding: 0 10px; text-align:center; box-sizing:border-box; width: 100%; font-size:1.105rem; color:var(--light); font-weight: 700; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block;}

@keyframes flowRolling {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-100%);
	}
}



/* 배너 */
#banner{box-sizing:border-box; padding:0 80px;}
#banner .banner_roll{border-radius:var(--borderR50); overflow:hidden; position: relative;}
#banner .banner_roll::before{content:''; display:block; width:30%; height: 100%; opacity: 0.3; background: linear-gradient(90deg, #000 0%, rgba(0, 0, 0, 0.00) 100%); position: absolute; left:0; top:0; z-index: 9999;}
#banner .banner_roll::after{content:''; display:block; width:30%; height: 100%; opacity: 0.3; background: linear-gradient(-90deg, #000 0%, rgba(0, 0, 0, 0.00) 100%); position: absolute; right:0; top:0; z-index: 9999;}
#banner .banner_roll .roll{}
#banner .banner_roll .roll a{display: block;}
#banner .banner_roll .roll a .img{aspect-ratio:2/0.78; overflow:hidden; display: block;}
#banner .banner_roll .roll a .img.mo{display:none;}
#banner .banner_roll .roll a img{display:block; width:100%; height:100%; min-height:100%; object-fit:cover;}
#banner .slick-arrow{font-size:0; display: block; width: 50px; height: 50px; border:0; background:none; padding:0; position: absolute; top:50%; margin-top: -25px; cursor:pointer; z-index: 99991;}
#banner .slick-arrow::after{display: block; width: 100%; height: 100%; line-height:50px; font-size:50px; font-family:var(--icon); position: absolute; left:0; top:0; font-weight: 400; color:var(--white); text-align:center;}
#banner .slick-prev{left: 30px;}
#banner .slick-next{right: 30px;}
#banner .slick-prev::after{content:'\e5c4';}
#banner .slick-next::after{content:'\e5c8';}


/* 제품 */
#product{overflow: hidden;}
#product .product_roll{margin: 0 -15px; width: calc(100% + 30px);}
#product .product_roll .slick-list{overflow: visible;}
#product .product_roll .roll{padding: 0 15px;}
#product .product_roll .roll a{display: block; padding: 30px; box-sizing:border-box; border-radius:var(--borderR50); overflow: hidden; background:var(--grayBg); transition:all .4s; opacity: 0; visibility:hidden;}
#product .product_roll .roll.slick-active a{opacity: 1; visibility:visible;}
#product .product_roll .roll a:hover{background:var(--white); box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.10); transition:all .4s;}
#product .product_roll .roll a .thumb{display: block; aspect-ratio:1/1; overflow: hidden;}
#product .product_roll .roll a .thumb img{display: block; width: 100%; height: 100%; min-height:100%; object-fit:contain; transition:all .4s;}
#product .product_roll .roll a:hover .thumb img{transform:scale(1.1); transition:all .4s;}
#product .product_roll .roll a .desc{padding: 35px 0 10px; text-align:center;}
#product .product_roll .roll a .desc .fs19{font-weight: 600; color:var(--black); line-height: 120%; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block; transition:all .4s;}
#product .product_roll .roll a:hover .desc .fs19{color:var(--main); transition:all .4s;}
#product .product_roll .roll a .desc .fs15{font-weight: 400; color:var(--basic); margin: 8px 0 0; line-height: 120%; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block; transition:all .4s;}


#product .controls{display: flex; align-items:center; justify-content: center; gap:0 25px; margin: 36px auto 0;}
#product .controls .arrow{padding:0; border:0; background:0; font-size:0; cursor:pointer; width: 26px; height: 26px; position: relative;}
#product .controls .arrow::after{display: block; width: 100%; height: 100%; line-height:26px; font-size:26px; font-family:var(--icon); position: absolute; left:0; top:0; font-weight: 400; color:var(--black); opacity: 0.3; text-align:center; transition:all .3s;}
#product .controls .arrow:hover::after{opacity: 1;}
#product .controls .arrow.prev::after{content:'\e5c4';}
#product .controls .arrow.next::after{content:'\e5c8';}
#product .controls .arrow.slick-hidden{display: none;}
#product .controls .product-dots{}
#product .controls .product-dots .slick-dots{display: flex; gap:0 10px;}
#product .controls .product-dots .slick-dots li{cursor:pointer; width: 10px; height: 18px; position: relative;}
#product .controls .product-dots .slick-dots li.slick-active{background:url('/img/dot.png') no-repeat center/contain;}
#product .controls .product-dots .slick-dots li::before{content:''; display: block; width: 100%; aspect-ratio:1/1; border-radius:50%; position: absolute; left:0; top:50%; transform:translateY(-50%); background:var(--black);	opacity: 0.2;}
#product .controls .product-dots .slick-dots li.slick-active::before{display: none;}
#product .controls .product-dots .slick-dots li button{padding:0; border:0; background:0; font-size:0; cursor:pointer;}


/* WATCH VIDEO */
#video{background:url('/img/youtube_bg.jpg') no-repeat center bottom/cover; overflow: hidden;}
#video .video_in{display: flex;}
#video .video_in .tit_area{width: 520px; padding: 0 50px 0 0; box-sizing:border-box; display: flex; flex-direction: column; justify-content: center; align-items: flex-start;}
#video .video_in .tit_area .fs50{}
#video .video_in .tit_area img{max-width:271px; height: auto; width: 100%; margin: 10px 0 0;}
#video .video_in .tit_area .fs25{margin: 35px 0 0;}
#video .video_in .tit_area .fs17{margin: 9px 0 0; line-height: 1.6em; height: 4.8em; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;}

#video .video_in .tit_area .btn_area{padding: 45px 0 0;}
#video .video_in .video_area{width: calc(100% - 520px);}
#video .video_in .video_area .video_box{width: 100%; height: 0; padding-bottom: 56.25%; overflow: hidden; position: relative; border-radius:var(--borderR50);}
#video .video_in .video_area .video_box iframe{display:inline-block; position:absolute; left:0; top:0; width:100% !important; height:100% !important;}
#video .btn_area.mo{display: none;}





/* 자료실 */
.reference_list{}
.reference_list .list{position: relative;}
.reference_list .list::before{content:''; display: block; width: 100%; height: 1px; background: linear-gradient(to right, rgba(42, 44, 45,0), rgba(42, 44, 45,0.15), rgba(42, 44, 45,0.15), rgba(42, 44, 45,0.15), rgba(42, 44, 45,0.15), rgba(42, 44, 45,0.15), rgba(42, 44, 45,0)); position: absolute; left:0; top:0;}
.reference_list .list::after{content:''; display: none; width: 100%; height: 1px; background: linear-gradient(to right, rgba(42, 44, 45,0), rgba(42, 44, 45,0.15), rgba(42, 44, 45,0.15), rgba(42, 44, 45,0.15), rgba(42, 44, 45,0.15), rgba(42, 44, 45,0.15), rgba(42, 44, 45,0)); position: absolute; left:0; bottom:0;}
.reference_list .list:last-child::after{display: block;}
.reference_list .list a{padding: 30px; width: 100%; box-sizing:border-box; display: flex; position: relative; transition:all .4s;}
.reference_list .list a:hover{padding: 30px 50px;}
.reference_list .list a::after{content:'\e145'; display: block; width: 65px; height: 65px; line-height: 65px; font-size:27px; text-align:center; border-radius:50%; background:#F3F6F9; font-family:var(--icon); position: absolute; right: 0; top:50%; margin-top: -32px; color:var(--main); transition:all .4s;}
.reference_list .list a:hover::after{background:var(--main); color:var(--white); right: 25px;}
.reference_list .list a .thumb{width: 260px; aspect-ratio:1/1; overflow: hidden; border-radius:var(--borderR20);}
.reference_list .list a .thumb img{display: block; width: 100%; height: 100%; object-fit:cover;}
.reference_list .list a .desc{width: calc(100% - 290px); padding: 0 230px 0 55px; box-sizing:border-box; display: flex; flex-direction: column; justify-content: center; align-items: flex-start;}
.reference_list .list a .desc .category{margin: 0 0 8px; width: 100%; letter-spacing: 0; line-height: 120%; font-weight: 600; color:var(--main); text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block;}
.reference_list .list a .desc .fs25{font-weight: 400; width: 100%; line-height: 120%; transition:all .4s; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block;}
.reference_list .list a:hover .desc .fs25{font-weight: 700;}
.reference_list .list a .desc .text_box{margin: 14px 0 0; width: 100%; font-size:1rem; line-height: 1.6em; height: 3.2em; letter-spacing: var(--letter-spacing-default); overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}



/*******************************************************************************
    @media 1680px
*******************************************************************************/
@media all and (max-width:1680px){



/* 메인비주얼 */
#visual .scroll_down{left: 5%; margin-left: 0;}




/* 주요 고객사 */
#partner .partner_in .tit_area{left: 5%; margin-left: 0; width: 300px; height: 100px; background:var(--white); display: flex; flex-direction: column; justify-content: center;}
#partner .partner_in .tit_area::before{content:''; display: block; width: 300%; height: 100%; background:var(--white); position: absolute; left: -300%; top:0;}
#partner .partner_in .partner_area{padding-left: 0; margin-left: 0;}
#partner .partner_in .partner_area::before{display: none;}




/* 배너 */
#banner{padding:0 5%;}


/* 자료실 */
.reference_list .list a .desc{padding: 0 100px 0 55px;}


}
/*******************************************************************************
    @media ~1300px
*******************************************************************************/
@media all and (max-width:1300px){


/* WATCH VIDEO */
#video .video_in{}
#video .video_in .tit_area{width: 40%; padding: 0 30px 0 0;}
#video .video_in .tit_area .fs50{}
#video .video_in .tit_area img{max-width:200px; height: auto;}
#video .video_in .tit_area .fs25{margin: 25px 0 0;}
#video .video_in .tit_area .btn_area{padding: 35px 0 0;}
#video .video_in .video_area{width: 60%;}


/* 자료실 */
.reference_list .list a .desc{padding: 0 70px 0 30px; }

}
/*******************************************************************************
    @media  ~980px               
*******************************************************************************/
@media all and (max-width:980px){


/* css 공통 */
.title_area{padding: 0 0 30px;}
.title_area .fs19{padding: 6px 0 0;}


/* 메인비주얼 */
#visual .visual_in .v_txt{top:40%;}
#visual .visual_in .v_txt .fs21{padding: 0 0 15px;}
#visual .scroll_down{bottom: 40px;}


/* 주요 고객사 */
#partner .partner_in .tit_area{position: static; width: 90%; transform:translateY(0); margin: 0 auto 30px; text-align:center; height: auto; background:var(--white);}
#partner .partner_in .tit_area::before{display: none;}
#partner .partner_in .tit_area .fs35{}
#partner .partner_in .tit_area .fs35 img{width: 20px; height: auto; margin: -2px 10px 0 0;}
#partner .partner_in .partner_area{}
#partner .partner_in .partner_wrap ul li{width: 200px;}





/* 배너 */
#banner .banner_roll{border-radius:var(--borderR30);}
#banner .slick-arrow{width: 40px; height: 40px; margin-top: -20px;}
#banner .slick-arrow::after{line-height:40px; font-size:40px;}
#banner .slick-prev{left: 20px;}
#banner .slick-next{right: 20px;}


/* 제품 */
#product .product_roll{margin: 0 -10px; width: calc(100% + 20px);}
#product .product_roll .roll{padding: 0 10px;}
#product .product_roll .roll a{padding: 20px; border-radius:var(--borderR30);}
#product .product_roll .roll a .desc{padding: 25px 0 10px;}

/* WATCH VIDEO */
#video .video_in{flex-wrap:wrap;}
#video .video_in .tit_area{width: 100%; padding: 0 0 25px; text-align:center; align-items: center;}
#video .video_in .tit_area .fs50{}
#video .video_in .tit_area img{max-width:180px; height: auto;}
#video .video_in .tit_area .fs25{margin: 15px 0 0;}
#video .video_in .tit_area .fs17{margin: 5px 0 0;}
#video .video_in .tit_area .btn_area{padding: 25px 0 0;}
#video .video_in .video_area{width: 100%;}
#video .video_in .video_area .video_box{border-radius:var(--borderR30);}
#video .btn_area.mo{display: flex; justify-content: center; padding: 25px 0 0;}
#video .btn_area.pc{display: none;}



/* 자료실 */
.reference_list .list a{padding: 20px;}
.reference_list .list a:hover{padding: 20px 40px;}
.reference_list .list a::after{width: 50px; height: 50px; line-height: 50px; font-size:20px; margin-top: -25px;}
.reference_list .list a:hover::after{right: 20px;}
.reference_list .list a .thumb{width: 200px;}
.reference_list .list a .desc{width: calc(100% - 200px); padding: 0 70px 0 20px; }
.reference_list .list a .desc .text_box{margin: 10px 0 0;}



}
/*******************************************************************************
    @media 481~680px
*******************************************************************************/
@media all and (max-width:680px){



/* css 공통 */
.title_area{padding: 0 0 20px;}



/* 메인비주얼 */
#visual .visual_in .v_txt .fs21{padding: 0 0 10px;}
#visual .visual_in .v_txt .fs55 br{display: none;}
#visual .scroll_down{bottom: 30px;}




/* 주요 고객사 */
#partner{padding: 60px 0 30px;}
#partner .partner_in .tit_area{margin: 0 auto 20px;}
#partner .partner_in .tit_area .fs35{}
#partner .partner_in .tit_area .fs35 img{width: 14px; height: auto;}
#partner .partner_in .partner_area{}
#partner .partner_in .partner_wrap ul li{width: 150px;}



/* 배너 */
#banner .banner_roll{border-radius:var(--borderR20);}
/* #banner .banner_roll .roll a .img{aspect-ratio:2/2.5;} */
#banner .banner_roll .roll a .img.mo{display:block; z-index: 9;}
#banner .slick-arrow{width: 25px; height: 25px; margin-top: 0; top:auto; bottom: 20px;}
#banner .slick-arrow::after{line-height:25px; font-size:25px;}



/* 제품 */
#product .product_roll{padding: 0 30px; box-sizing:border-box;}
#product .product_roll .roll a{border-radius:var(--borderR20); opacity: 1; visibility: visible;}
#product .controls{gap:0 20px; margin: 20px auto 0;}
#product .controls .arrow{width: 20px; height: 20px;}
#product .controls .arrow::after{line-height:20px; font-size:20px;}
#product .controls .product-dots{}
#product .controls .product-dots .slick-dots li{width: 8px; height: 14px;}



/* WATCH VIDEO */
#video .video_in .tit_area img{max-width:150px; height: auto;}
#video .video_in .video_area .video_box{border-radius:var(--borderR20);}





/* 자료실 */
.reference_list .list a{padding: 15px;}
.reference_list .list a:hover{padding: 15px;}
.reference_list .list a::after{display: none;}
.reference_list .list a .thumb{width: 120px; border-radius:var(--borderR10);}
.reference_list .list a .desc{width: calc(100% - 120px); padding: 0 0 0 15px; }
.reference_list .list a .desc .category{margin: 0 0 5px;}
.reference_list .list a .desc .text_box{margin: 5px 0 0;}



}