@charset "utf-8";

/* ==================================================
	공통사항
================================================== */
.cont_inner {
	width: 100%;
	/* margin-top: 4rem; */
}

.cont_inner2 {
	width: 100%;
	margin-top: 6rem;
}

/* 애니메이션 */
.cont_inner {
	opacity: 0;
	transform: translateY(50px)
}

.cont_inner.active {
	opacity: 1;
	transform: translateY(0);
	transition: all 0.7s 0.8s;
	-webkit-transition: all 0.7s 0.8s;
}

/* 모바일CSS */
@media screen and (max-width:1100px) {
	.cont_inner {
		margin-top: 0;
	}

	.cont_inner2 {
		margin-top: 4rem;
	}
}


/* ==================================================
	아이콘
================================================== */
.con_title {
	position: relative;
	font-size: var(--rem-28);
	font-weight: var(--font-sb);
	margin-bottom: 1.8rem;
	padding-left: 1.8rem;
}

.con_title:before {
	content: "";
	position: absolute;
	top: 0.3em;
	left: 0;
	width: 0.5rem;
	height: 2.4rem;
	background: var(--brand-color-main);
}

.dot_title {
	position: relative;
	font-size: 3.5rem;
	font-weight: var(--font-bd);
}

.dot_title:after {
	content: "";
	width: 0.8rem;
	height: 0.8rem;
	background: var(--brand-color-sub);
	border-radius: 50%;
	display: inline-block;
	margin-left: 0.5rem;
}

.dot_title2 {
	position: relative;
	font-size: 3.2rem;
	font-weight: var(--font-bd);
}

.dot_title2:after {
	content: "";
	width: 0.8rem;
	height: 0.8rem;
	background: var(--brand-color-sub);
	border-radius: 50%;
	display: inline-block;
	margin-left: 0.5rem;
}

.a-tit01 {
	margin-top: var(--rem-24);
	font-size: 2rem;
	background: url('../../lib/images/icon/arrow_icon.svg') no-repeat 0 0.3rem;
	background-repeat: no-repeat;
	padding-left: 2.7rem;
	line-height: 1.4;
}


/* · */
ul.dot_li {
	margin-top: var(--rem-18);
	display: grid;
	gap: 0.4rem 2.4rem;
}

ul.dot_li li {
	position: relative;
	padding-left: 1.4rem;
}

ul.dot_li li::before {
	content: '·';
	position: absolute;
	left: 0.4rem;
}

/* 모바일CSS */
@media screen and (max-width:1023px) {
	.con_title {
		font-size: 2.4rem;
		padding-left: 1.7rem;
	}

	.con_title:before {
		height: 2.2rem;
	}

	.a-tit01 {
		font-size: 18px;
		padding-left: 3rem;
	}
}

/* ==================================================
	테이블
================================================== */
.chart01 table {
	width: 100%;
	border-top: solid 1px #000000;
	border-bottom: solid 1px #D3D3D3;
}

.chart01 tr th {
	background-color: var(--color-white2);
	text-align: center;
	font-weight: var(--font-md);
}

.chart01 thead tr th {
	background-color: var(--color-gray1);
	color: var(--color-black);
	font-weight: var(--font-bd);
}

/*.chart01 td {
	padding-left: 2.5rem !important;
	line-height: 1.35;
}*/

.chart01 tr th,
.chart01 tr td {
	padding: 1.4rem 1.4rem;
	border-bottom: solid 1px #D3D3D3;
	border-left: 1px solid #D3D3D3;
	vertical-align: middle;
}

.chart01 tr th:first-child,
.chart01 tr td:first-child {
	border-left: 0;
}

table.chart01 tr td.ch_bl {
	border-left: 1px solid #c5cbcf;
}

.chart01 tr td.ch_bg {
	background: #f8f8f8;
}

.chart02 {
	width: 100%;
	border-top: solid 1px #262626;
	border-bottom: solid 1px #D3D3D3;
	text-align: center;
	font-size: 1.7rem;
}

table.chart02 tr th {
	background-color: #E5E5E5;
	color: var(--color-black);
	font-weight: var(--font-bd);
}

table.chart02 tr th:first-child {
	border-left: 0;
}

table.chart02 tr td {
	line-height: 1.35;
}

table.chart02 tr td:first-child {
	background: #F8F8F8;
	border-left: 0;
	font-weight: var(--font-sb);
}

table.chart02 tr th,
table.chart02 tr td {
	padding: 1.3rem 0.3rem;
	border-bottom: solid 1px #D3D3D3;
	vertical-align: middle;
	border-left: solid 1px #D3D3D3;
}

