@charset "utf-8";

@import url('Jost.css');

@font-face {
	font-family: 'UNSII';
	font-display: swap;
	src: url('../fonts/UNSII-2.ttf') format('truetype');
}

/* ========================================================
 * SETTING
======================================================== */
:root {
	--main-color: #916728;
	--main-color2: #e1c04f;
	--area-wrap-width: 1720px;
	--area-box-width: 1520px;
	--area-middle-width: 1320px;
	--area-width: 1320px;
	--area-padding: 30px;
	--header-height: 100px;
	--header-top: 4rem;
	--sub-visual-height: 48rem;
	--sub-visual-esg-height: 96rem;
	--sub-visual-prd-height: 120rem;
	--sub-menu-height: 50px;
	--full-height: 100vh;
	--transition-custom: all 0.4s ease-in-out;
	--transition-custom2: all 0.8s ease-in-out;
	/* data-scroll */
	--font-family1: 'OPPO', 'Pretendard', "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
}

/* html:not(.is-mobile) *::-webkit-scrollbar {
	width: 15px;
	height: 15px;
}
html:not(.is-mobile) *::-webkit-scrollbar-track {
	background-color: #f1f1f1;
}
html:not(.is-mobile) *::-webkit-scrollbar-thumb {
	background-color: #c1c1c1;
} */
::selection {
	background: var(--main-color);
	color: #fff;
}

::-moz-selection {
	background: var(--main-color);
	color: #fff;
}

html {
	font-size: 10px;
}

body,
table,
th,
td,
button,
select,
input,
textarea {
	font-family: var(--font-family1);
	color: #666;
	-webkit-text-size-adjust: none;
	-moz-text-size-adjust: none;
	text-size-adjust: none;
	word-break: keep-all;
}

body {
	background-color: #fff;
}

table,
th,
td {
	word-break: break-word;
}

#wrap {
	overflow: hidden;
	width: 100%;
	min-width: 320px;
	position: relative;
}

/* ========================================================
 * LAYOUT
======================================================== */
.area {
	max-width: var(--area-width);
	margin: 0px auto;
}

.area-middle {
	max-width: var(--area-middle-width);
	margin: 0px auto;
}

.area-box {
	max-width: var(--area-box-width);
	margin: 0px auto;
}

.area-wrap {
	max-width: var(--area-wrap-width);
	margin: 0px auto;
}

.full-height {
	height: var(--full-height);
}

/* Fullpage Layout */
.fullpage-html {
	overflow: hidden;
	height: 100%;
}

.fullpage-html #wrap {
	position: static;
}

/* br tag */
.m-br {
	display: none;
}

.m-middle-br {
	display: none;
}

.display-m {
	display: none;
}

.co-main {
	color: var(--main-color);
}

/* ****************** HEADER ********************** */
#header {
	/* position:relative; */
	position: fixed;
	height: var(--header-height);
	top: var(--header-top);
	left: 0;
	width: 100%;
	z-index: 9999;
	transition: var(--transition-custom);
}

.fullpage-html #header {
	position: fixed;
}

#headerInnerWrap {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: var(--header-height);
	z-index: 9999;
	transition: var(--transition-custom);
}

#headerInner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: var(--header-height);
	margin: 0px auto;
	padding: 0 var(--area-padding);
	max-width: var(--area-wrap-width);
}

#header .logo {
	position: relative;
	z-index: 100;
}

#header .logo a {
	display: block;
}

#header .logo img {
	display: block;
	vertical-align: top;
	width: 200px;
	height: auto;
}

#header .logo svg * {
	transition: var(--transition-custom);
}

#header.fixed {
	top: 0;
	/* position: fixed; */
	transition: var(--transition-custom), background 0.4s 0.4s;
	background:#fff;
	/* background: rgba(255, 255, 255, 0.15); */
	backdrop-filter: blur(15px);
}

#header.fixed.bg {
	background: rgba(255, 255, 255, 0.3);
	backdrop-filter: blur(15px)
}

.sub-wrap #header.top-fixed {
	background:#fff;
	/* background: rgba(255, 255, 255, 0.15); */
	backdrop-filter: blur(15px);
	transition: var(--transition-custom), background 0.4s 0s;
}

/* -------- Header :: UTIL BOX -------- */
.header-util-box {
	position: relative;
	z-index: 100;
	display: flex;
	align-items: center;
}

.header-lang {
	position: relative;
	z-index: 100;
	margin-right: 5rem;
}

.header-lang .lang-open-btn {
	overflow: hidden;
	position: relative;
	display: block;
	width: 100%;
	text-align: left;
	height: 100%;
	font-size: 2.4rem;
	color: #000;
	padding: 0 1rem 0.5rem;
	transition: var(--transition-custom);
}

.header-lang .lang-open-btn i {
	display: inline-block;
	vertical-align: middle;
	transform: translateY(-3px);
}

