@font-face {
	font-family:xeicon;
    src:url(../font/xeicon.eot);
    src:url(../font/xeicon.eot) format("embedded-opentype"),
    url(../font/xeicon.woff2) format("woff2"),
    url(../font/xeicon.ttf) format("truetype"),
    url(../font/xeicon.woff) format("woff"),
    url(../font/xeicon.svg) format("svg");
    font-weight:400;
    font-style:normal
}
[class*=" xi-"],[class^=xi-] {
	font-family: xeicon!important;
	display: inline-block;
	speak: none;
	font-style: normal;
	font-weight: 400;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale
}

:root {
	--theme-red-color: #e0002a;
	--theme-orange-color: #ef8009;
	--area-box-width: 1680px;
	--area-width: 1600px;
	--area-padding: 7.4rem;
	--area-margin: 12rem;
	--full-height: 100vh;
	--transiton1: all 0.4s cubic-bezier(.7, 0, .2, 1);
	--transiton2: all 0.8s cubic-bezier(.7, .1, .2, 1);
	--font-family1: 'Montserrat', source-han-sans-simplified-c, Arial, sans-serif;
	--custom-transiton1: all 0.8s cubic-bezier(.7, 0, .2, 1);
	--custom-transiton2: all 1s cubic-bezier(.7, .1, .2, 1);
}

.hidden-box {
	display: block;
	overflow: hidden;
	line-height: inherit;
	font-weight: inherit;
}

.hidden-box .hidden-item {
	display: block;
	transform: translateY(100%) rotate(10deg);
	opacity: 0;
	transform-origin: left;
	transition: var(--custom-transiton2);
	transition-duration: 1s;
	transition-property: transform, opacity
}

.hidden-box .hidden-item.reverse {
	transform: translateY(100%) rotate(-10deg);
	transform-origin: right;
}

input::-webkit-search-cancel-button {
	display: none;
}

input[type=search]::-ms-clear {
	display: none;
}

img {
	border: 0px;
	border: none;
}

ol,ul,li {
	list-style: none;
}

a {
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	text-decoration: none;
	outline: none;
}

.fl {
	float: left;
}

.rt {
	float: right;
}

.pr {
	position: relative;
}

.pa {
	position: absolute;
}

.area {
	max-width: 1200px;
	margin: 0px auto;
}

.area-box {
	max-width: 1600px;
	margin: 0px auto;
	width: 85vw;
    max-width: 1560px;
    margin: auto;
}

.area-big {
	max-width: 1750px;
	margin: 0px auto;
}

.xi-close-thin:before {
	content: "\e9af"
}


/* ****************** HEADER ********************** */
#header {
	position: absolute;
	height: 90px;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
	display: flex;
    align-items: center;
    justify-content: space-between;
	background: transparent;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s
}

#headerInnerWrap {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	z-index: 9999;
	-webkit-transition: background-color 0.3s;
	transition: background-color 0.3s
}

#headerInner {
	position: relative;
	height: 100%;
	margin: 0px auto;
	-webkit-transition: padding 0.3s;
	transition: padding 0.3s;
	margin: 0 2%;
    max-width: 100%;
}

#header .logo {
	position: relative;
	z-index: 100;
	float: left;
	padding: 20px 0 0;
}

#header .logo a {
	display: block;
}

#header .logo img {
	display: block;
	vertical-align: top;
	width: 230px;
}

/* -------- Header :: 固定 -------- */
#header,#headerInnerWrap {
	height: 90px;
}

#headerInnerWrap {
	position: fixed;
	z-index: 99;
}

#header.top-fixed #headerInnerWrap {
	background-color: #fff;
	border-bottom: 1px solid #eee;
}

#header.top-fixed #gnb > ul > li > a {
	color: #333
}

#header.top-fixed .header-lang .lang-open-btn {
	border-color: #333;
	color: #333
}

#header.top-fixed .sitemap-line-btn .line {
	background-color: #333
}

/* -------- Header :: UTIL BOX -------- */
.header-util-box {
	position: absolute;
	top: 50%;
	right: 30px;
	margin-top: 0px;
	z-index: 100;
	height: 90px;
    top: 0;
    padding-left: 30px;
}
/* Header :: 选择语言 */
.header-lang {
	position: relative;
	float: left;
	z-index: 100;
	top: 33px;
}

.header-lang .lang-open-btn {
	overflow: hidden;
	position: relative;
	display: block;
	width: 100%;
	text-align: left;
	height: 100%;
	padding: 0 10px;
	font-size: 14px;
	letter-spacing: -0.45px;
	padding-bottom: 8px;
	color: #fff;
	font-weight: 400;
	transition: all 0.4s
}

.header-lang .lang-open-btn i {
	display: inline-block;
	vertical-align: middle;
	font-size: 20px;
	margin-top: -2px;
}

.header-lang .lang-open-btn .arrow {
	display: inline-block;
	margin-left: 10px
}

.header-lang .lang-open-btn .arrow i {
	font-size: 16px;
}

.header-lang> ul {
    display: none;
    position: absolute;
    top: 28px;
    left: -10%;
    z-index: 10;
    width: 130%;
}
.header-lang:hover ul {
	display: block;
}

