@charset "utf-8";
/*-------------------------------------------------------------------
파일정의 : Layout
작성날짜 : 2021-04-26 조예인
참고사항 : 이 파일은 설정값만 정의한다.
분류순서 : 기본정책 > 유틸리티 > 사용자정의(컬러, 폰트, 보더, 간격 등)
속성순서 : 표시 > 위치 > 넘침/흐름 > 크기/간격 > 박스모양 > 폰트/정렬 > 기타
-------------------------------------------------------------------*/
/*-------------------------------------------------------------------
## Wrapper
-------------------------------------------------------------------*/
html,
body {
	width: 100%;
}

#wrapper {
	width: 100%;
	overflow: hidden;
}

html.is_fixed {
	width: 100%;
	height: 100%;
	overflow: hidden;
}

body {
	background: #000;
	color: #F2F2F2;
	font-family: 'Noto Sans KR', '맑은고딕', sans-serif;
	font-size: 1.6rem;
	font-weight: 400;
	min-width: 1260px;
	overflow-x: auto;
}

#container {
	background: #000;
	clear: both;
	padding-bottom: 120px;
	min-height: 100vh;
}

#contents:not(.no_pad) {
	padding-top: 100px;
}

.set_inner {
	width: 1180px;
	margin: 0 auto;
	box-sizing: border-box;
}

.clearFix::after {
	content: '';
	clear: both;
	display: block;
}

#skipNav {
	text-indent: -10000px;
}

/*-------------------------------------------------------------------
## Header
-------------------------------------------------------------------*/
header {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 101;
	width: 100%;
	min-width: 1280px;
	height: 100px;
	margin: 0 auto;
	box-sizing: border-box;
}

header.is_active {
	width: 100%;
	height: 100%;
}

.gnb_wrap {
	width: 100%;
	position: relative;
	margin: 0 auto;
	height: 100px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
	line-height: 100px;
	z-index: 100;
	transition: transform 0.3s, background 0.3s
}

.gnb_wrap.has_bg {
	background: rgba(0, 0, 0, 0.6);
}

header.is_down .gnb_wrap {
	transform: translate3d(0, -100px, 0);
}
header.is_down.none_2dep .gnb_wrap {
	transform: translate3d(0, 0px, 0);
}
header.is_down.none_2dep.depth3_on .gnb_wrap {
	transform: translate3d(0, -100px, 0)
}

header.noDepth.is_down .gnb_wrap {
	transform: translate3d(0, 0px, 0);
}

header.is_up .gnb_wrap {
	transform: translate3d(0, 0px, 0);

}

header .gnb_wrap::before {
	content: '';
	display: none;
	z-index: -1;
	width: 100%;
	height: 75px;
	background: #000;
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
	position: absolute;
	top: 100px;
}

.gnb_wrap .logo_area {
	position: absolute;
	width: fit-content;
	left: 50px;
	z-index: 1;
}

.gnb_wrap .logo_area h1 {
	display: inline-block;
}

.gnb_wrap .logo_area a {
	display: block;
	height: 100%;
}

.logo_area img {
	width: 123px;
}

.gnb_wrap .gnb_area {
	width: 100%;
	height: 100%;
	margin: 0 auto;
	max-width: 1600px;
}

header .langs {
	float: left;
	width: 80px;
}

header .langs a {
	display: block;
	float: left;
	width: 50%;
	text-align: center;
	color: #999;
}

header .langs a:hover, header .langs a:focus {
	color: #fff;
}

header .langs a.is_active span {
	color: #f2f2f2;
	border-bottom: 1px solid #f2f2f2;
}

.gnb_area nav {
	height: 100%;
	text-align: center;
	width: auto;
	margin: 0 auto;
}

.gnb_area nav > ul {
	display: inline-block;
}

.gnb_area nav > ul::after {
	content: '';
	display: block;
	clear: both;
}

.gnb > ul > li {
	position: relative;
	display: block;
	width: fit-content;
	float: left;
	vertical-align: top;

}

.gnb > ul > li > a {
	position: relative;
	display: block;
	width: 120px;
	text-align: center;
}

.gnb > ul > li > a::after {
	content: '';
	position: absolute;
	bottom: 0;
	transform: translateX(-50%);
	left: 50%;
	width: 0px;
	opacity: 0;
	height: 3px;
	background: #F37321;
	transition: width 0.2s ease-in;
}

.gnb > ul > li.is_active > a::after {
	opacity: 1;
	width: 100%;
	transition: none;
}

.gnb > ul:hover > li.is_active > a::after {
	opacity: 1;
	width: 0;
}

