
/*main_banner*/
.main_banner {
    width: 100%;
    height: 100vh;
    position: relative;
    z-index: 500;
}
.main_banner .full_slide {
    width: 100%;
    height: 100%;
    position: absolute;
}
    .main_banner .full_slide .slide_img {
        width:100%;
        height:100%;
        position:absolute;
    }
        .main_banner .full_slide .slide_img:nth-child(1) {
            background-image: url(../img/banner_background5.jpg);
            background-size: cover;
            background-position: center;
        }
        .main_banner .full_slide .slide_img:nth-child(2) {
            background-image: url(../img/banner_background4.jpg);
            background-size: cover;
            background-position: center;
        }
        .main_banner .bg {
            background: #000;
            width: 100%;
            height: 100%;
            position: absolute;
            opacity: 0.6;
        }

    .banner_container {
        width: 100%;
        /*overflow: hidden;*/
        position: absolute;
        bottom: 17%;
    }
    .banner_container::before {
        content:"";
        width:100%;
        height:2px;
        background:#fff;
        position:absolute;
        top:50%;
    }
    /*slide*/
.banner_slide {
    width: 100%;
    position: absolute;
    bottom: 18vh;
    padding:0px 180px;
    box-sizing: border-box;
}

    .banner_slide::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 1px;
        top: 50%;
        left: 0;
        background: #fff;
    }
.banner_slide .swiper-container {
    width: 100%;
    height: 100%;
}
.banner_slide .swiper-wrapper > div + div {
    margin-left: 78px;
}

.banner_slide .swiper-slide {
    text-align: center;
    font-size: 18px;
    width: calc(25% - 58.8px);
    color:#fff;
    position:relative;
}
    .banner_slide .swiper-slide::after {
        content: "";
        display: block;
        padding-bottom: 100%;
    }
    .banner_slide .swiper-slide .slide_container {
        width:100%;
        height:100%;
        position:absolute;
    }
    .banner_slide .swiper-slide::before {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-radius: 100px;
        background: #fff;
        top: 50%;
        left: 50%;
        margin-top: -5px;
        margin-left: -5px;
    }
    .banner_slide .swiper-slide .slide_container h2 {
        width: 100%;
        height: 34%;
        font-size: 2.4rem;
        font-family: 'NIXGON-Vb';
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: center;
    }
        .banner_slide .swiper-slide .slide_container h2::after {
            content: "";
            display: block;
            position: absolute;
            width: 0%;
            height: 12%;
            background-color: #00a1e4;
            opacity: .6;
            z-index: -1;
            transition: all .3s ease-in-out;
        }
    .banner_slide .swiper-slide:hover .slide_container h2::after {
        width: 65%;
    }


        .banner_slide .swiper-button-prev {
            display: none;
        }
.banner_slide .swiper-button-next {
    display:none;
}
/*banner_title*/
.banner_title {
    color: #fff;
    width: 100%;
    text-align: center;
    position: absolute;
    top:25vh;
}
    .banner_title h1 {
        font-size: 5rem;
        font-weight:600;
    }
    .banner_title span {
        font-size: 2rem;
        padding: 40px;
        display: block;
    }




/*�����̵� ȣ�� ��*/
.hovicon {
    cursor: pointer;
    border-radius: 50%;
    z-index: 1;
}

    .hovicon.small {
        font-size: 20px;
        line-height: 45px;
        width: 45px;
        height: 45px;
        margin: 7px;
    }

    .hovicon.mini {
        font-size: 15px;
        line-height: 32px;
        width: 30px;
        height: 30px;
        margin: 7px;
    }

    .hovicon.auto-width {
        width: auto;
        height: auto;
        padding: 15px;
    }

    .hovicon:after {
        pointer-events: none;
        position: absolute;
        width: 94%;
        height: 94%;
        border-radius: 50%;
        content: '';
        -webkit-box-sizing: content-box;
        -moz-box-sizing: content-box;
        box-sizing: content-box;
    }

    .hovicon:before {
        speak: none;
        font-size: 48px;
        line-height: 90px;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        display: block;
        -webkit-font-smoothing: antialiased;
    }

    /* Effect 1 */
    .hovicon.effect-1 {
        background: rgba(255, 255, 255, 0.1);
        -webkit-transition: background 0.2s, color 0.2s;
        -moz-transition: background 0.2s, color 0.2s;
        transition: background 0.2s, color 0.2s;
    }

        .hovicon.effect-1:after {
            top: 2px;
            left: 2px;
            padding: 7px;
            box-shadow: 0 0 0 2px #00a1e4;
            -webkit-transition: -webkit-transform 0.2s, opacity 0.2s;
            -webkit-transform: scale(.8);
            -moz-transition: -moz-transform 0.2s, opacity 0.2s;
            -moz-transform: scale(.8);
            -ms-transform: scale(.8);
            transition: transform 0.2s, opacity 0.2s;
            transform: scale(.8);
            opacity: 0;
        }

        /* Effect 1b */
        .hovicon.effect-1.sub-b:hover {
            background: rgba(255, 255, 255, 0);
            /*color: #217eff;*/
        }

            .hovicon.effect-1.sub-b:hover i {
                color: #41ab6b;
            }

        .hovicon.effect-1.sub-b:after {
            -webkit-transform: scale(1.2);
            -moz-transform: scale(1.2);
            -ms-transform: scale(1.2);
            transform: scale(1.2);
        }

        .hovicon.effect-1.sub-b:hover:after {
            -webkit-transform: scale(1);
            -moz-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1);
            opacity: 1;
        }