.header-lang > ul > li {
    background-color: #fff;
    border-radius: 0px;
    text-align: center;
    border-bottom: 1px solid rgba(0, 87, 72, 0.12);
    padding-left: 10px;
}
.header-lang > ul > li > a {
    display: block;
    padding: 3px 10px;
    font-size: 13px;
    line-height: 30px;
    color: #333;
    font-weight: 500;
    font-family: "Pretendard", "source-han-sans-simplified-c", "Noto Sans SC", "Microsoft YaHei", "sans-serif";
}
.header-lang > ul > li:hover {
	background-color: #005747;
}
.header-lang > ul > li:hover a {
	color: #fff;
}
.top-fixed .header-lang > ul > li, .open .header-lang > ul > li{background-color: #005747;}
.top-fixed .header-lang > ul > li > a, .open .header-lang > ul > li > a{color: #fff;}

.header-lang > ul > li.flag-cn a {
	background: url(/static/picture/china.png) no-repeat left;
    background-size: 20px;
    padding-left: 20px;
}
.header-lang > ul > li.flag-jp a {
	background: url(/static/picture/japan.png) no-repeat left;
    background-size: 20px;
    padding-left: 20px;
}
.header-lang > ul > li.flag-en a {
	background: url(/static/picture/usa.png) no-repeat left;
    background-size: 20px;
    padding-left: 20px;
}


.header-lang.open .lang-open-btn .arrow i {
	transform: rotate(180deg);
	margin-top: -3px;
}

#header.open .header-lang .lang-open-btn {
	border-color: #0d0c0a;
	color: #0d0c0a
}

/* Header :: 站点地图按钮 */
.sitemap-line-btn {
	float: left;
    margin-left: 25px;
    box-sizing: border-box;
    margin-top: 0;
	top: 32px;
    position: relative;
    margin-top: -3px;
}

.sitemap-line-btn .line {
	display: block;
	width: 28px;
	height: 2px;
	background-color: #fff;
	margin: 7px 0;
	-webkit-transition: all 0.4s ease; 
	transition: all 0.4s ease;
}
.sitemap-line-btn:hover .line2 {
	width: 20px;
}

#header.open .sitemap-line-btn .line {
	background-color: #0d0c0a
}
/* active */
.sitemap-open-btn.active {
	z-index: 0;
}

.sitemap-open-btn.active .line:nth-child(2), 
.sitemap-open-btn.active .line:nth-child(4) {
	opacity: 0;
}

.sitemap-open-btn.active .line:nth-child(1) {
	-webkit-transform: translateY(10px) rotate(45deg);
	transform: translateY(10px) rotate(45deg);
}

.sitemap-open-btn.active .line:nth-child(3) {
	-webkit-transform: translateY(-10px) rotate(-45deg);
	transform: translateY(-10px) rotate(-45deg);
}

/* -------- Header :: GNB(PC) -------- */
.gnb-overlay-bg {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
	z-index: 9997;
}	/* gnb overlay BG */
#gnb {
	position: absolute;
	text-align: center;
	top: 0;
	left: 0px;
	width: 100%;
	z-index: 99;
	border-bottom: 1px solid rgba(255,255,255,0.25);
}

#gnb > ul {
    float: right;
    margin-right:270px;
}	

#gnb > ul > li {
/*position:relative;*/
	float: left;
	word-break: keep-all;
}

#gnb > ul > li > a {
	position: relative;
	z-index: 100;
	display: block;
	height: 90px;
	line-height: 90px;
	padding: 0 45px;
	text-align: center;
	color: #fff;
	font-size: 17px;
	letter-spacing: -0.45px;
	font-weight: 500;
	-webkit-transition: all 0.5s;
	transition: all 0.5s;
	backface-visibility: hidden
}

#gnb.open > ul > li > a {
	color: #303030
}

#gnb > ul > li > a:hover, #gnb > ul > li.on > a {
	color: #005747;
}

/* GNB :: 完整菜单 */
#gnbBg {
	overflow: hidden;
	position: absolute;
	left: 0;
	top: 0px;
	width: 100%;
	height: 0;
	background: #fff;
	z-index: 98;
	-webkit-transition: height 0.3s ease-in-out;
	transition: height 0.3s ease-in-out;
}

#gnbBg:after {
	position: absolute;
	top: 89px;
	width: 100%;
	left: 0;
	height: 1px;
	background-color: #ddd;
	content: "";
}

#gnbBg:before {
	position: absolute;
	content: "";
	width: 48%;
	width: 35%;
	height: 100%;
	/*background-color: #f6f6f6;*/
	left: 0;
	top: 90px
}

#gnb.total-menu > ul > li .gnb-2dep {
	position: absolute;
	top: 90px;
	left: 0px;
	z-index: 99;
	width: 100%;
	text-align: left;
	border-right: 1px solid #ddd;
	opacity: 0;
	filter: Alpha(opacity=0);
	height: 0;
	/*-webkit-transition: all 0.3s 0s;
    transition: all 0.3s 0s;*/
	visibility: hidden;
}

#gnb.total-menu > ul > li .gnb-2dep .gnb-2dep-inner {
	display: table;
	width: 100%;
	/*max-width: 1300px;*/
	margin: 0 auto;
}

#gnb.total-menu > ul > li .gnb-2dep .gnb-2dep-inner > div {
	display: table-cell;
	vertical-align: middle;
}
/* 标题菜单：：左菜单说明 */
#gnb.total-menu > ul > li .gnb-2dep .menu-lf-txt {
	text-align: center;
	width: 47%;
	width: 36%;
}

#gnb.total-menu > ul > li .gnb-2dep .menu-lf-txt .txt-inner {
	display: inline-block;
	max-width: 595px;
	width: 100%;
	text-align: left;
	max-width: 150px;
    margin: 0 auto;
}

