@charset "utf-8";
@import url(//fonts.googleapis.com/earlyaccess/notosanskr.css);
@import url(https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css);

* { 
	box-sizing:border-box;
	margin:0;
	padding:0;
	font-family: Pretendard, sans-serif;
	line-height:1.3;
	letter-spacing:-.3px;
	word-break:keep-all;
}
html, body { 
	width: 100%; 
	font-weight:400;
	overflow-x:hidden;
}
select, button, input, textarea { 
	background:transparent;
	border:none;
}
label, button { 
	cursor:pointer; 
}
li { 
	list-style:none; 
}
a {	
	text-decoration:none;
	cursor:pointer;
}
table { 
	table-layout:fixed;
	width: 100%;
	border-spacing:0;
	border-collapse:collapse;
}
textarea { 
	resize:none;
}

.wrapper { 
	padding:100px 0 0;
}
.verMb { 
	display:none; 
}
.comPopBg { 
	position:fixed;
	display:none; 
	width: 100%;
	height: 100%;
	top:0;
	left:0;
	background:rgba(0,0,0,.8);
	z-index:10;
}
.comPopBg.mbMenuPop { 
	z-index:1; 
}
.inner { 
	max-width: 1200px;
	margin:0 auto;
}
@media all and (max-width:1240px){
	.inner { 
		margin:0 20px;
	}
}
@media all and (max-width:999px){
	.wrapper { 
		padding:70px 0 0;
	}
	.verPc { 
		display:none; 
	}
	.verMb { 
		display:block; 
	}
	.comPopBg.mbMenuPop.on { 
		display:block; 
	}
}
@media all and (max-width:599px){
	.wrapper { 
		padding:50px 0 0;
	}
}

/* 헤더 시작
------------------------------------------------------ */
header { 
	position:fixed;
	display:flex;
	align-items:center; 
	justify-content:space-between; 
	gap:10px;
	width: 100%;
	height: 100px;
	padding:0 160px;
	top:0;
	left:0;
	background: #FFF;
	border-bottom:1px solid #CDCDCD;
	z-index:10;
}
header .hLogo a { 
	display:block; 
	font-size:0;
}
header .hLogo a img { 
	width: 100%; 
}
header .mbMenuOn { 
	display:none; 
}
header .mbMenuTop { 
	display:none; 
}
header .hMenuLst { 
	display:flex;
	align-items:center;
	gap:110px;
}
header .hMenuLst li .hMenu { 
	display:block; 	
	font-weight:600;
	font-size:22px;
	color: #373737;
	transition:all .3s ease;
}
header .hMenuLst li .hMenu.on,
header .hMenuLst li .hMenu:focus,
header .hMenuLst li .hMenu:hover { 
	color: #FFE80A; 
}
header .foundLnk { 
	position:fixed; 
	display:block;
	width: 130px;
	height: 130px;
	top:150px;
	right:100px;
	padding:25px 0 0;
	background: #FFE80A;
	border-radius: 50%;
	box-shadow:0 0 20px 0 rgba(0,0,0,.25);
	text-align: center;
}
header .foundLnk span { 
	display:block; 
}
header .foundLnk .ico { 
	margin:0 auto 3px;
	font-size:0; 
}
header .foundLnk .ico img { 
	max-width: 100%; 
}
header .foundLnk .txt { 
	font-weight:800;
	font-size:15px;
	color: #373737;
}
@media all and (max-width:1499px){
	header { 
		padding:0 30px;
	}
	header .hMenuLst { 
		gap:50px; 
	}
	header .foundLnk { 
		right:30px; 
	}
}
@media all and (max-width:999px){
	header { 
		height: 70px; 
	}
	header .hLogo a { 
		width: 318px; 
	}
	header .mbMenuOn { 
		position:relative; 
		display:block;
		width: 24px;
		height: 24px;
	}
	header .mbMenuOn:before,
	header .mbMenuOn:after {
		content:"";
		position:absolute;
		box-sizing:border-box;
		display:block;
		width: 18px;
		height: 2px;
		left:50%;
		margin:0 0 0 -9px;
		background: #373737;
	}
	header .mbMenuOn:before { 
		top:6px; 
	}
	header .mbMenuOn:after { 
		top:16px; 
	}
	header .mbMenuOn span {
		position:absolute;
		display:block;
		width: 18px;
		height: 2px;
		top:50%;
		left:50%;
		margin:-1px 0 0 -9px;
		background: #373737;
	}
	header .hMenuBox { 
		position:fixed; 
		width: 300px; 
		max-width: 100%;
		height: 100%;
		top:0;
		right:-300px;
		padding:0 0 110px;
		background: #FFF;
		transition:all .3s ease;
		z-index:1;
	}	
	header .hMenuBox.on { 
		right:0; 
	}
	header .mbMenuTop { 
		display:flex;
		align-items:center; 
		justify-content:space-between;
		height: 70px;
		padding:0 20px;
	}
	header .mbMenuTop .logo { 
		width: 163px;
		font-size:0;
	}
	header .mbMenuTop .logo img { 
		width: 100%; 
	}
	header .mbMenuTop .mbMenuOff { 
		position:relative; 
		display:block;
		width: 24px;
		height: 24px;
	}
	header .mbMenuTop .mbMenuOff:before,
	header .mbMenuTop .mbMenuOff:after { 
		content:"";
		position:absolute;
		box-sizing:border-box;
		display:block;
		width: 18px;
		height: 2px;
		top:50%;
		left:50%;
		margin:-1px 0 0 -9px;
		background: #999;
	}
	header .mbMenuTop .mbMenuOff:before { 
		transform:rotate(45deg); 
	}
	header .mbMenuTop .mbMenuOff:after { 
		transform:rotate(-45deg); 
	}
	header .hMenuLst { 
		display:block;
		padding:0 20px;
	}
	header .hMenuLst li .hMenu { 
		padding:10px 0 8px;
		font-size:20px;		
	}	
	header .foundLnk { 
		position:absolute;
		display:flex;
		align-items:center; 
		justify-content:center; 
		gap:10px;
		width: calc(100% - 40px);
		height: 70px;
		top:auto;
		bottom:20px;
		right:20px;
		padding:0;
		box-shadow:none;
		border-radius: 0;
	}
	header .foundLnk .ico { 
		width: 43px;
		margin:0;
	}
	header .foundLnk .txt { 
		font-size:18px; 
	}
}
@media all and (max-width:599px){
	header { 
		height: 50px;
		padding:0 20px;
	}
	header .hLogo a { 
		width: 196px; 
	}
	header .hMenuBox { 
		padding:0 0 90px;
	}
	header .mbMenuTop { 
		height: 50px; 
	}
	header .mbMenuTop .logo { 
		width: 104px; 
	}
	header .hMenuLst li .hMenu { 
		padding:8px 0 7px;
		font-size:18px; 
	}
	header .foundLnk { 
		gap:8px; 
		height: 50px;
	}
	header .foundLnk .ico { 
		width: 32px; 
	}
	header .foundLnk .txt { 
		font-size:16px; 
	}
}
/* 헤더 끝
------------------------------------------------------ */
/* 푸터 시작
------------------------------------------------------ */
footer { 
	display:flex;
	justify-content:space-between; 
	gap:10px;
	padding:60px 100px;
	background: #373737; 
}
footer .lBox .logo { 
	margin:0 0 37px;
	font-size:0;
}
footer .lBox .logo img { 
	max-width: 100%; 
}
footer .lBox .infoLst { 
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin:0 0 43px;
}
footer .lBox .infoLst li { 
	font-size:12px;
	color:#FFF; 
}
footer .lBox .infoLst li.fullWid { 
	width: 100%; 
}
footer .lBox .copy { 
	font-size:12px;
	color:#FFF;
}
footer .rBox { 
	flex-shrink:0;
	display:flex;
	gap:68px;
}
footer .rBox .menuLst li { 
	margin:0 0 25px;
}
footer .rBox .menuLst li .lnk { 
	display:block;
	font-weight:500;
	font-size:14px;
	color: #FFF;
	transition:all .3s ease;
}
footer .rBox .menuLst li .lnk:focus,
footer .rBox .menuLst li .lnk:hover { 
	color: #FFE80A;
}
footer .rBox .menuLst li:last-child { 
	margin:0;
}
footer .rBox .conBox .tit { 
	margin:0 0 22px;
	font-weight:700;
	font-size:20px;
	color: #FFF;
}
footer .rBox .conBox .infoLst { 
	margin:0 0 22px;
}
footer .rBox .conBox .infoLst li {
	margin:0 0 3px;
	font-size:12px;
	color: #999;
}
footer .rBox .conBox .infoLst li:last-child { 
	margin:0;
}
footer .rBox .conBox .lnkLst { 
	display:flex;
	flex-wrap:wrap;
	gap:17px;
}
footer .rBox .conBox .lnkLst li a { 
	display:block; 
	font-size:0;
}
footer .rBox .conBox .lnkLst li a img { 
	max-width: 100%; 
}
@media all and (max-width:1499px){
	footer { 
		padding:30px;
	}
}
@media all and (max-width:999px){
	footer .lBox .logo { 
		width: 330px;
		margin:0 0 30px;
	}
	footer .lBox .infoLst { 
		gap:8px;
		margin:0 0 30px;
	}
	footer .rBox { 
		flex-wrap:wrap;
		gap:20px;
	}
	footer .rBox .menuLst li { 
		margin:0 0 15px;
	}
	footer .rBox .conBox .tit { 
		margin:0 0 15px;
		font-size:16px;
	}
	footer .rBox .conBox .infoLst { 
		margin:0 0 15px;
	}
	footer .rBox .conBox .lnkLst { 
		gap:10px; 
	}
	footer .rBox .conBox .lnkLst li a { 
		width: 26px; 
	}
}
@media all and (max-width:799px){
	footer { 
		flex-wrap:wrap; 
		gap:20px;
	}
	footer .lBox,
	footer .rBox { 
		width: 100%; 
	}
	footer .lBox .logo,
	footer .lBox .infoLst { 
		margin:0 0 20px;
	}
	footer .rBox .menuLst { 
		display:flex;
		flex-wrap:wrap; 
		gap:10px;
		width: 100%;
	}
	footer .rBox .menuLst li { 
		margin:0;
	}
}
@media all and (max-width:599px){
	footer { 
		padding:30px 20px;
	}
	footer .lBox .logo { 
		width: 196px; 
	}
	footer .lBox .infoLst { 
		gap:5px; 
	}
}
/* 푸터 끝
------------------------------------------------------ */
/* 서브 공통 시작
------------------------------------------------------ */
.subComWr { 
	padding:83px 0 109px;
}
.subComTit01 { 
	margin:0 0 18px;
	font-size:50px; 
	color: #373737;
	line-height:1.1934;
}
.subComTxt01 { 
	margin:0 0 83px;
}
.subComTxt01 .txt01 { 
	font-size:20px;
	line-height:1.6;
	color: #373737;	 
}
.subComTxt01 .lst01 { 
	margin:16px 0 0;
}
.subComTxt01 .lst01 li { 
	position:relative; 
	margin:0 0 7px;
	padding:0 0 0 16px;
	font-size: 18px; 
	color: #999;
}
.subComTxt01 .lst01 li:last-child { 
	margin:0;
}
.subComTxt01 .lst01 li:before { 
	content:"";
	position:absolute;
	box-sizing:border-box;
	display:block;
	width: 6px;
	height: 6px;
	top:9px;
	left:0;
	background: #999;
	border-radius: 50%;
}
@media all and (max-width:999px){
	.subComWr { 
		padding:60px 0;
	}
	.subComTit01 { 
		margin:0 0 15px;
		font-size:40px; 
	}
	.subComTxt01 { 
		margin:0 0 60px;
	}
	.subComTxt01 .txt01 {
		font-size:16px;
	}
	.subComTxt01 .lst01 li { 
		margin:0 0 5px;
		padding:0 0 0 10px;
		font-size: 15px;
	}
	.subComTxt01 .lst01 li:before { 
		width: 4px; 
		height: 4px;
		top:6px;
	}
}
@media all and (max-width:599px){
	.subComWr { 
		padding:40px 0;
	}
	.subComTit01 { 
		margin:0 0 10px;
		font-size:30px; 
	}
	.subComTxt01 { 
		margin:0 0 40px;
	}
	.subComTxt01 .txt01 {
		font-size:15px;
	}
	.subComTxt01 .txt01 br { 
		display:none; 
	}
	.subComTxt01 .lst01 li { 
		font-size: 14px;
	}
	.subComTxt01 .lst01 li:before { 
		top:7px; 
	}
}
/* 서브 공통 끝 
------------------------------------------------------ */
/* 공통 페이징 시작
------------------------------------------------------ */
.comPagingBox { 
	display:flex;
	flex-wrap:wrap; 
	justify-content:center; 
	width: 100%;
	margin:60px 0 0;
}
.comPagingBox > * { 
	display:flex;
	align-items:center; 
	justify-content:center; 
	width: 38px;
	height: 36px;
	border:1px solid #E0E0E0;
	font-weight:600;
	font-size:16px;
	color: #999;
	line-height:1;
	transition:all .3s ease;
}
.comPagingBox > *.on { 
	border-color:#373737;
	color: #373737;
}
.comPagingBox > * img { 
	max-width: 100%; 
}
.comPagingBox .num { 
	margin:0 2px;
}
.comPagingBox .prev { 
	margin:0 22px 0 0;
}
.comPagingBox .next { 
	margin:0 0 0 22px;
}
@media all and (max-width:999px){
	.comPagingBox { 
		margin:40px 0 0;
	}
	.comPagingBox > * { 
		width: 30px; 
		height: 28px;
		font-size:14px;
	}
	.comPagingBox .arrow img { 
		width: 12px; 
	}
	.comPagingBox .prev { 
		margin:0 15px 0 0;
	}
	.comPagingBox .next { 
		margin:0 0 0 15px;
	}
}
@media all and (max-width:599px){
	.comPagingBox { 
		margin:20px 0 0;
	}
	.comPagingBox .prev { 
		margin:0 10px 0 0;
	}
	.comPagingBox .next { 
		margin:0 0 0 10px;
	}
}
/* 공통 페이징 끝
------------------------------------------------------ */