@charset "utf-8";

.board__con {
	position: relative;
	/*top: -100px;*/
	top: 0;
	width: 100%;
	max-width: 1500px;
	margin: 0 auto;
}

@media screen and (max-width: 768px) {
	.board__con {}
}

/* 게시판 목록 */
#bo_list {
	position: relative;
	padding-top: clamp(20px, 4.8vw, 80px);
	margin-bottom: 20px
}

#bo_list:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: ""
}

@media screen and (max-width:1480px) {
	#bo_list {
		padding: 0 40px;
	}
}

/* Certification Grid */
/* Product Grid Redesign (New Implementation) */
#bo_list .product_list_grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	width: 100%;
	max-width: 1514px;
	margin: 0 auto;
}

#bo_list .prod_item {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

#bo_list .prod_item .prod-list-checkbox {
	display: flex;
	justify-content: flex-end;
}

#bo_list .prod_img_box {
	width: 100%;
	aspect-ratio: 474 / 360;
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

#bo_list .prod_img_box .placeholder_box {
	color: #000;
	font-weight: 700;
}

#bo_list .img_bottom_banner {
	position: absolute;
	bottom: 15px;
	left: 15px;
	right: 15px;
	display: flex;
	align-items: center;
	background: #fff;
	border: 1px solid #004098;
	border-radius: 50px;
	height: 44px;
}

#bo_list .cert_badge {
	background: #2a5298;
	color: #fff;
	height: 100%;
	display: flex;
	align-items: center;
	padding: 0 20px;
	font-size: 18px;
	font-weight: 800;
	border-radius: 0; /* Let it fill the left side */
	white-space: nowrap;
}

#bo_list .cert_logos {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding-right: 15px;
}

#bo_list .cert_logos .logo_item {
	width: 30px;
	height: 30px;
	display: inline-block;
	vertical-align: middle;
	position: relative; /* For tooltip positioning */
}

#bo_list .cert_logos .logo_item img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

/* Custom Tooltip */
#bo_list .cert_logos .logo_item::after {
	content: attr(data-tooltip);
	position: absolute;
	bottom: 100%;
	left: 50%;
	transform: translateX(-50%) translateY(-10px);
	background: rgba(0, 0, 0, 0.8);
	color: #fff;
	padding: 5px 10px;
	border-radius: 4px;
	font-size: 12px;
	white-space: nowrap;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s;
	z-index: 10;
	margin-bottom: 5px;
}

/* Tooltip Arrow */
#bo_list .cert_logos .logo_item::before {
	content: '';
	position: absolute;
	bottom: 100%;
	left: 50%;
	transform: translateX(-50%);
	border-width: 5px 5px 0 5px;
	border-style: solid;
	border-color: rgba(0, 0, 0, 0.8) transparent transparent transparent;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s;
	z-index: 10;
	margin-bottom: 0;
}

#bo_list .cert_logos .logo_item:hover::after,
#bo_list .cert_logos .logo_item:hover::before {
	opacity: 1;
	visibility: visible;
	transform: translateX(-50%) translateY(0);
}

#bo_list .prod_info_box {
	background: #15181e;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 16px;
	padding: 30px;
	text-align: left;
	position: relative;
	min-height: 200px;
}

/* Highlight style for the main item */
#bo_list .prod_item .prod_info_box {
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.04) 100%);
	border: 1px solid rgba(255, 255, 255, 0.15);
}

#bo_list .info_head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 25px;
}

#bo_list .prod_info_box .badge {
	display: inline-block;
	font-size: 14px;
	font-weight: 600;
	color: #ff6b00;
	margin-bottom: 0;
}

#bo_list .prod_info_box .arrow_icon {
	width: 24px;
	height: 24px;
	position: relative;
	opacity: 0;
}

#bo_list .prod_info_box .arrow_icon::after {
	content: '';
	position: absolute;
	top: 5px;
	right: 5px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
}

#bo_list a:hover .prod_info_box .badge {
	color: #00d4ff;
}

#bo_list a:hover .prod_info_box .arrow_icon {
	opacity: 1;
}

#bo_list .prod_item a:hover .prod_info_box {
	background: linear-gradient(135deg, rgba(8, 28, 38, 1) 0%, rgba(5, 20, 30, 1) 100%);
	border: 1px solid rgba(0, 212, 255, 0.3);
}

#bo_list .prod_info_box h4 {
	font-size: 24px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 24px;
	line-height: 1.3;
}

#bo_list .prod_specs {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding-top: 20px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

#bo_list .prod_specs dl {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	color: rgba(255, 255, 255, 0.6);
	margin: 0;
}

#bo_list .prod_specs dt {
	width: 80px;
	font-weight: 400;
}

#bo_list .prod_specs dd {
	color: #fff;
	font-weight: 500;
}

/* Responsive */
@media (max-width: 1280px) {
	#bo_list .prod_row {
		flex-direction: column;
		text-align: center;
	}

	#bo_list .prod_row.reverse {
		flex-direction: column-reverse;
	}

	#bo_list .prod_info_card {
		width: 100%;
		height: auto;
		flex-direction: column;
		gap: 20px;
		align-items: center;
		text-align: center;
	}

	#bo_list .info_specs {
		align-items: center;
	}

	#bo_list .prod_img {
		width: 100%;
		max-width: 500px;
		height: auto;
		aspect-ratio: 474/360;
	}
}

/* Responsive Grid */
@media (max-width: 1200px) {
	#bo_list .product_list_grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	#bo_list .product_list_grid {
		grid-template-columns: 1fr;
	}

	#bo_list .prod_img_box {
		aspect-ratio: auto;
		height: 250px;
	}
}


.btn_modify {
	color: #fff;
	margin-top: 10px;
	padding: 10px 20px;
	border-radius: 16px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.04) 100%);
}


/* Tab Menu */
#bo-cate {
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(10px);
	margin: 26px 0;
	text-align: center;
}

#bo-cate ul {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0;
}

#bo-cate li {
	position: relative;
	padding: 0 40px;
}

#bo-cate li:not(:last-child)::after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 24px;
	background: rgba(255, 255, 255, 0.2);
}

#bo-cate li a {
	display: block;
	padding: 26px 0;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	opacity: 0.8;
	transition: all 0.3s;
}

#bo-cate #bo_cate_on,
#bo-cate li.active a,
#bo-cate li a:hover {
	color: #00d4ff;
	opacity: 1;
}

