*{
	box-sizing:border-box;
}

.site_header{
	position:relative;
	z-index:100;
	width:100%;
	background:#fff;
	border-bottom:1px solid #e5e5e5;
	font-family:'Pretendard','Noto Sans KR','Malgun Gothic',sans-serif;
}

.site_header_inner{
	width:100%;
	max-width:1320px;
	margin:0 auto;
	padding:0 20px;
}

.site_header_top{
	background:#f8f8f8;
	border-bottom:1px solid #eee;
}

.site_top_links{
	height:36px;
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:14px;
}

.site_top_links a{
	position:relative;
	font-size:13px;
	color:#666;
	text-decoration:none;
}

.site_top_links a:hover{
	color:#111;
}

.site_top_links a + a:before{
	content:"";
	position:absolute;
	left:-8px;
	top:50%;
	width:1px;
	height:10px;
	background:#ccc;
	transform:translateY(-50%);
}

.site_header_main{
	background:#fff;
}

.site_header_flex{
	height:82px;
	display:flex;
	align-items:center;
	justify-content:space-between;
}

.site_logo{
	margin:0;
	padding:0;
}

.site_logo a{
	display:block;
}

.site_logo img{
	display:block;
	max-width:180px;
	max-height:54px;
}

.pc_nav{
	display:block;
}

.pc_nav > ul{
	display:flex;
	align-items:center;
	gap:0;
	margin:0;
	padding:0;
	list-style:none;
}

.pc_nav > ul > li{
	position:relative;
}

.pc_nav > ul > li > a{
	display:flex;
	align-items:center;
	justify-content:center;
	height:82px;
	padding:0 28px;
	font-size:17px;
	font-weight:600;
	color:#222;
	text-decoration:none;
	white-space:nowrap;
}

.pc_nav > ul > li:hover > a{
	color:#0057d9;
}

.pc_sub{
	position:absolute;
	left:50%;
	top:82px;
	width:170px;
	margin:0;
	padding:10px 0;
	list-style:none;
	background:#fff;
	border:1px solid #e5e5e5;
	box-shadow:0 8px 24px rgba(0,0,0,0.08);
	transform:translateX(-50%);
	opacity:0;
	visibility:hidden;
	transition:all .2s ease;
}

.pc_nav > ul > li:hover .pc_sub{
	opacity:1;
	visibility:visible;
}

.pc_sub li a{
	display:block;
	padding:11px 16px;
	font-size:14px;
	color:#555;
	text-decoration:none;
}

.pc_sub li a:hover{
	background:#f5f8ff;
	color:#0057d9;
}

.mobile_menu_btn{
	display:none;
	width:42px;
	height:42px;
	border:0;
	background:none;
	cursor:pointer;
	padding:8px;
}

.mobile_menu_btn span{
	display:block;
	width:24px;
	height:2px;
	margin:6px auto;
	background:#222;
	border-radius:2px;
}

.mobile_dim{
	display:none;
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.55);
	z-index:998;
}

.mobile_dim.active{
	display:block;
}

.mobile_nav{
	position:fixed;
	right:-320px;
	top:0;
	width:300px;
	max-width:85%;
	height:100%;
	background:#fff;
	z-index:999;
	transition:right .25s ease;
	overflow-y:auto;
}

.mobile_nav.active{
	right:0;
}

.mobile_nav_head{
	height:62px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:0 18px;
	border-bottom:1px solid #eee;
}

.mobile_nav_head strong{
	font-size:18px;
	color:#222;
}

.mobile_nav_head button{
	border:0;
	background:none;
	font-size:34px;
	line-height:1;
	cursor:pointer;
	color:#222;
}

.mobile_top_links{
	display:flex;
	padding:14px 18px;
	gap:8px;
	border-bottom:1px solid #eee;
}

.mobile_top_links a{
	flex:1;
	display:flex;
	align-items:center;
	justify-content:center;
	height:34px;
	border:1px solid #ddd;
	border-radius:5px;
	font-size:13px;
	color:#333;
	text-decoration:none;
	background:#fafafa;
}

.mobile_menu{
	margin:0;
	padding:0;
	list-style:none;
}

.mobile_menu > li{
	border-bottom:1px solid #eee;
}

.mobile_depth1{
	width:100%;
	height:52px;
	padding:0 18px;
	border:0;
	background:#fff;
	text-align:left;
	font-size:16px;
	font-weight:600;
	color:#222;
	cursor:pointer;
	position:relative;
}

.mobile_depth1:after{
	content:"+";
	position:absolute;
	right:18px;
	top:50%;
	transform:translateY(-50%);
	font-size:20px;
	color:#999;
}