/* 테이블 사이즈 */
.chart01_width {
	width: 25%;
}

.chart02_width01 {
	width: 35%;
}

.chart02_width02 {
	width: 50%;
}

.chart02_width03 {
	width: 15%;
}

/* 모바일CSS */
@media screen and (max-width: 1023px) {
	table.chart01 {
		font-size: 1.6rem;
	}

	table.chart02 {
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 640px) {

	table.chart02 tr th,
	table.chart02 tr td {
		padding: 1.3rem 1rem;
	}
}

/* ==================================================
	반응형 테이블 스크롤
================================================== */
.msg_touch_help {
	display: none;
}

/* 모바일CSS */
@media screen and (max-width:720px) {
	.con_table_wrap {
		overflow-x: auto;
	}

	.con_table_wrap {
		position: relative;
	}

	.table_scroll {
		width: 100%;

	}

	.msg_touch_help {
		position: absolute;
		left: 50%;
		top: 50%;
		margin-left: -40px;
		margin-top: -40px;
		display: block;
	}

	.msg_touch_help img {
		width: 100px;
		height: 100px;
	}
}

/* ==================================================
	애니메이션
================================================== */
@-webkit-keyframes fadeUpAni {
	0% {
		opacity: 0;
		transform: translate3d(0, 54px, 0);
	}

	100% {
		opacity: 1;
		transform: translate3d(0, 0px, 0);
	}
}

.fadeUp.active {
	animation-name: fadeUpAni;
	animation-duration: 2s;
}

/* ==================================================
	이미지 움직이는 효과
================================================== */
.over-cover {
	overflow: hidden;
	position: relative;
	display: inline-block;
	line-height: 0;
	border-radius: 1rem;
}

.over-cover img {
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.5s linear;
	transition: all 0.5s linear;
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
}

.over-cover:hover img {
	-webkit-transform: scale3d(1.2, 1.2, 1);
	transform: scale3d(1.2, 1.2, 1);
}

/* ==================================================
	영상
================================================== */
.movie_con {
	text-align: center;
}

.movie_con video {
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	border: 1px solid #d7d7d7;
}

.promovie_con {
	text-align: center;
}

.promovie_con video {
	width: 100%;
	max-width: 1000px;
}

/* ==================================================
	유튜브 영상
================================================== */
.youtubeWrap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 35px;
	height: 0;
	overflow: hidden
}

.youtubeWrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1
}

.youtubeWrap .btn_prev,
.youtubeWrap .btn_next {
	display: inline-block;
	position: absolute;
	top: 50%;
	margin-top: -45px;
	z-index: 100;
	background: rgba(0, 0, 0, 0.6);
	color: var(--color-white)
}

.youtubeWrap .btn_prev {
	left: 0
}

.youtubeWrap .btn_next {
	right: 0
}

.youtubeWrap .btn_prev>img {
	float: left
}

.youtubeWrap .btn_next>img {
	float: right
}

.youtubeWrap .btn_prev>span,
.youtubeWrap .btn_next>span {
	display: inline-block;
	float: left;
	height: 90px;
	padding: 0 15px;
	margin: 20px 0;
	max-height: 50px;
	max-width: 180px;
	font-size: 16px;
	display: block;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	display: none;
}

.youtubeWrap .btn_prev:hover>span,
.youtubeWrap .btn_prev:focus>span,
.youtubeWrap .btn_next:hover>span,
.youtubeWrap .btn_next:focus>span {
	display: inline-block
}

.overveiw-wrap {
	overflow: hidden;
}


/* ==================================================
	탭메뉴1
================================================== */
#mlayer_menu {
	margin: -10rem auto 0 auto;
	padding: 3rem 13rem;
	width: 100%;
	background-color: var(--color-gray1);
	border-radius: 1.5rem;
}

#mlayer_menu ul {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10rem;
	align-items: center;
}

#mlayer_menu ul li {
	position: relative;
	width: 100%;
}

#mlayer_menu ul li::after {
	content: "";
	width: 25px;
	height: 50px;
	background: url('../images/about/his_arrow01.png');
	background-repeat: no-repeat;
	position: absolute;
	right: -50px;
	top: 50%;
	transform: translateY(-50%);
}

#mlayer_menu ul li:last-child::after {
	content: none;
}

#mlayer_menu ul li button {
	padding: 2rem 0;
	width: 100%;
	text-decoration: none;
	font-size: var(--rem-22);
	text-align: center;
	cursor: pointer;
	background: var(--color-white);
	border-radius: 1rem;
}

