@charset "UTF-8";

/*@import url('https://fonts.googleapis.com/earlyaccess/nanummyeongjo.css');
@import url('https://fonts.googleapis.com/css?family=Nanum+Gothic'); */
@import url('Pretendard.css');
/*@import url('NotoSansKR.css');*/


#codeigniter_profiler { display:none; }

/* CSS Document */
* { 
	margin:0; padding:0; 
	word-break:keep-all;  
	/*폰트 안티앨리어싱/스무딩 */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}
a > * { line-height:0; }
img { border:medium none; }
html { 
	font-size: 16px; 
	line-height:1.6; 
	-webkit-text-size-adjust:100%; 
	-ms-text-size-adjust:100%; 
	-moz-text-size-adjust:100%; 
	text-size-adjust:100%; }
body { font-family:'Pretendard',/*'NotoSansKR',*/  -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif !important; font-size:1rem; font-weight:400;  }
a { color:#000; font-size:1rem; text-decoration:none; -webkit-transition:all 0.2s ease-in-out 0s; -o-transition:all 0.2s ease-in-out 0s; -moz-transition:all 0.2s ease-in-out 0s; transition:all 0.2s ease-in-out 0s; }
a:hover { text-decoration:none; -webkit-transition:all 0.2s ease-in-out 0s; -o-transition:all 0.2s ease-in-out 0s; -moz-transition:all 0.2s ease-in-out 0s; transition:all 0.2s ease-in-out 0s; 
	text-underline-offset: 3px; /* 줄과 텍스트 사이 간격 조정 */ 
	text-decoration-thickness: 1px; /* 줄 두께 조정 (선택) */ }
a:focus { outline:none; }
a:focus, a:active { text-decoration:none; }
p, ol, ul { padding:0; margin:0; }
.clear:after { content:""; display:block; clear:both; }
label { font-weight:normal; }
input { border: 1px #ddd solid; border-radius: 0; outline: none;}

	@media (max-width:1400px) {
		html { font-size:15px; }
		.container { width:100% !important; }
	}
	@media (max-width: 480px) {
		html {
		font-size: 14px;   /* 1rem = 14px */
		}
	}

h1, h2, h3, h4, h5, h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 { margin:0; }
li{list-style:none; }

.clearfix {clear:both; }
.clear:after { content:""; display:block; clear:both; }
.bold {font-weight:bold; }

.txt_center { text-align:center !important; }
.txt_left { text-align:left !important; }
.txt_right { text-align:rigsht !important; }

.left { float:left; }
.right { float:right; }


/* common */
.wrapper { margin:0 auto; overflow:hidden; width:100%; }


/* 콘텐츠 가로 너비 */
.container { width: 1440px; margin:0 auto; padding-left:0;padding-right:0;}

		@media (max-width: 1440px) {
			.container { padding-left:15px;padding-right:15px;}
		}


.view-all { float:right;width:75px;position:absolute;top:10px;right:0; }
.form-control { background-color:#fff; background-image:none; border:1px solid #e5e6e7; border-radius:0; color:inherit; display:inline-block; padding:6px;
				font-size:1rem; vertical-align:middle; box-shadow:none; }
.control-label { color:#333; }
.panel-heading { font-size:1rem; }
.btn-xs { font-size:1rem; padding:0 15px; line-height:2.429rem; border-radius:0; }
.btn_center { text-align:center; padding:30px 0; display: flex; justify-content: center; }

		@media (max-width:425px) {
			.btn-xs { padding:0 10px; }
			.btn_center { padding: 20px 0; flex-wrap: wrap;}
			.btn_center .regi_txt { padding: 10px;}
		}

.checkbox-inline, .radio-inline { font-weight:inherit; }



/*******************************************************************
		header 	
******************************************************************/
header { /*position: absolute; top: 0;z-index: 9999; */  width: 100%; background:rgba(256,256,256,1); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12); color:#222; clear:both; width:100%; }/* navbar 헤더 배경색*/
.header-top-menu { float: right; display: flex; }
.header-top-menu li a { color: rgba(255,255,255,.5); font-size: 14px; line-height: 50px; padding-left: 40px; }
.header-top-menu li a:hover { color: #fff;}
.header-top-menu .fa, .header_line { display:none; }

		@media (max-width: 768px) {
			header .header-top-menu { display: none; }
		}

.navbar-header { 
	height:120px; /* navbar 헤더 높이 */
	display: flex;  align-items: center;
	justify-content: flex-end;
	width: 100%;
} 

/* navbar */
.navbar-default .navbar-brand { background:url(../images/logo.png) no-repeat left; width:280px; height:48px; padding:0; font-size:0; display:inline-block; outline:0; margin-top:44px; }
.navbar-brand, .navbar-nav>li>a { text-shadow:none; }

.navbar { background: transparent; box-shadow: none; border:0 none; border-radius:0; margin-bottom:0; }
.navbar-default .container { position:relative; }

.navbar-default .navbar-nav {
	display: flex;
	justify-content: center;
	width: 660px; /* allmenu와 동일한 너비 */
	margin: 0 auto;
	border: none;

}
.navbar-default .navbar-nav>li { 
	width:25%; /* Full Down Menu type 인 경우 width값 일치 필요 */
	text-align: center;
}
.navbar-default .navbar-nav>li:last-of-type {}

.navbar-default .navbar-nav>li>a {
	display: block; 
	width:100%; 
	color:#222; 
	font-weight:600; 
	font-size: 1.25rem; 
	text-transform:uppercase; 
	padding:0; 
	line-height:120px; 
	background-position:bottom center; 
} /* navbar 1차메뉴 높이*/

.navbar-default .navbar-nav>li>a:hover { color:#115aa8; }
.navbar-default .navbar-nav>.active>a,
.navbar-default .navbar-nav>.active>a:hover,
.navbar-default .navbar-nav>.active>a:focus { color:#115aa8; box-shadow:none; background-image:none; }
.navbar-default .navbar-nav>.open>a,
.navbar-default .navbar-nav>.open>a:hover,
.navbar-default .navbar-nav>.open>a:focus,
.navbar-default .navbar-nav>.open>a:focus { color:#115aa8; box-shadow:none; background-image:none; }



		@media (max-width:1024px) {	
			.navbar-default .container { padding:0; }
			.navbar-default .navbar-nav>li>a { padding:0 20px; }
		}
		@media (min-width:768px) {
			.navbar-nav { float: none;}
			.navbar-brand { padding-left:80px; margin-left:0 !important; }	
			.navbar-header { float:inherit; display:none; }		
		}
		@media (max-width:768px) {
			.navbar-default .navbar-brand { margin-top:7px; width:230px; background-size:90%; background-position:20px; }
			.navbar-header { height:inherit !important; margin:0 !important; display:block; }	
			.navbar { min-height:60px; background:rgba(256,256,256,1);  z-index: 9999; /*position: absolute;top: 0; */width: 100%; }
			.navbar-default .navbar-nav>li>a { line-height:50px; font-size: 1rem; }	
		}
		@media (max-width:425px) {
			.navbar-default .navbar-brand { width:250px; background-position:15px; }	
		}


.navbar_menu { width:100%; }


/* dropdown type */
/*
.navbar .dropdown { position:inherit; }
.navbar .dropdown-menu { padding:10px 0; margin:20px 0 0 5px; border:none; border-radius:0; background-color:rgba(256,256,256,1); box-shadow:rgba(0,0,0,0.1) 9px 5px 13px;min-width:inherit; }
.navbar .dropdown-menu li a { padding:0 30px 0 25px; font-size: 1rem; line-height:40px; color:#000;
							 -webkit-transition:all 0.2s ease-in-out 0s; -o-transition:all 0.2s ease-in-out 0s; -moz-transition:all 0.2s ease-in-out 0s; transition:all 0.2s ease-in-out 0s; }
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus { background:none !important; color:#e7f416; }
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a { -webkit-transition:all 0.2s ease-in-out 0s; -o-transition:all 0.2s ease-in-out 0s; -moz-transition:all 0.2s ease-in-out 0s; transition:all 0.2s ease-in-out 0s; }
*/


/* Full Down Menu type */
button.navbar-allmenu {
	margin-left: auto;
	order: 2;
	/* 필요시 아래 속성으로 위치 조정 */
	align-self: center;
	background: none;
	border: none;
	cursor: pointer;
	height: 60px;
	/*padding: 0 20px;*/
	display: flex;
	align-items: center;
}
.navbar-allmenu { }
.navbar-allmenu .icon-bar,
.navbar-default .navbar-toggle .icon-bar { background-color:#fff; display:block; width:25px; height:3px; margin:0 auto; }
.navbar-allmenu .icon-bar:not(:nth-child(1)) { margin-top:7px; }
.navbar-allmenu:focus { outline:0; }

.navbar-allmenu.allmenu_close { background-color:#115aa8; }
.navbar-allmenu.allmenu_close .icon-bar { width:30px; height:2px; border-radius:0; -webkit-transition:all 0.2s ease-in-out; transition:all 0.2s ease-in-out;  }
.navbar-allmenu.allmenu_close .icon-bar:nth-child(1) { transform:rotate(45deg); }
.navbar-allmenu.allmenu_close .icon-bar:nth-child(2) { display:none; }
.navbar-allmenu.allmenu_close .icon-bar:nth-child(3) { transform:rotate(-45deg); margin-top:-2px; }

#navallmenu {
	border-top:3px solid #004ea2; 
	background-color:rgba(256,256,256,1);  /* navbar 드롭다운 메뉴 배경색 */
	box-shadow:rgba(0,0,0,0.1) 0 5px 13px; 
	position:absolute; 
	width:100%;  
	z-index:99999; 
	}	 
	
#navallmenu .container {
	position: relative;
	max-width: 1440px;
	margin: 0 auto;
	padding: 0;
	display: flex;
	justify-content: center;

	background-image: url(../images/all_menu_bg.png);
	background-repeat: no-repeat;
	background-position:  7px -7px;
}

.allmenu {
	width: 660px; /* navbar-nav와 동일한 너비 */
	margin: 0 auto;
	display: flex;
	padding: 20px 0 30px;
	border: none;
	margin-left: 180px; /* 로고 영역만큼 여백 */
}
.allmenu .allmenu-li  { 
	width: 25%;  
	line-height:35px; 
	text-align:center; 
}
.allmenu .allmenu-li .allmenu-sub {}
.allmenu .allmenu-li:nth-of-type(1) { width: 25%;}
.allmenu .allmenu-li:nth-of-type(2) { width: 25%;  }
.allmenu .allmenu-li:nth-of-type(3) { width: 25%; }
.allmenu .allmenu-li:nth-of-type(4) { width: 25%; }

/*            
.allmenu .allmenu-li>ul { width: 72.5px;}
.allmenu .allmenu-li:nth-of-type(2) { padding-right:48px; }
.allmenu .allmenu-li:nth-of-type(4) { padding-right:45px; }
.allmenu .allmenu-li:last-of-type { display:none; }
*/
.navbar .nav > li > a.active-allmenu-hover {
  color: #004ea2 !important; /* 원하는 색상으로 변경 */
  font-size: 1.25rem; /* 원하는 폰트 크기로 변경 */
  font-weight: 700;
}

.allmenu .allmenu-li .allmenu-sub a { 
	font-size: 1rem; 
	color:#555555; 
	font-weight:500; 
	line-height:1.2; 
	padding:7px 10px; 
	display: block;
} /* navbar 드롭다운 메뉴 2차메뉴 */
.allmenu .allmenu-li .allmenu-sub a:hover { 
	color:#004ea2; 
	text-decoration:underline;
	text-underline-offset: 3px; /* 줄과 텍스트 사이 간격 조정 */
	text-decoration-color: #004ea2;
	text-decoration-thickness: 1px; /* 줄 두께 조정 (선택) */ 
}
.allmenu .allmenu-li .allmenu-sub .ca-depth-1 { display:none;}
.allmenu .allmenu-li .allmenu-sub .ca-depth-2 {  }
.allmenu .allmenu-li .allmenu-sub .ca-depth-3 { display:none; padding:0 0 0 10px; }

.allmenu .allmenu-li .allmenu-sub .ca-depth-3:first-child:before { content:""; display:block; height:10px; }
.allmenu .allmenu-li .allmenu-sub .ca-depth-3:last-child:after { content:""; display:block; height:10px; }

.allmenu .allmenu-li .allmenu-sub .ca-depth-3 a { color:#999; font-size:1rem; /* word-break:break-all; */ position:relative; }
.allmenu .allmenu-li .allmenu-sub .ca-depth-3 a:hover { color:#9a8a53; }
.allmenu .allmenu-li .allmenu-sub .ca-depth-3 a:before { content:"-"; display:inline-block; position:absolute; left:-10px; top:-2px; }


/* 인디케이터 */
.pink-indicator {
	position: absolute;
	top: -8px;
	width: 14px;
	height: 14px;
	border: 3px solid #004ea2;
	background-color: #fff;
	border-radius: 8px;
	transition: left 0.3s ease, opacity 0.3s ease;
	z-index: 99999;
	pointer-events: none;
	opacity: 0;
	display: block; /* 항상 block으로 두고 JS로 opacity만 제어 */
}

		@media (max-width:768px) {
			.navbar_menu { display:none; }	
			.navbar .dropdown-menu li a { line-height:40px; font-size:14px; padding:0 15px; }
		}


/* all Menu */
button.navbar-allmenu {}



/* navbar flex 정렬 */
.navbar_menu_inner > .container {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 120px;
	max-width: 1440px;
	margin: 0 auto;
	padding: 0;
	order: 1;
}

/* 왼쪽 : 브랜드(로고) */
.navbar_menu_inner .navbar-brand {
	margin: 0;
	padding: 0;
	display: block;
	flex:0 0 280px ; /* 로고 영역 고정 너비 */
	z-index: 2;
	margin-left: 0 !important;
	margin-right:0;
}

/* 중앙: 메뉴 */
.navbar_menu_inner .navbar-collapse {
	order: 2;
	width:660px;
	margin:0 auto;
	display: flex;
	justify-content: center;
	flex: 1 1 0;
}

/* 오른쪽: 전체메뉴 버튼 */
.btn-popup-allmenu {
	margin-left: auto;
	order: 3;
	background: none;
	border: none;
	cursor: pointer;
	height: 40px;
	padding: 0 10px;
	display: flex;
	align-items: center;
	font-size: 1rem;
	font-weight: 500;
	transition: background-color 0.3s cubic-bezier(0.4,0,0.2,1), color 0.3s cubic-bezier(0.4,0,0.2,1), border-radius 0.3s cubic-bezier(0.4,0,0.2,1);
}
.btn-popup-allmenu .menu-icon {
	display: inline-block;
	width: 18px;
	height: 14px;
	position: relative;
	margin-right: 8px;
	vertical-align: middle;
	
}
.btn-popup-allmenu .menu-icon span {
	display: block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background: #222;
	border-radius: 2px;
	transition: background 0.1s cubic-bezier(0.4,0,0.2,1);
}
.btn-popup-allmenu .menu-icon span:nth-child(1) { top: 0; }
.btn-popup-allmenu .menu-icon span:nth-child(2) { top: 6px; }
.btn-popup-allmenu .menu-icon span:nth-child(3) { top: 12px; }

.btn-popup-allmenu,
.btn-popup-allmenu:hover {
	/* 기존 border-radius 트랜지션에 cubic-bezier로 더 부드럽게 */
	transition:
		background-color 0.3s cubic-bezier(0.4,0,0.2,1),
		color 0.3s cubic-bezier(0.4,0,0.2,1),
		border-radius 0.5s cubic-bezier(0.77,0,0.175,1);
}


.btn-popup-allmenu:hover {
	color: #fff;
	background-color: #004ea2;
	border-radius: 5px;
	transition: background-color 0.3s cubic-bezier(0.4,0,0.2,1), color 0.3s cubic-bezier(0.4,0,0.2,1), border-radius 0.3s cubic-bezier(0.4,0,0.2,1);
}
.btn-popup-allmenu:hover .menu-icon span {
	background: #fff;
	transition: background 0.3s cubic-bezier(0.4,0,0.2,1);
}



		/* 반응형 스타일 */
		@media (max-width: 1440px) {

			.navbar_menu_inner > .container,
			#navallmenu .container {
				padding-left: 15px;
				padding-right: 15px;
			}
			.allmenu {
				margin-left: 180px; /* 로고 영역만큼 패딩 */
			}
		}

		@media (max-width: 1024px) {
			.navbar-default .navbar-nav,
			.allmenu{
				width:500px;
			}
			.allmenu {
				margin-left: 180px; 
			}
		}

		@media (max-width: 768px) {
			.navbar_menu_inner .navbar-brand,
			.allmenu {
				margin: 0 auto;
				padding-left: 0;
			}
		}










/* 전체메뉴 팝업 */
.popup-allmenu-wrap {display: none; width:100%; height: 100%; position:fixed; top:0; left:0; z-index:999999; background-color:rgba(0, 0, 0, 0.7); }
.popup-allmenu-wrap .container {
	max-width: 1200px;
	position: relative;
	margin: 50px auto;
	height: calc(100% - 100px);
	padding: 30px;
	background-color:#fff; 
	box-shadow:0 3px 10px rgba(0, 0, 0, 0.4);
	border-radius: 25px;
}
.popup-allmenu-close-btn-area {
	display: flex;
	justify-content: flex-end; /* 우측 정렬 */
	align-items: center;
	width: 100%;
}
.popup-allmenu-close {
	font-size:3em; font-weight:100; line-height: 1.1; color:#222;
	background:none;border:none;
	cursor:pointer; 
	display: block;
	text-align: right;
	}
.popup-allmenu {
	height: calc(100% - 100px);
	overflow-y: auto;
	overflow-x: hidden; /* 가로 스크롤 방지 */
}
.popup-allmenu-li {
	border-bottom:1px solid #222; padding:30px 0; 
	display: flex; flex-direction: row; flex-wrap: nowrap;
	align-items: flex-start; /* 세로 상단 정렬 */
}
.popup-allmenu-li h1 {
	width:200px; 
	text-align: right; 
	padding-top:20px;
	padding-right: 20px; color:#222; font-weight:700; font-size: 1.5rem; display: block; flex-shrink: 0; /* h1 너비 고정 */ }
.popup-allmenu-li .popup-allmenu-sub {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap:20px;
	flex: 1 1 0; /* 남은 공간 차지 */
	width: 100%;
	min-width: 0;
	justify-content: flex-start;}

.popup-allmenu-li .popup-allmenu-sub > .ca-depth-2 {width:30%}
.popup-allmenu-li .popup-allmenu-sub > .ca-depth-2 > a {border:20px;font-size:1.25rem; font-weight:500; text-align: left; border:1px solid #777; border-radius: 8px;padding:20px; display: block}
.popup-allmenu-li .popup-allmenu-sub > .ca-depth-2 > a:hover { color:#fff;  background:#003b8f }
.popup-allmenu-li .popup-allmenu-sub > .ca-depth-2 > ul {margin-left:20px; margin-top:5px; }
.popup-allmenu-li .popup-allmenu-sub > .ca-depth-2 > ul > .ca-depth-3 > a {font-size:1rem; line-height:1.1; color:#444}
.popup-allmenu-li .popup-allmenu-sub > .ca-depth-2 > ul > .ca-depth-3 > a:hover { color:#004ea2; text-decoration:underline; text-underline-offset: 3px; text-decoration-thickness: 1px; } /* 줄과 텍스트 사이 간격 조정, 줄 두께 조정 */	

		@media (max-width : 768px) {
			.popup-allmenu-wrap .container {	
				width: 90% !important;
				max-width:700px !important;
			}
			.popup-allmenu-li {
				flex-direction: column;
			}
			.popup-allmenu-li h1 {
				width:200px; 
				text-align: left;
				padding-bottom:10px;
			}
			.popup-allmenu-li:nth-of-type(2) .popup-allmenu-sub > .ca-depth-2,
			.popup-allmenu-li:nth-of-type(3) .popup-allmenu-sub > .ca-depth-2 {
				width:48%
			}
		}


/********************************************************************
	navbar - mobile
********************************************************************/
.navbar-default .navbar-toggle { border:0; margin:0; padding:0; width:60px; height:60px; border-radius:0;background:#004ea2 }
.navbar-default .navbar-toggle .icon-bar { width:20px; height:2px; background-color:#fff; margin:0 auto; }
.navbar-default .navbar-toggle .icon-bar:not(:nth-child(1)) { margin-top:6px; }

		@media (max-width : 768px) {
			.navbar-default .navbar-toggle { display: block !important;}
		}
/********************************************************************
	side_menu - mobile
********************************************************************/
#side_menu { display:block; position:fixed; top:0; right:0; width:100%; height:100%; overflow:hidden; z-index:99999; margin:0; background-color:rgba( 0, 0, 0, 0.5 ); display:none }
#side_menu .side_wr { width:250px; background:#fff; opacity:1; position:absolute; top:0; right:0; box-shadow:0 0 10px #000; overflow-x:hidden; height:100%; overflow-y:auto }
#side_menu .side_wr .side_inner_rel { position:relative; height:100%; display:block; overflow:auto; }
#side_menu .side_wr .side_inner_abs { position:absolute; width:100%; display:block; -webkit-tap-highlight-color:rgba(0,0,0,0); width:100%; -webkit-transform:translateZ(0); -moz-transform:translateZ(0); -ms-transform:translateZ(0); -o-transform:translateZ(0); transform:translateZ(0); -webkit-touch-callout:none; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none; -webkit-text-size-adjust:none; -moz-text-size-adjust:none; -ms-text-size-adjust:none; -o-text-size-adjust:none; text-size-adjust:none }

#side_menu .m_menu li { display:block; line-height:50px; position:relative; border-bottom:1px #e7e7e7 solid; }
#side_menu .m_menu li a.text_link { display:inline-block; width:85%; white-space:nowrap; padding-left:20px; color:#222; font-size: 1.125rem; font-weight:600}
#side_menu .m_menu li a.text_link:hover { color:#004ea2 !important; }
#side_menu .m_menu li a.subopen { color:#555; }
#side_menu .m_menu span { position:absolute; right:20px; top:15px; } 

#side_menu li, #side_menu li>a, #side_menu li.active>a, #side_menu li>a:hover, #side_menu li>a:focus {  text-decoration:none; }
#side_menu .dropdown-custom-menu { background:linear-gradient(180deg, #f9f9f9 0%, #eaeaea 100%); overflow:hidden; width:100%; display:none; border-top:1px #eee solid; }
#side_menu .dropdown-custom-menu li { border-bottom:1px #eee solid !important; background:none; }
#side_menu .dropdown-custom-menu li:last-child { border-bottom:0 !important; }
#side_menu .dropdown-custom-menu li a { color:#222; font-size: 1rem; font-weight: 400; padding-left:35px; display:block; width:100%; line-height:35px; }
#side_menu .dropdown-custom-menu li a:hover { color:#222; background-color:#f5f5f5; }

#side_menu .dropdown-custom-menu ul { padding:10px 0; background-color:#fff; border-bottom:1px #eee solid; }
#side_menu .dropdown-custom-menu ul li { border-bottom:0 !important; }
#side_menu .dropdown-custom-menu ul li a { color:#555; line-height:1.857rem; font-size:1rem; padding-left:30px; }
#side_menu .dropdown-custom-menu ul li a:hover { color:#222; background:none; }
#side_menu .dropdown-custom-menu ul li a:before { content:"-"; display:inline-block; }

#side_menu .m_login { text-align:center; margin:10px; }
#side_menu .m_login span { padding:0 5px; }
#side_menu .m_board { background:#000; clear:both; margin:0; }
#side_menu .m_board li { display:block; line-height:2.857rem; position:relative; padding-left:35px; }
#side_menu .m_board li a:hover { color:#004ea2; }
#side_menu .m_board span { position:absolute; top:13px; left:10px; padding-right:10px; }
#side_menu .m_search { margin:0 auto; padding:20px 0 0; width:100%; text-align:center; }

#side_menu .m_menu_top { height:60px; background-color:#222; position:relative; display: flex; align-items: center; }
#side_menu .m_menu_top .m_close { cursor:pointer; font-size:0; width:20px; height:20px; border: 1px; position: relative; margin:0 20px 0 auto;}
#side_menu .m_menu_top .m_close:before,
#side_menu .m_menu_top .m_close:after { content:""; display:block; background-color:#fff; width:22px; height:2px; position:absolute; top:45%; }
#side_menu .m_menu_top .m_close:before { transform:rotate(45deg); }
#side_menu .m_menu_top .m_close:after { transform:rotate(-45deg); }

/********************************************************************
	login area - mobile
********************************************************************/
#side_menu .header-top-menu { margin-left: 20px;}
#side_menu .header-top-menu li a { padding: 0 20px 0 0;}


.notifications { position:relative;cursor:pointer; }
.notifications-list {color:#060606;border-bottom:1px solid #ededed;display:block;overflow:hidden;line-height:1.786rem; }
.notifications-list a:link{color:#060606; }
.notifications-list a:active,
.notifications-list a:hover {color:#004ea2; }
.notifications-menu{position:absolute; top:100%; left:0; z-index:9999; display:none; width:330px; background-color:#f5f5f6; -webkit-border-radius:0 0 3px 3px; -webkit-background-clip:padding-box; -moz-border-radius:0 0 3px 3px; -moz-background-clip:padding; border-radius:0 0 3px 3px; background-clip:padding-box; -moz-box-shadow:0 1px 0px rgba(0,0,0,.05); -webkit-box-shadow:0 1px 0px rgba(0,0,0,.05); box-shadow:0 1px 0px rgba(0,0,0,.05); border:1px solid #f8f8f8; padding:5px 15px; }
.notifications-menu .external { background-color:#FFF; display:block; }
.notifications-menu .external a { background-color:#fff; color:#e24f88; }
.notifications-list .point{ color:#ec5956 !important; text-align:center; }
.notifications-list span{ padding-top:10px; font-size:0.786rem; }

.m_nav { padding:8px 10px 0 0; }
nav , .pagination{text-align:center; }

body.over_hidden{overflow:hidden} 


/********************************************************************
	우측 플로팅 배너 
********************************************************************/

/* 아래처럼 .floating-banner에 ::before 추가 */

.floating-banner-wrap {
  position: fixed;
  top: 250px;
  right: 0;
}
.floating-banner-bg {
	position: absolute;
	top: -10px;
	right: -10px;
	background: #00b4db; /* fallback */
	border-top-left-radius: 40px;
	border-top-right-radius: 0;
	border-bottom-left-radius: 40px;
	border-bottom-right-radius: 0;
	/* 필요시 overflow: hidden; */
	width: 110px;
	height: 125px;
	background-color: #00acd4;
	border-radius: 20px 0 0 20px;
	z-index: -1;
}
.floating-banner {
	position: relative;
	background-color: #27313b;
	border-radius: 20px 0 0 20px;
	padding: 28px 15px 28px 10px;
	width: 90px;
	box-shadow: 0 2px 12px rgba(0,0,0,0.08);
	display: flex;
	flex-direction: column;
	align-items: center;
	isolation: isolate;
	/* 추가 */
	overflow: visible;
	z-index: 0;
}
.floating-banner ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.floating-banner li {
  margin-bottom: 22px;
  text-align: center;
}
.floating-banner li:last-child {
  margin-bottom: 0;
}
.floating-banner a {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #fff;
  font-size: 15px;
  font-weight: 400;
  text-decoration: none;
  transition: color 0.2s;
}
.floating-banner a:hover {
  color: #1cc6ea;
}
.floating-banner img {
  margin-bottom: 6px;
  display: block;
}
/* 플로팅 배너 a:hover 시 이미지 색상 #00acd4로 변경 (SVG, PNG 모두 대응) */
.floating-banner a:hover img {
	filter: brightness(0) saturate(100%) invert(54%) sepia(99%) saturate(747%) hue-rotate(151deg) brightness(97%) contrast(101%);
	/* PNG 등 컬러 이미지에도 적용됨. SVG는 fill이 currentColor면 아래도 추가 */
}
.floating-banner a:hover img[src$=".svg"] {
	filter: none; /* SVG는 아래 color로 처리 */
	color: #00acd4;
}


.floating-banner span {
  font-size: 13px;
  line-height: 1.3;
  letter-spacing: -0.02em;
  word-break: keep-all;
  font-family: 'NotoSansKR', Pretendard, sans-serif;
}
		@media (max-width:1440px) {
			.floating-banner-bg {
				width: 90px;
				height: 95px;
			}
			.floating-banner {
			padding: 28px 0 28px;
			width: 70px;
			}
		}
		
		@media (max-width: 900px) {
		.floating-banner-wrap { display: none; }
		}


/********************************************************************
	footer_banner : bxslider 버전
********************************************************************/
.footer_banner {padding:50px 0 }
.footer_banner::after { content: ""; display: block; clear: both; }
.footer_banner .container { overflow: hidden; height: 50px; display: flex; justify-content: space-between;  }
.footer_banner .container p { width:12%; font-size: 1.125rem; line-height: 50px; font-weight: 600; color: #333; padding: 0; margin: 0; padding-right: 10px; order: 1; flex-shrink: 0; }

.footer_banner_slide {  width:88%; height: 50px; order: 3; flex-shrink: 0; }
.footer_banner_slide .slick-slide a img { margin: 0 20px;    width: auto;
	height: auto;
	max-width: 100%;
	max-height: 50px; /* 슬라이더 높이에 맞게 필요시 조정 */
	display: inline-block;
	vertical-align: middle}


	.slick-list .slick-track{display: flex;flex-direction: row-reverse;
		
	}

.footer_banner .controler { display: flex; align-items: center; justify-content: center; width:60px; height: 50px; order: 2; flex-shrink: 0;  }
.footer_banner .controler button { width: 13px; height: 16px; border: 0; font-size:0;}
.footer_banner .controler .play { background: url(../images/footer_banner_play.png) no-repeat center; display: none;}
.footer_banner .controler .stop { background: url(../images/footer_banner_pause.png) no-repeat center; border:1px solid #000}

.footer_banner_slide .slick-arrow {  
	position: absolute;
	top: 18px;
	z-index: 10;
	width: 10px;
	height: 16px;
	padding:5px;

	font-size:0;
	background-color: transparent;
	background-image: url(../images/icon_arrow_8_b.png) ;
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: center;
	border: none;
}
.footer_banner_slide .slick-arrow.slick-prev {left: -30px; }
.footer_banner_slide .slick-arrow.slick-next {left: -60px;  transform: scaleX(-1);}



		@media (max-width:1024px){
			.footer_banner .container { height: 100px; padding-top: 25px; }
			.footer_banner .container p,
			.footer_banner .controler { display: none;}
			.footer_banner_slide { width: 100%; }
		}
		@media (max-width:768px){
			.footer_banner .container { height: 65px; padding: 0;}
			.footer_banner_slide { padding-top: 20px; }
			.footer_banner_slide .slick-slide a { display: block; height: 25px;}
			.footer_banner_slide .slick-slide a img { height: 100%;}
		}
		@media (max-width:425px){
		}

/********************************************************************
	footer	
********************************************************************/
footer { border-top: 1px solid #cccccc; background-color:#434343; position: relative;}

footer .company {}
footer .company ul { display: none; align-items: center; gap: 2rem; padding: 0 10px; height: 100px; margin: 0 auto; }
footer .company li a { font-size: 1rem; color:rgba(256,256,256,0.5); display: inline-block; line-height: 100px; }
footer .company li:nth-of-type(2) a,
footer .company li a:hover { color:#124ad9; }


footer .copyright .container { 
	position:relative;
	padding:30px 0; 
	/*background:url(../images/logo_footer.png) no-repeat 15px center;*/ font-size: 1rem; 
	color:rgba(256,256,256,0.5); 
}
footer .copyright .container .logo {
	width:280px; height:50px; font-size:0;
	position: relative; background-image: url(../images/footer_logo.png); background-repeat: no-repeat; background-position: 0 ;
	margin-bottom:20px;
}

#GoToTop {position: absolute; right: 50px; top: 60px; background: url(../images/btn_top.png) no-repeat center #fff; width: 80px; height: 80px; border-radius:40px; box-shadow: 0 0 15px rgba(0,0,0,.4); cursor: pointer;}




footer .copyright span { padding-right:7px; }
footer .see_mobile { margin:0 auto; text-align:center; display:none; } /****** 모바일 버젼으로 보기 숨김처리 **********/

		@media (max-width: 1024px) {
			footer .company ul { gap: 3rem;}
			footer .company li a { line-height: 60px; font-size: 15px;}
			footer .copyright .container { padding: 50px 0 50px 250px;}
			#GoToTop { right: 15px;}
		}
		@media (max-width:768px) {		
			footer .company ul { gap: 2rem;} 
			footer .company li a { font-size: 14px; line-height: 40px; }
			footer .copyright .container { font-size: 12px; padding: 30px 0 30px 170px; background-size: 15%; }
		}
		@media (max-width:425px) {
			footer .company ul { gap: 1rem; height:40px}
			footer .copyright .container { background-image: none; padding: 10px 25px; font-size:14px}
			#GoToTop { top: -20px;width: 50px; height: 50px; background-size: 60%; }
		}





/* 아마 게시판용인듯 */
.media{clear:both; }
.media-body,
.media-left,
.media-right {display:table-cell; vertical-align:top; }
.media-left,
.media>.pull-left { padding-right:10px; }
.media-right,
.media>.pull-right { padding-left:10px; }
.media-heading { font-size:1rem; overflow:hidden; }
.media-body .media-info { font-size:0.786rem; color:#666; }
.media-body .media-info span { padding-right:10px; }


/* sidebar */
.sidebar { border:1px solid #e5e5e5; padding:20px; }
.sidebar .headline { border-bottom:1px dotted #ccc; display:block; margin-bottom:15px; }
.sidebar .headline h3 { border-bottom:2px solid #3498db; display:inline-block; margin:0 0 -2px; padding-bottom:5px; font-size:1.071rem; }
.sidebar .loginbox { overflow:hidden; }
.sidebar .loginbox .text { padding-top:7px; }
.sidebar .loginbox .text li { float:left; padding-right:7px; }
.sidebar .welcome { overflow:hidden; }
.sidebar .welcome ul { overflow:hidden; }
.sidebar .welcome li { float:left; padding-right:5px; padding-bottom:5px; }
.sidebar .sidebar_latest li { padding-bottom:10px; }

.sidebar .tag-clouds{overflow:hidden; }
.sidebar .tag-clouds ul li{float:left; padding-right:10px; }


/* modal */
.modal .modal-body .number { padding-bottom:10px; }
.modal .modal-body .profile-info{overflow:hidden; }


.help-inline { display:inline-block;color:#737373;margin-left:10px; padding-top:7px;vertical-align:middle; }
.nopost {text-align:center; padding:120px 0 !important; }

textarea.dhtmleditor  { width:100%;height:350px; }

.latest_comment_count { font-size:0.786rem; color:#FF7700; margin-left:5px;font-weight:bold; }
/*.highlight { font-weight:bold; color:#7519FF; }*/


/* Sideview */
#nameContextMenu { background:#000; color:#fff; padding:4px 8px 6px;z-index:10000; }
#nameContextMenu a { color:#fff; font-size:0.857rem; line-height:1.429rem; display:block; }
#nameContextMenu a:hover { color:#ff0000; }
#nameContextMenu td { border:0px !important; }




/********************************************************************
*********************************************************************
	Main 
*********************************************************************
********************************************************************/
.main.main_index .sub_title_img {display: none !important; }


/********************************************************************
	Frame
********************************************************************/
.main .navbar-form { margin-top:0; margin-bottom:0; padding:0; }

.main-con1 {display: flex; flex-direction: row; align-items: flex-start; justify-content: center; gap:60px; margin:40px auto 90px; }
.main-con2 {display: flex; flex-direction: row; align-items: flex-start; justify-content: center;}


.main-con3 {width:100%; background-color:#f3fbfe; margin-top:90px}
.main-con3 .container	{display: flex; flex-direction: row; align-items: flex-start; justify-content: center; margin:40px auto 0; padding-top:80px; padding-bottom:50px;}


.main_title_box { display: flex; align-items: center; }

		@media (max-width: 1024px) {
		}
		@media (max-width:768px) {
		}
		@media (max-width:425px) {
			.main-con1, 
			.main-con2  { flex-direction: row; flex-wrap: wrap; margin:0; gap:0;}
			
			.main-con3 .container { flex-direction: column; align-items: center; padding-top: 40px; padding-bottom: 30px; }
			.main_title_box { flex-direction: column; align-items: center; }
		}


/* Color Setting */
.blue { color: #004ea2 !important; }
.pink { color: #e24f88 !important; }

.blue-bg { background-color: #004ea2 !important; }
.pink-bg { background-color: #e24f88 !important; }

.blue-bg:hover { background-color: #004ea2 !important; }
.pink-bg:hover { background-color: #e24f88 !important; }




/* AOS 애니메이션 스타일 */
.main-big-slider,
.main-coss-banner-wrap,
.main-notice,
.space-reserve-wrap,
.main-faq {
	opacity: 0;
	transform: translateY(60px);
	transition: 
		opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94),
		transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.main-notice {
	transform: translateY(-60px);
}

.main-big-slider.aos-animate,
.main-coss-banner-wrap.aos-animate,
.main-notice.aos-animate,
.space-reserve-wrap.aos-animate,
.main-faq.aos-animate {
	opacity: 1;
	transform: translateY(0);
}

/* 각 요소별 다른 효과 */
.main-notice {
	transform: translateY(-60px);
	transition: 
		opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94),
		transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.main-notice:first-of-type.aos-animate {
	opacity: 1;
	transition-delay: 0.6s; /* 첫 번째 공지사항 */
}

.main-notice:last-of-type.aos-animate {
	opacity: 1;
	transition-delay: 0.9s; /* 두 번째 공지사항 */
}

.space-reserve-wrap .space-card {
	opacity: 0;
	transform: translateY(40px);
	transition: 
		opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94),
		transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.space-reserve-wrap .space-card:nth-child(1) { transition-delay: 0.1s; }
.space-reserve-wrap .space-card:nth-child(2) { transition-delay: 0.2s; }
.space-reserve-wrap .space-card:nth-child(3) { transition-delay: 0.3s; }
.space-reserve-wrap .space-card:nth-child(4) { transition-delay: 0.4s; }
.space-reserve-wrap .space-card:nth-child(5) { transition-delay: 0.5s; }
.space-reserve-wrap .space-reserve { transition-delay: 0.6s; }

.space-reserve-wrap.aos-animate .space-card,
.space-reserve-wrap.aos-animate .space-reserve {
	opacity: 1;
	transform: translateY(0);
}

.main-faq-item {
	opacity: 0;
	transform: translateX(40px);
	transition: 
		opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94),
		transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.main-faq-item:nth-child(1) { transition-delay: 0.1s; }
.main-faq-item:nth-child(2) { transition-delay: 0.2s; }
.main-faq-item:nth-child(3) { transition-delay: 0.3s; }
.main-faq-item:nth-child(4) { transition-delay: 0.4s; }
.main-faq-item:nth-child(5) { transition-delay: 0.5s; }

.main-faq.aos-animate .main-faq-item {
	opacity: 1;
	transform: translateX(0);
}


		@media (max-width: 425px) {	
			
		.main-big-slider{
			transform: translateY(0);
		}

		.main-notice {
			transform: translateY(60px);
		}

		.main-notice:first-of-type.aos-animate {
			transition-delay: 0.2s; /* 첫 번째 공지사항 */
		}

		.main-notice:last-of-type.aos-animate {
			transition-delay: 0.4s; /* 두 번째 공지사항 */
		}

		
	}




/**************************************************************
	MainSlider Bx-slider
********************************************************************/

.main-big-slider { width:940px; 
	min-width: 940px;
	max-width: 940px;
	position:relative; 
	flex-direction: column;
	box-sizing: border-box; border-radius: 20px; overflow: hidden; } 
	/* main-big-slider 가로 사이즈 조정*/

	
	.main-big-slider>div>div>div>ul>li>div { 
		height: 500px; 
	}/* main-big-slider 세로 사이즈 조정*/

.main-big-slider .bx-wrapper {
	margin-bottom: inherit;
	border: 0;
	box-shadow: none;
}
.main-big-slider .bx-viewport {
	height: inherit !important;
}

.main-big-slider .bx-wrapper .bx-controls {
	position:absolute; 
	bottom:60px; left:0; 
	width:100%; height:30px; 
	/*background-color:rgba(0,0,0,0.5);*/
	z-index:10;
	display: flex;
	flex-direction: row; /* 순서대로 나열 */
	justify-content: flex-start;
	align-items: center;
	gap: 0 20px; /* 필요시 간격 조정 */
	padding: 0 40px; /* 좌우 패딩 */
}
.main-big-slider .bx-wrapper .bx-controls .bx-controls-direction {
	display: flex;
	flex-direction: row;
	align-items: center;
	order: 2;
}
.main-big-slider .bx-wrapper .bx-pager { 
	display: flex;
	align-items: center;
	justify-content: flex-start;
	order: 1;
	position: relative;
	bottom: auto;
	left: auto;
	width:auto;
	margin-left:20px;
	padding-top:0;
}


.main-big-slider .bx-wrapper .bx-pager.bx-default-pager a { 
	width: 100px; height: 2px; 
	margin:0;
	
	background: #fff;
	opacity: 0.43;
	transition: all 0.3s ease;
}
.main-big-slider .bx-wrapper .bx-pager.bx-default-pager a.active { 
	opacity: 0.8;}



.main-big-slider .bx-wrapper .bx-controls-direction a {
	width: 30px;
	height: 30px;
	margin-top:0;
	opacity: 1;
	filter: alpha(opacity=100);
	position: relative;
	top:auto;
	left: auto
}
.main-big-slider .bx-wrapper .bx-controls-direction a:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	background-position: center;
}

.main-big-slider .bx-wrapper .bx-prev {
	background: url(../images/icon_arrow_8_w.png) no-repeat center;
	transform: scaleX(-1); /* 좌우 반전 */
}
.main-big-slider .bx-wrapper .bx-prev:hover,
.main-big-slider .bx-wrapper .bx-prev:focus {
	background: url(../images/icon_arrow_8_w.png) no-repeat center;
}
.main-big-slider .bx-wrapper .bx-next {
	background: url(../images/icon_arrow_8_w.png) no-repeat center;
}
.main-big-slider .bx-wrapper .bx-next:hover,
.main-big-slider .bx-wrapper .bx-next:focus {
	background: url(../images/icon_arrow_8_w.png) no-repeat center;
}

			@media (max-width: 768px) {
				.main-big-slider {
					width: 100%;
					min-width: 375px;
					max-width: 100%;
					border-radius: 0;
				}
			}

			@media (max-width: 1024px) {
				.main-big-slider .bx-wrapper {
					border: 0;
					background-color: transparent;
					border-bottom-left-radius: 100px;
					border-bottom-right-radius: 100px;
				}
				.main-big-slider .bx-wrapper li {
					background-size: auto 100%;
					background-position: center;
				}
			}

			@media (max-width: 425px) {
				.main-big-slider .bxslider {
					display: none !important;
				}
				.main-big-slider .bxslider_mobile {
					display: block !important;
				}


				.main-big-slider {
					width: 100%;
					border-radius: 0;
				}
				
				.main-big-slider>div>div>div>ul>li>div {
					height: 375px;
				}
				
				.main-big-slider img {
					width: 100%;
				}
				.main-big-slider > div.bxslider_mobile > ul > li > .container {
					border:1px solid red;
					height:400px;
				}
				.main-big-slider > div > div > div > ul > li > div {
					
				}

				.main-big-slider .bx-wrapper .bx-controls .bx-controls-direction {
					display: none;
				}
				.main-big-slider .bx-wrapper {
					border: 0;
					background-color: transparent;
					border-bottom-left-radius: 70px;
					border-bottom-right-radius: 70px;
				}
				.main-big-slider .bx-wrapper .bx-pager {
					bottom: 10px;
				}
				.main-big-slider .bx-wrapper .bx-pager.bx-default-pager a {
					width: 7px;
					height: 7px;
					margin: 0 3px;
				}
			}



.main-coss-banner {
	width: 440px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	border-radius: 10px;
	background-color: #00acd4;
}
.main-coss-banner-slide {  position:relative; width: 440px; height: 360px; padding-top: 0; }

.main-coss-banner .bx-wrapper {box-shadow: none; border:none; background:none;margin-bottom:0;}
.main-coss-banner .bx-wrapper .bx-controls {
	position:absolute; 
	bottom:20px; left:0; 
	width:100%; height:30px; 
	/*background-color:rgba(0,0,0,0.5);*/
	z-index:10;
	display: flex;
	flex-direction: row; /* 순서대로 나열 */
	justify-content: flex-start;
	align-items: center;
	gap: 0 20px; /* 필요시 간격 조정 */
	padding: 0 20px; /* 좌우 패딩 */
}
.main-coss-banner .bx-wrapper .bx-controls .bx-controls-direction {
	display: flex;
	flex-direction: row;
	align-items: center;
	order: 2;
}


.main-coss-banner .bx-wrapper .bx-pager { 
	display: flex;
	align-items: center;
	justify-content: flex-start;
	order: 1;
	position: relative;
	bottom: auto;
	left: auto;
	width:auto;
	margin-left:20px;
	padding-top:0;
	display: none !important; /* bx-pager 숨김처리 */
}
.main-coss-banner .bx-wrapper .bx-pager.bx-default-pager a { 
	width: 100px; height: 2px; 
	margin:0;
	opacity: 0.43;
	transition: all 0.3s ease;
}
.main-coss-banner .bx-wrapper .bx-pager.bx-default-pager a.active { 
	opacity: 0.8;}



.main-coss-banner .bx-wrapper .bx-controls-direction a {
	width: 15px;
	height: 30px;
	margin-top:0;
	opacity: 1;
	filter: alpha(opacity=100);
	position: relative;
	top:auto;
	left: auto;
	font-size:0;
	text-indent: 0;
}
.main-coss-banner .bx-wrapper .bx-controls-direction a:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	background-position: center;
}

.main-coss-banner .bx-wrapper .bx-prev {
	background: url(../images/icon_arrow_8_w.png) no-repeat center;
	transform: scaleX(-1); /* 좌우 반전 */
	left:15px !important; /* 왼쪽 위치 조정 */
}
.main-coss-banner .bx-wrapper .bx-prev:hover,
.main-coss-banner .bx-wrapper .bx-prev:focus {
	background: url(../images/icon_arrow_8_w.png) no-repeat center;
}
.main-coss-banner .bx-wrapper .bx-next {
	background: url(../images/icon_arrow_8_w.png) no-repeat center;
	left:25px !important; /* 왼쪽 위치 조정 */
}
.main-coss-banner .bx-wrapper .bx-next:hover,
.main-coss-banner .bx-wrapper .bx-next:focus {
	background: url(../images/icon_arrow_8_w.png) no-repeat center;
}


		@media (max-width:1024px){
		}
		@media (max-width:768px){
		}
		@media (max-width:425px){
			.main-coss-banner-wrap {
				margin-top:20px;
			}
			.main-coss-banner,
			.main-calendar-banner {
				width: 100%;
				margin: 0 auto;
			}
			.main-coss-banner img,
			.main-calendar-banner img {
				width: 100%;
			}
		}


.main-calendar-banner {margin-top:20px}




/* =================================================================================
	main-con2 : 공지사항/보도자료 
====================================================================================*/

.main-notice { 
	/*
	background: #fff;
	border-radius: 32px;
	box-shadow: 0 4px 24px rgba(35,81,232,0.07);
	padding: 36px 36px 30px 36px;
	*/
	width: calc((100% - 60px) / 2);
}
.main-notice:first-of-type {
	margin-right: 60px;
}

.main-notice .main-notice-title-box { 
	padding: 10px 0 20px;   
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
	border-bottom:#999999 1px solid;
}
.main-notice .main-notice-title { font-size: 1.875rem; line-height:26px; font-weight: 600; }
.main-notice .main-notice-title span  { color: #999; font-size: 1rem; font-weight:300; margin-left:5px; letter-spacing: 0.05em; }
.main-notice .main-notice-more { 
	position: relative;
	display: inline-block;
	font-size: 1.625rem;
	font-weight:500;
	color: #00acd4;
	background-color:#fafafa;
	width:40px;
	height:40px;
	line-height:40px;
	text-align: center;
	border-radius: 50%;
}
.main-notice li { display: flex; align-items: center; border-bottom:1px solid #f5f5f5; }
.main-notice li a { font-size: 1rem; line-height:60px; font-weight:500; color:rgba(0,0,0,0.8); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; width:80%; display:inline-block; }
.main-notice li a:hover { color:#004ea2; }
.main-notice li span.bct { 
	display: inline-block; 
	width: 40px; 
	height: 24px; 
	line-height: 24px; 
	text-align: center; 
	color: #202020; 
	font-size: 14px; 
	font-weight: 400;
	border-radius: 3px; 
	margin-right: 10px;
}
.main-notice li span.bct1 { background-color: #c2def1; }
.main-notice li span.bct2 { background-color: #ebeff2; }
.main-notice li span.bct3 { background-color: #ebeff2; }

.main-notice li span.date { margin-left: auto; font-size: 1rem; color:rgba(0,0,0,0.5); }

		/* 반응형 */
		@media (max-width: 1024px) {
			.main-notice { padding: 0;}
			.main-notice .main-title-box { padding: 5px 0 15px;}
			.main-notice .main-title { font-size: 1.5rem; line-height: 1;}
			.main-notice li a { font-size: 15px; line-height: 32px;}
		}
		@media (max-width:425px) {
			.main-notice { padding: 20px 5px; width:100% }
			.main-notice:first-of-type { margin-right: 0; }
			.main-notice .main-title-box { padding: 0;}	
			.main-notice .main-title  { font-size: 1.5rem; line-height:22px; margin-bottom:10px; }
			.main-notice li a { font-size:14px; line-height:30px; }	
			.main-notice li span { font-size:12px; }	
		}



/*************************************************************************************
	main-con3 : 공간안내&faq
*************************************************************************************/

.space-reserve-wrap {
	width: 940px;
	margin-right:60px;
}

.space-reserve-wrap .space-title { font-size: 1.875rem; line-height:26px; font-weight: 600; position: relative; margin-bottom:20px;width: 100%;}
.space-reserve-wrap .space-title span  { color: #999; font-size: 1rem; font-weight:300; margin-top:10px;display: block; }


.space-card-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 20px 23px;
}

.space-card,
.space-reserve {
	position: relative;
	width: 275px;
	overflow: hidden; /* 중요: label이 카드 밖으로 나올 수 있게 */
	/*box-shadow: 0 2px 12px rgba(0,0,0,0.06);*/
	border-radius: 10px;
	padding:20px 10px 0;
	text-decoration: none;
	margin-bottom: 0;
	transition: box-shadow 0.2s;
}
.space-card {
	background-color: #ffffff;
	border: 1px solid #e5e5e5;
}
.space-card:hover {
	box-shadow: 0 4px 10px rgba(35,81,232,0.22);
}
.space-card img {
	width: 100%;
	height: 160px;
	/*object-fit: cover;*/
	border-radius: 8px 8px 0 0;
	display: block;
	filter: brightness(0.8);
	transition: filter 0.3s cubic-bezier(0.4,0,0.2,1);
}
.space-card:hover img {
	filter: brightness(1);
}

.space-card-label {
	padding: 12px 10px 0;
	font-size: 1rem;
	font-weight:600;
	display: flex;
	justify-content: space-between;
	align-items: center;
	color: #222;
	min-height: 44px;
}
.space-card-label span {
	font-size: 1.125rem;
	font-weight:500;
}
.space-card-label .arrow{
	width: 11px;
	height: 18px;
	background: url(../images/space-arrow.png) no-repeat center;
	background-size: contain;
	transition: transform 0.2s ease-in-out;
}

.space-reserve {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
.space-reserve-title {
	width: 248px;
	height: 64px;
}
.space-reserve-btn {
	background-color: #00acd4;		
	font-size: 1.25rem;
	font-weight:500;
	padding: 20px;
	border-radius: 10px;
	width:45%;
	height: 125px;
	color:#fff; 
	text-align: center; 
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	line-height: 1.3;
	transition: box-shadow 0.2s;
}
.space-reserve-btn:first-of-type {
	margin-right: 10px;
}
.space-reserve-btn span {
	font-size: 1.125rem;
	font-weight:200;
	width:100%;
	
	line-height: 1.3;
}
.space-reserve-btn:hover {
	color:#fff;
	background-color: #72a52a;	
	box-shadow: 0 2px 12px rgba(0,0,0,0.3);
}

		/* 반응형 */
		@media (max-width:1024px) {
		}
		@media (max-width:768px) {
			.space-reserve-wrap {
				width: 100%;
				margin-right: 0;
			}
			
		}
		@media (max-width:425px) {
			.main-con3 {margin-top:20px;}
			.space-reserve-wrap {
				flex-direction: column;
				align-items: center;
			}
			.space-reserv
			.space-card-list {
			justify-content: center;
			gap: 12px 16px;
			}
			.space-card-list {
				flex-wrap: nowrap;
				flex-direction: column;
			}
			.space-card {
				width: 100%;
				min-width: 150px;
			}
			.space-card img {
				/*height: 100px;*/
			}
			.space-card-list .space-phone {
				width: 100%;
				max-width: 250px;
				margin-top:50px;
			}
			.space-reserve {
				margin:0 auto;
			}

		}




/* 자주묻는질문 faq 스타일 */
.main-faq {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
}
/* FAQ */
.main-faq-title { font-size: 1.875rem; line-height:26px; font-weight: 600; position: relative; margin-bottom:20px;width: 100%;}
.main-faq-title span  { color: #999; font-size: 1rem; font-weight:300; margin-top:10px;display: block; }
.main-faq-more {
	position:absolute;
	top: 0;	
	right: 0;
	display: inline-block;
	font-size: 1.625rem;
	font-weight:500;
	color: #00acd4;
	background-color:#ffffff;
	width:40px;
	height:40px;
	line-height:40px;
	text-align: center;
	border-radius: 50%;
}

.main-faq-list {
	border-radius: 10px;
	background-color: #ffffff;
	border: 1px solid #e5e5e5;
	padding:13px 20px;
}
.main-faq-item {
	padding: 10px 16px;
	margin:15px 0;
	background-color: #f4f4f4;
	border-radius: 25px;
	transition: background-color 0.2s;
}
.main-faq-item:hover {
	background-color: #00acd4;
}
.main-faq-q {
	font-size: 0;
}
.main-faq-a {
	font-size: 14px;
	color: #222;
	font-weight: 500;
	line-height: 1.2;
	word-break: keep-all;
	transition: color 0.1s;
}

.main-faq-item:hover .main-faq-a,
.main-faq-item:hover .main-faq-a a {
	color:#fff;
	transition: color 0.1s;
}

		/* 반응형 */
		@media (max-width: 1024px) {
			.main-faq {
				min-width: 0;
				width: 100%;
				box-sizing: border-box;
			}
			.main-faq-list {
				flex-direction: column;
				gap: 12px;
			}
			.main-faq-item {
				min-width: 0;
				width: 100%;
			}
		}
		@media (max-width: 600px) {
			.main-faq-list {
				background-color: transparent;
				padding:0;
				border: none;
			}
			.main-faq {
				flex:0;
				padding: 18px 20px 18px 20px;
				
			}
			.main-faq-title {
				margin-top: 30px;
				margin-bottom: 0;
			}
			.main-faq-item {
				flex:0;
				padding:10px;
				text-align: left;
			}
			.main-faq-q {
				top: -20px;
				left: -30px;
			}
			.main-faq-a {
				margin-top: 0;
				margin-left:10px;
			}
		}







/***************************************************************************************************************************************
***************************************************************************************************************************************
	sub_layout : common 
***************************************************************************************************************************************
***************************************************************************************************************************************/
.sub-content {display: flex; flex-direction: row; align-items: flex-start; justify-content: center; box-sizing:border-box; position:relative; margin-top:32px}
.sub-content-left {flex:1 1 310px; margin-right:90px;}
.sub-content-right { width: 1060px; }

	/* 반응형 */
		@media (max-width:1440px) {
			.sub-content-left {flex:1 1 250px; margin-right:20px;}
			.sub-content-right {width: 1010px;margin-right: 100px;}
		}
		@media (max-width:1024px) {
			.sub-content-right {width: 100%; margin-right: 80px}
		}
		@media (max-width:768px) {
			.sub-content-left {display: none;}
			.sub-content-right { width: 100%;  margin-right: 0}
		}
		@media (max-width:425px) {
		}



/* sub_title_img : 미사용 */
.sub_title_img { /* background:url(../images/SubTitleImg.png) no-repeat top center;*/ position: relative; height:190px; padding: 30px 0; text-align:center; background-size:cover; display:table; width:100%;  }
.sub_title_img .bg { position:absolute; top:0; left:0; z-index:-9999; 
	border-top-left-radius: 0;
	border-bottom-left-radius: 100px;
	border-top-right-radius: 0;
	border-bottom-right-radius: 100px; 
overflow: hidden;}
.sub_title_img p { font-size: 2.5rem; color:#fff; font-weight: 600; text-shadow:3px 3px 5px rgba(0,0,0,0.3); vertical-align:middle; }
.sub_title_img p span { display: block; font-size: 1.25rem; font-weight: 500; color: rgba(255,255,255,.5); text-shadow: none;}
/* 반응형 */
		@media (max-width:768px) {
			.sub_title_img { padding: 50px 0 0;}
			.sub_title_img, .sub_title_img .bg img  { height: 120px; }
			.sub_title_img p { font-size: 1.75rem; }
			.sub_title_img p span { font-size: 1rem;}
			.sub_title_img .bg {overflow: hidden}
		}
		@media (max-width:425px) {
			.sub_title_img {padding: 0;height: 60px;
				position: relative;}
			.sub_title_img .bg {width: 150%;
				height: 60px;
			}
			.sub_title_img .bg img { width: 100%; height: 100%; object-fit: cover; }
			.sub_title_img p { font-size: 1.25rem; font-weight: 500; margin-top:15px; }
			.sub_title_img p span { font-size: 12px;}

		}



/* sub-menu */
.sub-menu {background-color: #165aa0; border-radius: 10px; display: flex; flex-direction: column;}
.sub-menu h2 { font-size: 1.41rem; color: #fff; font-weight: 500; padding: 39px 0 27px; margin:0; text-align: center; }

/*1차메뉴*/
.sub-menu-depth1 { position:relative; width:100%; background-color:#fff;border-radius: 8px;  border-top:none; border:1px #e8e8e8 solid; padding:20px; }
.sub-menu-depth1>li>a { padding:1.2rem 0; line-height:1.2; font-size: 1.125rem; font-weight:600; color:#3c3c3c; display: flex; align-items: center; /* 세로 중앙 정렬 */; position: relative;}
/* 화살표 */
.sub-menu-depth1>li>a::after {
	content: '';
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	background: url('../images/depth1_arrow.png') no-repeat center center #f9f9f9;
	background-size: 6px 12px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	text-align: center;
}
.sub-menu-depth1>li>a::after {
	transition: transform 0.2s, background-color 0.9s;
}
.sub-menu-depth1>li>a:hover::after {
	background-color: rgba(194, 222, 241, 0.5);
}
.sub-menu-depth1>li>a:hover,
.sub-menu-depth1>li>a.on  { color:#448cbd}
.sub-menu-depth1>li>a.on::after {
	transform: translateY(-50%) rotate(90deg); /* 90도 회전 */
	transition: transform 0.2s;
	background-color: rgba(194, 222, 241, 0.5);
}

			@media (max-width:1024px) {
				.sub-menu-depth1>li>a::after {display: none;}
			}

/*2차메뉴*/
.sub-menu-depth2 {width:100%; margin:0 auto; border-radius: 8px; padding:9px; background-color:#fafafa;  }
.sub-menu-depth2>li>a {  display: block; font-size:1rem;line-height:1.3; padding:8px 0; color:#3c3c3c; font-weight:400; border-bottom:1px #ddd dotted; position: relative; }
.sub-menu-depth2>li>a.on::after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: url('../images/depth2_arrow.png') no-repeat center center;
	background-size: 5px 9px;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	text-align: center;
}

.sub-menu-depth2>li:last-of-type>a { border-bottom:none; }
.sub-menu-depth2>li>a:before { content:""; display:inline-block;}
.sub-menu-depth2>li>a:hover,
.sub-menu-depth2>li>a.on { color:#448cbd; }


	
/* sub_title */
.sub-title { position:relative; width:100%; height:90px;  display:flex; align-items:center; justify-content: space-between; margin-top:0; margin-bottom:40px; border-bottom:1px solid #e8e8e8; }
.sub-title h3 { font-size: 1.75rem; color: #222; font-weight: 500; text-align: left; height:90px;   padding:30px 0 35px 20px; }

	/* 반응형 */
		@media (max-width:768px) {
			.sub-title {
				height:30px;
				margin-top:0; 
				margin-bottom:10px;
				padding-bottom:20px;
		}
			.sub-title h3 {
				font-size: 1.5rem; height:40px;   padding:10px 0 10px 0; 
			}

		}
		@media (max-width:425px) {
			.sub-title {
				padding-bottom:10px;
				border-bottom:none;
		}
		}

/* location */
.location { line-height: 80px;  color: #222; display: flex;}
.location span {font-size: 1rem; font-weight:400}
.location span::before { content: ""; display: inline-block; width: 20px; height: 20px; background: url(../images/location_arrow.png) no-repeat  10px 5px; padding-left: 10px; margin-right: 5px; vertical-align: middle; }
.location .home { font-size: 0; border-left: 1px rgba(255,255,255,.3) solid; border-right: 1px rgba(255,255,255,.3) solid; background: url(../images/icon_home.png) no-repeat center; width: 20px; }


		@media (max-width:768px) {
			.location { line-height: 50px; }
		}
		@media (max-width:425px) {
			.location { line-height: 20px; display: none;}
			.location .home { width: 20px; background-size: 10px;}
			.location span {font-size:14px; color:#555 }
			.location span a { color:#555; }		
			.location span::before{padding-left: 5px;}
		}



/* sub_con */
.sub_con { padding: 40px 15px 100px; color:#555; font-size: 1rem; min-height:700px; }
.sub_con:after,
.sub_con_title:after { content:""; display:block; clear:both; }

.sub_con_title { margin-bottom:15px; display: none; }
.sub_con_title h3 { float:left; font-size: 1.75rem; color:#111; line-height:inherit; }


.sub_con_title.start {display: block !important;} /*상시교육*/
.sub_con_title.start h3 {float:none; font-size: 1.875rem;  font-weight: 600;}
.sub_con_title.start h3 strong {color:#c8874a;}

.sub_con_title .location { float:right; font-size:1rem; color:#999; margin:20px 0 0 0; }
.sub_con_title .location span { background:url(../images/location_arrow.png) no-repeat left center; padding-left:10px; margin-left:5px; }
.sub_con_title .location .home { font-size:0; background:url(../images/home.png) no-repeat center; width:19px; height:16px; display:inline-block; vertical-align:middle; margin-top:-2px; }
.sub_con_title .location a { color:#999; }
.sub_con_title .location a:hover { color:#000; }

		@media (max-width:1440px) {	
			.sub_con { padding: 40px 15px 100px; color:#555; font-size: 1rem; min-height:700px; }
		}

		@media (max-width:768px) {	
			.sub_con { padding: 30px 0 50px; }
			.sub_con_title { margin-bottom:20px; }
			.sub_con_title h3 { font-size: 1.5rem; }	
		}
		@media (max-width:425px) {
			.sub_con { padding: 15px 0 50px; }
			.sub_con_title h3 { font-size: 1rem; }
			.sub_con_title .location { font-size:10px; margin:5px 0 0 0; }
			.sub_con_title .location .home { width:14px; height:12px; background-size:cover; }
		}

.admin_btn { margin-top:100px; text-align:right; }

#viewcomment .sub_con { min-height:inherit; padding:0; }


/* ready :컨텐츠준비중 */
.ready { width:100%; height:500px; display:table; background-color:#f9f9f9; }
.ready_txt_box { display:table-cell; vertical-align:middle; text-align:center; border: 1px #eee solid; }
.ready_txt01:before { content:"!"; display:block; margin:0 auto 15px; font-size:50px; color:#ccc; border:4px #ddd solid; width:80px; height:80px; line-height:70px; border-radius:50%; }
.ready_txt01 { font-size: 1.25rem; color:#333; line-height:40px; font-family:'Paperlogy',sans-serif !important; font-weight:500; }
.ready_txt02 { font-size:14px; color:#999; }

@media (max-width:425px) {
	.ready { height:300px; }
}




/***********************************************************************************

	contents :common 

 ***********************************************************************************/

 /* con_title_box */
.con_title_box { font-size: 2rem; color: rgba(0,0,0,.8); padding: 100px 0 50px;}
.con_title_box p {font-size: 60px; font-weight: 600; color: #000; display: inline-block; padding: 0 20px; position: relative; margin-bottom: 10px;}
.con_title_box p:after { content: ""; display: block; width: 100%; height: 15px; background-color: #fabe85; position: absolute; left: 0; bottom: 10px; z-index: -1;}
.con_title_box span { display: block;}


/* tabs */
.tabs li { float:left; }
.tabs li:after { display:block; content:""; clear:both; }
.tabs li a { font-size: 1.25rem; display:block; width:100%; text-align:center; color:#999; border:1px #ccc solid; border-left:0; background-color:#f9f9f9; line-height:50px; font-family:'Binggrae-Bold'; }
.tabs li:first-child a { border-left:1px #ccc solid; }
.tabs li a:hover { color:#c8874a; }
.tabs li a.selected { background-color:#fff; border-color:#c8874a; border-left:1px #c8874a solid; color:#c8874a; }

.show { display:block;}
.hide { display:none; }

@media (max-width:425px) {	
	.tabs li a { font-size: 1rem; line-height:40px; }
}



/* content-title */
.content-title-box {
  margin-bottom: 28px;
  position: relative;
}
.content-title-bg {
	/*margin-top:40px;*/
	color: #222;
	background-image:url('../images/greeting_head_bg.png');
	background-repeat: no-repeat;
	background-position: 120% 50%;
	background-color:rgba( 0, 78, 162, 0.2 );
	border-radius: 25px;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.5;
	position: relative;
	padding:30px 50px;
}
.content-title-bg span {
	font-weight: 700;
	color: #0050a7;
	font-size: 2.1rem;
}

		.program-wrap .content-title-bg {
			background-position: 120% 140%;
		}

		.consortium-wrap .content-title-bg {
			background-position: 120% 140%;
			text-align: center;
		}


		@media (max-width: 768px) {	
			.content-title-box { font-size: 1.25rem; padding: 20px 0 10px;}
			.content-title-box p { font-size: 1.75rem !important; padding: 0 10px; margin-bottom: 5px;}
			.content-title-box p:after { height: 10px; bottom: 5px;}
			.content-title-bg {
				padding:10px 20px;
			}
		}
		@media (max-width: 425px) {	
			.content-title-box { font-size: 0.875rem; padding: 0 0 30px;}
			.content-title-box p { font-size: 1.5rem }
		}


/* 섹션 타이틀 */
.section-title {
	font-size: 1.25rem;
	font-weight: 700;
	color: #202020;
	margin-bottom: 10px;
}
.section-title::before {display: inline-block; content: ""; background: url('../images/icon_coss.png') no-repeat center; width:22px; height:20px; margin-bottom: 2px; margin-right:5px; vertical-align: middle;}


	.program-wrap  .section-title {
		margin-top:70px;
		font-size: 1.25rem;
		}


/* 테이블 기본 스타일 */
.con-tbl {
	width: 100%;
	border-collapse: collapse;
	margin: 40px 0;
	overflow: hidden;
	border-top: 1px solid #a1a1a1 !important;
	border-bottom: 1px solid #a1a1a1 !important;
}

/* 테이블 헤더 */
.con-tbl thead th {
	background: #e3edf6;
	color: #222222;
	font-size: 1rem;
	font-weight: 500;
	padding: 20px 15px;
	text-align: center;
	border-right: 1px solid #d9d9d9;
	position: relative;
	border-bottom: 1px solid #a1a1a1;
}

.con-tbl thead th:last-child {
	border-right: none;
}

/* 테이블 바디 */
.con-tbl tbody th {	
	font-size: 1.125rem;
	background: #f7f7f7;
	color: #0050a7;
	font-weight: 500;
	border-bottom: 1px solid #d9d9d9;
	border-right: 1px solid #d9d9d9;
	text-align: center;
	}
.con-tbl tbody td {
	font-size: 1.025rem;
	padding: 18px 15px;
	font-weight: 400;
	border-top: 1px solid #d9d9d9;
	border-right: 1px solid #d9d9d9;
	vertical-align: middle;
	line-height: 1.6;
}

.con-tbl tbody tr:last-child th, .con-tbl tbody tr:last-child td {
	border-bottom: none;
}

.con-tbl tbody td:last-child {
	border-right: none;
}
.con-tbl tbody tr td.r-line {
	border-right: 1px solid #d9d9d9;
}

	.con-tbl.program tbody tr td.in-tbl {
		padding: 0;
		vertical-align: top;
	}
	.con-tbl.program tbody tr td.in-tbl table tr td {
	background:linear-gradient(180deg, #f9f9f9 0%, #eaeaea 100%)
		
	}
	.con-tbl.program tbody tr td.in-tbl table tr:first-child td {
		border-top:none
		
	}
	.con-tbl.inner {
		margin:0
	}


/* 텍스트 강조
.con-tbl .highlight {
	color: #e24f88;
	font-weight: 600;
}

.tbl .blue-text {
	color: #004ea2;
	font-weight: 600;
} */

/* 리스트 스타일 */
.con-tbl ul {
	margin: 0 0 0 20px;
	padding: 0;
	list-style: none;
}

.con-tbl li {
	margin-bottom: 8px;
	position: relative;
	padding-left: 12px;
	text-align: left;
}

.con-tbl li:before {
	content: "•";
	color: #004ea2;
	font-weight: bold;
	position: absolute;
	left: 0;
}

			/* 반응형 스타일 */
			@media (max-width: 768px) {
				.con-tbl {
					font-size: 14px;
					margin: 20px 0;
				}

				.con-tbl thead th {
					padding: 15px 10px;
					font-size: 1rem;
				}

				.con-tbl tbody td {
					padding: 12px 8px;
					font-size: 13px;
				}

				.con-tbl tbody td:first-child {
					font-size: 1rem;
				}
				
				/* 모바일에서 스크롤 가능하도록 */
				.table-responsive {
					overflow-x: auto;
					-webkit-overflow-scrolling: touch;
				}
			}

			@media (max-width: 480px) {
				.con-tbl thead th,
				.con-tbl tbody td {
					padding: 10px 6px;
					font-size: 12px;
				}

				.con-tbl tbody td:first-child {
					font-size: 14px;
				}
			}

/* 추가 유틸리티 클래스 */
.text-center {
	text-align: center !important;
}

.text-left {
	text-align: left !important;
}

.font-bold {
	font-weight: 600 !important;
}

.color-primary {
	color: #004ea2 !important;
}

.color-secondary {
	color: #e24f88 !important;
}

/*프로그램 메뉴내 테이블 스타일 */
.con-tbl.program tbody tr td {
	text-align: center;
	}

	.con-tbl.program tbody tr td, 
	.con-tbl.program tbody tr th {
		padding: 10px 2px;
	} 
	.con-tbl.program tfoot tr td.footer {
	border-top: 3px solid #d9d9d9;
		padding: 20px 2px;
		background-color:rgba(0, 0, 0, 0.08);
		font-size:1.25rem;
		color:#000;
	}


/***********************************************************************************************************************************
sub_con */


/* 인사말 스타일 */
.greeting-wrap {
  display: flex;
  align-items: stretch;
  background: #fff;
  margin: 0 auto 40px auto;
  max-width: 1300px;
  min-height: 480px;
}

.greeting-content {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}

.content-title-box.greeting .content-title-bg {
	font-size: 2.1em;
}
.content-title-box.greeting .content-title-bg span{
	font-size: 2.4rem;
}

.content-title-box.greeting .content-title-bg img {
	position: absolute;
	top: 40%;
	right: 10%;
	width: auto;
	height: auto;
	object-fit: cover;
	z-index: 2;
	/* 리플렉션 효과 */
	-webkit-box-reflect: below 0px -webkit-gradient(
		linear, 
		left top, 
		left bottom, 
		from(transparent), 
		color-stop(0.8, transparent), 
		to(rgba(255, 255, 255, 0.3))
	);
	
	/* 기본 그림자 추가 */
	filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.15));
}

.greeting-desc {
  color: #222;
  font-size: 1.125rem;
  line-height: 1.8;
  font-weight: 300;
  margin-left:50px;
  margin-top:80px;
  background-image: url(../images/greeting_p_bg.png);
  background-repeat: no-repeat;
  background-position: right bottom;
}
.greeting-desc .blue {
  color: #2363d1;
  font-weight: 600;
  padding-left:100px;
}
.greeting-desc p {
  margin-bottom: 18px;
}
.greeting-desc p:last-child {
  margin-bottom: 0;
}

.greeting-signature {
	color:#fff;
	font-size:1.41rem;
	background-color:#00acd4;
	width:100%;
	line-height: 50px;
	text-align: right;
	padding:0 30px;
	margin-top:100px;
}

		@media (max-width: 1024px) {
		.greeting-wrap {
			flex-direction: column;
			padding: 20px 0;
			border-radius: 32px;
			max-width: 98vw;
		}
		.greeting-img,
		.greeting-img img {
			border-radius: 32px 32px 0 0;
			min-height: 220px;
		}
		.greeting-content {
			padding: 24px 18px 24px 18px;
		}
		.greeting-title-bg {
			font-size: 1.6rem;
			padding: 24px 18px 18px 18px;
			border-radius: 0 32px 32px 0;
		}
		.greeting-title-bg span {
			font-size: 1.6rem;
		}
		}

		@media (max-width: 600px) {
		.greeting-wrap {
			padding: 0;
			border-radius: 18px;
			gap: 0;
		}
		.greeting-content {
			padding: 24px 0;
		}
		.greeting-title-box {margin-top:-100px;}
		.greeting-img{
			flex:auto;
			min-height: 220px;
			height: 220px;
			}
			.greeting-desc {margin-left: 20px;}
	}


/* 1-2 사업소개  */
.business-wrap .content-title-bg,
.business-wrap .content-desc{
	text-align: center;
}
.business-wrap .content-title-bg {
	font-size: 1.5rem;
}
.business-wrap .content-title-bg strong{
	font-size: 1.75rem;
	color:#0050a7;
}


/* 1-3 컨소시엄소개  */
/* 1-3-3 컨소시엄로고 */
/* 컨소시엄 소개 스타일 */

/* 심볼소개 */
.symbol-intro {
	margin-bottom: 60px;
}

.symbol-content {
	display: flex;
	align-items: flex-start;
	gap: 40px;
	padding: 30px;
	background: #fff;
	border-radius: 12px;
	border: 1px solid #e9ecef;
}

.symbol-logo {
	flex-shrink: 0;
}

.symbol-logo img {
	width: 200px;
	height: auto;
}

.symbol-desc {
	flex: 1;
	line-height: 1.8;
}

.symbol-desc p {
	margin-bottom: 15px;
	color: #333;
	font-size: 1rem;
}

.color-palette {margin-bottom:50px}

/* 시그니처 로고 */
.signature-logos {
	margin-bottom: 60px;
}

.logo-row {
	display: flex;
	gap: 80px;
	margin-bottom: 40px;
}

.logo-item {
	flex: 1;
}


.logo-image {
	padding: 30px;
	background: #fff;
	border-radius: 12px;
	border: 1px solid #e9ecef;
	text-align: center;
}

.logo-image img {
	max-width: 100%;
	height: auto;
}

/* 반응형 스타일 */
@media (max-width: 768px) {
	.consortium-wrap {
		padding: 20px 0;
	}
	
	.symbol-content {
		flex-direction: column;
		gap: 20px;
		padding: 20px;
	}
	
	.symbol-logo img {
		width: 150px;
	}
	
	
	
	.logo-row {
		flex-direction: column;
		gap: 20px;
	}
}

@media (max-width: 480px) {
   
	
	.logo-image {
		padding: 20px;
	}
}





/*	1-4 조직도 */

/* 학과 링크 영역 */

.dept-category {
	text-align: center;
	width:160px;
	margin-left:60px;
}

.dept-category h4 {
	display: none;
}

.dept-desc {
	font-size: 1rem;
	color: #666;
	margin: 0;
	padding: 15px;
	background: white;
	border-radius: 20px;
	border: 1px solid #ddd;
}

/* 학과 링크 스타일 */
.dept-links {
	display: flex;
	flex-direction: row;
	gap: 10px;
}

.dept-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 16px;
	background: white;
	border: 1px solid #ddd;
	border-radius: 8px;
	text-decoration: none;
	color: #333;
	font-weight: 500;
	transition: all 0.3s ease;
	box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.dept-link:hover {
	background: #004ea2;
	color: white;
	border-color: #004ea2;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 78, 162, 0.2);
	text-decoration: none;
}

.link-icon {
	opacity: 0.6;
	transition: opacity 0.3s ease;
}

.dept-link:hover .link-icon {
	opacity: 1;
}


.con-tbl.organ {width:65%; margin:0 auto; border:none}
.con-tbl.organ th, .con-tbl.organ td {border:none; border-bottom:1px solid #fdefe1; position:relative;}
.con-tbl.organ thead th {border-top:2px solid #ca8949;border-bottom:1px solid #ca8949; background-color:#fdefe1; }
.con-tbl.organ tbody th {background-color:#fff; font-weight:500}
.con-tbl.organ tbody th:after {display:inline-block; position:absolute; right:0;top:10%; content: ''; background-color: #fdefe1; width:3px; height:80%;}

.organ-img-group {
	display: flex;
	gap: 0;
	justify-content: center;
	margin-bottom: 0;
	flex-wrap: wrap;
}
.organ-img-group img {
	width:min-content;
  cursor: pointer;
}
.organ-desc-group {
  margin-top: 32px;
}


.organ-desc {
  display: none;
  padding: 24px;
  max-width: 100%;
  margin: 0 auto 16px;
  text-align: left;
}
.organ-desc.show { display: block; }




/* 협력기관 및 산업체 */
/* 파트너 그리드 */
.partner-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	max-width: 1000px;
	margin: 0 auto;
}

/* 파트너 아이템 */
.partner-item {
	position: relative;
	background: #fff;
	border: 1px solid #e9ecef;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
	transition: all 0.3s ease;
}

.partner-item:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 25px rgba(0,0,0,0.15);
}

/* 파트너 링크 */
.partner-link {
	position: relative;
	width: 100%;
	height: 150px;
	text-decoration: none;
	overflow: hidden;
	text-align: center;
	/* 추가: flexbox로 중앙 정렬 */
	display: flex;
	align-items: center;
	justify-content: center;
}

.partner-link img {
	width: auto;
	height: auto;
	max-width: calc(100% - 40px); /* 좌우 마진 20px씩 */
	max-height: calc(100% - 40px); /* 상하 마진 20px씩 */
	object-fit: contain;
	transition: all 0.4s ease;
	/* margin 제거 - flexbox가 중앙 정렬 처리 */
}

/* 오버레이 효과 */
.partner-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 78, 162, 0.5);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 2;
}

.partner-link:hover .partner-overlay {
	opacity: 1;
}

.partner-link:hover img {
	transform: scale(1.05);
   /* filter: blur(1px);*/
}

/* 바로가기 텍스트 */
.goto-link {
	color: #fff;
	font-size: 1.125rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	transform: translateY(20px);
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.partner-link:hover .goto-link {
	transform: translateY(0);
}

/* 반응형 스타일 */
@media (max-width: 768px) {
	.partner-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
		padding: 0 20px;
	}
	
	.partner-link {
		height: 100px;
	}
	
	.partner-link img {
		padding: 15px;
	}
	
	.goto-link {
		font-size: 1rem;
	}
}

@media (max-width: 480px) {
	.partner-grid {
		grid-template-columns: 1fr;
		gap: 15px;
	}
	
	.partner-link {
		height: 80px;
	}
	
	.partner-link img {
		padding: 10px;
	}
	
	.goto-link {
		font-size: 0.9rem;
	}
}

/* 추가 애니메이션 효과 */
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(30px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.partner-item {
	animation: fadeInUp 0.6s ease forwards;
}

.partner-item:nth-child(1) { animation-delay: 0.1s; }
.partner-item:nth-child(2) { animation-delay: 0.2s; }
.partner-item:nth-child(3) { animation-delay: 0.3s; }
.partner-item:nth-child(4) { animation-delay: 0.4s; }
.partner-item:nth-child(5) { animation-delay: 0.5s; }
.partner-item:nth-child(6) { animation-delay: 0.6s; }
.partner-item:nth-child(7) { animation-delay: 0.7s; }
.partner-item:nth-child(8) { animation-delay: 0.8s; }
.partner-item:nth-child(9) { animation-delay: 0.9s; }
.partner-item:nth-child(10) { animation-delay: 1.0s; }

/* 초기 상태 */
.partner-item {
	opacity: 0;
	transform: translateY(30px);
}



/* 1-5 찾아오시는길    */
/* 지도 섹션 */
.map-section {
	width: 100%;
	margin-bottom: 0;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.map-section .root_daum_roughmap .cont {display: none}
.map-section .root_daum_roughmap {
	width: 100% !important;
	min-height: 460px;
}

/* 위치 정보 섹션 */
.location-info {
	display: flex;
	gap: 40px;
	justify-content: center;
	flex-wrap: wrap;
	margin: 40px 0;
}

.info-item {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	min-width: 400px;
	flex: 1;
	max-width: 500px;
}

.info-icon {
	width: 120px;
	height: 120px;
	border-radius: 15px;
	background: #f3f3f3;
	display: flex;
	align-items: center;
	justify-content: center;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 59px 59px;
}
.info-item:first-of-type .info-icon {
	background-image: url('../images/map-info-icon1.png');
}
.info-item:last-of-type .info-icon {
	background-image: url('../images/map-info-icon2.png');
}
.info-content {
	flex: 1;
}

.info-content h4 {
	font-size: 1.25rem;
	font-weight: 600;
	color: #004ea2;
	margin-bottom: 10px;
	margin-top: 20px;
}

.info-content p {
	font-size: 1.125rem;
	color: #333;
	font-weight:300;
	line-height: 1.3;
	margin: 0;
}

/* 반응형 스타일 */
@media (max-width: 768px) {
	.location-info {
		flex-direction: column;
		gap: 20px;
		padding: 0 20px;
	}
	
	.info-item {
		min-width: auto;
		max-width: none;
		padding: 20px;
	}
	
	.info-content h4 {
		font-size: 1.125rem;
	}
	
	.info-content p {
		font-size: 0.9rem;
	}
	
	.map-section .root_daum_roughmap {
		min-height: 300px;
	}
}

@media (max-width: 480px) {
	.info-item {
		padding: 15px;
		gap: 15px;
	}
	
	.info-content h4 {
		font-size: 1rem;
	}
	
	.info-content p {
		font-size: 0.85rem;
	}
	
	.map-section .root_daum_roughmap {
		min-height: 250px;
	}
}






/* 공간소개 그리드 */
.space-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
	max-width: 1000px;
	margin: 0 auto;
}



/* 공간소개 아이템 */
.space-item {
	position: relative;
	overflow: hidden;
	/*box-shadow: 0 4px 12px rgba(0,0,0,0.1);*/
	transition: all 0.3s ease;
}

.space-item:hover {
	transform: translateY(-5px);
	/*box-shadow: 0 8px 25px rgba(0,0,0,0.15);*/
}

/* 공간 링크 */
.space-link {
	position: relative;
	width: 100%;
	height: 300px;
	text-decoration: none;
	overflow: hidden;
	text-align: center;
	/* 추가: flexbox로 중앙 정렬 */
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius:  65px 20px;
}
.space-link:hover {
	border-radius: 20px 65px;
}

.space-link img {
	width: auto;
	height: auto;
	object-fit: contain;
	transition: all 0.4s ease;
	/* margin 제거 - flexbox가 중앙 정렬 처리 */
	border-radius: 20px;
}

/* 오버레이 효과 */
.space-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 78, 162, 0.5);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 2;
}

.space-link:hover .space-overlay {
	opacity: 1;
}

.space-link:hover img {
	transform: scale(1.05);
	filter: blur(1px);
}
 .space-title {
	padding:5px 10px;
	font-size: 1.5rem;
 }
 .space-title::before {display: inline-block; content: ""; background: url('../images/icon_coss.png') no-repeat center; width:22px; height:20px; margin-bottom: 2px; margin-right:5px; vertical-align: middle;}

/* 바로가기 텍스트 */
.goto-link {
	color: #fff;
	font-size: 1.75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	transform: translateY(20px);
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.space-link:hover .goto-link {
	transform: translateY(0);
}

/* 반응형 스타일 */
@media (max-width: 768px) {
	.space-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
		padding: 0 20px;
	}
	
	.space-link {
		height: 130px;
	}
	
	.space-link img {
		padding: 0;
	}
	
	.goto-link {
		font-size: 1rem;
	}
	
	.space-title {
		padding: 10px 0;
		font-size: 1.85rem;
	}
}

@media (max-width: 480px) {
	.space-grid {
		grid-template-columns: 1fr;
		gap: 15px;
	}
	
	.space-link {
		height: 100px;
	}
	
	.space-link img {
		
	}
	
	.goto-link {
		font-size: 0.9rem;
	}
}

/* 추가 애니메이션 효과 */
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(30px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.space-item {
	animation: fadeInUp 0.6s ease forwards;
}

.space-item:nth-child(1) { animation-delay: 0.1s; }
.space-item:nth-child(2) { animation-delay: 0.2s; }
.space-item:nth-child(3) { animation-delay: 0.3s; }
.space-item:nth-child(4) { animation-delay: 0.4s; }
.space-item:nth-child(5) { animation-delay: 0.5s; }

/* 초기 상태 */
.space-item {
	opacity: 0;
	transform: translateY(30px);
}



/* 공간 상세 페이지 스타일 */
.space-detail-header {
	width: 100%;
	margin-bottom: 60px;
	box-shadow: 0 4px 20px rgba(0,0,0,0.1);
}

.space-detail-image {
	position: relative;
	width: 100%;
	height: 520px;
}

.space-detail-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.space-detail-overlay {
	position: absolute;
	bottom: -30px;
	right: 30px;
	width: 400px;
	height: 200px;
	background: linear-gradient(
		135deg,
		rgba(0, 78, 162, 0.85) 0%,
		rgba(0, 78, 162, 0.7) 50%,
		rgba(0, 78, 162, 0.6) 100%
	);
	display: flex;
	align-items: center;
	justify-content: flex-end;
	padding: 40px 60px;
}

.space-detail-title {
	text-align: right;
	color: #fff;
}

.space-detail-title h1 {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.3;
	margin: 0;
	text-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

.space-detail-subtitle {
	font-size: 1.5rem;
	font-weight: 300;
	opacity: 0.9;
	display: block;
	margin-top: 10px;
}

/* 가치제안 섹션 */
.space-value-section {
	margin-bottom: 50px;
}

.space-value-content,
.space-location-content {
	background: #f8f9fa;
	border-radius: 12px;
	padding: 20px 30px;
}

.space-value-content p {
	font-size: 1rem;
	line-height: 1.8;
	color: #333;
	margin: 0;
}

/* 위치정보 섹션 */
.space-location-section {
	margin-bottom: 60px;
}


.location-item {
	display: flex;
	align-items: center;
	padding: 5px 0;
	border-bottom: 1px solid #f0f0f0;
}

.location-item:last-child {
	border-bottom: none;
}

.location-item strong {
	font-size: 1rem;
	font-weight: 700;
	color: #222;
	width: 100px;
	flex-shrink: 0;
}

.location-item span {
	font-size: 1rem;
	color: #333;
	line-height: 1.6;
}

/* 버튼 영역 */
.space-detail-buttons {
	display: flex;
	gap: 20px;
	justify-content: center;
	margin: 60px 0 40px;
}

.space-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 15px 35px;
	font-size: 1.25rem;
	font-weight: 600;
	text-decoration: none;
	border-radius: 30px;
	transition: all 0.3s ease;
	min-width: 160px;
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.space-btn-secondary {
	background: #fff;
	color: #00acd4;
	border: 2px solid #00acd4;
}

.space-btn-secondary:hover {
	background: #fff;
	color: #004ea2;
	border: 2px solid #004ea2;
	transform: translateY(-2px);
	box-shadow: 0 6px 10px rgba(0, 0, 0, 0.1);
	text-decoration: none;
}

.space-btn-primary {
	background: #00acd4;
	color: #fff;
	border: 2px solid #00acd4;
}

.space-btn-primary:hover {
	background: #0099bb;
	border-color: #0099bb;
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 6px 10px rgba(0, 0, 0, 0.1);
	text-decoration: none;
}

.btn-arrow {
	margin-left: 8px;
	font-size: 1.2em;
	transition: transform 0.3s ease;
}

.space-btn:hover .btn-arrow {
	transform: translateX(3px);
}

/* 반응형 스타일 */
@media (max-width: 768px) {
	.space-detail-image {
		height: 300px;
	}
	
	.space-detail-overlay {
		padding: 20px 30px;
		justify-content: center;
		text-align: center;
	}
	
	.space-detail-title h1 {
		font-size: 1.8rem;
	}
	
	.space-detail-subtitle {
		font-size: 1.2rem;
	}
	
	.space-value-content,
	.space-location-content {
		padding: 20px;
	}
	
	.space-detail-buttons {
		flex-direction: column;
		align-items: center;
		gap: 15px;
	}
	
	.space-btn {
		width: 100%;
		max-width: 300px;
	}
	
	.location-item {
		flex-direction: column;
		align-items: flex-start;
		gap: 5px;
	}
	
	.location-item strong {
		width: auto;
	}
}

@media (max-width: 480px) {
	.space-detail-image {
		height: 250px;
	}
	
	.space-detail-overlay {
		padding: 15px 20px;
	}
	
	.space-detail-title h1 {
		font-size: 1.5rem;
	}
	
	.space-detail-subtitle {
		font-size: 1rem;
	}
	
	.space-value-content p {
		font-size: 1rem;
	}
	
	.space-btn {
		padding: 12px 25px;
		font-size: 1rem;
	}
}




/* 프로그램 소개 > 개요 */

.overview-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(30%, 1fr));
	gap: 3%;
	max-width: 1000px;
	margin: 20px auto;
}

/* 개요 아이템 */
.overview-item {
	padding: 0 0 0 75px;
	position: relative;
	min-height:auto;
	height:auto;
	margin-bottom:50px;
}
.overview-item:last-of-type {
	margin-bottom: 0;
}

.overview-icon {
	position: absolute;
	top: 0;
	left:0;
	width: 60px;
	height: 60px;
	transition: all 0.4s ease;
	background-size: 60px 60px;
	background-repeat: no-repeat;
	background-position: center;
}

/* 각 아이콘별 배경 이미지 */
.overview-icon.icon-01{
	background-image: url('/views/_layout/hd/images/overview_icon_01.png');
}

.overview-icon.icon-02 {
	background-image: url('/views/_layout/hd/images/overview_icon_02.png');
}

.overview-icon.icon-03 {
	background-image: url('/views/_layout/hd/images/overview_icon_03.png');
}

.overview-icon.icon-04 {
	background-image: url('/views/_layout/hd/images/overview_icon_04.png');
}

.overview-icon.icon-05 {
	background-image: url('/views/_layout/hd/images/overview_icon_05.png');
}

.overview-icon.icon-06 {
	background-image: url('/views/_layout/hd/images/overview_icon_06.png');
}

.overview-icon.icon-07 {
	background-image: url('/views/_layout/hd/images/overview_icon_07.png');
}


/* 텍스트 스타일 */
.overview-item h4 {
	font-size: 1.375rem;
	font-weight: 600;
	color: #222;
	margin-bottom: 5px;
	transition: color 0.3s ease;
}

.overview-item p {
	font-size: 1rem;
	font-weight:300;
	color: rgba(34, 34, 34, 0.8);
	line-height: 1.3;
	margin: 0;
	transition: color 0.3s ease;
}


		/* 반응형 스타일 */
		@media (max-width: 768px) {
			
			.program-overview {
				padding: 30px 20px;
				margin-bottom: 40px;
			}
			
			.overview-grid {
				margin:20px 0;
				grid-template-columns: repeat(2, 1fr);
				gap: 20px;
			}			
	
			.overview-item p {
				font-size: 1rem !important;
				padding: 0 !important;
			}
		}

		@media (max-width: 480px) {
			.overview-grid {
				grid-template-columns: 1fr;
				gap: 15px;
				margin:20px 10px;
			}
			
			.overview-item {
				padding: 0 0 0 60px;
			}
			
			.overview-icon {
				width: 50px;
				height: 50px;
				background-size: 50px 50px;
			}
			
			
		}

		/* 추가 애니메이션 효과 */
		@keyframes fadeInUp {
			from {
				opacity: 0;
				transform: translateY(30px);
			}
			to {
				opacity: 1;
				transform: translateY(0);
			}
		}

		.overview-item {
			animation: fadeInUp 0.6s ease forwards;
		}

		.overview-item:nth-child(1) { animation-delay: 0.1s; }
		.overview-item:nth-child(2) { animation-delay: 0.2s; }
		.overview-item:nth-child(3) { animation-delay: 0.3s; }
		.overview-item:nth-child(4) { animation-delay: 0.4s; }
		.overview-item:nth-child(5) { animation-delay: 0.5s; }
		.overview-item:nth-child(6) { animation-delay: 0.6s; }
		.overview-item:nth-child(7) { animation-delay: 0.7s; }

		/* 초기 상태 */
		.overview-item {
			opacity: 0;
			transform: translateY(30px);
		}





















/* 온라인 예약방법 안내 */
.reserve-step-wrap {
	width: 1300px;
	margin: 40px auto 0;
}
.reserve-step-title {
  font-size: 1.41rem;
  font-weight: 700;
  color: #222;
  margin-bottom: 24px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.reserve-step-plus {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 6px;
  background: url('/views/_layout/hd/images/icon_plus.png') no-repeat center/contain;
  vertical-align: middle;
}
.reserve-step-list {
  display: flex;
  align-items: flex-start;
  gap: 0;
  flex-wrap: wrap;
}
.reserve-step-item {
	background: #f7f7fa;
	border-radius: 48px;
	min-width: 220px;
	max-width: 260px;
	flex: 1 1 220px;
	padding: 32px 18px 24px 18px;
	text-align: center;
	margin: 0 0 0 0;
	box-sizing: border-box;
	display: flex;
	flex-direction: row;
	align-items: center;
	position: relative;
	justify-content: space-evenly;
}
.reserve-step-icon {
  width: 70px;
  height: 70px;
  object-fit: contain;
  margin-bottom: 16px;
}
.reserve-step-desc {
  font-size: 1.125rem;
  color: #222;
  font-weight: 500;
  line-height: 1.5;
  word-break: keep-all;
  text-align: left;
}
.reserve-step-link {
  color: #555;
  font-weight: 700;
  font-size: 14px;
  
}
.reserve-step-arrow {
  width: 45px;
  height: 42px;
  margin: 0 20px;
  align-self: center;
  background: url('/views/_layout/hd/images/step_icon_arrow.png') no-repeat center/contain;
		}

.reserve-step-download-btn {
  display: inline-block;
  background: #2252c7;
  color: #fff;
  font-size: 1rem;
  font-weight: 500;
  border-radius: 8px;
  padding: 7px 18px 7px 14px;
  margin-top: 5px;
  text-decoration: none;
  transition: background 0.2s;
  vertical-align: middle;
}
.reserve-step-download-btn:hover {
  background: #163a8c;
  color: #fff;
}
.reserve-step-download-ico {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 2px;
  background: url('/views/_layout/hd/images/icon_down_14_w.png') no-repeat center/contain;
  vertical-align: middle;
}

		@media (max-width: 1100px) {
		.reserve-step-list {
			gap: 0;
		}
		.reserve-step-item {
			min-width: 160px;
			padding: 24px 8px 18px 8px;
			border-radius: 32px;
		}
		.reserve-step-icon {
			width: 48px;
			height: 48px;
			margin-bottom: 10px;
		}
		.reserve-step-arrow {
			width: 32px;
			height: 32px;
		}
		}
		@media (max-width: 700px) {
		.reserve-step-wrap {
			width: 100%;
		}
		.reserve-step-title {
			font-size: 1rem;
			margin-bottom: 14px;
		}
		.reserve-step-plus {
			width: 14px;
			height: 14px;
			margin-right: 3px;
		}
		.reserve-step-list {
			flex-direction: column;
			gap: 0;
			align-items: stretch;
		}
		.reserve-step-item {
			min-width: 0;
			max-width: 100%;
			width: 100%;
			padding: 18px 6px 12px 6px;
			border-radius: 18px;
			font-size: 1rem;
			margin-bottom: 0;
		}
		.reserve-step-icon {
			width: 36px;
			height: 36px;
			margin-bottom: 6px;
		}
		.reserve-step-desc {
			font-size: 14px;
		}
		.reserve-step-link {
			font-size: 14px;
		}
		.reserve-step-arrow {
			width: 22px;
			height: 22px;
			margin: 0 auto 0 auto;
			background-size: 18px 18px;
		}
		}
		@media (max-width: 700px) {
		.reserve-step-arrow {
			width: 42px;
			height: 45px;
			margin: 0 20px;
			align-self: center;
			background: url('/views/_layout/hd/images/step_icon_arrow_down.png') no-repeat center/contain;
		}
		.reserve-step-download-btn {
			font-size: 13px;
			padding: 5px 10px 5px 8px;
			border-radius: 6px;
			margin-top: 6px;
		}
		.reserve-step-download-ico {
			width: 13px;
			height: 13px;
			margin-left: 2px;
		}
		.reserve-step-email,
		.reserve-step-tel {
			font-size: 12px;
		}
		}

/* 이용안내 */
.reserve-info-wrap {
	width: 1300px;
  margin: 40px auto 0;
}
.reserve-info-title {
  font-size: 1.41rem;
  font-weight: 700;
  color: #222;
  margin-bottom: 24px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.reserve-info-box {
  background: #f7f7fa;
  border-radius: 32px;
  padding: 24px 32px 18px 32px;
  margin-bottom: 18px;
  font-size: 1.125rem;
  color: #222;
  font-weight: 500;
  line-height: 1.6;
  max-width: 400px;
}
.reserve-info-fee {
  margin-bottom: 8px;
}
.reserve-info-time-desc {
  font-size: 15px;
  color: #888;
  font-weight: 300;
}
.reserve-info-list {
  margin: 0;
  padding: 0 0 0 0;
  list-style: none;
}
.reserve-info-list li {
  font-size: 1rem;
  color: #666;
  font-weight: 400;
  margin-bottom: 6px;
  display: flex;
  align-items: flex-start;
  gap: 6px;
  line-height: 1.7;
  word-break: keep-all;
}
.reserve-info-bullet {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-top: 3px;
  background: url('/views/_layout/hd/images/icon_info_bullet.png') no-repeat center/contain;
  flex-shrink: 0;
}
.reserve-info-caution {
  color: #5a5ad6;
  font-weight: 700;
  text-decoration: underline;
  margin-right: 2px;
  font-size: 15px;
}
		@media (max-width: 700px) {
		.reserve-info-title {
			font-size: 1rem;
			margin-bottom: 14px;
		}
		.reserve-info-box {
			border-radius: 16px;
			padding: 14px 10px 10px 10px;
			font-size: 14px;
		}
		.reserve-info-fee {
			margin-bottom: 4px;
		}
		.reserve-info-list li {
			font-size: 13px;
			margin-bottom: 3px;
		}
		.reserve-info-bullet {
			width: 13px;
			height: 13px;
			margin-top: 2px;
		}
		.reserve-info-caution {
			font-size: 12px;
		}
		}






/* intro */
.intro,
.intro_writer { padding-top: 50px;}
.intro { text-align: center; }
.intro_top { background: url(/views/_layout/hd/images/intro_top.png) no-repeat center; height: 320px; font-size: 60px; font-weight: 600; color: #111; padding-top: 200px; }
.intro_top span:nth-of-type(1) { color: #bb7d3f;}
.intro_top span:nth-of-type(2) { color: #f37c60;}
.intro_top_box { background: url(/views/_layout/hd/images/intro_top_bg.png) no-repeat center; height: 460px; font-size: 1.25rem; color: rgba(255,255,255,.65); line-height: 30px; }
.intro_top_box p { font-size: 60px; color: #fff; font-weight: 600; line-height: 1; padding: 150px 0 40px;}
.intro_top_box span { color: rgba(250,186,123,.65);}

.intro_slogan { font-size: 76px; font-weight: 600; padding-top: 100px;}
.intro_slogan span:nth-of-type(1) { color: #b1794b;}
.intro_slogan span:nth-of-type(2) { color: #313e58;}
.intro_slogan span:nth-of-type(3) { color: #f37c60;}


@media (max-width: 1280px) {
	.intro img { width: 100%;}
	.intro_top,
	.intro_top_box { background-size: 100%;}
}
@media (max-width: 768px) {
	.intro_top { font-size: 50px; height: 250px; padding-top: 150px;}
	.intro_top_box { height: 270px; font-size: 14px; line-height: 22px;}
	.intro_top_box p { font-size: 2rem; padding: 80px 0 20px;}
	.intro_slogan { font-size: 50px; padding-top: 50px;}
}
@media (max-width: 425px) {
	.intro,
	.intro_writer { padding-top: 15px;}
	.intro_top { font-size: 1.5rem; height: 110px; padding-top: 70px;}
	.intro_top_box { height: 200px; font-size: 12px; line-height: 16px; background-size: cover; padding: 0 20px;}
	.intro_top_box p { font-size: 1.25rem; padding: 45px 0 10px;}
	.intro_top_box br { display: none;}
	.intro_slogan { font-size: 1.625rem; }
}

/* intro_writer */
.intro_writer_top { font-size: 1.5rem; color: #666; line-height: 1.3; text-align: center;}
.intro_writer_top p { font-size: 50px; color: #111; font-weight: 600; line-height: 1.2; margin-bottom: 10px;}
.intro_writer_top p span { color: #bb7d3f;}
.intro_writer .con_title_box { text-align: center;}
.intro_writer .con_title_box p { font-size: 2.25rem; }
.intro_writer .con_title_box p:after { bottom: 5px;}
.intro_writer_box { display: flex; justify-content: space-around;}
.intro_writer_inner { width: 48%; padding: 35px; background-color: #fbf4ea; }
.intro_writer_txtbox { font-size: 1rem; color: #666; line-height: 22px; text-overflow: ellipsis; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical;-webkit-line-clamp: 11; } 
.intro_writer_txtbox img { float: left; margin: 0 20px 10px 0;}
.intro_writer_txtbox p { font-size: 1.875rem; color: #333; font-weight: 600; line-height: 1; margin-bottom: 15px;} 
.intro_writer_inner ul { display: flex; justify-content: space-between; margin-top: 15px;}

@media (max-width: 768px) {
	.intro_writer_top { font-size: 1rem; }
	.intro_writer_top p { font-size: 1.875rem; }
	.intro_writer_box { display: inherit; }
	.intro_writer_inner { width: 100%; margin-bottom: 15px;}
}
@media (max-width: 425px) {
	.intro_writer_top { font-size: 12px; }
	.intro_writer_top br { display: none;}
	.intro_writer_top p { font-size: 1rem; }
	.intro_writer_box { display: inherit; }
	.intro_writer_inner { width: 100%; margin-bottom: 15px; padding: 20px;}
	.intro_writer_txtbox { font-size: 12px; line-height: 16px; -webkit-line-clamp: 9; }
	.intro_writer_txtbox img { width: 35%;}
	.intro_writer_txtbox p { font-size: 1.125rem; margin-bottom: 10px;}
	.intro_writer_inner ul { margin: 15px -5px 0;}
	.intro_writer_inner ul li { padding: 0 5px;}
}

/* vision */
.vision { text-align: center;}
.vision_arrow { display: block; width: 100%; height: 200px; background: url(/views/_layout/hd/images/vision_arrow.png) no-repeat center;}
.vision_box { padding: 90px 80px; background-color: #fbf4ea;}
.vision_box .con_title_box, .layout_map_box .con_title_box  {  padding-top: 0; }
.vision_box .con_title_box p, .layout_map_box .con_title_box p { font-size: 50px; font-weight: 400; z-index: 0;}
.vision_box .con_title_box p span, .layout_map_box .con_title_box p span { font-weight: 600; display: inline-block; }
.vision_box ul { display: flex; }
.vision_box ul li { width: 25%; padding: 0 30px;}
.vision_box ul li .vision_circle { width: 220px; height: 220px; line-height: 220px; margin: 0 auto; border-radius: 50%; font-size: 2.25rem; color: #fff; position: relative; }
.vision_box ul li .vision_circle:after { content: ""; display: block; width: 200px; height: 200px; border-radius: 50%; border: 1px rgba(255,255,255,.3) solid; position: absolute; top: 10px; left: 10px;}
.vision_box ul li:nth-of-type(1) .vision_circle { background-color: #313e58;}
.vision_box ul li:nth-of-type(2) .vision_circle { background-color: #b1794b;}
.vision_box ul li:nth-of-type(3) .vision_circle { background-color: #dc735a;}
.vision_box ul li:nth-of-type(4) .vision_circle { background-color: #3e3a39;}
.vision_title { font-size: 1.25rem; color: #000; font-weight: 600; margin: 20px 0 10px;}
.vision_txt { font-size: 1.125rem; color: #666; line-height: 20px;}

@media (max-width: 768px) {
	.vision_arrow { height: 150px; background-size: 18%;}
	.vision_box { padding: 50px;}
	.vision_box .con_title_box p, .layout_map_box .con_title_box p { font-size: 1.875rem;}
	.vision_box ul { flex-wrap: wrap;}
	.vision_box ul li { width: 50%;  margin-bottom: 30px;}
	.vision_box ul li .vision_circle { width: 200px; height: 200px; line-height: 200px; font-size: 1.875rem;}
	.vision_box ul li .vision_circle:after { width: 180px; height: 180px; }
}
@media (max-width: 425px) {
	.vision .intro_slogan { padding-top: 30px;}
	.vision_arrow { height: 75px; }
	.vision_box { padding: 20px;}
	.vision_box .con_title_box p, .layout_map_box .con_title_box p { font-size: 1rem !important; padding: 0;}
	.vision_box .con_title_box p:after { height: 5px; bottom: 2px;}
	.vision_box ul li { padding: 0; }
	.vision_box ul li .vision_circle { width: 125px; height: 125px; line-height: 125px; font-size: 1.25rem;}
	.vision_box ul li .vision_circle:after { width: 110px; height: 110px; top: 7.5px; left: 7.5px; }
	.vision_title { font-size: 1rem; margin: 15px 0 5px;}
	.vision_txt { font-size: 14px; line-height: 18px;}
}






/* instruction */

.instruc_01 {background:url(../images/instruction_bg.png) 50% 0 no-repeat; margin-top:30px; padding:160px 0 0 0; display: flex; flex-direction: row; flex-wrap: wrap; align-content: center; justify-content: space-evenly; align-items: center;} 
.instruc_01 .item {width:210px; height:210px; background-color:#ca8949; background-repeat: no-repeat; border-radius: 50%; text-align: center; vertical-align: middle;}
.instruc_01 .item span {display: block;}
.instruc_01 .item .title {color:#fff; font-size: 1.4rem; font-weight:700}
.instruc_01 .item .title:before {content:''; display: block; background-position:50% 85%; background-repeat: no-repeat; width:210px; height:120px;}
.instruc_01 .item .subtxt {color:#fff; font-size:16x; font-weight:400}

.instruc_01 .item.n1 {background-image:url(../images/instruction_circle1_bg.png)}
.instruc_01 .item.n2 {background-image:url(../images/instruction_circle2_bg.png)}
.instruc_01 .item.n3 {background-image:url(../images/instruction_circle3_bg.png)}
.instruc_01 .item.n4 {background-image:url(../images/instruction_circle4_bg.png)}
.instruc_01 .item.n5 {background-image:url(../images/instruction_circle5_bg.png)}
.instruc_01 .item.n1 .title:before {background-image:url(../images/instruction_circle1_icon.png);}
.instruc_01 .item.n2 .title:before {background-image:url(../images/instruction_circle2_icon.png);}
.instruc_01 .item.n3 .title:before {background-image:url(../images/instruction_circle3_icon.png);}
.instruc_01 .item.n4 .title:before {background-image:url(../images/instruction_circle4_icon.png);}
.instruc_01 .item.n5 .title:before {background-image:url(../images/instruction_circle5_icon.png);}


.instruction .con_title_box p { font-size: 2.25rem;}
.instruction .con_title_box { text-align: center;}


.instruction .con_box { display: flex; flex-direction: row; flex-wrap: wrap; align-content: center; justify-content: space-evenly; align-items: center; max-width: 80%; margin:0 auto;} 
.instruction .process {width:140px; height:140px; background-color:#f8f8f8; border:8px solid #eeeeee; border-radius: 50%; text-align: center; vertical-align: middle; color:#000000; font-size: 1.125rem; font-weight:700; display: flex; align-items: center; 
}
.instruction .process p {width:100%; display:block; text-align: center;}
.instruction .arrow {width:65px; height:20px; background-position:100% 50%; background-repeat: no-repeat;  background-image:url(../images/instruc_arrow.png)}

.instruction .con_box.instruc_04 .arrow {width:40px}
.instruction .con_box.instruc_04 .process.p2,
.instruction .con_box.instruc_04 .process.p3   {background-color:#fff3e8; border:8px solid #ffe5cc; font-size: 1.25rem; }




/* layout_map */
.layout_map { padding: 70px; background-color: #fbf4ea; text-align: center; margin-top: 30px;}

@media (max-width: 768px) {
	.layout_map { padding: 40px; margin-top: 20px;}
}
@media (max-width: 425px) {
	.layout_map { padding: 20px; }
	.layout_map_box .con_title_box { padding-bottom: 10px;}
}

/* map */
.map .map_box { border: 1px #ddd solid;}

@media (max-width: 425px) {
	.map .map_box #map { height: 200px !important;}
}


/* support_steps */
.support_steps { display: flex; align-items: center; justify-content: space-between; margin-top: 50px; }
.support_step_box { text-align: center; background-color: #fbf4ea; width: 17%; height: 270px; position: relative;}
.support_step_box:after { content: ""; display: block; width: 30px; height: 25px; background: url(/views/_layout/hd/images/support_arrow.png) no-repeat center; position: absolute; top: 44%; right: -40px;}
.support_steps > div:last-of-type:after { display: none;}
.support_icon { width: 80px; height: 80px; margin: 40px auto 30px; background: no-repeat center;}
.support_step { font-size: 1.25rem; color: #999; line-height: 1; margin-bottom: 20px;}
.support_txt { font-size: 1.41rem; color: #000; line-height: 1; font-weight: 600;}
.support_txt span { font-size: 14px; color: #666; font-weight: 500; margin-left: 5px;}
.support_steps > div:nth-of-type(1) .support_icon { background-image: url(/views/_layout/hd/images/support_icon1.png);}
.support_steps > div:nth-of-type(2) .support_icon { background-image: url(/views/_layout/hd/images/support_icon2.png);}
.support_steps > div:nth-of-type(3) .support_icon { background-image: url(/views/_layout/hd/images/support_icon3.png);}
.support_steps > div:nth-of-type(4) .support_icon { background-image: url(/views/_layout/hd/images/support_icon4.png);}
.support_steps > div:nth-of-type(5) .support_icon { background-image: url(/views/_layout/hd/images/support_icon5.png);}


/* support */
.support { text-align: center;}
.movin_support {}
.startup_support {}


/* cibi */
.cibi { text-align: center;}
.cibi_top {height:50px;}
.cibi_box { display: flex; justify-content: space-around;}
.cibi_inner { width: 48%;}
.cibi_txtbox {padding: 40px; background-color: #fbf4ea;} 
.cibi_txtbox img { min-width: 100%;}
.cibi_inner a.download { font-size: 1.25rem;width:90%; color: #fff;  font-weight: 500; line-height: 3em; margin: 0 auto; 
	/* background:#ca8949;*/ 
	background:linear-gradient(#9a5c1e 2%, #ca8949 20%);
	border-radius:0; 
} 
@media (max-width: 525px) {
	.cibi_box { display: block;}
	.cibi_box .cibi_inner:last-child {margin-top:30px}
	.cibi_inner { width: 100%;}
}




/* btn */
.btn { background-color: #777; color: #fff; font-size: 1rem; text-align: center; line-height: 2.5; padding: 0 20px; border-radius: 8px; display: inline-block; margin: 0 5px; border: 0; box-shadow: none; }
.btn:hover, .btn-default:hover { background-color: #000; color: #fff;}

@media (max-width: 768px) {
	.btn { font-size: 1rem; line-height: 50px; width: 140px; border-radius: 5px;}
}
@media (max-width: 425px) {
	.btn { font-size: 14px; line-height: 40px; width: 120px; }
}

.btn-success {font-size: 1.125rem; background-color: #00acd4; color: #fff; }
.btn-success:hover { background-color: #005194; color: #fff;}

.mt20 {margin-top:20px !important}
.mb20 {margin-bottom:20px !important}

/* member */
.access { margin:0; float:inherit; width:100%; }
.access .panel { border-radius:0; box-shadow:none; width:480px; margin:5% auto 15%; border-color: #999 }
.access .panel-heading { font-size: 1.5rem; font-weight: 600; background:none; text-align:center; padding: 30px 0; border: 0;}
.access .panel-heading h1 { padding:0 50px;}
.access .panel-body { padding: 0; }
.access .panel-body form { width: 80%; margin: 0 auto}


@media (max-width: 425px) {
	.access .panel { width: 95%; margin: 10% auto 20%;}
	.access .panel-heading { font-size: 1.125rem; padding: 20px 0 15px;}
	.access .panel-body form { width: 85%; margin: 0 auto 20px; }
	.access .form-control { line-height: 50px; height: 50px;}
}


/* membermodify */
.membermodify .mem_box { width: 540px; margin: 60px auto; border: 1px #999 solid; padding: 30px;}
.membermodify_title { font-size: 1.25rem; font-weight: 600; color: #000; text-align: center; }
.membermodify_txt { text-align: center; padding-top: 30px; font-size: 1rem;}
.membermodify_txt span { color: #da411c; }
.membermodify .mem_box .find_idpw_box { padding-top: 30px;}
.membermodify .mem_box .find_idpw_box .btn { width: 240px; margin-top: 20px;}

.membermodify.input_form .box-table { border: 1px #ddd solid; padding: 30px; border-radius: 10px; background-color: #f9f9f9; margin-top: 40px;}
.membermodify .mem_box .btn_center .btn { margin: 0;}

.membermodify .alert { /*margin-bottom: -20px !important;*/}
.membermodify_inner_title { font-size: 1.25rem; font-weight: 600; margin: 30px 0 20px; color: #000;}

@media (max-width: 425px) {
	.membermodify .mem_box { width: 100%; margin: 20px auto; padding: 20px 30px;}
	.membermodify_title { font-size: 1rem;}
	.membermodify .mem_box .find_idpw_box { padding-top: 20px; font-size: 14px;}
	.membermodify .mem_box .find_idpw_box .btn { width: 100%; display: block; margin: 10px 0 0 0;}
	.membermodify_txt { padding-top: 5px; font-size: 12px;}
	.membermodify.input_form .box-table { padding: 15px; margin-top: 15px;}
}



.mem_box { max-width:700px; margin:50px auto; }
.mem_box .alert { margin:20px 0 -20px; text-align:center; }


/* login */
.login_box, .mypage { width:100%; }
.login_txt01 { font-size: 1.625rem; line-height:26px; text-align:center; color:#333; }
.login_txt02 { font-size:14px; line-height:26px; text-align:center; color:#666; margin-top:25px; }
.login_box .panel { border:0; box-shadow:0; border-radius:0; background:#f7f4f0; width:100%;  }
.login_box .col-sm-offset-1 { display:none; }

.login_box .login_add { text-align:center; }
.login_box .btn_idpw { padding-right:15px; margin-right:15px; border-right:1px #dbdbdb solid; }

/* login_box */
.login_box .panel { padding:50px 0 15px; position:relative; }
.login_box .panel-body { padding:0; }
.login_box .control-label { text-align:left; font-size: 1rem; width:24.5%; padding-left:50px; }
.login_box .form-control { height:40px; margin-bottom:8px; width:330px; }
.login_box .form-group {margin-bottom:0}
.login_box .login_btn { position:absolute; top:50px; right:100px; }
.login_box .login_btn .btn { width:88px; height:88px; padding:0; }
.login_box .login_add { margin:20px 0 35px; }
.login_box .login_add .btn {background-color: transparent; font-size:14px;color:#333; line-height:1.2;margin:0; border-radius: 0;}
.login_box .col-sm-offset-1 {display: none;}

.login_box .btn {}
.login_box .btn.login { width: 88px; height: 88px; padding: 0; background-color:#ce843f; color:#fff;font-size: 1rem; line-height:1.2; }
.login_box .btn.register {border-right:1px solid #ddd}



/* find_idpw_box */
.find_idpw_box { width:100%; background:#f7f4f0; margin-top:40px; padding-bottom:50px; color:#806040; font-size: 1rem; line-height:28px; }
.find_idpw_box_tab { padding-bottom:50px;  }
.find_idpw_box_tab li { width:50%; height:60px; line-height:60px; text-align:center; font-size: 1.125rem; background:#dbd2c5; color:#fff; float:left; cursor:pointer; }
.find_idpw_box_tab li:hover { background:#d7cbbb; }
.find_idpw_box_tab li.on { background:#f7f4f0; color:#333; }
.find_id_txt { background:url(../images/find_idpw_img.png) no-repeat 140px 33px; padding:30px 0 30px 265px; }
.find_id_txt .btn { margin-top:20px; }

.find_id { text-align:center; padding:20px 0; }
.find_id span { color:#f68b1f; }
.find_id .btn { margin-top:30px; width:145px; background-color: #ce843f; }

.find_pw_txt { text-align:center; padding-bottom:30px; }
.find_pw_txt.error { color:#ff1010; }
.find_pw_input { border-top:1px #dbc8af solid; border-bottom:1px #dbc8af solid; width:460px; margin:0 auto; padding:18px 0 10px; }
.find_pw_input .input_num { width:100px !important; }
.find_pw_input table th { width:130px; padding-left:10px; }



@media (max-width: 600px) {

	/* login */
	.login_box .mem_box { width:100%; padding:0 20px; }
	.login_box .control-label, .mypage .control-label { display:none; }
	.login_box .form-control, .mypage .form-control { margin-top:-1px; margin-bottom:0 !important; width:100%; }
	.login_box .panel { padding:30px; }
	.login_txt02 { line-height:20px; }
	.login_box .login_btn { position:inherit; }
	.login_box .login_btn .btn, .mypage .btn { width:100%; height:40px; line-height:40px; border-radius:3px; margin-top:10px; }
	.login_box .login_add { margin:10px 0 20px; text-align:left; }
	.login_box .login_link_box { width:100%; }
	.login_box .login_link { height:50px; line-height:50px; width:50%; }
	.login_box .login_link span { padding:3px 0 3px 35px; font-size:14px; background-size:contain; }
	
	/* find_idpw_box */
	.find_idpw_box { padding-bottom:30px; }
	.find_idpw_box .form-control { margin-top:0; margin-bottom:5px !important; }
	.find_id_txt { background-position:110px 32px; padding:30px 0 30px 220px; line-height:20px; }
	.find_id_txt .btn { margin-top:15px; }	
	.find_idpw_box_tab { padding-bottom:30px; }
	.find_idpw_box_tab li { height:50px; line-height:50px; font-size: 1rem; }
	.find_pw_txt { font-size:14px; line-height:20px; }
	.find_pw_input { width:420px; }
	.find_pw_input table th { width:90px; }

}




/**
	app skin css
*/

.app_con_step { width: 90%; margin: 0 auto;}

@media (max-width: 1024px) {
	.app_con_step { width: 100%;}
}

/* app_tabs */
.app_tabs { width: 100%; display: flex; border-bottom: 1px #ddd solid; margin-bottom: -1px; }
.app_tabs li { width: 25%; background-color: #f9f9f9; font-size: 1.25rem; color: #666; line-height: 70px; text-align: center; cursor: pointer; border: 1px #ddd solid; margin: 0 -1px -1px 0; }
.app_tabs li:hover { color: #000; background-color: #eee;}
.app_tabs li.on,
.app_steps li.on { background-color: #333; border-color: #333; color: #fff; cursor: default; }


/*faq용*/
.app_tabs.faq {margin: 0 auto 60px;}
.app_tabs.faq li {width:33.3%}

/* app_steps */
.app_steps { width: 100%; display: flex; justify-content: center; margin-bottom: 30px;}
.app_steps li { margin: 0 10px 30px; width: 250px; border-radius: 50px; background-color: #f9f9f9; font-size: 1.25rem; color: #666; line-height: 60px; text-align: center; border: 1px #ddd solid;}

@media (max-width: 768px) {
	.app_tabs li { font-size: 1rem; line-height: 50px;}
}
@media (max-width: 425px) {
	.app_tabs { justify-content: space-around;}
	.app_tabs li { width: 100%; font-size: 11px; line-height: 40px; }
	.app_steps { margin-bottom: 15px;}
	.app_steps li { margin: 0 5px; font-size: 13px; line-height: 34px;}
}



/* app_btn */
.app_btn { display: inline-block ;background-color: #124ad9;  min-width: 240px; width: auto; line-height:50px; height: 50px; border-radius:40px;font-size: 1.125rem; font-weight:700; }
.app_btn:hover { background-color: #111; color: #fff;} 



.app_btn_s { display: inline-block !important; border: 1px #ddd solid; margin: 0; background-color: #fff; font-size: 1rem; line-height: 50px; padding: 0 20px; border-radius: 5px; }
.app_btn_s:hover { background-color: #eee; color: #333; border-color: #ccc;} 

.app_btn_2 { background-color: #003b8f;}
.app_btn_2:hover { background-color: #003b8f;}

@media (max-width: 425px) {
	.app_btn { min-width: 45%; display: block; margin-bottom:10px; }
}



/* app_con */
.app_con_title_box { display: flex; align-items: baseline; margin-bottom:30px; }

.app_con_title_box .app_con_ampm .am,
.app_con_title_box .app_con_ampm .pm {display: inline-block; border-radius: 12px; font-size:13px; padding:0 20px; background:#dbebff }

.app_con_title { font-size: 1.5rem; line-height: 1; font-weight: 600; color: #000; padding:40px 0 20px; display: flex; align-items: center;}
.app_con_title .date { font-size: 1rem; color: #fff; background-color: #003b8f; padding: 0 15px; border-radius: 50px; font-weight: 500; line-height: 28px; display: inline-block; margin-left: 10px; }

.app_con_title:first-of-type { padding:0 0 20px 0; }
.app_con_title_center { text-align: center; display: inherit; padding-bottom: 50px;}
.app_con_box { border: 1px #ddd solid; background-color: #f9f9f9; padding: 30px 35px; font-size: 1.125rem; line-height: 30px;}
.app_con_box > strong { color: #000;}
.stress { color: #e01818;}

.support.support_1 .app_con_box  {text-align: left;}
.support.support_1 .app_con_box ul li strong:before  {content: 'ㆍ '; display: inline-block;}
.support.support_1 .app_con_box ul li strong {display: inline-block; width:110px}

@media (max-width: 768px) {
	.app_con_title { font-size: 1.41rem; padding: 40px 0 10px;}
	.app_con_box { font-size: 1rem; line-height: 24px; padding: 20px 25px;}
}
@media (max-width: 425px) {
	.app_con_title_box { display: inherit;}
	.app_con_title { font-size: 1rem; padding: 20px 0 10px;}
	.app_con_title .date { font-size: 13px; padding: 0 10px; line-height: 24px;}
	.app_con_title_center { padding-bottom: 20px; line-height: 1.5; width: 80%; margin: 0 auto; }
	.app_con_box { font-size: 12px; line-height: 18px; padding: 15px; max-height: 250px; overflow-y: auto;}
}


/* app_con_tbl */
.app_con_tbl { overflow-x: auto;}
.app_con_tbl table { font-size: 1.125rem; border: 1px #ddd solid; }
.app_con_tbl table th, .app_con_tbl table td { padding: 20px; text-align: center; }
.app_con_tbl table th { background-color: #f4f6f9; color: #000; }
.app_con_tbl table th.row { background-color: #fcfdea; }
.app_con_tbl table input[type="number"] { text-align: end; min-width: 60px; padding: 0 5px;}
.app_con_tbl table td:last-child img {height:120px;}

.app_chk { font-size: 1.125rem; padding-top: 20px;}
.app_chk label { display: flex; align-items: center;}
.app_chk input[type=checkbox] { width: 17px; height: 17px; margin: 0 5px 0 0;}

.app_con_box_btn { display: flex; align-items: center; }
.app_con_box_btn .app_btn_s { margin-left: auto; text-align: center;}

@media (max-width: 768px) {
	.app_con_tbl table { font-size: 14px; white-space: nowrap;}
	.app_con_tbl table th, .app_con_tbl table td { padding: 10px;}
}
@media (max-width: 425px) {
	.app_con_tbl table { font-size: 12px;}

	.app_chk { font-size: 13px; padding-top: 10px;}
	.app_chk input[type=checkbox] { width: 14px; height: 14px;}
ㅋ
	.app_con_box_btn { display: inherit;}
}

/* app_calendar */
.app_calendar_info { margin-left: auto; display: flex; align-items: center; }
.app_calendar_info li { display: flex; align-items: center;}
.app_calendar_info li span { display: inline-block; width: 15px; height: 15px; border: 1px #ddd solid; margin: 0 5px 0 10px; }

.app_calendar_xclose.admin,
.app_calendar_info li:nth-of-type(1) span { background-color: #dbebff;}
.app_calendar_info li:nth-of-type(2) span { background-color: #e24f88;}
.app_calendar_info li:nth-of-type(3) span { background-color: #f4f6f9;}
.app_calendar_info li:nth-of-type(4) span { background-color: #fff;}
.app_calendar { margin-bottom: 30px;}
.app_calendar table { font-size: 14px; }
.app_calendar table th, .app_calendar table td { padding: 10px 5px;}
.app_calendar_close { background-color: #f4f6f9;}
.app_calendar_xclose { background-color: #f4f6f9;}
.app_calendar_xclose span { display: block; margin-top:10px !important; width: 12px; height: 12px; margin: 0 auto; background: url(/views/_layout/hd/images/app_close.png) no-repeat center; }



.app_calendar_select { background-color: #f37c60 !important; color:#fff !important }

@media (max-width: 425px) {
	.app_calendar_info { justify-content: flex-end; margin-bottom: 10px;}
	.app_calendar_info li { font-size: 12px;}
}




/** calendar version 2 : **/
.app_con_flex_box { display: flex }
.app_con_flex_box > div { width: 50%; }
.app_con_flex_item { margin-left: 40px; }

.calendar_title { display: flex; justify-content: center; align-items: center; margin:40px 0 0; }
.calendar_title .calendar_prev_month { font-size: 1.5rem; cursor:pointer;}
.calendar_title .calendar_now_month { font-size: 1.875rem; margin:0 20px;}
.calendar_title .calendar_next_month { font-size: 1.5rem; cursor:pointer;}

.calendar_tbl { width: 100%; border-collapse: collapse; }
.calendar_tbl table { font-size: 14px; border:2px #505050 solid; table-layout: fixed;}
.calendar_tbl table th { padding: 10px 0px; text-align: center; font-size: 1rem; font-weight:500}
.calendar_tbl table th.sun { color: #ff81b9; }
.calendar_tbl table th.satur { color: #afd3ff; }
.calendar_tbl table th { background-color: #505050; border-bottom:1px solid #505050; color: #fff; font-size: 1rem; } /* f4f6f9 */
.calendar_tbl table th.row { background-color: #fcfdea; }
.calendar_tbl table td { position: relative; border-bottom:1px solid #505050;}
.calendar_tbl table td.sun { color: #bd3216; }
.calendar_tbl table td.satur { color: 02479b; }
.calendar_tbl table td.app_calendar_dayoff { background-color:#f4f6f9; }
.calendar_tbl table td > div { padding: 5px; width: 100%; aspect-ratio: 1 / 1; display: flex; flex-direction: column; }
.calendar_tbl table td .days { font-size: 14px; text-align: left;}
.calendar_tbl table td .dayoff { font-size: 13px; color:red; position:absolute; bottom:4px; left:10px;}
.calendar_tbl table td .ampm { font-size: 13px; color:#333; font-weight:500; margin: 5px 0 0 auto; width:100%; text-align: center; border-radius: 12px; background-color:#dbebff; cursor: pointer; }
.calendar_tbl table td .ampm.disabled { background-color: #eee !important; }
.calendar_tbl table td .ampm.admin { background-color: #eee !important; cursor:default; }
/*.calendar_tbl table td .ampm.admin { background-color: #afd3ff !important; }*/
@media (max-width: 768px) {
	.app_con_flex_box { flex-wrap: wrap; }
	.app_con_flex_box > div { width: 100%; }
	.app_con_flex_item { margin-left: 0px; margin-top: 40px }
}

/* app_con_file */
.app_con_file { padding:30px 20% 50px; }
.app_con_file a { text-decoration: underline; }
.app_con_file a:hover { color: #e01818; }
.app_con_file_box { display: flex; margin: 20px 0; } 
.app_con_file_box .file_box { flex: 1 1 auto; display: flex;}
.app_con_file_box .file_box .upload_name { display: inline-block; height: 40px; padding: 0 10px; font-size: 1rem; border: 1px solid #ddd; width: 100%; color: #999; }
.app_con_file_box .file_box label { display: inline-block; padding: 0 20px; font-size: 1rem; color: #333; background-color: #eee; border: 1px #ddd solid; border-left: 0; cursor: pointer; line-height: 38px; margin: 0; }
.app_con_file_box .file_box input[type="file"] { position: absolute; width: 0; height: 0; padding: 0; overflow: hidden; border: 0;}
.app_con_file_box .file_add { padding: 0 20px; font-size: 1rem; color: #fff; background-color: #f37c60; border: 0; line-height: 40px; height: 40px; margin-left: 5px; }

.app_con_file_list li { display: flex; align-items: center; font-size: 1.125rem; color: #333; padding: 0 10px; line-height: 60px; border-bottom: 1px #ddd solid; }
.app_con_file_list li button { margin-left: auto; font-size: 0; border: 0; width: 15px; height: 15px; display: block; background: url(/views/_layout/hd/images/app_close.png) no-repeat center; }

@media (max-width: 425px) {
	.app_con_file { padding: 20px 15px 30px;}
	.app_con_file_box { margin: 10px 0;}
	.app_con_file_box .file_box .upload_name,
	.app_con_file_box .file_box label,
	.app_con_file_box .file_add { font-size: 13px; height: 34px; line-height: 34px; }	
	.app_con_file_box .file_box label,
	.app_con_file_box .file_add { padding: 0 10px;}

	.app_con_file_list li { font-size: 13px; line-height: 40px;}

}

/* app_con_list */
.app_con_list > ul { display: flex; align-items: center; }
.app_con_list_th, .app_con_list_td { padding: 20px; border-bottom: 1px #ddd solid; text-align: center; font-size: 1.125rem;}
.app_con_list_th { border: 1px #ddd solid; border-radius: 8px; background-color: #f9f9f9; font-weight: 600; color: #111;}

.app_con_list .num { width: 10%;}
.app_con_list .thumb { width: 30%;}
.app_con_list .thumb img { border: 1px #ddd solid; width: 150px;}
.app_con_list .title { width: 40%; font-size: 1rem; }
.app_con_list .title p { font-weight: 600; color: #111; font-size: 1.125rem; line-height: 2;}
.app_con_list .btn_area { width: 20%;}

.app_con_list_td .title { text-align: left; padding-left: 20px;} 
.app_con_list a { display: inline-block;}
.app_con_list .app_btn_s { display: inline-block !important;}

.app_con_list .pagination { margin-top: 50px; }
.app_con_list .pagination a { color: #333; }

@media (max-width: 768px) {
	.app_con_list_th, .app_con_list_td { font-size: 15px;}
}
@media (max-width: 425px) {
	.app_con_list_td { display: inherit !important; font-size: 14px;}
	.app_con_list_th { padding:0; border-color:#333; }
	.app_con_list_th li,
	.app_con_list .num { display: none !important;}	
	.app_con_list .thumb { width: 40%; float: left;}
	.app_con_list .thumb img { width: 100%;}
	.app_con_list .title { width: 60%; float: left;}
	.app_con_list .title p { font-size: 14px;}
	.app_con_list .btn_area { width: 100%; clear: left; text-align: right;}
}

/* app_list */
.app_list_txt { font-size: 1rem; color: #666; margin: 30px 0 10px;}
.app_list li,
.app_list .btn_area { width: 10%;}
.app_list li:nth-of-type(1) { width: 30%;}
.app_list li:nth-of-type(2),
.app_list li:nth-of-type(6) { width: 20%;}
.app_list .app_btn_s { display: inline-block !important; font-size: 14px; width: auto; margin-top: 10px; padding: 0 15px; line-height: 30px;}

.app_list_2 li:nth-of-type(1) { width: 10%;}
.app_list_2 li:nth-of-type(2) { width: 40%;}
.app_list_2 li:nth-of-type(3),
.app_list_2 li:nth-of-type(5) { width: 20%;}

.label { border-radius: 0; font-size: 12px; color: #fff; padding: 5px 10px; font-weight: 500; }
.label_1 { background-color: #e35b3b;}
.label_2 { background-color: #da7420;}
.label_3 { background-color: #313e58;}
.label_4 { background-color: #999;}

@media (max-width: 425px) {
	.app_list_txt { font-size: 12px; margin: 20px 0 10px;}	
	.app_list .app_con_list_td { padding: 10px 15px;}
	.app_list li { width: 100% !important; text-align: left !important; padding-bottom: 5px;}
	.app_list li:nth-of-type(1) { font-size: 1.125rem; color: #000; font-weight: 600; padding-bottom: 5px;}
	.app_list .btn_area { display: flex; align-items: center;}
	.app_list .btn_area .app_btn_s { margin: 0 0 0 auto;}
}


@media (max-width: 768px) {
	.app_con_title { font-size: 1.41rem; padding: 40px 0 10px;}
	.app_con_box { font-size: 1rem; line-height: 24px; padding: 20px 25px;}
}
@media (max-width: 425px) {
	.app_con_title_box { display: inherit;}
	.app_con_title { font-size: 1rem; padding: 20px 0 10px;}
	.app_con_title .date { font-size: 13px; padding: 0 10px; line-height: 24px;}
	.app_con_title_center { padding-bottom: 20px; line-height: 1.5; width: 80%; margin: 0 auto; }
	.app_con_box { font-size: 12px; line-height: 18px; padding: 15px; max-height: 250px; overflow-y: auto;}

	.app_btn_s { font-size: 12px !important; line-height: 26px !important; width: 100px; margin-top: 10px;}
}

.searchbox .btn,
.searchbuttonbox .btn { height:40px; border-radius:0; padding:0 10px; font-size: 1.125rem; margin: 0 0 3px 0; width: auto; line-height: 1; }



/**************************************************************/

/*** 게시판 콘텐츠 영역 ***/

/**************************************************************/

#post-content { 
	
	font-size: 1.125rem;
	line-height: 1.8;
	color: #333;
	word-break: keep-all;
	
 }

 #post-content p {
	margin-block-start: 0.5em;
	margin-block-end: 0.5;
	 }  


 #post-content table,  #post-content table th, #post-content table td {
	border-collapse: collapse;
	padding: 10px;
	text-align: center;
	border:1px solid #ddd;
	 }  

	  #post-content table {min-width:70%;}
	  #post-content table th {background-color: #f4f6f9; color: #000; font-weight: 600;} 




/********************************************************************************************************************************
 admin*/

 .admin_btn { margin-top:100px; text-align:right; }

 @media (min-width:768px) {		
	 .navbar-right { margin-right:0; }
	 .navbar-right .dropdown-menu { right:inherit; }
	 .container>.navbar-collapse { padding-right:0; padding-left:0; }		
 }