/* 게시판 목록 공통 */
.btn_bo_user {
	float: right;
	margin: 0;
	padding: 0;
	list-style: none
}

.btn_bo_user li {
	position: relative;
	float: left;
	text-align: center;
	margin-left: 5px;
	background: #fff;
}

.btn_bo_user li a {
	font-size: 14px;
}

.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: #666;
	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
}


.td_num strong {
	color: #000
}

.bo_cate_link {
	float: left;
	display: inline-block;
	margin-right: 10px;
	background: #e2eaf6;
	color: #258ccf;
	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_tit {
	display: block;
	color: #000;
	font-weight: bold
}

.bo_current {
	color: #e8180c
}

#bo_list .profile_img img {
	border-radius: 50%
}

#bo_list .cnt_cmt {
	background: #e9eff5;
	color: #258ccf;
	font-size: 11px;
	height: 16px;
	line-height: 16px;
	padding: 0 5px;
	border-radius: 3px;
	vertical-align: middle
}

#bo_list .bo_tit .title_icon {
	margin-right: 2px
}

#bo_list .bo_tit .fa-heart {
	color: #ff0000
}

#bo_list .bo_tit .fa-lock {
	display: inline-block;
	line-height: 14px;
	width: 16px;
	font-size: 0.833em;
	color: #4f818c;
	background: #cbe3e8;
	text-align: center;
	border-radius: 2px;
	font-size: 12px;
	border: 1px solid #cbe3e8;
	vertical-align: middle
}

#bo_list .bo_tit .new_icon {
	display: inline-block;
	width: 16px;
	line-height: 16px;
	font-size: 0.833em;
	color: #23db79;
	background: #b9ffda;
	text-align: center;
	border-radius: 2px;
	margin-left: 2px;
	font-weight: bold;
	vertical-align: middle
}

#bo_list .bo_tit .hot_icon {
	display: inline-block;
	width: 16px;
	line-height: 16px;
	font-size: 0.833em;
	color: #ff0000;
	background: #ffb9b9;
	text-align: center;
	border-radius: 2px;
	vertical-align: middle
}

#bo_list .bo_tit .fa-caret-right {
	color: #bbb
}

#bo_list .bo_tit .fa-download {
	display: inline-block;
	width: 16px;
	line-height: 16px;
	font-size: 0.833em;
	color: #daae37;
	background: #ffefb9;
	text-align: center;
	border-radius: 2px;
	margin-left: 5px;
	vertical-align: middle
}

#bo_list .bo_tit .fa-link {
	display: inline-block;
	width: 16px;
	line-height: 16px;
	font-size: 0.833em;
	color: #b451fd;
	background: #edd3fd;
	text-align: center;
	border-radius: 2px;
	margin-left: 5px;
	vertical-align: middle
}

.bo-top-wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 20px;
}

.list-total {
	font-size: 16px;
	font-weight: 300;
	min-height: 24px;
	line-height: 24px;
	background-size: 24px auto;
}

.list-total strong {
	/* color:#258ccf; */
	font-weight: 700;
}

.list-total .total-page {
	font-size: 15px;
}

.list-total {
	font-size: 15px;
	font-weight: 300;
	/* background: url(./svg/grid_small.svg) 0 center no-repeat; */
	/* padding-left: 30px; */
	min-height: 24px;
	line-height: 24px;
	background-size: 24px auto;
	font-weight: 700;
	letter-spacing: 0px;
}

.list-total strong {
	/* color:#258ccf; */
	/* font-weight: 500; */
}

.list-total .total-page strong {
	color: #1c7ace;
	/* font-size: 13px; */
}

.board-btn a {
	vertical-align: top;
	display: inline-block;
	border: 1px solid #d1d1d1;
	font-size: 14px;
	font-weight: 700;
	padding: 6px 10px;
	position: relative;
	transition: all .3s ease-out;
	height: 32px;
	line-height: 1.3em;
	background-color: #fff;
}

.board-btn a:before {
	position: absolute;
	left: 0;
	bottom: 0;
	height: 50%;
	content: "";
	background: #f1f1f1;
	width: 100%;
	z-index: -2;
}

.board-btn a:after {
	position: absolute;
	left: 0;
	bottom: 0;
	height: 100%;
	content: "";
	background: #f1f5f9;
	width: 0;
	z-index: -1;
	transition: width 0.3s ease-out;
}

.board-btn a:hover:after {
	width: 100%;
}

.board-btn a:hover {
	border-color: #f1f5f9;
	box-shadow: 3px 3px 8px rgba(0, 0, 0, .2);
}

.bo-bottom-wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin: 20px 0;
}

.bo-admin-select-wrap {
	display: inline-block;
	position: relative;
}

.more-opt {
	display: none;
	position: absolute;
	top: 31px;
	right: 0;
	background: #fff;
	z-index: 999;
	width: 100%;
	box-shadow: 3px 3px 8px rgba(0, 0, 0, .2);
}

.more-opt li {
	border-bottom: 1px dotted #dfdfdf;
}

.more-opt li:last-child {
	border-bottom: 0
}

.more-opt li button {
	width: 100%;
	border: 0;
	background: #fff;
	color: #333;
	text-align: left;
	padding: 8px;
	transition: all 0.3s ease-out;
}

.more-opt li:hover button {
	color: #000;
	background-color: #f1f5f9 !important;
}

.more-opt li button.select-delete {
	background: url(./svg/trash.svg) 8px center no-repeat;
	padding-left: 34px;
}

.more-opt li button.select-copy {
	background: url(./svg/files_stack.svg) 8px center no-repeat;
	padding-left: 34px;
}

.more-opt li button.select-move {
	background: url(./svg/move.svg) 8px center no-repeat;
	padding-left: 34px;
}

.btn-bo-rss {
	background: url(./svg/waves.svg) 8px center no-repeat;
	padding-left: 32px !important;
}

.btn-bo-search {
	background: url(./svg/search.svg) 8px center no-repeat;
	padding-left: 32px !important;
}

.btn-bo-write {}

.btn-bo-admin {
	background: url(./svg/settings.svg) 8px center no-repeat;
	padding-left: 32px !important;
}

.btn-bo-admin-select {
	background: #fff url(./svg/window_content.svg) 8px center no-repeat;
	padding-left: 34px !important;
	position: relative;
	padding-right: 30px !important;
}