/*�����̵� ������ ����Ʈ*/
.menu_item {
    width: 100%;
    height: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.banner_slide .swiper-slide:hover .menu_icon {
    color: #fff;
    -webkit-animation: jiggle ease-in-out 400ms infinite;
    animation: jiggle ease-in-out 400ms infinite;
}

.menu_item .menu_icon {
    display: inline-block;
    transition: color ease-in-out 80ms;
    width: 19%;
    padding-top: 1rem;
    transition-duration: 0.5s;
}

    .menu_item .menu_icon img {
        width: 100%;
    }

@-webkit-keyframes jiggle {
    0% {
        transform: none;
    }

    25% {
        transform: rotateZ(5deg);
    }

    75% {
        transform: rotateZ(-5deg);
    }

    100% {
        transform: none;
    }
}

@keyframes jiggle {
    0% {
        transform: none;
    }

    25% {
        transform: rotateZ(5deg);
    }

    75% {
        transform: rotateZ(-5deg);
    }

    100% {
        transform: none;
    }
}


/*.main_content01*/
.main_content01 {
    padding:150px 0px;
    overflow:hidden;
}
    .main_content01 .content01_box {
        width:25%;
        height:550px;
        padding: 0px 10px;
        box-sizing: border-box;
        float: left;
    }
        .main_content01 .content01_box:hover div {
            box-shadow:10px 10px 10px rgba(0, 0, 0, 0.34);
            transition-duration:0.5s;
        }
        .main_content01 .content01_box div {
            width: 100%;
            height: 100%;
            box-sizing: border-box;
            background-size: cover;
            background-position: center;
            padding: 110px 43px;
            color: #fff;
        }
        .main_content01 .content01_box:nth-child(1) div {
            background-image: url(../img/main01.jpg);
        }
        .main_content01 .content01_box:nth-child(2) div {
            background-image: url(../img/main02.jpg);
        }
        .main_content01 .content01_box:nth-child(3) div {
            background-image: url(../img/main03.jpg);
        }
        .main_content01 .content01_box:nth-child(4) div {
            background-image: url(../img/main04.jpg);
        }
            .main_content01 .content01_box div h1 {
                font-size: 3rem;
                font-weight: 600;
                position: relative;
                padding-bottom: 20px;
            }
                .main_content01 .content01_box div h1::after {
                    content:'';
                    position:absolute;
                    width:30px;
                    height:3px;
                    background:#fff;
                    bottom:0px;
                    left:0;
                }
        .main_content01 .content01_box div p {
            padding-top: 20px;
            font-size: 1.6rem;
            line-height: 25px;
            font-weight: 300;
            -webkit-transform: translate3d(0,40px,0);
            transform: translate3d(0,40px,0);
            opacity: 0;
            -webkit-transition: opacity 0.2s, -webkit-transform 0.35s;
            transition: opacity 0.2s, transform 0.35s;
        }
        .main_content01 .content01_box:hover div p {
            opacity: 1;
            -webkit-transform: translate3d(0,0,0);
            transform: translate3d(0,0,0);
            -webkit-transition-delay: 0.05s;
            transition-delay: 0.05s;
            -webkit-transition-duration: 0.5s;
            transition-duration: 0.5s;
        }
		.main_content01 .content01_box div a{
			position:absolute;
			padding:10px 30px;
			font-size:1.6rem;
			color:#fff;
			border:1px solid #fff;
			bottom:60px;
			right:50px;
			-webkit-transform: translate3d(0,40px,0);
            transform: translate3d(0,40px,0);
            opacity: 0;
            -webkit-transition: opacity 0.2s, -webkit-transform 0.35s;
            transition: opacity 0.2s, transform 0.35s;
		}
		.main_content01 .content01_box:hover div a {
            opacity: 1;
            -webkit-transform: translate3d(0,0,0);
            transform: translate3d(0,0,0);
            -webkit-transition-delay: 0.05s;
            transition-delay: 0.05s;
            -webkit-transition-duration: 0.5s;
            transition-duration: 0.5s;
        }


/*.main_content02*/
.main_content02 {
    padding: 150px 0px;
    overflow: hidden;
    background:#fafafa;
}
.portfolio_container{
	padding-top:70px;
}

/*.main_content03*/
.main_content03 {
    padding: 150px 0px;
    overflow: hidden;
}
    .main_content03 .service_board {
        width:50%;
        float:left;
        padding:20px;
        padding-top:50px;
        box-sizing:border-box;
    }
        .main_content03 .service_board h2 {
            font-family: 'NIXGON-Vb';
            font-size: 1.8rem;
            padding: 20px 0px;
            font-weight: bold;
        }
            .main_content03 .service_board ul {
                width:100%;
                border-top:2px solid #000;
                border-bottom:2px solid #000;
            }
                .main_content03 .service_board ul li {
                    padding: 15px;
                    font-size: 1.6rem;
                    border-bottom: 1px dashed #cccccc;
                    font-weight:300;
                }
				.main_content03 .service_board ul li span{
					color:#e00000;
					font-size:1.2rem;
				}
				.main_content03 .service_board ul li:hover{
					color:#00a1e4;
					transition-duration: 0.5s;
					background:#fff;
				}

    .main_content03 .main_map {
    }
    .main_content03 .main_map iframe {
        width: 100%;
        padding-top: 50px;
    }





@media all and (min-width:1400px) and (max-width:1600px) {
    .banner_slide {
        padding: 0px 3vw;
    }
}
@media all and (min-width:1200px) and (max-width:1400px) {
    .banner_slide {
        padding: 0px 0vw;
    }
}
@media all and (min-width:1000px) and (max-width:1200px) {
    .banner_slide {
        padding: 0px 17vw;
    }
}
@media all and (min-width:768px) and (max-width:1000px) {
    .banner_slide {
        padding: 0px 12vw;
    }
}
@media all and (min-width:768px) and (max-width:1200px) {
    .banner_title{
        top: 20vh;
    }
    /**/
    .banner_slide .swiper-slide {
       /* width: calc(50% - 38.8px);
        width: calc(25% - 18.8px);*/
    }
/*
    .banner_slide .swiper-wrapper > div:nth-child(3n) {
        margin-left: 0;
    }
*/
/*
   // slide  4 -- > 2개로 변경  
    .banner_slide .swiper-button-prev {
        display: block;
    }

    .banner_slide .swiper-button-next {
        display: block;
    }

    .banner_slide .swiper-wrapper > div + div {
        margin-left:60px;
        margin-bottom: 30px;
    }*/

}

    /*slide  2 -- > 4개로 변경  */

@media screen and (max-width:1200px) {

    .banner_slide {
        bottom: 3vh;
        padding:0px 230px;
    }
    
    .swiper-wrapper {
        display: flex;
        flex-wrap:wrap;
        justify-content:center;
        width: 100%;
      }

    .banner_slide .swiper-wrapper > div + div {
        margin-left:0px;
        margin-bottom: 30px;
    }
    .banner_slide .slidema{
        margin-right: 50px;
    }

    .banner_slide .swiper-slide {
        font-size: 17px;
        width: calc(40% - 30.8px);
    }
    .banner_slide::before{
        display: none;
    }
    .banner_slide .swiper-slide::before{
        display: none;
    }

}
@media screen and (max-width:1024px) {
    .banner_title{
        top: 20vh;
    }


    .banner_slide {
        bottom: 3vh;
        padding:0px 180px;
    }

    .banner_slide .swiper-wrapper > div + div {
        margin-left:0px;
        margin-bottom: 30px;
    }
    .banner_slide .slidema{
        margin-right: 50px;
    }

    .banner_slide .swiper-slide {
        font-size: 17px;
        width: calc(40% - 30.8px);
    }




}

@media screen and (max-width:768px) {
   
    /*swiper*/
    /*
    .banner_slide .swiper-slide {
        width: calc(50% - 26.8px);
    }

    .banner_slide .swiper-wrapper > div:nth-child(3n) {
        margin-left: 0;
    }
    .banner_slide {
        padding: 0px 2vw;
    }
    .banner_slide .swiper-wrapper > div + div {
        margin-left:53px;
    }*/
    .hovicon:after {
        width:90%;
        height:90%;
    }
    /*content01*/
    .main_content01 .content01_box {
        width: 100%;
        height: 250px;
        padding: 0;
    }
        .main_content01 .content01_box div {
            padding: 40px 43px;
        }
            .main_content01 .content01_box div p {
                opacity: 1;
                transform: translate3d(0,0px,0);
                -webkit-transform: translate3d(0,0px,0);
            }
			.main_content01 .content01_box div a{
				bottom:20px;
				right:30px;
				-webkit-transform: translate3d(0,0px,0);
				transform: translate3d(0,0px,0);
				opacity: 1;
			}
            /*content03*/
    .main_content03 .service_board {
        width:100%;
    }




    .banner_slide {
        bottom: 3vh;
        padding:0px 80px;
    }

    .banner_slide .swiper-wrapper > div + div {
        margin-left:0px;
        margin-bottom: 30px;
    }
    .banner_slide .slidema{
        margin-right: 50px;
    }

    .banner_slide .swiper-slide {
        font-size: 15px;
        width: calc(40% - 30.8px);
    }



    
}

@media screen and (max-width:550px) {

    .banner_title{
        top: 18vh;
    }

        .banner_slide {
            bottom: 7vh;
            padding:0px 20px;
        }
    
        .swiper-wrapper {
            display: flex;
            flex-wrap:wrap;
            justify-content:center;
            width: 100%;
          }
        .banner_slide .swiper-wrapper > div + div {
            margin-left:0px;
            margin-bottom: 30px;
        }
        .banner_slide .slidema{
            margin-right: 30px;
        }
    
        .banner_slide .swiper-slide {
            font-size: 17px;
            width: calc(50% - 30.8px);
        }  
         .banner_slide::before{
            display: none;
        }
        .banner_slide .swiper-slide::before{
            display: none;
        }

        .banner_slide .swiper-slide .slide_container h2{
            font-size: 2rem;
        }
        .banner_title h1{
            font-size: 3rem;
            line-height: 5rem;
        }
        .banner_title span{
            font-size: 1.5rem;
            line-height: 2.5rem;
            padding: 20px;
        }


}


/* top tell + e.mail */

#wrap{
    position: relative;
}

