@charset "utf-8";

/* 공통 */
.hid,
.hide_text{
  display: none;
}

/* main_notice_pop */
.main_notice_pop {
display: flex;
flex-wrap: wrap;
position: absolute;
top: 142px;
right: 0;
left: 0;
z-index: 9999;
}
.main_notice_pop .pop_con {
position: absolute;
width: 400px;
z-index: 1;
}
.main_notice_pop .pop_con .img{
  background: #C8C8C8;
}
.main_notice_pop .pop_con:nth-child(2) .img{
  background: #D9D9D9;
}
.main_notice_pop .pop_con .img img {
width: 100%;
height: 100%;
}
.main_notice_pop .pop_con .btns {
display: flex;
background: #1d1d1d;
}
.main_notice_pop .pop_con .btns .btn_invisible {
flex: 1;
position: relative;
padding: 10px 0;
border: none;
background: #2d2d2d;
color: #fff;
font-size: 17px;
line-height: 26px;
font-weight: 500;
letter-spacing: -0.8px;
}
.main_notice_pop .pop_con .btns .btn_close {
flex: 1;
position: relative;
padding: 10px 0;
border: none;
background: #1d1d1d;
color: #fff;
font-size: 17px;
line-height: 26px;
font-weight: 500;
letter-spacing: -0.8px;
}
.main_notice_pop .pop_con .btns button span {
display: inline-block;
vertical-align: top;
}
/* main_notice_pop */


/* header */
#header{
	position:relative; z-index:102; height: 143px;
	border-bottom: solid 1px #D8D8D8; background-color: #fff;
}
#contents{position:relative; z-index:101;}
#content.subpage {background: #fff; padding-top: 0px;}
#footer{position:relative; z-index:10; background:#292E34; clear: both;}

#mHeader,
.m_search_wrap,
.m_allmenu_wrap{
	display: none;
}