.btn-bo-admin-select span {
	position: absolute;
	display: block;
	right: 0;
	top: 50%;
	width: 28px;
	height: 28px;
	background: url(./svg/chevron_down.svg) center center no-repeat;
	transform: translateY(-50%);
	background-size: 100% 100%;
	transition: all .3s ease-out;
}

.bo-admin-select-wrap.active .btn-bo-admin-select span {
	transform: translateY(-50%) rotate(-180deg);
}

.btn-bo-modify {}

.btn-bo-delete {}

.btn-bo-copy {}

.btn-bo-move {}

.btn-bo-list {}

.btn-bo-reply {}

.bo-v-btn-wrap {
	display: flex;
	justify-content: space-between;
	margin-bottom: 15px;
}

.board-btn.btn-text-none a {
	text-indent: -9999px;
	border: none;
	width: 30px;
	padding-left: 30px;
	background-position: center center !important;
	background-size: 22px auto;
}

.board-btn.btn-text-none a.btn-bo-list {
	background-size: 32px auto;
}

.board-btn.btn-text-none a.btn-bo-rss {
	background-size: 32px auto;
}

.board-btn.btn-text-none a:after,
.board-btn.btn-text-none a:before {
	display: none;
}

.board-btn.btn-text-none a:hover {
	box-shadow: none;
}

.bo-v-btn-left {}


.bo-admin-select-wrap.active .btn-bo-admin-select {
	border-color: #f1f5f9;
	box-shadow: 3px 3px 8px rgba(0, 0, 0, .2);
}

.bo-admin-select-wrap.active .btn-bo-admin-select:after {
	width: 100%;
}

.list-content-secret {
	color: #e3401b;
}

.bo-top-wrap .gallery-list-checkbox {
	width: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 32px;
	vertical-align: middle;
}


.bo-cate-link {
	display: inline-block;
	position: relative;
	padding-right: 10px;
	margin-right: 10px;
	line-height: 20px;
	vertical-align: top;
}

.bo-cate-link:after {
	height: 20px;
	width: 1px;
	content: "";
	display: block;
	position: absolute;
	right: 0;
	top: 3px;
	background: linear-gradient(to bottom, #999, transparent);
}

.bo-current {
	color: #FF4800;
	font-weight: 600;
}

#bo_list .pg_wrap {
	clear: both;
	text-align: center;
	margin-top: 30px;
	display: block;
	float: none;
}

#bo_list .pg_wrap:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: ""
}

#bo_list .pg {
	text-align: center;
}

#bo_list .pg_page,
.pg_current {
	display: inline-block;
	vertical-align: middle;
	border: 1px solid #ddd;
	background: none;
	border-radius: 0;
	transition: all 0.3s ease-out;
}

#bo_list .pg a:focus,
.pg a:hover {
	text-decoration: none
}

#bo_list .pg_page {
	color: #959595;
	font-size: 14px;
	height: 35px;
	line-height: 33px;
	padding: 0 13px;
	min-width: 30px;
	text-decoration: none;
	position: relative;
}

#bo_list .pg_page:hover {
	background-color: #fafafa;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, .2);
	border-color: #b8b8b8;
	color: #212121;
	font-weight: bold;
}

#bo_list .pg_start {
	text-indent: -999px;
	overflow: hidden;
	padding: 0;
	width: 35px;
	border: 1px solid #ddd;
	background: none;
}

#bo_list .pg_prev {
	text-indent: -999px;
	overflow: hidden;
	padding: 0;
	width: 35px;
	border: 1px solid #ddd;
	background: none;
}

#bo_list .pg_end {
	text-indent: -999px;
	overflow: hidden;
	padding: 0;
	width: 35px;
	border: 1px solid #ddd;
	background: none;
}

#bo_list .pg_next {
	text-indent: -999px;
	overflow: hidden;
	padding: 0;
	width: 35px;
	border: 1px solid #ddd;
	background: none;
}

#bo_list .pg_prev:after {
	font-family: FontAwesome;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	content: "\f104";
	z-index: 1;
	text-indent: 0;
	text-align: center;
	font-size: 18px;
}

#bo_list .pg_start:after {
	font-family: FontAwesome;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	content: "\f100";
	z-index: 1;
	text-indent: 0;
	text-align: center;
	font-size: 18px;
}

#bo_list .pg_next:after {
	font-family: FontAwesome;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	content: "\f105";
	z-index: 1;
	text-indent: 0;
	text-align: center;
	font-size: 18px;
}

#bo_list .pg_end:after {
	font-family: FontAwesome;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	content: " \f101";
	z-index: 1;
	text-indent: 0;
	text-align: center;
	font-size: 18px;
}

#bo_list .pg_start:hover,
#bo_list .pg_prev:hover,
#bo_list .pg_end:hover,
#bo_list .pg_next:hover {
	background-color: #fafafa
}

#bo_list .pg_current {
	display: inline-block;
	background: #212121;
	border: 1px solid #212121;
	color: #fff;
	font-weight: bold;
	height: 35px;
	line-height: 33px;
	padding: 0 13px;
	min-width: 30px;
	position: relative;
	color: #fff;
}





/* 게시판 쓰기 */
#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 #000 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: #999
}

.autosave_close {
	cursor: pointer;
	width: 100%;
	height: 30px;
	background: none;
	color: #888;
	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;
	box-sizing: border-box;
	background-color: #fff;
}

#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 {
	border-top: 2px solid #000;
}

.bo-v-tit {
	display: block;
	font-size: 22px;
	word-break: break-all;
	border-bottom: 1px solid #ddd;
	padding: 20px 0;
	color: #000;
}

#bo-v-info {
	margin: 0;
	border-bottom: 1px solid #ddd;
	color: #666;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#bo-v-info h2 {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden
}

#bo-v-info .profile-info {
	display: flex;
	align-items: center;
}

#bo-v-info .profile-info .pf-img {
	margin-right: 10px;
	display: inline-block;
}

#bo-v-info .profile-info .pf-img img {
	border-radius: 50%;
	width: 35px;
	height: 35px;
	vertical-align: top;
}

#bo-v-info .profile-info strong {
	display: inline-block;
	font-weight: normal;
	padding-left: 25px;
	background: url(./svg/user_male.svg) 0 center no-repeat;
}

#bo-v-info .profile-info .pf-img~strong {
	background: none;
	padding-left: 0;
}

#bo-v-info .sv_member,
#bo-v-info .sv_guest,
#bo-v-info .member,
#bo-v-info .guest {
	font-weight: bold;
	font-size: 14px;
}

#bo-v-info .profile_img {
	display: none
}

