
#mainVisual {
    width:100%;

}
.visual-video {
    width:100%;
    height:100%;
}
.visual-video video {
    height:100%;
    width:100%;
}
/*
.main-visual-slide, .main-visual-slide .slick-list, .main-visual-slide .slick-track, .main-visual-item {
    height:100%;
}
.main-visual-img {
    position:absolute;
    width:100%;
    height:100%;
}
*/
.main-visual-txt {
    width:100%;
    height:100%;
    display:table;
    position:absolute;
    top:0;
}
.main-visual-txt .visual-txt-wrap {
    max-width:900px;
    margin:0 auto;
    text-align:left;
    position:relative;
}
.main-visual-txt h2 {
    font-size:70px;
    color:#ffffff;
    text-shadow:5px 5px 8px #000;
    z-index:99;
    position:relative;
    line-height:1.0;
}
.main-visual-txt .main-logo-ci {
    width:395px;
    height:348px;
    position:absolute; 
    top:50%;
    transform:translate(50%, -50%);
    left:-50%;
    z-index:0;
    
}

/* MAIN BORE BTN */
.arrow_bg_blue i
{background:#0097e1; border-radius:50%; position:relative; color:#fff; transition:all 0.5s ease;}
.arrow_bg_blue i:before 
{position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); }
/* MAIN TITLE */
.main-title-con 
{text-align:center; margin-bottom:50px;}
.main-title-con .main-title 
{font-size:50px; font-weight:700; color:#222;}

/* Our Product */
#mainProduct {
    padding:120px 0px;
}

.main-product-con {
    position:relative;
}
.main-product-con .main-product-slide {
    overflow:hidden;
}
.main-product-con .slick-list {
    max-width:51.5%;
    overflow:visible;
    margin:0 auto;
}
.main-product-item {
    margin:0 70px;
    overflow:hidden;
}
.main-product-item a {
    position:relative;
}
.main-product-item .main-product-img {
    background-repeat:no-repeat;
    position:relative;
    height:430px;
    overflow:hidden;
    z-index:999;
    transition:all 0.5s ease;
}
.main-product-item .product-detail-con {
    position:absolute;
    width:65%;
    right:0;
    bottom:0;
    background:#fff;
    padding:50px;
    overflow:hidden;
    transform:translateY(260px);
    transition-delay:1s;
    transition-duration:0.5s;
    transition-timing-function:ease-in-out;
    z-index:99999;
}
.main-product-item.slick-center .product-detail-con {
    transform:translateY(0px);
}
.main-product-item .product-detail-con .point {
    font-size:14px;
    color:#0097e1;
    font-weight:500;
}
.main-product-item .product-detail-con .tit {
    margin:0px 0 10px;
    font-size:30px;
    color:#222;
    font-weight:700;
}
.main-product-item .product-detail-con p {
    font-size:17px;
    color:#222;
    font-weight:400;
}
.main-product-item .product-detail-con .more {
    text-align:right;
}
.main-product-item .product-detail-con .more span {
    font-size:15px;
    color:#222;
    font-weight:700;
    display:inline-block;
    border-bottom:2px solid #222;
    padding-bottom:5px;
}
.main-product-item .product-detail-con .more span i {
    margin-left:20px;
}

.main-product-item:hover .main-product-img {
    transform:scale(1.1);
}
.main-product-item:hover .product-detail-con .more span {
    color:#0097e1;
    border-color:#0097e1
}
/* 메인 제품소개 컨트롤 버튼 */
.main-product-controls {
    position:absolute;
    width:100%;
    top:37%;
    transform:translateY(-50%);
    z-index:1;
}
.main-product-controls .controls-wrap {
    position:relative;
    max-width:1020px;
    margin:0 auto;
}
.main-product-controls .arrow-btn {
    width:64px;
    height:64px;
    position:absolute;
    z-index:1;
    cursor:pointer;
    transition:all 0.25s ease;
}
.main-product-controls .prev-btn {
    left:0;
}
.main-product-controls .next-btn {
    right:0;
}
.main-product-controls .arrow-btn:hover {
    opacity:.8;
}
/* 메인 제품소개 DOTS */
.main-product-con .slick-dots {
    display:flex;
    justify-content:center;
    margin-top:80px;
}
.main-product-con .slick-dots li {
    margin:0 5px;
}
.main-product-con .slick-dots li button {
    font-size:0;
    width:10px; 
    height:10px;
    border-radius:50px;
    background:#999999
}
.main-product-con .slick-dots li.slick-active button {
    width:40px; 
    background:#0097e1
}
.main-product-con .slick-dots li:hover button {
    background:#0097e1
}
/* 로딩 시 첫번째 슬라이드 강제 효과 */
.main-product-item.first .product-detail-con {
    transform:translateY(0) !important;
    transition-delay:0s;
}
.main-product-item.first:not(.slick-center) .product-detail-con {
    transform:translateY(200px) !important;
    transition-delay:1s;
}