#mlayer_menu ul li button.on {
	color: var(--color-white);
	font-weight: var(--font-bd);
	background-color: var(--brand-color-main);
}

#mlayer_menu ul li button p {
	font-size: var(--rem-30);
	font-weight: var(--font-sb);
}

#mlayer_menu ul li button p span {
	padding: 0.5rem 0 0 0;
	display: block;
	font-size: var(--rem-18);
	font-weight: normal;
}

/*** 모바일CSS ***/
@media all and (max-width:1024px) {
	#mlayer_menu {
		padding: 3rem 5rem;
	}
}


@media all and (max-width:800px) {
	#mlayer_menu ul li button p {
		font-size: var(--rem-24);
	}

	#mlayer_menu ul li button p span {
		padding: 0 0 0 1rem;
		display: inline;
	}
}

@media all and (max-width:640px) {
	#mlayer_menu {
		padding: 3rem 2rem;
	}

	#mlayer_menu ul {
		grid-template-columns: repeat(1, 3fr);
		gap: 1rem;
	}

	#mlayer_menu ul li button p {
		font-size: var(--rem-20);
	}

	#mlayer_menu ul li::after {
		content: none;
	}
}

/* ==================================================
	탭메뉴2
================================================== */
#mlayer2_menu {
	margin-bottom: 15px;
}

#mlayer2_menu ul {
	display: flex;
	padding: 2px 0;
	border-top: solid 1px var(--color-black);
	border-bottom: solid 1px var(--color-gray2);
}

#mlayer2_menu ul:after {
	content: '';
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

#mlayer2_menu ul li {
	position: relative;
	width: 50%;
	line-height: 1.1;
	font-size: var(--rem-30);
}

#mlayer2_menu ul li:nth-child(1) {
	padding-right: 0.5rem;
}

#mlayer2_menu ul li button {
	position: relative;
	padding: 1.2rem 0;
	display: block;
	width: 100%;
	text-decoration: none;
	color: var(--color-gray3);
	text-align: center;
	cursor: pointer;
	font-size: var(--rem-22);
	background-color: var(--color-gray1);
}

#mlayer2_menu ul li button.on {
	font-weight: var(--font-sb);
	color: var(--color-white);
	background-color: #8098CC;
}

/*** 모바일CSS ***/
@media all and (max-width:900px) {
	#mlayer2_menu ul li {
		width: 50%;
		margin-top: -1px;
	}

	#mlayer2_menu ul li button {
		padding: 15px 3px;
		/* font-size: 1.8rem; */
	}
}

@media all and (max-width:640px) {

	#mlayer2_menu ul li button {
		font-size: 2rem;
	}
}

@media all and (max-width:450px) {
	#mlayer2_menu ul li {
		padding: 0;
	}

	#mlayer2_menu ul li button {
		/* font-size: 1.4rem; */
	}
}


/* ==================================================
	여백 및 정렬 등 세부 공통사항
================================================== */
.mgt01 {
	margin-top: 1rem;
}

.mgt02 {
	margin-top: 2rem;
}

.mgt03 {
	margin-top: 3rem;
}

.ta_r {
	text-align: right;
}

.ta_l {
	text-align: left;
}

.w100 {
	width: 100%;
}

.pt27 {
	padding-top: 27rem;
}

.b_bot {
	padding-bottom: 1.5rem;
	border-bottom: solid 1px var(--color-gray2);
}

.fwb {
	font-weight: bold;
}

.t_red {
	color: var(--color-red);
}

.block {
	display: block;
}

.img100 {
	display: block;
	width: 100%;
}

/* grid */
.grid {
	width: 100%;
	display: grid;
	gap: var(--rem-15);
	margin: 1.5rem auto 0;
}

._grid2 {
	grid-template-columns: repeat(2, 1fr);
}

._grid3 {
	grid-template-columns: repeat(3, 1fr);
}

._grid4 {
	grid-template-columns: repeat(4, 1fr);
	gap: var(--rem-20);
}

.grid img {
	display: block;
	width: 100%;
	background: var(--color-white);
	border: solid 1px var(--color-gray2);
}

.grid p {
	margin-top: 1rem;
	text-align: center;
}

/*** 모바일CSS ***/
@media all and (max-width:800px) {

	.block {
		display: inline;
	}
}
@media all and (max-width:450px) {
	/* grid */
	._grid2,
	._grid3 ,
	._grid4 {
		grid-template-columns: unset;
	}
}

/* ==================================================
	서브상단멘트 공통
================================================== */
.sub_txt01 {
	padding-bottom: var(--rem-40);
	font-size: var(--rem-24);
	font-weight: var(--font-md);
	text-align: var(--text-ag-center);
}