#bo-v-info .sv_member {
	color: #000
}

.article-info {
	padding: 15px 0;
	min-height: 50px;
	font-size: 12px;
	color: #999;
	font-family: tahoma;
}

.article-comment {
	display: inline-block;
	padding-left: 25px;
	background: url(./svg/speech_bubble.svg) 0 center no-repeat;
	font-weight: normal;
	line-height: 20px;
}

.article-hit {
	display: inline-block;
	padding-left: 25px;
	background: url(./svg/eye.svg) 0 center no-repeat;
	margin-left: 15px;
	font-weight: normal;
	line-height: 20px;
}

.article-date {
	display: inline-block;
	padding-left: 25px;
	background: url(./svg/calendar_date.svg) 0 center no-repeat;
	margin-left: 15px;
	font-weight: normal;
	line-height: 20px;
}

.article-ip {
	display: inline-block;
	color: #999;
	font-size: 12px;
	margin-left: 5px;
}

#bo_v_file,
#bo_v_link {
	font-size: 14px;
}

#bo_v_file h2 {
	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;
	padding-left: 50px;
	background: url(./svg/floppy.svg) 10px 10px no-repeat;
	transition: box-shadow .3s ease-out;
	background-size: 30px auto;
}

#bo_v_file li i {
	color: #b2b2b2;
	font-size: 24px;
	margin-right: 20px;
	position: absolute;
	left: 10px;
	top: 14px;
}

#bo_v_file img {
	position: absolute;
	left: 15px;
	top: 16px;
}

#bo_v_file a {
	display: block;
	text-decoration: none;
	word-wrap: break-word;
	color: #000;
	margin-bottom: 5px;
}

#bo_v_file a:focus,
#bo_v_file li:hover a,
#bo_v_file a:active {
	text-decoration: underline;
	color: #258ccf
}

#bo_v_file .bo_v_file_cnt {
	color: #b2b2b2;
	font-size: 0.92em
}

#bo_v_file li:hover {
	border-color: #bed4f4;
	color: #bed4f4;
	box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, .2);
}

#bo_v_file li:hover i {
	color: #258ccf
}

#bo_v_file li:hover .bo_v_file_cnt {
	color: #99c2fc
}

#bo_v_file .file-size-txt {
	font-size: 13px;
	color: #999;
	font-family: tahoma;
}


#bo_v_link h2 {
	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;
	padding-left: 50px;
	background: url(./svg/chain.svg) 10px 10px no-repeat;
	transition: box-shadow .3s ease-out;
	background-size: 30px auto;
}

#bo_v_link li i {
	color: #b2b2b2;
	font-size: 24px;
	margin-right: 20px;
	position: absolute;
	left: 10px;
	top: 14px;
}

#bo_v_link a {
	display: block;
	text-decoration: none;
	word-wrap: break-word;
	color: #000;
	margin-bottom: 5px;
}

#bo_v_link a:focus,
#bo_v_link li:hover a,
#bo_v_link a:active {
	text-decoration: underline;
	color: #258ccf
}

#bo_v_link .bo_v_link_cnt {
	color: #b2b2b2;
	font-size: 0.92em
}

#bo_v_link li:hover {
	border-color: #bed4f4;
	color: #bed4f4;
	box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, .2);
}

#bo_v_link li:hover i {
	color: #258ccf
}

#bo_v_link li:hover .bo_v_link_cnt {
	color: #99c2fc
}


.bo_v_com {
	margin: 20px 0;
	float: right
}

.bo_v_com>li {
	position: relative;
	float: left;
	margin-left: 5px
}

.bo_v_nb {
	position: relative;
	margin: 20px 0;
	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;
	transition: all ease-out .3s
}

.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;
	position: relative;
}

.bo_v_nb li .nb_date {
	float: right;
	color: #b3b3b3;
	font-family: tahoma;
	font-size: 13px;
}

.btn_prv .nb_tit:before {
	display: inline-block;
	width: 21px;
	height: 21px;
	background-color: #b3b3b3;
	mask: url(./svg/chevron_up.svg) no-repeat center / contain;
	-webkit-mask: url(./svg/chevron_up.svg) no-repeat center / contain;
	content: "";
	vertical-align: bottom;
	margin-right: 5px;
	mask-size: 28px auto;
	-webkit-mask-size: 28px auto;
}

.btn_next .nb_tit:before {
	display: inline-block;
	width: 21px;
	height: 21px;
	background-color: #b3b3b3;
	mask: url(./svg/chevron_down.svg) no-repeat center / contain;
	-webkit-mask: url(./svg/chevron_down.svg) no-repeat center / contain;
	content: "";
	vertical-align: bottom;
	margin-right: 5px;
	mask-size: 28px auto;
	-webkit-mask-size: 28px auto;
}

#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;
	padding: 20px;
}

#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;
	font-size: 14px;
}

#bo_v_con a {
	color: #000;
	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;
	display: inline-block;
}

#bo_v_act .bo_v_act_gng~.bo_v_act_gng {
	margin-left: 10px;
}

#bo_v_act a,
#bo_v_act>span {
	vertical-align: middle;
	color: #4a5158;
	transition: all .3s ease-out;
	padding-top: 40px;
}

#bo_v_act a:hover {
	background-color: #fff;
	color: #ff484f;
	border-color: #fff;
	box-shadow: 0px 0px 8px rgba(0, 0, 0, .2);
}

#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;
	height: 70px;
	border-radius: 50%;
	background: url(./svg/thumbs_up.svg) center 12px no-repeat;
}

#bo_v_act .bo_v_nogood {
	display: inline-block;
	border: 1px solid #dedede;
	width: 70px;
	height: 70px;
	border-radius: 50%;
	background: url(./svg/thumbs_down.svg) center 12px no-repeat;
}

#bo_v_sns {
	padding: 0;
	list-style: none;
	right: 0;
	top: 60px;
	display: flex;
	padding: 8px 5px;
	border-radius: 10px;
	background: #f5f5f5;
	box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, .3);
	opacity: 0;
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden;
}

#bo_v_sns.active {
	opacity: 1;
	width: auto;
	height: auto;
	transition: all 0.3s ease-out;
}

#bo_v_sns li {
	padding: 0 3px;
}

#bo_v_sns li a {
	height: 35px;
	line-height: 35px;
	text-align: center;
	border-radius: 5px;
	color: #fff;
	font-size: 0.95em;
	width: 35px;
	border-radius: 50%;
	transition: all .2s ease-out;
}