.gnb > ul:hover > li:hover > a::after {
	opacity: 1;
	width: 100%;
	transition: width 0.3s ease-in;
}

.gnb_area .depth2 {
	position: absolute;
	left: 0%;
	top: 100px;
	display: flex;
	width: auto;
	height: 75px;
	line-height: 75px;
	text-align: center;
	transition: opacity 0.3s;
	opacity: 0;
	visibility: hidden;
}

.gnb_area .depth2 > li > a, .lnb_area .depth2 > li > a {
	color: #7C7C7C;
}

.menu .depth2 > li > a:focus, .menu .depth2 > li > a:hover, .menu .depth2 > li.is_active > a {
	color: #f2f2f2;
}

header.is_active .gnb_wrap {
	border-bottom: 0;
}

.gnb_wrap::after {
	content: '';
	display: block;
	position: absolute;
	top: 100px;
	left: 0;
	z-index: -1;
	height: 75px;
	width: 100vw;
	background: rgba(0, 0, 0, 0.85);
	border-bottom: 1px solid rgba(242, 242, 242, 0.15);
	visibility: hidden;
	opacity: 0;
	transition: all 0.3s;
}

header.gnb_hover .gnb_wrap::after {
	opacity: 1;
	visibility: visible;
}

.gnb_area .depth2.is_on {
	visibility: visible;
	opacity: 1;
}

.gnb .depth3, .qnb .depth3 {
	display: none;
}

header .btn_area {
	width: fit-content;
	position: absolute;
	right: 55px;
	top: 40px;
	line-height: 1;
}

header .btn_open {
	float: right;
	position: relative;
	width: 32px;
	height: 14px;
	margin: 2px 0 0 25px;
	overflow: visible;
	display: inline-block;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
	transform: rotate(0);
	transition: transform .75s cubic-bezier(.19, 1, .22, 1);
}

/*header .btn_open span {
    width: 40px;
    height: 2px;
    background: #f2f2f2;
    display: inline-block;
    position: absolute;
    left: 5px;
    top: 50%;
    transform: translateY(-50%);
}*/

header .btn_open span {
	width: 100%;
	height: 2px;
	position: absolute;
	left: 0;
	opacity: 1;
	overflow: hidden;
}

header .btn_open span:before,
header .btn_open span:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #fff;
}

header .btn_open span:nth-child(1) {
	top: 0;
	transition: top .1s ease-out .35s, transform .25s ease-out 0s;
}

header .btn_open span:nth-child(1):before {
	transform: translate(0);
	transition: transform .25s ease-out .2s, background-color .25s ease-out .5s;
}

header .btn_open span:nth-child(1):after {
	transform: translate(100%);
	transition: transform .25s ease-out 0s, background-color .25s ease-out .5s;
}

header .btn_open:hover span:nth-child(1):before {
	transform: translate(-100%);
	transition: transform .25s ease-out 0s, background-color .25s ease-out .5s;
}

header .btn_open:hover span:nth-child(1):after {
	transform: translate(0);
	transition: transform .25s ease-out .2s, background-color .25s ease-out .5s;
}

header .btn_open span:nth-child(2) {
	top: 6px;
	transition: transform .25s ease-out 0s, opacity .1s ease-out;
	transform: rotate(0) scale(1);
}

header .btn_open span:nth-child(2):before {
	transform: translate(0);
	transition: transform .25s ease-out .3s, background-color .25s ease-out .5s;
}

header .btn_open span:nth-child(2):after {
	transform: translate(100%);
	transition: transform .25s ease-out .1s, background-color .25s ease-out .5s;
}

header .btn_open:hover span:nth-child(2):before {
	transform: translate(-100%);
	transition: transform .25s ease-out .1s, background-color .25s ease-out .5s;
}

header .btn_open:hover span:nth-child(2):after {
	transform: translate(0);
	transition: transform .25s ease-out .3s, background-color .25s ease-out .5s;
}

header .btn_open span:nth-child(3) {
	top: 12px;
	transition: top .1s ease-out .35s, opacity 0s ease-out .35s;
}

header .btn_open span:nth-child(3):before {
	transform: translate(0);
	transition: transform .25s ease-out .4s, background-color .25s ease-out .5s;
}

header .btn_open span:nth-child(3):after {
	transform: translate(100%);
	transition: transform .25s ease-out .2s, background-color .25s ease-out .5s;
}

header .btn_open:hover span:nth-child(3):before {
	transform: translate(-100%);
	transition: transform .25s ease-out .2s, background-color .25s ease-out .5s;
}

header .btn_open:hover span:nth-child(3):after {
	transform: translate(0);
	transition: transform .25s ease-out .4s, background-color .25s ease-out .5s;
}

