@charset "utf-8";

/* 게시판 목록 */
#bo_cate {
	margin: 25px 0;
}
#bo_cate h2 {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}
#bo_cate ul {
	zoom: 1;
}
#bo_cate ul:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#bo_cate li {
	display: inline-block;
	padding: 2px;
}
#bo_cate a {
	display: block;
	line-height: 28px;
	padding: 5px 15px;
	border-radius: 30px;
	border: 1px solid #d6e9ff;
	color: #6794d3;
}
#bo_cate a:focus,
#bo_cate a:hover,
#bo_cate a:active {
	text-decoration: none;
	background: #3a8afd;
	color: #fff;
}
#bo_cate #bo_cate_on {
	z-index: 2;
	background: #3a8afd;
	color: #fff;
	font-weight: bold;
	border: 1px solid #3a8afd;
	-webkit-box-shadow: inset 0 2px 5px rgb(33, 135, 202);
	-moz-box-shadow: inset 0 2px 5px rgb(33, 135, 202);
	box-shadow: inset 0 2px 5px rgb(33, 135, 202);
}
.td_subject img {
	margin-left: 3px;
}

/* .selec_chk {position:absolute;top:0;left:0;width:0;height:0;opacity:0;outline:0;z-index:-1;overflow:hidden}
.chk_box {position:relative}
.chk_box input[type="checkbox"] + label {position:relative;padding-left:20px;color:#676e70;vertical-align:baseline}
.chk_box input[type="checkbox"] + label:hover{color:#2172f8}
.chk_box input[type="checkbox"] + label span {position:absolute;top:10px;left:10px;width:15px;height:15px;display:block;background:#fff;border:1px solid #d0d4df;border-radius:3px}
.write_div .chk_box input[type="checkbox"] + label, .bo_vc_w .chk_box input[type="checkbox"] + label {padding-left:20px}
.write_div .chk_box input[type="checkbox"] + label span, .bo_vc_w .chk_box input[type="checkbox"] + label span {position:absolute;top:2px;left:0;width:15px;height:15px;display:block;margin:0;background:#fff;border:1px solid #d0d4df;border-radius:3px}
.chk_box input[type="checkbox"]:checked + label {color:#222}
.chk_box input[type="checkbox"]:checked + label span {background:url(./img/chk.png) no-repeat 50% 50% #3a8afd;border-color:#1471f6;border-radius:3px}
.all_chk.chk_box input[type="checkbox"] + label span {top:0;left:0} */

/* ============================
   체크박스 - 게시판 목록 공통 (접근성 개선)
   ============================ */

/* [접근성] 실제 포커스가 input에 가도록, 커스텀 박스 위치에 "투명 input"을 겹친다 */
.selec_chk {
	position: absolute;
	top: 50%;
	left: 0;
	width: 18px; /* 커스텀 박스(span)와 동일 크기 */
	height: 18px;
	transform: translateY(-50%);
	margin: 0;
	opacity: 0; /* 시각적으로 숨김(포커스는 가능) */
	pointer-events: auto; /* 마우스/터치 가능 */
	z-index: 1;
}

.chk_box {
	position: relative;
}

/* 라벨: 왼쪽에 체크박스 영역 확보 */
.chk_box input[type="checkbox"] + label {
	position: relative;
	color: #676e70;
	padding-left: 26px; /* 18px 박스 + 여백 */
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.chk_box input[type="checkbox"] + label:hover {
	color: #2172f8;
}

/* 커스텀 박스(시각 표기) */
.chk_box input[type="checkbox"] + label span {
	position: absolute;
	top: 50%;
	left: 0;
	width: 18px;
	height: 18px;
	transform: translateY(-50%);
	display: block;
	background: #fff;
	border: 1px solid #d0d4df;
	border-radius: 3px;
	cursor: pointer;
}

/* 체크 상태 */
.chk_box input[type="checkbox"]:checked + label {
	color: #000;
}
.chk_box input[type="checkbox"]:checked + label span {
	background: #3a8afd url("../img/chk.png") no-repeat 50% 50%;
	border-color: #1471f6;
	border-radius: 3px;
}

/* [접근성] 키보드 포커스 링(프록시): input에 포커스가 오면 시각 박스(span)에 아웃라인 표시 */
.chk_box input[type="checkbox"]:focus-visible + label span {
	outline: 2px solid #1a3faa;
	outline-offset: 2px;
}

/* [접근성] 강제 색상 모드 보정 */
@media (forced-colors: active) {
	.chk_box input[type="checkbox"]:focus-visible + label span {
		outline: 2px solid CanvasText;
	}
}

/* ============================
   특수 컨텍스트 (쓰기/댓글 영역) - 기존 크기 15px 유지
   ============================ */

/* 라벨 패딩 보정(15px 박스에 맞춤) */
.write_div .chk_box input[type="checkbox"] + label,
.bo_vc_w .chk_box input[type="checkbox"] + label {
	padding-left: 22px; /* 15px 박스 + 여백 */
}

/* 커스텀 박스 크기 15px 유지 */
.write_div .chk_box input[type="checkbox"] + label span,
.bo_vc_w .chk_box input[type="checkbox"] + label span {
	position: absolute;
	top: 50%;
	left: 0;
	width: 15px;
	height: 15px;
	display: block;
	margin: 0;
	background: #fff;
	border: 1px solid #d0d4df;
	border-radius: 3px;
	transform: translateY(-50%);
}

/* [접근성] 투명 input 오버레이도 15px로 맞춘다 */
.write_div .selec_chk,
.bo_vc_w .selec_chk {
	width: 15px;
	height: 15px;
}

/* ============================
   기타
   ============================ */
.tbl_head01 .all_chk {
	padding-left: 5px !important;
}

/* 갤러리 목록 */
#bo_gall h2 {
	margin: 0;
	padding: 0;
	width: 1px;
	height: 1px;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}
#bo_gall #gall_ul {
	margin: 10px -10px 0;
	padding: 0;
	list-style: none;
	zoom: 1;
}
#bo_gall #gall_ul:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#bo_gall .gall_li .gall_chk {
	position: absolute;
	top: 10px;
	left: 0;
	padding: 5px;
	z-index: 1;
}
#bo_gall .gall_box {
	position: relative;
	margin: 0 0 50px 0;
	border-radius: 0 0 2px 2px;
}
#bo_gall .gall_con {
	position: relative;
}

.gall_row .col-gn-0,
.gall_row .col-gn-1,
.gall_row .col-gn-2,
.gall_row .col-gn-3,
.gall_row .col-gn-4,
.gall_row .col-gn-5,
.gall_row .col-gn-6,
.gall_row .col-gn-7,
.gall_row .col-gn-8,
.gall_row .col-gn-9,
.gall_row .col-gn-10 {
	position: relative;
	min-height: 1px;
	padding-left: 10px;
	padding-left: 0;
	padding-right: 10px;
	padding-right: 0;
	float: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-left: 0;
}
.gall_row .col-gn-0,
.gall_row .col-gn-1 {
	width: 100%;
}
.gall_row .col-gn-2 {
	width: 50%;
}
.gall_row .col-gn-3 {
	width: 33.33333333%;
}
.gall_row .col-gn-4 {
	width: 25%;
}
.gall_row .col-gn-5 {
	width: 20%;
}
.gall_row .col-gn-6 {
	width: 16.66666667%;
}
.gall_row .col-gn-7 {
	width: 14.28571428%;
}
.gall_row .col-gn-8 {
	width: 12.5%;
}
.gall_row .col-gn-9 {
	width: 11.11111111%;
}
.gall_row .col-gn-10 {
	width: 10%;
}

.gall_row .box_clear {
	clear: both;
}

#bo_gall .gall_now .gall_text_href a {
	color: #ff3061;
}

#bo_gall .gall_href a:link,
#bo_gall .gall_href a:focus,
#bo_gall .gall_href a:hover {
	text-decoration: none;
}
#bo_gall .gall_img {
	border-bottom: 1px solid #eee;
	text-align: center;
	overflow: hidden;
}
#bo_gall .gall_img a,
#bo_gall .gall_img .no_image,
#bo_gall .gall_img .is_notice {
	display: block;
}
#bo_gall .gall_img img {
	max-width: 100%;
	/*height: auto !important;*/
}
#bo_gall .gall_img video {
	max-width: 100%;
	height: auto !important;
}
#bo_gall .gall_img span {
	display: inline-block;
	background: #eaeaea;
	text-align: center;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 1.25em;
	color: #444;
}