#bo_v_sns li a:hover {
	box-shadow: 2px 2px 5px 0 rgba(0, 0, 0, .4);
}

#bo_v_sns li a span {
	display: none;
}

#bo_v_sns li img {
	vertical-align: middle;
}

#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;
	display: flex;
	justify-content: flex-end
}

#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
}

.scrap-btn {
	background: url(./svg/paperclip.svg) 8px center no-repeat;
	padding-left: 32px !important;
}

.share-btn {
	background: url(./svg/share.svg) 8px center no-repeat;
	padding-left: 32px !important;
}

.share-btn.active:after {
	width: 100%;
}

.share-btn.active {
	border-color: #f1f5f9;
	box-shadow: 3px 3px 8px rgba(0, 0, 0, .2);
}

.btn-text-none .share-btn.active {
	box-shadow: none;
}

/* 게시판 댓글 */
.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: #258ccf
}

.cmt_btn span.cmt_more {
	float: right;
	display: inline-block;
	width: 21px;
	height: 21px;
	background: url(./svg/chevron_down.svg) center center no-repeat;
	margin-top: 5px;
	background-size: 28px auto;
}

.cmt_btn_op span.cmt_more {
	background: url(./svg/chevron_up.svg) center center no-repeat;
	background-size: 28px auto;
}

.cmt_btn b {
	font-size: 1.2em;
	color: #000
}

.cmt_btn span.total:after {
	position: absolute;
	bottom: -17px;
	left: 0;
	display: inline-block;
	background: #258ccf;
	content: "";
	width: 100%;
	height: 2px
}

.cm-parent-info {
	color: #999;
	text-decoration: none !important;
	margin-right: 5px;
}

.cm-header-content {
	vertical-align: middle;
}

.cm-ip {
	color: #999;
}

.cm-reply-btn {
	background: url(./svg/forward.svg) center center no-repeat;
	width: 21px;
	height: 21px;
	text-indent: -9999px;
	display: inline-block;
	background-size: 24px auto;
}

.cm-modify-btn {
	background: url(./svg/reset.svg) center center no-repeat;
	width: 21px;
	height: 21px;
	text-indent: -9999px;
	display: inline-block;
	margin-left: 5px;
	background-size: 20px auto;
}

.cm-delete-btn {
	background: url(./svg/cross.svg) center center no-repeat;
	width: 21px;
	height: 21px;
	text-indent: -9999px;
	display: inline-block;
	background-size: 26px auto;
	margin-left: 5px;
}

.bo-vc-datetime {
	background: url(./svg/calendar_date.svg) 0 center no-repeat;
	padding-left: 25px;
	margin: 0 8px;
	font-family: tahoma;
	font-size: 13px;
	color: #999;
	display: inline-block;
	line-height: 20px;
}

#bo_vc .member,
#bo_vc .guest,
#bo_vc .sv_member,
#bo_vc .sv_guest {
	font-weight: bold
}

.bo_vc_hdinfo {
	color: #777
}

#bo_vc h1 {
	position: absolute;
	font-size: 0;
	line-height: 0;
	overflow: hidden
}

#bo_vc .cmt_contents {
	line-height: 1.8em;
	padding: 10px 0
}

#bo_vc .cmt_contents .cmt-secret-box {
	position: relative;
}

#bo_vc .cmt_contents .cmt-secret-box:before {
	content: "";
	width: 21px;
	height: 21px;
	display: inline-block;
	background: url(./svg/lock.svg) 0 0 no-repeat;
	vertical-align: top;
	position: relative;
	top: 1px;
	margin-right: 5px;
}

#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: #777;
	text-align: center
}

#bo_vc #bo_vc_winfo {
	float: left
}

#bo_vc .bo_vl_opt {
	position: absolute;
	top: 0;
	right: 0
}


.bo-vc-guest-area {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-wrap: wrap;
}

.bo-vc-guest-input {
	margin-bottom: 10px;
}

.bo-vc-guest-notice {
	background: url(./img/mic.png) 0 center no-repeat;
	padding-left: 22px;
	color: #000;
	font-size: 14px;
	margin-bottom: 8px;
}

.bo-vc-captcha #captcha {
	vertical-align: top;
	margin-bottom: 10px;
}

.bo_vc_w {
	position: relative;
	margin: 20px 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: inline-block;
	margin-right: 10px;
}

.bo_vc_w textarea {
	border: 1px solid #ccc;
	background: #fff !important;
	color: #000;
	vertical-align: middle;
	padding: 8px;
	width: 100%;
	height: 120px;
}

#wr_secret {}

.bo_vc_w_info {
	display: flex;
	justify-content: space-between;
}

.bo_vc_w_info .frm_input {
	margin-right: 5px;
	margin-bottom: 10px;
}

.bo_vc_w_info #captcha {
	display: block;
	clear: both
}

.bo_vc_w .btn_confirm {}

.bo_vc_w .btn_confirm label {
	display: inline-block;
	margin-right: 10px;
	border-radius: 3px;
	text-align: center
}

.bo_vc_w .btn_confirm .secret_cm label {
	font-size: 1em !important
}

.bo_vc_w_wr {
	padding-top: 10px;
}

.secret_cm {
	display: inline-block;
}

.comment-write-box {
	border: 1px solid #e1e1e1;
	border-top: 2px solid #333;
	background: #f8f8f8;
	padding: 15px;
}

.comment-write-box .required {
	background-image: none !important;
}

.comment-write-box .frm_input {
	border-radius: 0;
	vertical-align: top;
}

.bo-vc-bottom {
	display: flex;
	justify-content: space-between;
	margin-top: 10px;
}

.bo-vc-submit {
	padding: 6px 15px;
	height: 32px;
	border-radius: 0px;
	font-weight: 700;
	font-size: 14px;
	background: #144a94;
	color: #fff;
	transition: all .2s ease-out;
	border: none;
}

.bo-vc-submit:hover {
	box-shadow: 3px 3px 8px rgba(0, 0, 0, .2);
	background: #fff;
	color: #333;
}


#bo_vc_send_sns {
	display: inline-flex;
}

#bo_vc_sns {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
	zoom: 1
}

#bo_vc_sns li {
	margin: 0 5px 0 0;
	display: flex;
	align-items: center;
}

#bo_vc_sns .sns_li_f {
	border-radius: 3px;
	background: #3a589b;
	height: 40px;
	padding: 0 0 0 10px
}