.header-lang>ul {
	display: none;
	position: absolute;
	top: 3.5rem;
	left: 50%;
	transform: translateX(-50%);
	z-index: 10;
	width: 10rem;
	border: 1px solid #000;
	background-color: #fff;
	padding: 0.5rem 0;
}

.header-lang>ul>li>a {
	display: block;
	padding: 0.5rem 1rem;
	font-size: 1.2rem;
	line-height: 1.3;
	color: #333;
	text-align: center;
}

.header-lang>ul>li>a:hover {
	background-color: #f2f2f2;
}


.sitemap-line-btn {
	width: 6rem;
	height: 24px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.sitemap-line-btn .line {
	display: block;
	width: 6rem;
	height: 3px;
	background-color: #000;
	margin: 2.5px auto;
	transition: var(--transition-custom);
}

.sitemap-line-btn .line:nth-child(1) {
	width: 3rem;
	background: var(--main-color) !important;
	margin-right: 0;
}

.sitemap-line-btn .line:nth-child(3) {
	width: 3rem;
	margin-left: 0;
}

/* active */
.sitemap-line-btn.active {
	position: relative;
	z-index: 100000;
}

.sitemap-line-btn.active .line:nth-child(2),
.sitemap-line-btn.active .line:nth-child(4) {
	opacity: 0;
}

.sitemap-line-btn.active .line:nth-child(1) {
	transform: translate(-15px, 8px) rotate(45deg);
}

.sitemap-line-btn.active .line:nth-child(3) {
	transform: translate(15px, -8px) rotate(-45deg);
}

.gnb-overlay-bg {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	visibility: hidden;
	opacity: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: 9997;
	transition: var(--transition-custom);
}

/* gnb overlay BG */
.gnb-overlay-bg.open {
	visibility: visible;
	opacity: 1.0;
}

#gnb {
	position: absolute;
	text-align: right;
	top: 0;
	right: 30rem;
	/* width:100%; */
	z-index: 99;
}

#gnb>ul {
	display: inline-block;
}

#gnb>ul>li {
	position: relative;
	float: left;
	word-break: keep-all;
}

#gnb>ul>li>a {
	position: relative;
	z-index: 100;
	display: block;
	line-height: var(--header-height);
	/* padding:0 2rem; */
	padding-right: 4rem;
	text-align: center;
	color: #000;
	font-size: 1.8rem;
	letter-spacing: -0.02em;
	font-weight: 500;
	transition: var(--transition-custom);
	/* min-width:5rem; */
	box-sizing: border-box;
}

#gnb>ul>li:last-child>a {
	padding-right: 0;
}

#gnb>ul>li>a span {
	position: relative;
}

/* #gnb > ul > li > a span:before{position: absolute; content:''; width:1rem; height:1rem; border-radius:50%; background:var(--main-color2); top:-2rem; left:0; opacity:0; transition:var(--transition-custom);}
#gnb > ul > li > a:hover span:before,
#gnb > ul > li > a:focus span:before,
#gnb > ul > li.on > a span:before{top:-1.3rem; opacity:1;} */


.header-on-icon {
	position: absolute;
	content: '';
	width: 1rem;
	height: 1rem;
	border-radius: 50%;
	background: var(--main-color2);
	top: 2rem;
	left: 0;
	transition: opacity 0.4s;
	z-index: 9999;
}

#gnbBg {
	overflow: hidden;
	position: absolute;
	left: 50%;
	top: calc(-1 * var(--header-top));
	transform: translateX(-50%);
	width: 200vw;
	height: 0;
	background: #fff;
	z-index: 98;
	opacity: 0;
	transition: height 0.3s ease-in-out, opacity 0.2s ease-in-out;
	border-bottom: 1px solid #ddd;
}

/* #gnbBg:after{position:absolute; top:calc(var(--header-height) + var(--header-top)); width:100%; left:0; height:1px; background-color:#ddd; content:"";} */
#gnb.total-menu>ul>li .gnb-2dep {
	position: absolute;
	top: var(--header-height);
	left: 0px;
	z-index: 99;
	width: 100%;
	text-align: center;
	opacity: 0;
	filter: Alpha(opacity=0);
	height: 0;
	transition: all 0.2s 0s;
	transition-delay: 0s;
	visibility: hidden;
}

/* #gnb.total-menu > ul > li .gnb-2dep:before {
	content:""; position:absolute; left:0; top:-1px; width:0; left:50%; height:3px; background-color:var(--main-color); 
	transition:var(--transition-custom);
} */
#gnb.total-menu>ul>li:hover .gnb-2dep:before {
	width: 100%;
	left: 0;
}

#gnb.total-menu>ul>li .gnb-2dep ul {
	padding: 1rem 0px;
}

#gnb.total-menu>ul>li .gnb-2dep ul li {
	position: relative;
}

#gnb.total-menu>ul>li .gnb-2dep ul li a {
	position: relative;
	display: block;
	padding: 0.7rem 4rem 0.7rem 0;
	color: #333;
	font-size: 1.5rem;
	letter-spacing: -0.05em;
	font-weight: 400;
	line-height: 1.3;
	transition: var(--transition-custom);
	text-align: left;
}