#gnb.total-menu > ul > li .gnb-2dep .menu-lf-txt .txt-inner .tit {
	font-weight: 600;
	font-size: 30px;
	letter-spacing: -0.5px;
	color: #005747
}

#gnb.total-menu > ul > li .gnb-2dep .menu-lf-txt .txt-inner .txt {
	font-weight: 400;
	font-size: 16.5px;
	letter-spacing: -0.5px;
	color: #565656;
	opacity: 0.6;
	line-height: 1.69;
	margin-top: 25px
}
#gnb.total-menu > ul > li .gnb-2dep .menu-lf-txt .txt-inner .txt a {color: #565656;}
/* 标题菜单：：右菜单列表 */
#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list {
	width: 352px;
	border-right: 1px solid #e0e0e0;
}
/*#gnb.total-menu > ul > li.gnb3 .gnb-2dep .menu-rt-list{padding:34px 0}*/
#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .menu-list {
	box-sizing: border-box;
	position: relative;
	margin-top: -15px
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .menu-list li {
	padding: 0 35px
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list-auto .menu-list li {
	padding: 0;
	width: 49.6%;
    display: inline-block;
}
#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list-auto .menu-list li.top {
	width: 100%;
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .menu-list li a {
	display: table;
	width: 100%;
	height: 50px;
	font-weight: 400;
	font-size: 16px;
	letter-spacing: 0;
	color: #757575;
	transition: all 0.3s;
	border-bottom: 1px solid #e0e0e0;
	position: relative
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .menu-list li a:hover {
	font-weight: normal;
	color: #005747;
	border-color: #005747
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .menu-list li a span {
	display: table-cell;
	vertical-align: middle;
	padding-left: 12px
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .link-con {
	padding: 34px 0;
	text-align: center
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .link-con .link-inner {
	display: inline-block;
	width: 80%;
	height: 250px;
	background: url("../image/header_menu_link_bg01.jpg") no-repeat 50% 0;
	background-size: cover;
	text-align: left
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .link-con .link-inner.link-02 {
	background: url("../image/header_menu_link_bg02.jpg") no-repeat 50% 0;
	margin-top: 13px
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .link-con .link-inner a {
	display: table;
	width: 100%;
	height: 100%
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .link-con .link-inner a p {
	display: table-cell;
	vertical-align: middle;
	padding-left: 40px;
	font-weight: 500;
	font-size: 16.5px;
	color: #fff;
	line-height: 1.69;
	letter-spacing: -0.65px
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .link-con .link-inner a p .arrow-icon {
	display: block;
	width: 48px;
	height: 27px;
	background: url("../image/header_menu_arrow.png") no-repeat;
	background-size: contain !important;
	margin-top: 20px
}

/* 기업정보 메뉴 :: 3차메뉴 */
#gnb.total-menu > ul > li.gnb5 .gnb-2dep .menu-rt-list {
	vertical-align: top
}

#gnb.total-menu > ul > li.gnb5 .gnb-2dep .menu-rt-list .menu-list {
	margin-top: 10px
}

#gnb.total-menu > ul > li.gnb5 .gnb-2dep .menu-rt-list .menu-list > li > a {
	position: relative;
}

#gnb.total-menu > ul > li.gnb5 .gnb-2dep .menu-rt-list .menu-list > li > a:after,
#gnb.total-menu > ul > li.gnb2 .gnb-2dep .vertical-top.menu-rt-list .menu-list > li > a:after {
	position: absolute;
	content: "";
	width: 20px;
	height: 20px;
	/*background: url("../image/header_menu_arrow02.png") no-repeat;*/
	background-size: contain !important;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	opacity: 0;
	transition: all 0.3s
}

#gnb.total-menu > ul > li.gnb5 .gnb-2dep .menu-rt-list .menu-list > li.on > a {
	color: #005747;
	border-color: #005747;
	font-weight: 700
}

#gnb.total-menu > ul > li.gnb5 .gnb-2dep .menu-rt-list .menu-list > li.on > a:after,
#gnb.total-menu > ul > li.gnb2 .gnb-2dep .vertical-top.menu-rt-list .menu-list > li.on > a:after {
	opacity: 1
}

#gnb.total-menu > ul > li .gnb-2dep .gnb-3dep-con {
	height: 330px;
	border-right: 0
}

#gnb.total-menu > ul > li .gnb-2dep .gnb-3dep {
	display: none;
	position: absolute;
	top: 0;
	left: 335px;
	height: 332px;
	width: 321px;
	box-sizing: border-box;
	background: #fff;
}

#gnb.total-menu > ul > li .gnb-2dep .gnb-3dep:after {
	position: absolute;
	content: "";
	width: 1px;
	height: 100%;
	background-color: #e0e0e0;
	top: -10px;
	right: 0
}

#gnb.total-menu > ul > li .gnb-2dep li.on .gnb-3dep {
	display: block;
	z-index: 99;
}

#gnb.total-menu > ul > li .gnb-2dep .gnb-3dep > li > a {
	padding-left: 10px
}

#gnb.total-menu > ul > li .gnb-2dep .gnb-3dep > li > a:before {
	position: absolute;
	content: "-";
	left: 12px;
	top: 20px
}

/* GNB :: 2차메뉴 Over (높이변경) */
#gnb.open #gnbBg {
	
	border-bottom: 1px solid #e0e0e0
}

#gnb.menu-1.open #gnbBg,
#gnb.menu-1on.open #gnbBg {
	height: 435px;
}

#gnb.menu-2.open #gnbBg,
#gnb.menu-2on.open #gnbBg {
	height: 495px
}