body:has(#wrap.west){
	background: #F3FCFE;
}
/* header : 20241021 수정 */
#header:before{
	content: '';
	position: absolute;
	top: 80px;
	left: 0;
	width: 100%;
	height: 1px;
	border-bottom: solid 1px #D8D8D8;
}
.header_inner{
	position:relative;
	max-width:1280px;
	height:80px;
	margin:0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.main_logo a{
	/* display: inline-block; */
	display: flex;
	align-items: center;
}


.h_util li{
	float:left;
	margin-left:16px;
}
.h_util li + li{
	position: relative;
}
.h_util li + li::before{
	content: '';
	display: block;
	width: 1px;
	height: 16px;
	background-color: #D8D8D8;
	position: absolute;
	left: -8px;
	top: 50%;
	transform: translateY(-50%);
}
.h_util li a{
	font-size:14px;
	display: flex;
	align-items: center;
	gap: 4px;
}
.h_util li a span{
	font-size: 14px;
	line-height: 150%;
}
.h_util li a span.ico{
	display: inline-block;
	width: 32px;
	height: 32px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.h_util li a span.ico.ico_login{
	background-image: url(../images/main/ico_login.svg);
	transform: translateY(1px);
}
.h_util li a span.ico.ico_menu{
	background-image: url(../images/main/ico_menu.svg);
}
.h_util li:hover a span{
	text-decoration: underline;
	text-underline-offset: 3px;
}
.h_util li:hover a span.ico.ico_login{
	background-image: url(../images/main/ico_login_blue.svg);
}
.h_util li:hover a span.ico.ico_menu{
	background-image: url(../images/main/ico_menu_blue.svg);
}
.h_util li a span.ico.ico_logout{
	background-image: url(../images/main/ico_login.svg);
	transform: translateY(1px);
}
.h_util li a span.ico.mypsge{
	background-image: url(../images/main/ico_mypage.svg);
	transform: translateY(1px);
}
.h_util li:hover a span.ico.ico_logout{
	background-image: url(../images/main/ico_login_blue.svg);
}
.search_wrap{
	width: 290px;
	height: 44px;
}
.search_wrap .search_inner{
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	overflow: hidden;
	border-radius: 40px;
	border: 4px solid transparent;
	border-radius: 40px; overflow: hidden;
}
.search_wrap.east .search_inner{
	background: linear-gradient(transparent, transparent) padding-box,
				linear-gradient(to right, #2C99F8, #10BB98) border-box;
}
.search_wrap.west .search_inner{
	background: linear-gradient(transparent, transparent) padding-box,
				linear-gradient(to right, #2C99F8, #003985) border-box;
}
.search_wrap .search_inner .search_list{
	display:block; position:relative;
}
.search_wrap .search_inner .search_list input{
	width:calc(100% - 28px);
	height: 36px;
	padding: 0px 28px 0px 20px;
	border-radius: 44px 0 0 44px;
	border:0; outline: none;
	color: #1D1D1D;
}
.search_wrap .search_inner .search_list input::placeholder{
	color: #1D1D1D;
}
.search_wrap .search_inner .search_list button{
	position:absolute;
	right: 0px;
	top: 50%;
	transform: translateY(-50%);
	width: 56px;
	height: 44px;
	font-size:0;
	border-radius: 44px;
}
.search_wrap.east .search_inner .search_list button{
	background:#10BB98 url(../images/main/h_search_btn.svg) no-repeat center center;
}
.search_wrap.west .search_inner .search_list button{
	background:#003985 url(../images/main/h_search_btn.svg) no-repeat center center;
}
.search_btn{
	display: none;
}

.search_wrap .search_inner .search_list input:hover,
.search_wrap .search_inner .search_list input:focus,
.search_wrap .search_inner .search_list input:focus-visible{
	transition: all 0.3s;
	background: #E6F5F2;
}
.search_wrap.west .search_inner .search_list input:hover,
.search_wrap.west .search_inner .search_list input:focus,
.search_wrap.west .search_inner .search_list input:focus-visible{
	transition: all 0.3s;
	background: #E5F0FF;
}
.gnb_wrap{
	background-color: #fff;
}
#gnb {
	display: flex;
	max-width:1280px; height:62px; margin:0 auto; box-sizing:border-box;
}
#gnb > li{
	flex: 1;
	height: 62px;
}
#gnb > li > a {
	width: 100%;
	height: 100%;
	position: relative;
	display: flex;
}
#gnb > li > a > span {
	width: 100%;
	height: 100%;
	color: #000;
	font-size: 20px;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
}
#gnb > li.active::before {
	content: "";
	position: fixed;
	top: 142px;
	right: 0;
	left: 0;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: -1;
	pointer-events: none;
}
#gnb > li.active > a > span,
#gnb > li > a:hover > span,
#gnb > li > a:focus > span {
	color: #003985;
	font-weight: 700;
}
#gnb > li.active > a > span::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 8px;
	height: 8px;
	background-color: #003985;
	transform: translate(-50%, 50% );
	border-radius: 50%;
	z-index: 9;
}
#gnb > li > .depth_box {
position: absolute;
top: 0;
left: -9999px;
height: 1px;
margin-top: -1px;
opacity: 0.01;
overflow: hidden;
border-top: 1px solid #D8D8D8 ;
}
#gnb > li.active > .depth_box {
position: absolute;
top: 100%;
left: 0;
right: 0;
height: auto;
margin: 0;
background: #fff;
opacity: 1;
}