/* #gnb.total-menu > ul > li .gnb-2dep ul li a span{position: relative;}
#gnb.total-menu > ul > li .gnb-2dep ul li a span:before{ content:""; position:absolute; left:0; bottom:-1px; width:0; left:0%; height:1px; background-color:var(--main-color); transition:var(--transition-custom);}
#gnb.total-menu > ul > li .gnb-2dep ul li a:hover span:before{width:100%; left:0;} */

@media all and (min-width: 801px) {
	#gnb.total-menu>ul>li .gnb-2dep ul li a span {
		display: inline;
		background-image: linear-gradient(var(--main-color), var(--main-color));
		background-repeat: no-repeat;
		background-position: 100% 100%;
		background-size: 0% 1px;
		padding-bottom: 1px;
		transition: background-size .4s ease, color 0.2s ease-in-out;
	}

	#gnb.total-menu>ul>li .gnb-2dep ul li a span::before {
		display: none;
	}

	#gnb.total-menu>ul>li .gnb-2dep ul li a:hover span {
		background-position: 0% 100%;
		background-size: 100% 1px;
	}
}

/* GNB :: 2차메뉴 Over (높이변경) */
#gnb.open #gnbBg {
	height: calc(490px + var(--header-top));
	opacity: 1.0;
	filter: Alpha(opacity=100);
}

#gnb.open>ul>li>a {
	padding-right: 8rem;
}

#gnb.open>ul>li.gnb1>a {
	padding-right: 7rem;
}

#gnb.open>ul>li.gnb6>a {
	padding-right: 9rem;
}

#gnb.open>ul>li .gnb-2dep {
	height: 390px;
	opacity: 1.0;
	filter: Alpha(opacity=100);
	visibility: visible;
	transition: height 0.5s ease-in-out, opacity 0.5s ease-in-out 0.2s;
}

#gnb.each-menu>ul>li .gnb-2dep {
	/* display:none; */
	position: absolute;
	top: calc(var(--header-height) - 20px);
	left: 0px;
	z-index: 99;
	width: 100%;
	text-align: left;
	visibility: hidden;
	opacity: 0;
	filter: Alpha(opacity=0);
	transition: all 0.2s cubic-bezier(0.4, 0, 1, 1);
}

#gnb.each-menu>ul>li .gnb-2dep:before {
	content: "";
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	height: 0;
	background-color: var(--main-color);
	transition: all 0.2s cubic-bezier(0.4, 0, 1, 1);
}

#gnb.each-menu>ul>li .gnb-2dep ul {
	padding: 15px 0px;
}

#gnb.each-menu>ul>li .gnb-2dep ul li {
	position: relative;
	padding: 8px 10px;
	opacity: 0;
	transition: all 0s 0s;
}

#gnb.each-menu>ul>li .gnb-2dep ul li a {
	display: block;
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	text-align: center;
	line-height: 1.4;
	opacity: 0.9;
}

#gnb.each-menu>ul>li .gnb-2dep ul li a:hover {
	opacity: 1.0;
}

#gnb.each-menu>ul>li .gnb-2dep.open {
	visibility: visible;
	opacity: 1.0;
}

#gnb.each-menu>ul>li .gnb-2dep.open:before {
	height: 100%;
}

#gnb>ul>li .gnb-2dep.open ul li {
	opacity: 1.0;
	transition: var(--transition-custom2);
}

#gnb>ul>li .gnb-2dep.open ul li:nth-child(1) {
	transition-delay: 0.1s;
}

#gnb>ul>li .gnb-2dep.open ul li:nth-child(2) {
	transition-delay: 0.2s;
}

#gnb>ul>li .gnb-2dep.open ul li:nth-child(3) {
	transition-delay: 0.3s;
}

#gnb>ul>li .gnb-2dep.open ul li:nth-child(4) {
	transition-delay: 0.4s;
}

#gnb>ul>li .gnb-2dep.open ul li:nth-child(5) {
	transition-delay: 0.5s;
}

#gnb>ul>li .gnb-2dep.open ul li:nth-child(6) {
	transition-delay: 0.6s;
}

#gnb>ul>li .gnb-2dep.open ul li:nth-child(7) {
	transition-delay: 0.7s;
}

#gnb>ul>li .gnb-2dep.open ul li:nth-child(8) {
	transition-delay: 0.8s;
}

/* -------- Header :: GNB(Mobile) -------- */
.nav-open-btn {
	display: none;
}

#gnbM {
	display: none
}

/* -------- Header :: white -------- */
#header.white-ver:not(.gnb-open, .fixed) .logo svg .e,
#header.white-ver:not(.gnb-open, .fixed) .logo svg .f,
#header.white-ver:not(.gnb-open, .fixed) .logo svg .g {
	fill: #fff;
}

#header.white-ver:not(.gnb-open, .fixed) #gnb>ul>li>a,
#header.white-ver:not(.gnb-open, .fixed) .header-lang .lang-open-btn {
	color: #fff;
}