#bo_gall .gall_text_href {
	margin: 10px 0;
}
#bo_gall .gall_text_href a {
	font-weight: bold;
}
#bo_gall .gall_text_href img {
	margin: 0 0 0 4px;
}
#bo_gall .bo_tit {
	display: block;
	line-height: 30px;
	font-weight: bold;
	color: #222;
	font-size: 1.2em;
}
#bo_gall .bo_tit .cnt_cmt {
	background: #e9eff5;
	color: #3a8afd;
	font-size: 11px;
	height: 16px;
	line-height: 16px;
	padding: 0 5px;
	border-radius: 3px;
	vertical-align: middle;
}

#bo_gall .bo_cnt {
	color: #acacac;
	line-height: 18px;
}
#bo_gall .profile_img img {
	border-radius: 50%;
}
#bo_gall .bo_tit .fa-download {
	width: 16px;
	height: 16px;
	line-height: 16px;
	background: #192d60;
	color: #fff;
	text-align: center;
	font-size: 10px;
	border-radius: 2px;
	margin-right: 2px;
	vertical-align: middle;
}
#bo_gall .bo_tit .fa-link {
	width: 16px;
	height: 16px;
	line-height: 16px;
	background: #192d60;
	color: #fff;
	text-align: center;
	font-size: 10px;
	border-radius: 2px;
	margin-right: 2px;
	vertical-align: middle;
	font-weight: normal;
}
#bo_gall .bo_tit .fa-link {
	width: 16px;
	height: 16px;
	line-height: 16px;
	background: #192d60;
	color: #fff;
	text-align: center;
	font-size: 10px;
	border-radius: 2px;
	margin-right: 2px;
	vertical-align: middle;
	margin-right: 2px;
}
#bo_gall .bo_tit .new_icon {
	display: inline-block;
	width: 16px;
	line-height: 16px;
	font-size: 0.825em;
	color: #fff;
	background: #192d60;
	text-align: center;
	border-radius: 2px;
	margin-left: 2px;
	font-weight: bold;
	vertical-align: baseline;
}
#bo_gall .bo_tit .hot_icon {
	display: inline-block;
	width: 16px;
	line-height: 16px;
	font-size: 0.833em;
	color: #fff;
	background: #4d0314;
	text-align: center;
	border-radius: 2px;
	vertical-align: middle;
	margin-right: 2px;
}
#bo_gall .bo_tit .fa-lock {
	display: inline-block;
	line-height: 16px;
	color: #555;
	text-align: center;
	vertical-align: middle;
}

#bo_gall .gall_info {
	line-height: 1.5em;
	line-height: 20px;
}
#bo_gall .gall_info strong {
	display: inline-block;
	margin: 0;
}
#bo_gall .gall_info i {
	font-size: 12px;
}
#bo_gall .gall_info .gall_date,
#bo_gall .gall_info .gall_view {
	display: inline-block;
	margin-left: 10px;
	color: #444;
}

#bo_gall .gall_option {
	position: absolute;
	top: 10px;
	right: 10px;
}
#bo_gall .gall_option strong {
	background: #fff;
	padding: 5px 10px;
	border-radius: 30px;
	-webkit-box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2);
}

/* 게시판 목록 공통 */
#bo_btn_top {
	margin: 10px 0;
}
#bo_btn_top:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
.bo_fx {
	margin-bottom: 5px;
	float: right;
	zoom: 1;
}
.bo_fx:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
.bo_fx ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
#bo_list_total {
	float: left;
	line-height: 34px;
	font-size: 0.92em;
	color: #4e546f;
}
/*
.btn_bo_user {
	float: right;
	margin: 0;
	padding: 0;
	list-style: none;
}
.btn_bo_user li {
	float: left;
	width: 40px;
	text-align: center;
	margin-left: 5px;
	background: #fff;
}
.btn_bo_user > li {
	position: relative;
}
*/

.btn_bo_adm {
	float: left;
}
.btn_bo_adm li {
	float: left;
	margin-right: 5px;
}
.btn_bo_adm input {
	padding: 0 8px;
	border: 0;
	background: #d4d4d4;
	color: #444;
	text-decoration: none;
	vertical-align: middle;
}
.bo_notice td {
	background: #fff6fa !important;
	border-bottom: 1px solid #f8e6ee;
}
.bo_notice td a {
	font-weight: bold;
}
.bo_notice .notice_icon {
	display: inline-block;
	line-height: 25px;
	border-radius: 5px;
	font-weight: bold;
	color: #f9267f;
}

.more_opt {
	display: none;
	position: absolute;
	top: 45px;
	right: 0;
	background: #fff;
	border: 1px solid #b8bfc4;
	z-index: 999;
	width: max-content;
}
.more_opt:before {
	content: "";
	position: absolute;
	top: -8px;
	right: 13px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 6px 8px 6px;
	border-color: transparent transparent #b8bfc4 transparent;
}
.more_opt:after {
	content: "";
	position: absolute;
	top: -6px;
	right: 13px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 6px 8px 6px;
	border-color: transparent transparent #fff transparent;
}
.more_opt li {
	border-bottom: 1px solid #f1f1f1;
	padding: 10px;
	float: inherit;
	width: 90px;
	margin: 0;
	color: #6b757c;
	text-align: left;
}
.more_opt li:last-child {
	border-bottom: 0;
}
.more_opt li button,
.more_opt li a {
	width: 100%;
	border: 0;
	background: #fff;
	color: #6b757c;
}
.more_opt li:hover a,
.more_opt li:hover button {
	color: #222;
}
.more_opt li i {
	float: right;
	line-height: 20px;
}

.td_num strong {
	color: #222;
}
.bo_cate_link {
	display: inline-block;
	background: #e2eaf6;
	color: #3a8afd;
	font-weight: normal !important;
	height: 20px;
	line-height: 10px;
	padding: 5px 8px;
	border-radius: 5px;
	font-size: 0.95em;
} /* 글제목줄 분류스타일 */
.bo_cate_link:hover {
	text-decoration: none;
}
.bo_current {
	color: #e8180c;
}
#bo_list .profile_img {
	display: inline-block;
	margin-right: 5px;
}
#bo_list .profile_img img {
	border-radius: 50%;
}
#bo_list .cnt_cmt {
	display: inline-block;
	margin: 0 0 0 3px;
	font-weight: bold;
	color: #ed6478;
	font-size: 0.86em;
}

#bo_gall li.empty_list {
	padding: 85px 0;
	text-align: center;
}

.bo_sch_wrap {
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
}
.bo_sch {
	position: absolute;
	top: 50%;
	left: 50%;
	background: #fff;
	text-align: left;
	width: 330px;
	max-height: 300px;
	margin-left: -125px;
	margin-top: -180px;
	overflow-y: auto;
	border-radius: 5px;
	-webkit-box-shadow: 1px 1px 18px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 1px 1px 18px rgba(0, 0, 0, 0.2);
	box-shadow: 1px 1px 18px rgba(0, 0, 0, 0.2);
	border: 1px solid #dde7e9;
	background: #fff;
	border-radius: 3px;
}
.bo_sch:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
.bo_sch h3 {
	padding: 15px;
	border-bottom: 1px solid #e8e8e8;
}
.bo_sch legend {
	background: red;
}
.bo_sch form {
	padding: 15px;
	display: block;
}
.bo_sch select {
	border: 0;
	width: 100%;
	height: 40px;
	border: 1px solid #d0d3db;
	border-radius: 2px;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.bo_sch .sch_bar {
	display: inline-block;
	width: 100%;
	clear: both;
	margin-top: 15px;
	border: 1px solid #d0d3db;
	border-radius: 2px;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.bo_sch .sch_input {
	width: 250px;
	height: 38px;
	border: 0;
	padding: 0;
	background-color: transparent;
	float: left;
}
.bo_sch .sch_btn {
	height: 38px;
	float: right;
	color: #656565;
	background: none;
	border: 0;
	width: 40px;
	font-size: 15px;
}
.bo_sch .bo_sch_cls {
	position: absolute;
	right: 0;
	top: 0;
	color: #b5b8bb;
	border: 0;
	padding: 12px 15px;
	font-size: 16px;
	background: #fff;
}
.bo_sch_bg {
	background: #222;
	background: rgba(0, 0, 0, 0.1);
	width: 100%;
	height: 100%;
}

/* 게시판 쓰기 */
#char_count_desc {
	display: block;
	margin: 0 0 5px;
	padding: 0;
}
#char_count_wrap {
	margin: 5px 0 0;
	text-align: right;
}
#char_count {
	font-weight: bold;
}