#bo_vc_sns .sns_li_t {
	border-radius: 3px;
	background: #00aced;
	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 {}

#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: #000;
	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: 10px;
	right: 10px;
	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
}

#bo_w .required {
	background: none !important;
}

#bo_w .btn-confirm {
	text-align: center;
	margin: 40px 0;
}

#captcha #captcha_key {
	border-radius: 0;
	background: #fff !important;
}

.content-input-form {
	border-top: 2px solid #333;
}

.input-wrap {
	margin-top: 15px;
}

.input-box {
	border: 1px solid #dadada;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	margin-top: -1px;
}

.input-title {
	flex: 0 0 110px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding-left: 20px;
	font-size: 14px;
	font-weight: bold;
	position: relative;
	color: #000;
	background: #ccc;
}

.input-box.required .input-title:after {
	content: "*";
	color: #3366cc;
}

.input-content {
	flex-grow: 1;
	display: flex;
	align-items: center;
	min-height: 43px;
	position: relative;
	background: #fff;
}

.input-content input[type=text],
.input-content input[type=password] {
	width: 100%;
	height: 43px;
	padding-left: 15px;
	border: 1px solid transparent;
}

.input-content select {
	width: 100%;
	height: 43px;
	padding-left: 15px;
	border: 1px solid transparent;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: relative;
	background: url('./svg/chevron_down.svg') right 5px center no-repeat;
	background-size: 24px auto;
}

.input-content select::-ms-expand {
	display: none;
}

.input-content select:focus {}

.input-content .check-box {
	margin-left: 15px;
}

.input-content #btn_autosave {
	margin-right: 5px;
	width: 130px;
}

.input-wrap .cke_sc {
	display: none;
}

.input-content .hidden-file {
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden;
}

.input-content .file-label {
	background: #999;
	width: 80px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}

.check-box {
	position: relative;
	display: inline-flex;
	align-items: center;
}

.check-box input {
	display: none;
}

.check-box span {
	display: inline-block;
	width: 17px;
	height: 17px;
	border: 1px solid #c8ccd4;
	background: #fff;
	border-radius: 3px;
	transition: background 0.2s ease;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.check-box span::after {
	content: "";
	position: absolute;
	top: 1px;
	left: 5px;
	width: 5px;
	height: 11px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(45deg) scale(0);
	transition: all 0.3s ease 0.15s;
	opacity: 0;
}

.check-box label {
	cursor: pointer;
	padding-left: 23px;
	position: relative;
	z-index: 1;
	word-break: break-all;
	display: inline-block;
	line-height: 1em;
}

.check-box label.sound_only {
	width: 17px;
	height: 17px;
}

.check-box label.sound_only .sch_word {
	display: none !important;
}

.check-box input:checked~span {
	border-color: transparent;
	background: #1c54a7;
	animation: checkbox-jelly 0.6s ease;
}

.check-box input:checked~span:after {
	opacity: 1;
	transform: rotate(45deg) scale(1);
}

@keyframes checkbox-jelly {
	0% {
		transform: scale(1, 1) translateY(-50%);
	}

	30% {
		transform: scale(1.25, 0.75) translateY(-50%);
	}

	40% {
		transform: scale(0.75, 1.25) translateY(-50%);
	}

	50% {
		transform: scale(1.15, 0.85) translateY(-50%);
	}

	65% {
		transform: scale(0.95, 1.05) translateY(-50%);
	}

	75% {
		transform: scale(1.05, 0.95) translateY(-50%);
	}

	to {
		transform: scale(1, 1) translateY(-50%);
	}
}

.button {
	color: #000;
	border: 0;
	position: relative;
}

.button::before,
.button::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
}

.draw {
	transition: color 0.25s;
}

.draw::before,
.draw::after {
	border: 1px solid transparent;
	width: 0;
	height: 0;
}

.draw::before {
	top: 0;
	left: 0;
}

.draw::after {
	bottom: 0;
	right: 0;
}

.draw:hover {
	color: #60daaa;
}

.draw:hover::before,
.draw:hover::after {
	width: 100%;
	height: 100%;
}

.draw:hover::before {
	border-top-color: #60daaa;
	border-right-color: #60daaa;
	transition: width 0.25s ease-out, height 0.25s ease-out 0.25s;
}

.draw:hover::after {
	border-bottom-color: #60daaa;
	border-left-color: #60daaa;
	transition: border-color 0s ease-out 0.5s, width 0.25s ease-out 0.5s, height 0.25s ease-out 0.75s;
}

.meet:hover {
	color: #fbca67;
}

.meet::after {
	top: 0;
	left: 0;
}

.meet:hover::before {
	border-top-color: #000;
	border-right-color: #000;
}

.meet:hover::after {
	border-bottom-color: #000;
	border-left-color: #000;
	transition: height 0.25s ease-out, width 0.25s ease-out 0.25s;
}


#bo_w .btn-confirm .btn-submit {
	background: #1c54a7;
	box-shadow: none;
	border: none;
	color: #fff;
	width: 140px;
	height: 50px;
	font-size: 16px;
	vertical-align: top;
	margin-right: 10px;
	font-weight: bold;
	transition: all .4s ease-out;
}

#bo_w .btn-confirm .btn-submit:hover {
	background: #fff;
	color: #1c54a7
}

#bo_w .btn-confirm .btn-cancel {
	box-shadow: inset 0 0 0 1px #dadada;
	text-align: center;
	display: inline-block;
	width: 140px;
	height: 50px;
	line-height: 50px;
	color: #333;
	font-size: 16px;
	vertical-align: top;
	font-weight: bold;
	color: #ed6479;
	background-color: #fff;
}

#bo_w .btn-confirm .btn-cancel:hover {
	background: #ed6479;
	color: #fff
}

@media screen and (max-width: 1200px) {
	.gallery-list li {
		/* width: 50%; */
	}
}

