@charset "utf-8";

/******************************  공통 영역  ******************************/
#wrap, .container { width: 100%; min-width: 1600px; }
#wrap {}
.container {}
.sector { width: 1750px; margin: 0 auto; }
.sub_sector { width: 1750px; margin: 0 auto; }

@media screen and (max-width:1000px) {
	#wrap, .container { min-width: 0; }
	.sub_container { width: 100%; padding-bottom: 50vw; }
	.sector, .sub_sector { width: 88%; }
}


/******************************  헤더  ******************************/
#hd {
	height: 120px;
	/* background: var(--main-color); */
	/* border-bottom: 4px solid var(--sub-color); */
}

#hd .logo {
	display: inline-block;
	margin-top: 35px;
	width: 141px;
	height: 47px;
	background: url('../images/h_logo.png') no-repeat center center / contain;
}

#hd .gnb {
	float: right;
	margin-top: 44px;
	margin-right: 8px;
}

#hd .gnb > a {
	font-size: 22px;
	font-weight: bold;
	margin-left: 142px;
}

#hd .sitemap_btn {
	display: none;
	background: none;
}

@media screen and (max-width:1000px) {
	#hd {
		position: relative;
		height: 17vw;
		/* text-align: center; */
		border-bottom: 1px solid var(--sub-color);
	}

	#hd .logo {
		margin-top: 3vw;
		width: 33.5vw;
		height: 10.3vw;
		background-image: url('../images/m_h_logo.png');
	}

	#hd .gnb {
		display: none;
	}

	#hd .sitemap_btn {
		display: block;
		position: absolute;
		top: 6.1vw;
		right: 6%;
		width: 6vw;
		height: 5vw;
		background: url('../images/m_menu_ico.png') no-repeat center center / contain;
	}
}

/******************************  전체 메뉴  ******************************/
#snb_area {
	display: none;
	position: absolute;
	top: 156px;
	left: 0;
	width: 100%;
	padding: 25px 0 60px;
	background: var(--lightgray);
	z-index: 99999;
}

#snb_area .snb_box {
	float: right;
}

#snb_area .snb_box > li {
	float: left;
}

#snb_area .snb_box > li:nth-child(1) { margin-left: 0; /* background: red; */ }
#snb_area .snb_box > li:nth-child(2) { margin-left: 125px; /* background: orange; */ }
#snb_area .snb_box > li:nth-child(3) { margin-left: 144px; /* background: blue; */ }
#snb_area .snb_box > li:nth-child(4) { margin-left: 138px; /* background: green; */ }

#snb_area .snb_box > li > a {
	display: block;
	margin: 20px 0;
	font-size: 18px;
	text-align: center;
	line-height: 1.25;
}

@media screen and (max-width:1000px) {
	#snb_area {
		display: none;
		padding: 25px 0 60px;
		background: var(--lightgray);
	}

	#snb_area .snb_box {
		float: right;
	}

	#snb_area .snb_box > li {
		float: left;
	}

	#snb_area .snb_box > li:nth-child(1) { margin-left: 0; /* background: red; */ }
	#snb_area .snb_box > li:nth-child(2) { margin-left: 85px; /* background: orange; */ }
	#snb_area .snb_box > li:nth-child(3) { margin-left: 102px; /* background: blue; */ }
	#snb_area .snb_box > li:nth-child(4) { margin-left: 138px; /* background: green; */ }

	#snb_area .snb_box > li > a {
		display: block;
		margin: 20px 0;
		font-size: 18px;
		text-align: center;
		line-height: 1.25;
	}
}


/******************************  사이트맵  ******************************/
#sitemap_area { display: none; }
#sitemap_area::-webkit-scrollbar { display: none; }

@media screen and (max-width:1000px) {
	#sitemap_area { display: block; position: fixed; top: 0; right: -100%; width: 100%; height: 100%; background: #fff; z-index: 999999; overflow-Y: auto; }

	.sitemap_header .sector { position: relative; }

	.sitemap_header { height: 17vw; border-bottom: 1px solid #e0e0e0; }
	.sitemap_header .logo { position: absolute; top: 0; left: 0; width: 42.9vw; height: 6.38vw; margin-top: 5.3vw; background: url('../images/m_logo_c.png') no-repeat center center / contain; z-index: 1; }
	.sitemap_header .right_logo { position: absolute; top: 5.3vw; right: 11.5vw; width: 16.5vw; height: 6.4vw; background: url('../images/m_logo_book.png') no-repeat center center / contain; }

	#sitemap_area .sitemap_gnb dt, #sitemap_area .sitemap_gnb dd { padding: 0 6vw; font-size: 4.4vw; }
	#sitemap_area .sitemap_gnb dt { border-bottom: 1px solid #ddd; line-height: 18.2vw; font-weight: bold;}
	#sitemap_area .sitemap_gnb dt.no_snb { background: none; }
	#sitemap_area .sitemap_gnb dt + dd { padding-top: 6vw; }
	#sitemap_area .sitemap_gnb dd { /* display: none; */ padding-bottom: 6vw; background: #E8E8E8; }
	#sitemap_area .sitemap_gnb dd:last-child { margin-bottom: 23vw; }

	.close_btn { display: block; position: absolute; top: 5.5vw; right: 0; width: 6vw; z-index: 1; background: none; }
}

/******************************  푸터  ******************************/
#footer {
/* 	position: relative;
	z-index: 1; */
	color : #fff;
	background: var(--main-color);
	width : 100%;
	height: 230px;
}