#autosave_wrapper {
	position: relative;
}
#autosave_pop {
	display: none;
	z-index: 10;
	position: absolute !important;
	top: 34px;
	right: 0;
	width: 350px;
	height: auto !important;
	height: 180px;
	max-height: 180px;
	border: 1px solid #565656;
	background: #fff;
	-webkit-box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2);
}
#autosave_pop:before {
	content: "";
	position: absolute;
	top: -8px;
	right: 45px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 6px 8px 6px;
	border-color: transparent transparent #222 transparent;
}
#autosave_pop:after {
	content: "";
	position: absolute;
	top: -7px;
	right: 45px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 6px 8px 6px;
	border-color: transparent transparent #fff transparent;
}
html.no-overflowscrolling #autosave_pop {
	height: auto;
	max-height: 10000px !important;
} /* overflow 미지원 기기 대응 */
#autosave_pop strong {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}
#autosave_pop div {
	text-align: center;
	margin: 0 !important;
}
#autosave_pop button {
	margin: 0;
	padding: 0;
	border: 0;
}
#autosave_pop ul {
	padding: 15px;
	border-top: 1px solid #e9e9e9;
	list-style: none;
	overflow-y: scroll;
	height: 130px;
	border-bottom: 1px solid #e8e8e8;
}
#autosave_pop li {
	padding: 8px 5px;
	border-bottom: 1px solid #fff;
	background: #eee;
	zoom: 1;
}
#autosave_pop li:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#autosave_pop a {
	display: block;
	float: left;
}
#autosave_pop span {
	display: block;
	float: right;
	font-size: 0.92em;
	font-style: italic;
	color: #444;
}
.autosave_close {
	cursor: pointer;
	width: 100%;
	height: 30px;
	background: none;
	color: #444;
	font-weight: bold;
	font-size: 0.92em;
}
.autosave_close:hover {
	background: #f3f3f3;
	color: #3597d9;
}
.autosave_content {
	display: none;
}
.autosave_del {
	background: url(./img/close_btn.png) no-repeat 50% 50%;
	text-indent: -999px;
	overflow: hidden;
	height: 20px;
	width: 20px;
}

/* 게시판 읽기 */
#bo_v {
	margin-bottom: 20px;
	background: #fff;
	box-sizing: border-box;
	padding: 20px;
}

#bo_v_table {
	position: absolute;
	top: 0;
	right: 16px;
	margin: 0;
	padding: 0 5px;
	height: 25px;
	background: #ff3061;
	color: #fff;
	font-weight: bold;
	line-height: 2.2em;
}

#bo_v_title {
}
#bo_v_title .bo_v_cate {
	display: inline-block;
	line-height: 20px;
	background: #e2eaf6;
	color: #3a8afd;
	padding: 0 10px;
	border-radius: 3px;
}
#bo_v_title .bo_v_tit {
	display: block;
	font-size: 2em;
	margin: 5px 0 0;
	word-break: break-all;
}

#bo_v_info {
	margin: 0;
	border-bottom: 1px solid #f1f1f1;
	color: #444;
}
#bo_v_info:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#bo_v_info h2,
#bo_v_info h4 {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}

#bo_v_info .profile_info {
	margin: 20px 0 10px;
	display: inline-block;
	float: left;
}
#bo_v_info .profile_info .pf_img {
	float: left;
	margin-right: 10px;
}
#bo_v_info .profile_info .pf_img img {
	border-radius: 50%;
	width: 50px;
	height: 50px;
}
#bo_v_info .profile_info .profile_info_ct {
	float: left;
	padding: 5px 0;
	line-height: 18px;
}

#bo_v_info strong {
	display: inline-block;
	margin: 0 10px 0 0;
	font-weight: normal;
}
#bo_v_info .sv_member,
#bo_v_info .sv_guest,
#bo_v_info .member,
#bo_v_info .guest {
	font-weight: bold;
}
#bo_v_info .profile_img {
	display: none;
}
#bo_v_info .sv_member {
	color: #222;
}
#bo_v_info .if_date {
	margin: 0;
	color: #444;
}

#bo_v_file h2,
#bo_v_file h4 {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}
#bo_v_file ul {
	margin: 0;
	list-style: none;
}
#bo_v_file li {
	padding: 15px;
	position: relative;
	margin: 10px 0;
	border: 1px solid #dfdfdf;
	border-radius: 5px;
	-webkit-box-shadow: 1px 1px 5px 0px hsl(232, 36%, 96%);
	-moz-box-shadow: 1px 1px 5px 0px hsl(232, 36%, 96%);
	box-shadow: 1px 1px 5px 0px hsl(232, 36%, 96%);
}
#bo_v_file li i {
	float: left;
	color: #b2b2b2;
	font-size: 2.35em;
	margin-right: 20px;
}
#bo_v_file a {
	float: left;
	display: block;
	text-decoration: none;
	word-wrap: break-word;
	color: #222;
}
#bo_v_file a:focus,
#bo_v_file li:hover a,
#bo_v_file a:active {
	text-decoration: underline;
	color: #3a8afd;
}
#bo_v_file img {
	float: left;
	margin: 0 10px 0 0;
}
#bo_v_file .bo_v_file_cnt {
	color: #b2b2b2;
	font-size: 0.92em;
}
#bo_v_file li:hover {
	border-color: #bed4f4;
	color: #bed4f4;
}
#bo_v_file li:hover i {
	color: #3a8afd;
}
#bo_v_file li:hover .bo_v_file_cnt {
	color: #99c2fc;
}

#bo_v_link h2,
#bo_v_link h4 {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}
#bo_v_file ul {
	margin: 0;
	list-style: none;
}
#bo_v_link li {
	padding: 15px;
	position: relative;
	margin: 10px 0;
	border: 1px solid #dfdfdf;
	border-radius: 5px;
	-webkit-box-shadow: 1px 1px 5px 0px hsl(232, 36%, 96%);
	-moz-box-shadow: 1px 1px 5px 0px hsl(232, 36%, 96%);
	box-shadow: 1px 1px 5px 0px hsl(232, 36%, 96%);
}
#bo_v_link li i {
	float: left;
	color: #b2b2b2;
	font-size: 2.35em;
	margin-right: 20px;
}
#bo_v_link a {
	float: left;
	display: block;
	text-decoration: none;
	word-wrap: break-word;
	color: #222;
}
#bo_v_link a:focus,
#bo_v_link li:hover a,
#bo_v_link a:active {
	text-decoration: underline;
	color: #3a8afd;
}
#bo_v_link .bo_v_link_cnt {
	color: #b2b2b2;
	font-size: 0.92em;
}
#bo_v_link li:hover {
	border-color: #bed4f4;
	color: #bed4f4;
}
#bo_v_link li:hover i {
	color: #3a8afd;
}
#bo_v_link li:hover .bo_v_link_cnt {
	color: #99c2fc;
}

#bo_v_top {
	display: flex;
	justify-content: space-between;
	zoom: 1;
	margin: 10px 0;
}
/* #bo_v_top:after {display:block;visibility:hidden;clear:both;content:""} */
#bo_v_top h2,
#bo_v_top h4 {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}
#bo_v_top ul {
	padding: 0;
	list-style: none;
	word-break: break-all;
}
#bo_v_top ul li {
	display: inline-block;
}

#bo_v_bot {
	zoom: 1;
}
#bo_v_bot:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#bo_v_bot h2,
#bo_v_bot h4 {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}
#bo_v_bot ul {
	padding: 0;
	list-style: none;
}

.bo_v_com {
}
.bo_v_com > li {
	position: relative;
}