header .btn_open.is_active.non_focus {
	outline: 0;
}

header .btn_open.is_active {
	transform: rotate(90deg);
	transition: transform .75s cubic-bezier(.19, 1, .22, 1) .15s;
}

header .btn_open.is_active span:first-child {
	top: 6px;
	transform: rotate(-45deg) scale(1);
	transform-origin: 50% 50%;
	transition: top .1s ease-out, transform .1s ease-out .15s;
}

header .btn_open.is_active span:nth-child(2) {
	transform: rotate(45deg) scale(1);
	transform-origin: 50% 50%;
	transition: transform .1s ease-out .15s;
}

header .btn_open.is_active span:last-child {
	top: 6px;
	opacity: 0;
	transition: top .1s ease-out, opacity 0s ease-out .15s;
}

header .btn_open.is_active span:before,
header .btn_open.is_active span:after {
	transform: translate(0);
	transition: background-color .25s ease-out .5s;
}

header.header_hover .gnb_wrap, header.header_hover .lnb_area {
	background: rgba(0, 0, 0, 0.85);
}

/*-------------------------------------------------------------------
## header qnb
-------------------------------------------------------------------*/

header.is_active .gnb_area .gnb {
	display: none;
}

.qnb_area {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #000;
	visibility: hidden;
	opacity: 0;
	transform: translateY(-30px);
	transition: all 0.4s;
}

header.is_active .lnb_area {
	display: none;
}

header.is_active .qnb_area {
	z-index: 99;
	visibility: visible;
	opacity: 1;
	transform: translateY(0px);
}

.qnb_area .qnb_inner {
	position: relative;
	min-width: 1280px;
	padding: 0 20px;
	height: 100%;
	opacity: 0;
}

.qnb_area .qnb_inner .menu {
	width: 100%;
	padding: 0 50px;
}

header.is_active .qnb_area .qnb_inner {
	opacity: 1;
	padding-top: 100px;
}

.qnb_area .qnb {
	max-width: 1280px;
	width: 100%;
	position: absolute;
	top: 55%;
	left: 50%;
	transform: translateX(-50%);
	margin-top: -110px;
}

.qnb_area .depth1::before {
	content: '';
	position: absolute;
	top: -280px;
	left: 80px;
	width: 480px;
	height: 300px;
	background-size: cover;
	background-position: center center;
	opacity: 0;
	transform: translate(-50%, 50px);
	transition: all 0.2s;
	z-index: -1;
}

.qnb_area .depth1:hover::before {
	opacity: 1;
	transform: translate(-50%, 0);
}

.qnb_area .depth2 a:hover, .qnb_area .depth2 a:focus, .gnb_wrap .depth2 li a:focus, .gnb_wrap .depth2 li a:hover {
	color: #fff;
	transition: all 0.3s;
}

.qnb_area .depth1:nth-child(1)::before {
	background-image: url('../img/common/img_gnb_01.png');
}

.qnb_area .depth1:nth-child(2)::before {
	background-image: url('../img/common/img_gnb_02.png');
}

.qnb_area .depth1:nth-child(3)::before {
	background-image: url('../img/common/img_gnb_03.png');
}

.qnb_area .depth1:nth-child(4)::before {
	background-image: url('../img/common/img_gnb_04.png');
}

.qnb_area .depth1:nth-child(5)::before {
	background-image: url('../img/common/img_gnb_05.png');
}

.qnb_area .menu::after {
	content: '';
	display: block;
	clear: both;
}

.qnb_area .sub_comment {
	color: #000;
	position: absolute;
	top: 56%;
	transform: translateY(-175px);
	left: 14%;
	opacity: 0.12;
	min-width: 32%;
}

.qnb_area .depth1 {
	max-width: 20%;
	position: relative;
	float: left;
	margin-top: 40px;
	opacity: 0;
	transition: all 0.5s;
}

header.is_active .qnb_area .depth1 {
	opacity: 1;
	margin-top: 0px;
	transition-delay: 0.3s;
}

header.is_active .qnb_area .depth1:nth-child(1) {
	transition-delay: 0.2s;
}

header.is_active .qnb_area .depth1:nth-child(2) {
	transition-delay: 0.3s;
}

header.is_active .qnb_area .depth1:nth-child(3) {
	transition-delay: 0.4s;
}

header.is_active .qnb_area .depth1:nth-child(4) {
	transition-delay: 0.5s;
}

header.is_active .qnb_area .depth1:nth-child(5) {
	transition-delay: 0.6s;
}

.qnb_area .depth1 + .depth1 {
	margin-left: 100px;
}

.qnb_area .depth1 li {
	width: 100%;
}