#gnb > li.active > .depth_box .inner_center {
display: flex;
}
#gnb > li > .depth_box * {
	word-break: keep-all;
	letter-spacing: -0.05em;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: -0.8px;
}
#gnb > li > .depth_box .inner_center {
	width: 1280px;
	margin: 0 auto;
}
#gnb > li > .depth_box .depth {
flex: 1;
display: flex;
align-items: flex-start;
flex-wrap: wrap;
padding: 24px 0;
}
#gnb > li > .depth_box .depth > li {
	/* flex: 0 1 calc(25% - 16px); */
	flex: 0 1 calc(25% - 12px);
	margin-right: 16px;
	box-sizing: border-box;
}
#gnb > li > .depth_box .depth > li:nth-child(4n) {
	margin-right: 0;
}
#gnb > li > .depth_box .depth > li:nth-child(n + 5) {
	margin-top: 32px;
}
#gnb > li > .depth_box .depth > li > a {
	display: flex;
	align-items: center;
	padding: 14px 16px 14px 20px;
	background-color: #F2F5F9;
	border-radius: 8px;
	color: #1D1D1D;
	font-weight: 500;
}
#gnb > li > .depth_box .depth > li > a::after {
	content: "";
	width: 18px;
	height: 18px;
	margin-left: auto;
	background-image: url(../images/main/gnb_depth2_arrow.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
#gnb > li > .depth_box .depth > li:hover > a {
	background: #003985;
	color: #fff;
}
#gnb > li > .depth_box .depth > li:hover > a:after,
#gnb > li > .depth_box .depth > li:hover > a:after{
	background-image:url(../images/main/gnb_depth2_arrow_h.svg);
}
#gnb > li > .depth_box .depth > li.link > a:after{
	background-image:url(../images/main/gnb_depth2_link.svg);
}
#gnb > li > .depth_box .depth > li.link > a:hover:after,
#gnb > li > .depth_box .depth > li.link > a:focus:after{
	background-image:url(../images/main/gnb_depth2_link_h.svg);
}
#gnb > li > .depth_box .depth > li > .depth02 {
	padding-top: 16px;
}
#gnb > li > .depth_box .depth > li > .depth02 > li + li{
	margin-top: 10px;
}
#gnb > li > .depth_box .depth > li > .depth02 > li > a {
	display: inline-flex;
	position: relative;
	padding-left: 18px;
}
#gnb > li > .depth_box .depth > li > .depth02 > li > a::before {
	content:"";
	display:block;
	position:absolute;
	top:50%;
	transform: translateY(-50%);
	left: 8px;
	width:4px;
	height:4px;
	background:#003985;
	border-radius: 50%;
}
#gnb > li > .depth_box .depth > li > .depth02 > li > a:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}
#gnb > li > .depth_box .depth > li > .depth02 > li.link{
	position: relative;
}
#gnb > li > .depth_box .depth > li > .depth02 > li.link:after{
	content:"";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	display:inline-block;
	width: 16px;
	height: 16px;
	background-image: url(../images/main/gnb_depth3_link.svg);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}
/* header */


/* footer */

.footer_link{background:#1a1d22;}
.footer_link .footer_link_list{
	width:1280px; margin:0 auto; overflow:hidden;
	height: 52px;
}
.footer_link .footer_link_list li{float:left;}
.footer_link .footer_link_list li a{
	display: block;
	box-sizing: border-box;
	padding:12px 0;
	padding-right: 24px;
	color:#ffffff;
	font-size:16px;
	font-weight: 500;
}
.footer_link .footer_link_list li a strong{
	color:#FF8449; font-weight:700;
}
.footer_link.west .footer_link_list li a strong{
	color:#1CA57B; font-weight:700;
}

.footer_link .footer_link_list li a:hover,
.footer_link .footer_link_list li a:active,
.footer_link .footer_link_list li a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 3px;
}
.footer_link .footer_link_list li a:has(strong):hover,
.footer_link .footer_link_list li a:has(strong):active,
.footer_link .footer_link_list li a:has(strong):focus-visible {
	color:#FF8449;
}
.footer_link.west .footer_link_list li a:has(strong):hover,
.footer_link.west .footer_link_list li a:has(strong):active,
.footer_link.west .footer_link_list li a:has(strong):focus-visible {
	color:#1CA57B;
}
.footer_bottom{
	position:relative;
	width:1280px;
	margin:0 auto;
	padding: 32px 0px 40px 0px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	background: #292E34;
}
.footer_bottom:after{content:""; display:block; clear:both;}