#header.white-ver:not(.gnb-open, .fixed) .sitemap-line-btn .line,
#header.white-ver:not(.gnb-open, .fixed) .nav-open-btn:not(.active) .line {
	background-color: #fff;
}

#header.white-ver:not(.gnb-open, .fixed) .nav-open-btn:not(.active) .line:nth-child(1) {
	background: var(--main-color);
}

/* sitemap-open */
#header.sitemap-open .logo svg .e,
#header.sitemap-open .logo svg .f,
#header.sitemap-open .logo svg .g {
	fill: #fff !important;
}

#header.sitemap-open .header-lang .lang-open-btn {
	display: none;
}

#header.sitemap-open .sitemap-line-btn .line {
	background-color: #fff !important;
}

/* black, fixed */
@media all and (min-width:1281px) {

	.sub-wrap #header.white-ver.fixed:not(.gnb-open) .logo svg .e,
	.sub-wrap #header.white-ver.fixed:not(.gnb-open) .logo svg .f,
	.sub-wrap #header.white-ver.fixed:not(.gnb-open) .logo svg .g {
		fill: #fff !important;
	}

	.sub-wrap #header.white-ver.fixed:not(.gnb-open) #gnb>ul>li>a,
	.sub-wrap #header.white-ver.fixed:not(.gnb-open) .header-lang .lang-open-btn {
		color: #fff;
	}

	.sub-wrap #header.white-ver.fixed:not(.gnb-open) .sitemap-line-btn .line {
		background-color: #fff
	}
}

/* scroll Down */
@media all and (min-width:1281px) {
	#header.scroll-down {
		transform: translateY(calc(-1 * var(--header-height)))
	}
}

@media all and (min-width:1921px) {
	#gnb {
		right: 24vw;
	}
}

#footer {
	position: relative;
	background-color: #fff;
}

.footer-left-con {
	float: left;
}

.footer-right-con {
	float: right;
}

.to-top-btn {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	display: block;
	width: 10rem;
	height: 10rem;
	background-color: #fff;
	text-align: center;
	color: #333;
	z-index: 99;
	border: 1px solid #eee;
	box-sizing: border-box;
	transition: var(--transition-custom);
	border-radius: 50%;
}

.to-top-btn i {
	display: inline-block;
	font-size: 3rem;
	transition: var(--transition-custom);
	font-weight: 300;
}

.to-top-btn:hover i {
	transform: translateY(-3px)
}

#fullpage .to-top-btn {
	display: none;
}

#footerTop {
	border-top: 1px solid #eee;
	padding: 15rem 0 0;
}

.footer-recruit-box {
	margin-bottom: 6rem;
}

.footer-recruit-box img {
	width: 20rem;
}

.footer-recruit-box a {
	display: flex;
	align-items: center;
}

.footer-recruit-box a svg {
	height: 3.8rem;
	display: inline;
	width: auto;
}

.footer-recruit-box a svg * {
	fill: #000;
}

.footer-recruit-box a span {
	font-size: 5rem;
	line-height: 1.36;
	letter-spacing: -0.04em;
	color: #000;
	font-weight: 800;
	margin-left: 1.5rem;
}

.footer-recruit-box a i {
	font-size: 4.8rem;
	color: #000;
	transform: rotate(-45deg);
	margin-left: 1rem;
}

