@charset "utf-8";

.inner {
	position: relative;
    max-width: 1330px;
    padding: 0 15px;
    margin: 0 auto;
}


/* 상단 */
#header {
	position: fixed;
	width: 100%;
	top: 0px; 
	left: 0;
	background: #fff;
	z-index: 999;
	padding: 16px 0;
}
#header:before {
	content: '';
	display: block;
	width: 100%;
	height: 0;
	position: fixed;
	top: 95px;
	left: 0;
	border-bottom: 1px solid #e1e1e1;
	z-index: 1;
}
#header .inner .flex {
	align-items: center;
    width: calc(100% - 220px);
}
#header h1.logo {
}
#header .header_menu {
    flex: 2;
    text-align: right;
}
#header .header_menu > li {
    position: relative;
    display: inline-block;
    padding: 0 55px;
}
#header .header_menu > li> a {
	position: relative;
    display: block;
    font-size: 20px;
    font-weight: 500;
    transition: all .3s;
}
#header .header_menu > li> a:hover {
	color: #b08e4f;
}
#header .sub_menu {
	display: none;
	position: absolute;
    text-align: left;
    width: 100%;
    left: 0;
}
#header.on .sub_menu {
	display: block;
	padding-top: 50px;
}
#header .sub_menu li a {
    display: block;
    margin: 10px 0;
    color: #666;
    font-size: 17px;
    text-align: center;
    font-weight: 300;
    transition: all .3s;
}
#header .sub_menu li a:hover {
	color: #b08e4f;
}
#header .open {
    position: absolute;
    top: -17px;
    right: 0;
    padding: 16px 72px;
    background: #544d4a;
    color: #fff;
    font-size: 20px;
    text-align: center;
}
#header .open strong {
	display: block;
	font-size: 25px;
}
#header .bg {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background: #fff;
	height: 95px;
	transition: all .4s;
	box-shadow: 0 3px 5px rgba(0,0,0,0.1);
	z-index: -1;
}
#header.on .bg {
	height: 290px;
}
/* // 상단 */

/* 모바일 상단 */
#header .m-menu {
	display: none;
}
#header .m-menu > div {
	float: left;
	width: 25%;
	height: 65px;
}
#header .m-menu > div a {
    display: block;
    font-size: 12px;
    color: #fff;
    padding: 42px 0 11px 0;
    background-color: #ff7200;
    background-repeat: no-repeat;
    background-position: center -8px;
    -webkit-background-size: 80px auto;
    -moz-background-size: 80px auto;
    -o-background-size: 80px auto;
    background-size: 80px auto;
    text-align: center;
}
#header .m-menu > div:nth-child(1) a {
    background-color: #82aa15;
    background-image: url(../images/m-menu01.png);
    margin-left: 0;
}
#header .m-menu > div:nth-child(2) a {
    background-color: #d43e4e;
    background-image: url(../images/m-menu02.png);
}
#header .m-menu > div:nth-child(3) a {
    background-color: #e49223;
    background-image: url(../images/m-menu03.png);
}
#header .m-menu > div:nth-child(4) a {
    background-color: #329cba;
    background-image: url(../images/m-menu04.png);
}
#header .menu {
	display: none;
	font-size:1em; 
	position: absolute;
	top: 25px;
    right: 15px;
}
#header .menu a {
	position: relative; 
	display:block;
	width:28px; 
	height:21px;
}
#header .menu a span {
	position: absolute; 
	background: #544d4a; 
	display:block;
	width: 23px;
    height: 3px;
}
#header .menu a span:nth-child(1) {
	top:2px;
}
#header .menu a span:nth-child(2) {
	top:10px; 
}
#header .menu a span:nth-child(3) {
	top:18px;
}
.scroll-func {
	width:100%;
}
.left-warp  {
	width:280px;
	position: fixed; 
	top: 0;
	right:-110%;
	display: none;
	z-index: 1005;
	height:100%;
	background: #fff;
	box-sizing: border-box;
}
.black_bg {
	position: fixed;
	background:#000;
	width:100%;
	height: 100%;
	left:0;
	top:0;
	opacity: 0.3;
	z-index: 1000;
	display: none;
}
.not-scroll {
	overflow:hidden;
}
.side-close { 
	position: absolute; 
	left: 285px; 
}
.side-close a {
	position: relative;
	display: block;
    width: 35px;
    height: 35px;
    margin-top: 8px;
}
.side-close span {
	position: absolute;
    top: 16px;
    display: block;
    width: 32px;
    height: 3px;
    background: #fff;
}
.side-close span:nth-child(1) {
	transform:rotate(-45deg);
}
.side-close span:nth-child(2) {
	transform:rotate(45deg);
}

