@charset "utf-8";
/**
공통 레이아웃
*/
.slick-vertical .slick-slide{border:none;}
.slick-slide{min-height:0;}
.m{display:none !important;}
.mask{visibility:hidden; opacity:0; display:block; position:fixed; top:0; left:0; width:100%; height:100%; background-color:rgba(0,0,0,0.45);}
.mask.on{z-index:95; visibility:visible; opacity:1; transition:opacity 0.25s linear;}
#content.on + .mask{opacity:0;}

body{width:100%; min-width:320px; overflow-x:hidden;}

#skip-navigation{z-index:9999; position:absolute; left:0; top:0;}
#skip-navigation *{list-style:none; margin:0; padding:0;}
#skip-navigation a{display:block; width:1px; height:1px; overflow:hidden; color:#000; white-space:nowrap;}
#skip-navigation a:focus,
#skip-navigation a:active{width:100px; height:auto; background:#ffd;}

.inner{ position:relative; width:1400px; margin:0 auto; box-sizing:border-box;}
.inner:after{content:''; display:block; clear:both; width:100%;}
@media all and (max-width:1430px) {
	#mainmenu,
	.inner{width:100%; padding:0 15px; box-sizing:border-box;}
}
@media all and (max-width:1024px) {
	img{max-width:100%;}
	.m{display:inline-block !important;}
	.w{display:none;}
}
@media all and (max-width:768px) {
	.inner{padding-right:10px; padding-left:10px;}
}