.footer-recruit-box .footer-recruit-txt {
	font-size: 2.2rem;
	line-height: 1.875;
	letter-spacing: -0.04em;
	margin-top: 1rem;
	font-family: Microsoft YaHei;
	font-weight: bold;
	background: linear-gradient(90deg, #794f21, #f6d75d);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.footer-address-info-box {}

.footer-address-list dl {
	display: inline-block;
	vertical-align: middle;
	color: #222;
	font-size: 1.8rem;
	line-height: 1.5;
	margin-left: 6rem;
	margin-bottom: 1rem;
}

.footer-address-list.font-jost dl {
	font-weight: 500;
}

.footer-address-list dl:first-child {
	margin-left: 0
}

.footer-address-list dl dt,
.footer-address-list dl dd {
	vertical-align: middle;
	display: inline-block;
}

.footer-address-list dl dt {
	margin-right: .2rem;
	color: var(--main-color);
	font-family: 'OPPO';
	font-weight: 500;
}

.footer-address-list a {
	color: inherit
}

.family-site-box {
	/* position:absolute; top:20px; right:0;*/
	position: relative;
	width: 15rem;
	text-align: left;
	letter-spacing: -0.025em;
}

.family-site-box .family-site-open-btn {
	position: relative;
	display: block;
	width: 100%;
	height: 4rem;
	line-height: 4rem;
	padding: 0 1.5rem;
	text-align: left;
	font-size: 1.7rem;
	;
	background-color: #f5f5f5;
	color: #222;
	box-sizing: border-box;
	border-radius: 0 0 1rem 1rem;
	z-index: 99;
}

.family-site-box .family-site-open-btn:after {
	position: absolute;
	right: 1rem;
	top: 50%;
	transform: translateY(-50%);
	font-size: 2.4rem;
	font-family: 'xeicon';
	content: "\ec26";
	color: var(--main-color);
}

.family-site-box.open .family-site-open-btn:after {
	content: "\e938";
}

.family-site-list {
	position: absolute;
	bottom: 50%;
	left: 0px;
	width: 100%;
	padding: 2rem 0 3.5rem;
	background-color: #f5f5f5;
	z-index: 11;
	display: none;
	box-sizing: border-box;
	border-radius: 3rem 3rem 0 0;
}

.family-site-list a {
	display: block;
	padding: 1rem 2rem;
	color: #333;
	font-size: 1.2rem;
}

.family-site-list a:hover {
	color: #000;
	text-decoration: underline;
}

.footer-bottom-con {
	background: rgb(121, 79, 33);
	background: linear-gradient(180deg, rgba(121, 79, 33, 1) 0%, rgba(153, 111, 42, 1) 100%);
	border-radius: 2rem 2rem 0 0;
	padding: 3rem 5rem;
	box-sizing: border-box;
	margin-top: 8.5rem;
}

/* Footer :: Copyright */
.footer-copyright {
	font-size: 1.4rem;
	letter-spacing: -0.05em;
	line-height: 1.4;
	font-weight: 500;
	color: #fff;
}

.footer-copyright b {
	color: #fff;
	font-weight: 400;
}

.foot-menu {}

.foot-menu li {
	float: left;
	position: relative;
	padding-left: 1rem;
}

.foot-menu li:first-child {
	padding-left: 0;
}

.foot-menu li a {
	color: rgba(255, 255, 255, 0.5);
	font-size: 1.4rem;
	line-height: 1.4;
	font-weight: 400;
}

.foot-menu li a b {
	color: #fff;
	font-weight: inherit
}

/* -------- FOOTER :: black -------- */
#footer.black-ver .to-top-btn {
	background: #000;
	border-color: #222;
	color: #fff;
}

#footer.black-ver #footerTop {
	border-top: 1px solid #222;
}

#footer.black-ver {
	background-color: #000;
}

#footer.black-ver .footer-recruit-box a span,
#footer.black-ver .footer-recruit-box a i,
#footer.black-ver .footer-address-list dl dd,
#footer.black-ver .family-site-box .family-site-open-btn {
	color: #fff;
}

#footer.black-ver .family-site-box .family-site-open-btn {
	background: #222;
}

#footer.black-ver .family-site-list {
	background: #222;
}

#footer.black-ver .family-site-list a {
	color: #fff;
}

#footer.black-ver .footer-recruit-box a svg * {
	fill: #fff;
}


/* ****************** SUB LAYOUT ********************** */
#visual {
	position: relative;
	width: 100%;
	height: var(--sub-visual-height);
}

#visual .visual-img-con {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: var(--sub-visual-height);
	overflow: hidden;
}

#visual .visual-img-inner {
	width: 100%;
	height: 100%;
	background-size: cover !important;
	/* transform: scale(1.1,1.1); 
	transition:transform 5s linear; */
}

#visual .visual-txt-con {
	position: relative;
	z-index: 1;
	display: table;
	width: 100%;
	height: 100%;
	color: #000;
	letter-spacing: -0.02em;
	box-sizing: border-box;
}

#visual .visual-txt-container {
	position: relative;
	width: 100%;
	margin-top: calc(var(--header-height) + var(--header-top));
}

/* #visual .visual-tit,
#visual .visual-sub-txt,
#visual .location,
.linepro,
.desc2,
.protopimg,
.procon {
	opacity: 0;
	transform: translateY(30px);
	transition: var(--transition-custom2);
	transition-property: transform, opacity, filter;
	filter: blur(10px);
} */

#visual .visual-tit {
	color: var(--main-color);
	font-weight: 500;
	font-size: 6rem;
	letter-spacing: 0em;
	transition-delay: 0.1s;
}

#visual .visual-tit.sc {
	font-size: 1rem;
	font-size: 2.4rem;
}

#visual .visual-sub-txt {
	font-size: 2.2rem;
	font-weight: 100;
	padding-top: 3rem;
	transition-delay: 0.3s;
}

#visual .location {
	transition-delay: 0.3s;
}

#visual.active .visual-img-inner {
	/* transform: scale(1.0,1.0) rotate(0.002deg); */
}

#visual.active .visual-tit,
#visual.active .visual-sub-txt,
#visual.active .location,
#visual.active .linepro,
#visual.active .desc2,
#visual.active .protopimg,
#visual.active .procon {
	opacity: 1.0;
	transform: translateY(0px);
	filter: blur(0px);
}

#topMenu03 {
	position: relative;
	width: 100%;
	height: calc(var(--sub-menu-height) + 1px);
	transform: translateY(-50%);
	z-index: 9;
}

/* (+1 border height)*/
#topMenu03 .side-menu-inner {
	text-align: center;
	width: 100%;
	height: var(--sub-menu-height);
}

