@charset "utf-8";

/* background fixed 사용시 버그 대응용 * 한 번 스크롤로 페이지 전체 넘김을 할 때는 html스타일에서 height속성 제거하기 */
/* html {overflow: hidden; height: 100%;} */
/* body {overflow: auto; height: 100%;} */

/* ************************ 셋팅 ************************ */
a {color:inherit; text-decoration:none !important; outline:none !important; selector-dummy:expression(this.hideFocus=true) !important; transition:all .3s;}
/* a:link {text-decoration:none; color:#666;} */
/* a:visited {text-decoration:none; color:#666;} */
/* a:hover {text-decoration:none; color:#000;} */
/* a:active {text-decoration:none; color:#666;} */

body {width:100%; font-family:'NEXON', sans-serif; font-size:16px; font-weight:400; line-height:1.6; color:#666; word-break:keep-all; overflow-x:hidden;}

:root {
	--blue:#0053cf;
	--darkblue:#005a84;
	--green:#469e01;
	--yellow:#ffc426;
	--red:#f00;
	--gray:#999;
	--border1:#e5e5e5;
	--f_YiSunShin:'YiSunShin';
	--f_Tmonsori:'Tmonsori';
	--f_Nexon:'NEXON';
}

.c_red {color:var(--red) !important;}
.c_blue {color:var(--blue) !important;}
.c_darkblue {color:var(--darkblue) !important;}
.c_green {color:var(--green) !important;}
.c_yellow {color:var(--yellow) !important;}
.c_gray {color:var(--gray) !important;}
.bgc_red {background-color:var(--red) !important;}
.bgc_blue {background-color:var(--blue) !important;}
.bgc_gray {background-color:var(--gray) !important;}
.f_YiSunShin {font-family:var(--f_YiSunShin);}
.f_Tmonsori {font-family:var(--f_Tmonsori);}
.f_Nexon {font-family:var(--f_Nexon);}

.lnb .lnbBg {background:center /cover no-repeat; position:relative;}
.lnb .lnbBg .cover {background:#000; opacity:.2; position:absolute; left:0; top:0; right:0; bottom:0;}
.lnb .lnbBg h2, .lnb .lnbBg p {position:relative;}
.lnb.sub1 .lnbBg {background-image:url(../images/lnb/sub1.jpg);}
.lnb.sub2 .lnbBg {background-image:url(../images/lnb/sub2.jpg);}
.lnb.sub3 .lnbBg {background-image:url(../images/lnb/sub2.jpg);}
.lnb.sub4 .lnbBg {background-image:url(../images/lnb/sub4.jpg);}

/* 폼 */

:focus {outline:0;}
/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
/* Firefox */
input[type=number] {-moz-appearance: textfield;}

input[type="radio" i] {margin:0 5px 0 0;}

select {
	 -webkit-appearance:none; /* 크롬 화살표 없애기 */
    -moz-appearance:none; /* 파이어폭스 화살표 없애기 */
    appearance:none; /* 화살표 없애기 */
	height:50px; line-height:48px;
	padding:0 60px 0 12px !important; border:1px solid var(--border1); cursor:pointer; background:#fff url(../images/common/i-arrowDown.png)calc(100% - 20px) 50% /auto no-repeat;
	min-width:200px; max-width:100%;
}
/* textarea {padding:0 12px; line-height:48px; height:50px; border:1px solid #e5e5e5;resize:none; width:100%; min-height:120px;} */
textarea {padding:10px 12px; line-height:1.4; height:50px; border:1px solid #e5e5e5;resize:none; width:100%;}
input[type=text],input[type=password],input[type=number] {padding:0 12px; height:50px; line-height:48px; border:1px solid var(--border1);}
input[readonly] {background-color:#f1f1f1; border:1px solid transparent;}
button {border:0; cursor:pointer; background:transparent; padding:0;}

/* 파일박스 */
.filebox {display:flex; gap:0 !important;}
.filebox input[type="file"] {
    position: absolute;
    width: 0;
    height: 0;
    padding: 0;
    overflow: hidden;
    border: 0; visibility:hidden;
}
.filebox label {
    display: inline-block;
    padding:0 20px; border-radius:5px;
    color: #fff; text-align:center;
    vertical-align: middle;
    background-color:var(--c_purple);
    cursor: pointer; width:100px;
    height: 40px; line-height:40px;
    margin-left: 5px;
}
.filebox .upload-name {
    display: inline-block;
    height: 40px; border-radius:5px;
    padding: 0 10px;
    vertical-align: middle;
    border: 1px solid var(--border1);
	width:70%;
    color: #000;
}

/* radioBox */
.radioBox span {margin-right:20px; display:inline-block;}
.radioBox input[type="radio"] {position:absolute; left:-99999px;}
.radioBox input[type="radio"]+label {padding:0 0 0 20px; position:relative; vertical-align:middle; cursor:pointer;}
.radioBox input[type="radio"]+label:before {width:16px; height:16px; border:2px solid var(--c_purple); border-radius:50%; content:''; display:block; position:absolute; left:0; top:50%; transform:translateY(-50%);}
.radioBox input[type="radio"]:checked+label:after {width:8px; height:8px; background:var(--c_purple); border-radius:50%; content:''; display:block; position:absolute; left:4px; top:50%; transform:translateY(-50%);}

.ellipsis {}

/* ************************ 데스크탑 (1025~) ************************ */
@media screen and (min-width: 1025px), print {

	/* 공통 */
	.mobile {display:none !important;}
	.w1400 {width:1400px; margin:0 auto; max-width:100%;}
	.w1750 {width:1750px; margin:0 auto; max-width:100%;}
	

	/* 헤더 */
	header {z-index:999; position:absolute; width:100%; height:100px;}
	header .head {position:absolute; left:50%; top:0; transform:translateX(-50%); z-index:9;}
	header .head h1 {position:absolute; left:0; top:0;}
	header .head h1 a {height:100px; display:flex; align-items:center; font-size:28px; color:#000; font-weight:700; gap:13px;}
	header .head h1 img {height:60px;}
	
	.headerH {height:100px;}

	/* gnb */
	nav.pc {height:100px; position:relative; margin:0 auto; overflow:hidden; background:#fff;}
	nav.pc .gnb {max-width: 1400px; margin: 0 auto; position:relative;}
	nav.pc .gnb .slogan {position:absolute; left:50px; top:160px; }
	nav.pc .gnb .slogan p {font-size:24px; font-weight:800; color:var(--blue); transform:rotate(0.03deg); line-height:1.3;}
	nav.pc .gnb .slogan span {display:inline-block; color:#000; font-size:15px; margin-top:20px; font-weight:500;}
	nav.pc .gnb .slogan span+span {margin-left:20px;}
	nav.pc .gnb>ul {height:100px; display:flex; padding-right:1vw; justify-content:flex-end;}
	nav.pc .gnb>ul>li {padding-right:5vw; position:relative;}
	
	nav.pc .gnb>ul>li>a {display:block; height:100px; padding:35px 0; color:#000; font-weight:600; font-size:20px;}
	nav.pc .gnb>ul>li.on>a,
	nav.pc .gnb>ul>li>a:hover {color:var(--blue);}
	nav.pc .gnb>ul>li>ul {padding:30px 0 25px; position:absolute;}
	nav.pc .gnb>ul>li>ul>li {padding:0 0 10px;}
	nav.pc .gnb>ul>li>ul>li>a {display:inline-block; position:relative; color:#000; border-bottom:1px solid transparent; white-space:nowrap;}
	nav.pc .gnb>ul>li>ul>li.on a:before { }
	nav.pc .gnb>ul>li>ul>li>a:after {position:absolute; content:""; display:block; border-bottom:2px solid var(--blue); transition:width 250ms ease-out; left:auto; right:0; width:0;}
	nav.pc .gnb>ul>li>ul>li.on>a { color: var(--blue);}
	nav.pc .gnb>ul>li>ul>li.on>a:after {width:100%;}
	nav.pc .gnb>ul>li>ul>li>a:hover:after{width:100%; left:0; right:auto;}
	nav.pc .gnb>ul>li>ul>li>a:hover {color:var(--blue);}
	nav.pc .navbg {width:100%; position:absolute; left:0; top:0;}
	nav.pc .navbg .dep1 {height:100px; border-bottom:1px solid var(--border1);}
	nav.pc .navbg .dep2 {}
	
	aside {gap:20px; right:0; top:0; position:absolute; display:flex !important; height:100px; align-items:center; }
	aside a {}
	aside a.home {display:flex; justify-content:center; align-items:center; width:40px; height:40px; border-radius:50%; border:1px solid #dfe1ec; }
	aside a.home img {  }
	
	
	/*서브메뉴*/	
	.lnb {}
	.lnbBg {width:100%; height:300px; color:#fff; display:flex; gap:20px; flex-direction:column; justify-content:center; align-items:center; text-align:center;}
	.lnbBg h2 {font-size:48px; font-weight:700;}
	.lnbBg p {font-size:30px;}
	
	.lnbTit {padding:80px 0 120px; display:flex; justify-content:space-between; align-items:center;}
	.lnbTit h3 {font-size:36px; color:#000; font-weight:400;}
	.lnbTit ul {display:flex;}
	.lnbTit ul li {padding-right:35px; background:url(../images/lnb/lnb-arrow.png)right 15px center no-repeat; font-size:14px;}
	.lnbTit ul li:last-child {padding:0; background:none;}
	
	/*컨텐츠*/
	.contents {padding:0 0 130px; display:block !important;}
	.contents-wrap {}
	
	
	/* 하단 */
	footer {padding:50px 0; border-top:1px solid #e1e1e1;}
	footer .footerWrap {font-size:15px; display:flex; position:relative;}
	footer .f_logo {padding-right:15px;}
	footer .f_logo img {}
	footer .f_con {color:#000;}
	footer .f_con p.tit {font-weight:500;}
	footer .f_con p span {display:inline-block; font-size:13px; padding-right:18px;}
	footer .f_con p.copy {padding:10px 0 0; font-size:13px;}
	footer .f_con p.copy span {padding-right:5px;}
	
	footer .f_memu {position:absolute; right:0; top:0; display:flex; gap:30px;}
	footer .f_memu a {font-size:13px; position:relative;}
	footer .f_memu a+a:before {width:1px; height:11px; background:#d6d6d6; display:block; position:absolute; left:-15px; top:4px; content:'';}
	
	
	
	
	
	
}


/* ************************ 테블릿 (~1024) ************************ */
@media screen and (max-width: 1024px) {
	
	html {width:100%; overflow-x:hidden;}
	.pc {display:none !important;}
	/*공통*/
	
	
	/*헤더*/
	header {z-index:999; width:100%; left:0; top:0;height:60px; position:absolute;}
	header .head {z-index:100; position:absolute; left:0; top:0; width:100%; height:60px; overflow:hidden; line-height:1; background-color:#fff; box-shadow:0 3px 3px 3px rgba(0,0,0,.1);}
	header .head .gnbView {display:block; position:absolute; display:table; right:0; top:0; width:60px; height:60px; text-align:center; background:url(../images/common/i-allView2.png) no-repeat 50%; background-size:35%;}
	header .head h1 {display:block; margin:0 !important;}
	header .head h1 a {display:flex; align-items:center; padding:14px 20px; text-align:center; gap:10px; font-size:19px; color:#000; font-weight:700;}
	header .head h1 a img {display:block; height:30px; font-size:0; line-height:0;}
	header .head .lang{z-index: 2;position: absolute;top: 0;right:60px;display:Block;line-height:62px;font-size: 13px;width:40px;text-align:right;font-weight:400}
	header .head .lang img{display:none;}

	.headerH {height:60px;}
	
	/*gnb*/
	header nav.mobile {z-index:9999; position:fixed; visibility:hidden; left:0; top:0; width:80%; overflow:hidden; background-color:#fff;}
	header nav.mobile .closeWrap {z-index:1; position:relative; height:60px; background-color:#fff; color:#000; box-shadow:0 3px 5px rgba(0,0,0,.1);}
	header nav.mobile .closeWrap .gnbClose {display:block; float:left; width:60px; height:100%; background:url(../images/common/icon_x2.png) 50% 50% no-repeat; background-size:30%; border-right:1px solid #e0e0e0}
	header nav.mobile .closeWrap aside {display:flex; float:right; height:100%;}
	header nav.mobile .closeWrap aside a {width:60px; height:60px; display:inline-block;border-left:1px solid #e0e0e0; background-size: 22px !important; line-height:60px; text-align:center; font-size:13px; color:#999;}
	header nav.mobile .closeWrap aside a.mall{ background: url(../images/common/i-fix-1-gray.png) no-repeat 50%;}	
	header nav.mobile .closeWrap aside a.lang{ background: url(../images/common/i-fix-2-gray.png) no-repeat 50%;}	
	header nav.mobile .closeWrap aside a.home{ background: url(../images/common/i_home.png) no-repeat 50%;}	
	.gnbCover {z-index:9998; position:fixed; left:0; top:0; display:none; width:100%; height:100%; background:rgba(0,0,0,.5);}

	header nav.mobile .gnb {position:relative; width:100%; height:100%; overflow-y:auto; text-align:left !important;}
	header nav.mobile .gnb * {width:100% !important;}
	header nav.mobile .gnb .home {display:block; width:100%; background-color:#f0f0f0; padding:12px 20px; border-bottom:1px solid #333;}
	header nav.mobile .gnb>ul {position:absolute; top:0; right:0;}
	header nav.mobile .gnb>ul>li {clear:both; position:relative;}
	header nav.mobile .gnb>ul>li>a {display:block; padding:15px 20px; font-size:16px; color:#000; border-bottom:1px solid #ddd; background:#fff; letter-spacing:-.5px; font-weight:500;}
	header nav.mobile .gnb>ul>li>a:hover {color:#000;}
	header nav.mobile .gnb>ul>li.on>a {color:#0393d6; background:#fff; border-bottom:2px solid #0393d6;}
	header nav.mobile .gnb>ul>li ul{border-bottom:5px solid #eee}
	header nav.mobile .gnb>ul>li ul>li {position:relative;}
	header nav.mobile .gnb>ul>li ul>li>a {display:block; padding:13px 20px 13px 20px; font-size:15px; color:#555; letter-spacing:-.5px; border-top:1px dotted #ddd; font-weight:400;}
	header nav.mobile .gnb>ul>li ul>li:first-child>a {border:0;}
	header nav.mobile .gnb>ul>li ul>li>ul>li.on a {color:#0393d6;}
	header nav.mobile .gnb>ul>li ul>li:last-child:after {display:block; height:7px; background:#eee; box-shadow: 3px 3px 3px #ddd inset;}
	header nav.mobile .gnb>ul>li ul>li>a:hover {color:#000; background-color:#f5f5f5;}
	header nav.mobile .gnb>ul>li ul>li.on>a {color:#0393d6;}
	
	/*서브메뉴*/	
	.lnb {}
	.lnbBg {height:240px; color:#fff; display:flex; gap:14px; flex-direction:column; justify-content:center; align-items:center; text-align:center;}
	.lnbBg h2 {font-size:36px; font-weight:700;}
	.lnbBg p {font-size:20px;}
	
	.lnbTit {padding:60px 20px 100px; display:flex; justify-content:space-between; align-items:center;}
	.lnbTit h3 {font-size:27px; color:#000; font-weight:400;}
	.lnbTit ul {display:flex;}
	.lnbTit ul li {padding-right:35px; background:url(../images/lnb/lnb-arrow.png)right 15px center no-repeat; font-size:14px;}
	.lnbTit ul li:last-child {padding:0; background:none;}
	
	
	/*컨텐츠*/
	.contents {padding:0 0 100px; display:block !important;}
	.contents-wrap {padding:0 20px;}
	
	
	/* 하단 */
	footer {padding:40px 20px 50px; border-top:1px solid #e1e1e1; text-align:center;}
	footer .footerWrap {font-size:15px; position:relative; }
	
	footer .f_memu {display:flex; gap:30px; width:100%; justify-content:center;}
	footer .f_memu a {font-size:13px; position:relative;}
	footer .f_memu a+a:before {width:1px; height:11px; background:#d6d6d6; display:block; position:absolute; left:-15px; top:4px; content:'';}
	
	footer .f_logo {padding:30px 0 10px;}
	footer .f_logo img {}
	footer .f_con {color:#000;}
	footer .f_con p.tit {font-weight:500;}
	footer .f_con p span {display:inline-block; font-size:13px; padding:0 5px;}
	footer .f_con p.copy {padding:10px 0 0; font-size:13px;}
	footer .f_con p.copy span {padding-right:5px;}
	
		
	
}


/* ************************ 모바일 (0~767) ************************ */
@media screen and (max-width: 767px) {
	body {font-size:15px; line-height:1.4;}
	/* 폼 */
	select {height:44px; line-height:42px;}
	textarea {height:44px; line-height:42px;}
	input[type=text],input[type=password],input[type=number] {height:44px; line-height:42px;}
	
	
	/*서브메뉴*/	
	.lnb {}
	.lnbBg {height:140px;}
	.lnbBg h2 {font-size:27px;}
	.lnbBg p {font-size:16px;}
	
	.lnbTit {padding:40px 20px 60px; flex-direction:column; gap:10px; align-items:start;}
	.lnbTit h3 {font-size:22px;}
	.lnbTit ul li {font-size:13px; padding-right:20px; background-position:calc(100% - 8px) 4px; background-size:5px;}
	
	/*컨텐츠*/
	.contents {padding:0 0 70px;}
	
	
	/* 하단 */
	footer {padding:30px 20px 40px;}
	footer .f_logo {padding:16px 0 5px;}
	
	
	
	
	

}