.topte{
    position: fixed;
    width: 300px;
    height: 150px;
    background-color: #fff;
    left: 0;
    top: 10%;
    border-radius: 0  5px  5px 0;
    z-index: 10000;
    box-shadow: 0 0 4px 4px #1414141a;
    transition: .2s;
}
.topte img{
    position: absolute;
    right: 5%;
    top: -40%;
    transform: translateY(-50%);
    width: 15px;
}
.tebtn{
    position: fixed;
    width: 35px;
    height: 130px;
    background-color: #fff;
    left: 0;
    top: 10%;
    border-radius: 0  5px  5px 0;
    z-index: 10000;
    transition: .2s; 
    border-style: none;
    display: none;
    font-weight: 900;
    box-shadow: 0 0 4px 4px #1414141a;

    display: none;
  }
  
.topte02{
    position: fixed;
    width: 35px;
    height: 130px;
    background-color: #fff;
    background-color:  #e46a28;
    color: #fff;
    left: 0;
    top: 30%;
    border-radius: 0  5px  5px 0;
    z-index: 10000;
    box-shadow: 0 0 4px 4px #1414141a;
    transition: .2s;
    font-size: 14px;
  }
  .topte02 ul{
    position: relative;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    padding: 10px;
}
/*
.topte  img{
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(-90deg);
    width: 10px;
}
.topte:hover{
    background-color:  #ffffffc2;
}*/
.topte ul{
    position: relative;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    padding: 0px 40px;
}
.topte ul li{
    font-size: 17px;
    margin-bottom: 15px;
}
.topte ul li b{
    font-size: 21px;
    font-weight: 900;
    color: #546f78;
}
@media screen and (max-width:1024px) {
   /* .topte{
        top: 80%;
    }
*/
}
@media screen and (max-width:860px) {


    .topte{
       top: 10%;
        left:0;
        width: 220px;
        height: 130px;
        background-color:  #ffffffc2;
    }
        /*
    .topte:hover{
        left:0;
        background-color:  #ffffffc2;
    }

    .topte{
        background-color:  #ffffffc2;
        width: 220px;
        height: 130px;
    }*/
    .topte ul{
        padding: 0px 30px;
    }
    .topte ul li b{
        font-size: 19px;
    }
    .topte ul li{
        font-size: 12px;
        margin-bottom: 12px;
    }
}