.footer_bottom .copyright > span{
	word-wrap: break-word;
	word-break: keep-all;
	color: #9E9E9E;
	font-weight: 400;
	display: block;
}
.footer_bottom .link_sel{
	position:absolute; top:32px; right:0;
	display: flex;
	align-items: center;
	gap: 16px;

}
.footer_bottom .link_sel > li{
	position:relative;
	width: 174px;
	height: 40px;
}
.footer_bottom .link_sel > li > a{
	position:relative;
	display:block;
	height: 40px;
	border-radius: 8px;
	background: #4B515B;
	display: flex;
	align-items: center;
	padding: 0 10px;
	color: #FFF;
	font-size: 14px;
	font-weight: 500;
}
.footer_bottom .link_sel > li > a:after{
	content:"";
	position:absolute;
	display:block;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	width: 24px;
	height: 24px;
	background-image: url(../images/main/ico_footer_sel_arrow.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.footer_bottom .link_sel > li .link_sel_list{
	display:none;
	position:absolute;
	bottom:100%;
	left:0;
	width:100%;
	margin-bottom:-5px;
	padding:0 12px 5px;
	background:#4B515B;
	border-radius:3px 3px 0 0;
	box-sizing:border-box;
}
.footer_bottom .link_sel > li.on .link_sel_list{display:block;}
.footer_bottom .link_sel > li .link_sel_list li a{display:block; line-height:35px; font-size:15px; color:#ffffff;}

.footer_bottom .link_sel > li > a:hover,
.footer_bottom .link_sel > li > a:focus-visible {
	background: #6C7278;
}
.footer_bottom .link_sel > li .link_sel_list li a:hover,
.footer_bottom .link_sel > li .link_sel_list li a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 3px;
}
/* footer */

/* btn top */
.go_top {
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	right: 0;
	bottom: 80px;
	width: 55px;
	height: 56px;
	border-radius: 8px;
	background: #003985;
	color: #fff;
	font-size: 16px;
	line-height: 19px;
	font-weight: 700;
	text-align: center;
	z-index: 70;
	}
	.go_top:focus,
	.go_top:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
	color: #fff;
	}

	.go_top.end_top {
	position: absolute;
	}
/* btn top */


@media screen and (max-width: 1279px) {
	.go_top {
		bottom: 64px;
	}
  /* main_notice_pop */
	.main_notice_pop {
		top: 64px;
	}
	.main_notice_pop .pop_con {
	position: absolute;
	left: 50%;
	width: 400px;
	margin-left: -200px;
	}
	/* main_notice_pop */


	/* header : 20241021 수정 */
	#wrap {
		min-width: 100%;
	}
	#header {
		display: none;
	}
	#mHeader {
	display: flex;
	align-items: center;
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	height: 64px;
	padding-left: 35px;
	z-index: 90;
	background-color: #fff;
	border-bottom: 1px solid #D8D8D8;
	}
	#mHeader .logo {
		width: 319px;
		height: 32px;
	}
	#mHeader .logo a {
	display: block;
	width: 100%;
	height: 100%;
	background-image: url("../images/main/main_logo.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	}
	#mHeader .btns {
	display: flex;
	align-items: center;
	position: relative;
	height: 64px;
	margin-left: auto;
	}
	#mHeader .btns button{
		width: 64px;
		height: 64px;
		text-indent: -9999px;
		overflow: hidden;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 20px;
		border-left: 1px solid #D8D8D8;
	}
	#mHeader .btns .btn_search {
	background-image: url(../images/main/ico_search.svg);
	}
	#mHeader .btns .btn_allmenu {
		background-image: url(../images/main/ico_allmenu.svg);
	}

	/* all menu */
	.m_allmenu_wrap {
		display: block;

	}
	.m_allmenu_wrap * {
		word-break: keep-all;
		letter-spacing: -0.05em;
	}
	.m_allmenu_wrap .m_allmenu_mask {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	width: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: 99;
	opacity: 0;
	transition: width 0.2s 0.2s, opacity 0.2s;
	}
	.m_allmenu_wrap .m_allmenu_cont {
	position: fixed;
	top: 0;
	right: 0;
	width: 360px;
	height: 100%;
	background: #fff;
	z-index: 100;
	transform: translateX(101%);
	transition: 0.3s;
	}
	.m_allmenu_head {
	display: flex;
	align-items: center;
	height: 64px;
	padding-left: 16px;
	border-bottom: solid 1px #D8D8D8;
	}
	.m_allmenu_head .in_logo {
		width: 199px;
		height: 20px;
		background: url(../images/main/main_logo.svg) no-repeat center/contain;
		text-indent: -9999px;
		overflow: hidden;
	}
	.m_allmenu_head .in_logo.west {
		width: 199px;
		height: 20px;
		background: url(../images/main/main_logo_west.svg) no-repeat center/contain;
		text-indent: -9999px;
		overflow: hidden;
	}
	.m_allmenu_head .in_btns {
		display: flex;
		margin-left: auto;
	}
	.m_allmenu_head .in_btns .btn_search {
		width: 64px;
		height: 64px;
		text-indent: -9999px;
		overflow: hidden;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 20px;
		border-left: 1px solid #D8D8D8;
		background-image: url(../images/main/ico_search.svg);
	}
	.m_allmenu_head .in_btns .btn_closemenu {
		width: 64px;
		height: 64px;
		text-indent: -9999px;
		overflow: hidden;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 20px;
		border-left: 1px solid #D8D8D8;
		background-image: url(../images/main/ico_allmenu.svg);
	}
	.m_allmenu_wrap .h_util{
		width: 100%;
		height: 64px;
		display: flex;
		align-items: center;
		justify-content: center;
		border-bottom:solid 1px #d8d8d8;
	}
	.m_allmenu {
	position: relative;
	height: calc(100vh - 128px);
	overflow-y: auto;
	}
	.m_allmenu:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 140px;
	background: #f8f8f8;
	}
	.m_allmenu .m_gnb {
	width: 140px;
	}
	.m_allmenu .m_gnb > li > a {
	display: flex;
	align-items: center;
	position: relative;
	height: 64px;
	padding-left: 16px;
	color: #1d1d1d;
	font-weight: 500;
	}
	.m_allmenu .m_gnb > li > a span {
	position: relative;
	color: #1d1d1d;
	font-weight: 500;
	}
	.m_allmenu .m_gnb > li > a.active {
	background: #003985;
	}
	.m_allmenu .m_gnb > li > a.active span {
	color: #fff;
	}
	.m_allmenu .m_gnb .depth_box {
	display: none;
	flex-direction: column;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 140px;
	background: #fff;
	border-left: 1px solid #d8d8d8;
	}
	.m_allmenu .m_gnb > li > a.active + .depth_box {
	display: flex;
	}
	.m_allmenu .m_gnb .depth_box .depth_tit {
	flex: none;
	margin: 0 16px;
	padding: 19px 8px;
	border-bottom: 1px solid #d8d8d8;
	}
	.m_allmenu .m_gnb .depth_box .depth_tit .tit{
		color: #1D1D1D;
		font-weight: 500;
		font-size: 16px;
	}
	.m_allmenu .m_gnb .depth_box .depth {
		padding: 8px 16px;
		border-bottom: 1px solid #d8d8d8;
		overflow-y: auto;
	}
	.m_allmenu .m_gnb .depth_box .depth > li + li{
		margin-top: 4px;
	}
	.m_allmenu .m_gnb .depth_box .depth > li > a {
	display: block;
	position: relative;
	padding: 12px;
	border-radius: 16px;
	color: #1d1d1d;
	font-size: 16px;
	font-weight: 400;
	}
	.m_allmenu .m_gnb .depth_box .depth > li > a:hover {
	background-color: #F2F5F9;
	}
	.m_allmenu .m_gnb .depth_box .depth > li > a[target="_blank"] {
	padding-right: 44px;
	}
	.m_allmenu .m_gnb .depth_box .depth > li > a[target="_blank"]::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 12px;
	width: 16px;
	height: 16px;
	transform: translateY(-50%);
	background-image: url(../images/main/ico_blank.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	}
	.m_allmenu .m_gnb .depth_box .depth > li > a.in_ul{
		padding-right: 34px;
	}
	.m_allmenu .m_gnb .depth_box .depth > li > a.in_ul::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 12px;
		width: 16px;
		height: 16px;
		margin-top: -9px;
		background-image: url(../images/main/ico_gnb_arow.svg);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: contain;
	}
	.m_allmenu .m_gnb .depth_box .depth > li > a.in_ul.active::after{
		transform: rotate(180deg);
		/* transition: transform 0.2s; */
	}
	.m_allmenu .m_gnb .depth_box .depth > li > .depth02 {
	margin-top: 8px;
	padding: 0 12px;
	display: none;
	}
	.m_allmenu .m_gnb .depth_box .depth > li > .depth02 > li + li {
	margin-top: 10px;
	}
	.m_allmenu .m_gnb .depth_box .depth > li > .depth02 > li > a {
	display: block;
	position: relative;
	color: #1D1D1D;
	font-size: 16px;
	font-weight: 400;
	padding-left: 10px;
	}
	.m_allmenu .m_gnb .depth_box .depth > li > .depth02 > li > a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 4px;
	height: 4px;
	background-color: #003985;
	transform: translateY(-50%);
	border-radius: 50%;
	}
	.m_allmenu .m_gnb .depth_box .depth > li > .depth02 > li > a[target="_blank"] {
	padding-right: 22px;
	}
	.m_allmenu .m_gnb .depth_box .depth > li > .depth02 > li > a[target="_blank"]::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	width: 16px;
	height: 16px;
	background-image: url(../images/main/ico_blank.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	}

	/* openSearch 20241021 수정 */
	.m_search_wrap {
		justify-content: center;
		align-items: center;
		position: fixed;
		top: 64px;
		right: 0;
		left: 0;
		padding: 16px;
		background-color: #fff;
		border-bottom: 1px solid #D8D8D8;
		z-index: 89;
		}
		.m_search_wrap .search_container {
		flex: 1;
		max-width: 310px;
		position: relative;
		}
		.m_search_wrap .search_container input[type="text"] {
		width: 100%;
		min-width: 0;
		height: 47px;
		padding: 0 48px 0 16px;
		border: none;
		border-radius: 16px;
		background-color: #F2F5F9;
		color: #1d1d1d;
		font-size: 15px;
		font-weight: 400;
		}
		.m_search_wrap .search_container button {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 16px;
		width: 20px;
		height: 20px;
		background: url(../images/main/ico_search.svg) no-repeat center/contain;
		text-indent: -9999px;
		overflow: hidden;
		}
		.m_search_wrap .btn_close {
		width: 24px;
		height: 24px;
		margin-left: 16px;
		background: url(../images/main/ico_close.svg) no-repeat center/contain;
		text-indent: -9999px;
		overflow: hidden;
		}

	.openSearch #mHeader {
	background-color: #fff;
	}
	.openSearch #mHeader::before {
	background-color: #F2F5F9;
	}
	.openSearch #mHeader .logo a {
	background-position: center center, -9999px center;
	}
	.openSearch .m_search_wrap {
	display: flex;
	}

	.openAllMenu {
	width: 100%;
	height: 100%;
	overflow: hidden;
	}
	.openAllMenu .m_allmenu_wrap .m_allmenu_mask {
	width: 100%;
	opacity: 1;
	transition: width 0s, opacity 0.5s;
	}
	.openAllMenu .m_allmenu_wrap .m_allmenu_cont {
	transform: translateX(0);
	}

	/* footer : 20241021 수정 */
	.footer_link .footer_link_list{
		width:100%;
		height: 52px;
		padding: 0 16px;
		box-sizing: border-box;
	}
	.footer_bottom{
		width: 100%;
		padding: 32px 16px 40px 16px;
		flex-direction: column;
		gap: 16px;
		box-sizing: border-box;
	}
	.footer_bottom .link_sel{
		position: static;
	}
}