#gnb.menu-3.open #gnbBg,
#gnb.menu-3on.open #gnbBg {
	height: 388px
}

#gnb.menu-5.open #gnbBg,
#gnb.menu-5on.open #gnbBg {
	height: 420px
}

#gnb.open > ul > li.on .gnb-2dep,
#gnb.open > ul > li.over .gnb-2dep {
	height: 230px;
	opacity: 1.0;
	filter: Alpha(opacity=100);
	visibility: visible;
	-webkit-transition: height 0.5s ease-in-out, opacity 0.15s ease-in-out 0.2s;
	transition: height 0.5s ease-in-out, opacity 0.15s ease-in-out 0.2s;
}

#gnb.open > ul > li.gnb1.on .gnb-2dep,
#gnb.open > ul > li.gnb1.over .gnb-2dep,
#gnb.total-menu > ul > li.gnb1 .gnb-2dep .gnb-2dep-inner {
	height: 345px;
}

#gnb.open > ul > li.gnb2.on .gnb-2dep,
#gnb.open > ul > li.gnb2.over .gnb-2dep,
#gnb.total-menu > ul > li.gnb2 .gnb-2dep .gnb-2dep-inner {
	height: 405px
}

#gnb.open > ul > li.gnb3.on .gnb-2dep,
#gnb.open > ul > li.gnb3.over .gnb-2dep,
#gnb.total-menu > ul > li.gnb3 .gnb-2dep .gnb-2dep-inner {
	height: 298px
}

#gnb.open > ul > li.gnb5.on .gnb-2dep,
#gnb.open > ul > li.gnb5.over .gnb-2dep,
#gnb.total-menu > ul > li.gnb5 .gnb-2dep .gnb-2dep-inner {
	height: 330px
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .menu-list .top a {
	font-size: 18px;
	color: #005747;
	height: 56px;
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .menu-list .shuzihua a,
#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .menu-list .nengyuan a {
	height: 180px;
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list .menu-list .nengyuan a {
	border: 0;
}

#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list.vertical-top {
	vertical-align: top;
	padding-top: 30px;
}

#header .logo {
	margin-left: 30px;
}

#header .logo a {
	display: block;
	background: url(../logo-w.png) no-repeat left center;
	width: 200px;
	background-size: 200px;
	height: 55px;
}

#header.top-fixed .logo a,
#header.open .logo a {
	background: url(../logo.png) no-repeat left  center;
	background-size: 200px;
}

#header .logo a div {
	float: right;
	color: #fff;
	font-size: 13px;
	margin-right: 0px;
	margin-top: 15px;
	line-height: 1.4;
	font-weight: normal;
	font-style: normal;
	border-left: 1px solid #ddd;
	padding-left: 10px;
	height: 35px;
}

#header.top-fixed .logo a div,
#header.open .logo a div {
	color: #005747;
}

#header .logo a div span {
	display: block;
	font-size: 14px;
}

#header .logo a img {
	display: none;
	float: left;
}

.header-lang .lang-open-btn {
    background: url(/static/picture/china.png) no-repeat left;
    background-size: 20px;
    padding-left: 28px;
    display: flex;
    align-items: center;
    padding-bottom: 0;
    height: 28px;
}

#header.open .header-lang .lang-open-btn,
.top-fixed .header-lang .lang-open-btn {
    background: url(/static/picture/china.png) no-repeat left;
    background-size: 20px;
    display: flex;
    align-items: center;
    padding-bottom: 0;
    height: 28px;
}

.header-lang .lang-open-btn .arrow {
	display: none;
}

.search {
	position: relative;
	z-index: 100;
}

.search i {
	position: absolute;
	height: 30px;
	width: 1px;
	background: #ccc;
	top: 25px;
	right: 60px;
}

.search .input-holder {
	border-radius: 50px;
	width: 180px;
	background: rgb(97, 97, 97);
	height: 40px;
	line-height: 40px;
	position: relative;
}

.search .sear-inpu {
	line-height: 80px;
	width: 100%;
	background: transparent;
	color: #333;
	border: none;
	font-size: 16px;
	letter-spacing: 0.5px;
	height: 80px;
	padding-left: 20px;
}

.search .search-icon {
	border: none;
	background: #fff77b;
	padding: 0px;
	outline: none;
	position: relative;
	z-index: 2;
	float: right;
	cursor: pointer;
	width: 30px;
	height: 30px;
	margin: 5px 6px;
	border-radius: 30px;
}

.search-icon img {
	padding-top: 2px;
}

.cd-search-trigger {
	display: block;
	width: 80px;
	overflow: hidden;
	white-space: nowrap;
	color: transparent;
	background: url(../css/icon01.png) no-repeat center;
	height: 90px;
	line-height: 90px;
	right: 190px;
	position: absolute;
	border-left: 0px solid rgba(255,255,255,0.25);
	border-right: 1px solid rgb(255 255 255 / 25%);
}

#header.open .cd-search-trigger,
.top-fixed .cd-search-trigger {
	background: url(../css/icon02.png) no-repeat center;
	border-right: 1px solid rgb(223 223 223);
	border-left: 0px solid rgb(223 223 223);
}

#header.open .search-is-visible, 
#header.open .search-is-visible:hover,
.top-fixed .search-is-visible, 
.top-fixed .search-is-visible:hover {
	background: url(search-on.png) no-repeat center;
}

.search-is-visible, .search-is-visible:hover {
	background: url(search-on-whtie.png) no-repeat center;
}

.cd-search-trigger span {
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
}