@media screen and (max-width: 760px) {
	#bo-cate {
		margin: 0;
		padding-bottom: 15px;
	}

	.bo-top-wrap {
		align-items: center;
		flex-wrap: wrap;
		margin-bottom: 20px;
	}

	.bo-top-wrap .list-total {
		margin-top: 10px;
		font-size: 14px;
		background-size: 20px auto;
		/* padding-left: 25px; */
	}

	.bo-top-wrap .board-btn {
		margin-left: auto;
		margin-top: 10px;
	}

	.board-btn a {
		font-size: 13px;
		padding: 4px 6px;
		height: auto;
	}

	.gallery-list {
		margin: 0 0 20px;
	}

	.gallery-list li {
		width: 100%;
		padding: 20px 0;
		gap: clamp(20px, 2.8vw, 50px);
	}

	.gallery-list .gallery-list-title {}

	.gallery-list .gallery-list-content-text {
		font-size: 14px;
	}

	.gallery-list .gallery-list-content-etc {
		font-size: 12px;
		margin-top: 15px;
	}

	.gallery-list .gallery-list-content-etc span {
		display: inline-block;
		min-height: 21px;
		line-height: 21px;
	}


	.bo-v-tit {
		font-size: 18px;
		padding: 14px 0;
	}

	#bo-v-info {
		font-size: 12px;
		padding: 10px 0;
	}

	#bo-v-info .profile-info {
		padding: 0;
	}

	#bo-v-info .article-info {
		padding: 0;
		margin-left: auto;
		min-height: 0;
		margin-top: 3px;
	}

	#bo-v-info .profile-info .pf-img {
		margin-right: 5px;
	}

	#bo-v-info .profile-info .pf-img img {
		width: 22px;
		height: 22px;
		vertical-align: top;
	}

	#bo_v_share {
		padding: 10px 0;
	}

	.bo-vc-act {
		display: flex;
		align-items: center;
	}

	#bo_vc article .pf_img img {
		vertical-align: top;
	}

	.cm-header-content {
		font-size: 13px;
	}

	.bo-vc-submit {
		font-size: 14px;
		font-weight: 300;
		padding: 3px 12px;
		height: auto;
	}

	.bo-v-btn-wrap {
		flex-wrap: wrap;
		padding-bottom: 5px;
		margin-bottom: 0;
	}

	.bo-v-btn-left {
		margin-bottom: 5px;
	}

	.bo-v-btn-right {
		margin-left: auto;
		margin-bottom: 5px;
	}

	.bo-vc-guest-area {
		flex-wrap: wrap;
	}

	.bo-vc-guest-input input[type=text],
	.bo-vc-guest-input input[type=password] {
		width: 100%;
	}

	.bo-vc-guest-input input[type=password] {
		margin-top: -1px;
	}

	.content-input-form {
		font-size: 13px;
	}

	.input-title {
		flex: 0 0 70px;
		padding-left: 10px;
		font-size: 13px;
	}

	.input-content input[type=text],
	.input-content input[type=password] {
		padding-left: 8px;
	}

	.input-content select {
		padding-left: 8px;
	}

	.input-content .check-box {
		margin-left: 8px;
	}

	.input-content #btn_autosave {
		display: none;
	}

	#bo_w .btn-confirm {
		margin: 25px 0;
	}

	#bo_w .btn-confirm .btn-submit {
		width: 100px;
		height: 40px;
		font-weight: 500;
		font-size: 14px;
	}

	#bo_w .btn-confirm .btn-cancel {
		width: 100px;
		height: 40px;
		font-weight: 500;
		line-height: 40px;
		font-size: 14px;
	}
}

/*게시판 검색*/
/* select {-webkit-appearance:none;-moz-appearance:none;appearance:none;background: url('./img/select_arrow.png') no-repeat center right 20px;} */
select::-ms-expand {
	display: none;
}

.sub5 .bo-sch-box {
	margin-bottom: 60px;
	text-align: center
}

.sub5 .sch-btn {
	height: 60px;
	width: 95px;
	margin-left: -3px;
	background: #000;
	color: #fff;
}

.sub5 #stx {
	height: 60px;
	border-radius: 0;
	border: 1px solid #000;
	padding: 10px 20px;
	width: 500px;
}

.sub5 #sfl {
	width: 210px;
	height: 60px;
	border: 1px solid #000;
	border-radius: 0;
	padding: 10px 20px;
	margin-right: -4px;
	border-right: 0;
}

@media screen and (max-width: 1024px) {
	.sub5 #sfl {
		width: 130px;
		margin-right: -4px
	}

	.sub5 .sch-btn {
		width: 70px
	}
}

@media screen and (max-width:768px) {
	.sub5 #stx {
		width: 300px
	}
}

@media screen and (max-width:600px) {
	.sub5 #sfl {
		width: 100px;
		height: 45px;
		padding: 10px;
		background: url('./img/select_arrow.png') no-repeat center right 10px
	}

	.sub5 #stx {
		width: 200px;
		height: 45px
	}

	.sub5 .sch-btn {
		height: 45px;
		width: 50px;
		font-size: 14px
	}

	.sub5 .bo-sch-box {
		margin-bottom: 30px
	}
}


@media screen and (max-width:400px) {
	.sub5 #sfl {
		width: 30%;
		height: 45px;
		padding: 10px;
		font-size: 14px;
		background-size: 10px;
	}

	.sub5 #stx {
		width: 70%;
		height: 45px;
		padding: 10px;
	}

	.sub5 .sch-btn {
		height: 35px;
		line-height: 35px;
		padding: 0;
		font-size: 14px;
		width: 100%;
		margin-left: 0;
	}
}

/*총 갯수*/
.sub5 .list-total {
	margin-top: 10px;
	font-size: 18px;
	padding-bottom: 15px;
	font-weight: 600;
}

.sub5 .list-total strong {
	color: #000000;
	font-weight: 900;
}

@media screen and (max-width: 768px) {
	.sub5 .list-total {
		font-size: 16px
	}
}

/* board responsive end */

#bo_sch {
	background: #fff;
	/* border-radius:3px; */
	position: absolute;
	top: -10px;
	right: 0px;
	width: 727px;
	border-bottom: 2px solid #555;
	border-radius: 0;
}

#bo_sch:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: ""
}

#bo_sch legend {
	position: absolute;
	margin: 0;
	padding: 0;
	font-size: 0;
	line-height: 0;
	text-indent: -9999em;
	overflow: hidden
}

#bo_sch select {
	border: 0;
	margin: 0 10px;
	height: 50px;
	float: left;
	background: #fff;
	padding-bottom: 5px;
	font-size: 17px;
	width: 30%;
	color: #000;
	font-weight: 500;
}

#bo_sch .sch_input {
	height: 50px;
	width: 60%;
	border: 0;
	padding: 0;
	background-color: transparent;
	float: left;
	font-size: 16px;
	padding: 0 5px;
	font-weight: 500;
}

#bo_sch .sch_btn {
	height: 50px;
	background: none;
	border: 0;
	width: 30px;
	font-size: 22px;
	float: left;
	color: #555;
}