.bo_v_nb {
	margin: 20px 0;
	position: relative;
	clear: both;
	text-align: left;
}
.bo_v_nb:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
.bo_v_nb li {
	border-top: 1px solid #f1f1f1;
	padding: 13px;
}
.bo_v_nb li:last-child {
	border-bottom: 1px solid #f1f1f1;
}
.bo_v_nb li:hover {
	background: #f6f6f6;
}
.bo_v_nb li i {
	font-size: 13px;
	color: #b3b3b3;
}
.bo_v_nb li .nb_tit {
	display: inline-block;
	padding-right: 20px;
	color: #b3b3b3;
}
.bo_v_nb li .nb_date {
	float: right;
	color: #b3b3b3;
}

#bo_v_atc {
	min-height: 200px;
	height: auto !important;
	height: 200px;
}
#bo_v_atc_title {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}

#bo_v_img {
	width: 100%;
	overflow: hidden;
	zoom: 1;
}
#bo_v_img:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#bo_v_img a.view_image {
	display: block;
}
#bo_v_img img {
	margin-bottom: 20px;
	max-width: 100%;
	height: auto;
}

#bo_v_con {
	margin: 10px 0 30px;
	width: 100%;
	line-height: 1.7em;
	min-height: 200px;
	word-break: break-all;
	overflow: hidden;
}
#bo_v_con a {
	color: #222;
	text-decoration: underline;
}
#bo_v_con img {
	max-width: 100%;
	height: auto;
}

#bo_v_act {
	margin-bottom: 30px;
	text-align: center;
}
#bo_v_act .bo_v_act_gng {
	position: relative;
}
#bo_v_act a {
	margin-right: 5px;
	vertical-align: middle;
	color: #4a5158;
}
#bo_v_act a:hover {
	background-color: #fff;
	color: #ff484f;
	border-color: #ff484f;
}
#bo_v_act i {
	font-size: 1.4em;
	margin-right: 5px;
}
#bo_v_act_good,
#bo_v_act_nogood {
	display: none;
	position: absolute;
	top: 30px;
	left: 0;
	z-index: 9999;
	padding: 10px 0;
	width: 165px;
	background: #ff3061;
	color: #fff;
	text-align: center;
}
#bo_v_act .bo_v_good {
	display: inline-block;
	border: 1px solid #dedede;
	width: 70px;
	line-height: 46px;
	border-radius: 30px;
}
#bo_v_act .bo_v_nogood {
	display: inline-block;
	border: 1px solid #dedede;
	width: 70px;
	line-height: 46px;
	border-radius: 30px;
}

#bo_v_sns {
	padding: 0;
	list-style: none;
	zoom: 1;
	float: left;
	display: inline-block;
}
#bo_v_sns:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#bo_v_sns li {
	float: left;
	width: 135px;
	margin-right: 5px;
	text-align: left;
}
#bo_v_sns li a {
	height: 35px;
	line-height: 35px;
	text-align: center;
	border-radius: 5px;
	color: #fff;
	font-size: 0.95em;
}
#bo_v_sns li img {
	vertical-align: middle;
	margin-right: 5px;
}
#bo_v_sns li .sns_f {
	display: block;
	background: #3b5997;
}
#bo_v_sns li .sns_t {
	display: block;
	background: #09aeee;
}
#bo_v_sns li .sns_g {
	display: block;
	background: #ea4026;
}
#bo_v_sns li .sns_k {
	display: block;
	background: #fbe300;
}

#bo_v_share {
	position: relative;
	padding: 20px 0;
}
#bo_v_share:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#bo_v_share .btn {
	padding: 0 10px;
	color: #555;
	font-weight: normal;
	font-size: 1em;
	width: 80px;
	line-height: 35px;
	height: 35px;
	border-color: #d5d5d5;
	border-radius: 5px;
}
#bo_v_share .btn:hover {
	background: #fff;
}
#bo_v_share .btn i {
	margin-right: 5px;
	color: #4b5259;
	vertical-align: middle;
}

/* 게시판 댓글 */
.cmt_btn {
	width: 100%;
	text-align: left;
	border: 0;
	border-bottom: 1px solid #f0f0f0;
	background: #fff;
	font-weight: bold;
	margin: 30px 0 0px;
	padding: 0 0 15px;
}
.cmt_btn span.total {
	position: relative;
	display: inline-block;
	margin-right: 5px;
	font-size: 1em;
	color: #3a8afd;
}
.cmt_btn span.cmt_more {
	float: right;
	display: inline-block;
	width: 15px;
	height: 10px;
	background: url(./img/btn_cmt.png) no-repeat right 2px;
	margin-top: 5px;
}
.cmt_btn_op span.cmt_more {
	background-position: right -8px;
}
.cmt_btn b {
	font-size: 1.2em;
	color: #222;
}
.cmt_btn span.total:after {
	position: absolute;
	bottom: -17px;
	left: 0;
	display: inline-block;
	background: #3a8afd;
	content: "";
	width: 100%;
	height: 2px;
}
#bo_vc {
}
#bo_vc h2 {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}
#bo_vc article {
	margin: 20px 0;
	position: relative;
	border-bottom: 1px solid #f0f0f0;
}
#bo_vc article:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#bo_vc article .profile_img img {
	border-radius: 50%;
}
#bo_vc article .pf_img {
	float: left;
	margin-right: 10px;
}
#bo_vc article .pf_img img {
	border-radius: 50%;
	width: 50px;
	height: 50px;
}
#bo_vc article .cm_wrap {
	float: left;
	max-width: 870px;
	width: 90%;
}
#bo_vc header {
	position: relative;
	width: 100%;
}
#bo_vc header:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#bo_vc header .profile_img {
	display: none;
}
#bo_vc header .icon_reply {
	position: absolute;
	top: 15px;
	left: -20px;
}
#bo_vc .member,
#bo_vc .guest,
#bo_vc .sv_member,
#bo_vc .sv_guest {
	font-weight: bold;
}
.bo_vc_hdinfo {
	color: #444;
}
#bo_vc h1 {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}
#bo_vc .cmt_contents {
	line-height: 1.8em;
	padding: 0 0 20px;
}
#bo_vc p a {
	text-decoration: underline;
}
#bo_vc p a.s_cmt {
	text-decoration: underline;
	color: #ed6479;
}
#bo_vc_empty {
	margin: 0;
	padding: 80px 0 !important;
	color: #444;
	text-align: center;
}
#bo_vc #bo_vc_winfo {
	float: left;
}
#bo_vc .bo_vl_opt {
	position: absolute;
	top: 0;
	right: 0;
}

.bo_vc_act {
	display: none;
	position: absolute;
	right: 0;
	top: 40px;
	width: 58px;
	text-align: right;
	border: 1px solid #b8bfc4;
	margin: 0;
	list-style: none;
	background: #fff;
	zoom: 1;
	z-index: 9999;
}
.bo_vc_act:before {
	content: "";
	position: absolute;
	top: -8px;
	right: 5px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 6px 8px 6px;
	border-color: transparent transparent #b8bfc4 transparent;
}
.bo_vc_act:after {
	content: "";
	position: absolute;
	top: -6px;
	right: 5px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 6px 8px 6px;
	border-color: transparent transparent #fff transparent;
}
.bo_vc_act li {
	border-bottom: 1px solid #f0f0f0;
}
.bo_vc_act li:last-child {
	border-bottom: 0;
}
.bo_vc_act li a {
	display: inline-block;
	padding: 10px 15px;
}
.bo_vc_act li a:hover {
	color: #3a8afd;
}

.bo_vc_w {
	position: relative;
	margin: 10px 0;
	display: block;
}
.bo_vc_w:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
.bo_vc_w h2 {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
}
.bo_vc_w #char_cnt {
	display: block;
	margin: 0 0 5px;
}
.bo_vc_w textarea {
	border: 1px solid #ccc;
	background: #fff;
	color: #222;
	vertical-align: middle;
	border-radius: 3px;
	padding: 5px;
	width: 100%;
	height: 120px;
	-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
	-moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}
