@charset "utf-8";

/* background fixed 사용시 버그 대응용 * 한 번 스크롤로 페이지 전체 넘김을 할 때는 html스타일에서 height속성 제거하기 */
/* html {overflow: hidden; height: 100%;} */
/* body {overflow: auto; height: 100%;} */

/* ************************ 셋팅 ************************ */
a {text-decoration:none !important; outline:none !important; selector-dummy:expression(this.hideFocus=true) !important; transition:all .3s;color:inherit;}
a:link {text-decoration:none; color:inherit;}
a:visited {text-decoration:none; color:inherit;}
a:hover {text-decoration:none; color:inherit;}
a:active {text-decoration:none; color:inherit;}
			
body {font-family: 'NEXON Lv2 Gothic', sans-serif; font-size:16px; font-weight:400; line-height:1.6; color:#666; word-break:keep-all; overflow-x:hidden;}
.hidden {position:absolute; left:-99999px;}
:root {
	--red:#f00;
	--green:#1f8e43;
	--border1:#e5e5e5;
}

.c_red {color:var(--red) !important;}
.bgc_red {background-color:var(--red) !important;}
/* 폼 */

: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%);}


/* ************************ 데스크탑 (1025~) ************************ */
@media screen and (min-width: 1025px), print {

	/* 공통 */
	.mobile {display:none !important;}
	.w1400 {width:1400px; margin:0 auto; max-width:100%;}
	

	/* 헤더 */
	header {width:100%; position:relative; z-index:999; background:#fff;}
	header .gnb_contain {background:#fff;}
	header .gnb_wrap {width:100%; max-width:1400px; margin:0 auto; height:80px; background:transparent;position:relative;text-align:right;line-height:80px;}
	header .gnb_wrap aside {position:absolute; right:0; top:0; letter-spacing: 0;}
	header .gnb_wrap aside a {color:#000; font-size:13px; font-family:'NEXONLV1'; font-weight:700; padding-bottom:5px;}
	header .gnb_wrap aside a.on {color:var(--green)!important; border-bottom:2px solid var(--green);}
	header .gnb_wrap aside a:last-child {margin-left:20px;}
	header .gnb_wrap h1.logo {position:absolute;top:0;left:0;height: 100%;line-height: 80px;}
	header .gnb_wrap #gnb{display:flex; justify-content:flex-end; padding-right:100px;}
	header .gnb_wrap #gnb ul{display:flex;}
	header .gnb_wrap #gnb ul:after{content:'';display:block;clear:both;}
	header .gnb_wrap #gnb>ul>li{}
	header .gnb_wrap #gnb>ul>li>a {position: relative; height: 80px; line-height: 80px; padding: 0 20px; font-size: 22px; font-weight: 600; letter-spacing: -.8px; color: #000; z-index: 999; /* width: 10vw; */ /* min-width: 130px; */ text-align: center;}
	header .gnb_wrap #gnb>ul>li>a.on {}

	header .gnb_wrap #gnb ul a{display:block;color:#000;text-decoration:none;font-weight:400;}
	header .gnb_wrap #gnb ul li{position:relative;}
	header .gnb_wrap #gnb ul ul{display:none; position:absolute;top:80px;left: 50%;
    transform: translateX(-50%);margin-left:0px;width:250px; background:#f5f5f5;padding:10px 0; z-index:9;padding-top:25px;padding-bottom:25px;}
	header .gnb_wrap #gnb ul ul:before{content:'';position:absolute;top:0px;left:30%; transform:translateX(-200%); width: 100px;height:3px; background:var(--green); transform:scaleX(1);}
	header .gnb_wrap #gnb ul ul li{width:100%}
	header .gnb_wrap #gnb ul ul a{position:relative; font-size:16px;padding:10px 20px;text-align:center;line-height: 1.4;letter-spacing: -.4px; color:#000; transform: rotate(-0.03deg);}
	header .gnb_wrap #gnb ul ul a:hover, header .gnb_wrap #gnb ul ul li.on a {text-decoration-line:underline!important; text-decoration-thickness:2px!important; text-underline-offset:7px;}

	header .gnb_wrap #gnb ul li:hover>a {/*background:#fff;*/ color:var(--green);}
	header .gnb_wrap #gnb ul li ul li.on>a {color:var(--green);}
	header .gnb_wrap #gnb ul li:hover ul:before {animation: wider .5s ;}
	header .gnb_wrap #gnb ul li:hover > ul {display:block;}
	header .gnb_wrap #gnb ul ul a:hover {color:var(--green);}
	
	header .gnb_wrap h1.logo a img {height: auto;}

	@keyframes wider {
	  from {transform:scaleX(0)}
	  to {transform:scaleX(1)}
	}
	
	/*서브메뉴*/	

	.lnbBg {height:270px; color:#fff; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; font-family:'NEXONLV1';}
	
	.lnb .lnbBg {background:url(../images/common/lnb_bg.webp) no-repeat center / cover;}
	
	
	.lnbBg h2 {margin:0 0 15px; font-size:48px; font-weight:700; position:relative;}
	/*.lnbBg h2:after {width:50px; height:5px; background:#fff; left:50%; bottom:0; transform:translateX(-50%); position:absolute; content:''; display:block;}*/
	.lnbBg p {font-size:18px;}
	.lnbBg p b {padding:0 0 5px;font-size:24px; font-weight:700; display:block;}
	.lnbMenu {left:0; top:450px; width:100%;height:80px; border-bottom:1px solid var(--border3); position:absolute; background:#fff; z-index:5;}
	.lnbMenu.fixOn {top:0; position:fixed;}
	.lnbMenu ul {display:flex; position:relative;}
	.lnbMenu ul:before,
	.lnbMenu ul:after {content:''; display:block; position:absolute;}
	.lnbMenu ul:before {width:32px; height:102px; left:-110px; bottom:10px; background:url(../images/common/i-sup.svg)center /100% no-repeat; z-index:2;}
	.lnbMenu ul:after {width:65px; height:150px; left:-90px; bottom:0; background:url(../images/common/i-sup-white.svg)center top /100% no-repeat;}
	.lnbMenu ul li {padding:25px 20px 0 0; position:relative;}
	.lnbMenu ul li+li {padding-left:20px;}
	.lnbMenu ul li:last-child:before {display:none;}
	.lnbMenu ul li:before {width:1px; height:13px; right:0; top:32px; background:var(--border3); position:absolute; content:''; display:block;}
	.lnbMenu ul li a {padding:; border-bottom:3px solid transparent; font-size:18px; font-weight:700; position:relative; color:#000; display:block;}
	.lnbMenu ul li.on a {color:var(--blue); border-color:inherit;}
	.lnbMenuWrap {position:relative;}
	.lnbMenuWrap #gotop {position:absolute; right:0; top:0; line-height:80px; padding-left:24px; background:url(../images/common/i-arrowUp.png)0 center no-repeat; font-size:12px; font-weight:700; color:#000; text-transform:uppercase; display:block;}
	
	.lnbTit {padding:65px 0 80px; display:flex; align-items:end; justify-content:space-between;}
	.lnbTit h3 {font-size:30px; color:#000; font-weight:900; font-family: 'NEXONLV1'; border-left:5px solid var(--green); padding-left:23px;}
	.lnbTit h3 span {display:block; font-size:16px; color:#999; font-weight:500; font-family: 'NEXON Lv2 Gothic'; margin-top:8px;}
	.lnbTit ul {display:flex; line-height:1; color:#000;}
	.lnbTit ul li {margin-left:12px; padding-left:17px; font-size:14px; position:relative;}
	.lnbTit ul li+li:before {content:">"; position:absolute; left:0;}
	
	
	
	
	/*컨텐츠*/
	.contents {padding:0 0 100px; display:block !important;}
	.contents-wrap {}
	.contents.ceo {padding:0;}
	
	/* 하단 */
	footer {padding:40px 0 30px; background:#f5f5f5;}
	footer .footerWrap {font-size:15px; display:flex; position:relative;}
	footer .footerWrap .f_logo {padding-right:20px;}
	footer .footerWrap .f_logo img {width:auto;}
	footer .footerWrap .f_con {font-weight:200;}
	footer .footerWrap .f_con p.companyName {font-weight:800; font-size:16px; color:#000;}
	footer .footerWrap .f_con p {transform:rotate(0.03deg); line-height:1.7;}
	footer .footerWrap .f_con p span {padding-right:20px; display:inline-block;}
	footer .footerWrap .f_con p.copy {padding:0px 0 0;}
	footer .footerWrap .right {position:absolute; right:0;}
	footer .footerWrap .right a.indi_info {color:#000; font-weight:600; margin-right:25px;}
	footer .footerWrap .right a.topBtn {position:relative; top:-10px; display:inline-block; background:url(../images/common/i-arrowUp.png) no-repeat center;background-color:#fff; width:45px; height:45px; border:1px solid var(--border1); border-radius:50%; text-indent:-9999px;}
	/*footer .family-site {position:absolute; right:0; top:0;}
	footer .family-site>a {width:260px; padding:0 20px; line-height:48px; border:1px solid var(--border3); background:#fff url(../images/common/i-arrowDown.png)calc(100% - 20px) center no-repeat; display:block;}
	footer .family-site ul {position:absolute; left:0; bottom:0; width:100%; background:#fff;border:1px solid var(--border3); box-shadow:0 0 15px rgba(0,0,0,.05);display:none;}
	footer .family-site ul li {}
	footer .family-site ul li+li {border-top:1px solid var(--border3);}
	footer .family-site ul li a {padding:0 20px; line-height:48px;display:block;}
	footer .family-site ul li a:hover {background:#f9f9f9}
	footer .family-site:hover ul {display:block;}*/
	
	
	
	
	
	
}


/* ************************ 테블릿 (~1024) ************************ */
@media screen and (max-width: 1024px) {
	
	.pc {display:none !important;}
	
	/*공통*/
	
	
	/*헤더*/
	header{padding:0 10px; border-bottom:1px solid rgba(255,255,255,.20);}
	header .gnb_wrap{height:60px;line-height:60px;}
	header .gnb_wrap h1.logo{line-height:60px;}
	header .gnb_wrap h1.logo img {width:180px;}
	header .gnb_wrap .gnbView {display: block;width: 60px;background: url(../images/common/i-allView2.png) no-repeat 50%;    background-size: 21px;height: 60px;position: absolute;right: 0;top: 0; border-left:1px solid rgba(255,255,255,.20);}

	/*gnb*/
	body>header nav.mobile {z-index:9999; position:fixed; visibility:hidden; left:0; top:0; width:80%; overflow:hidden; background:#fff;}
	body>header nav.mobile .closeWrap {z-index:1; position:relative; height:60px;color:#000;border-bottom:5px solid #efefef;}
	body>header nav.mobile .closeWrap:after{content:'';display:block;clear:both;}
	body>header nav.mobile .closeWrap .gnbClose {display:block; float:right; width:60px; height:100%; background:url(../images/common/icon_x2.png) 50% 50% no-repeat; background-size:16px; border-left:1px solid #eaeaea; }
	body>header nav.mobile .closeWrap .home{display:block;width:auto;float:left;line-height: 59px;text-align: left;padding: 0 20px; font-size:13px !important; font-weight:700; color:var(--base); text-indent:-9999px; background: url(../images/common/i_home.png) no-repeat 50%; width:60px; border-right:1px solid var(--border1); }
	body>header nav.mobile .loginBx{opacity:.7;padding:30px 20px 20px;line-height: 1;}
	body>header nav.mobile .loginBx:after{content:'';display:block;clear:both;}
	body>header nav.mobile .loginBx a{text-align:Center;color:#fff;padding:5px 10px;border:1px solid #fff;margin-right:5px;text-transform:uppercase;letter-spacing:1px;font-size:13px;}
	.gnbCover {z-index:9998; position:fixed; left:0; top:0; display:none; width:100%; height:100%; background:rgba(0,0,0,.5);}

	body>header nav.mobile .gnb {position:relative; width:100%; height:100%; overflow-y:auto; text-align:left !important;}
	body>header nav.mobile .gnb * {width:100% !important;line-height:1;}
	body>header nav.mobile .gnb .home {display:block; width:100%; background-color:#f0f0f0; padding:12px 20px; border-bottom:1px solid #333; }
	body>header nav.mobile .gnb>ul {position:absolute; top:0; right:0;}
	body>header nav.mobile .gnb>li {clear:both; position:relative; border-bottom:1px solid #eaeaea;}

	body>header nav.mobile .gnb>li>a {display:block; padding:20px; font-size:16px; color:#000;letter-spacing:-.5px; font-weight:400; text-transform:uppercase; }
	body>header nav.mobile .gnb>li>ul {display:none; overflow:hidden;background:rgba(255,255,255,.15);}
	body>header nav.mobile .gnb>li>ul>li {position:relative;}
	body>header nav.mobile .gnb>li>ul>li>a {display:block; padding:13px 20px 13px 35px; font-size:15px; color:#000; letter-spacing:-.5px; border-bottom: 1px solid #e8e8e8; background:#f5f5f5;}
	body>header nav.mobile .gnb>li>ul>li:last-child>a {border-bottom:5px solid #e3e3e3;}
	body>header nav.mobile .gnb>li>ul>li>ul>li.on a {color:#7d1810;}
	
	body>header nav.mobile .gnb>li.on {background:var(--green);}
	body>header nav.mobile .gnb>li.on>a {color:#fff;}
	body>header nav.mobile .gnb>li.on>ul>li {background:#fff;}
	
	body>header nav.mobile .gnb>li>ul>li.on>a {position:relative; color:var(--base); font-weight:700;}

	body>header nav.mobile .closeWrap aside {height:60px; line-height:60px; padding-left:80px;}
	body>header nav.mobile .closeWrap aside a {position:relative;}
	body>header nav.mobile .closeWrap aside a+a {margin-left:20px;}
	body>header nav.mobile .closeWrap aside a.on {position:relative; color:var(--green); font-weight:700;}
	body>header nav.mobile .closeWrap aside a.on:after {content:""; display:block; width:100%; height:2px; background:var(--green); position:absolute; left:0; bottom:-4px;}
	
	body>header nav.mobile .dep3 li {background:#e3e3e3; padding:10px 0 10px 55px; border-bottom:1px dotted #b5b5b5; color:#535353;}
	body>header nav.mobile .dep3 li a {position:relative;}
	body>header nav.mobile .dep3 li a:before {position:absolute; left:-15px; top:8px; content:""; width:6px; height:2px; background:#b1b1b1; border-radius:100px;}
	body>header nav.mobile .dep3 li:last-child {border-bottom:0;}
	body>header nav.mobile .dep3 li.on a {color:var(--base);}
	body>header nav.mobile .dep3 li.on a:before {background:var(--base);}
	
	body>header nav.mobile .gnb>li a.gosite2 {padding-right:30px; background:url(../images/common/i-gosite.png)no-repeat 100px calc(100% - 16px);}
	body>header nav.mobile .gnb>li a.gosite2:hover {background:url(../images/common/i-gosite-blue.png)no-repeat 100px calc(100% - 16px);}
	
	/*서브메뉴*/	
	.lnb {}
	.lnbBg {height:180px; color:#fff; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; background:url(../images/common/lnb_bg.webp) no-repeat center / cover;}
	
	.lnbBg h2 {padding:0 0 10px; font-size:30px; font-weight:700; position:relative;}
	
	.lnbBg p {font-size:17px;}
	.lnbBg p b {font-size:21px; font-weight:700; display:block;}
	.lnbMenu {left:0; top:450px; width:100%;height:80px; border-bottom:1px solid var(--border3); position:absolute; background:#fff; z-index:2;}
	.lnbMenu.fixOn {top:0; position:fixed;}
	.lnbMenu ul {display:flex; position:relative;}
	.lnbMenu ul:before,
	.lnbMenu ul:after {content:''; display:block; position:absolute;}
	.lnbMenu ul:before {width:32px; height:102px; left:-110px; bottom:10px; background:url(../images/common/i-sup.svg)center /100% no-repeat; z-index:2;}
	.lnbMenu ul:after {width:65px; height:150px; left:-90px; bottom:0; background:url(../images/common/i-sup-white.svg)center top /100% no-repeat;}
	.lnbMenu ul li {padding:25px 20px 0 0; position:relative;}
	.lnbMenu ul li+li {padding-left:20px;}
	.lnbMenu ul li:last-child:before {display:none;}
	.lnbMenu ul li:before {width:1px; height:13px; right:0; top:32px; background:var(--border3); position:absolute; content:''; display:block;}
	.lnbMenu ul li a {padding:; border-bottom:3px solid transparent; font-size:18px; font-weight:700; position:relative; color:#000; display:block;}
	.lnbMenu ul li.on a {color:var(--blue); border-color:inherit;}
	.lnbMenuWrap {position:relative;}
	.lnbMenuWrap #gotop {position:absolute; right:0; top:0; line-height:80px; padding-left:24px; background:url(../images/common/i-arrowUp.png)0 center no-repeat; font-size:12px; font-weight:700; color:#000; text-transform:uppercase; display:block;}
	
	.lnbTit {padding:30px 20px 50px; display:flex; justify-content:space-between; flex-direction: column; gap:20px;}
	.lnbTit h3 {font-size:24px; color:#000; font-weight:900; font-family: 'NEXONLV1'; border-left:5px solid var(--green); padding-left:23px; order:2;}
	.lnbTit h3 span {display:block; font-size:16px; color:#999; font-weight:500; font-family: 'NEXON Lv2 Gothic'; margin-top:8px; line-height:1.3;}
	.lnbTit ul {display:flex; align-self: flex-end; color:#000; line-height:1.1;}
	.lnbTit ul li {margin-left:12px; padding-left:15px; font-size:13px; position:relative;}
	.lnbTit ul li+li:before {content:">"; position:absolute; left:0;}
	
	
	/*컨텐츠*/
	.contents {padding:0px 30px 80px; display:block !important;}
	.contents.ceo {padding:50px 30px 0; display:block !important;}
	
	
	
	/* 하단 */
	footer {padding:40px 30px 40px; background:#f5f5f5; position:relative;}
	footer .footerWrap {font-size:15px; }
	footer .footerWrap .f_logo {padding-bottom:10px;}
	footer .footerWrap .f_logo img {width:auto;}
	footer .footerWrap .f_con {transform: rotate(0.03deg);}
	footer .footerWrap .f_con p {line-height:2;}
	footer .footerWrap .f_con p.companyName {font-weight:800; font-size:16px; color:#000;}
	footer .footerWrap .f_con p span {padding-right:15px; display:inline-block;}
	footer .footerWrap .f_con p.copy {padding:0px 0 0;}
	footer .footerWrap .right {padding-top:10px;}
	footer .footerWrap .right a.indi_info {color: #000; font-weight:600; margin-right: 25px;}
	footer .footerWrap .right a.topBtn {position:absolute; top:auto; bottom:50px; right:30px; display:inline-block; background:url(../images/common/i-arrowUp.png) no-repeat center;background-color:#fff; width:45px; height:45px; border:1px solid var(--border1); border-radius:50%; text-indent:-9999px;}
	footer .family-site {width:100%; position:absolute; right:0; top:0;}
	footer .family-site>a {padding:0 20px; line-height:48px; border:1px solid var(--border3); background:#fff url(../images/common/i-arrowDown.png)calc(100% - 20px) center no-repeat; display:block;}
	footer .family-site ul {position:absolute; left:0; bottom:0; width:100%; background:#fff;border:1px solid var(--border3); box-shadow:0 0 15px rgba(0,0,0,.05);display:none;}
	footer .family-site ul li {}
	footer .family-site ul li+li {border-top:1px solid var(--border3);}
	footer .family-site ul li a {padding:0 20px; line-height:48px;display:block;}
	footer .family-site ul li a:hover {background:#f9f9f9}
	footer .family-site:hover ul {display:block;}
	
		
	
}


/* ************************ 모바일 (0~767) ************************ */
@media screen and (max-width: 767px) {
	body {font-size:15px; line-height:1.6;}
	/* 폼 */
	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 {padding:0 20px; height:150px;}
	.lnbBg h2 {font-size:24px; padding:0 0 10px;}
	.lnbBg h2:after {width:30px; height:3px;}
	.lnbBg p {font-size:16px;}
	.lnbBg p b {font-size:19px;}
	
	.lnbTit {padding:40px 20px 25px; flex-direction:column; align-items:start; gap:20px;}
	.lnbTit h3 {font-size:20px; order:2;}
	.lnbTit h3 span {font-size:14px;}
	.lnbTit ul li {margin-left:7px; padding-left:10px;}
	.lnbTit ul li:first-child {padding:0; margin:0;}
	
	/*컨텐츠*/
	.contents {padding:20px 30px 60px;}
	.contents.ceo {padding:20px 30px 60px;}
	
	/* 하단 */
	footer {padding:30px 30px 30px; font-size:14px;}
	footer .footerWrap .f_logo img {width:auto;}
	footer .footerWrap .f_logo {padding-bottom:10px;}
	footer .footerWrap .f_con p {line-height:1.6;}
	footer .footerWrap .f_con p span:nth-of-type(1) {display:block;}
	footer .footerWrap .right a.topBtn {bottom:30px;}
	
	
	
	

}
