@charset "utf-8";

* {margin: 0; padding: 0;}
li {list-style: none;}
a {text-decoration: none; color: inherit;}

body {font-family: 'Noto Sans KR', sans-serif; color: #555;}
div {box-sizing: border-box;}
.Montserrat {font-family: 'Montserrat', sans-serif;}
.Poppins {font-family: 'Poppins', sans-serif;}
/* 
font-family: 'Montserrat', sans-serif;
font-family: 'Noto Sans KR', sans-serif;
font-family: 'Poppins', sans-serif;
 */

/* 전체내용 */
.wrap {width: 100%; overflow: hidden; max-width: 2000px; margin: 0 auto;}


/* 메인 */
main {width: 100%;}
    /* 메인 배너 */
    .main_banner {padding: 11rem 15rem 15rem; background: url(../img/main_banner_bg1.jpg) no-repeat center center / cover;}
        /* 컨텐츠 */
        .main_banner_cont {width: 100%; height: calc(100% - 50px); display: flex; flex-direction: column; justify-content: center;}
            /* 텍스트 */
            .main_banner_cont .txt {color: #fff;}
            .main_banner_cont .txt p {font-size: 20px; margin-top: 20px;}
            .main_banner_cont .txt h2 {font-size: 92px; line-height: 120px;}
            /* 버튼 */
            .main_banner_cont .button {width: 200px; height: 60px; background-color: #11397C; text-align: center; line-height: 60px; margin-top: 50px; color: #fff; border-radius: 10px; cursor: pointer;}
            .main_banner_cont .button:hover {background-color: #2D91FF;}
    /* 개요 */
    .overview {padding: 8rem 15rem 9.5rem; background-color: #fff; display: flex;}
        /* 이미지 */
        .overview .img {width: 50%; height: 680px; position: relative;}
        .overview .img .J {font-size: 875px; font-weight: bold; position: absolute; transform: rotateY(180deg); top: -220px; left: -77px; color: #11397C; opacity: 0; transition: all .5s;}
        .overview .img .img1 {width: 60%; height: 67%; position: absolute; background-color: #ddd; top: 150px; right: 120px; opacity: 0; transition: all .5s; background: no-repeat url(../img/overview_img1.jpg) center center / cover;}
        .overview .img .img2 {width: 44%; height: 38%; position: absolute; background-color: #999; top: 318px; left: 100px; opacity: 0; transition: all .5s; background: no-repeat url(../img/overview_img2.jpg) center center / cover;}
        .overview .img .img3 {width: 44%; height: 38%; position: absolute; background-color: #999; bottom: 0; right: 150px; opacity: 0; transition: all .5s; background: no-repeat url(../img/overview_img3.jpg) center center / cover;}

        /* 텍스트 */
        .overview .txt {width: 50%; height: 680px; padding-left: 160px; transform: translate(0, 150px); opacity: 0; transition: all .5s;}
        .overview .txt .intro {width: 100%; display: flex; align-items: center;}
        .overview .txt .intro .bar {width: 45px; height: 5px; border-radius: 5px; background-color: #11397C; margin-right: 10px;}
        .overview .txt .intro p {color: #11397C;}
        .overview .txt h3 {color: #11397C; font-size: 42px; margin-bottom: 27px;}
        .overview .txt .service {margin-top: 77px;}
        .overview .txt .service ul li {display: flex; margin-bottom: 60px;}
        .overview .txt .service ul li div {width: 60px; height: 60px; display: flex; justify-content: center; align-items: center; margin-right: 10px;}
        .overview .txt .service ul li p {height: 60px; line-height: 60px; color: #11397C; font-weight: bold;}
    /* 회사소개 */
    .about_us {padding: 7rem 15rem; width: 50%; height: 462px; background: url(../img/about_us_bg1.jpg) no-repeat center center / cover; display: flex; position: relative; transform: translate(-100%, 0); transition: all 1s; opacity: 0;}
        /* 텍스트 */
        .about_us .txt {color: #fff;}
        .about_us .txt .intro {width: 100%; display: flex; align-items: center;}
        .about_us .txt .intro .bar {width: 45px; height: 5px; border-radius: 5px; background-color: #fff; margin-right: 10px;}
        .about_us .txt h3 {font-size: 42px; font-weight: normal; margin-bottom: 27px;}
        .about_us .txt .button {width: 200px; height: 60px; background-color: #11397C; text-align: center; line-height: 60px; margin-top: 50px; color: #fff; border-radius: 10px; cursor: pointer;}
        .about_us .txt .button:hover {background-color: #2D91FF;}

        /* 이미지 */
        .about_us .img {width: 60%; height: 462px; position: absolute; right: 0; transform: translate(60%); background: url(../img/about_us_img1.png) no-repeat center center / cover;}

    /* 사업영역 */
    .bussiness {padding: 7rem 15rem 10rem; text-align: center;}
        /* 텍스트 */
        .bussiness .txt {width: 100%; transform: translate(0, 150px); opacity: 0; transition: all .5s;}
        .bussiness .txt .intro {width: 100%; display: flex; align-items: center; justify-content: center;}
        .bussiness .txt .intro .bar {width: 45px; height: 5px; border-radius: 5px; background-color: #11397C; margin-right: 10px;}
        .bussiness .txt .intro p {color: #11397C;}
        .bussiness .txt h3 {color: #11397C; font-size: 42px; margin-bottom: 60px;}

        /* 사업 */
        .bussiness ul {display: flex; justify-content: space-between;}
        .bussiness ul li {display: flex; flex-direction: column; border: 3px solid #ddd; width: 22%;  padding: 4rem 0; align-items: center; box-sizing: border-box; transition: all .5s ease-in; transform: translate(0, 150px); opacity: 0;}
        .bussiness ul li.active {transform: translate(0, 0); opacity: 1;}
        .bussiness ul li:hover {border: 3px solid #11397C;}
        .bussiness ul li .Montserrat {font-weight: bold; color: #ddd; font-size: 25px; margin-bottom: 20px; transition: all .5s;}
        .bussiness ul li:hover .Montserrat {color: #11397C;}
        .bussiness ul li .icon {width: 110px; height: 110px; display: flex; justify-content: center; align-items: center; border-radius: 50%; margin-bottom: 40px; border: 1px solid #ddd; transition: all .5s;}
        .bussiness ul li:hover .icon {border: 5px solid #11397C;}
        .bussiness ul li .icon img {transition: all .5s; width: 50px;}
        .bussiness ul li:hover .icon img {transform: rotateY(360deg);}
        .bussiness ul li .title {font-size: 21px; font-weight: bold;  color: #0053A5; margin-bottom: 10px;}
        .bussiness ul li .explane {margin-bottom: 20px;}
        .bussiness ul li .button {width: 200px; font-size: 12px; font-weight: normal; border-top: 1px solid #ddd; border-bottom:  1px solid #ddd; transition: all .5s; position: relative;}
        .bussiness ul li .button::before {content: ""; display: block; width: 0%; height: 100%; position: absolute; top: 0; left: 0; background-color: #11397C; transition: all .5s; z-index: -1;}
        .bussiness ul li:hover .button {color: #fff;}
        .bussiness ul li:hover .button::before {width: 100%;}
        .bussiness ul li .button a {display: block; width: 100%; padding: 15px 0;}
    
    /* 배너 */
    .banner {padding: 0 15rem; height: 500px; display: flex; justify-content: center; align-items: center; text-align: center; background-image: url(../img/banner_bg1.jpg); background-size: cover; background-position: center; background-attachment: fixed; transform: rotate(180deg);}
    .banner h3 {font-size: 42px; color: #fff; transform: rotate(180deg);}

    /* 프로그램 */
    .product {padding: 7rem 15rem 9rem; text-align: center;}
        /* 텍스트 */
        .product .txt {width: 100%; transform: translate(0, 150px); opacity: 0; transition: all .5s;}
        .product .txt .intro {width: 100%; display: flex; align-items: center; justify-content: center;}
        .product .txt .intro .bar {width: 45px; height: 5px; border-radius: 5px; background-color: #11397C; margin-right: 10px;}
        .product .txt .intro p {color: #11397C;}
        .product .txt h3 {color: #11397C; font-size: 42px; margin-bottom: 60px;}

        /* 프로그램 */
        .product ul {display: flex; justify-content: space-between;}
        .product ul li {width: 22%; transition: all .5s ease-in; transform: translate(-200px , 0); opacity: 0;}
        .product ul li.actives {transform: translate(0 , 0); opacity: 1;}
        .product ul li .img_wrap {width: calc(100% - 20px); height: 410px; background-color: #eee; transform: translate(20px, 20px); margin-bottom: 30px;}
        .product ul li .img_wrap .img {width: 100%; height: 100%; background-color: #eee; transform: translate(-20px, -20px); box-shadow: 0 0 10px #ddd; transition: all .5s;}
        .product ul li:hover .img_wrap .img {transform: translate(0, 0);}
        .product ul li .img_wrap .img1 {background: url(../img/eset.png) no-repeat center center / cover;}
        .product ul li .img_wrap .img2 {background: url(../img/commvault.jpg) no-repeat center center / cover;}
        .product ul li .img_wrap .img3 {background: url(../img/Virtualization.jpg) no-repeat center center / cover;}
        .product ul li .img_wrap .img4 {background: url(../img/bingo.jpg) no-repeat center center / cover;}
        .product ul li p {margin-bottom: 5px;}
        .product ul li p.name {font-size: 24px;}

@media screen and (max-width:1600px) {
    .main_banner {padding: 11rem 11rem 15rem;}

    .overview {padding: 8rem 11rem 9.5rem;}
    .overview .img {height: 600px;}
    .overview .txt {padding-left: 100px;}
    .overview .txt h3 {font-size: 36px;}

    .about_us {width: 52%; padding: 7rem 11rem;}
    .about_us .txt h3 {font-size: 36px;}

    .bussiness {padding: 7rem 11rem 10rem;}
    .bussiness .txt h3 {font-size: 36px;}

    .banner h3 {font-size: 36px;}

    .product {padding: 7rem 11rem 9rem;}
    .product .txt h3 {font-size: 36px;}
    .bussiness ul li {padding: 3rem 0;}
    .product ul li .img_wrap {height: 350px;}
    .product ul li p {font-size: 12px;}
    .product ul li p.name {font-size: 21px;}

}
@media screen and (max-width:1400px) {

    .overview .txt h3 {font-size: 32px;}

    .about_us .txt h3 {font-size: 32px;}

    .bussiness .txt h3 {font-size: 32px;}

    .banner h3 {font-size: 32px;}

    .product .txt h3 {font-size: 32px;}

    .bussiness ul li {padding: 1rem 0;}
    .bussiness ul li .Montserrat {font-size: 22px;}
    .bussiness ul li .button {width: 150px; font-size: 12px;}
    .bussiness ul li .title {font-size: 18px;}

    .product ul li .img_wrap {height: 300px;}
    .product ul li p.name {font-size: 18px;}

    body {font-size: .9rem;}
}
@media screen and (max-width:1250px) {
    .main_banner {padding: 4rem 8rem 8rem;}
    .main_banner_cont .txt p {font-size: 16px;}
    .main_banner_cont .txt h2 {font-size: 78px; line-height: 85px;}
    .main_banner_cont .button {width: 150px; height: 50px; line-height: 50px;}

    .overview {padding: 4rem 8rem 5rem;}
    .overview .img {height: 550px;}
    .overview .img .J {font-size: 750px;}
    .overview .txt .service {margin-top: 32px;}
    .overview .txt .service ul li {margin-bottom: 40px;}
    .overview .txt {height: 550px;}

    .about_us {padding: 4rem 8rem; width: 55%; height: 280px;}
    .about_us .img {height: 280px; width: 50%
        ;}
    .about_us .txt .button {width: 150px; height: 50px; line-height: 50px;}

    .bussiness {padding: 4rem 8rem 6rem;}

    .banner {height: 350px;}
    .product {padding: 4rem 8rem 5rem;}
    
}
@media screen  and (max-width: 1100px) {
    .main_banner_cont .txt h2 {font-size: 70px;}
    .overview .img {height: 400px;}
    .overview .img .J {font-size: 550px; left: -55px;}
    .overview .img .img1 {right: 65px;}
    .overview .img .img2 {top: 210px;}
    .overview .txt {height: 400px; padding-left: 50px}
    .overview .txt .service ul li {margin-bottom: 10px;}

    .about_us {width: auto;}
    .about_us .img {display: none;}

    .bussiness ul li .explane {display: none;}
    .bussiness ul li .icon {margin-bottom: 20px;}
    .bussiness ul li .title {margin-bottom: 20px;}

    .product ul li .img_wrap {height: 250px;}
}

@media screen  and (max-width: 1000px) {
    .main_banner {padding: 2rem 3rem 3rem;}
    .main_banner_cont .txt h2 {font-size: 50px; line-height: 57px;}
    .main_banner_cont .txt p {font-size: 14px;}
    .main_banner_cont .button {width: 130px; height: 45px; line-height: 45px; margin-top: 30px;}

    .overview {padding: 2rem 3rem 3rem;}
    .overview .img {height: auto; width: 40%;}
    .overview .img .J {left: 25%; font-size: 350px;}
    .overview .img .img1 {display: none;}
    .overview .img .img2 {display: none;}
    .overview .img .img3 {display: none;}
    .overview .txt { height: auto;}
    .overview .txt h3 {font-size: 25px;}
    .overview .txt .service ul {display: flex;}
    .overview .txt .service ul li {display: block; text-align: center; margin-bottom: 0;}
    .overview .txt .service ul li:nth-of-type(2) {margin: 0 60px;}
    .overview .txt .service ul li div {margin-right: 0;}
    .overview .txt .service ul li p {height: 30px; line-height: 30px;}

    .about_us {padding: 2rem 3rem;}
    .about_us .txt {width: 100%;}
    .about_us .txt h3 {font-size: 25px; ;}
    .about_us .txt .button {width: 130px; height: 45px; line-height: 45px; margin-top: 30px;}

    .bussiness {padding: 2rem 3rem 3rem;}
    .bussiness .txt h3 {font-size: 25px; margin-bottom: 40px;}
    .bussiness ul li .icon {width: 90px; height: 90px;}
    .bussiness ul li .icon img {width: 40px;}
    .bussiness ul li .title {font-size: 16px;}
    .bussiness ul li .Montserrat {font-size: 20px;}
    .bussiness ul li .button {font-size: 12px;}

    .banner {height: 250px;}
    .banner h3 {font-size: 25px;}

    .product {padding: 2rem 3rem 3rem;}
    .product .txt h3 {font-size: 25px; margin-bottom: 40px;}
    .product ul li p.name {font-size: 16px;}

    body {font-size: .8rem;}
}

@media screen  and (max-width: 780px){
    .overview .img .J {left: 14%;}

    .bussiness ul li .button  {width: 100px;}
    .bussiness ul li .icon {width: 70px; height: 70px;}
    .bussiness ul li .icon img {width: 30px;}
    .bussiness ul li .title {font-size: 14px;}

    .banner {padding: 0 3rem;}

    .product ul li .img_wrap {height: 200px;}
    .product ul li p {display: none;}
    .product ul li p.name {display: block;}
}

@media screen  and (max-width: 640px) {

    .main_banner {text-align: center;}
    .main_banner_cont .txt h2 {font-size: 40px; line-height: 50px;}
    .main_banner_cont .button {margin: 30px auto 0;}

    .overview .img {display: none;}
    .overview .txt {width: 100%; text-align: center; padding-left: 0;}
    .overview .txt .intro {justify-content: center;}
    .overview .txt .service ul {justify-content: center;}

    .about_us {text-align: center; height: auto;}
    .about_us .txt .intro {justify-content: center;}
    .about_us .txt .button {margin: 30px auto 0;}

    .bussiness ul {display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 30px 0;}
    .bussiness ul li {width: 80%; margin: 0 auto;}

    .banner {height: 200px;}

    .product ul {display: block;}
    .product ul li {width: 100%;}
    .product ul li p {margin-bottom: 30px;}
    .product ul li .img_wrap {height: 150px; width: 100%; transform: translate(0,0); margin-bottom: 10px;}
    .product ul li .img_wrap .img {transform: translate(0,0); background-color: #fff;}
    .product ul li .img_wrap .img1 {background-image: url(../img/ESET_logo.png); background-size: 40%;}
    .product ul li .img_wrap .img2 {background-image: url(../img/commvault_logo.png); background-size: 40%;}
    .product ul li:nth-of-type(3) {display: none;}
    .product ul li .img_wrap .img4 {background-image: url(../img/bingoCVM_logo.png); background-size: 40%;}
}

@media screen  and (max-width: 440px) {

    .main_banner {padding: 1rem;}
    .main_banner_cont .txt h2 {font-size: 30px; line-height: 37px;}
    .main_banner_cont .txt p {font-size: 12px;}
    .main_banner_cont .txt p:first-of-type {margin-top: 0;}

    .overview {padding: 1rem;}
    .overview .txt h3 {font-size: 20px;}

    .about_us {padding: 1rem;}
    .about_us .txt h3 {font-size: 20px;}

    .bussiness{padding: 1rem;}
    .bussiness .txt h3 {font-size: 20px; margin-bottom: 27px;}
    .bussiness ul {grid-template-columns: repeat(2, 1fr);}
    .bussiness ul li {border: none; width: auto; padding: 0;}
    .bussiness ul li .Montserrat {display: none;}
    .bussiness ul li .Montserrat.button {display: block; margin-bottom: 0;}

    .banner {padding: 1rem; height: 150px;} 
    .banner h3 {font-size: 20px;}

    .product {padding: 1rem;}
    .product .txt h3 {font-size: 20px; margin-bottom: 27px;}
    .product ul li .img_wrap {height: 100px; width: 100%;}



    body {font-size: .7rem;}
}