#header{position:relative; height:161px;}
@media all and (max-width:1024px) {
	#header{height:70px;}
	#header .inner{width:100%; padding:0;}
}
@media all and (max-width:768px) {
	#header{height:62px;}
}
@media all and (max-width:568px) {
	#header{height:58px;}
}
.logo {z-index:94; position:absolute; top:28px; left:0; text-align:left;}
.logo *{display:inline-block; vertical-align:top;}
.logo a{text-decoration:none; color:#231f20;  display: flex; align-items: center;	justify-content: center;}
.logo img{margin:0 7px 0 0;}
.logo strong{padding:2px 0 1px 0; line-height:110%; font-size:30px; font-family:"gmarket"; font-weight:900;}
.logo span > span{display:block; padding:0 0 0 2px; color: #666; font-size:12px; line-height:100%; letter-spacing:-1px; font-weight:300; text-transform:uppercase;}
@media all and (max-width:1430px) {
	.logo{left:15px;}
}
@media all and (max-width:1024px) {
	.logo{top:13px; left:15px;}
	.logo *{vertical-align:top;}
	.logo img{margin:0 2px 0 0;}
	.logo strong{padding:3px 0; font-size:24px; letter-spacing:-2px;}
	.logo span > span{font-size:10px; color:#777; letter-spacing:-1.2px;}
}
@media all and (max-width:768px) {
	.logo {top:2px; left:10px;}
	.logo strong{font-size:21px;}
	.logo span > span{font-size:9px;}
}
@media all and (max-width:568px) {
	.logo strong{padding:3px 0 1px;}
}

#top{position:relative; width:100%; height:53px; font-weight:400; font-size:15px; background:#2e2e2e;}
#top:after{content:''; display:block; clear:both; width:100%;}
#top .global .cast span{position:relative; display:inline-block; line-height:100%; background:#666; padding:3px 7px; border-radius:5px; margin:0 5px 0 0; text-transform:uppercase; color:#aaa; font-size:12px; vertical-align:1px;}
#top .global .cast span:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#aaa;margin: 0 3px 2px 0;}
#top .global .cast a.active span{background:#d93939; color:#fff;}
#top .global .cast a.active span:before{background:#fff;}
#top .global .cast a.inactive span{background:#666; color:#aaa;}
#top .global .cast a.inactive span:before{background:#aaa;}

.global{float:left;}
.global > li{position:relative; float:left;}
.global > li.cast {padding: 0 20px;}
.global > li:before{content:''; display:inline-block; position: absolute; top:50%; left:0; width:1px; height:13px; margin:-7px 0 0 0; background:#666;}
.global > li:first-child{padding-left:0;}
.global > li:first-child:before{display:none;}
.global > li > a{display: block;padding:9px 9px;color: #fff;line-height: 35px;}
.global > li:first-child > a{padding-left:0;}
.global > li > a span{display:block; padding:0 25px; line-height:35px; border-radius:35px;}
.global > li > a.current span,
.global > li.list > a.on span{font-weight:500; color:#333; background:#fff;}
.global > li.list > a span:after{content:''; display:inline-block; margin:-6px 0 0 7px; width:6px; height:6px; border-bottom:1px solid #fff; border-right:1px solid #fff; vertical-align:middle; transition:transform 0.3s; transform:rotate(45deg);}
.global > li.list > a.on span:after{margin-top:0; border-color:#333; transform:rotate(225deg);}
.global > li.list > a.current span:after{border-color:#333;}
.global li div{display:none; z-index:98; position:absolute; top:53px; left:50%; width:160px; padding:25px 10px; border:1px solid #4a4a4a; border-radius:10px; box-shadow:0 0 5px rgba(0,0,0,0.2); box-sizing:border-box; transform:translateX(-50%); background:#fff;}
.global li div li{text-align:center;}
.global li div a{display:block; padding:4px 0 5px; color:#666;}
.global li div a:hover{color:#000; font-weight:500;}

.global .list1 div{width:250px;}
.global .list1 li{display:inline-block; width:49%; vertical-align:top;}



.global2{float:right; width:auto; font-size:14px;}
.global2 > li:before{width:3px; height:3px; margin:-2px 0 0; border-radius:50%; background:#4a4a4a;}
.global2 > li > a{color:#666;}
.global2 li div{width:100%;}
@media all and (max-width:1430px) {
	.global2 li div{left:auto; right:0; width:100%; transform:translateX(0);}
}
@media all and (max-width:1024px) {
	#top{height:auto; font-size:14px;}
	.global > li.cast {padding: 0 10px;}
	.global > li > a {line-height: 32px;}
	.global > li > a span{padding: 0 20px;line-height:32px;}
	.global li div{top:41px;}
	.global li div a{color:#505050;}

	.global2 > li:first-child,
	.global2 > li:nth-child(2):before{display:none;}
}
@media all and (max-width:830px) {
	.global2 > li:nth-child(3){display:none;}
}
@media all and (max-width:768px) {
	#top{font-size:13px; text-align:center;}
	#top .inner{padding:0 3px;}
	.global{float:none; display:inline;}
	.global > li{width:33.333%; padding-top:1px;}
	.global > li.cast {padding: 0;}
	.global > li > a,
	.global > li:first-child > a{padding:2px 5px;}
	.global > li:nth-child(4):before{display:none;}
	.global > li > a span{padding:0;line-height:29px;}
	.global li div{top:32px; width:100%; padding:15px 10px; font-size:13px;}
	.global li div a{padding:3px 0;}

	.global2 {font-size:13px;}
	.global2 > li:first-child{display:none;}
	.global2 > li:nth-child(2):before,
	.global2 > li:nth-child(4):before{display:block;}
    .global2 > li:before {width:1px; height:13px; margin:-7px 0 0 0; background:#ddd;}
	.global2 > li > a{color:#222;}
}
@media all and (max-width:568px) {
	.global .list1 div{width:200px;}
}
@media all and (max-width:380px) {
	#top .inner{padding:0;}
	#top,
	.global2 {font-size:12px;}
	.global > li > a,
	.global > li:first-child > a,
	.global2 > li > a{padding:2px 3px;}
	.global .list2 div{left:auto; right:3px; width:130px; transform:none;}
}


#font_control {float:right; margin:9px 0 0 0;}
#font_control ul{float:left;}
#font_control ul > li{float:left; text-align:center;}
#font_control ul > li > a{display:block;width:34px;height:34px;line-height: 34px;margin:0 0 0 4px;font-size:13px;font-weight:400; border-radius:50%; box-sizing:border-box;text-decoration:none; background:#fff;}
#font_control li.img a{text-indent:-999px;font-size:0;background:#fff url('../images/common/ico_util.png') no-repeat 0 50%;}
#font_control li.small a{background-position: -79px 50%;}
#font_control li.print a{background-position: -117px 50%;}

@media all and (max-width:1024px) {
	#font_control{display:none; margin:5px 0 0 0;}
}
@media all and (max-width:768px) {
	#font_control{margin:4px 0 0 0;}
}

/* 메인메뉴 */
#menuArea{overflow:hidden;position:absolute;left:0;top: 153px;width:100%;z-index:93;letter-spacing:-1px; background:#fff ; border-top:1px solid #e2e2e2;} 
/*#menuArea{overflow:hidden;position:absolute;left:0;top: 153px;width:100%;z-index:93;letter-spacing:-1px; background:#fff;}
/*#menuArea.on{box-shadow:0 15px 15px rgba(0,0,0,0.15); background:#fff url('../images/common/bg_menu.jpg') repeat-x;}*/
#menuArea:before{z-index:1; content:''; display:block; position:absolute; top:61px; left:0; width:100%; height:1px; background:#e2e2e2;}
#menuArea .bar{display:block; position:absolute; top:57px; left:0; width:60px; height:4px; opacity:0; z-index:98; background:linear-gradient(241deg, #581845, #191970); transition:0.3s;}

body.on .mask{z-index:92; visibility:visible; opacity:1; top:auto; bottom:0;}
/* body.on .mask{z-index:92; visibility:visible; opacity:1; top:auto; bottom:0; height:calc(100% - 200px);} */

#topmenu{float:left; width:100%; box-sizing:border-box;}
#topmenu > li{position:relative; float:left; width:12.5%; line-height:0;}
/* #topmenu li.menu9, */
/* #topmenu li.last{display:none;} */
#topmenu > li > a{display:block;line-height:60px; font-family:"gmarket"; font-weight:800; font-size:21px; text-align:center;text-decoration:none;z-index:97;}

#topmenu > li:hover > a,
#topmenu > li > a:hover,
#topmenu > li > a:active,
#topmenu > li > a:focus,
#topmenu > li.current_on > a{color:linear-gradient(241deg, #581845, #191970);}

#topmenu li .menu{display:none; z-index:96; width:100%; height:380px; padding:15px 0 0 0; box-sizing:border-box; border-right:1px solid #e5e5e5; background:#fff;}
#topmenu li .menu{display:none; z-index:96; width:100%; height:380px; padding:15px 0 15px; box-sizing:border-box;}
#topmenu li:first-child .menu{border-left:1px solid #e5e5e5;}
#topmenu li:focus .menu,
#topmenu li:hover .menu{background:#fbfbfb;}

#topmenu li ul li{float:none; width:100%;}
#topmenu li ul li a{display:block; margin:0 0 10px 0; padding:0 3px 0 15px; color:#151515; font-size:16px; text-align:left; line-height:120%;}

#topmenu li li a:hover,
#topmenu li li a:active,
#topmenu li li a:focus,
#topmenu li li.current_on a{color:linear-gradient(241deg, #581845, #191970);}

#topmenu ul ul{display:none !important;}


.btn_menu{z-index:93; position:absolute; top:74px; right:50%; width:59px; height:59px; padding:0 0 0 18px; margin:0 -700px 0 0; border-radius:50%; border:1px solid #e0e0e0; box-sizing:border-box;}
.btn_menu .bar{display:block; width:21px; height:3px; margin:4px 0; border-radius:1px; background:#1c1c1c;}
.btn_menu .bar2{width:13px; background:linear-gradient(241deg, #581845, #191970); transition:0.2s ease-in-out;}
.btn_menu:hover .bar2{width:21px;}

.btn_menu_close{display:block; z-index:96; position:absolute; top:27px; right:3%; width:50px; height:50px; border-radius:50%; border:1px solid #3c4968; background:none;}
.btn_menu_close .bar{position:absolute; top:24px; left:12px; display:block; width:25px; height:1px; background:#3c4968;}
.btn_menu_close .bar1{transform:rotate(45deg);}
.btn_menu_close .bar2{transform:rotate(-45deg);}
@media all and (max-width:1430px) {
	.btn_menu{right:15px; margin:0;}
}
@media all and (max-width:1024px) {
	.btn_menu{right:15px; top:64px; height:40px; width:40px; padding:0 10px;}
}
@media all and (max-width:768px) {
	.btn_menu{top:78px; right:10px;}
	.btn_menu_close{top:18px; width:34px; height:34px;}
	.btn_menu_close .bar{top:15px; left:3px;}
}
@media all and (max-width:568px) {
	.btn_menu{top:75px;}
}


/* 하단*/
.linksite{float:left; width:100%; text-align:left; background:#2e2e33;}
.linksite > ul > li{float:left; position:relative; width:25%; box-sizing:border-box; border-right:1px solid #76797f;}
.linksite > ul > li:first-child{border-left:1px solid #76797f;}
.linksite > ul > li > a{z-index:1; overflow:hidden; position:relative; display:block; height:60px; line-height:60px; padding:0 0 0 30px; color:#fff; transition:0.25s ease-in-out; color:#fff; text-decoration:none;}
.linksite > ul > li > a:after{content:''; display:block; position:absolute; top:50%; right:40px; width:12px; height:6px; margin:-3px 0 0 0; background:url('../images/common/ico_linksite.png') no-repeat; transition:0.25s ease-in-out;}
.linksite > ul > li:nth-child(4) > a:after{width:20px; background-position:100% 0;}

.linksite ul > li.on > a{background:#454f67;}
.linksite ul > li.on:not(:nth-child(4)) > a:after{transform:rotate(180deg);}
.linksite li div{display:none; z-index:56; position:absolute; bottom:60px; left:0; width:100%; background:#282d39;}
.linksite li div:before{content:''; display:block; position:absolute; bottom:0; right:0; width:150px; height:120px; opacity:0.1; background:url('../images/common/logo_l.png') no-repeat; background-size:200px;}
.linksite li.on div{display:block;}
.linksite li div > ul {overflow-y:auto; max-height:360px; min-height:155px; box-sizing:border-box; padding:20px 0.7em 22px 22px;}
.linksite li div ul li{position:relative; display:inline-block; width:100%; box-sizing:border-box; vertical-align:top; border-bottom:1px dotted rgba(255,255,255,0.17);}
.linksite li div ul li:before{content:''; display:block; position:absolute; top:21px; left:0; width:2px; height:2px; background:#aaa;}
.linksite .inner > li:last-child div > ul > li:before {display:none;}
.linksite li div ul li a{display:block; padding:10px 0 10px 0.5em; color:rgba(255,255,255,0.85); transition:0.35s ease-in-out;}
.linksite li div ul li a:hover{box-shadow:inset 0 45px 0 rgba(255,255,255,0.08);}

.linksite .list_tit {box-sizing:border-box; padding:10px 0 10px 0.5em; background:rgba(255,255,255,0.85); color:#333;}
.linksite .list_tit a {padding:0; color:#333;} 




/* main_bottom */
#map_member { clear:both;}


/* quick_menu */

.quick_menu {
	position: fixed;
	right: 10px;
	bottom: 20px;
	z-index: 9999;
	width: auto;
	display: flex;
	flex-direction: column;
	text-align: center;
	overflow: hidden;
	background-color: #fff;
	color: #fff;
	box-shadow: 0 0px 14px 1px rgba(101, 105, 154, 50%);
	border: 1px; color: #ffffff;
	border-radius: 20px;
	transition: transform 0.3s ease-in-out;
}

/* 기본 상태(열린 상태): 정상 위치 */
.quick_menu.open {
	transform: translateY(0);
}

.quick_menu h3 {
	margin: 0;
	padding: 10px 30px;
	font-size: 14px;
	background: linear-gradient(241deg, #581845, #191970);
	/* #273ab1 */
	cursor: pointer;
}

.quick_menu ul {
	max-height: 0;
	transition: max-height 0.3s ease-in-out;
}

.open ul {
	max-height: 800px;
}

.quick_menu>ul>li {
	cursor: pointer;
	padding: 5px;
	position: relative;
}

.quick_menu ul li a {
	width:calc(100% - 10px);
	display: inline-block;
	border-bottom: 1px solid #ddd;
	padding: 10px 0;
	color: #333;
	transition: all 0.3s ease;
}

.quick_menu ul li:last-child a {
	border-bottom: none;
}

.quick_menu ul li a .quick_menu_bar {
	width: 100px;
	height: 10px;
	border-radius: 5px;
	background-color: #2739b159;
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
	display: none;
}
.quick_menu .submenu {
	display: none;
}
.quick_menu .submenu-toggle::after {
	content: "▼"; /* 닫힌 상태 기본 */
	font-size: 10px;
	margin-right: 6px;
	padding-left:5px;
	display: inline-block;
	transition: transform 0.3s ease;
	color: #333;
}

/* 메뉴가 열렸을 경우 아이콘 변경 */
.quick_menu .has-submenu.open > .submenu-toggle::after {
	content: "▲";
	color: linear-gradient(241deg, #581845, #191970);
}

.quick_menu .has-submenu.open > .submenu {
	display: block;
}

@media all and (max-width: 1024px) {
	.quick_menu {
		bottom: 15px;
	}
	.quick_menu h3 {
		padding: 8px 15px;
	}
}

@media all and (max-width: 768px) {
	.quick_menu {
		bottom: 10px;
	}
	.quick_menu h3 {
		padding: 6px 12px;
		font-size: 13px;
	}
}

/* footer */
#footer{position:relative; float:left; width:100%; padding:50px 0 60px 0; font-weight:400; color:#333; font-size:14px; line-height:120%;}
#footer .inner{z-index:1; padding-left:237px;}
#footer:after{content:''; display:block; clear:both; width:100%;}
#footer .link{clear:both; width:100%; padding:0 0 20px; font-size:17px;}
#footer .link li{position:relative; display:inline-block;}
#footer .link li:before{content:''; display:inline-block; width:4px; height:4px; margin:-2px 19px 0 18px; background:#ddd; vertical-align:middle; transform:rotate(45deg);}
#footer .link li:first-child:before{display:none;}
#footer .link .privacy a{color:linear-gradient(241deg, #581845, #191970);}
#footer .logo{top:20px; color:#6e6e6e; display: flex; align-items: center;	justify-content: center;}
#footer address span{letter-spacing:-0.5px;}
#footer .copyright{opacity:0.7; padding:10px 0 0 0; text-transform:uppercase; letter-spacing:0;}
/* @media all and (max-width:1430px) {
	#map_member{margin-top:120px;}
} */
@media all and (max-width:1024px) {
	#footer {padding:35px 0 40px; text-align:center;}
	#footer .inner{padding:0 10px;}
	#footer .logo{position:static;  display: flex; align-items: center;	justify-content: center;}
	#footer .logo span > span{color:#aaa;}
	#footer .link{padding:20px 0 35px; font-size:16px;}
	#footer .link li:before{margin:-2px 15px 0;}
	#footer .copyright{padding:6px 0 0 0; font-size:12px;}
}
@media all and (max-width:768px) {
	#footer{font-size:13px;}
	#footer .link{padding:18px 0 30px; font-size:15px;}
	#footer .link li:before{margin:-2px 12px 0;}
	#footer .copyright{font-size:11px;}
}
@media all and (max-width:568px) {
	#footer {font-size:12px;}
	#footer .link{padding:18px 0 26px; font-size:14px;}
	#footer .link li:before{margin:-2px 2px 0;}
	#footer address span{display:block; padding:3px 0 0 0;}
	#footer .copyright{padding:10px 0 0 0; font-size:10px;}
}
@media all and (max-width:380px) {
	#footer .link{padding:17px 0 23px; font-size:13px;}
	#footer .copyright{padding:7px 0 0 0; font-size:9px;}
}

/* btn_top */

.btn_top {
	z-index: 9999;
	display: block;
	width: 100%;
	height: 40px;
	line-height: 40px;
	font-size: 0;
	text-align: center;
	transition: background-color 0.3s ease-in-out;
	background: url('../images/common/ico_top.png') no-repeat center, linear-gradient(241deg, #581845, #191970);
	box-sizing: border-box;
	border-radius: 0 0 20px 20px;
	margin: 0;
	position: relative;
	right: auto;
	bottom: auto;
	color: #fff;
}

.btn_top:hover {
	background-color: #2f5a9d;
	color: #fff;
}

@media all and (max-width:568px) {
	.linksite > ul > li > a{height:38px; line-height:38px; font-size:14px;}
	.linksite > ul > li > a:after{right:14px;}
	.linksite li div{bottom:38px;}
    .linksite li div > ul {padding:12px 14px 16px 14px;}
    .linksite li div ul li:before {top:14px;}
}
@media all and (max-width:380px) {
	.linksite > ul > li > a{height:35px; line-height:35px; font-size:13px;}
	.linksite > ul > li > a:after{right:10px;}
	.linksite li div{bottom:35px;}
	.linksite li div ul li a,
    .linksite .list_tit {padding:7px 0 7px 0.5em;}
}

/*
서브 레이아웃
*/
#container_sub{position:relative; overflow:hidden; width:100%;}
#container_sub:before{content:''; display:block; position:absolute; top:0; left:0; width:100%; height:160px; background:#e9edf7 url('/images/common/bg_sub.jpg') no-repeat;}
#subContent{position:relative; max-width:1400px; margin:0 auto; padding:0 0 10em 0; box-sizing:border-box;}
#subContent:after{content:''; display:block; clear:both;}
#subContent #content{float:right; width:77.1%;}

/* 서브메뉴 */
#submenu{z-index:1; position:relative; float:left; width:18.6%; padding:63px 0 0 0;}
#submenu .sm_tit{display:flex; align-items:center; justify-content:center; overflow:hidden; position:relative; width:100%; height:196px; margin:0 0 15px; text-align:center; color:#fff; border-radius:7px; background:#3e52a9 url('/images/common/bg_subtit.png') no-repeat;}
#submenu .sm_tit h2{line-height:110%; font-size:32px; font-family:"gmarket"; font-weight:900; vertical-align:middle;}
#submenu .sm_tit h2:after{content:''; display:block; width:1px; height:20px; margin:5px auto; background:rgba(255,255,255,0.2);}
#submenu .sm_tit p{opacity:0.4;}
#submenu .sm_tit .en{opacity:0.4; letter-spacing:0; font-size:13px; font-weight:200;}
#submenu .depth2 > li{line-height:0; margin:0 0 10px;}
#submenu .depth2 > li > a{position:relative; display:flex; align-items:center; height:55px; line-height:120%; padding:0 50px 0 20px; font-size:18px; color:#666; border:1px solid #ddd; border-radius: 50px; /* 기본 상태 50px */ transition: all 0.3s ease; /* 부드러운 전환효과 */ text-decoration:none;}
#submenu .depth2 > li > a:after{content:''; position:absolute; top:50%; right:26px; width:20px; height:4px; transform:translateY(-50%); background:url('/images/common/ico_snb.png') no-repeat 0 100%;transition: all 0.3s ease;}
#submenu .depth2 > li:hover > a,
#submenu .depth2 > li > a:hover,
#submenu .depth2 > li > a:focus{
    border-radius: 20px 20px 0px 0px; /* 상단만 둥글게 */
    color: #3d4da4;
    border-color: linear-gradient(241deg, #581845, #191970);
}
#submenu .depth2 > li > a:active,
#submenu .depth2 > li.current_on > a{position:relative; font-weight:500; color:#ffffff; 	background: linear-gradient(241deg, #581845, #191970);
 /* 배경색 파란색 */
    border: 1px solid #ffffff; /* 흰색 테두리 */
    border-radius: 20px 20px 0px 0px; /* 상단만 둥글게 유지 */
}
#submenu .depth2 > li.current_on > a:after,
#submenu .depth2 > li > a:active:after {
    background-image: url('/images/common/ico_snbon.png');
    background-position: 0 0;
    height: 20px;
}
#submenu .depth2 > li.current_on .hasUl{ border-radius: 20px 20px 0 0;}
#submenu .depth2 > li:hover > a:after,
#submenu .depth2 > li.current_on > a:after,
#submenu .depth2 > li > a:hover:after{height:20px; background-position:0 0;}

#submenu .depth2 li ul {display:none; padding:11px 10px 10px 20px; background:linear-gradient(to right, #cee3ff83 20%, #dafbf97a 100%); border-radius: 0 0 20px 20px;}
#submenu .depth2 > li > a[target="_blank"]:before{width:10px; height:10px; background:url('../../images/common/ico_blank.png') no-repeat;}

#submenu .depth2 li ul li a{display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	width: 180px; position:relative; display:block; padding:0.5em 0 0.5em 18px; line-height:100%;}
#submenu .depth2 li ul li a:before{content:''; display:block; position:absolute; top:13px; left:0; width:8px; height:4px; background:#ababab;}
#submenu .depth2 li ul li a:hover,
#submenu .depth2 li ul li a:focus,
#submenu .depth2 li ul li a:active,
#submenu .depth2 li ul li.current_on a{color:#3d4da4; font-weight:500;}
#submenu .depth2 li ul li a:hover:before,
#submenu .depth2 li ul li a:focus:before,
#submenu .depth2 li ul li.current_on a:before{background:linear-gradient(241deg, #581845, #191970);}
#submenu .depth2 li ul li a[target="_blank"]:after{content:''; display:block; position:absolute; top:50%; right:10px; width:10px; height:10px; margin:-5px 0 0 0; vertical-align:middle; background:url('../../images/common/ico_blank.png') no-repeat;}

#sub_default{padding:86px 0 0 0; line-height:170%;}
@media all and (max-width:1430px) {
	#subContent{padding:0 15px 10em;}
}
@media all and (max-width:1280px) {
	#subContent #content{width:76%;}
	#submenu{width:19%;}
}
@media all and (max-width:1024px) {
	#container_sub:before,
	#container_sub:after{display:none;}
	#subContent{width:100%; padding:0 0 7em; margin:0 auto;}
	#subContent #content{width:100%;}
	#sub_default{padding:30px 15px 0;}
}
@media all and (max-width:768px) {
	#sub_default{padding:25px 10px 0;}
}
@media all and (max-width:380px) {
	#sub_default{padding:22px 10px 0;}
}

/* 문서정보 */
#pageInfo{position:relative; padding:43px 140px 0 0; box-sizing:border-box;}
#pageTitle{text-align:center;}
#pageTitle h3{position:relative; padding:0 0 4px 0; line-height:110%; font-size:40px; font-family:"gmarket"; font-weight:900;}
@media all and (max-width:1024px) {
	#pageInfo{height:auto; padding:20px 15px 15px 18px; background:#e9edf7 url('/images/common/bg_sub.jpg') no-repeat 50% 0;}
	#pageTitle h3{padding:0; font-size:26px; letter-spacing:-2px;}
}
@media all and (max-width:768px) {
	#pageInfo{padding:17px 10px 12px 10px;} 
	#pageTitle h3{font-size:23px; letter-spacing:-1.5px;}
}
@media all and (max-width:568px) {
	#pageTitle{text-align:left;}
	#pageTitle h3{font-size:20px;}
}

.btn_util{z-index:2; position:absolute; right:0; top:67px; text-align:center;}
.btn_copy,
.sns_share .btn_share,
.sns_share a{display:block; font-size:0; text-indent:-999px; background:#0948b3 url('../images/common/ico_sns.png') no-repeat 9px 6px}

.btn_copy,
.sns_share .btn_share{width:50px; height:50px; border-radius:20px; box-shadow:0 0 10px rgba(130,101,20,0.2); background:#fff url('../images/common/ico_share.png') no-repeat 17px 16px;}
.sns_share.on .btn_share{background-position:17px -23px;}
.sns_share .list{visibility:hidden; opacity:0; position:absolute; top:0px; right:110px; width:165px; padding:8px 0 9px 0; border:1px solid #eee; background:rgba(255,255,255,0.5); transition:0.25s ease-in-out; box-sizing:border-box;}
.sns_share.on .list{visibility:visible; opacity:1; right:120px;}
.sns_share .list li{display:inline-block; vertical-align:top; margin:0 1px;}
.sns_share a{width:30px; height:30px; border-radius:50%; background-position:10px 7px;}
.sns_share .bl{background-color:#27d200; background-position:-64px 7px;}
.sns_share .kko{background-color:#F5C701; background-position:-141px 8px;}
.sns_share .insta{background-color:#c536a4; background-position:-102px 7px;}
.sns_share .tw{background-color:#1C9CEB; background-position:-26px 8px;}
.sns_share .fb:hover{background-color:#1b4482;}
.sns_share .bl:hover{background-color:#02b417;}
.sns_share .tw:hover{background-color:#1c79eb;}
.sns_share .kko:hover{background-color:#f5a701;}
.sns_share .insta:hover{background-color:#8a38b4;}

.btn_copy,
.sns_share{float:left; margin:0 0 0 13px;}
.btn_copy{background-position:-47px 16px;}

@media all and (max-width:1024px) {
	.btn_util{top:13px; right:15px;}
	.btn_copy, .sns_share{margin:0 0 0 6px;}
	.btn_copy, .sns_share .btn_share{width:35px; height:35px;}
	.btn_copy{background-position:-54px 9px;}
	.sns_share .btn_share{background-position: 9px 9px;}
	.sns_share.on .btn_share{background-position:10px -30px;}
	.sns_share .list{right:70px; top:-5px;}
	.sns_share.on .list{right:80px;}
}
@media all and (max-width:768px) {
	.btn_util{top:8px; right:10px;}
	.sns_share .list{top:33px; right:0; background:#fff;}
	.sns_share.on .list{top:38px; right:0;}
	.btn_copy, .sns_share{margin:0 0 0 3px;}
	.btn_copy, .sns_share .btn_share{width:30px; height:30px;}
	.sns_share .btn_share{background-position:7px 7px;}
	.sns_share.on .btn_share{background-position:8px -32px;}
	.btn_copy{background-position:-56px 7px;}
}

/*snb*/
.location{padding:6px 0 0 0; font-weight:300; text-align:center;}
.location .home{display:inline-block; vertical-align:top; width:33px; height:33px; margin:-6px 0 0 0; border-radius:50%; text-indent:-999px; font-size:0; background:linear-gradient(241deg, #581845, #191970) url('../images/common/ico_home_w.png') no-repeat 50% 50%;}
.location .home:after{display:none;}
.location span:before{content:''; display:inline-block; vertical-align:middle; width:10px; height:10px; margin:-4px 13px 0 7px; border-right:1px solid #666; border-bottom:1px solid #666; transform:rotate(-45deg);}

.snb{float:left;}
.snb > li{position:relative; float:left; min-width:220px;}
.snb > li > a{display:block; position:relative; line-height:70px; padding:0 45px 0 33px; font-weight:400; color:#fff; border-right:1px solid rgba(255,255,255,0.3);}
.snb > li > a:after{content:''; display:block; position:absolute; top:50%; right:30px; width:11px; height:7px; margin:-4px 0 0 0; transition:0.3s ease; background:url('../images/member/sub/ico_sub.png') no-repeat -67px 0;}
.snb > li > a.on:after{transform:rotate(180deg); opacity:1;}
.snb > li > a.on,
.snb > li > a:hover{background:rgba(255,255,255,0.06);}
.snb ul{display:none; z-index:3; position:absolute; top:70px; left:-1px; width:calc(100% + 1px); border:1px solid #e6e6e6; border-top:none; background:#fff; box-sizing:border-box; box-shadow:2px 3px 5px rgba(0,0,0,0.1);}
.snb ul li{width:100%;}
.snb ul a{display:block; line-height:53px; padding:0 0 0 28px;}
.snb ul li + li a{border-top:1px solid #e6e6e6;}
.snb ul a.on,
.snb ul a:hover,
.snb ul a:focus,
.snb ul a:active{background:#f7f7f7;}
@media all and (max-width:1430px) {
	.snb > li{min-width:190px;}
}
@media all and (max-width:1024px) {
	.location span{font-size:15px;}
	.location span:before{width:7px; height:7px;}
	.location .home{vertical-align:middle; width:20px; height:20px; margin:-1px 0 0 0; background-size:10px;}

	.snb > li{min-width:180px;}
	.snb > li > a{height:54px; padding:0 35px 0 20px; line-height:54px;}
	.snb > li > a:after{right:17px;}
	.snb ul{top:54px;}
	.snb ul a{line-height:45px; padding:0 0 0 20px; font-size:15px;}
}
@media all and (max-width:768px) {
	.location span{font-size:14px;}
	.location span:before{margin:-2px 10px 0 2px;}
	.location .home{margin:1px 0 0 0;}

	.snb{font-size:15px;}
	.snb > li {min-width:165px;}
	.snb > li > a{height:47px; line-height:48px;}
	.snb ul{top:47px;}
	.snb ul a{line-height:37px; font-size:14px;}
}
@media all and (max-width:568px) {
	.location{text-align:left;}
	.location span{font-size:13px;}

	.snb{font-size:14px;}
	.snb > li {min-width:140px;}
	.snb > li > a{height:40px; padding:0 24px 0 15px; line-height:40px;}
	.snb > li > a:after{right:12px;}
	.snb ul{top:41px;}
	.snb ul a{padding:0 0 0 15px; line-height:34px; font-size:13px;}
}
@media all and (max-width:380px) {
	.location span{font-size:12px;}
	.location span:before{margin:-2px 7px 0 0;}

	.snb {font-size:13px;}
	.snb > li{min-width:108px;}
	.snb > li > a{height:37px; line-height:37px; padding:0 21px 0 12px;}
	.snb > li > a:after{right:9px;}
	.snb ul{top:37px;}
	.snb ul a{line-height:32px; padding:0 0 0 12px;}
}

/* 모바일 gnb */
@media all and (max-width:1024px) {
	.m_menu{position:fixed; top:0; right:-100%; width:60%; height:100%; overflow-y:auto; z-index:100; background:#ddd; transition:right 0.25s ease-in-out;}
	.m_menu .tit{display:none;}
	.m_menu.on{right:0;}
	.m_menu .m_top{position:relative; height:110px; background:#fff;}
	.m_menu .logo{position:absolute; top:35px; left:12px; text-align:left; transform:none;}
	.m_menu > ul{float:left; width:100%; height:calc(100% - 110px); border-top:3px solid #182239; box-sizing:border-box;}
	.m_menu > ul a{display:block; text-decoration:none; cursor:pointer;}
	.m_menu > ul > li{display:table; width:43%; border-bottom:1px solid #3d3f4a;}
	.m_menu > ul > li > a{position:relative; display:table-cell; vertical-align:middle; height:3em; padding:0 0 0 1em; line-height:120%; font-size:130%; color:#fff; background:#182239;}
	.m_menu > ul > li > a:before{display:none; content:''; position:absolute; top:50%; right:-8px; width:0; height:0; margin:-8px 0 0 0; border-left:15px solid #fff; border-top:15px solid transparent; transform:rotate(45deg);}
	.m_menu > ul > li.current_on > a,
	.m_menu > ul > li > .on{font-weight:800; background:linear-gradient(to right, #002efa 0%,#028bfa 100%);}
	.m_menu > ul > li.current_on > a:before,
	.m_menu > ul > li > .on:before{display:block;}
	.m_menu > ul > li > div {position:absolute; top:110px; left:43%; display:none; width:57%; height:calc(100% - 110px); padding:13px 0.8em 0 1.2em; border-top:3px solid #182239; background:#fff; box-sizing:border-box;}
	.m_menu > ul > li.current_on .menu,
	.m_menu > ul > li .on + .menu{display:block !important;} 
	.m_menu > ul > li > div > ul > li {margin:0 0 2px; border-bottom:1px solid #e6e6e6;}
	.m_menu > ul > li > div > ul > li > a{position:relative; padding:10px 0 10px 1.2em; font-size:115%;}
	.m_menu > ul > li > div > ul > li > a:before,
	.m_menu > ul > li > div > ul > li a[target="_blank"]:after{content:''; position:absolute; top:50%; right:8px; display:block; width:10px; height:10px; margin:-5px 0 0 0; background:url('../images/kr/main/ico_ctrl.png') no-repeat -83px -38px;}
	.m_menu > ul > li > div ul li.hasUl > a:after{content:'';display:block; position:absolute; top:50%; right:10px; width:8px; height:8px; margin:-7px 0 0 0; border-bottom:2px solid #555; border-right:2px solid #555; transition:transform 0.3s; transform:rotate(45deg); background:none;}
	.m_menu > ul > li > div ul li.hasUl > a.on:after{margin:-4px 0 0 0; transform:rotate(225deg);}
	.m_menu > ul > li > div ul li:not(.hasUl) > a[target="_blank"]:after{width:14px; height:14px; margin:-7px 0 0 0; background:url('../images/common/ico_new.png') no-repeat 100% 0;}
	.m_menu > ul > li > div > ul > li > a:before{position:absolute;top: 16px;left:0.2em;width:13px;height:13px;margin:0;border:4px solid #9faab2;border-left:4px solid #143852;border-top:4px solid #143852;border-radius:50%;background:none;}
	.m_menu > ul > li > div > ul > li > ul{display:none; overflow:hidden; width:100%; margin:2px 0 0 0; padding:0.6em 0 0.5em 0.5em; box-sizing:border-box; background:#f3f3f3;}
	.m_menu > ul > li > div > ul > li > ul li a{position:relative; padding:6px 0 6px 13px;}
	.m_menu > ul > li > div > ul > li > ul li a:before{content:'';display:block;position:absolute;top: 15px;left:4px;width:4px;height:4px;border-radius:50%;background:#0087e7;}
	.m_menu > ul > li.current_on .current_on > a{font-weight:800; color:#222;}
}
@media all and (max-width:768px) {
	.m_menu .m_top{height:72px;}
	.m_menu .logo{top:15px;}
	.m_menu > ul {height:calc(100% - 72px);}
	.m_menu > ul > li > a{padding:0 0 0 0.7em; font-size:16px;}
	.m_menu > ul > li > a:before{right:-7px; margin:-7px 0 0 0; border-left:13px solid #fff; border-top:13px solid transparent;}
	.m_menu > ul > li > div{top:72px; height:calc(100% - 72px); padding:0.6em 0.7em 0.5em 0.7em;}
	.m_menu > ul > li > div > ul > li > a{font-size:15px; background-size:13px;}
	.m_menu > ul > li > div > ul > li > a:before{top:14px; width:10px;height:10px;border-width:3px;}
	.m_menu > ul > li > div > ul > li > ul{padding:0.5em 0 0.4em 0.4em;}
	.m_menu > ul > li > div > ul > li > ul li a{font-size:14px;}
	.m_menu > ul > li > div > ul > li > ul li a:before{top: 10px;}
	.m_menu > ul > li > div ul li:not(.hasUl) > a[target="_blank"]:after{width:11px; height:11px; background-size:cover;}
}
@media all and (max-width:568px) {
	.m_menu{width:285px;}
	.m_menu .logo{top:17px;}
}

/*사이트맵*/
#sub_sitemap .site{overflow:hidden; width:100%; padding:52px 0 14px 0;}
#sub_sitemap .site:nth-child(odd){background:#f7f7f7;}
#sub_sitemap .site h4{float:left; width:22%; padding:0 0 0 48px; font-size:30px; box-sizing:border-box;}
#sub_sitemap .site h4:before{display:none;}
#sub_sitemap .site h4 a{display:inline-block; padding:15px 0; color:linear-gradient(241deg, #581845, #191970); border-top:2px solid linear-gradient(241deg, #581845, #191970); text-decoration:none}
#sub_sitemap .site > ul{float:left; width:78%; padding:0 1.5% 0 0; box-sizing:border-box;}
#sub_sitemap .site > ul > li {float:left; width:33.33%; padding:0 3.3% 38px; box-sizing:border-box;}
#sub_sitemap .site > ul > li > a{display:block; height:46px; line-height:45px; padding:0 0 0 16px; font-size:18px; font-weight:500; color:#484848; border:1px solid #484848; text-align:left; transition:0.25s ease-in-out;}
#sub_sitemap .site > ul > li > a:hover{color: #fff; box-shadow:inset 250px 0 #484848;}
#sub_sitemap .site > ul > li > ul{padding:12px 0 0 13px;}
#sub_sitemap .site > ul > li > ul li + li{margin:5px 0 0 0;}
#sub_sitemap .site > ul > li > ul li:before{top:10px;}
#sub_sitemap .site ul ul a{display:block;}

@media all and (max-width:1230px) {
	#sub_sitemap .site h4{padding:0 0 0 4%;}
}
@media all and (max-width:1024px) {
	#sub_sitemap .site h4{font-size:28px;}
}
@media all and (max-width:768px) {
	#sub_sitemap .site h4{width:30%; font-size:26px;}
	#sub_sitemap .site > ul{width:70%;}
	#sub_sitemap .site > ul > li {width:50%;}
}
@media all and (max-width:568px) {
	#sub_sitemap .site{padding:33px 0 14px;}
	#sub_sitemap .site h4{width:100%; margin:0 0 12px; font-size:22px;}
	#sub_sitemap .site h4 a{padding:8px 0;}
	#sub_sitemap .site > ul{width:100%; padding:0 1.5%;}
	#sub_sitemap .site > ul > li {width:50%; padding:0 2% 20px;}
	#sub_sitemap .site > ul > li > a{height:43px; line-height:43px; padding:0 0 0 13px; font-size:16px;}
	#sub_sitemap .site > ul > li > u{padding:10px 0 0 5px;}
	#sub_sitemap .site > ul > li > ul li + li{margin:3px 0 0 0;}
	#sub_sitemap .site > ul > li > ul li:before{top:9px;}
}
@media all and (max-width:380px) {
	#sub_sitemap .site{padding:30px 0 14px;}
	#sub_sitemap .site h4{margin:0 0 10px; font-size:21px;}
	#sub_sitemap .site h4 a{padding:7px 0;}
	#sub_sitemap .site > ul > li {padding:0 2% 17px;}
	#sub_sitemap .site > ul > li > a{height:39px; line-height:39px; font-size:15px;}
	#sub_sitemap .site > ul > li > ul li + li{margin:2px 0 0 0;}
}

/* 만족도 */
.poll{float:left; clear:both; width:100%; margin:100px 0 0 0; padding:24px 26.42% 34px 36px; color:#333; border:1px solid #ddd; border-radius:20px; box-sizing:border-box; word-break:keep-all; background:url('/images/kr/common/bg_poll.jpg') no-repeat right 9% top 50%;  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
.poll *{display:inline-block; vertical-align:top;}
.poll form{width:100%;}
.poll fieldset{overflow:hidden; width:100%; padding:10px 0 0 0;}
.poll h2{padding:0 16px 0 0; color:linear-gradient(241deg, #581845, #191970); font-size:25px; font-weight:600;}
.poll .ask{padding:1px 0 0 0;}
.poll ul{width:100%; padding:12px 0 28px 0; font-size:15px; line-height:100%;}
.poll li + li{padding:0 0 0 64px;}
.poll ul label{font-weight:400;}
.poll input[type="radio"]{width:17px; height:17px; border-color:#acacac; color:linear-gradient(241deg, #581845, #191970);}
.poll div{position:relative; width:100%;}
.poll input[type="text"]{height:49px; line-height:49px; width:100%; padding:0 100px 0 15px; border-color:#ddd; box-sizing:border-box;  border-radius:49px;}
.poll button[type="submit"]{position:absolute; top:0; right:0; width:98px; height:49px; border-radius:49px; font-size:15px; font-weight:500; color:#fff; background:linear-gradient(241deg, #581845, #191970);}


/* 담당부서 */
.charge{float:left; clear:both; width:100%; padding:12px 36px 13px 38px; color:#333; border-radius:0 0 7px 7px; border:1px solid #ddd; border-top:none; box-sizing:border-box;}
.charge h2{float:left; width:129px; height:44px; line-height:44px; border-radius:22px; font-size:15px; font-weight:500; color:#fff; background:#3194b1; text-align:center;}
.charge ul{float:left; width:calc(100% - 129px); padding:10px 0 0 29px; box-sizing:border-box;}
.charge li{float:left;}
.charge li + li:before{content:''; display:inline-block; width:1px; height:16px; margin:4px 24px 0; transform:rotate(-20deg); background:#b2b2b2;}
.charge li *{display:inline-block; vertical-align:top;}

@media all and (max-width:1230px) {
	.poll li + li{padding:0 0 0 5%;}
}
@media all and (max-width:1024px) {
	.poll{padding:20px 25px; background:none;}

	.charge{padding:12px 25px;}
}
@media all and (max-width:768px) {
	.poll{padding:18px 20px 20px;}
	.poll ul{width:100%; padding:10px 0 13px;}
	.poll div{width:100%;}

	.charge {padding:12px 0 12px 20px;}
	.charge h2{width:120px;}
	.charge ul{width:calc(100% - 120px); padding:10px 0 0 15px;}
	.charge li + li:before{margin:4px 13px 0;}
}
@media all and (max-width:568px) {
	.poll h2{display:block; padding:0 0 2px; font-size:19px;}
	.poll ul{padding:1px 0 3px; font-size:14px;}
	.poll li {width:32%; margin:0 0 10px;}
	.poll li + li{padding:0;}
	.poll input[type="text"]{padding:0 80px 0 10px;}
	.poll button[type="submit"]{width:70px;}

	.charge ul{width:100%; padding:10px 0 0 0;}
}
@media all and (max-width:380px) {
	.poll{margin:85px 0 0 0; padding:17px;}
	.poll h2{padding:0 0 1px; font-size:18px;}
	.poll ul{font-size:13px;}
	.poll li {margin:0 0 7px;}
	
	.charge li {width:100%;}
	.charge li + li:before{display: none;}
}

/* 의회간행물 */
#sub_magazine .magazine_wrap {float: left; margin: 0 0 50px; width:100%;}
#sub_magazine .magazine_wrap > ul > li {display: flex; flex-wrap: wrap; padding: 30px 0; border-bottom: 1px solid #eee;}
#sub_magazine .magazine_wrap > ul > li:first-child {border-top: 2px solid #848484;}
#sub_magazine .magazine_wrap .pic {width: 325px;}
#sub_magazine .magazine_wrap .pic a {display: block;margin: 0 0 30px;text-align: center;}
#sub_magazine .magazine_wrap .inner{width:100%;padding:37px 0 0 0;border-radius:10px;border:1px solid #dfe0e3;box-sizing:border-box;}
#sub_magazine .magazine_wrap .inner:hover{border-color:#767fa3; transition:0.2s ease-in-out;}
#sub_magazine .magazine_wrap .img_wrap{display:block; padding:0 10px;}
#sub_magazine .magazine_wrap .img{position:relative; display:inline-block; vertical-align:top;}
#sub_magazine .magazine_wrap .img:before{opacity:0; visibility:hidden; content:''; display:block; position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(42,46,68,0.5); transition:0.25s ease-in-out;}
#sub_magazine .magazine_wrap .view{opacity:0; visibility:hidden; position:absolute; top:50%; left:50%; display:block; width:110px; height:45px; line-height:46px; margin:-22px 0 0 -55px; color:#fff; border-radius:45px; background:#003964; transition:0.3s ease-in-out;}
#sub_magazine .magazine_wrap .inner:hover .img:before,
#sub_magazine .magazine_wrap .inner:hover .view,
#sub_magazine .magazine_wrap .img_wrap:hover .img:before,
#sub_magazine .magazine_wrap .img_wrap:hover .view{opacity:1; visibility:visible;}
#sub_magazine .magazine_wrap .img img{max-width:186px;height: 200px;box-shadow:1px 1px 18px rgba(0,0,0,0.11);}
#sub_magazine .magazine_wrap .sbj{display:block; padding:15px 0 20px; color:#000; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
#sub_magazine .magazine_wrap .btns{height:66px;}

#sub_magazine .magazine_wrap .btn{width:100%; height:100%; line-height:66px; min-width:0; padding:0; color:#003964; border:none; border-top:1px solid #dfe0e3; border-radius:0 0 10px 10px; background:#f3f3f8;}
#sub_magazine .magazine_wrap .btn:hover{border-color:#767fa3;}
#sub_magazine .magazine_wrap .btn:after{content:''; display:inline-block; vertical-align:middle; width:12px; height:14px; margin:-6px 0 0 5px; background:url('../../images/common/ico_down2.png') no-repeat 0 100%;}
#sub_magazine .magazine_wrap .btn:hover:after{background-position:0 0; transition:0.25s ease-in-out;}

#sub_magazine .magazine_wrap .con {padding: 0 0 0 30px;width: calc(100% - 325px);box-sizing: border-box;}
#sub_magazine .magazine_wrap .con strong {font-size: 25px;}
#sub_magazine .magazine_wrap .con .date {margin: 5px 0;font-size: 15px;color: #999;}
#sub_magazine .magazine_wrap .con ul {display: flex; flex-wrap: wrap;}
#sub_magazine .magazine_wrap .con ul li {margin: 5px 5px 5px 0;padding: 0 20px;font-size: 14px;border: 1px solid #434da9;border-radius: 20px;}
#sub_magazine .magazine_wrap .con .info {overflow: hidden;margin: 10px 20px 0 0; text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp:3;-webkit-box-orient: vertical;}

@media all and (max-width:1024px) {
	#sub_magazine .magazine_wrap .img img{height:250px; max-width:100%;}
}
@media all and (max-width:768px) {
	#sub_magazine .magazine_wrap .inner{padding:25px 0 0 0;}
	#sub_magazine .magazine_wrap .img img{height:210px; box-shadow:1px 1px 10px rgba(0,0,0,0.11);}
	#sub_magazine .magazine_wrap .btns{height:50px;}
	#sub_magazine .magazine_wrap .btn{line-height:50px;}
	#sub_magazine .magazine_wrap .btn:after{margin-left:6px;}

	#sub_magazine .magazine_wrap .pic {width: 230px;}
	#sub_magazine .magazine_wrap .con {width: calc(100% - 230px);}
	#sub_magazine .magazine_wrap .con strong {font-size: 22px;}
}
@media all and (max-width:568px) {
	#sub_magazine .magazine_wrap .inner{padding:20px 0 0 0;}
	#sub_magazine .magazine_wrap .img img{height:190px;}
	#sub_magazine .magazine_wrap .pic {margin: 0 auto;}
	#sub_magazine .magazine_wrap .con {padding: 30px 0 0;width: 100%;}
	#sub_magazine .magazine_wrap .con strong {font-size: 20px;}
}
@media all and (max-width:380px) {
	#sub_magazine .magazine_wrap .inner{padding:16px 0 0 0;}
	#sub_magazine .magazine_wrap .img img{height:160px;}
	#sub_magazine .magazine_wrap .btn:after{margin-left:4px;}
}



/* 지도 / 의원 정보 섹션 */
#map_member {
	position: relative;
	width: 100%;
	margin: 50px 0;
	padding: 60px 0;
}

#map_member .title {
	text-align: center;
	margin-bottom: 50px;
}

#map_member h3 {
	font-size: 35px;
	font-weight: 900;
	font-family: "gmarket";
	color: #333;
	margin-bottom: 15px;
}

#map_member h3 span {
	background: linear-gradient(241deg, #581845, #191970);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

#map_member .info {
	font-size: 16px;
	color: #666;
	line-height: 150%;
}

/* 지도 전체 영역 */
.map_section {
	display: flex;
	align-items: flex-start;
	gap: 60px;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 20px;
}

/* 지도 배경 영역 */
.map_background {
	position: relative;
	flex: 1;
	max-width: 600px;
	background: #fff;
	border-radius: 20px;
	padding: 30px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
	transition: background-image 0.5s ease;
	margin: 0 auto;
}

/* 선거구별 백그라운드 이미지 */
.map_background.district-ga {
	background: linear-gradient(rgba(255,255,255,0.9), rgba(255,255,255,0.9)), url('/images/kr/main/map_background.png');
	background-size: cover;
	background-position: center;
}

.map_background.district-na {
	background: linear-gradient(rgba(255,255,255,0.9), rgba(255,255,255,0.9)), url('/images/kr/main/map_background.png');
	background-size: cover;
	background-position: center;
}

.map_background.district-da {
	background: linear-gradient(rgba(255,255,255,0.9), rgba(255,255,255,0.9)), url('/images/kr/main/map_background.png');
	background-size: cover;
	background-position: center;
}

.map_background.district-proportional {
	background: linear-gradient(rgba(255,255,255,0.9), rgba(255,255,255,0.9)), url('/images/kr/main/bg_link.jpg');
	background-size: cover;
	background-position: center;
}

.map_background.district-default {
	background: #fff;
}

.map_background img {
	width: 100%;
	height: auto;
	border-radius: 15px;
}

/* 기존 지도 마커 스타일 제거됨 */

/* 의원 카드 섹션 */
.member_cards_section {
	flex: 1;
	/* width:80%; */
	margin:0 auto;
}

.cards_title {
	font-size: 28px;
	font-weight: 800;
	font-family: "gmarket";
	color: #333;
	margin-bottom: 30px;
	text-align: center;
}

.district_name {
	background: linear-gradient(241deg, #581845, #191970);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* 의원 카드 */
.member_cards {
	display: flex;
	flex-direction: column;
	gap: 18px;
	min-height: 400px; /* 카드 개수에 관계없이 최소 높이 보장 */
	align-items: stretch;
	width:100%;
}

.member_card {
	position: relative;
	display: flex;
	background: linear-gradient(145deg, #ffffff 0%, #f8fafb 100%);
	border-radius: 20px;
	padding: 20px;
	min-height: 180px; /* 개별 카드 최소 높이 설정 */
	box-shadow: 
		0 15px 45px rgba(0, 0, 0, 0.08),
		0 6px 20px rgba(0, 0, 0, 0.04),
		inset 0 1px 0 rgba(255, 255, 255, 0.6);
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	border: 1px solid rgba(255, 255, 255, 0.2);
	opacity: 1;
	transform: translateY(0);
	overflow: hidden;
}

/* 카드 배경 장식 요소 */
.member_card::before {
	content: '';
	position: absolute;
	top: -50%;
	right: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(circle, rgba(46, 59, 177, 0.05) 0%, transparent 70%);
	border-radius: 50%;
	transform: scale(0);
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 0;
}

.member_card::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, 
		transparent 0%, 
		rgba(46, 59, 177, 0.3) 20%, 
		rgba(46, 59, 177, 0.7) 50%, 
		rgba(46, 59, 177, 0.3) 80%, 
		transparent 100%);
	transform: scaleX(0);
	transition: all 0.1s cubic-bezier(0.4, 0, 0.2, 1);
	border-radius: 25px 25px 0 0;
	z-index: 1;
}

/* 카드 숨김 상태 */
.member_card.hidden {
	opacity: 0;
	transform: translateY(30px) scale(0.95);
	pointer-events: none;
}

/* 카드 표시 상태 */
.member_card.visible {
	opacity: 1;
	transform: translateY(0) scale(1);
	pointer-events: auto;
}

/* .member_card:hover {
	transform: translateY(-10px) scale(1.02);
	box-shadow: 
		0 30px 80px rgba(0, 0, 0, 0.15),
		0 15px 40px rgba(0, 0, 0, 0.1),
		inset 0 1px 0 rgba(255, 255, 255, 0.8);
	border-color: rgba(46, 59, 177, 0.3);
} */

.member_card:hover::before {
	transform: scale(1);
}

.member_card:hover::after {
	transform: scaleX(1);
}

.member_photo {
	position: relative;
	flex-shrink: 0;
	width: 100px;
	height: 100px;
	margin-right: 20px;
	z-index: 2;
}

.member_photo::before {
	content: '';
	position: absolute;
	top: -5px;
	left: -5px;
	right: -5px;
	bottom: -5px;
	background: linear-gradient(135deg, 
		rgba(46, 59, 177, 0.2) 0%, 
		rgba(52, 152, 219, 0.2) 50%, 
		rgba(155, 89, 182, 0.2) 100%);
	border-radius: 50%;
	z-index: -1;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	transform: scale(0.8);
	opacity: 0;
}

.member_card:hover .member_photo::before {
	transform: scale(1);
	opacity: 1;
}

.member_photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
	border: 4px solid #ffffff;
	box-shadow: 
		0 10px 30px rgba(0, 0, 0, 0.1),
		0 4px 15px rgba(0, 0, 0, 0.05);
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	z-index: 1;
}

.member_card:hover .member_photo img {
	transform: scale(1.05);
	box-shadow: 
		0 15px 40px rgba(0, 0, 0, 0.15),
		0 8px 25px rgba(0, 0, 0, 0.1);
}

.member_info {
	flex: 1;
	display: flex;
	flex-direction: column;
	position: relative;
	z-index: 2;
	padding-left: 10px;
}

.member_name {
	margin-bottom: 15px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
}

.member_name strong {
	font-size: 22px;
	font-weight: 900;
	color: #2c3e50;
	font-family: "gmarket";
	background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	transition: all 0.3s ease;
}

.member_card:hover .member_name strong {
	transform: translateY(-2px);
	text-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.position {
	font-size: 12px;
	color: #ffffff;
	background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	padding: 6px 12px;
	border-radius: 20px;
	font-weight: 600;
	box-shadow: 0 3px 12px rgba(102, 126, 234, 0.3);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	transition: all 0.3s ease;
	display: inline-block;
	white-space: nowrap;
	height:26.5px;
	line-height: 26.5px;
}

.member_card:hover .position {
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4);
}
.member_district_container {
	display:flex;
	align-items: center;
	gap: 10px;
}
.member_district {
	margin-bottom: 10px;
	font-size: 15px;
	color: #2c3e50;
	font-weight: 700;
	position: relative;
	padding-left: 18px;
	font-family: "gmarket";
	display:flex;
	align-items: center;

}

.member_district::before {
	content: '📍';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 14px;
}

.member_district .area {
	display: block;
	font-size: 13px;
	color: #7f8c8d;
	font-weight: 500;
	margin-top: 3px;
	padding-left: 0;
}

/* 선거구별 의원 카드 스타일 */

/* 가선거구 의원 카드 (파란색 계열) */
.member_card[data-district*="가"] {
	border: 4px solid #4682b4;
}

.member_card[data-district*="가"]:hover {
	border-color: #1e90ff;
	box-shadow: 0 15px 40px rgba(70, 130, 180, 0.15);
}

.member_card[data-district*="가"] .member_district {
	background: linear-gradient(135deg, #4682b4 0%, #87ceeb 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	font-weight: 700;
}

/* 나선거구 의원 카드 (녹색 계열) */
.member_card[data-district*="나"] {
	border: 4px solid #32cd32;
}

.member_card[data-district*="나"]:hover {
	border-color: #228b22;
	box-shadow: 0 15px 40px rgba(50, 205, 50, 0.15);
}

.member_card[data-district*="나"] .member_district {
	background: linear-gradient(135deg, #32cd32 0%, #90ee90 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	font-weight: 700;
}

/* 다선거구 의원 카드 (주황색 계열) */
.member_card[data-district*="다"] {
	border: 4px solid #ff8c00;
}

.member_card[data-district*="다"]:hover {
	border-color: #ff7f00;
	box-shadow: 0 15px 40px rgba(255, 140, 0, 0.15);
}

.member_card[data-district*="다"] .member_district {
	background: linear-gradient(135deg, #ff8c00 0%, #ffa500 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	font-weight: 700;
}

/* 비례대표 의원 카드 (보라색 계열) */
.member_card[data-district*="비례"],
.member_card[data-district*="대표"] {
	border: 4px solid #9370db;
}

.member_card[data-district*="비례"]:hover,
.member_card[data-district*="대표"]:hover {
	border-color: #8a2be2;
	box-shadow: 0 15px 40px rgba(147, 112, 219, 0.15);
}

.member_card[data-district*="비례"] .member_district,
.member_card[data-district*="대표"] .member_district {
	background: linear-gradient(135deg, #9370db 0%, #663399 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	font-weight: 700;
}

.member_party {
	margin-bottom: 15px;
	font-size: 13px;
	color: #ffffff;
	font-weight: 700;
	background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	padding: 8px 14px;
	border-radius: 18px;
	display: inline-block;
	width: fit-content;
	box-shadow: 0 3px 12px rgba(102, 126, 234, 0.3);
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

.member_party::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
	transition: all 0.6s ease;
}

.member_card:hover .member_party::before {
	left: 100%;
}

.member_card:hover .member_party {
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4);
}

.member_actions {
	display: flex;
	gap: 12px;
}

.btn_detail {
	position: relative;
	display: inline-flex;
	align-items: center;
	padding: 10px 20px;
	background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	color: #fff;
	text-decoration: none;
	border-radius: 25px;
	font-weight: 700;
	font-size: 12px;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 
		0 6px 20px rgba(102, 126, 234, 0.3),
		inset 0 1px 0 rgba(255, 255, 255, 0.1);
	flex: 1;
	justify-content: center;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	overflow: hidden;
}

.btn_detail::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
	transition: all 0.6s ease;
}

.btn_detail:hover::before {
	left: 100%;
}

.btn_detail:hover {
	background: linear-gradient(135deg, #5a67d8 0%, #667eea 100%);
	transform: translateY(-3px) scale(1.02);
	box-shadow: 
		0 12px 35px rgba(102, 126, 234, 0.4),
		inset 0 1px 0 rgba(255, 255, 255, 0.2);
	color: #fff;
	text-decoration: none;
}

.btn_profile {
	position: relative;
	display: inline-flex;
	align-items: center;
	padding: 10px 18px;
	background: linear-gradient(135deg, #a8a8a8 0%, #8e8e8e 100%);
	color: #fff;
	text-decoration: none;
	border-radius: 25px;
	font-weight: 700;
	font-size: 12px;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 
		0 6px 20px rgba(168, 168, 168, 0.3),
		inset 0 1px 0 rgba(255, 255, 255, 0.1);
	border: none;
	cursor: pointer;
	justify-content: center;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	overflow: hidden;
}

.btn_profile::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
	transition: all 0.6s ease;
}

.btn_profile:hover::before {
	left: 100%;
}

.btn_profile:hover {
	background: linear-gradient(135deg, #909090 0%, #757575 100%);
	transform: translateY(-3px) scale(1.02);
	box-shadow: 
		0 12px 35px rgba(168, 168, 168, 0.4),
		inset 0 1px 0 rgba(255, 255, 255, 0.2);
	color: #fff;
	text-decoration: none;
}

/* 반응형 디자인 */
@media all and (max-width: 1200px) {
	.map_section {
		gap: 40px;
	}
}

@media all and (max-width: 1024px) {
	#map_member {
		margin: 50px 0;
		padding: 40px 0;
	}
	
	#map_member h3 {
		font-size: 28px;
	}
	
	.map_section {
		flex-direction: column;
		gap: 40px;
	}
	
	.map_background {
		max-width: 100%;
	}
	
	.member_cards_section {
		max-width: 100%;
	}
	
	.member_cards {
		min-height: 480px; /* 모바일에서 카드 컨테이너 최소 높이 증가 */
	}
}
@media all and (max-width: 890px) {
	.member_cards_section {
		width: 100%;
	}
}
@media all and (max-width: 768px) {
	#map_member {
		margin: 40px 0;
		padding: 30px 0;
	}
	
	#map_member h3 {
		font-size: 24px;
	}
	
	.map_section {
		padding: 0 15px;
		gap: 30px;
	}
	
	.map_background {
		padding: 20px;
	}
	
	.member_card {
		flex-direction: column;
		text-align: center;
		padding: 18px 15px;
		border-radius: 18px;
		min-height: 220px; /* 모바일에서도 최소 높이 보장 */
	}
	
	.member_photo {
		width: 90px;
		height: 90px;
		margin: 0 auto 20px;
	}
	
	.member_info {
		padding-left: 0;
		align-items: flex-end;
		justify-content: center;
		flex-direction: row;
		gap:5px;
		flex:0;
	}

	.member_party {
		margin-bottom: 0;
	}
	.member_name strong {
		font-size: 18px;
	}
	
	.member_district {
		text-align: center;
		padding-left: 0;
		margin-bottom: 0;
	}
	
	.member_district::before {
		display: none;
	}
	.member_district{
		display: none;
	}
	.member_name {
		justify-content: center;
		margin-bottom: 0;
		flex-direction: column;
		gap: 8px;
	}
	.member_actions {
		height:38.5px;
	}
	.cards_title {
		font-size: 22px;
	}

	
	.btn_detail,
	.btn_profile {
		padding: 12px 25px;
		font-size: 13px;
		border-radius: 25px;
	}
}


/* 활성화된 마커 스타일 */
.map_marker.active .marker_icon {
	background: linear-gradient(135deg, #ff6b35 0%, #f7931e 100%);
	transform: scale(1.2);
	box-shadow: 0 8px 25px rgba(255, 107, 53, 0.4);
	animation: activeMarker 2s infinite;
}

@keyframes activeMarker {
	0% {
		box-shadow: 0 8px 25px rgba(255, 107, 53, 0.4);
	}
	50% {
		box-shadow: 0 8px 35px rgba(255, 107, 53, 0.7);
	}
	100% {
		box-shadow: 0 8px 25px rgba(255, 107, 53, 0.4);
	}
}

/* 의원이 없을 때 표시되는 메시지 */
.no_member_message {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 60px 30px;
	text-align: center;
	background: #f8f9fa;
	border-radius: 20px;
	border: 2px dashed #dee2e6;
	min-height: 200px;
}

.message_icon {
	width: 60px;
	height: 60px;
	background: linear-gradient(135deg, #6c757d 0%, #495057 100%);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
	font-size: 24px;
	color: #fff;
}

.no_member_message h4 {
	font-size: 22px;
	font-weight: 700;
	color: #495057;
	margin-bottom: 10px;
	font-family: "gmarket";
}

.no_member_message p {
	font-size: 16px;
	color: #6c757d;
	line-height: 150%;
}

/* 기존 마커 클릭 영역 스타일 제거됨 */

/* 면별 마커 스타일 */
.area_marker {
	position: absolute !important;
	cursor: default;
	z-index: 25;
	transition: all 0.3s ease;
	padding: 5px;
	margin: -5px;
	display: block !important; /* 기본적으로 표시 */
}

.area_marker_icon {
	position: relative;
	width: 16px;
	height: 16px;
	background: #6c757d; /* 기본 색상 (선거구 색상으로 덮어씀) */
	border-radius: 50%;
	border: 2px solid #fff;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
	display: block;
	z-index: 30;
}

/* 면별 마커 기본 표시 설정 */
.area_marker {
	display: block !important;
	visibility: visible !important;
	opacity: 0.3; /* 기본 반투명 상태 */
	transition: opacity 0.3s ease;
}

.area_marker_label {
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translateX(-50%);
	background: rgba(0, 0, 0, 0.9) !important;
	color: #fff !important;
	padding: 6px 10px;
	border-radius: 12px;
	font-size: 12px;
	font-weight: 700;
	white-space: nowrap;
	opacity: 1 !important;
	visibility: visible !important;
	display: block !important;
	transition: all 0.3s ease;
	z-index: 150;
	pointer-events: none;
	min-width: 45px;
	text-align: center;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
	border: 1px solid rgba(255, 255, 255, 0.2);
}

/* 면별 마커 선거구별 색상 */
.area_marker_icon.district-ga {
	background: #e74c3c !important; /* 밝은 빨간색 */
	box-shadow: 0 2px 8px rgba(231, 76, 60, 0.4) !important;
}

.area_marker_icon.district-na {
	background: #3498db !important; /* 밝은 파란색 */
	box-shadow: 0 2px 8px rgba(52, 152, 219, 0.4) !important;
}

.area_marker_icon.district-da {
	background: #f39c12 !important; /* 황금색 */
	box-shadow: 0 2px 8px rgba(243, 156, 18, 0.4) !important;
}

.area_marker_icon.district-proportional {
	background: #9b59b6 !important; /* 자주색 */
	box-shadow: 0 2px 8px rgba(155, 89, 182, 0.4) !important;
}

/* 면별 마커 표시 상태 */
.area_marker.visible {
	display: block !important;
	opacity: 1;
	visibility: visible;
}

.area_marker.hidden {
	display: none !important;
}

/* 면별 마커 활성화 상태 */
.area_marker.active .area_marker_icon {
	transform: scale(1.5);
	border: 3px solid #fff;
}

/* 기존 선거구 마커 위치 클래스 (사용하지 않음) */

/* 선거구 선택 버튼 */
.district_selector {
	position: absolute;
	bottom: 15px;
	left: 50%;
	transform: translateX(-50%);
	background: rgba(255, 255, 255, 0.95);
	border-radius: 15px;
	padding: 12px 15px;
	box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
	z-index: 20;
	backdrop-filter: blur(10px);
	width:70%;
	display:flex;
	justify-content: center;
	align-items: center;
}

.selector_title {
	font-size: 14px;
	font-weight: 700;
	color: #333;
	margin-bottom: 10px;
	text-align: center;
	font-family: "gmarket";
}

.selector_buttons {
	display: flex;
	flex-direction: row;
	gap: 8px;
	min-width: auto;
}

.district_btn {
	padding: 6px 12px;
	border: 2px solid #dee2e6;
	border-radius: 20px;
	background: #fff;
	color: #495057;
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
	text-align: center;
	font-family: "gmarket";
	min-width: 70px;
}

.district_btn:hover {
	border-color: #007bff;
	background: #f8f9fa;
	color: #007bff;
	transform: translateY(-1px);
}

.district_btn.active {
	border-color: #007bff;
	background: #007bff;
	color: #fff;
	box-shadow: 0 3px 10px rgba(0, 123, 255, 0.3);
}

.district_btn[data-district="가선거구"].active {
	background: linear-gradient(135deg, #4682b4 0%, #87ceeb 100%);
	border-color: #4682b4;
	box-shadow: 0 3px 10px rgba(70, 130, 180, 0.4);
}

.district_btn[data-district="나선거구"].active {
	background: linear-gradient(135deg, #32cd32 0%, #90ee90 100%);
	border-color: #32cd32;
	box-shadow: 0 3px 10px rgba(50, 205, 50, 0.4);
}

.district_btn[data-district="다선거구"].active {
	background: linear-gradient(135deg, #ff8c00 0%, #ffa500 100%);
	border-color: #ff8c00;
	box-shadow: 0 3px 10px rgba(255, 140, 0, 0.4);
}

.district_btn[data-district="비례대표"].active {
	background: linear-gradient(135deg, #9370db 0%, #663399 100%);
	border-color: #9370db;
	box-shadow: 0 3px 10px rgba(147, 112, 219, 0.4);
}

@media all and (max-width:520px) {
	.district_selector {width:90%;padding:12px 5px;}
}


/* 의원이 없는 마커 스타일 */
.map_marker.no-members {
	pointer-events: auto;
	cursor: pointer;
}

.map_marker.no-members .marker_icon {
	filter: grayscale(50%);
	opacity: 0.6;
}

.map_marker.no-members .marker_label {
	opacity: 0.7;
}

.map_marker.no-members:hover .marker_icon {
	filter: grayscale(30%);
	opacity: 0.8;
	transform: scale(1.05);
}

/* 선거구별 마커 스타일 */

/* 가선거구 마커 (파란색 계열) */
.marker_icon.district-ga {
	background: linear-gradient(135deg,#7bbff6 0%,#c0ebfd 100%);
	border: 3px solid #fff;
	box-shadow: 0 5px 15px rgba(70, 130, 180, 0.3);
}

/* 나선거구 마커 (녹색 계열) */
.marker_icon.district-na {
	background: linear-gradient(135deg, #32cd32 0%, #90ee90 100%);
	border: 3px solid #fff;
	box-shadow: 0 5px 15px rgba(50, 205, 50, 0.3);
}

/* 다선거구 마커 (주황색 계열) */
.marker_icon.district-da {
	background: linear-gradient(135deg,#ffcb8a 0%, #ffa500 100%);
	border: 3px solid #fff;
	box-shadow: 0 5px 15px rgba(255, 140, 0, 0.3);
}

/* 비례대표 마커 스타일 (보라색 계열) */
.marker_icon.proportional {
	background: linear-gradient(135deg, #9370db 0%, #663399 100%);
	border-radius: 10px;
	width: 50px;
	height: 30px;
	border: 3px solid #fff;
	box-shadow: 0 5px 15px rgba(147, 112, 219, 0.3);
}

.marker_icon.proportional::before {
	content: '비례';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: auto;
	height: auto;
	background: transparent;
	border-radius: 0;
	font-size: 12px;
	font-weight: 700;
	color: #fff;
	font-family: "gmarket";
}

/* 호버 효과 */
.map_marker:hover .marker_icon.district-ga {
	background: linear-gradient(135deg, #1e90ff 0%, #87cefa 100%);
	transform: scale(1.1);
}

.map_marker:hover .marker_icon.district-na {
	background: linear-gradient(135deg, #228b22 0%, #98fb98 100%);
	transform: scale(1.1);
}

.map_marker:hover .marker_icon.district-da {
	background: linear-gradient(135deg, #ff7f00 0%, #ffb347 100%);
	transform: scale(1.1);
}

.map_marker:hover .marker_icon.proportional {
	transform: scale(1.1);
	background: linear-gradient(135deg, #8a2be2 0%, #9932cc 100%);
}

/* 활성화 상태 - 모든 선거구 공통 */
.map_marker.active .marker_icon.district-ga,
.map_marker.active .marker_icon.district-na,
.map_marker.active .marker_icon.district-da {
	background: linear-gradient(135deg, #ff6b35 0%, #f7931e 100%);
	transform: scale(1.2);
	box-shadow: 0 8px 25px rgba(255, 107, 53, 0.4);
	animation: activeMarker 2s infinite;
}

.map_marker.active .marker_icon.proportional {
	background: linear-gradient(135deg, #ff6b35 0%, #f7931e 100%);
	transform: scale(1.2);
	box-shadow: 0 8px 25px rgba(255, 107, 53, 0.4);
	animation: activeMarker 2s infinite;
}

/* 부드러운 전환 효과 */
.member_card {
	transition: all 0.5s ease;
}

/* 기존 터치 디바이스용 마커 스타일 제거됨 */

@media (max-width: 840px) {
  .custom-slider-inner .swiper-slide {
    width: 100% !important;   /* slidesPerView:1 보조 */
  }
}