/* 모바일CSS */
@media screen and (max-width:800px) {
	.sub_txt01 {
		line-height: 1.3;
	}
}


/* ==================================================
	회사소개 - 개요
================================================== */
.ovInfo ul {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

.ovInfo ul li {
	padding: 4rem 0;
	text-align: center;
	border: solid 1px var(--color-gray2);
}

.ovInfo ul li p {
	padding-top: 0.5rem;
}

.ovInfo ul li p span {
	display: block;
	font-size: var(--rem-26);
	font-weight: var(--font-bd);
	line-height: 1.3;
}

.ovInfo ul li:nth-child(6) p span br {
	display: none;
}

.ov_tit {
	padding-bottom: 1.5rem;
	font-size: var(--rem-24);
	font-weight: var(--font-bd);
}

.ov_overseas {
	margin: 8rem 0;
	padding: 5rem 0 6rem;
	position: relative;
}

.ov_overseas::after {
	position: absolute;
	top: 0;
	left: 50%;
	content: "";
	width: 184%;
	height: 100%;
	background: #F4F4F4;
	z-index: -1;
	transform: translateX(-50%);
}

.hk_banner_wrap {
	display: flex;
	gap: 20px;
}

.hk_bn {
	position: relative;
	flex: 1;
	height: 180px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
	color: var(--color-white);
	text-decoration: none;
	display: block;
}

.hk_bn-usa {
	background-image: url('../../lib/images/about/ov_overseas01.jpg');
}

.hk_bn-kor {
	background-image: url('../../lib/images/about/ov_overseas02.jpg');
}

.hk_bn::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0);
	transition: background .3s;
}

.hk-text {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	transition: opacity .3s;
}

.hk-title {
	font-size: var(--rem-22);
	font-weight: var(--font-sb);
	letter-spacing: 1px;
	margin-bottom: 6px;
}

.hk_bn,
.hk_bn * {
	color: #fff !important;
	text-decoration: none;
}

.hk-text-basic {
	opacity: 1;
}

.hk-text-detail {
	opacity: 0;
}

.hk_bn:hover {
	text-decoration: none;
}

.hk_bn:hover::before {
	background: rgba(0, 0, 0, .55);
}

.hk_bn:hover .hk-text-basic {
	opacity: 0;
}

.hk_bn:hover .hk-text-detail {
	opacity: 1;
}

.ov_customer ul {
	display: flex;
	gap: 1.5rem;
}

.ov_customer ul li {
	width: 100%;
	border: solid 1px var(--color-gray2);
}

.ov_customer ul li a {
	padding: 3rem 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

/*** 모바일CSS ***/
@media all and (max-width:800px) {
	.ovInfo ul {
		grid-template-columns: repeat(2, 1fr);
		gap: 1rem;
	}

	.ovInfo ul li p span {
		font-size: var(--rem-22);
	}

	.hk_banner_wrap {
		display: block;
	}

	.hk_bn:nth-child(1) {
		margin-bottom: 2rem;
	}

	.ov_customer ul {
		flex-direction: column;
	}
}

@media all and (max-width:500px) {
	.ovInfo ul li:nth-child(6) p span br {
		display: block;
	}

	.hk-title {
		line-height: 1.2;
	}
}


/* ==================================================
	회사소개 - 인사말
================================================== */
.ceo {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr) [2];
	grid-template-columns: repeat(2, 1fr);
	gap: 8rem;
}

.ceo .ceo_pic {
	display: block;
	background: url('../../lib/images/about/ceo_pic.jpg') center no-repeat;
	background-size: cover;
	border-radius: var(--rem-20);
}

.ceo .ceo_word h4 {
	margin-bottom: var(--rem-20);
	font-size: var(--rem-34);
}

.ceo .ceo_word p {
	font-size: var(--rem-19);
	line-height: 1.5;
}

.ceo .ceo_word p+p {
	margin-top: var(--rem-20);
}

.ceo .ceo_word .name {
	margin-top: var(--rem-30);
	font-weight: var(--font-bd);
}

.ceo .ceo_word .name span {
	padding-left: var(--rem-20);
	font-size: var(--rem-30);
	font-weight: var(--font-sb);
}

/* 모바일 CSS */
@media all and (max-width:1100px) {
	.ceo {
		gap: 6rem;
	}

	.ceo {
		-ms-grid-columns: (1fr) [1];
		grid-template-columns: repeat(1, 1fr);
		gap: 5rem;
	}

	.ceo .ceo_pic {
		background: url('../../lib/images/about/ceo_pic_mo.jpg') center no-repeat;
		background-size: cover;
		height: 40rem;
		border-radius: var(--rem-15);
	}
}