#wr_secret {
}
.bo_vc_w_info {
	margin: 10px 0;
	float: left;
}
.bo_vc_w_info:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
.bo_vc_w_info .frm_input {
	float: left;
	margin-right: 5px;
}
.bo_vc_w_info #captcha {
	padding-top: 10px;
	display: block;
	clear: both;
}
.bo_vc_w .btn_confirm {
	clear: both;
	margin-top: 10px;
}
.bo_vc_w .btn_confirm label {
	display: inline-block;
	margin-right: 10px;
	border-radius: 3px;
	font-size: 1.5em;
	text-align: center;
}
.bo_vc_w .btn_submit {
	height: 45px;
	padding: 0 20px;
	border-radius: 3px;
	font-weight: bold;
	font-size: 1.083em;
}
.bo_vc_w .btn_confirm .secret_cm label {
	font-size: 1em !important;
}
.bo_vc_w_wr:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
.secret_cm {
	display: inline-block;
	float: left;
}

#bo_vc_send_sns {
	display: inline-block;
	float: left;
}
#bo_vc_sns {
	display: inline-block;
	margin: 0;
	padding: 0;
	list-style: none;
	zoom: 1;
}
#bo_vc_sns:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#bo_vc_sns li {
	float: left;
	margin: 0 5px 0 0;
}
#bo_vc_sns .sns_li_f {
	border-radius: 3px;
	background: #3a589b;
	height: 40px;
	line-height: 40px;
	padding: 0 0 0 10px;
}
#bo_vc_sns .sns_li_t {
	border-radius: 3px;
	background: #00aced;
	height: 40px;
	line-height: 40px;
	padding: 0 0 0 10px;
}
#bo_vc_sns .sns_li_off {
	background: #bbb;
}
#bo_vc_sns a {
	display: inline-block;
	padding: 0 15px 0 5px;
}
#bo_vc_sns input {
	margin: 0 5px 0 0;
}

/*글쓰기*/
#bo_w .bo_v_option li {
	display: inline-block;
	float: left;
	text-align: left;
	margin: 0 5px 0 0;
}
#bo_w .bo_v_option li label {
	vertical-align: baseline;
}
#bo_w .bo_v_option .chk_box input[type="checkbox"] + label span {
	margin-left: 0;
	margin-right: 5px;
}
#bo_w .write_div {
	margin: 10px 0;
	position: relative;
}
#bo_w .write_div:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#bo_w .bo_w_info:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: "";
}
#bo_w .bo_w_info .frm_input {
	float: left;
	margin-bottom: 1%;
}
#bo_w #wr_password,
#bo_w #wr_homepage {
	margin-left: 1%;
}
#bo_w .wr_content.smarteditor2 iframe {
	background: #fff;
}
#bo_w .bo_w_tit {
	position: relative;
}
#bo_w .bo_w_tit .frm_input {
	padding-right: 120px;
}
#bo_w .bo_w_tit #btn_autosave {
	position: absolute;
	top: 5px;
	right: 5px;
	line-height: 30px;
	height: 30px;
}
#bo_w .bo_w_link label {
	position: absolute;
	top: 1px;
	left: 1px;
	border-radius: 3px 0 0 3px;
	height: 38px;
	line-height: 38px;
	width: 40px;
	font-size: 1.2em;
	text-align: center;
	color: #b2b2b2;
}
#bo_w .bo_w_link .frm_input {
	padding-left: 50px;
}
#bo_w .bo_w_flie .lb_icon {
	position: absolute;
	top: 0px;
	left: 0px;
	border-radius: 3px 0 0 3px;
	height: 38px;
	line-height: 38px;
	width: 40px;
	font-size: 1.2em;
	text-align: center;
	color: #b2b2b2;
}
#bo_w .bo_w_flie .frm_file {
	padding-left: 50px;
	margin-top: 3px;
}
#bo_w .bo_w_flie .file_wr {
	position: relative;
	border: 1px solid #ccc;
	background: #fff;
	color: #222;
	vertical-align: middle;
	border-radius: 3px;
	padding: 5px;
	height: 40px;
	margin: 0;
}
#bo_w .bo_w_flie .frm_input {
	margin: 10px 0 0;
}
#bo_w .bo_w_flie .file_del {
	position: absolute;
	top: 17px;
	right: 0px;
	font-size: 0.92em;
	color: #7d7d7d;
}
#bo_w .bo_w_select select {
	border: 1px solid #d0d3db;
	width: 100%;
	height: 40px;
	border-radius: 3px;
}
#bo_w .btn_submit {
	padding: 0 20px;
	font-size: 1.167em;
}
#bo_w .btn_cancel {
	border-radius: 3px;
	font-size: 1.167em;
}

/* 게시판 커스텀 24Y */
/* 공통 */
.chk_box input[type="checkbox"]:checked + label span {
	background-color: #004f90;
	border-color: #004f90;
}
.pg_wrap {
	display: block;
	float: unset;
	text-align: center;
	width: 100%;
	margin-top: 50px;
}
.pg {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
}
.pg_page {
	min-width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border: 1px solid #ddd;
	background-color: #fff;
	border-radius: 5px;
	font-size: 0.88rem;
	font-weight: 400;
	letter-spacing: -0.8px;
}
.pg_current {
	min-width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border: 1px solid #004f90;
	background-color: #004f90;
	border-radius: 5px;
	font-size: 0.88rem;
	font-weight: 600;
	letter-spacing: -0.8px;
	color: #fff;
}
/*
.btn_bo_user li {
	width: auto;
}
.btn_bo_user li a {
	display: flex;
	align-items: center;
	gap: 3px;
}
.btn_bo_user li a span {
	font-size: 14px;
	color: #555;
}
*/
.more_opt li {
	padding: 5px;
}
.more_opt li button,
.more_opt li a {
	font-size: 0.88rem;
	letter-spacing: -0.48px;
}
.more_opt li i {
	font-size: 0.88rem;
}

/* 리스트페이지 */
/* 분류 */
#bo_cate {
	margin: 0;
	margin-bottom: 50px;
}
#bo_cate ul {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;
}
#bo_cate ul li {
	min-width: 100px;
}
#bo_cate a {
	display: block;
	font-size: 1.11em;
	font-weight: 600;
	line-height: normal;
	letter-spacing: -0.6px;
	color: #004f90;
	padding: 10px;
	text-align: center;
	border-radius: 10px;
	border: 1px solid #ddd;
}
#bo_cate #bo_cate_on {
	background: none;
	background-color: #004f90;
	font-weight: 700;
	color: #fff;
	box-shadow: none;
	border: 1px solid #ddd;
}
#bo_cate a:focus,
#bo_cate a:hover,
#bo_cate a:active {
	border-color: #004f90;
	background: unset;
	color: #004f90;
}

/* 검색바 */
#bo_gall .seach_top_wrap .bo_sch {
	position: unset;
	margin: 0;
	width: auto;
	height: auto;
	background: unset;
	border: none;
	box-shadow: none;
	border-radius: 0;
}
.bo_sch form {
	padding: 0;
}
#bo_gall {
}
#bo_gall .seach_top_wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#bo_gall .seach_top_wrap #bo_list_total p {
	font-size: 1em;
	font-weight: 500;
	letter-spacing: -0.54px;
}
#bo_gall .seach_top_wrap .bo_list_sch_box {
	display: flex;
	align-items: center;
}
#bo_gall .seach_top_wrap .bo_list_sch_box .sch_bar {
	border: none;
	padding-left: 30px;
	padding-right: 30px;
	flex: 1;
	margin-top: 0;
	box-shadow: none;
	background-color: #f4f4f4;
	border-radius: 20px;
	margin-right: -5px;
}
#bo_gall .seach_top_wrap .bo_list_sch_box .sch_input {
	background-color: unset;
	border: none;
	height: 50px;
	font-size: 1em;
	color: #444;
	width: 100%;
}
#bo_gall .seach_top_wrap .bo_list_sch_box .sch_input::placeholder {
	color: #444;
}
#bo_gall .seach_top_wrap .bo_list_sch_box .sch_btn {
	width: 68px;
	height: 50px;
	border: none;
	background-color: #004f90;
	border-radius: 20px;
	color: #fff;
	font-size: 0.88em;
	font-weight: 600;
	letter-spacing: -0.48px;
}

#bo_gall .board_list_table {
	margin-top: 30px;
}

