#wrap .main_vi   {width:100%; float:left;margin-bottom:50px; }
#wrap .main_vi .vi_slider {width:100%; height:350px; float:left; }

header {position:absolute; left:0; top:0;}

/*section01*/
.section01 {
    width: 80%; 
    margin: 0 auto; min-width:1240px;
}
.section01 ul:after{content:""; clear:both; display:block;}

.section01 ul li a .sec1_img {
    width: 100%;
    height: 270px;
    overflow: hidden;
    margin-bottom: 15px;
}

.section01 ul li a .sec1_img img {transition:.2s; width:100%}
.section01 ul li a:hover .sec1_img img {transform:scale(1.1);}

.section01 ul li:nth-child(1) a h4::before {
    width: 50px;
    height: 56px;
    content: "";
    display: block;
    position: absolute;
    left: 0px;
    top: 4px;
    background: url('../img/sec1_ico01.png') no-repeat;
}
.section01 ul li:nth-child(2) a h4::before {
    width: 50px;
    height: 56px;
    content: "";
    display: block;
    position: absolute;
    left: 0px;
    top: 4px;
    background: url('../img/sec1_ico02.png') no-repeat;
}
.section01 ul li:nth-child(3) a h4::before {
    width: 50px;
    height: 56px;
    content: "";
    display: block;
    position: absolute;
    left: 0px;
    top: 4px;
    background: url('../img/sec1_ico03.png') no-repeat;
}

.section01 ul li a h4 {
    font-size: 26px;
    line-height: 1.2em;
    font-weight: 400;
    color: #111;
    position: relative;
    padding-left: 60px;
}


.section01 ul li a span {
    position: absolute;
    left: 0px;
    top: -19px;
    letter-spacing: 1.5em;
    color: #dcdcdc;
}



.section01 ul li {
    float: left;
    width:30%;
    position: relative;
}
.section01 ul li:nth-child(2) {margin:0 5%}



/*section02*/
.section02 {
    width: 80%;   min-width:1240px;
    margin: 0 auto;
}

.section02 .sec02_wrap {margin-top:100px;}


.section02 .sec02_wrap:after {
    clear: both;
    display: block;
    content: "";
}