@media screen and (max-width:480px) {
	.ceo {
		gap: 4.5rem;
	}

	.ceo .ceo_pic {
		height: 28rem;
		border-radius: var(--rem-10);
	}

	.ceo .ceo_word h4 {
		font-size: var(--rem-28);
	}

	.ceo .ceo_word p {
		font-size: var(--rem-17);
	}
}


/* ==================================================
	회사소개 - 연혁
================================================== */
.history_tabs {
	overflow: hidden;
	position: relative;
	border-radius: 1rem;
	width: 100%;
	height: 50rem;
}

.history_tabs .bg ul li {
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	transition: all 1s;
	opacity: 0;
}

.history_tabs .bg ul li.on {
	opacity: 1;
	z-index: 1;
}

.history_tabs .bg ul li:nth-child(1) {
	background: url('../../lib/images/about/his_tab_bg1.jpg') no-repeat center;
	background-size: cover;
}

.history_tabs .bg ul li:nth-child(2) {
	background: url('../../lib/images/about/his_tab_bg2.jpg') no-repeat center;
	background-size: cover;
}

.history_tabs .year ul li {
	position: absolute;
	left: 10rem;
	top: 7rem;
	z-index: 10;
	font-size: 8rem;
	color: var(--color-white);
	font-weight: var(--font-sb);
	line-height: 1em;
	opacity: 0;
	transition: all 1s;
}

.history_tabs .year ul li.on {
	opacity: 1;
}

.history_tabs .tabs {
	position: absolute;
	left: 10rem;
	bottom: var(--rem-60);
	z-index: 10;
	width: calc(100% - 20rem);
}

.history_tabs .tabs ul {
	display: flex;
	justify-content: space-between;
}

.history_tabs .tabs ul li {
	width: 49.5%;
}

.history_tabs .tabs ul li a {
	display: block;
	overflow: hidden;
	position: relative;
	width: 100%;
	padding: 0 0 1.5rem;
	font-size: 2.3rem;
	font-weight: var(--font-md);
	color: rgba(255, 255, 255, 0.6);
	box-shadow: 0 -1px 0 rgba(255, 255, 255, 0.6) inset;
	cursor: pointer;
}

.history_tabs .tabs ul li a:after {
	display: block;
	content: "";
	width: 100%;
	height: 0.4rem;
	background: var(--color-white);
	position: absolute;
	left: 0;
	bottom: -0.4rem;
	transition: all 1s;
}

.history_tabs .tabs ul li.on a {
	color: var(--color-white);
}

.history_tabs .tabs ul li.on a:after {
	bottom: 0;
}

.history_tabs .his_prev {
	width: 2.5rem;
	height: 5rem;
	background: url('../../lib/images/about/his_prev.svg') no-repeat;
	background-size: cover;
	position: absolute;
	left: 4rem;
	top: 50%;
	z-index: 10;
	transform: translateY(-50%);
	cursor: pointer;
}

.history_tabs .his_next {
	width: 2.5rem;
	height: 5rem;
	background: url('../../lib/images/about/his_next.svg') no-repeat;
	background-size: cover;
	position: absolute;
	right: 4rem;
	top: 50%;
	z-index: 10;
	transform: translateY(-50%);
	cursor: pointer;
}

.history_conwrap {
	padding: 7rem 10rem 0 10rem;
}

.history_conwrap .tabcon {
	display: none;
}

.history_conwrap .tabcon.on {
	display: block;
}

.history_conwrap .tabcon ul>li {
	display: flex;
	margin-bottom: 1.5rem;
}

.history_conwrap .tabcon ul>li .year {
	width: 15rem;
	font-size: 3rem;
	color: var(--brand-color-main);
	font-weight: var(--font-sb);
}

.history_conwrap .tabcon ul>li .con {
	width: calc(100% - 15rem);
	padding: 0.8rem 0 0;
	font-size: var(--rem-20);
}

.history_conwrap .tabcon ul>li .con p+p {
	margin-top: 6px;
}

/* 모바일CSS */
@media screen and (max-width: 1100px) {
	.history_tabs .tabs {
		left: 5rem;
		width: calc(100% - 10rem);
	}
}

