@charset "UTF-8";

/********** 헤더 **********/
.header {
	display:block;
	width:100%;
	position:fixed;
	left:0;
	top:0;
	z-index:1250;
}

.header.mouseEnter,
.header.sub-head,
.header.bgColorChange { background-color:#fff; }
	
	.header img { vertical-align:top; }

	.header .header--frame {
		display:flex;
		justify-content:space-between;
		width:100%;
	}
		.header .header-logo {
			display:block;
		}
		.header .header-logo .logo {
			display:block;
			background-image:url('../../img/home/page/common/image_logo_white.png');
			background-repeat:no-repeat;
			background-position:left center;
			transition:0.3s all ease-in-out;
		}
		
		.header .header-logo .logo a {
			display:block;
			width:100%;
			height:100%;
		}
		
		.header.sub-head .header-logo .logo,
		.header.mouseEnter .header-logo .logo,
		.header.bgColorChange .header-logo .logo { background-image:url('../../img/home/page/common/image_logo_color.png'); }
		
		.header .header-side {
			display:block;
			width:auto;
		}
			
				.header .header-side .all {
					display:flex;
					justify-content:center;
					align-items:center;
					width:100px;
					height:100px;
					position:relative;
					transition:0.3s all ease-in-out;
				}
					.header .header-side .all .dot-box {
						display:flex;
						justify-content:space-between;
						flex-direction:column;
						flex-wrap:wrap;
						width:24px;
						height:24px;
					}
						.header .header-side .all .dot-box .item {
							display:flex;
							justify-content:space-between;
							width:100%;
						}
					
							.header .header-side .all .dot-box .item-dot {
								display:block;
								width:4px;
								height:4px;
								background-color:#fff;
								border-radius:2px;
								transition:0.3s all ease-in-out;
							}
							
				.header .header-side .all:hover,
				.header .header-side .all:focus { transform:rotate(180deg); }
							
/********** 사이트 맵 **********/
.site-map { display:none; }
	.site-map .menu-box { width:100%; }

	.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:#01f997; }
	
		.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:'GmarketSansMedium', sans-serif;
		font-size:2rem;
		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 {
		max-width:70%;
		width:100%;
	}
		
	/********** 헤더 - 전체메뉴 **********/
	.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 { align-items:center; }
	
		.header .header-logo {
			width:100%;
			padding-left:20px;
		}
	
		.header .header-logo .logo { height:54px; }
		
		.header .header-middle { 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:#196740; }
			.site-map .main-category-link.enter .marker .line { background-color:#196740; }
			.site-map .main-category-link.enter .marker .line.line1 { display:none; }
			
			.site-map .main-category-link:hover,
			.site-map .main-category-link:focus {
				color:#38a36e;
				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:#17739e; }
				.site-map .sub-category-link.active .marker .line { background-color:#17739e; }
				.site-map .sub-category-link.active .marker .line.line1 { display:none; }
	
		.site-map .sub-category-link:hover,
		.site-map .sub-category-link:focus {
			color:#005469;
			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) {	
	/********** 헤더 - 전체메뉴 **********/
	.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 {
		width:124px;
		height:99px;
	}
}

/* Pc */
@media screen and (min-width:1317px) {	
	/********** 헤더 - top **********/
	.header {
		background-color:transparent;
		transition:0.3s all ease-in-out;
	}
		.header .header-logo .pc-logo { display:block; }
		.header .header-logo .mob-logo { display:none; }
	
		.header .header--frame {
			padding:0 100px 0 25px;
			background-color:transparent;
		}	
		
			.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:120px;
								flex:1;
							}
							
							.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:'GmarketSansMedium', sans-serif;
									font-size:1.15rem;
									font-weight:400;
									letter-spacing:-.6px;
									white-space: nowrap;
									color:#fff;
									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 { color:#006934; } 
								
								.header-middle .main-menu .menu-link.active { color:#006934; }
								
								.header-middle .main-menu .menu-link .active-line {
									display:block;
									width:0px;
									height:3px;
									background-color:#006934;
									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:#006934; }
								.header-middle .main-menu .menu-link.active.enter .active-line { background-color:#006934; }
								
							.header-middle .sub-nav {
								display:none;
								width:100%;
								padding:10px;
								background-color:#fff;
							}
							
							.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.91rem;
								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:#006934;
								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 .header-middle .main-menu .menu-link,
						.header.mouseEnter .header-middle .main-menu .menu-link,
						.header.bgColorChange .header-middle .main-menu .menu-link { color:#000; }
							
					.header.sub-head { border-bottom:1px solid #ccc; }
	
			.header .header-side .side-btn-frame {
				position:absolute;
				right:0;
				top:0;
			}
			
	/********** 사이트 맵 **********/
	.site-map { 
		width:100%;
		height:100%;
		position:fixed;
		left:0;
		top:0;
		z-index:1251;
	}
		.site-map .site-map--mask {
			display:block;
			width:100%;
			height:100%;
			background-color:rgba(0,0,0,.8);
			backdrop-filter:blur(5px);
			position:absolute;
			left:0;
			top:0;
		}
	
		.site-map .site-map--frame {
			display:block;
			width:100%;
			height:100%;
			padding:50px;
			position:relative;
			overflow-y:auto;
		}		
			.site-map .site-map--close-btn .line-mark { background-color:#fff; }
		
		.site-map .title-box {
			display:block;
			width:100%;
			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;
				color:#fff;
			}

		.site-map .site-map--close-btn { top:0px; right:0; }

		.site-map .sitemap-menu--frame {
			display:block;
			width:100%;
			height:100%;
		}
			.site-map .menu-box {
				display:flex;
				justify-content:flex-start;
				align-items:center;
				width:100%;
				height:calc(100% - 42px);
				overflow-y:auto; 
			}

			.site-map .main-category-box {
				display:flex;
				justify-content:flex-start;
				flex-wrap:wrap; 
				width:100%;
				max-height:calc(100vh - 248px);
			}
				.site-map .main-category-list {
					flex:1;
					display:block;
					width:auto;
					position:relative;
				}
				.site-map .main-category-list:not(:last-of-type) { margin-right:2%; }
				
				.site-map .main-category-list:before {
					content:"";
					display:block;
					width:10px;
					height:10px;
					background-color:#fff;
					position:absolute;
					left:10px;
					top:-2.6rem;
					opacity:0;
					transition:0.3s all ease-in-out;
				}		
					.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;
							font-family:'GmarketSansMedium', sans-serif;
							font-size:1.5rem;
							letter-spacing:-0.6px;
							color:#fff;
							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-list.enter:before {
				top:-20px;
				opacity:1;
				transform:rotate(45deg);
				background-color:#01f997;
			}
	
			.site-map .sub-category-box {
				display:block !important;
				width:100%;
				padding:21px 10px;
			}
				.site-map .sub-category-list {
					display:block;
					width:100%;
				}
				.site-map .sub-category-list:not(:last-of-type) { margin-bottom:15px; }
				
					.site-map .sub-category-link {
						display:block;
						transition:0.3s all ease-in-out;
					}
						.site-map .sub-category-link .tt {
							font-size:1rem;
							font-weight:600;
							color:#fff;
						}
					
					.site-map .sub-category-link:hover,
					.site-map .sub-category-link:focus { text-decoration:none; }
				
						.site-map .sub-category-list:not(.active) .sub-category-link .tt,
						.site-map .sub-category-list:not(.active) .sub-category-link .tt { opacity:0.4; }
						
		.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%;
				margin-top:8px;
			}
			.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:1rem;
					color:rgba(255,255,255,.4);
				}
				.site-map .tail-category-link:hover,
				.site-map .tail-category-link:focus { color:rgba(255,255,255,1); }
	
	.site-map .side-menu { margin-top:44px; position:absolute; bottom:50px; left:0; }
}

/********** responsive - end **********/

div:where(.swal2-container) { z-index:1700 !important; }