/* 메인 Visual */

.main_visual {height: 81vh; margin-top:148px;}
.main_visual .slick-list, .main_visual .slick-track {height: 100%;}
.main_visual .slick-slide {height: 100%;}
.main_visual .slick-slide > div {height: 100%;}
.main_visual .slide {position: relative; height: 100%; background-repeat: no-repeat; background-position: center center; background-size: cover;}
.main_visual .slide00 {background-image: url(../images/main/main_visual00.jpg);}
.main_visual .slide01 {background-image: url(../images/main/main_visual01.jpg);}
.main_visual .slide02 {background-image: url(../images/main/main_visual02.jpg);}
.main_visual .slide03 {background-image: url(../images/main/main_visual03.jpg);}
.main_visual .slide04 {background-image: url(../images/main/main_visual04.jpg);}
.main_visual .slide05 {background-image: url(../images/main/main_visual05.jpg);}
.main_visual .slide .inner {position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: 0 auto;}
.main_visual .slide .slide_txt {position: absolute; top: 50%; transform: translateY(-50%); right: 0; text-align: center; color: #fff;}
.main_visual .slide00 .slide_txt {top: 70%; left: 45px; width: 400px; overflow: hidden; }
.main_visual .slide00 .slide_txt .btn_visual {float: left; margin-right: 20px;}
.main_visual .slide .slide_txt strong {display: block; margin: 0 0 30px 0; font-size: 60px;}
.main_visual .slide .slide_txt p {line-height: 1.6; font-size: 16px;}
.main_visual .slide .btn_visual {display: block; width: 176px; height: 46px; margin: 50px auto 0; line-height: 46px; font-size: 16px; background-color: #111; color: #fff;}
.main_visual .slick-arrow {position: absolute; top: 50%; transform: translateY(-50%); display: block; width: 62px; height: 62px; text-indent: -9999px; border: 0; z-index: 1;}
.main_visual .slick-arrow.slick-prev {left: 30px; background: url(../images/main/visual_btn01.png)}
.main_visual .slick-arrow.slick-next {right: 30px; background: url(../images/main/visual_btn02.png)}
.main_visual .slick-dots {position: absolute; bottom: 30px; left: 0; right: 0; margin: 0 auto; text-align: center; font-size: 0;}
.main_visual .slick-dots li {display: inline-block; margin: 0 5px; vertical-align: top;}
.main_visual .slick-dots li button {width: 10px; height: 10px; border-radius: 50%; background-color: #999; border: 0; text-indent: -9999px;}
.main_visual .slick-dots li.slick-active button {width: 30px; border-radius: 10px; background-color: #487fc0;}


/* 메인 카운팅 */
.count_wrap { width:100%; height:180px; background: url(../images/main/main_bgDot.gif);}
.count_wrap .count { width:1160px; margin:0 auto; }
.count_wrap .count li { float:left; width:25%; text-align:center; padding-top:48px; }
.count_wrap .count li span {font-family: 'Roboto', sans-serif; font-size: 46px; font-weight: 600; color: #91c3ff;}
.count_wrap .count li p { font-size:16px; font-weight:600; color:#cbcbcb; padding-top:10px; }

/* 홈페이지 수주현황 / 유지관리 현황 / 견적문의 / CUSTOMMERCENTER */
.main_foot { width:100%; height:390px; border-top:1px solid #c6c6c6; border-bottom:1px solid #c6c6c6;}
.main_footBox { width:1160px;  margin:0 auto; }
.main_foot div dd { width:24.9%; height:390px; position:relative; float:left; border-right:1px solid #c6c6c6; }
.main_foot div dd:last-child { border-right:none; }
.main_footPlus { position:relative; clear:both; float:right; margin:6px 6px 0 0; }
.main_footTitle { padding:40px 0 10px 30px; font-size:16px; font-weight:600; color:#444;}
.main_footLine { width:20px; height:1px; background:#444;  margin-left:30px;}
.main_footTxt { padding:16px 30px 0 30px;}
.main_footTxt li a {display: block; font-size:13px; color:#666; font-weight:600; line-height:26px;}
.main_footTxt li a:after {display: block; clear: both; *zoom: 1; content: '';}
.main_footTxt li a:hover {color:#666666; }
.mainNotice b { float:right;}
.mainQnA li {position: relative; font-size:13px; color:#666; font-weight:600; line-height:26px;}
.mainQnA li a {display: inline-block;}
.mainQnA b {position: absolute; top: 0; right: 0; display: block; width: 54px; height: 21px; line-height: 21px; background:#75a1af; color:#fff; font-size:11px; font-family: 'Dodum'; letter-spacing:-1px; text-align: center;}
.mainCC li:first-child {font-family: 'Roboto', sans-serif; font-size:36px; color:#444; font-weight:bold;}
.mainCC li:last-child { font-size:13px; color:#666; font-weight:600; line-height:22px; padding-top:10px;}
.bgbababa { background:#bababa !important; }
.bg444444 { background:#444444 !important; }
.bgbe6f4a { background:#be6f4a !important; }

/* 공통 타이틀 */
.main_title {position: relative; margin: 0 auto 50px; text-align: center;}
.main_title h2 {font-size: 46px; color: #333333; }
.main_title p {padding: 20px 0 0 0; line-height: 1.6; font-size: 16px; color: #666666;}

/* 포트폴리오 */
.portfolio_wrap {padding: 100px 0 80px; background: #f5f5f5;}
.portfolio_wrap .grid:after {display: block; clear: both; *zoom: 1; content: '';}
.portfolio_wrap .grid li {float: left; width:370px; height:270px; margin: 0 0 20px 20px; cursor: pointer;}
.portfolio_wrap .grid li:nth-child(3n + 1) {margin: 0 0 20px 0;}
.portfolio_wrap .grid li span.over { display:block; height:270px; padding-top:120px; text-align:center; font-size:24px; font-weight:600; color:#fff; line-height:25px; background: url(../images/main/plus2.png) no-repeat center 42% #000; opacity: 0.8;  filter:alpha(opacity=70); display:none; }
.portfolio_wrap .grid li p { font-weight:normal; color:#ddd;}
.portfolio_wrap .grid li a:hover span { display:block;}
.portfolio_btn { width:100%; margin-top:30px; text-align:center; }
.portfolio_btn a { display:inline-block; width:230px; background:#111111; line-height:64px; font-size:16px; color:#ffffff; }


/*포트폴리오 스크립트 소스 */


.portfolio_wrap ul li a {
   /* position: absolute;*/
    width: 50px;
    height: 20px;
	float:right;
	margin-left:5px;
}
.portfolio_wrap ul li a:hover {
   background:#DEDEDE;
}
.cs-style-3 figure {
	overflow: hidden;
}

.cs-style-3 figure img {
	-webkit-transition: -webkit-transform 0.4s;
	-moz-transition: -moz-transform 0.4s;
	transition: transform 0.4s;
}

.no-touch .cs-style-3 figure:hover img,
.cs-style-3 figure.cs-hover img {
	-webkit-transform: translateY(-50px);
	-moz-transform: translateY(-50px);
	-ms-transform: translateY(-50px);
	transform: translateY(-50px);
}

.cs-style-3 figcaption {
	box-sizing: border-box;
	width: 100%;
	top: auto;
	bottom: 0;
	opacity: 0;
	-webkit-transform: translateY(100%);
	-moz-transform: translateY(100%);
	-ms-transform: translateY(100%);
	transform: translateY(100%);
	-webkit-transition: -webkit-transform 0.4s, opacity 0.1s 0.3s;
	-moz-transition: -moz-transform 0.4s, opacity 0.1s 0.3s;
	transition: transform 0.4s, opacity 0.1s 0.3s;
}

.no-touch .cs-style-3 figure:hover figcaption,
.cs-style-3 figure.cs-hover figcaption {
	opacity: 1;
	-webkit-transform: translateY(0px);
	-moz-transform: translateY(0px);
	-ms-transform: translateY(0px);
	transform: translateY(0px);
	-webkit-transition: -webkit-transform 0.4s, opacity 0.1s;
	-moz-transition: -moz-transform 0.4s, opacity 0.1s;
	transition: transform 0.4s, opacity 0.1s;
}

.cs-style-3 figcaption a {
	/*position: absolute;
	bottom: 20px;*/
	right: 20px;
}


.grid figure {
	margin: 0;
	position: relative;
}

.grid figure img {
	max-width: 100%;
	display: block;
	position: relative;
}

.grid figcaption {
	position: absolute;
	left: 0;
	padding: 20px;
	background: #242424;
	color: #ed4e6e;
}

.grid figcaption h3 {
	margin: 0;
	padding: 0;
	color: #fff;
}

.grid figcaption span:before {
	content: 'by ';
}

.grid figcaption a {
	text-align: center;
	padding: 5px 10px;
	border-radius: 2px;
	display: inline-block;
	background: #487fc0;
	color: #fff;
}




/* 서비스 */
.service_wrap {padding: 100px 0 80px;display:flex;justify-content:center;}
.service_wrap .inner{display:flex;flex-direction:column;align-items:center;}
.service:after {display: block; clear: both; *zoom: 1; content: '';}
.service {}
.service li {position: relative; float: left;  box-sizing: border-box; width: 220px; height: 360px; padding: 30px 15px 0; border-right: 1px solid #dedede;margin-left:10px;}
.service li:last-child {border-right: 0;}
.service li a {display: block; width: 100%; height: 100%;}
.service span {display: block; position: relative; padding: 20px 0 0 0; font-size: 14px; font-weight: 600; color: #999;}
.service span:before {display: block; position: absolute; top: 0; left: 0; width: 20px; height: 2px; background-color: #5085d6; content: '';}
.service h3 {display: block; padding: 5px 0 0 0; font-size: 18px; font-weight: 600; color: #333;}
.service p.con {padding: 30px 0 0 0; line-height: 1.6; font-size: 14px; color:#888888; }
.service .icon {position: absolute; bottom: 30px; right: 15px; width: 88px; height: 88px; border-radius: 50%; background-color:#333333; transition: background-color 0.3s;}
.service .icon img {position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; margin: 0 auto;}
.service .over, .service li a:hover .icon { background-color:#487fc0; }

/* PROJECT REQUEST */
.request_wrap { width:100%; background:#f4f4f4; padding-bottom:50px; display:inline-block;}
.request { width:1160px; margin:0 auto; padding-top:44px; }
.request dd { float:left; }
.request dd:first-child { margin-right:30px; }
.request dd:last-child { width:684px; position:relative; }
.request .left { float:left; width:336px; }
.request .right { float:right; }
.request .bottom { clear:both; width:100%;}

.request .left input, .request .left select { border:1px solid #dedede; outline:none; font-size:14px; margin-bottom:10px; color:#a0a0a0; }
.request .left input { width:324px; height:38px; padding-left:10px; }
.request .left select { width:336px; height:40px; padding-left:6px; }

.request .right textarea { width:315px; height:216px; border:1px solid #dedede; outline:none; font-size:14px; margin-bottom:10px; color:#a0a0a0; padding:10px; }

.request .bottom p { font-size:13px; font-weight:600; color:#666; padding:8px 0 8px 0; }
.request .bottom textarea { width:664px; height:30px; border:1px solid #dedede; outline:none; font-size:14px; margin-bottom:10px; color:#a0a0a0; padding:10px; line-height:30px; }
.request .bottom .check { position:relative; text-align:right; font-size:13px; font-weight:600; color:#666; }
.request .bottom .check input { position:absolute; top:2px; right:193px; }

.request_btn{ width:100%; margin-top:30px; text-align:center; }
.request_btn a { display:inline-block; width:230px; background:#487fc0; line-height:64px; font-size:16px; color:#ffffff; }





/* 문의하기2 */
.contact_us { position:relative;  height:600px;}
.root_daum_roughmap_landing { width:100% !important; }
.contact_box { width:500px;  background:#fff; position:absolute; right:5%; top: 50%; transform: translateY(-50%); z-index:100;}
.box_top { line-height:60px; }
.box_top span { width:50%; display:inline-block; text-align:center; font-size:16px; font-weight:600;  }
.box_top .top01 { background:#a4a3a3; }
.box_top .top01 a { color:#fff; display:inline-block; width:100%; height:100%; }
.box_top .top02 { background:#5085d6; cursor:pointer; color:#fff; }

.box_input { padding:20px; border:3px solid #5085d6; }
.box_input input { width:100%; border:1px solid #ddd; height:40px; margin-bottom:10px; padding-left:10px; box-sizing:border-box; }


.box_input .check input {width: 16px; height: 16px;
}
.box_input .find_btn {
    display: inline-block;
    width: 85px;
    line-height: 40px;
    font-size: 14px;
    color: #fff;
    background: #666;
    text-align: center;
}
.box_input .input02 {
    width: 224px;
    border: 1px solid #ddd;
    height: 40px;
    font-size: 14px;
    color: #c1c1c1;
    padding: 0 10px;
}

.box_input .txt_box {
    border: 1px solid #ddd;
    font-size: 13px;
    color: #888;
    padding: 10px;
    line-height: 20px;
}
.box_input .txt01 {
    color: #666;
    font-size: 14px;
    font-weight: 600;
    margin: 10px 0;
}
.box_input .check { text-align:right; margin-top:10px;}
.box_input .check span {
    font-size: 14px;
    color: #888;
	margin-left: 10px;
	vertical-align: top;
}

.contact_btn { text-align:center; margin-top:20px;}

.contact_btn a { width:90%; display:inline-block; color:#fff; font-size:16px; font-weight:600; line-height:50px; background:#444; }

.contact_btn .con_btn { width:90%; display:inline-block; color:#fff; font-size:16px; font-weight:600; line-height:50px; background:#444; height:50px;}