#fboardlist {
	margin-top: 50px;
}
/* 갤러리 리스트 */
#bo_gall #gall_ul {
	margin: 0;
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 50px 40px;
}
#bo_gall #gall_ul:after {
	display: none;
}
#bo_gall .gall_li {
	padding: 0;
}
#bo_gall .gall_box {
	margin-bottom: 0;
	padding: 0;
}
#bo_gall .gall_box:hover {
	border-color: #004f90;
}
.gall_row .col-gn-0,
.gall_row .col-gn-1 {
	width: 100%;
	max-width: 100%;
}
.gall_row .col-gn-2 {
	width: 100%;
	max-width: calc((100% - 40px) / 2);
}
.gall_row .col-gn-3 {
	width: 100%;
	max-width: calc((100% - (40px * 2)) / 3);
}
.gall_row .col-gn-4 {
	width: 100%;
	max-width: calc((100% - (40px * 3)) / 4);
}
.gall_row .col-gn-5 {
	width: 100%;
	max-width: calc((100% - (40px * 4)) / 5);
}
.gall_row .col-gn-6 {
	width: 100%;
	max-width: calc((100% - (40px * 5)) / 4);
}
.gall_row .col-gn-7 {
	width: 100%;
	max-width: calc((100% - (40px * 6)) / 7);
}
.gall_row .col-gn-8 {
	width: 100%;
	max-width: calc((100% - (40px * 7)) / 8);
}
.gall_row .col-gn-9 {
	width: 100%;
	max-width: calc((100% - (40px * 8)) / 9);
}
.gall_row .col-gn-10 {
	width: 100%;
	max-width: calc((100% - (40px * 9)) / 10);
}
#bo_gall .gall_con {
	display: flex;
	flex-direction: column;
	align-items: center;
}
#bo_gall .gall_img {
	height: auto !important;
}
#bo_gall .gall_text_href {
	margin: 0;
	padding: 20px;
}
#bo_gall .bo_tit {
	font-size: 1rem;
	letter-spacing: -0.54px;
	line-height: normal;
	color: #333;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	height: 45px;
}
#bo_gall .gall_text_href a {
	font-weight: 400;
}
#bo_gall .gall_info {
	width: 100%;
	display: flex;
	padding: 10px 0;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	align-self: stretch;
	margin-top: 10px;
	margin-bottom: 5px;
}
#bo_gall .gall_info p {
	overflow: hidden;
	color: #222;
	font-family: Pretendard;
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: 160%;
	letter-spacing: -0.6px;

	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis; /* 말줄임 적용 */
	width: 100%;
	text-align: center;
}
#bo_gall .gall_info .gall_date,
#bo_gall .gall_info .gall_view {
	margin: 0;
	font-size: 0.88rem;
	font-weight: 400;
	letter-spacing: -0.48px;
	color: #444;
}

#bo_gall .bo_cate_link {
	background: unset;
	font-size: 0.77em;
	color: #004f90;
	font-weight: 600;
	letter-spacing: -0.42px;
	padding: 0;
}
/*
#bo_gall .btn_bo_user {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-top: 50px;
	float: unset;
}
*/
#bo_gall #bo_list_btns_wrapper .bo_list_btns {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 50px;
}

#bo_gall #bo_list_btns_wrapper .bo_list_btns > ul {
	display: flex;
	align-items: center;
	gap: 10px;
}

#bo_gall .gall_img {
	position: relative;
	border: 1px solid #d6dde6;
	border-radius: 5px;
	overflow: hidden;
	aspect-ratio: 375/520;
	align-self: stretch;
}
#bo_gall .gall_img > a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}
#bo_gall .gall_img > a > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
#bo_gall .gall_img .is_notice {
	display: flex;
	padding: 5px 10px;
	justify-content: center;
	align-items: center;
	border-radius: 20px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	background: #4c286d;
	color: #fff;
	font-family: Pretendard;
	font-size: 0.889rem;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	position: absolute;
	left: 20px;
	top: 20px;
}

/* 이북커스텀 */
#bo_gall .gall_img .ebook_option_btns {
	background-color: #f9f9f9;
	border: 1px solid #ddd;
	border-radius: 30px;
	padding: 20px;
	display: flex;
	align-items: center;
	position: absolute;
	left: 0;
	bottom: -20px;
	width: 100%;
}
#bo_gall .gall_img .ebook_option_btns a {
	display: flex;
	align-items: center;
	gap: 5px;
	flex: 1;
	justify-content: center;
	font-size: 1.11em;
	letter-spacing: -0.6px;
	font-weight: 400;
	border-right: 1px solid #ddd;
}
#bo_gall .gall_img .ebook_option_btns a:last-child {
	border-right: 0;
}

/* 뉴스레터 커스텀 */
#bo_gall .gall_con .newsletter_direct {
	display: flex;
	width: 220px;
	padding: 8px 20px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	border-radius: 30px;
	border: 1px solid #ddd;
	background: #f9f9f9;

	color: #222;
	text-align: center;
	font-family: Pretendard;
	font-size: 1rem;
	font-weight: 700;
	line-height: 161.111%;
	letter-spacing: -0.8px;
}
#bo_gall .gall_con .newsletter_direct::after {
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	aspect-ratio: 1/1;
	flex-shrink: 0;
	background: url("./img/newsletter_direct.svg") center no-repeat;
	transition: background 0.3s;
}
#bo_gall .gall_con:hover .gall_img,
#bo_gall .gall_con:hover .newsletter_direct {
	box-shadow: 0px 5px 10px 5px rgba(49, 84, 114, 0.2);
	transition: all 0.3s;
}
#bo_gall .gall_con:hover .newsletter_direct {
	border: 1px solid #fff;
	background: #223769;
	color: #fff;
}
#bo_gall .gall_con:hover .newsletter_direct::after {
	background: url("./img/newsletter_direct_on.svg") center no-repeat;
}

/*버튼 커스텀*/
.bo_btn_user {
	display: flex;
	align-items: center;
	gap: 10px;
}

.btn_admin {
	background: #f9f9f9 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 3px;
	color: #555 !important;
	border: 1px solid #aaa;
	padding: 5px 15px;
	border-radius: 5px;
	font-size: 0.83rem;
	font-weight: 500;
	height: 31px;
	min-width: 35px;
	line-height: 1;
}

.btn_useer {
	background: #555 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 3px;
	color: #fff !important;
	border: 1px solid #ddd;
	padding: 5px 15px;
	border-radius: 5px;
	font-size: 0.83rem;
	font-weight: 500;
	height: 31px;
	min-width: 35px;
	line-height: 1;
}

/* 뷰페이지 */
#bo_v_title {
	display: flex;
	align-items: flex-end;
	padding-top: 20px;
	padding-left: 10px;
	padding-bottom: 20px;
	padding-right: 10px;
	border-top: 2px solid #004f90;
	border-bottom: 1px solid #ddd;
}
#bo_v_title .bo_v_cate {
	display: inline-block;
	padding: 5px 10px;
	line-height: 20px;
	font-size: 13px;
	color: #004f90;
	border: 1px solid #004f90;
	margin-right: 20px;
	background: none;
}
#bo_v_title .bo_v_tit {
	display: block;
	/* white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;  말줄임 적용 */
	word-break: break-all;
	font-size: 1.44rem;
	font-weight: 600;
	letter-spacing: -0.78px;
}
#bo_v_info {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 10px;
}
#bo_v_info .profile_info {
	flex: 1;
	margin: 0;
}
#bo_v_info .profile_info .profile_info_ct {
	display: flex;
	padding: 0;
	margin: 0;
	line-height: normal;
	gap: 21px;
}
#bo_v_info .profile_info .profile_info_ct p {
	color: #444;
	font-size: 0.88rem;
	font-weight: 400;
	letter-spacing: -0.48px;
	position: relative;
}
#bo_v_info .profile_info .profile_info_ct p::after {
	content: "";
	width: 1px;
	height: 16px;
	background-color: #ddd;
	position: absolute;
	right: -11px;
	top: 50%;
	transform: translateY(-50%);
}
#bo_v_info .profile_info .profile_info_ct p:last-child::after {
	display: none;
}
#bo_v_info .sv_member {
	color: #444;
	color: #444;
	font-size: 0.88rem;
	font-weight: 400;
	letter-spacing: -0.48px;
}
#bo_v_info .profile_info .profile_info_ct .info_hit span {
	font-weight: 700;
}