/* ABOUT US */
#mainAbout {
    padding:120px 0px;
    background:#f5f5f9;
}
.main-about-con {
    display:flex;
    justify-content:space-between;
}
.main-about-left {
    width:100%;
}
.main-about-left .tit {
    font-size:30px;
    font-weight:600;
    color:#222;
    margin-bottom:10px;
    line-height:1.2;
}
.main-about-left .txt {
    font-size:18px;
    color:#222;
    font-weight:400;
    line-height:1.5;
}
.main-about-left .about-btn-wrap {
    margin-top:50px;
    display:flex;
}
.main-about-left .about-btn-wrap .about-btn {
    width:50%;
    background:#fff;
    padding:30px;
    position:relative;
    transition:all 0.3s ease;
}
.main-about-left .about-btn-wrap .about-btn h4 {
    font-size:22px;
    color:#222;
    font-weight:600;
    margin-bottom:15px;
}
.main-about-left .about-btn-wrap .about-btn p {
    font-size:16px;
    color:#222222;
}
.main-about-left .about-btn-wrap .about-btn .arrow_bg_blue {
    position:absolute;
    right:30px;
    top:50%;
    transform:translateY(-50%);
}
.main-about-left .about-btn-wrap .about-btn i {
    width:50px;
    height:50px;
    font-size:21px;
}
.main-about-left .about-btn-wrap .about-btn:hover {
    background:#0097e1
}
.main-about-left .about-btn-wrap .about-btn:hover h4 {
    color:#fff;
}
.main-about-left .about-btn-wrap .about-btn:hover p {
    color:#fff;
}
/* MAIN INFO */
#mainInfo {
    padding:130px 0px;
}
.main-info-con {
    display:flex;
}

/* 좌측 박스 */
.main-info-left {
    background-color:#0097e1;
    background-image:url('../img/main_fac_bg.png');
    background-repeat:no-repeat;
    background-position:bottom right;
    height:450px;
    width:49.5%;
}
.main-info-left > a {
    display:block;
    padding:60px 70px;
    width: 100%;
    height:100%;
}
.main-info-left .tit {
    font-size:30px;
    font-weight:600;
    color:#fff;
}
.main-info-left .txt {
    margin:30px 0 50px;
    color:#fff;
    font-weight:18px;
    line-height:1.8;
    font-weight:300;
}
.main-info-left .more {
    font-size:15px;
    color:#fff;
    font-weight:300;
    border-bottom:2px solid #fff;
    padding-bottom:10px;
    display:inline-block;
    transition:all 0.3s ease;
}
.main-info-left .more i {
    font-size:12px;
    margin-left:20px;
}

/* 우측 박스 */
.main-info-right {
    width:49.5%;
    padding:60px 70px;
}
.main-info-right .tit {
    font-size:30px;
    font-weight:700;
    color:#222;
}
.main-info-right .number {
    margin-top:40px;
    padding-bottom:20px;
    border-bottom:2px dotted #ccc;
    font-size:30px;
    color:#222;
}
.main-info-right .number i {
    color:#76777e;
    margin-right:20px;
}
.main-info-right .info-txt-box {
    margin:30px 0px;
}
.main-info-right .info-txt-box li {
    margin-bottom:10px;
}
.main-info-right .info-txt-box li picture {
    font-size:20px;
    color:#222222;
    font-weight:400;
}
.main-info-right .info-txt-box li span {
    margin-right:20px;
}
.main-info-right .info-txt-box li span b {
    font-weight:700; 
    margin-right:20px;
}
.main-info-right .info-btn-wrap {
    display:flex;
}
.main-info-right .info-btn-wrap .info-btn {
    background:#f5f5f9; 
    padding:30px;
    display:flex;
    align-items:center;
    position:relative;
}
.main-info-right .info-btn-wrap .info-btn:after {
    content:'';
    position:absolute;
    width:3px;
    height:20%;
    background:#dddddd; 
    right:0;
}
.main-info-right .info-btn-wrap .info-btn:last-child:after {
    display:none;
}
.main-info-right .info-btn-wrap .info-btn p {
    font-size:16px;
    color:#222;
    font-weight:700;
    margin-right:15px;
}

.main-info-right .info-btn-wrap .info-btn i {
    width:25px; 
    height:25px;
}
.main-info-right .info-btn-wrap .info-btn:hover p {
    color:#0097e1
}


/* 반응형 추가 */

@media screen and (max-width: 1024px) {
    .main-visual-txt .visual-txt-wrap{
        max-width: unset;
        width: 100%;
        text-align: center;
    }

    .main-visual-txt h2{
        font-size: 3.5em;
    }

    .main-visual-txt .main-logo-ci{
        transform: translate(-50%, -50%);
        left: 50%;
    }

    #mainVisual{
        position: relative;
    }

    .main-about-con{
        flex-wrap: wrap;
        row-gap: 30px;
    }

    .main-about-con .main-about-right, .main-about-con .main-about-right img{
        width: 100%;
    }

    .main-info-right{
        padding: 20px;
    }
}

@media screen and (max-width: 768px) {
    .main-info-con{
        flex-wrap: wrap;
    }

    .main-info-left ,.main-info-right{
        width: 100%;
    }

}

@media screen and (max-width: 512px) {
    .main-info-con{
        flex-wrap: wrap;
    }

    .main-info-left ,.main-info-right{
        width: 100%;
    }

    .main-visual-txt h2{
        font-size: 1.6em;
    }

    .main-visual-txt .main-logo-ci{
        width: 150px;
        height: 150px;
        background-size: cover;
    }

    .main-info-right .info-btn-wrap .info-btn{
        padding: 10px;
    }

    #mainAbout, #mainInfo{
        padding: 80px 0;
    }

    .main-about-left .tit, .main-info-left .tit, .main-info-right .tit, .main-info-right .number{
        font-size: 24px;
    }

    .main-about-left .txt{
        font-size: 16px;
    }

    .main-about-left .about-btn-wrap{
        flex-wrap: wrap;
    }

    .main-about-left .about-btn-wrap .about-btn{
        width: 100%;
    }

    .main-info-left{
        background-position: bottom -65px right;
    }

    .main-info-left > a{
        padding: 30px;
    }

    .main-info-left .txt br{
        display: none;
    }

    .main-info-right .info-txt-box li span b, .main-info-right .info-txt-box li span{
        margin-right: 10px;
    }

}