.mobile_menu > li.active .mobile_depth1:after{
	content:"-";
}

.mobile_depth2{
	display:none;
	margin:0;
	padding:8px 0;
	list-style:none;
	background:#f8f8f8;
	border-top:1px solid #eee;
}

.mobile_menu > li.active .mobile_depth2{
	display:block;
}

.mobile_depth2 li a{
	display:block;
	padding:11px 28px;
	font-size:14px;
	color:#555;
	text-decoration:none;
}

.mobile_depth2 li a:hover{
	color:#0057d9;
}

@media screen and (max-width:900px){
	.site_header_top{
		display:none;
	}

	.site_header_flex{
		height:68px;
	}

	.site_logo img{
		max-width:145px;
		max-height:44px;
	}

	.pc_nav{
		display:none;
	}

	.mobile_menu_btn{
		display:block;
	}
}





*{
	box-sizing:border-box;
}

/************************************************
 *
 * SITE MAP LAYER
 *
 ************************************************/

.sitemap_layer{
	display:none;
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.88);
	z-index:99999;
	overflow-y:auto;
	-webkit-overflow-scrolling:touch;
}

.sitemap_layer.active{
	display:block;
	animation:sitemapFade .25s ease;
}

@keyframes sitemapFade{
	from{
		opacity:0;
	}
	to{
		opacity:1;
	}
}


/************************************************
 *
 * CLOSE BUTTON
 *
 ************************************************/

.sitemap_layer_close{
	position:fixed;
	right:35px;
	top:28px;
	width:54px;
	height:54px;
	border:1px solid rgba(255,255,255,.25);
	border-radius:50%;
	background:rgba(255,255,255,.08);
	backdrop-filter:blur(8px);
	color:#fff;
	font-size:34px;
	line-height:50px;
	text-align:center;
	cursor:pointer;
	transition:.25s;
	z-index:999999;
}

.sitemap_layer_close:hover{
	background:#fff;
	color:#111;
	transform:rotate(90deg);
}


/************************************************
 *
 * CONTENT
 *
 ************************************************/

.sitemap_wrap{
	width:100%;
	min-height:100vh;
	padding:90px 20px 80px;
	background:
	radial-gradient(circle at left top,rgba(0,110,255,.20),transparent 35%),
	radial-gradient(circle at right bottom,rgba(255,255,255,.06),transparent 40%);
}

.sitemap_inner{
	width:100%;
	max-width:1320px;
	margin:0 auto;
}


/************************************************
 *
 * TITLE
 *
 ************************************************/

.sitemap_title_box{
	text-align:center;
	margin-bottom:70px;
}

.sitemap_subtitle{
	margin:0 0 12px;
	font-size:13px;
	font-weight:700;
	color:#69a7ff;
	letter-spacing:5px;
}

.sitemap_title_box h2{
	margin:0;
	font-size:46px;
	font-weight:800;
	color:#fff;
	letter-spacing:-1px;
}

.sitemap_desc{
	margin-top:18px;
	font-size:15px;
	color:#bcbcbc;
	line-height:1.8;
}


/************************************************
 *
 * GRID
 *
 ************************************************/

.sitemap_grid{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:28px;
}


/************************************************
 *
 * CARD
 *
 ************************************************/

.sitemap_group{
	position:relative;
	padding:32px 30px;
	background:rgba(255,255,255,.06);
	border:1px solid rgba(255,255,255,.12);
	border-radius:18px;
	backdrop-filter:blur(12px);
	transition:.25s;
	overflow:hidden;
}