.snb-wrapper {
	position: relative;
}

#topMenu03 .side-menu-inner ul {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #eee;
	border-radius: 3rem;
	padding: 0.5rem;
	box-sizing: border-box;
}

#topMenu03 .side-menu-inner ul.spe {
	padding: .1rem 0;
}

#topMenu03 .side-menu-inner ul li {
	float: left;
	width: 25%;
	vertical-align: middle;
	transition: var(--transition-custom);
	border-radius: 3rem;
}

#topMenu03 .side-menu-inner.spe ul li {
	width: 50%;
}

#topMenu03 .side-menu-inner ul li>a {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 100%;
	height: var(--sub-menu-height);
	line-height: 1.2;
	color: #000;
	font-size: 1.8rem;
	letter-spacing: -0.05em;
	font-weight: 500;
	word-break: keep-all;
	transition: var(--transition-custom);
}

#topMenu03 .side-menu-inner ul li>a>span {
	display: table-cell;
	vertical-align: middle;
	padding: 0 15px;
	transition: var(--transition-custom);
}

#topMenu03 .side-menu-inner ul li.selected>a>span {
	color: #fff;
}

/* #topMenu03 .side-menu-inner ul li.selected,
#topMenu03 .side-menu-inner ul li:hover{background-color:var(--main-color2);} */
#topMenu03 .side-menu-inner ul li.selected>a,
#topMenu03 .side-menu-inner ul li:hover>a {
	color: #fff;
}

#topMenu03 .side-menu-inner ul.sub-menu-recruit li {
	width: 33.33%;
}

#topMenu03 .side-menu-inner ul.sub-menu-rnd li {
	width: 100%;
}

#topMenu04 {
	position: relative;
	width: 100%;
	height: calc(var(--sub-menu-height) + 1px);
}

/* (+1 border height)*/
#topMenu04 .side-menu-inner {
	width: 100%;
	height: var(--sub-menu-height);
	border-bottom: 1px solid #ddd;
	background-color: #fff;
}

#topMenu04 .location-to-home-btn {
	float: left;
	width: var(--sub-menu-height);
	height: var(--sub-menu-height);
	background-color: #fff;
	text-align: center;
	border-right: 1px solid #ddd;
	border-left: 1px solid #ddd;
}

#topMenu04 .location-to-home-btn i {
	color: var(--main-color);
	font-size: 24px;
	line-height: var(--sub-menu-height);
}

#topMenu04 .menu-location {
	position: relative;
	float: left;
	width: 260px;
}

#topMenu04 .menu-location>.cur-location {
	position: relative;
	display: block;
	width: 100%;
	height: var(--sub-menu-height);
	padding: 0 35px 0 20px;
	border-right: 1px solid #ddd;
	text-align: left
}

#topMenu04 .menu-location>.cur-location span {
	display: block;
	width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: var(--sub-menu-height);
	color: #222;
	font-weight: 400;
	font-size: 18px;
	letter-spacing: -0.5px;
}

#topMenu04 .menu-location>.cur-location .arrow {
	position: absolute;
	top: 50%;
	right: 10px;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	font-size: 20px;
}

#topMenu04 .menu-location.open>.cur-location .arrow {
	transform: rotate(-180deg);
	margin-top: -10px;
}

#topMenu04 .menu-location .location-menu-con {
	display: none;
	position: absolute;
	top: 100%;
	left: -1px;
	right: 0px;
	border: 1px solid #ddd;
	border-top: 0;
	background-color: #fff;
	z-index: 11;
	padding-bottom: 10px
}

#topMenu04 .menu-location .location-menu-con li a {
	display: block;
	padding: 10px 20px;
	font-size: 15px;
	word-break: keep-all;
	line-height: 1.5;
}

#topMenu04 .menu-location .location-menu-con li.on {
	position: relative;
}

#topMenu04 .menu-location .location-menu-con li.on a {
	color: var(--main-color);
	font-weight: 500;
}

/* #topMenu04 .menu-location .location-menu-con li.on a{padding-left:25px;}
#topMenu04 .menu-location .location-menu-con li.on a:before{content:""; position:absolute; top:50%; left:10px; width:7px; height:3px; margin-top:-1px; background-color:var(--main-color)} */
/* // */

@media all and (min-width:1025px) {
	.fixed-sub-menu.top-fixed .side-menu-inner {
		position: fixed;
		top: 0px;
		left: 0px;
		z-index: 9999;
	}
}

#topMenuM {
	display: none;
}

#content:not(.wide) {
	padding: 70px 0 100px
}

#content.wide {
	padding: 100px 0 20rem 0
}

#content.wide.spe {
	padding-top: 0;
}

/* sub-visual */
#visual.sub-visual-prd {
	height: 70rem;
}

#visual.sub-visual-prd .visual-img-con {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 70rem;
	overflow: hidden;
}

#visual.sub-visual-prd .visual-img-inner {
	width: 100%;
	height: 100%;
	background-size: cover !important;
	transition: all 1.5s;
}