#footer .sector{
	max-width:100%;
/* 	margin:0 auto; */
}

#footer .ft_top {
	background:#465EAB;
}

#footer .ft_top .sector {
	display: flex;
	justify-content: left;
	align-items: center;
	gap: 40px;
	padding: 18px 24px;
}

#footer .ft_top .sector  h2 {
	font-size : 30px;
	margin: 0;
	font-weight : 700;
}

#footer .ft_top a{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 144px;
	height: 45px;
	padding: 0 18px;
	background: #fff;
	color: var(--main-color);
	border-radius: 30px;
	font-size : 18px;
	font-weight: 600;
}

#footer .ft_bottom .sector {
	display:flex;
	align-items:flex-start;
	gap:24px;
	padding:28px 24px 36px;
}

#footer .ft_bottom .f_info{
	font-size: 14px;
	line-height: 1.7;
	opacity: .95;
}

@media screen and (max-width:1000px) {
	#footer {
		height: auto;
	}
	#footer .ft_top .sector {
		display: flex;
		justify-content: left;
		align-items: center;
		gap: 40px;
		padding: 10px 5px;
	}
	#footer .ft_top .sector  h2 {
		font-size : 4vw;
		line-height : 1.4;
	}
	#footer .ft_top a{
		min-width: 90px;
		height: 27px;
		padding: 0 18px;
		font-size : 4vw;
	}
	#footer .ft_bottom .sector {
		display:flex;
		flex-direction : column;
		align-items:flex-start;
		gap: 15px;
		padding: 15px 5px;
	}
	#footer .ft_bottom .f_info{
		font-size: 3vw;
		line-height: 1.7;
	}
}

/******************************  sub aside  ******************************/
#sub_aside {
	/* position: fixed; */
	/* position: absolute; */
	position: relative;
	float: left;
	/* top: 140px; */
	width: 250px;
	border: 1px solid #E1E1E1;
	border-radius: 30px;
	overflow: hidden;
	z-index: 99;
}

#sub_aside > h1 {
	display: flex;
	height: 133px;
	align-items: center;
	justify-content: center;
	background: var(--main-color) url('../images/sub_menu_bg.png') no-repeat center bottom -2px;
	font-size: 24px;
	font-weight: 500;
	color: #fff;
}

#sub_aside > ul {
	padding-bottom: 45px;
}

#sub_aside > ul > li {
	padding: 25px 15px;
	border-bottom: 1px solid #E1E1E1;
}

#sub_aside > ul > li > a {
	font-size: 16px;
	font-weight: 500;
}

@media screen and (max-width:1500px) {
	#sub_aside {
		/* left: 77px; */
	}
}


@media screen and (max-width:1000px) {
	#sub_aside {
		display: none;
	}
}

/******************************  메뉴 영역 (웹접근성 적용 ver)  ******************************/
#hd .gnb_acc {
	float: right;
	margin-top: 44px;
	margin-right: 8px;
}

#hd .gnb_bg {
	display: none;
	position: absolute;
	top: 120px;
	left: 0;
	width: 100%;
	min-width: 1444px;
	height: 350px;
	background: #f4f4f4;
	z-index: 99999;
	content: "";
}

#hd .gnb_acc > li {
	position: relative;
	display: inline-block;
	margin-left: 100px;
}

#hd .gnb_acc > li > a {
	font-size: 22px;
	font-weight: bold;
	display: inline-block;
	transition: all 0.2s ease;
}
#hd .gnb_acc > li > a:hover{
	color : var(--main-color);
	transform: translateY(-4px);
}

#hd .gnb_acc > li > .snb_acc {
	display: none;
	position: absolute;
	top: 103px;
	left: calc(50% - 80px);
	width: 160px;
	z-index: 999999;
}

#hd .gnb_acc > li > .snb_acc > li {
	margin: 20px 0;
	text-align: center;
	height : 30px;
}
#hd .gnb_acc > li > .snb_acc > li > a {
	display : block;
	height : 100%;
	font-size: 18px;
	line-height: 1.25;
}
#hd .gnb_acc > li > .snb_acc > li > a:hover {
	color : var(--main-color);
	font-weight : 600;
}

@media screen and (max-width:1000px) {
	#hd .gnb_acc {
		display: none;
	}
}