.left-warp .depth li a {
	display:block;
	padding:15px 5%;
}
.left-warp .depth01 {
	position: relative; 
	border-bottom: 1px solid #e1e1e1;
}
.left-warp .depth01.active .depth02 {
	max-height: 500px;
	background: #f3f3f3;
	border-top: 1px solid #e1e1e1;
}
.left-warp .depth01 > a {
	position: relative;
	color:#888; 
	font-size: 15px; 
}
.left-warp .depth01.active > a {
	background: #1b2126; 
	color: #fff;
}
.left-warp .depth01 span.more {
	position: absolute; 
	right: 15px; 
	display: block; 
	top: 12px; 
	z-index: 99;
	font-size: 20px;
}
.left-warp .nochild span.more {
	top: 12px;
}
.left-warp .depth01.active span.more {
	transform: rotate(180deg);
	top: 12px;
}
.left-warp .nochild.active span.more {
	transform: rotate(0deg);
}
.left-warp .depth02 { 
	max-height: 0; 
	overflow: hidden; 
}
.left-warp .depth02 > li > a {
	font-size: 14px; 
	padding: 10px 3% 10px 10%;
}
.left-warp .tel {
	position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
}
.left-warp .tel div {
    background: #544D4A;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 2px;
    padding: 10px 0;
}
.left-warp .tel div img {
	width: 15px;
	margin-right: 10px;
	vertical-align: -3px;
}
.left-warp .tel a {
	display: block;
	background: #fff;
	color: #544D4A;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 3px;
	padding: 10px 0;
}
/* // 모바일 상단 */


#container {
	padding-top: 95px;
}




/* 하단 */
#footer {
    position: relative;
    padding: 35px 0;
    background: #222;
    color: #999;
    margin-top: 80px;
}
#footer .logo {
	float: left;
	max-width: 330px;
	margin-top: 15px;
}
#footer .logo img {
	width: 100%;
}
#footer .addr {
	float: left;
	text-align: left;
	margin-left: 30px;
	line-height: 1.8;
}
#footer .addr span {
	margin-right: 15px;
}
#footer .tel {
	position: fixed;
	bottom: 50px;
	right: 50px;
	z-index: 5;
	text-align: center;
	box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.35);
}
#footer .tel div {
	width: 240px;
	background: #544D4A;
	color: #fff;
	font-size: 25px;
	font-weight: 700;
	letter-spacing: 3px;
	padding: 12px 0;
}
#footer .tel div img {
	margin-right: 10px;
	vertical-align: -3px;
}
#footer .tel a {
	display: block;
	background: #fff;
	color: #544D4A;
	font-size: 25px;
	font-weight: 700;
	letter-spacing: 3px;
	padding: 12px 0;
}