.qnb_area .depth1 a {
	font-size: 3.6rem;
	font-weight: 500;
}

.qnb_area .depth2 {
	margin-top: 20px;
	display: block;
	color: #7c7c7c;
	background: rgba(0, 0, 0, 0.3);
	transition: background 0.3s;
}

.qnb_area .depth2 a {
	display: block;
	width: 100%;
	padding: 12px 8px;
	margin-left: -5px;
	font-weight: 400;
	font-size: 2rem;
	line-height: 1.4;
	white-space: nowrap;
}

.qnb_area .depth3 {
	display: none;
}

.lnb_area {
	visibility: hidden;
	position: absolute;
	left: 0;
	top: 100px;
	z-index: -1;
	width: 100%;
	height: 75px;
	background: rgba(0, 0, 0, 0.6);
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
	line-height: 75px;
	text-align: center;
	opacity: 0;
	transition: background 0.3s, opacity 0.3s, transform 0.3s;
}

.gnb_wrap .depth1 li {
	display: inline-block;
}

.gnb_wrap .depth1 li a {
	padding: 0 25px;
	white-space: nowrap;
}

.gnb_wrap .depth1 li:nth-child(1) a {
	display: inline-block;
	width: auto;
	min-width: 120px;
	text-align: center;
}

header.gnb_hover .lnb_area {
	visibility: hidden !important;
}

header.is_down .lnb_area,
header.is_up .lnb_area {
	opacity: 1;
	visibility: visible;
}

header#header.depth3_on .lnb_area,
header#header.none_2dep .lnb_area {
	opacity: 0;
	visibility: hidden;
}

.lnb_area .lnb {
	display: inline-block;
	text-align: center;
}

.lnb_area .lnb .depth3 {
	display: none;
}

.lnb_area .depth1 {
	display: none;
}

.lnb_area .depth1.is_active {
	display: block;
}

.lnb_area .depth1.is_active > a {
	display: none;
}

.lnb_area .depth1.is_active .depth2 {
	display: block;
}

.lnb_area .depth3 {
	display: none;
}

/*.lnb_area .depth1.depth_on .depth2>li{*/
/*    display:none;*/
/*}*/
/*.lnb_area .depth1.depth_on.is_active .depth2>li{*/
/*    display:inline-block;*/
/*}*/
/*.lnb_area .depth1.is_active.depth_on .depth2>li.is_active>a{*/
/*    display:none;*/
/*}*/
/*.lnb_area .depth1.depth_on .depth2>li.is_active{*/
/*    display:block;*/
/*}*/
/*.lnb_area .depth1.depth_on .depth2>li.is_active .depth3{*/
/*    display:block;*/
/*}*/
/*-------------------------------------------------------------------
## footer
-------------------------------------------------------------------*/
.foot_wrap {
	position: relative;
	width: 100%;
	font-size: 1.4rem;
}

#footer {
	padding: 50px 0;
	position: relative;
	z-index: 99;
	background: #171717
}

.top_btn {
	display: inline-block;
	float: right;
	font-size: 1.4rem;
}

.top_btn > button {
	margin-right: -12px;
	padding: 15px 13px;
	height: 50px;
}

.top_btn > button:focus span, .top_btn > button:hover span {
	transition: all 0.1s;
	margin-top: -3px;
}

.top_btn i {
	padding-left: 5px;
}

#footer .cnt_wrap {
	width: 100%;
	color: #7c7c7c;
	font-size: 1.4rem;
	margin-top: 30px;
	position: relative;
	z-index: 1;
}


#footer .logo_inner, #footer .cnt_inner {
	width: 100%;
	max-width: 1800px;
	padding: 0 20px;
	margin: 0 auto;
	box-sizing: border-box;
}

#footer .cnt_wrap .cnt_wrap {
	padding: 30px 0;
}

#footer .logo_area {
	display: inline-block;
	float: left;
}

#footer .logo_area img {
	/* transform: translateX(-40px); */
}

.fm_btn_area {
	width: 1px;
	color: #F2F2F2;
}

.fm_site_btn > span {
	float: left;
	font-size: 1.4rem;
}

.fm_site_btn > i {
	float: right;
}

.fm_site_btn {
	position: relative;
}

.fm_site_btn.is_active::after {
	transform: rotate(0);
}

.fm_site_btn .ic_plus {
	float: right;
}

.fm_site_btn .ic_plus.strong::after, .fm_site_btn .ic_plus.strong::before {
	height: 1px;
}

.fm_btn_area.is_active i::before {
	display: none;
}

.fm_btn_area.is_active i::after {
	content: '';
	display: block;
	width: 14px;
	height: 1px;
	background: #fff;
}