/*
#bo_v_top ul {
	margin: 0;
}
#bo_v_top ul li .btn_b01 {
	height: 25px;
	line-height: 25px;
	padding: 0;
}
*/

.bo_v_nb li:last-child {
	border-bottom: 1px solid #d7d7d7;
}

.bo_v_nb li {
	border-top: 1px solid #d7d7d7;
	padding: 20px 40px;
}

#bo_v_atc {
	min-height: 200px;
	height: auto !important;
	padding: 20px 0px 0px 20px;
}

#bo_v_share {
	position: relative;
	padding: 20px 0;
	float: right;
}

#bo_v_share .btn {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #555;
	font-weight: normal;
	font-size: 0.88rem;
	width: 100px;
	line-height: 35px;
	height: 35px;
	border-color: #d5d5d5;
	border-radius: 5px;
	border: 1px solid #ccc;
}
#bo_v_file {
	padding: 0 10px;
	background-color: #f8f8f8;
	border-bottom: 1px solid #ddd;
	border-top: 1px solid #ddd;
}
#bo_v_file li {
	margin: 0;
	padding: 20px 0;
	border: none;
	display: flex;
	align-items: center;
	gap: 10px;
	border-bottom: 1px dashed #ddd;
	box-shadow: none;
}
#bo_v_file li:last-child {
	border-bottom: none;
}
#bo_v_file img {
	float: none;
	margin: 0;
}
#bo_v_file a {
	float: none;
	color: #555;
	font-size: 0.88rem;
	font-weight: 400;
	letter-spacing: -0.48px;
}
#bo_v_file a:focus,
#bo_v_file li:hover a,
#bo_v_file a:active {
	color: #004f90;
}
#bo_v_file + #bo_v_link {
	border-top: none;
}
#bo_v_link {
	padding: 0 10px;
	background-color: #f8f8f8;
	border-bottom: 1px solid #ddd;
	border-top: 1px solid #ddd;
}
#bo_v_link li {
	margin: 0;
	padding: 20px 0;
	border: none;
	display: flex;
	align-items: center;
	gap: 10px;
	border-bottom: 1px dashed #ddd;
	box-shadow: none;
}
#bo_v_link li:last-child {
	border-bottom: none;
}
#bo_v_link img {
	float: none;
	margin: 0;
}
#bo_v_link a {
	float: none;
	color: #555;
	font-size: 0.88rem;
	font-weight: 400;
	letter-spacing: -0.48px;
}
#bo_v_link a:focus,
#bo_v_link li:hover a,
#bo_v_link a:active {
	color: #004f90;
}

.bo_v_nb {
	display: flex;
	flex-direction: column;
}
.bo_v_nb li {
	padding: 0;
	display: flex;
	align-items: center;
}
.bo_v_nb li:hover {
	background-color: #fdfce3;
}
.bo_v_nb li .nb_tit {
	display: block;
	width: 120px;
	padding: 20px;
	background-color: #f8f8f8;
	color: #555;
	font-size: 0.88rem;
}
.bo_v_nb li i {
	color: #555;
	margin-right: 5px;
}
.bo_v_nb li > a {
	flex: 1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis; /* 말줄임 적용 */
	padding: 0 20px;
	font-size: 0.88rem;
	font-weight: 400;
	color: #555;
	letter-spacing: -0.48px;
}
.bo_v_nb li .nb_date {
	float: none;
	font-size: 0.88rem;
	font-weight: 400;
	letter-spacing: -0.48px;
	color: #555;
}

/* 뷰페이지 댓글 */
.cmt_btn {
	margin-top: 50px;
	padding-bottom: 10px;
	border-bottom: 1px solid #004f90;
}
.cmt_btn .total {
	font-size: 1.11rem;
	font-weight: 700;
	letter-spacing: -0.6px;
	color: #333;
}
.cmt_btn span.total:after {
	display: none;
}
#bo_vc {
	margin-bottom: 20px;
}
#bo_vc article {
	margin: 0;
	padding: 20px 0;
}
#bo_vc .cmt_contents {
	padding: 0;
	line-height: normal;
	margin-top: 10px;
}
#bo_vc .cmt_contents p {
	font-size: 0.88rem;
	font-weight: 400;
	letter-spacing: -0.48px;
	display: flex;
	align-items: center;
	gap: 5px;
}
.bo_vc_w {
	margin: 0;
}
#bo_vc header {
	display: flex;
	align-items: center;
	gap: 21px;
}
#bo_vc header > p {
	position: relative;
}
#bo_vc header > p::after {
	content: "";
	width: 1px;
	height: 16px;
	background-color: #ddd;
	position: absolute;
	right: -11px;
	top: 50%;
	transform: translateY(-50%);
}
#bo_vc .member,
#bo_vc .guest,
#bo_vc .sv_member,
#bo_vc .sv_guest {
	font-size: 0.88rem;
	font-weight: 700;
	letter-spacing: -0.48px;
}
#bo_vc .info_cmt {
	font-size: 0.88rem;
	font-weight: 400;
	letter-spacing: -0.48px;
}
.bo_vc_w textarea {
	border: 1px solid #ddd;
	padding: 10px;
	height: 90px;
	font-size: 0.88rem;
	font-weight: 400;
	letter-spacing: -0.48px;
	color: #444;
	font-family: "Pretendard", sans-serif;
}
.bo_vc_w .btn_confirm {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.bo_vc_w .btn_confirm .secret_cm label {
	font-size: 0.88rem !important;
}
.chk_box input[type="checkbox"] + label {
	font-weight: 500;
	letter-spacing: -0.48px;
	color: #555;
	display: flex;
	align-items: center;
	gap: 10px;
}
.write_div .chk_box input[type="checkbox"] + label span,
.bo_vc_w .chk_box input[type="checkbox"] + label span {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	position: unset;
}
.chk_box input[type="checkbox"]:checked + label span {
	background-color: #004f90;
	border-color: #004f90;
}
.bo_vc_w .btn_submit {
	border: 1px solid #ddd;
	border-radius: 5px;
	padding: 5px 20px;
	font-size: 0.88rem;
	font-weight: 500;
	letter-spacing: -0.48px;
	color: #004f90;
	background-color: #fff;
}
.bo_vc_w .btn_submit:hover {
	border-color: #004f90;
}
/* 글쓰기 페이지 */
#bo_w .bo_w_select select {
	font-size: 0.88rem;
	font-weight: 400;
	color: #555;
}
#bo_w .write_title .frm_input {
	display: block;
	padding: 20px;
	height: auto;
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: -0.54px;
	border: 1px solid #ddd;
	width: 100%;
}
#bo_w .bo_w_tit #btn_autosave {
	width: fit-content;
	font-size: 0.74rem;
	color: #444;
	letter-spacing: -0.42px;
	font-weight: 400;
	position: absolute;
	right: 20px;
	background-color: #fff;
	top: 50%;
	transform: translateY(-50%);
}
.chk_box input[type="checkbox"] + label {
	position: relative;
	padding-left: 20px;
	color: #444;
	vertical-align: baseline;
	font-weight: 500;
	font-size: 16px;
	width: fit-content;
}
#bo_w .bo_v_option .chk_box input[type="checkbox"] + label span {
	position: unset;
	margin: 0;
	margin-top: 20px;
}

.write_div .chk_box input[type="checkbox"] + label,
.bo_vc_w .chk_box input[type="checkbox"] + label {
	padding-left: 0;
}
.btn_cke_sc {
	font-size: 0.74rem;
	line-height: 23px;
}

#bo_w .bo_w_link_wrap {
	border: 1px solid #ddd;
}
#bo_w .bo_w_link_wrap .bo_w_link {
	display: flex;
	align-items: stretch;
	margin: 0;
	border-bottom: 1px solid #ddd;
}
#bo_w .bo_w_link_wrap .bo_w_link:last-child {
	border-bottom: none;
}
#bo_w .bo_w_link_wrap .bo_w_link label {
	width: 135px;
	padding: 20px;
	position: unset;
	background-color: #f8f8f8;
	font-size: 0.88rem;
	color: #555;
	height: auto;
	line-height: normal;
	font-weight: 400;
	letter-spacing: -0.48px;
	display: flex;
	align-items: center;
	gap: 5px;
}
#bo_w .bo_w_link .frm_input {
	border: none;
	height: auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0 20px;
	flex: 1;
	font-size: 0.88rem;
	font-weight: 400;
	color: #555;
	letter-spacing: -0.48px;
}