/* sub-txt */
.visual-prd-txt-con {
	position: relative;
	z-index: 1;
	display: table;
	width: 100%;
	height: 80rem;
	box-sizing: border-box;
}

.visual-prd-txt-con.spe {
	height: 60rem;
}

.visual-prd-txt-con .table-cell-layout {
	vertical-align: bottom;
}

.visual-prd-txt-container {
	position: relative;
	width: 100%;
	margin-bottom: 7rem;
	/* transition: var(--transition-custom); */
}

.visual-prd-txt-container.hidden {
	opacity: 0;
	margin: 0;
	visibility: hidden;
}

.visual-prd-txt-container .visual-prd-tit-en {
	font-size: 2rem;
	line-height: 2;
	letter-spacing: 1px;
	color: var(--main-color);
	font-weight: 600;
}

.visual-prd-txt-container .visual-prd-tit {
	font-size: 7.4rem;
	line-height: 1.4;
	letter-spacing: -0.02em;
	color: #000;
	font-weight: 500;
	margin-top: 1rem;
}

.visual-prd-txt-container .visual-prd-tit p {
	line-height: 1;
}

.visual-prd-txt-container .visual-prd-tit svg {
	height: 6rem;
	width: auto;
}

.visual-prd-txt-container .visual-prd-sub-txt {
	font-size: 1.8rem;
	line-height: 1.88;
	letter-spacing: -0.02em;
	color: rgba(0, 0, 0, 0.5);
	margin-top: 3rem;
}

/* black-ver */
.white-ver .visual-prd-txt-container .visual-prd-tit {
	color: #fff;
}

.white-ver .visual-prd-txt-container .visual-prd-sub-txt {
	color: rgba(255, 255, 255, 0.5);
}

#topMenu03.esg-top-menu {
	transform: translateY(calc(-100% - 7rem));
}

#topMenu03 .move-line-wrap .main-move-line {
	left: 0;
}

#topMenu03.esg-top-menu .side-menu-inner ul {
	position: relative;
	max-width: 990px;
	margin: 0 auto;
	background: transparent;
}

#topMenu03.esg-top-menu .side-menu-inner ul::before {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	background: rgba(245, 245, 245, 0.2);
	z-index: -1;
	border-radius: 3rem;
}

#topMenu03.esg-top-menu .side-menu-inner ul li {
	width: 33.333%;
}

#topMenu03.esg-top-menu .side-menu-inner ul li>a {
	color: #fff;
}

/***** 비주얼 *****/
#visual.sub-visual-esg,
#visual.sub-visual-esg .visual-img-con {
	height: var(--sub-visual-esg-height);
}

#visual.sub-visual-esg .visual-txt-con {
	color: #fff;
}

#visual.sub-visual-esg .visual-txt-container {
	text-align: center;
	margin-top: calc(var(--header-height) - 11.6rem);
}

#visual.sub-visual-esg .visual-st {
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.4em;
	color: #458117;
	padding-bottom: 2.2rem;
	opacity: 0;
	transform: translateY(30px);
	transition: var(--transition-custom2);
	transition-property: transform, opacity;
}

#visual.sub-visual-esg .visual-tit {
	font-size: 6.4rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.4em;
	color: #fff;
}

#visual.sub-visual-esg .visual-sub-txt {
	font-size: 1.8rem;
	font-weight: 400;
	letter-spacing: -0.02em;
	line-height: 1.5em;
	color: rgba(255, 255, 255, 0.5);
	padding-top: 5rem;
}

#visual.sub-visual-esg.active .visual-st {
	opacity: 1;
	transform: translateY(0px);
}

.esg-info-img {
	text-align: center;
}

.esg-info-img a {
	display: inline-block;
	text-align: right;
}

.esg-info-img a img {
	max-width: 100%;
}

.esg-info-img a .esg-info-txt {
	font-size: 2rem;
	color: #fff;
	padding-right: 1rem;
	box-sizing: border-box;
	line-height: 1.2;
}


/* ****************** Right Quick Menu ********************** */
#subRightMenu {
	position: fixed;
	z-index: 9;
	top: 50%;
	right: 0;
	transform: translate(calc(100% - 5rem), -50%);
}

#subRightMenu .right-menu-wrap {
	display: flex;
	flex-direction: column;
}

#subRightMenu .right-menu-wrap .right-menu-item {
	display: flex;
	flex-direction: column;
}

.right-menu-item .right-btn {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	width: 5rem;
	height: 32rem;
	padding: 3rem 1.5rem;
	cursor: pointer;
	box-sizing: border-box;
}

.right-menu-item .right-btn .tit {
	transform: rotate(90deg) translateX(0%);
	white-space: nowrap;
	font-size: 1.5rem;
	color: #fff;
	font-weight: 500;
	width: 3rem;
	transition: var(--transition-custom);
}

.right-menu-item .right-btn i {
	font-size: 2.4rem;
	color: #fff;
	transition: var(--transition-custom);
	text-align: center;
}