.section02 .sec02_wrap > div {float:left;}
.section02 .sec02_wrap > div h3 {font-weight:600; font-size:26px;}
.section02 .sec02_wrap > div h3 span {font-size:18px; color:#aaa; margin-left:8px; font-weight:300;}


.section02 .sec02_wrap .notice {width: 50%; padding-right:80px; box-sizing:border-box; position:relative; }
.section02 .sec02_wrap .notice .notice_wrap > a {position: absolute; right: 80px; top: 8px;}
.section02 .sec02_wrap .notice .notice_wrap .tit {padding-bottom: 10px; border-bottom: 2px solid #e1e1e1; margin-bottom: 10px; font-size:26px; color:#111; }
.section02 .sec02_wrap .notice .notice_wrap .txt {line-height:35px; }
.section02 .sec02_wrap .notice .notice_wrap .txt:after {content:""; display:block; clear:both;}
.section02 .sec02_wrap .notice .notice_wrap .txt p {float: left; width:80%; height:30px;    overflow:hidden}
.section02 .sec02_wrap .notice .notice_wrap .txt span {color: #aaa; float: right;}


.section02 .sec02_wrap .ask {width: 25%; height: 160px; background: #194256 url('../img/ask_bg.png') no-repeat top right;}

.section02 .sec02_wrap .ask .ask_wrap {padding: 35px 30px; color: #fff; position: relative;}

.section02 .sec02_wrap .ask .ask_wrap h3 {
    color: #fff;
    line-height: 1em;
    margin-bottom: 15px;
}


.section02 .sec02_wrap .ask .ask_wrap a {
    position: absolute;
    right: 30px;
    top: 35px;
}

.section02 .sec02_wrap .ask .ask_wrap p {
    font-weight: 300;
}



.section02 .sec02_wrap .tel {
    width: 25%;
    height: 160px;
    background: #3a6742 url('../img/tel_bg.png') no-repeat top right;
}

.section02 .sec02_wrap .tel .tel_wrap {
    padding: 35px 30px;
    color: #fff;
    position: relative;
}
.section02 .sec02_wrap .tel .tel_wrap h3 {
    color: #fff;
    line-height: 1em;
    margin-bottom: 15px;
}
.section02 .sec02_wrap .tel .tel_wrap h3 img {margin-right:10px; animation:ani_call2 4s linear infinite;}

@keyframes ani_call2 {
	0% { transform:translateX(0) translateY(0); }
	1% { transform:translateX(2px) translateY(-2px); }
	2% { transform:translateX(0) translateY(0); }
	3% { transform:translateX(-2px) translateY(-2px); }
	4% { transform:translateX(0) translateY(0); }
	5% { transform:translateX(-2px) translateY(2px); }
	6% { transform:translateX(0) translateY(0); }
	7% { transform:translateX(2px) translateY(2px); }
	8% { transform:translateX(0) translateY(0); }
	9% { transform:translateX(2px) translateY(-2px); }
	10% { transform:translateX(0) translateY(0); }
	11% { transform:translateX(-2px) translateY(-2px); }
	12% { transform:translateX(0) translateY(0); }
	13% { transform:translateX(-2px) translateY(2px); }
	14% { transform:translateX(0) translateY(0); }
	15% { transform:translateX(2px) translateY(2px); }
	16% { transform:translateX(0) translateY(0); }
	100% { transform:translateX(0) translateY(0); }
}

.section02 .sec02_wrap .tel .tel_wrap p {
    font-weight: 500;
    font-size: 52px;
    line-height: 1em;
}





/*section03*/
.section03 {
    width: 100%;   min-width:1240px; 
    background: url('../img/sec3_bg.jpg') no-repeat 0 0;
    margin: 100px 0;
}



.section03 .sec03_wrap {width:80%; min-width:1240px; margin:0 auto; padding:70px 0; box-sizing:border-box;}
.section03 .sec03_wrap::after {
    clear: both;
    display: block;
    content: "";
}

.section03 .sec03_wrap .video {
    float: left;
}

.section03 .sec03_wrap .vr {width:33%; color:#fff; text-align:center; position:relative; float:right; letter-spacing:.07rem}
.section03 .sec03_wrap .vr::before {
    content: "";
    display: block;
    background-color: rgba(255,255,255,.5);
    width: 1px;
    height: 200px;
    position: absolute;
    left: 0px;
    top: 40px;  
}

.section03 .sec03_wrap .vr img {
	
}

.section03 .sec03_wrap .vr h4 {
    font-size: 36px;
    padding-top: 15px;
}


.section03 .sec03_wrap .vr p {
    font-size: 18px;
    font-weight: 300;
    margin-bottom: 40px;
}



.section03 .sec03_wrap .vr a {width: 160px; height:45px; display:inline-block; border:1px solid #fff; line-height:42px; color:#fff; font-size:16px; position:relative; transition:.3s all}
.section03 .sec03_wrap .vr a:hover {background-color:#fff; color:#333; font-weight:600;}
.section03 .sec03_wrap .vr:hover img {-webkit-animation: flip-vertical-right 2s cubic-bezier(0.455, 0.030, 0.515, 0.955) infinite; animation: flip-vertical-right 2s cubic-bezier(0.455, 0.030, 0.515, 0.955) infinite;}
/* ----------------------------------------------
 * Generated by Animista on 2021-5-27 14:43:9
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation flip-vertical-right
 * ----------------------------------------
 */
@-webkit-keyframes flip-vertical-right {
  0% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
  }
  30% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
    100% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}
@keyframes flip-vertical-right {
  0% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
  }
  30% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
    100% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}


/*.section03 .sec03_wrap .vr a::after {
    content: "";
    display: block;
    background: url('../img/vr_arrow.png');
    width: 30px;
    height: 6px;
    position: absolute;
    right: 20px;
    top: 19px;
}*/




.section04 {
    width: 80%; min-width:1240px; 
    margin: 0 auto;
}

.section04 .sec04_wrap h3 {font-weight:600; font-size:26px;margin-bottom:10px;}
.section04 .sec04_wrap h3 span {font-size:18px; color:#aaa; margin-left:8px; font-weight:300;}

.section04 .sec04_wrap > div:after {content:""; display:block; clear:both;}
.section04 .sec04_wrap > div > div {
    width: 50%;
    float: left;
    box-sizing: border-box;
    color: #fff;
    line-height: 40px;
}

.section04 .sec04_wrap > div  iframe{margin-bottom:-15px;}

.section04 .sec04_wrap .root_daum_roughmap {width:100% !important;}
.section04 .sec04_wrap .wrap_controllers {display:none !important;}

.section04 .sec04_wrap .map1 .map_txt {
    background-color: #194256;
}
.section04 .sec04_wrap > div > div .map_txt {
    padding-left: 20px;
    height: 40px;
}
.section04 .sec04_wrap .map2 {
    padding-left: 20px;
}
.section04 .sec04_wrap .map2 .map_txt {
    background-color: #3a6742;
}
.section04 .sec04_wrap > div > div .map_txt p {
    font-size: 22px;
}
.section04 .sec04_wrap > div > div .map_txt p span {
    margin-left: 10px;
    font-size: 16px;
}

footer {
    width: 100%;
    height: 120px;
    padding: 25px 0;
    background-color: #333;
    margin-top: 100px; min-width:1240px;
    box-sizing: border-box;
}
footer #footer{width:80%; min-width:1240px; margin:0 auto;}
footer #footer .f_logo {
    float: left;
    width: 25%;
    height: 65px;
    background: url('../img/f_logo.png')no-repeat 0 0;
    text-indent: -9999px;
}

footer #footer .f_txt {
    width: 75%;
    padding-top: 10px;
    color: #aaa;
    font-weight: 300;
    line-height: 26px;
}