#bo_sch {
	background: #fff;
	/* border-radius:3px; */
	position: relative;
	width: 500px;
	border-bottom: 3px solid #555;
	border-radius: 0;
}

#bo_sch:after {
	display: block;
	visibility: hidden;
	clear: both;
	content: ""
}

#bo_sch legend {
	position: absolute;
	margin: 0;
	padding: 0;
	font-size: 0;
	line-height: 0;
	text-indent: -9999em;
	overflow: hidden
}

#bo_sch select {
	border: 0;
	margin: 0 10px;
	height: 50px;
	float: left;
	background: #fff;
	padding-bottom: 5px;
	font-size: 17px;
	width: 30%;
	color: #000;
	font-weight: 500;
}

#bo_sch .sch_input {
	height: 50px;
	width: 60%;
	border: 0;
	padding: 0;
	background-color: transparent;
	float: left;
	font-size: 16px;
	padding: 0 5px;
	font-weight: 500;
}

#bo_sch .sch_btn {
	height: 50px;
	background: none;
	border: 0;
	width: 30px;
	font-size: 22px;
	float: left;
	color: #555;
}

.bo-btm-wrap {
	display: flex;
	justify-content: flex-end;
	padding: 0 0 20px;
}

@media (max-width:1300px) {
	#bo_sch {
		width: 400px;
	}

	#bo_sch select {
		width: 30%;
	}

	#bo_sch .sch_input {
		width: calc(60% - 20px);
	}

	#bo_sch .sch_btn {
		width: 10%;
	}

	.gallery-list .gallery-list-content-etc {
		padding: 0px 0 20px;
	}

}

@media screen and (max-width:768px) {
	#bo_sch select {
		font-size: 14px;
		height: 40px;
	}

	#bo_sch .sch_input {
		font-size: 14px;
		height: 40px;
	}

	#bo_sch .sch_btn {
		font-size: 16px;
		height: 40px;
	}

	.gallery-list div.text-wrap button {
		padding: 15px 0;
		text-align: center;
	}

	.gallery-list .gallery-list-content-etc .list-comment {
		margin-left: 20px;
	}
}

@media screen and (max-width:480px) {
	#bo_sch {
		width: 100%;
		top: auto;
		bottom: 0;
	}

	#bo_sch select {
		font-size: 13px;
		height: 35px;
	}

	#bo_sch .sch_input {
		font-size: 13px;
		height: 35px;
	}

	#bo_sch .sch_btn {
		font-size: 15px;
		height: 35px;
	}
}

.list-hit {
	display: inline-block;
	padding-left: 30px;
	background: url(./img/eye.png) no-repeat left;
	margin-left: 10px;
	font-weight: normal;
	line-height: 20px;
}


/* 읽기 버튼 */
#bo_v a.btn_b01 {
	color: #000;
	font-weight: 700;
	font-size: 20px;
	position: relative;
}

#bo_v a.btn_b01:before {
	content: '';
	position: absolute;
	width: 18px;
	height: 19px;
	top: 50%;
	transform: translateY(-50%);
}

#bo_v .bo_v_nb li a.btn_b01.prev_arrow:before {
	background: url(./img/arrow_icon02_prev.png) no-repeat;
	left: -35px;
}

#bo_v .bo_v_nb li a.btn_b01.next_arrow:before {
	background: url(./img/arrow_icon02_next.png) no-repeat;
	right: -35px;
}

#bo_v a.btn_b01:focus,
#bo_v a.btn_b01:hover {}

#bo_v a.btn_b02 {}

#bo_v a.btn_b02:focus,
#bo_v a.btn_b02:hover {}

#bo_v a.btn_admin {
	font-size: 18px;
}

/* 관리자 전용 버튼 */
#bo_v a.btn_admin:focus,
#bo_v a.btn_admin:hover {}


@media screen and (max-width:500px) {
	.gallery-list div.text-wrap {
		flex: 100%;
	}

	.gallery-list div.img-wrap {
		flex: 100%;
	}

	.gallery-list li {
		max-height: none;
	}
}

/* Certificate Modal */
.cert_modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 99999;
}

.cert_modal_bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.85);
	backdrop-filter: blur(5px);
}

.cert_modal_content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: 90%;
	max-height: 90%;
	text-align: center;
}

.cert_modal_img_box {
	display: flex;
	justify-content: center;
	align-items: center;
}

.cert_modal_img_box img {
	max-width: 100%;
	max-height: 90vh;
	object-fit: contain;
	border-radius: 8px;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.cert_modal_close {
	position: absolute;
	top: -50px;
	right: 0;
	background: none;
	border: none;
	color: #fff;
	font-size: 36px;
	cursor: pointer;
	width: 40px;
	height: 40px;
	line-height: 40px;
	padding: 0;
	transition: transform 0.2s;
}

.cert_modal_close:hover {
	transform: scale(1.1);
	color: #ff6b00;
}

/* Ensure link in grid covers the box */
.view_modal_link {
	display: block;
	width: 100%;
	height: 100%;
	cursor: zoom-in;
}

@media (max-width: 768px) {
	.cert_modal_close {
		top: -40px;
		right: 0;
		font-size: 30px;
	}
}

/* Write Modal */
.write_modal {
    display: none;
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: rgba(0, 0, 0, 0.85);
    backdrop-filter: blur(8px);
}

.write_modal_content {
    background-color: #1a1d23;
    margin: 100px auto 50px;
    padding: 50px 20px 20px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    width: 95%;
    max-width: 1200px;
    height: calc(100vh - 100px);
    position: relative;
    border-radius: 20px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.6);
    overflow: hidden;
    animation: modal-fade-in 0.3s ease-out;
}

@keyframes modal-fade-in {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.write_modal_close {
    position: absolute;
    right: 30px;
    top: 25px;
    color: #fff;
    font-size: 24px;
    cursor: pointer;
    z-index: 10001;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.write_modal_close:hover {
    background: #ff4757;
    border-color: #ff4757;
    transform: rotate(90deg);
}

#write_iframe {
    width: 100%;
    height: 100%;
    border: none;
    background: transparent;
}

@media screen and (max-width: 768px) {
    .write_modal_content {
        margin: 0;
        width: 100%;
        height: 100%;
        border-radius: 0;
        border: none;
    }
    .write_modal_close {
        right: 15px;
        top: 15px;
        width: 36px;
        height: 36px;
        font-size: 18px;
    }
}