@media screen and (max-width: 800px) {
	.history_tabs {
		height: 40rem;
	}

	.history_tabs .year ul li {
		left: 3rem;
		top: 5rem;
		font-size: 4rem;
	}

	.history_tabs .bg ul li:nth-child(1) {
		background: url('../../lib/images/about/his_tab_mbg1.jpg') no-repeat center;
		background-size: cover;
	}

	.history_tabs .tabs {
		left: 3rem;
		bottom: 3rem;
		width: calc(100% - 6rem);
	}

	.history_tabs .tabs ul li a {
		font-size: 14px;
	}

	.history_tabs .m13_prev {
		left: 3rem;
	}

	.history_tabs .m13_next {
		right: 3rem;
	}

	.history_conwrap {
		padding: 4rem 0 0;
	}

	.history_conwrap .tabcon ul>li .year {
		width: 10rem;
		font-size: 2.8rem;
	}

	.history_conwrap .tabcon ul>li .con {
		width: calc(100% - 10rem);
		padding: 0.5rem 0 0;
	}
}


/* ==================================================
	회사소개 - 오시는 길
================================================== */
.loc_con {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--rem-30);
}

/* 상단이미지 */
.loc_left {
	flex-basis: 45%;
}

.loc_left img {
	width: 100%;
	border-radius: 2rem;
}

/* 주소정보 */
.loc_right>h4 {
	font-family: var(--font-Elice);
	font-size: 2.8rem;
	font-weight: 600;
	margin-bottom: 2.5rem;
}

.loc_right>ul>li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-top: 1.5rem;
}

.loc_right>ul>li:first-child {
	margin-top: 0;
}

.loc_right>ul>li .icon i {
	color: var(--color-white);
	font-size: 2.3rem;
}

.loc_right>ul>li .icon {
	width: 4rem;
	height: 4rem;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	background: var(--brand-color-main);
	border-radius: 50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.loc_right>ul>li b,
.loc_right>ul>li p {
	color: var(--color-black);
}

.loc_right>ul>li b {
	display: inline-block;
	font-size: 1.9rem;
	font-weight: var(--font-bd);
	margin: 0 2.5rem 0 1.5rem;
}

/* 지도 */
.loc_detail {
	width: 100%;
	margin-top: var(--rem-40);
}

/*====== 카카오지도 요소들 지우기======*/
.root_daum_roughmap .cont {
	display: none;
}

/* 모바일CSS */
@media screen and (max-width: 800px) {
	.loc_con {
		display: block;
	}

	.loc_right {
		margin-top: 2.5rem;
	}
}

@media screen and (max-width: 640px) {

	/* 주소정보 */
	.loc_right>ul>li b {
		width: 7rem;
	}
}


/* ==================================================
	사업장소개 - 글로벌 네트워크
================================================== */
.netword>h3 {
	font-size: var(--rem-24);
	font-weight: var(--font-md);
	text-align: center;
}

.netword .map {
	position: relative;
	margin-top: var(--rem-40);
	margin-bottom: 8rem;
	padding: var(--rem-60) 0;
}

.netword .map::before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	width: 184%;
	height: 100%;
	background-color: var(--color-gray1);
	transform: translateX(-50%)
}

.netword .map img {
	display: block;
	width: 100%;
}

.netword .cont {
	width: 100%;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr)[2];
	grid-template-columns: repeat(2, 1fr);
	gap: 10rem var(--rem-40);
}

.netword .cont li {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: var(--rem-26) var(--rem-30);
}

.netword .cont li:not(:first-child):nth-child(2n+1)::before {
	content: '';
	display: block;
	position: absolute;
	top: -5rem;
	left: 0;
	width: calc(200% + var(--rem-40));
	height: 1px;
	background: var(--color-gray2);
}

.netword .cont li>div {
	flex-basis: calc(50% - var(--rem-15));
}

.netword .cont .pic {
	border: solid 1px #DEE2E6;
}

.netword .cont .pic img {
	display: block;
	width: 100%;
}

.netword .cont .txt p {
	margin-top: 0.4rem;
}

.netword .cont .txt p.nm {
	margin-top: 1rem;
	margin-bottom: var(--rem-13);
	font-weight: var(--font-sb);
	font-size: var(--rem-22);
}

.netword .cont .txt a.g_btn {
	margin-top: var(--rem-20);
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 17rem;
	height: 5rem;
	border-radius: 10rem;
	background: var(--color-white);
	border: solid 1px var(--color-black);
	transition: all 0.3s ease;
}

.netword .cont .txt a.g_btn .arrow {
	display: inline-block;
	margin-left: 8px;
	width: 16px;
	height: 1px;
	background-color: var(--color-black);
	position: relative;
	transition: background-color 0.3s ease;
}

.netword .cont .txt a.g_btn .arrow::before {
	content: "";
	position: absolute;
	top: -3px;
	right: -1px;
	width: 6px;
	height: 6px;
	border-top: 1px solid var(--color-black);
	border-right: 1px solid var(--color-black);
	transform: rotate(45deg);
	transition: border-color 0.3s ease;
}