#subRightMenu .right-menu-wrap .right-menu-item:nth-child(1) {
	background: rgba(114, 167, 48, 0.8);
	border-top-left-radius: 2.5rem;
	backdrop-filter: blur(15px);
}

#subRightMenu .right-menu-wrap .right-menu-item:nth-child(2) {
	background: rgba(65, 130, 14, 0.8);
	border-bottom-left-radius: 2.5rem;
	backdrop-filter: blur(15px);
}


/* ****************** MODAL LAYERPOPUP ********************** */
/* modal layer */
.modal-fixed-pop-wrapper {
	display: none;
	overflow-y: scroll;
	overflow-x: hidden;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background: #000;
	background: rgba(0, 0, 0, 0.8);
}

.modal-fixed-pop-inner {
	position: absolute;
	display: table;
	width: 100%;
	height: 100%;
	text-align: center;
}

.modal-inner-box {
	position: relative;
	display: table-cell;
	vertical-align: middle;
}

.modal-loading {
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -25px 0 0 -25px;
	z-index: 10000;
}

.modal-inner-content {
	text-align: left;
}

.loading {
	display: inline-block;
	width: 50px;
	height: 50px;
	border: 8px solid rgba(255, 255, 255, .3);
	border-radius: 50%;
	border-top-color: #fff;
	animation: spin 1s ease-in-out infinite;
}

@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}

@-webkit-keyframes spin {
	to {
		transform: rotate(360deg);
	}
}

/* modal layer content */
.footer-modal-content {
	position: relative;
	width: 96%;
	max-width: 1000px;
	margin: 20px auto;
}

.footer-modal-content h1 {
	font-size: 24px;
	font-weight: 600;
	letter-spacing: -0.5px;
	text-align: center;
	padding: 0 50px 20px;
	color: #fff;
}

.modal-close-btn {
	position: absolute;
	top: -6px;
	right: -6px;
	color: #fff;
}

.modal-close-btn i {
	font-size: 38px;
}

.modal-close-btn i:hover {
	color: #fff
}

.footer-inner-box {
	padding: 30px;
	background-color: #fff;
}

.footer-inner {
	padding: 20px;
	height: 400px;
	overflow-y: auto;
	overflow-x: hidden;
	border: 1px solid #ddd;
}

/* ****************** 
	* Mouse Pointer
********************** */
.mouse-pointer {
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 10000;
	pointer-events: none;
}

/* base */
.mouse-pointer .pointer-circle {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: var(--transition-custom);
	border: 1px solid var(--main-color);
}

/* link */
.mouse-pointer.link .pointer-circle {
	width: 5rem;
	height: 5rem;
	opacity: 0;
}

/* more */
.mouse-pointer .pointer-more {
	position: absolute;
	left: 50%;
	top: 50%;
	display: block;
	width: 23rem;
	height: 23rem;
	transform: translate(-50%, -50%) scale(0);
	opacity: 0;
	visibility: hidden;
	transition: var(--transition-custom);
	display: flex;
	align-items: center;
	justify-content: center;
}

.mouse-pointer .pointer-more .inner-circle {
	position: relative;
	display: block;
	width: 16rem;
	height: 16rem;
	background: rgba(145, 103, 40, 0.6);
	backdrop-filter: blur(5px);
	border-radius: 50%;
}

.mouse-pointer .pointer-more .inner-circle:before {
	position: absolute;
	/* content:'\e907'; */
	font-family: 'xeicon';
	font-size: 4.8rem;
	color: #fff;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(-45deg);
}

.mouse-pointer .pointer-more svg {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
}

.mouse-pointer .pointer-more svg * {
	fill: var(--main-color);
	width: 100%;
	height: 100%;
}

.mouse-pointer.more:not(.non-more) .pointer-circle {
	opacity: 0;
	visibility: hidden;
}

.mouse-pointer.more:not(.non-more) .pointer-more {
	transform: translate(-50%, -50%) scale(1.0);
	visibility: visible;
	opacity: 1;
}

.mouse-pointer.more:not(.non-more) .pointer-more svg {
	animation: textRotate 10s linear infinite;
}

.mouse-pointer.prev .pointer-more .inner-circle:before {
	content: '\e93c';
	transform: translate(-50%, -50%);
}

.mouse-pointer.next .pointer-more .inner-circle:before {
	content: '\e93f';
	transform: translate(-50%, -50%);
}


@keyframes textRotate {
	0% {
		transform: translate(-50%, -50%) rotate(0);
	}

	100% {
		transform: translate(-50%, -50%) rotate(360deg);
	}
}

.is-mobile .mouse-pointer,
.is-mobile .pointer-circle,
.is-mobile .pointer-txt,
.is-mobile .pointer-arrow {
	visibility: hidden;
	opacity: 0;
}

@media all and (max-width:800px) {

	.mouse-pointer,
	.pointer-circle,
	.pointer-txt,
	.pointer-arrow {
		visibility: hidden;
		opacity: 0;
	}
}