@charset "UTF-8";

/********** 헤더 **********/
.header {
	display:block;
	width:100%;
	background-color:#fff;
	position:fixed;
	left:0;
	top:0;
	z-index:1250;
}

	.header img { vertical-align:top; }

	.header .header--frame {
		display:flex;
		justify-content:space-between;
		background-color:#fff;
		width:100%;
	}
		.header .header-logo {
			display:block;
		}
		.header .header-logo .logo { display:block; }
		
			.header .header-logo .logo a {
				display:block;
				width:100%;
				height:100%;
			}
		
		.header .header-side {
			display:block;
			width:auto;
		}
			.header .header-side .all {
				display:block;
				width:50px;
				height:50px;
				background-color:#fff;
				border-radius:5px;
				position:relative;
			}
				.header .header-side .all .line-mark {
					height:3px;
					background-color:#fff;
					position:absolute;
					transition:0.3s all ease-in-out;
					transform:translateX(-50%);
				}
				.header .header-side .all .line-mark.line1 {
					width:20px;
					background-color:#1e99c2;
					top:13px;
					left:calc(50% + 5px);
					
				}
				.header .header-side .all .line-mark.line2 {
					width:30px;
					background-color:#2c3539;
					top:23px;
					left:50%;
				}
				.header .header-side .all .line-mark.line3 {
					width:30px;
					background-color:#2c3539;
					top:33px;
					left:50%;
				}
			
			.header .header-side .all:hover,
			.header .header-side .all:focus {
				background:linear-gradient(135deg, #1e99c2 25%, #227997 50%, #28505e 75%, #2c363a 100%);
				border:0px;
			}
		
				.header .header-side .all:hover .line-mark.line1,
				.header .header-side .all:focus .line-mark.line1 {
					width:21px;
					background-color:#fff !important;
					top:50%;
					left:50%;
					transform:translate(-50%, -50%);
				}
			
				.header .header-side .all:hover .line-mark.line2,
				.header .header-side .all:focus .line-mark.line2 {
					opacity:0;
				}
			
				.header .header-side .all:hover .line-mark.line3,
				.header .header-side .all:focus .line-mark.line3 {
					width:21px;
					background-color:#fff !important;
					top:50%;
					transform:translate(-50%, -50%) rotate(90deg);
				}
		
			.header .header-side .all.active { background-color:#000; }
				.header .header-side .all.active .line-mark { background-color:#fff; transition:0.3s all ease-in-out; }
				.header .header-side .all.active .line-mark.line1 {
					width:21px;
					top:50%;
					left:50%;
					transform:translate(-50%, -50%) rotate(135deg);
					
				}
				.header .header-side .all.active .line-mark.line2 { display:none; }
				.header .header-side .all.active .line-mark.line3 {
					width:21px;
					top:50%;
					transform:translate(-50%, -50%) rotate(-135deg);
				} 
		
			.header .header-side .all.active:hover,
			.header .header-side .all.active:focus { background-color:#25597a; }
		
			.header .header-side .all.active:hover .line-mark,
			.header .header-side .all.active:focus .line-mark { background-color:#fff !important; }
		
			.header .header-side .all.active:hover .line-mark.line1,
			.header .header-side .all.active:focus .line-mark.line1 { transform:rotate(225deg); }
		
			.header .header-side .all.active:hover .line-mark.line3,
			.header .header-side .all.active:focus .line-mark.line3 { transform:rotate(-45deg); }
	
/********** 사이트 맵 **********/
.site-map { display:none; }
	.site-map .main-category-link .new-window,
	.site-map .sub-category-link .new-window,
	.site-map .tail-category-link .new-window { display:inline-block; }

	.site-map .main-category-link .new-window.big {
		width:18px;
		height:18px;
		margin-left:15px;
		background:url('../../img/home/common/image_icon_newWindow_big.png') no-repeat center center;
	}
	
	.site-map .sub-category-link .new-window.small {
		width:13px;
		height:13px;
		margin-left:10px;
		background:url('../../img/home/common/image_icon_newWindow_small.png') no-repeat center center;
	}
	
	.site-map .tail-category-link .new-window.small {
		width:13px;
		height:13px;
		margin-left:10px;
		background:url('../../img/home/common/image_icon_newWindow_small.png') no-repeat center center;
	}

	.site-map .site-map--close-btn {
		display:block;
		width:40px;
		height:40px;
		position:absolute;
	}
		.site-map .site-map--close-btn .line-mark {
			width:30px;
			height:2px;
			margin-left:-15px;
			background:#000;
			position:absolute;
			left:50%;
		}
		
		.site-map .site-map--close-btn .line-mark.line1 {
			margin-top:-1px;
			top:50%;
			transform:rotate(135deg);
			transition:0.3s all ease-in-out;
		}
		
		.site-map .site-map--close-btn .line-mark.line2 {
			margin-top:-1px;
			top:50%;
			transform:rotate(-135deg);
			transition:0.3s all ease-in-out;
		} 
	
	.site-map .site-map--close-btn:hover,
	.site-map .site-map--close-btn:focus { background-color:#2c3539; }
	
		.site-map .site-map--close-btn:hover .line-mark,
		.site-map .site-map--close-btn:focus .line-mark { transition:0.3s all ease-in-out; background-color:#fff; }
	
		.site-map .site-map--close-btn:hover .line-mark.line1,
		.site-map .site-map--close-btn:focus .line-mark.line1 { transform:rotate(225deg); }
		
		.site-map .site-map--close-btn:hover .line-mark.line2,
		.site-map .site-map--close-btn:focus .line-mark.line2 { transform:rotate(-45deg); }
	
	.site-map .side-menu {
		display:flex;
		justify-content:flex-start;
		width:100%;
	}
	
		.site-map .side-menu-item {
			display:block;
			align-self:center;
		}
		
		.site-map .side-menu-btn { 
			width:auto;
			font-weight:600;
			font-size:0.85em;
			color:rgba(0,0,0,.7);
		}
		
		.site-map .side-menu-btn:not(:last-of-type) {
			margin-right:10px;
			padding-right:10px;
			border-right:1px solid #ccc;
		}
	
	.site-map .title-box .m-txt {
		padding-top:10px;
		font-family:'SEBANG_Gothic_Bold', sans-serif;
		font-size:2rem;
		font-weight:500;
		letter-spacing:-.9px;
		color:#000;
	}
	
	.site-map .title-box .s-txt {
		font-weight:600;
		word-wrap:break-word;
		word-break:keep-all;
		margin-top:10px;
	}

/********** responsive - start **********/

/* Mobile */
@media screen and (min-width:1px) and (max-width:320px) {
	.header-middle .side-btn-frame { top:42px !important; }
}

/* Mobile */
@media screen and (min-width:1px) and (max-width:639px) {
	.header .header-logo .logo .pc-logo { display:none; }
	.header .header-logo .logo .mob-logo { display:block; } 
	
	/********** 헤더 - 전체메뉴 **********/
	.site-map .title-box .m-txt { font-size:1.4rem; font-weight:600; color:#000; }
	.site-map .title-box .s-txt { font-size:0.85rem; margin-top:10px; color:rgba(0,0,0,.6); }
}

/* Mobile & Tablet */
@media screen and (min-width:1px) and (max-width:1316px) {	
	.header .header--frame {
		padding:12px;
		align-items:center;
		border-bottom:1px solid #ccc;
	}
		.header .header-logo { width:calc(100% - 50px); }	
			
			.header .header-logo img {
				max-width:100%;
				vertical-align:top;
			}
		
		.header .header-middle { display:none; }
		
		.header-side .side-btn-frame .top-side-item { display:none; }
		
		
		/********** 헤더 - top - side **********/
		.header-side { display:none; }
		.header-top .all { display:none; }

		/********** 헤더 - middle - 메뉴 **********/
		.header-middle .menu-frame { display:none; }
		
	
	/********** 헤더 - 전체메뉴 **********/
	.site-map {
		width:100%;
		height:100vh;
		position:fixed;
		left:0px;
		top:0px;
		z-index:2001;
	}
	
		.site-map .site-map--mask {
			display:block;
			width:100%;
			height:100%;
			background-color:rgba(0,0,0,.3);
		}
	
		.site-map .site-map--frame { 
			width:80%;
			height:100vh;
			padding:30px;
			background-color:#fff;
			position:absolute;
			right:-80%;
			top:0;
			transition:0.3s all ease-in-out;
		}
		.site-map .site-map--frame.open { right:0; }
			.site-map.all-menu-open .site-map--frame { right:0; }
		  
			.site-map .sitemap-menu--frame { height:100%; position:relative; }
		
				.site-map .title-box {
					display:block;
					width:100%;
					padding-bottom:20px;
					border-bottom:1px solid #ccc;
				}
	
				.site-map .marker-box {
					display:block;
					position:absolute;
				}
				.site-map .marker {
					display:block;
					width:100%;
					height:100%;
					position:relative;
				}
					.site-map .marker .line {
						display:block;
						height:2px;
						position:absolute;
						background-color:#000;
					}		
						.site-map .marker .line.line1 { 
							transform:rotate(90deg);
							transition:0.3s all ease-in-out;
						}
						.site-map .marker .line.line2 { 
							transform:rotate(0deg);
							transition:0.3s all ease-in-out; 
						} 
	
	.site-map .main-category-box {
		height:calc(100% - 100px);
		overflow-y:auto;
	}
	
		.site-map .main-category-box .main-category-list {
			width:100%;
			border-bottom:1px solid #ccc;
		}
			.site-map .main-category-link {
				display:block;
				width:100%;
				padding:20px 0;
				font-weight:600;
				font-size:1.05em;
				position:relative;
			}
				.site-map .main-category-link .marker-box {
					width:20px;
					height:20px;
					right:0px;
					top:20px;
				}
					.site-map .main-category-link .marker .line {
						width:20px;
						margin-top:-1px;
						margin-left:-10px;
						background-color:#000;
						left:50%;
						top:50%;
					}
	
			.site-map .main-category-link.enter { color:#1e99c2; }
			.site-map .main-category-link.enter .marker .line { background-color:#1e99c2; }
			.site-map .main-category-link.enter .marker .line.line1 { display:none; }
			
			.site-map .main-category-link:hover,
			.site-map .main-category-link:focus {
				color:#1e99c2;
				text-decoration:none;
			}
			
	.site-map .sub-category-box {
		display:none;
		padding:10px;
		padding-bottom:20px;
		padding-top:0px;
	}
	.site-map .sub-category-list:not(:last-of-type) { margin-bottom:10px; }
	
		.site-map .sub-category-link {
			display:block;
			width:100%;
			padding-left:12px;
			background-image:url('../../img/home/common/img-dot.jpg');
			background-repeat:no-repeat;
			background-position:left 8.69px;
			position:relative;
			font-weight:600;
			font-size:0.91rem;
			line-height:1.4;
		}
			.site-map .sub-category-link .marker-box {
				width:14px;
				height:14px;
				right:0px;
				top:2px;
			}
				.site-map .sub-category-link .marker .line {
					width:14px;
					margin-left:-7px;
					margin-top:-1px;
					background-color:#000;
					left:50%;
					top:50%;
				}
	
			.site-map .sub-category-link.active { color:#5bb7a3; }
				.site-map .sub-category-link.active .marker .line { background-color:#5bb7a3; }
				.site-map .sub-category-link.active .marker .line.line1 { display:none; }
	
		.site-map .sub-category-link:hover,
		.site-map .sub-category-link:focus {
			color:#5bb7a3;
			text-decoration:none;
		}
	
	
	.site-map .tt { display:block; width:100%; }
	
	.site-map .site-map--close-btn { top:0; right:0px; }
	
	.site-map .tail-category-box {
		display:none;
		padding-left:15px;
		padding-bottom:15px;
		margin-top:10px;
	}
	.site-map .tail-category-list:not(:last-of-type) { margin-bottom:10px; }
		.site-map .tail-category-link {
			display:block;
			width:100%;
			font-weight:600;
			font-size:0.85rem;
			color:rgba(0,0,0,.8);
		}
}

/* Tablet */
@media screen and (min-width:640px) and (max-width:1316px) {
	.header .header-logo .logo { width:254px; }
	
	/********** 헤더 - 전체메뉴 **********/
	.site-map .title-box .m-txt { font-size:1.8rem; font-weight:600; color:#000; }
}

/* Tablet & Pc */
@media screen and (min-width:640px) {
	.header .header-logo .logo .pc-logo { display:block; }
	.header .header-logo .logo .mob-logo { display:none; }
}

/* Pc */
@media screen and (min-width:1317px) {	
	/********** 헤더 - top **********/
	.header {
		background-color:#fff;
		border-bottom:1px solid #ccc;
	}
	
		.header .header--frame {
			align-items:center;
			width:1300px;
			margin-left:auto;
			margin-right:auto;
		}			
			.header .header-logo .logo {
				/*
				width:254px;
				height:29px;
				*/
			}
		
			.header-middle { 
				display:block;
				width:auto;
			}
				.header-middle--navi { 
					display:flex;
					justify-content:flex-start;
					width:100%;
				}
					.header-middle .menu-frame {
						display:block;
						width:100%;
					}
						
						.header-middle .main-menu {
							display:flex;
							justify-content:flex-start;
							width:100%;
						}
							.header-middle .main-menu .menu-list { 
								display:block;
								min-width:130px;
								flex:1;
								position:relative;
							}
							
							.header-middle .main-menu .menu-list.on { background-color:#fff; }

								.header-middle .main-menu .menu-link { 
									display:block;
									width:100%;
									padding:40.3px 0px;
									position:relative;
									text-align:center;
									font-family:'SEBANG_Gothic_Regular', sana-serif;
									font-size:1.15rem;
									font-weight:400;
									letter-spacing:-.6px;
									white-space: nowrap;
									color:#000;
									transition:0.3s all ease-in-out;
								}
								
								.header-middle .main-menu .menu-link.other-link { padding:38.3px 0px; }
								
								.header-middle .main-menu .menu-link:hover,
								.header-middle .main-menu .menu-link:focus,
								.header-middle .main-menu .menu-link.enter,
								.header-middle .main-menu .menu-link.active { text-decoration:none; }
								
								.header-middle .main-menu .menu-link.enter,								
								.header-middle .main-menu .menu-link.active { color:#0a663f; }
								
								.header-middle .main-menu .menu-link .active-line {
									display:block;
									width:0px;
									height:3px;
									background-color:#42df9e;
									position:absolute;
									left:50%;
									bottom:-1px;
									transition:0.3s all ease-in-out;
									transform:translateX(-50%);
								}
								
								.header-middle .main-menu .menu-link.enter .active-line,
								.header-middle .main-menu .menu-link.active .active-line { width:100%; }						
								
								.header-middle .main-menu .menu-link.active.enter { color:#0a663f; }
								.header-middle .main-menu .menu-link.active.enter .active-line { background-color:#0a663f; }
								
							.header-middle .sub-nav {
								display:none;
								width:100%;
								padding:10px;
								background-color:#fff;
								position:absolute;
								top:100px;
								-webkit-box-shadow:3px 3px 0 rgba(0, 0, 0, .3);
								box-shadow:3px 3px 0 rgba(0, 0, 0, .3);
							}
							
							.header-middle .sub-nav.active { border-color:#fff; }
							.header-middle .sub-nav .sub-nav-frame { display:block; width:100%; }
							.header-middle .sub-nav .sub-nav-list { display:block; width:100%; }
							.header-middle .sub-nav .sub-nav-list:not(:last-of-type) { margin-bottom:8px; }
							.header-middle .sub-nav .sub-nav-link { 
								display:block;
								width:100%;
								padding:10px;
								font-weight:600;
								font-size:0.85rem;
								color:#000;
								text-align:center;
								transition:0.3s all ease-in-out;
								word-wrap:break-word;
								word-break:keep-all;
								line-height:1.4;
							}
							
							.header-middle .sub-nav .sub-nav-link:hover,
							.header-middle .sub-nav .sub-nav-link:focus,
							.header-middle .sub-nav .sub-nav-link.active { 
								background-color:#1a995f;
								color:#fff;
								text-decoration:none;
							}

							.header-dropmenu--mask {
								display:none;
								width:100%;
								min-height:100%;
								background-color:rgba(0,0,0,.6);
								border-bottom:1px solid #ccc;
								position:fixed;
								top:0;
								left:0;
								z-index:104;
							}

							.header-middle .main-menu .new-window,
							.header-middle .sub-nav .new-window { display:inline-block; }
						
							.header-middle .main-menu .new-window.big { 
								width:18px;
								height:18px;
								margin-left:15px;
								background:url('../../img/home/common/image_icon_newWindow_big.png') no-repeat center center;
							}
							
							.header-middle .sub-nav .new-window.small {
								width:13px;
								height:13px;
								margin-left:10px;
								background:url('../../img/home/common/image_icon_newWindow_small.png') no-repeat center center;
							}
							
							.header-middle .sub-nav-link:hover .new-window.small,
							.header-middle .sub-nav-link:focus .new-window.small { background:url('../../img/home/common/image_icon_newWindow_small_white.png') no-repeat center center; }

					.header.sub-head { border-bottom:1px solid #ccc; }
					
				.header-side .side-btn-frame {
					display:flex;
					justify-content:flex-end;
					align-items:center;
					width:auto;
				}
					.header-side .side-btn-frame .top-side-item {
						display:block;
						width:auto;
						margin-right:20px;
						font-weight:600;
						font-size:0.85rem;
						color:rgba(0,0,0,.6);
					}
			
			
	/********** 사이트 맵 **********/
	.site-map { 
		width:100%;
		height:100%;
		background-color:#fff;
		position:fixed;
		left:0;
		top:0;
		z-index:1251;
	}
		.site-map .site-map--mask { display:none; }
	
		.site-map .site-map--frame {
			display:block;
			width:100%;
			max-width:1300px;
			height:100%;
			margin-left:auto;
			margin-right:auto;
			padding:50px 0;
			position:relative;
		}
		
		.site-map .title-box {
			display:block;
			width:100%;
			padding-bottom:65px;
			position:relative;
		}
	
			.site-map .site-map--title {
				display:flex;
				justify-content:flex-start;
				 width:100%;
			}
			.site-map .site-map--title .m-txt { align-self:flex-end; }

		.site-map .site-map--close-btn { top:20px; right:0; }

		.site-map .sitemap-menu-frame { display:block; width:100%; }

			.site-map .main-category-box {
				display:flex;
				justify-content:flex-start;
				flex-wrap:wrap; 
				width:100%;
				max-height:calc(100vh - 248px);
				overflow-y:auto; 
			}
				.site-map .main-category-list { display:block; width:23.5%; }
				.site-map .main-category-list:not(:last-of-type) { margin-right:2%; }
				.site-map .main-category-list:nth-of-type(4n) { margin-right:0; }
				.site-map .main-category-list:nth-of-type(n+5) { margin-top:40px; }
		
					.site-map .main-category-link {
						display:block;
						width:100%;
						transition:0.3s all ease-in-out;
					}
						.site-map .main-category-link .tt {
							display:block;
							padding:10px;
							padding-bottom:20px;
							border-bottom:2px solid #000;
							font-family:'SEBANG_Gothic_Bold', sans-serif;
							font-size:1.21rem;
							letter-spacing:-0.6px;
							color:#000;
							transition:0.3s all ease-in-out;
						}
			
				.site-map .main-category-link:hover,
				.site-map .main-category-link:focus { text-decoration:none; }
				
				.site-map .main-category-link:hover .tt,
				.site-map .main-category-link:focus .tt,
				.site-map .main-category-link .tt.enter,
				.site-map .main-category-link .tt.enter {
					border-color:#3d956a;
					color:#3d956a;
				}
			
	
			.site-map .sub-category-box {
				display:block !important;
				width:100%;
				padding:21px 10px;
			}
				.site-map .sub-category-list {
					display:block;
					width:100%;
					border-bottom:1px dashed #ccc;
				}
				.site-map .sub-category-list:not(:last-of-type) {
					margin-bottom:15px;
				}
					.site-map .sub-category-link {
						display:block;
						padding-bottom:15px;
						transition:0.3s all ease-in-out;
					}
						.site-map .sub-category-link .tt {
							font-size:0.91rem;
							font-weight:600;
							color:rgba(0,0,0,1);
						}
					
					.site-map .sub-category-link:hover,
					.site-map .sub-category-link:focus { text-decoration:none; }
				
						.site-map .sub-category-link:hover .tt,
						.site-map .sub-category-link:focus .tt { color:#3d956a; }
		
		.site-map .tail-category-box {
			display:block !important;
			width:100%;
			margin-bottom:10px;
			padding-left:10px;
		}
			.site-map .tail-category-list { display:block; width:100%; }
			.site-map .tail-category-list:not(:last-of-type) { margin-bottom:7px; }
				.site-map .tail-category-link {
					display:bloock;
					width:100%;
					font-weight:600;
					font-size:0.85rem;
					color:rgba(0,0,0,.4);
				}
				.site-map .tail-category-link:hover,
				.site-map .tail-category-link:focus { color:rgba(0,0,0,1); }
	
	.site-map .side-menu { margin-top:44px; position:absolute; bottom:50px; left:0; }
}

/********** responsive - end **********/

div:where(.swal2-container) { z-index:1700 !important; }