.sub_title {
	position: relative;
    width: 100%;
    overflow: hidden;
}
.sub_title:before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.8);
	z-index: 1;
}
.sub_title .visual {
    min-height: 350px;
    animation: subTitle 5s;
    -webkit-animation: subTitle 5s;
}
.sub_title h2 {
    position: absolute;
    z-index: 2;
    color: #fff;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    text-align: center;
    font-size: 35px;
    font-weight: 700;
}
.sub_title h2:after {
	content: '';
	display: block;
	width: 50px;
	height: 1px;
	background: #fff;
	margin: 20px auto;
}
@-webkit-keyframes subTitle { 
	0% { 
		-webkit-transform: scale(1.2); 
		transform: scale(1.2) rotate(0.1deg); 
	}
	100% { 
		-webkit-transform: scale(1); 
		transform: scale(1) rotate(0); 
	} 
}

@keyframes subTitle { 
	0% { 
		-webkit-transform: scale(1.2); 
		transform: scale(1.2)  rotate(0.1deg); 
	}
  	100% { 
  		-webkit-transform: scale(1); 
  		transform: scale(1)  rotate(0); 
  	} 
}
.sub_title .visual {
    background: url('../images/visual-img01.png')no-repeat 50% 60%;
    background-size: cover;
}

.navigation {
    text-align: center;
    font-size: 0;
    margin-bottom: 80px;
    border-bottom: 1px solid #e1e1e1;
    height: 60px;
}
.navigation li {
    display: inline-block;
    font-size: 20px;
    width: 200px;
}
.navigation li a {
    display: block;
    text-transform: uppercase;
    color: #666;
    transition: all .2s;
    height: 60px;
    line-height: 60px;
}
.navigation li a.on {
    font-weight: bold;
    color: #544d4a;
    border-bottom: 1px solid #544d4a;
}



@media screen and (max-width: 1280px){
	#header .header_menu > li {
	    padding: 0 20px;
	}
	#header .header_menu > li a {
		font-size: 18px;
	}
	#header .sub_menu li a {
		font-size: 15px;
	}
	#header .header_menu + div span {
		font-size: 16px;
		margin-right: 10px;
	}
	#header .header_menu + div .tel {
		font-size: 18px;
	}
	#header.on .bg {
	    height: 295px;
	}


	#footer .tel div {
		width: 200px;
		font-size: 20px;
		padding: 7px 0;
	}
	#footer .tel div img {
		width: 20px;
	}
	#footer .tel a {
		font-size: 20px;
		padding: 7px 0;
	}
}
@media screen and (max-width: 1024px){
	#header {
		padding: 10px 0;
		box-shadow: 0 3px 5px rgb(0 0 0 / 10%);
	}
	#header:before {
		border-bottom: 0;
	}
	#header .header_menu,
	#header .header_menu + div,
	#header .bg {
		display: none;
	}
	#header .open {
		display: none;
	}
	#header .menu {
		display: block;
	}


	#container {
		padding-top: 74px;
	}


	#footer .logo {
		float: none;
		width: 100%;
		text-align: center;
		max-width: 270px;
		margin: 0 auto 20px;
	}
	#footer .addr {
		float: none;
		width: 100%;
		text-align: center;
		margin-left: 0;
	}
	#footer .tel {
		bottom: 25px;
		right: 25px;
	}
	#footer .tel div {
	    width: 175px;
	    font-size: 17px;
	}
	#footer .tel a {
    	font-size: 17px;
    }

	.sub_title h2 {
		font-size: 30px;
	}
	.navigation li {
		font-size: 18px;
	}
	.navigation.grid4 li {
		width: 25%;
	}
}

@media screen and (max-width: 768px){
	.sub_title h2 {
		font-size: 25px;
	}
	.navigation {
		height: 50px;
		margin-bottom: 60px;
	}
	.navigation li {
		width: 100%;
		font-size: 14px;
	}
	.navigation li a {
		height: 50px;
		line-height: 50px;
	}
	.navigation.grid3 li {
		width: 33.333%;
	}
	#footer .addr span {
		display: block;
		word-break: keep-all;
	}
	#footer .addr br {
		display: none;
	}
	#footer .tel {
		display: none;
	}
}