.fm_btn_area button {
	width: 118px;
	padding: 5px;
	margin: -5px -4px 0 0;
	color: #7C7C78;
	transition: all 0.3s;
}

.fm_btn_area button.is_active,
.fm_btn_area button:hover {
	color: #fff;
}

#footer .cnt_wrap .txt_area p {
	margin-top: 25px;
}

#footer .cnt_wrap .item_wrap a {
	height: 14px;
	line-height: 14px;
	display: inline-block;
}

#footer .cnt_wrap .item_wrap a:hover {
	color: #f2f2f2;
}

#footer .cnt_wrap .privacy {
	color: #aeaeae;
}

#footer .cnt_wrap .item_wrap a + a {
	border-left: 1px solid #333;
	padding-left: 30px;
	margin-left: 30px;
}

.fm_site_wrap {
	border-top: 1px solid rgba(255, 255, 255, 0.15);
	height: 420px;
	width: 100%;
	min-width: 1280px;
	padding: 0 30px;
	position: absolute;
	top: -320px;
	left: 0;
	background: #181818;
	visibility: hidden;
	opacity: 0;
	transition: all 0.3s;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	text-align: right;
}

.fm_site_wrap .ttl_area {
	float: left;
	display: inline-block;
	width: fit-content;
	text-align: left;
	padding: 90px 0 0 20px;
	font-size: 2.4rem;
	line-height: 140%;
}

.fm_site_wrap .fm_inner {
	max-width: 1800px;
	margin: 0 auto;
}

.fm_site_wrap .ttl_area img {
	margin-top: 10px;
}

.fm_site_wrap .ttl_area a {
	display: inline-block;
	margin-top: 40px;
	border: 1px solid rgba(242, 242, 242, 0.2);
	padding: 10px 18px;
	font-size: 1.4rem;
}

.fm_site_wrap .ttl_area a .ic_han {
	margin-left: 35px;
}

.fm_site_wrap.is_active {
	visibility: visible;
	opacity: 1;
}

.fm_site_wrap .fm_group {
	float: right;
	font-size: 1.4rem;
	color: #7C7C7C;
	max-width: 1180px;
	display: inline-block;
	overflow: hidden;
	height: 100%;
}

.fm_frame {
	display: block;
	width: 25%;
	height: 420px;
	float: left;
	padding: 40px 60px;
	border-right: 1px solid #333;
}

.fm_frame:last-child {
	border-right: 0;
}

.fm_frame:first-child {
	border-left: 1px solid #333;
}

.fm_frame h6 {
	width: 100%;
	margin-bottom: 25px;
	font-size: 1.2em;
}

.fm_frame h6 span {
	display: inline-block;
	padding-bottom: 5px;
	margin-bottom: -1px;
	color: #fff;
	border-bottom: 1px solid #f37321;
}

.fm_frame table {
	width: 100%;
}


.fm_frame td {
	width: 100%;
	min-width: 170px;
	text-align: right;
}

.fm_frame td a {
	display: inline-block;
	padding: 11px 0;
	font-size: 1.1em;
	color: #999;
}

.fm_frame td a:hover {
	color: #fff;
}

/*-------------------------------------------------------------------
## Content
-------------------------------------------------------------------*/
@media screen and (max-width: 1600px) {
	.fm_site_wrap .fm_group {max-width: 940px;}

	footer .fm_group > div {
		padding-right: 25px;
		padding-left: 0px;
	}

	footer .fm_group > div:last-child {padding-right: 0;}
	.fm_site_wrap .ttl_area .ttl {font-size: 2rem;}
}

@media screen and (max-width: 1460px) {
	.qnb_area .qnb {text-align: center}
	.qnb_area .qnb_inner .menu {
		display: inline-block;
		width: auto;
	}
	.qnb_area .depth1::before {
		top: -136px;
		left: 50%;
		width: 240px;
		height: 150px;
	}
	.qnb_area .depth1 {text-align: left}
	.qnb_area .depth1 a {font-size: 3rem;}
	.qnb_area .depth2 a {
		padding: 8px;
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 1260px) {
	/*.set_inner {padding: 0 20px;}*/
}

@media screen and (max-width: 1080px) {

}

/*
@media screen and (max-width: 880px) {
    .gnb > ul > li > a {
        width: 95px;
    }

    header .langs {
        width: 65px;
        margin-top: 2px;
        font-size: 1.4rem;
    }

    .gnb_wrap .depth1 li a {
        padding: 0 15px;
    }

}

@media screen and (max-width: 800px) {
    .gnb > ul > li > a {
        width: 90px;
    }
}
*/