#bo_w .bo_w_flie_wrap {
	border: 1px solid #ddd;
	margin-top: 10px;
}
#bo_w .bo_w_flie_wrap .bo_w_flie {
	margin: 0;
}
#bo_w .bo_w_flie_wrap .bo_w_flie .file_wr {
	display: flex;
	align-items: stretch;
	margin: 0;
	border: none;
	border-bottom: 1px solid #ddd;
	padding: 0;
	height: auto;
}
#bo_w .bo_w_flie_wrap .bo_w_flie:last-child .file_wr {
	border-bottom: none;
}
#bo_w .bo_w_flie_wrap .bo_w_flie label {
	width: 135px;
	padding: 20px;
	position: unset;
	background-color: #f8f8f8;
	font-size: 0.88rem;
	color: #555;
	height: auto;
	line-height: normal;
	font-weight: 400;
	letter-spacing: -0.48px;
	border-radius: 0;
	display: flex;
	align-items: center;
	gap: 5px;
}
#bo_w .bo_w_flie .file_del label {
	display: inline;
	padding: 20px 10px;
	background-color: transparent;
	font-size: 0.778rem;
}
#bo_w .bo_w_flie .frm_input {
	border: none;
	height: auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#bo_w .bo_w_flie .frm_file {
	flex: 1;
	padding: 0 20px;
	line-height: 56px;
	font-size: 0.88rem;
	font-weight: 400;
	color: #555;
	letter-spacing: -0.48px;
}
/*
#bo_w .btn_confirm {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#bo_w .btn_cancel {
	display: block;
	border: 1px solid #ddd;
	border-radius: 5px;
	padding: 10px 20px;
	width: 68px;
	font-size: 0.88rem;
	font-weight: 500;
	letter-spacing: -0.48px;
	background-color: #fff;
	color: #333;
	line-height: 1;
	text-align: center;
}
#bo_w .btn_submit {
	background-color: #004f90;
	border: 1px solid #ddd;
	border-radius: 5px;
	padding: 10px 20px;
	width: fit-content;
	font-size: 0.88rem;
	font-weight: 500;
	letter-spacing: -0.48px;
	color: #fff;
	line-height: 1;
	display: block;
	margin-left: auto;
}
*/
#bo_w .bo_btn_user {
	justify-content: space-between;
	margin-top: 20px;
}
.btn_cke_sc_close {
	padding: 2px 15px;
	font-size: 16px;
}

/* 임시저장글 팝업 */
#autosave_pop {
	display: none;
	z-index: 10;
	position: absolute !important;
	top: 50px;
	right: 0;
	width: 430px;
	height: auto !important;
	height: 180px;
	max-height: 180px;
	border: 1px solid #565656;
	background: #fff;
	-webkit-box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2);
}
#autosave_pop .autosave_load {
	font-size: 16px;
	margin-left: 5px;
}

#autosave_pop span {
	display: block;
	float: right;
	font-size: 15px;
	color: #444;
}

.autosave_close {
	cursor: pointer;
	width: 100%;
	height: 35px;
	background: none;
	color: #444;
	font-weight: bold;
	font-size: 14px;
}

/* 게시판 커스텀 24Y 반응형 미디어쿼리 */
@media (max-width: 1440px) {
	#bo_gall .bo_tit {
		height: 42px;
	}

	#bo_gall #gall_ul {
		gap: 50px 30px;
	}
	.gall_row .col-gn-0,
	.gall_row .col-gn-1,
	.gall_row .col-gn-2,
	.gall_row .col-gn-3,
	.gall_row .col-gn-4,
	.gall_row .col-gn-5,
	.gall_row .col-gn-6,
	.gall_row .col-gn-7,
	.gall_row .col-gn-8,
	.gall_row .col-gn-9,
	.gall_row .col-gn-10 {
		max-width: 100%;
	}
	.gall_row .col-gn-4 {
		max-width: calc((100% - (30px * 3)) / 4);
	}

	#bo_gall .gall_img .ebook_option_btns {
		padding: 20px 5px;
	}
	#bo_gall .gall_img .ebook_option_btns a {
		font-size: 1em;
	}
}
@media (max-width: 1200px) {
	#bo_gall .gall_img .ebook_option_btns a img {
		width: 25px;
	}
	.gall_row .col-gn-4 {
		max-width: calc((100% - (30px * 2)) / 3);
	}
}
@media (max-width: 1024px) {
	#bo_gall .bo_tit {
		height: 40px;
	}

	/* 분류 */
	#bo_cate ul {
		gap: 5px;
	}
	#bo_cate a {
		font-size: 0.94em;
	}
}
@media (max-width: 991px) {
	#bo_gall #gall_ul {
		gap: 40px 20px;
	}
	.gall_row .col-gn-4 {
		max-width: calc((100% - (20px * 2)) / 3);
	}
}
@media (max-width: 768px) {
	.pg_wrap {
		margin-top: 30px;
	}
	#bo_gall .gall_li {
		margin-bottom: 30px;
	}
	.gall_row .col-gn-4 {
		max-width: calc((100% - 20px) / 2);
	}

	#bo_gall .seach_top_wrap {
		flex-direction: column-reverse;
		gap: 10px;
		margin-bottom: 0;
	}
	#bo_list_total {
		align-self: flex-start;
	}
	#bo_gall .board_list_table {
		margin-top: 30px;
	}
	#bo_w .bo_w_flie .file_del {
		position: relative;
		top: 0;
		right: initial;
		left: 0;
		display: block;
		padding: 10px 20px;
		background: #dddddd;
	}
}
@media (max-width: 640px) {
	#bo_list #bo_list_btns_wrapper .bo_list_btns {
		flex-direction: column;
		gap: 10px;
		align-items: flex-end;
	}
	#bo_v_title {
		flex-direction: column;
		align-items: flex-start;
	}
	#bo_v_info {
		flex-direction: column;
		align-items: flex-start;
	}
	/*
	#bo_v_top {
		align-self: flex-end;
		margin-top: 10px;
	}
    */
	#bo_v_top .fa {
		display: none;
	}
	.bo_v_nb li .nb_tit {
		padding: 20px 5px;
		width: 80px;
		text-align: center;
	}

	#bo_vc header > p .info_cmt {
		display: none;
	}
	#bo_w .bo_w_link_wrap .bo_w_link label,
	#bo_w .bo_w_flie_wrap .bo_w_flie label {
		width: 100px;
		padding: 20px 5px;
		text-align: center;
	}
	#bo_w .bo_w_flie .frm_file {
		width: 100%;
	}
}
@media (max-width: 480px) {
	.gall_row .col-gn-0,
	.gall_row .col-gn-1,
	.gall_row .col-gn-2,
	.gall_row .col-gn-3,
	.gall_row .col-gn-4,
	.gall_row .col-gn-5,
	.gall_row .col-gn-6,
	.gall_row .col-gn-7,
	.gall_row .col-gn-8,
	.gall_row .col-gn-9,
	.gall_row .col-gn-10 {
		width: 100%;
		max-width: 100%;
	}
	#bo_gall #gall_ul {
		gap: 30px;
	}
	#bo_gall .gall_img img,
	#bo_gall .gall_img video {
		width: 100%;
	}
	#bo_gall .gall_img {
		overflow: hidden;
	}
	#bo_gall .gall_img .ebook_option_btns {
		bottom: -1px;
	}
	#bo_gall .gall_info {
		margin-top: 0;
	}
	#bo_v #bo_v_top {
		flex-direction: column;
		gap: 10px;
	}
	#bo_gall #bo_list_btns_wrapper .bo_list_btns {
		flex-direction: column;
		gap: 10px;
	}
	#bo_v_top ul {
		display: flex;
		justify-content: center;
		gap: 5px;
	}
}