.cd-search.is-visible {
	visibility: visible;
	-moz-transition: opacity .3s 0s,visibility 0s 0s;
	transition: opacity .3s 0s,visibility 0s 0s;
}

.cd-search {
	position: absolute;
	height: 80px;
	width: 100%;
	top: 90px;
	left: 0;
	z-index: 99;
	visibility: hidden;
	-webkit-transition: opacity .3s 0s,visibility 0s .3s;
	-moz-transition: opacity .3s 0s,visibility 0s .3s;
	transition: opacity .3s 0s,visibility 0s .3s;
	border-top: 1px solid #eee;
	background: #f2f5f7;
}

.cd-search form {
	height: 100%;
	max-width: 90%;
	margin-left: auto;
	margin-right: auto;
}

.cd-search input {
	background: #f2f5f7;
	font-size: 26px;
	border-radius: 0;
	border: none;
	padding: 0;
	height: 80px;
	width: 95%;
	text-align: left;
}

.cd-search .btn {
	position: absolute;
	right: 0;
	top: 0;
	height: 80px;
	background: none;
	border: none;
	padding-right: 0px;
    /* background: #bbbbbb; */
	width: 90px;
}

.cd-search .btn img {
	padding-left: 10px;
	cursor: pointer;
}

.cd-search .btn img {
	padding-left: 10px;
	cursor: pointer;
}

input, button {
	font-size: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	vertical-align: middle;
	outline: none;
	line-height: normal;
	color: #666;
}

#mainVisual {
	overflow: hidden;
	width: 100%;
	height: 100vh;
	position: relative;
}	

#mainVisual.full-height,
#fullpage #mainVisual {
	height: 1000px;
}

.main-visual-con .slick-track,
.main-visual-con .slick-list {
	-webkit-perspective: 2000;
	-webkit-backface-visibility: hidden;
}

.main-visual-con, 
.main-visual-con .slick-list,  
.main-visual-con .slick-track, 
.main-visual-item {
	height: 100%;
}

.main-visual-con {
	z-index: 1;
}
/* 메인 비주얼 :: 이미지 */
.main-visual-item {
	position: relative;
}

.main-visual-item .main-visual-pc-img {
	width: 100%;
	height: 100%;
	background-size: cover !important;
	-webkit-transform: scale(1,1);
	transform: scale(1,1);
	-webkit-transition: transform 5000ms  ease-in-out;
	transition: transform 5000ms ease-in-out;
}

.main-visual-item.active-item .main-visual-pc-img video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.main-visual-item .main-visual-m-img {
	display: none;
}

/* 메인 비주얼 :: 텍스트 */
.main-visual-item .main-visual-txt-con {
	position: absolute;
	top: 50%;
	left: 0px;
	width: 100%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	/* margin-top: -3% */
}

.main-visual-item .main-visual-txt-con .main-visual-txt1,
.main-visual-item .main-visual-txt-con .main-visual-txt2,
.main-visual-item .main-visual-txt-con .main-more-btn {
	opacity: 0;
}

.main-visual-item .main-visual-txt-con .main-visual-txt1 {
	display: block;
	font-size: 65px;
	font-weight: 600;
	letter-spacing: -0.5px;
	color: #fff;
	margin-bottom: 0px;
	line-height: 1
}

.main-visual-item .main-visual-txt-con .main-visual-txt2 {
	font-size: 40px;
	letter-spacing: 0;
	color: rgb(255 255 255);
	line-height: 1.77
}

/* VIEW MORE 버튼 */
.main-more-btn,
.main-more-btn span {
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s
}

.main-more-btn {
	position: relative;
	overflow: hidden;
	display: inline-block;
	vertical-align: middle;
	width: 163px;
	height: 55px;
	line-height: 55px;
	border: 1px solid rgba(255,255,255,0.9);
	font-weight: 700;
	font-size: 12px;
	letter-spacing: 0;
	color: #fff;
	text-align: center;
	transition: all 0.3s;
	border-radius: 50px;
	margin-top: 50px
}

.main-more-btn:before {
	display: block;
	position: absolute;
	left: -130%;
	bottom: 0;
	content: "";
	width: 120%;
	height: 150%;
	background: #005747;
 /* opacity:0;filter:Alpha(opacity=0); */
	transform: skew(-20deg);
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-o-transition: all 0.5s;
	-ms-transition: all 0.5s;
	transition: all 0.5s
}

.main-more-btn span {
	position: relative;
	left: 0px;
	z-index: 1;
	display: block;
}

.main-more-btn:hover {
	border-color: #005747
}

.main-more-btn:hover span {
	color: #fff;
	left: 3px;
}

.main-more-btn:hover:before {
	left: -10%;
	opacity: 1.0;
	filter: Alpha(opacity=100);
}


/* 메인 비주얼 :: active효과 */
.main-visual-item.active-item .main-visual-pc-img {
	-webkit-transform: scale(1.06,1.06) rotate(0.002deg);
	transform: scale(1.06,1.06) rotate(0.002deg);
}

.main-visual-item.active-item .main-visual-txt1,
.main-visual-item.active-item .main-visual-txt2,
.main-visual-item.active-item .main-more-btn {
	-webkit-animation: text-active-animation 1.5s cubic-bezier(0.4, 0, 0.2, 1) both;
	animation: text-active-animation 1.5s cubic-bezier(0.4, 0, 0.2, 1) both;
}

.main-visual-item.active-item .main-visual-txt-con .main-visual-txt1 {
	-webkit-animation-delay: 0.2s;
	animation-delay: 0.2s;
}