@media screen and (max-width: 767px) {
	#mHeader{
		padding-left: 16px;
	}
	#mHeader .logo {
		width: 120px;
		height: 20px;
	}

  /* main_notice_pop */
  .main_notice_pop .pop_con {
  right: 16px;
  left: 16px;
  width: auto;
  margin-left: 0;
  }
  /* main_notice_pop */

	.openAllMenu .m_allmenu_wrap .m_allmenu_cont{
		width: 100%;
	}


	/* footer : 20241021 수정 */
	.footer_bottom .link_sel{
		flex-direction: column;
		width: 100%;
	}
	.footer_bottom .link_sel > li{
		width: 100%;
	}
}

/* 에러 */
.error {
width: 100vw;
height: 100vh;
}
.errorBg {
width: 100%;
height: 100%;
background-image: url(../images/common/img_error_bg.png);
background-repeat: no-repeat;
background-position: center;
background-size: cover;
display: flex;
align-items: center;
justify-content: center;
}
.errorBox {
text-align: center;
}
/* .errorBox .img_logo {
max-width: 100%;
height: 48px;
margin-bottom: 32px;
background: url(../images/logo_black.svg);
background-repeat: no-repeat;
background-position: center;
background-size: contain;
} */
.error-tit {
font-size: 100px;
font-weight: 700;
line-height: 150px;
text-align: center;
}
.error-tit .error-txt1 {
background: linear-gradient(180deg, #3553A7 0%, #00A5A0 100%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.errorBox_cont {
position: relative;
text-align: center;
padding-top: 32px;
margin-top: 16px;
}
.errorBox_cont::before {
content: '';
display: block;
width: 80px;
height: 2px;
background-color: #D8D8D8;
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
}
.errorBox_cont .tit {
font-size: 25px;
font-weight: 700;
line-height: 150%;
}
.errorBox_cont .tit > span {
color: #003985;
}
.errorBox_cont .sub {
font-size: 17px;
font-weight: 500;
line-height: 150%;
margin-top: 24px;
}
.errorBox_cont .btn-box {
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
flex-wrap: wrap;
width: 328px;
margin: 0 auto;
margin-top: 60px;
}
.errorBox_cont .btn-box .btn {
width: 160px;
height: 40px;
border-radius: 12px;
font-size: 17px;
font-weight: 400;
line-height: 25.5px;
}
.errorBox_cont .btn-box .btn-prev {
border: 1px solid #003985;
background: rgba(255, 255, 255, 0.10);
color: #003985;
}
.errorBox_cont .btn-box .btn-home {
border: 1px solid #003985;
background-color: #003985;
color: #fff;
}



/* Dim Popup */
html:has(.dim.on) {
	overflow: hidden;
}
.dim {
	display: none;
}
.dim.on {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: rgba(0, 0, 0, 0.5);
	height: 100vh;
	z-index: 9999;
}
.dim .popup {
	position: relative;
	border-radius: 12px;
	border: 1px solid #d8d8d8;
	width: 100%;
	max-width: 60vw;
	max-height: 60vh;
	background-color: #fff;
	padding: 24px;
}
.dim .popup .popupClose {
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	right: -48px;
	background-repeat: no-repeat;
	background-position: center;
	background-image: url(../images/common/pop_close.png);
	z-index: 1;
}
.dim .popup .popupClose > span {
	text-indent: -9999px;
	overflow: hidden;
	font-size: 0;
}
.dim .popup .popupContent {
	overflow: auto;
	max-height: calc(60vh - 48px);
}
.dim .popup .popupContent::-webkit-scrollbar {
	width: 12px;
}
.dim .popup .popupContent::-webkit-scrollbar-thumb {
	background-color: #d8d8d8;
	border-left: 4px solid #fff;
}
.dim .popup .popupContent::-webkit-scrollbar-track {
}
.dim .popup .popupContent .imgbox {
	border: 1px solid #D8D8D8;
	background: #F0F0F0;
	border-radius: 16px;
	overflow: hidden;
	position: relative;
	padding-bottom: 48%;
}
.dim .popup .popupContent .imgbox::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 66.592px;
	height: 65px;
	background-image: url(../images/sub/board/img_nodata_photo.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%;
}
.dim .popup .popupContent .imgbox .img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