.netword .cont .txt a.g_btn:hover {
	background: var(--color-gray2);
}

/* 모바일CSS */
@media screen and (max-width: 1100px) {
	.netword .cont {
		-ms-grid-columns: (1fr)[1];
		grid-template-columns: repeat(1, 1fr);
		gap: 8rem;
	}

	.netword .cont li:not(:first-child)::before {
		content: '';
		display: block;
		position: absolute;
		top: -4rem !important;
		left: 0;
		width: 100%;
		height: 1px;
		background: var(--color-gray2);
	}
}

@media screen and (max-width: 450px) {
	.netword .cont li {
		display: block;
	}

	.netword .cont li>div.txt {
		padding-left: 3px;
	}

	.netword .cont .txt p.nm {
		margin-top: 2rem;
		margin-bottom: 0.6rem;
	}

	.netword .cont .txt a.g_btn {
		margin-top: var(--rem-16);
	}
}


/* ==================================================
	사업장소개 - 공통
================================================== */
.buisness_ov {
	display: flex;
	gap: var(--rem-40);
}

.buisness_ov .img {
	width: 50%;
}

.buisness_ov .img img {
	display: block;
	width: 100%;
}

.buisness_ov .chart01 {
	display: flex;
	flex-direction: column;
	width: calc(50% - var(--rem-40));
}

.buisness_pic {
	margin-top: 8rem;
	padding-top: var(--rem-60);
	border-top: solid 1px var(--color-gray2);
	display: flex;
	gap: var(--rem-20);
}

.buisness_pic div {
	flex-basis: calc(33.33333% - 1rem);
	border: solid 1px var(--color-gray2);
}

.buisness_pic img {
	display: block;
	width: 100%;
}

/* 모바일CSS */
@media screen and (max-width: 1100px) {
	.buisness_ov {
		display: grid;
		gap: var(--rem-30);
	}

	.buisness_ov .img {
		width: 100%;
	}

	.buisness_ov .chart01 {
		width: 100%;
	}

	.buisness_pic {
		margin-top: var(--rem-60);
		padding-top: var(--rem-60);
		gap: var(--rem-16);
	}
}


/* ==================================================
	Product - 공통
================================================== */
.prdBox {
	margin-bottom: 8rem;
	display: flex;
	justify-content: space-between;
	gap: 2rem;
}

.prdBox:last-child {
	margin-bottom: 0;
}

.prdBox:nth-child(even) {
	padding: 7rem 0;
	position: relative;
}

.prdBox:nth-child(even)::after {
	position: absolute;
	top: 0;
	left: 50%;
	content: "";
	width: 184%;
	height: 100%;
	background: #F4F4F4;
	transform: translateX(-50%);
	z-index: -1;
}

.prdBox h3 {
	min-width: 35rem;
	font-size: var(--rem-40);
	font-weight: var(--font-bd);
}

.p_cont p {
	padding-bottom: 1.5rem;
}