.main-visual-item.active-item .main-visual-txt-con .main-visual-txt2 {
	-webkit-animation-delay: 0.9s;
	animation-delay: 0.9s;
}

.main-visual-item.active-item .main-visual-txt-con .main-more-btn {
	-webkit-animation-delay: 1.1s;
	animation-delay: 1.1s;
}

.main-visual-item .main-visual-txt1.splitting .char {
	-webkit-animation: text-fade-out 1.5s cubic-bezier(0.4, 0, 0.2, 1) both;
	animation: text-fade-out 1.5s cubic-bezier(0.4, 0, 0.2, 1) both;
}

.main-visual-item.active-item .main-visual-txt1.splitting .char {
	-webkit-animation: text-active-animation 1.5s cubic-bezier(0.4, 0, 0.2, 1) both;
	animation: text-active-animation 1.5s cubic-bezier(0.4, 0, 0.2, 1) both;
}

@keyframes text-active-animation {
	from {
		opacity: 0;
		filter: Alpha(opacity=0);
		-webkit-transform: translateY(50px);
		transform: translateY(50px);
	}

	to {
		opacity: 1.0;
		filter: Alpha(opacity=100);
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

@keyframes text-fade-out {
	from {
		opacity: 1.0;
		filter: Alpha(opacity=100);
	}

	to {
		opacity: 0;
		filter: Alpha(opacity=0);
	}
}

.main-scroll-icon {
	position: absolute;
	bottom: 70px;
	left: 50%;
 /*margin-left:725px;*/
	transform: translateX(-50%);
	text-align: center;
	z-index: 9;
	animation: upDown 1.5s ease-in-out infinite;
}

.main-scroll-icon span {
	display: block;
	color: rgba(255,255,255,0.6);
	padding-right: 70px;
	letter-spacing: 0;
	font-weight: 400;
	font-size: 12px;
	transform: rotate(90deg)
}

@keyframes upDown {
	0% {
		opacity: 0.5;
		transform: translate(-50%,-5px);
	}

	50% {
		opacity: 1;
		transform: translate(-50%,5px);
	}

	100% {
		opacity: 0.5;
		transform: translate(-50%,-5px);
	}
}

/* 메인 비주얼 :: 컨트롤러 */
.main-visual-control {
	position: absolute;
	bottom: 100px;
	left: 0;
	z-index: 99;
	width: 100%
}
/* Dot */
.main-visual-control .main-slide-dot {
	display: inline-block;
	vertical-align: middle;
	margin: -1px -8px 0 7px
}

.main-visual-control .main-slide-dot li {
	position: relative;
	display: inline-block;
	margin-right: 20px;
	transition: all 0.8s
}

.main-visual-control .main-slide-dot li:after {
	position: absolute;
	content: "";
	width: 0;
	height: 2px;
	background-color: #005747;
	left: 35px;
	top: 8px;
}

.main-visual-control .main-slide-dot li.slick-active {
	margin-right: 120px
}

.main-visual-control .main-slide-dot li.slick-active:after {
	animation: LoadingBar 4s both;
	animation-delay: 0.2s
}

.main-visual-control .main-slide-dot li button {
	position: relative;
	display: inline-block;
	padding-left: 7px;
	font-weight: 400;
	font-size: 14px;
	color: #fff;
	opacity: 0.3
}

.main-visual-control .main-slide-dot li button:before {
	position: absolute;
	content: "0";
	left: 0;
	top: 0
}

.main-visual-control .main-slide-dot li.slick-active button {
	opacity: 1
}

@-webkit-keyframes LoadingBar {
	from {
		width: 0px;
	}

	to {
		width: 80px;
	}
}

@keyframes LoadingBar {
	from {
		width: 0px;
	}

	to {
		width: 80px;
	}
}

.main-visual-control .main-arrow {
	display: inline-block;
	vertical-align: middle;
	width: 25px;
	text-align: center
}

.main-visual-control .main-arrow a {
	transition: all 0.3s;
	position: relative;
	display: block !important
}

.main-visual-control .main-arrow.main-arrow-prev:hover a {
	transform: translateX(-5px)
}

.main-visual-control .main-arrow.main-arrow-next:hover a {
	transform: translateX(5px)
}

.main-visual-control .main-arrow a i {
	color: #fff;
	font-size: 18px
}

/*  :: pause,play */
.main-visual-control .main-play-control {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	top: 1px;
	margin-left: 10px;
}

.main-visual-control .slick-control-btns {
	display: inline-block;
	vertical-align: top;
	margin-left: 5px;
}

.main-visual-control .slick-control-btns button {
	color: #fff;
	vertical-align: top;
}

.main-visual-control .slick-control-btns button i {
	vertical-align: top;
	font-size: 22px;
	position: relative;
}

.main-visual-control .slick-control-btns .slick-play-btn {
	display: none;
}





/* -------- Header :: GNB(Mobile) -------- */
.nav-open-btn {
	display: none;
}

#gnbM {
	display: none
}




 
@media all and (min-width:1025px) {
	.fixed-sub-menu.top-fixed .side-menu-inner {
		position: fixed;
		top: 0px;
		left: 0px;
		z-index: 9999;
	}
}



/* ****************** 站点地图 ********************** */
/* -------- 站点地图 01 -------- */
/* 站点地图 01 */
.sitemap-wrapper {
	padding: 30px;
	background-color: #fff;
}

.sitemap-wrapper > ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap
}

.sitemap-wrapper > ul > li {
	text-align: center;
	float: left;
	width: 33.333%
}