.sitemap_group:before{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:4px;
	background:linear-gradient(90deg,#0066ff,#64a7ff);
}

.sitemap_group:hover{
	transform:translateY(-8px);
	border-color:rgba(100,167,255,.45);
	box-shadow:0 20px 50px rgba(0,0,0,.35);
}


/************************************************
 *
 * DEPTH1
 *
 ************************************************/

.sitemap_group h3{
	margin:0 0 24px;
	padding-bottom:18px;
	border-bottom:1px solid rgba(255,255,255,.12);
}

.sitemap_group h3 a{
	color:#fff;
	font-size:24px;
	font-weight:800;
	text-decoration:none;
	transition:.2s;
}

.sitemap_group h3 a:hover{
	color:#69a7ff;
}


/************************************************
 *
 * DEPTH2
 *
 ************************************************/

.sitemap_depth2{
	margin:0;
	padding:0;
	list-style:none;
}

.sitemap_depth2>li{
	margin-bottom:18px;
}

.sitemap_depth2>li:last-child{
	margin-bottom:0;
}

.sitemap_depth2>li>a{
	position:relative;
	display:block;
	padding-left:16px;
	font-size:16px;
	font-weight:600;
	color:#efefef;
	text-decoration:none;
	line-height:1.6;
	transition:.2s;
}

.sitemap_depth2>li>a:before{
	content:"";
	position:absolute;
	left:0;
	top:11px;
	width:6px;
	height:6px;
	background:#69a7ff;
	border-radius:50%;
}

.sitemap_depth2>li>a:hover{
	color:#69a7ff;
	padding-left:20px;
}


/************************************************
 *
 * DEPTH3
 *
 ************************************************/

.sitemap_depth3{
	margin:12px 0 0 16px;
	padding:12px 0 0 18px;
	list-style:none;
	border-left:1px solid rgba(255,255,255,.15);
}

.sitemap_depth3 li{
	margin-bottom:10px;
}

.sitemap_depth3 li:last-child{
	margin-bottom:0;
}

.sitemap_depth3 li a{
	display:block;
	font-size:14px;
	color:#b5b5b5;
	text-decoration:none;
	line-height:1.5;
	transition:.2s;
}

.sitemap_depth3 li a:before{
	content:"— ";
	color:#666;
}

.sitemap_depth3 li a:hover{
	color:#fff;
	padding-left:4px;
}


/************************************************
 *
 * SCROLL BAR
 *
 ************************************************/

.sitemap_layer::-webkit-scrollbar{
	width:10px;
}

.sitemap_layer::-webkit-scrollbar-thumb{
	background:#555;
	border-radius:20px;
}

.sitemap_layer::-webkit-scrollbar-track{
	background:#111;
}


/************************************************
 *
 * TABLET
 *
 ************************************************/

@media (max-width:1100px){

	.sitemap_grid{
		grid-template-columns:repeat(2,1fr);
	}

}


/************************************************
 *
 * MOBILE
 *
 ************************************************/

@media (max-width:768px){

	.sitemap_wrap{
		padding:70px 16px 50px;
	}

	.sitemap_layer_close{
		right:15px;
		top:15px;
		width:46px;
		height:46px;
		line-height:42px;
		font-size:28px;
	}

	.sitemap_title_box{
		margin-bottom:40px;
	}

	.sitemap_subtitle{
		font-size:12px;
	}

	.sitemap_title_box h2{
		font-size:32px;
	}

	.sitemap_desc{
		font-size:14px;
		line-height:1.7;
	}

	.sitemap_grid{
		grid-template-columns:1fr;
		gap:18px;
	}

	.sitemap_group{
		padding:24px 22px;
		border-radius:14px;
	}

	.sitemap_group h3{
		margin-bottom:20px;
		padding-bottom:15px;
	}

	.sitemap_group h3 a{
		font-size:21px;
	}

	.sitemap_depth2>li>a{
		font-size:15px;
	}

	.sitemap_depth3{
		margin-left:12px;
		padding-left:15px;
	}

	.sitemap_depth3 li a{
		font-size:13px;
	}

}




.indexmainbody {
	margin:0;
	padding:0;
	width:100%;
}
.indexmainbody_1 {
	margin:0;
	padding:0;
	width:100%;
	font-family:"Pretendard","Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
	font-size:40pt;
	font-weight:600;
	line-height:2.6;
	color:#222;
	background:#fff;
	word-break:keep-all;
	overflow-wrap:break-word;
	text-align:center;
}
.indexmainbody_2 {
	margin:0;
	padding:0;
	width:100%;
	font-family:"Pretendard","Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
	font-size:30pt;
	font-weight:600;
	line-height:1.6;
	color:#222;
	background:#fff;
	word-break:keep-all;
	overflow-wrap:break-word;
	text-align:center;
}
.indexmainbody_3 {
	margin:0;
	padding:0;
	width:100%;
	text-align:center;
}
.indexmainbody_3 img {
	max-width:100%;
	border:0;
}
@media screen and (max-width:768px){
	.indexmainbody_1 {
		margin:0;
		padding:0;
		width:100%;
		font-family:"Pretendard","Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
		font-size:22pt;
		font-weight:600;
		line-height:2.6;
		color:#222;
		background:#fff;
		word-break:keep-all;
		overflow-wrap:break-word;
		text-align:center;
	}
	.indexmainbody_2 {
		margin:0;
		padding:0;
		width:100%;
		font-family:"Pretendard","Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
		font-size:17pt;
		font-weight:600;
		line-height:1.6;
		color:#222;
		background:#fff;
		word-break:keep-all;
		overflow-wrap:break-word;
		text-align:center;
	}
}