.p_cont ul {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

.p_cont ul li {
	background: var(--color-white);
	border: solid 1px var(--color-gray2);
}

.p_cont ul li img {
	display: block;
	width: 100%;
}

/*** 모바일CSS ***/
@media all and (max-width:1024px) {
	.prdBox {
		display: block;
	}
}

@media all and (max-width:800px) {
	.prdBox h3 {
		padding-bottom: 1rem;
	}

	.p_cont ul {
		display: block;
	}

	.p_cont ul li {
		text-align: center;
	}

	.p_cont ul li img {
		max-width: 318px;
	}

	.p_cont ul li:nth-child(2) {
		margin: 2rem 0;
	}
}


/* ==================================================
	R&D - 금형 R&D 센터
================================================== */
.process_box {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(9, 1fr);
	gap: 3.2rem;
}

.process_box .process_item {
	position: relative;
	background-color: rgb(245, 245, 245);
	/* border: solid 1px var(--color-gray2); */
	box-sizing: border-box;
	border-radius: 2rem;
	padding: 2rem 1rem;
	display: flex;
	width: 100%;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.process_box .process_item:not(:first-child)::before {
	content: "\e90b";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	left: -3.2rem;
	width: 3.2rem;
	height: 100%;
	font-family: 'xeicon';
	font-size: 0.8em;
	color: var(--brand-color-main);
}

.process_box .process_item p {
	font-weight: var(--font-sb);
	line-height: 1.3;
}

.process_box .process_item span {
	display: block;
	font-size: var(--rem-16);
	color: var(--color-gray3);
}

/* 그레이 배경 + 라운드 */
.gray_radius {
	padding: var(--rem-40) var(--rem-40) var(--rem-30);
	border-radius: var(--rem-40);
	background: var(--color-white2);
}

.rnd_center {
	display: grid;
	gap: var(--rem-60);
}


/*  */
.rnd_tech {
	display: flex;
	justify-content: space-between;
	gap: 2rem;
}
.rnd_tech + .rnd_tech {
	margin-top: 6rem;
}

.rnd_tech .tech-tit {
	flex-basis: 35rem;
}
.rnd_tech .tech-tit h3 {
	font-size: var(--rem-24);
	font-weight: var(--font-bd);
}

.rnd_tech .tech-con {
	flex-basis: calc(100% - 38rem);
}


.rnd_tech .tech-con>.grid:first-child,
.rnd_tech .tech-con>.a-tit01:first-child {
	margin-top: 1rem;
}

/* 모바일CSS */
@media screen and (max-width: 1100px) {
	.process_box {
		grid-template-columns: repeat(5, 1fr);
	}

	.rnd_tech {display: block;}
	

	.rnd_tech .tech-tit {
		width: 100%;
		flex-basis: 100%;
	}

	.rnd_tech .tech-con {
		width: 100%;
		flex-basis: 100%;
	}
	.rnd_tech .block {display: inline;}
}

@media screen and (max-width: 450px) {
	.process_box {
		grid-template-columns: repeat(3, 1fr);
	}
	.process_box .process_item:nth-child(3n+1)::before {
		display: none;
	}

	.process_box .process_item {
		font-size: var(--rem-16);
	}
}


/* ==================================================
	커뮤니티 - contact us
================================================== */
.contact {
	width: 100%;
	background: url('../../lib/images/customer/contact_bg01.jpg') center center no-repeat #e8ecef;
	background-size: cover;
}

.contact .txt {
	padding: 10rem 8rem 10rem 58%;
	line-height: 1.6;
}

.contact h2 {
	font-size: 3.6rem;
	color: #000;
}

.contact .txt1 {
	width: 100%;
	font-size: 2rem;
	color: #333;
	padding: 1rem 0 4rem;
	border-bottom: 1px solid #808080;
}

.contact .txt2 {
	margin: 4rem 0 1rem;
}

.contact .txt2 li {
	font-size: 1.8rem;
	color: #333;
	line-height: 50px;
	padding-left: 46px;
}

.contact .txt2 li.tel {
	background: url('../../lib/images/icon/ic_tel.svg') 0 50% no-repeat;
}

.contact .txt2 li.fax {
	background: url('../../lib/images/icon/ic_fax.svg') 0 50% no-repeat;
}

.contact .txt2 li.email {
	background: url('../../lib/images/icon/ic_email.svg') 0 50% no-repeat;
}

.contact .txt2 li.tel,
.contact .txt2 li.fax,
.contact .txt2 li.email {
	background-size: 40px;
}

.contact .txt2 li.email a {
	color: #333;
}

.contact .txt3 {
	color: #333;
}

/* 모바일CSS */
@media screen and (max-width:1400px) {

	.contact .txt {
		padding: 10rem 6rem 10rem 50%;
	}
}

@media screen and (max-width:1100px) {

	.contact .txt {
		padding: 10rem 6rem 8rem 50%;
	}

	.contact .txt1 {
		padding: 1rem 0 3rem;
	}

	.contact .txt2 {
		margin: 3rem 0 1rem;
	}

	.contact .txt2 li {
		padding-left: 40px;
		line-height: 40px;
	}

	.contact .txt2 li.tel,
	.contact .txt2 li.fax,
	.contact .txt2 li.email {
		background-size: 30px;
	}

}

@media screen and (max-width:800px) {

	.contact {
		background-image: none;
	}

	.contact .txt {
		padding: 6rem;
	}

	.contact .txt1 {
		border-bottom: 1px solid #aaaaac;
	}

	.contact .txt2 {
		margin: 2rem 0 1rem;
	}

	.contact .txt2 li {
		line-height: 36px;
		padding-left: 36px;
	}

	.contact .txt2 li.tel,
	.contact .txt2 li.fax,
	.contact .txt2 li.email {
		background-size: 26px;
	}
}

@media screen and (max-width:480px) {

	.contact h2 {
		font-size: 3.0rem;
	}

	.contact .txt {
		padding: 4rem 2rem;
	}

	.txt p {
		margin-top: 1rem;
		font-size: 1.5rem;
	}

	.contact .txt1 {
		padding: 0 0 2rem;
	}
}