.sitemap-wrapper > ul > li > h2 {
	color: #fff;
	margin: 0 2% 15px 2%;
	padding: 15px;
	font-size: 18px;
	background-color: #be2222;
	letter-spacing: -1.0px;
	font-weight: 500;
}

.sitemap-wrapper > ul > li .sitemap-2dep {
	padding: 0 5% 20px;
}

.sitemap-wrapper > ul > li .sitemap-2dep a {
	display: block;
	padding: 10px 0;
	color: #666;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.2em;
}

.sitemap-wrapper > ul > li .sitemap-2dep a:hover {
	color: #000;
}

.sitemap-wrapper > ul > li.has-3dep {
	width: 66.666%
}

.sitemap-wrapper > ul > li.has-3dep .sitemap-2dep > li {
	float: left;
	width: 25%
}

.sitemap-wrapper > ul > li.has-3dep .sitemap-2dep > li > a {
	font-weight: 600
}

/* -------- 站点地图 02 -------- */
/* 站点地图 02 :: Layout */
#sitemapContent {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
	filter: Alpha(opacity=0);
	visibility: hidden;
	z-index: -1;
	-webkit-transition: all 0.3s  0.5s;
	transition: all 0.3s  0.5s;
}

#sitemapInnerCon {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 75px;
	left: 90px;
	border-right: 1px solid rgba(255,255,255,0.2);
	border-left: 1px solid rgba(255,255,255,0.2);
}

#sitemapContent .sitemap-bg-box {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}

#sitemapContent .visual-intro-item {
	float: left;
	position: relative;
	height: 100%;
}

#sitemapContent .visual-intro-item:before {
	position: absolute;
	left: 0;
	top: 0px;
	width: 1px;
	height: 0;
	content: "";
	background-color: rgba(255,255,255,0.2);
	z-index: 1;
}

#sitemapContent .visual-intro-item:first-child:before {
	display: none
}

#sitemapContent .visual-intro-item:after {
	content: "";
	position: absolute;
	right: 0;
	top: 0px;
	width: 100%;
	height: 100%;
	background: #505050;
	-webkit-transition: width .6s cubic-bezier(0.47, 0, 0.31, 1.04) 0.2s;
	transition: width .6s cubic-bezier(0.47, 0, 0.31, 1.04) 0.2s;
}

#sitemapContent .sitemap-close-btn {
	position: absolute;
	top: 0;
	right: 0;
	width: 75px;
	height: 75px;
	background-color: #505050;
}

#sitemapContent .sitemap-close-btn i {
	font-size: 32px;
	color: #fff;
}

/* 站点地图02:：菜单列表 */
.sitemap-wrapper-style02 {
	height: 100%;
}

.sitemap-wrapper-style02 > ul {
	overflow: hidden;
	position: relative;
	z-index: 1;
	top: 50%;
	transform: translateY(-50%);
	margin-top: -2%
}

.sitemap-wrapper-style02 > ul > li {
	overflow: hidden;
	float: left;
	width: 20%;
	height: 100%;
}

.sitemap-wrapper-style02 > ul > li > h2 {
	overflow: hidden;
	color: #fff;
	font-size: 26px;
	letter-spacing: -0.5px;
	margin: 0% 15% 0 19%;
	font-weight: 600;
	line-height: 1.2;
	display: table;
	height: 70px
}

.sitemap-wrapper-style02 > ul > li > h2 span {
	display: table-cell;
	vertical-align: top
}
.sitemap-wrapper-style02 > ul > li > h2 span a {color: #fff;font-size: 26px;}
.sitemap-wrapper-style02 > ul > li > h2 span a:hover {
	color: #005747;
}

.sitemap-wrapper-style02 > ul > li > h2.hide {
	opacity: 0
}

.sitemap-wrapper-style02 > ul > li .sitemap-2dep a {
	overflow: hidden;
	position: relative;
	display: inline-block;
	margin: 19px 15% 19px 19%;
	color: #c3c3c3;
	font-size: 16.5px;
	letter-spacing: -0.5px;
	font-weight: 400;
	line-height: 1.2;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s
}

.sitemap-wrapper-style02 > ul > li .sitemap-2dep a span {
	position: relative;
	display: inline-block;
	z-index: 1;
	padding-left: 9px;
	word-break: break-all;
    white-space: normal;
}

.sitemap-wrapper-style02 > ul > li .sitemap-2dep a span:before {
	position: absolute;
	content: "-";
	left: 0;
	top: 0;
}

.sitemap-wrapper-style02 > ul > li .sitemap-2dep a .gnb-icon {
	display: none;
}

.sitemap-wrapper-style02 > ul > li .sitemap-2dep a:hover {
	color: #fff;
}

.sitemap-wrapper-style02 > ul > li .sitemap-2dep a:hover:after {
	width: 100%;
}
.sitemap-wrapper-style02 > ul > li .sitemap-2dep h3 {
	margin: 0 15% 0 19%;
	padding: 19px 0;
	font-weight: 600;
	font-size: 20px;
	letter-spacing: -0.5px;
	color: #005747;
	overflow: hidden
}
.sitemap-wrapper-style02 > ul > li .sitemap-2dep h3 a {
	margin: 0;
	padding: 0;
	font-weight: 600;
	font-size: 20px;
	letter-spacing: -0.5px;
	color: #005747;
	overflow: hidden
}

.sitemap-wrapper-style02 > ul > li .sitemap-2dep h3 span {
	display: block;
}

.sitemap-wrapper-style02 > ul > li .sitemap-2dep .gnb-3dep {
	padding-bottom: 15px
}

.sitemap-wrapper-style02 ul li span,
.sitemap-wrapper-style02 > ul > li .sitemap-2dep h3 span {
	opacity: 0;
	filter: Alpha(opacity=50);
	-webkit-transform: translateX(-5%);
	transform: translateX(-50%);
	transition: transform .8s cubic-bezier(0.47, 0, 0.31, 1.04) 0s, opacity .8s cubic-bezier(0.47, 0, 0.31, 1.04) 0s;
}
/* 站点地图 open */
#sitemapContent.open {
	opacity: 1.0;
	filter: Alpha(opacity=100);
	visibility: visible;
	z-index: 99999;
	background-color: #242424;
	-webkit-transition: all 0.3s  0s;
	transition: all 0.3s 0s;
}

#sitemapContent.open .visual-intro-item:before {
	height: 100%;
}

#sitemapContent.open .visual-intro-item:after {
	width: 0;
}

#sitemapContent.open .visual-intro-item {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
	transform-origin: right top;
	transition-property: transform;
}

#sitemapContent.open .sitemap-wrapper-style02 ul li span,
#sitemapContent.open .sitemap-wrapper-style02 > ul > li .sitemap-2dep h3 span {
	opacity: 1.0;
	filter: Alpha(opacity=100);
	-webkit-transform: translateX(0);
	transform: translateX(0);
	transition: transform .8s cubic-bezier(0.47, 0, 0.31, 1.04), opacity .8s cubic-bezier(0.47, 0, 0.31, 1.04);
}


.cm-arrow-btn:hover .arrow {
	transform: translateX(6px)
}


#header.open #headerInnerWrap {background: #fff;}

/* Slider */
.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}

.slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.slick-list:focus {
	outline: none !important;
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: block;
}

.slick-track:before,
.slick-track:after {
	display: table;
	content: '';
}

.slick-track:after {
	clear: both;
}

.slick-loading .slick-track {
	visibility: hidden;
}

.slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px;
}
[dir='rtl'] .slick-slide {
	float: right;
}

.slick-slide img {
	display: block;
}

.slick-slide.slick-loading img {
	display: none;
}

.slick-slide.dragging img {
	pointer-events: none;
}

.slick-initialized .slick-slide {
	display: block;
}

.slick-loading .slick-slide {
	visibility: hidden;
}

.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
	display: none;
}

.slick-slider *:focus {
	outline: none !important;
}

@media (max-width: 1680px) {
	#header .logo {
		padding-left: 3%;
	}

	.header-util-box {
		right: 3%;
	}

	#headerInner {
		margin: 0;
	}

	#gnb > ul {
		margin-right: 200px;
	}

	#gnb.total-menu > ul > li .gnb-2dep .menu-rt-list-auto .menu-list li {
		padding: 0;
		width: 49%;
		display: inline-block;
	}
}

@media (max-width: 1500px) {
	#header .logo {
		padding-left: 2.5%;
	}
	.cd-search-trigger {
		right: 170px;
	}

	#header .logo a {
		background-size: 220px;
	}

	#header.top-fixed .logo a, #header.open .logo a {
		background-size: 185px;
	}

	#header .logo a {
		background-size: 185px;
	}

	#header .logo a {
		width: 280px;
	}

	#gnb > ul > li > a {
		padding: 0 33px;
	}

	#gnb > ul {
		margin-right: 160px;
	}

	#gnb.total-menu > ul > li .gnb-2dep li.on .gnb-3dep {
		display: none;
	}

	#gnb.total-menu > ul > li.gnb5 .gnb-2dep .menu-rt-list .menu-list > li.on > a:after, #gnb.total-menu > ul > li.gnb2 .gnb-2dep .vertical-top.menu-rt-list .menu-list > li.on > a:after {
		opacity: 0;
	}


	.main-visual-control {
		position: absolute;
		bottom: 100px;
	}
}

@media (max-width: 1380px) {
	#gnb > ul > li > a {
		padding: 0 28px;
	}

	#header .logo {
		margin-left: 5%;
	}

	.sitemap-line-btn {
		margin-left: 10px;
	}

	.cd-search-trigger {
		right: 145px;
	}

	#gnb > ul {
        margin-right: 170px;
    }

	#gnb.total-menu > ul > li .gnb-2dep .menu-lf-txt {
		width: 30%;
	}

	.cont1560 {
		width: 90vw;
	}

}

@media (max-width: 1280px) {

	#gnb > ul {
        margin-right: 130px;
    }


	#gnb > ul > li > a {
		padding: 0 26px;
		font-size: 16px;
	}

}

@media (max-width: 1190px) {
    #gnb > ul > li > a {
        padding: 0 22px;
	}
}

@media (min-width: 1900px) {
	.cd-search-trigger {
		right: 170px;
	}
}

@-webkit-keyframes bgScale {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1)
	}

	100% {
		-webkit-transform: scale(1.2);
		transform: scale(1.2)
	}
}

@keyframes bgScale {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1)
	}

	100% {
		-webkit-transform: scale(1.2);
		transform: scale(1.2)
	}
}

@-webkit-keyframes textPosition {
	0% {
		opacity: 0;
		-webkit-transform: translateY(30px);
		transform: translateY(30px)
	}

	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0)
	}
}

@keyframes textPosition {
	0% {
		opacity: 0;
		-webkit-transform: translateY(30px);
		transform: translateY(30px)
	}

	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0)
	}
}


