@charset "UTF-8";

@import url(//fonts.googleapis.com/earlyaccess/notosanskr.css);

:root
{
	--white : #fff;
	--black : #111;
	--red : #e4353b;
	--blue : #2652c7;
	--gray1 : #fafafa;
	--gray2 : #f0f0f0;
	--gray3 : #eee;
	--gray4 : #aaa;
	--gray5 : #666;
	--gray6 : #333;
	
	--font-default : 400;
	--font-normal : 400;
	--font-sami-bold : 500;
	--font-bold : 700;
	--font-bolder : 900;
	
	--site-color : #2e387e;
	--site-bg-color : #f4f6fd;
}

html	{ font-size: 17px; }
body	{ line-height: 26px; font-family: 'Noto Sans KR', sans-serif; font-size: 17px; font-weight: 300; color: var(--black); white-space: normal; font-weight: var(--font-default); -webkit-text-size-adjust: none; -webkit-overflow-scrolling: touch; }

@media all and ( max-width: 768px )
{
	html,
	body	{ font-size: 14px; }
}


*	{ padding: 0; margin: 0; box-sizing: border-box; font-style: normal; font-family: 'Noto Sans KR', sans-serif; }
*:before,
*:after	{ box-sizing: border-box; }
li	{ list-style: none; }
button	{ cursor: pointer; }
label	{ cursor: pointer; }
a	{ text-decoration: none; color: var(--black); }
a:focus, a:hover, a:active	{ color: var(--red); }
*:focus	{ outline: 2px solid var(--blue); }

a, button	{ transition: all 0.5s ease; }

pre	{ display: block; padding: 0; margin: 0; white-space: pre-wrap; word-wrap: break-word; word-break: break-all; text-align: justify; }


#accessibility h2	{ position: absolute; width: 0; height: 0; overflow: hidden; }
#accessibility a	{ display: block; width: 100%; height: 0; overflow: hidden; }
#accessibility a:focus	{ display: flex; justify-content: center; align-items: center; height: 50px; border: 2px solid red; outline: 0 none !important; background-color: var(--gray3); color: var(--black); font-weight: var(--font-sami-bold); }



.hide, .hidden	{ position: absolute; width: 0; height: 0; line-height: 0; font-size: 0; overflow: hidden; }

.input_required	{ display: inline-block; margin: 0 0.3em; color: var(--red); font-weight: var(--font-bold); }


.ui-datepicker,
#ui-datepicker-div	{ z-index: 7 !important; }

.ui-datepicker select.ui-datepicker-year,
.ui-datepicker select.ui-datepicker-month	{ height: 30px; }


/*	문자 정렬	*/
.txtleft	{ text-align: left !important; }
.txtcenter	{ text-align: center !important; }
.txtright	{ text-align: right !important; }
.txtjustify, .txtdefault	{ text-align: justify !important; }



/* 레이어 팝업 */
.kntool_popup_layerpopup	{}
.kntool_popup_layerpopup .images	{ display: block; }
.kntool_popup_layerpopup a	{ display: block; cursor: pointer; }
.kntool_popup_layerpopup img	{ display: block; border: 0 none; }



/* 버튼 */
.button	{ display: inline-flex; align-items: center; justify-content: center; min-width: 140px; height: 60px; line-height: 1.1; padding: 0; margin: 0; border: solid 1px var(--site-color); border-radius: 10px; background-color: #fff; color: var(--site-color); font-size: 20px; font-weight: var(--font-sami-bold); white-space: nowrap; }
.button + .button	{ margin-left: 10px; }
.button.small	{ min-width: auto; height: 40px; padding: 0 1em; border-radius: 5px; font-size: 18px; }
.button.large	{ min-width: 200px; height: 80px; font-size: 22px; }
.button:focus, .button:hover, .button:active	{ border-color: #333 !important; background-color: #333 !important; color: #fff !important; }


.button.action_list	{ border-color: var(--site-color); background-color: #fff; color: var(--site-color); }
.button.action_write, .button.action_reply	{ border-color: var(--site-color); background-color: var(--site-color); color: #fff; }
.button.action_edit	{ border-color: #167d63; background-color: #167d63; color: #fff; }
.button.action_delete, .button.action_check	{ border-color: var(--red); background-color: #fff; color: var(--red); }
.button.action_reset, .button.action_cancel	{ border-color: #7e7e7e; background-color: #7e7e7e; color: #fff; }
.button.black	{ border-radius: 0; background-color: var(--black); color: var(--white); }

	#session_timeout_box .button	{ min-width: 200px; border-color: var(--site-color); background-color: var(--site-color); color: #fff; }

.order,
.order_r	{ display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 10px; margin: 40px 0; }
.order.left	{ justify-content: flex-start; }
.order.center	{ justify-content: center; }
.order.right,
.order_r	{ justify-content: flex-end; }
.order > *	{ flex: 0 1; }
.order > a > img	{ display: block; width: 40px; height: 40px; border: 0 none; }
.order > a > img + span	{ position: absolute; width: 0; height: 0; line-height: 0; font-size: 0; overflow: hidden; }
.order .button	{ margin: 0 !important; }

.in_order	{ display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 10px; margin: 0; }
.in_order > *	{ flex: 0 1; }
* + .in_order	{ margin-top: 10px; }

@media all and ( max-width: 768px )
{
	.button	{ height: 50px; border-radius: 6px; font-size: 1.1rem; }
	.button.small	{ height: 35px; padding: 0 5px; border-radius: 3px; font-size: 1rem; }
	
	.order > *	{ flex: 1 1; }
	.in_order > *	{ flex: 1 1; }
}


/* 목록 */
.dash_list > li	{ position: relative; padding-left: 10px; }
.dash_list > li:before	{ position: absolute; left: 0; top: 0; width: 3px; height: 1px; content: "-"; }
.dot_list > li	{ position: relative; padding-left: 10px; }
.dot_list > li:before	{ position: absolute; left: 0; top: calc(0.5em + 1px); width: 3px; height: 3px; border-radius: 50%; background-color: var(--black); content: ""; }
ol.no_list, ul.no_list	{ padding-inline-start: 40px; }
.no_list > li	{ list-style-type: decimal; list-style-position: outside; }




/* 내용 준비중 */
.content_empty	{ display: block; width: 100%; height: 190px; margin: 50px auto; background: url(../image/nocontent.png) no-repeat center center / contain; text-indent: -9999px; overflow: hidden; }



/* 검색 영역 */
form fieldset	{ border: 0 none; }
form fieldset legend	{ position: absolute; width: 0; height: 0; font-size: 0; text-indent: -99999px; overflow: hidden; }

button	{ appearance: none !important; }
select	{ appearance: none !important; padding-left: 10px; padding-right: 33px !important; background: #fff url(../image/select_arrow.png) no-repeat right 10px center / 13px auto !important; }


.search	{ padding: 0; margin: 0; border: 0 none; background: none; }
.search form	{ padding: 40px 80px; margin: 0 0 40px 0; background-color: #fff; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08); }
.search form fieldset	{ display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px; }
.search form fieldset > *	{ padding: 0; margin: 0; }
.search form label	{ position: absolute; width: 0; height: 0; line-height: 0; font-size: 0; overflow: hidden; }
.search form input[type="text"],
.search form select	{ position: relative; max-width: 100%; height: 48px; padding: 0 20px; border: 1px solid #ddd; appearance: none; font-size: 16px; font-weight: var(--font-sami-bold); }
.search form input[type="text"]	{ flex-grow: 1; flex-shrink: 1; }
.search form select	{ flex-grow: 0; flex-shrink: 0; }
.search form textarea	{ width: 100%; min-height: 100px; padding: 0 20px; border: 1px solid #ddd; appearance: none; font-size: 16px; font-weight: var(--font-sami-bold); }
.search form button,
.search form .form_button	{ flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 120px; height: 48px; border: 0 none; background-color: #666; color: #fff; font-size: 18px; font-weight: var(--font-sami-bold); }
.search form button[type="submit"]	{ gap: 5px; background-color: #23316c; color: #fff; }
.search form button[type="submit"]:before	{ display: inline-block; width: 20px; height: 20px; background: url(../image/icon_search.svg) no-repeat center center; content: ""; }

.search form button:focus, .search form button:hover, .search form button:active,
.search form .form_button:focus, .search form .form_button:hover, .search form .form_button:active	{ background-color: #333; color: #fff; }


@media all and ( max-width: 768px )
{
	.search	{ padding: 15px; margin: 0 0 40px 0; background-color: #fff; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08); }
	.search form	{ padding: 0; margin: 0; background-color: transparent; box-shadow: none; }
	.search form fieldset	{ gap: 0; }
	.search form label	{ flex: 1 1 0 !important; position: relative; left: 0; top: -20px; width: 0; height: auto; line-height: 1; font-size: 15px; font-weight: 700; overflow: visible; white-space: nowrap; }
	.search form label[for="search_field"]	{ margin-left: 10px; }
	.search form label[for="search_word"]	{ flex: 1 1 100%; top: 0; margin-top: 15px; }

	.search form select	{ flex: 1 1 auto; width: calc((100% - 10px) / 2); height: 38px; margin-top: 30px; }
	.search form input[type="text"]	{ flex: 1 1 90%; height: 38px; margin-top: 8px; }
	
	.search form legend + label[for="search_field"],
	.search form input[type="hidden"] + label[for="search_field"]	{ top: 0; width: 100%; margin-left: 0; }
	.search form legend + label[for="search_field"] + select[name="search_field"],
	.search form input[type="hidden"] + label[for="search_field"] + select[name="search_field"]	{ flex: 1 1 100%; width: 100%; margin-top: 8px; }
	
	.search form button[type="submit"]	{ flex: 1 1 100%; margin-top: 15px; }
}


/* 표 */
table	{ width: 100%; table-layout: fixed; border-spacing: 0; border-collapse: collapse; border-width: 2px 2px 1px 2px; border-style: solid; border-color: var(--site-color) #fff #e1e1e1 #fff; }
table caption	{ height: 0; line-height: 0; font-size: 0; text-indent: -999999px; overflow: hidden; }
table th, table td	{ padding: 20px; border: 1px solid #e1e1e1; vertical-align: middle; text-align: center; }
table th	{ background-color: #f8f8f8; font-weight: var(--font-sami-bold); }
table td.empty	{ height: 200px; text-align: center !important; font-weight: var(--font-bold); }
table.txtcenter td,
table tbody.txtcenter td,
table tfoot.txtcenter td,
table tr.txtcenter td,
table tr td.txtcenter	{ text-align: center !important; }
table.txtleft td,
table tbody.txtleft td,
table tfoot.txtleft td,
table tr.txtleft td,
table tr td.txtleft	{ text-align: left !important; }
table.txtright td,
table tbody.txtright td,
table tfoot.txtright td,
table tr.txtright td,
table tr td.txtright	{ text-align: right !important; }
table td .file img	{ width: 25px; height: 25px; }



@media all and ( max-width: 768px )
{
	table th, table td	{ padding: 5px; }
	
	table.mobile_table	{ display: block; }
	table.mobile_table caption,
	table.mobile_table colgroup,
	table.mobile_table thead	{ display: none; }
	table.mobile_table tbody	{ display: block; }
	table.mobile_table tbody tr	{ display: block; border-bottom: 2px solid #222; }
	table.mobile_table tbody tr:last-child	{ border-bottom-width: 0; }
	table.mobile_table tbody tr th	{ display: flex; align-items: center; justify-content: center; width: 30%; height: 100%; background-color: var(--site-bg-color); color: var(--black); font-weight: var(--font-sami-bold); content: attr(data-title); }
	table.mobile_table tbody tr th[rowspan]	{ width: 100%; border: 2px solid #222; border-top-width: 0; }
	table.mobile_table tbody tr:first-child th[rowspan]	{ border-top-width: 2px; }
	table.mobile_table tbody tr th[rowspan] br	{ display: none; }
	table.mobile_table tbody tr td	{ position: relative; display: block; min-height: 37px; padding: 5px 5px 5px calc(30% + 5px) !important; border-width: 0 0 1px 0; text-align: left !important; }
	table.mobile_table tbody tr td:last-child	{ border-bottom-width: 0; }
	table.mobile_table tbody tr td:before	{ position: absolute; left: 0; top: 0; display: flex; align-items: center; justify-content: center; width: 30%; height: 100%;background-color: var(--site-bg-color); color: var(--black); font-weight: var(--font-sami-bold); content: attr(data-title); }
	table.mobile_table tbody tr .mobile_hide	{ display: none !important; }
	table.mobile_table tbody tr td.empty	{ display: flex; align-items: center; justify-content: center; height: 200px; padding: 0 !important; text-align: center; }
	table.mobile_table tbody tr td.empty:before	{ content: none; }
	table.mobile_table tfoot	{ display: block; }
	table.mobile_table tfoot tr	{ display: block; border-bottom: 2px solid #222; }
	table.mobile_table tfoot tr:last-child	{ border-bottom-width: 0; }
	table.mobile_table tfoot tr th	{ display: flex; align-items: center; justify-content: center; width: 30%; height: 100%; background-color: var(--site-bg-color); color: var(--black); font-weight: var(--font-sami-bold); content: attr(data-title); }
	table.mobile_table tfoot tr td	{ position: relative; display: block; padding: 5px 5px 5px calc(30% + 5px) !important; border-width: 0 0 1px 0; text-align: left !important; }
	table.mobile_table tfoot tr td:last-child	{ border-bottom-width: 0; }
	table.mobile_table tfoot tr td:before	{ position: absolute; left: 0; top: 0; display: flex; align-items: center; justify-content: center; width: 30%; height: 100%; background-color: var(--site-bg-color); color: var(--black); font-weight: var(--font-sami-bold); content: attr(data-title); }
	table.mobile_table tfoot tr .mobile_hide	{ display: none !important; }
	
	table.mobile_table a	{ font-weight: bold; }
	
	
	table.mobile_table2	{ display: block; }
	table.mobile_table2 caption,
	table.mobile_table2 colgroup	{ display: none; }
	table.mobile_table2 tbody	{ display: block; }
	table.mobile_table2 tbody tr	{ display: block; }
	table.mobile_table2 tbody tr th	{ display: block; border-bottom-width: 0; }
	table.mobile_table2 tbody tr td	{ display: block; border-bottom-width: 0; }
}


/* 목록 */
.count	{ margin: 40px 0 5px 0; font-size: 18px; }
.count strong	{ color: var(--site-color); font-weight: var(--font-bold); }


/* 페이징 */
.pagejump	{ display: flex; justify-content: center; gap: 10px; margin: 50px 0 0 0; }
.pagejump p	{ display: flex; justify-content: center; gap: 10px; }
.pagejump a	{ display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 50px; border: 1px solid transparent; font-size: 17px; }
.pagejump a:focus, .pagejump a:hover, .pagejump a:active	{ border-color: var(--site-color); color: #000; }
.pagejump a.now	{ border-color: var(--site-color); background-color: var(--site-color); color: #fff; }
.pagejump a.first	{ font-size: 10px; }
.pagejump a.first:after	{ letter-spacing: -15px; content: "◀◀"; }
.pagejump a.first span	{ position: absolute; width: 0; height: 0; font-size: 0; overflow: hidden; }
.pagejump a.prev	{ font-size: 10px; }
.pagejump a.prev:after	{ content: "◀"; }
.pagejump a.prev span	{ position: absolute; width: 0; height: 0; font-size: 0; overflow: hidden; }
.pagejump a.next	{ font-size: 10px; }
.pagejump a.next:after	{ content: "▶"; }
.pagejump a.next span	{ position: absolute; width: 0; height: 0; font-size: 0; overflow: hidden; }
.pagejump a.end	{ font-size: 10px; }
.pagejump a.end:after	{ letter-spacing: -15px; content: "▶▶"; }
.pagejump a.end span	{ position: absolute; width: 0; height: 0; font-size: 0; overflow: hidden; }


@media all and ( max-width: 768px )
{
	.pagejump a	{ width: 30px; height: 30px; font-size: 14px; }
}


/* 작성 폼 */
form[method="post"] table td	{ text-align: left; }
form[method="post"] input[type="radio"],
form[method="post"] input[type="checkbox"]	{ width: 20px; height: 20px; margin: 2px 0; vertical-align: middle; }
form[method="post"] input[type="text"],
form[method="post"] input[type="password"],
form[method="post"] input[type="file"],
form[method="post"] select	{ position: relative; max-width: 100%; height: 48px; padding: 0 20px; margin: 2px 0; border: 1px solid #ddd; appearance: none; font-size: 16px; font-weight: var(--font-sami-bold); }
form[method="post"] input[type="file"]	{ padding: 10px; }
form[method="post"] input[type="radio"] + label,
form[method="post"] input[type="checkbox"] + label	{ display: inline-block; padding: 0 0 0 0.5em; margin: 2px 0; font-size: 1.1em; font-weight: var(--font-sami-bold); cursor: pointer; vertical-align: middle; }
form[method="post"] label + input[type="radio"],
form[method="post"] label + input[type="checkbox"]	{ margin-left: 20px; }
form[method="post"] input[type="text"] + button	{ margin: 0 0 0 10px; }

form[method="post"] table td input[type="text"],
form[method="post"] table td input[type="password"],
form[method="post"] table td input[type="file"]	{ width: 100%; }
form[method="post"] table td input[type="text"][size],
form[method="post"] table td input[type="password"][size],
form[method="post"] table td input[type="file"][size]	{ width: auto; min-width: 70px; }

form[method="post"] table td textarea	{ position: relative; width: 100%; min-height: 100px; padding: 20px; border: 1px solid #ddd; appearance: none; font-size: 16px; font-weight: var(--font-sami-bold); }

#editor_file_upload	{}
#editor_file_upload .list	{}
#editor_file_upload .list ol	{ display: flex !important; flex-wrap: wrap; gap: 20px; }
#editor_file_upload .list ol li	{ flex: 0 1 150px; text-align: center; }
#editor_file_upload .list ol li span,
#editor_file_upload .list ol li img	{ display: flex; align-items: center; justify-content: center; width: 150px; height: 150px; line-height: 1.2; border: 1px solid #333; margin-bottom: 10px; }
#editor_file_upload .list ol li a	{ display: inline-block; line-height: 1; padding: 5px 10px; border: 1px solid #ccc; border-radius: 3px; background-color: #fafafa; font-size: 13px; }
#editor_file_upload .list ol li a + a	{ margin-left: 2px; }
#editor_file_upload .list ol li a:focus, #editor_file_upload .list ol li a:hover, #editor_file_upload .list ol li a:active	{ background-color: #333; color: #fff; }
#editor_file_upload .order	{ display: block; margin: 20px 0 0 0; }
#editor_file_upload .order p	{ line-height: 1.7; margin-bottom: 20px; }
#editor_file_upload .order p strong	{ color: var(--red); font-weight: var(--font-bold); }
#editor_file_upload .order button.fileupload_process	{ min-width: 200px; max-width: 100%; }

@media all and ( max-width: 768px )
{
	form[method="post"] input[type="text"],
	form[method="post"] input[type="file"],
	form[method="post"] select	{ height: 38px; padding: 0 10px; font-size: 1rem; }
	form[method="post"] input[type="file"]	{ padding: 4px; }
}




/* 알림 상자 */
.result_box	{ padding: 45px 0; margin: 40px 0; background-color: var(--site-bg-color); text-align: center; }
.result_box strong	{ font-size: 28px; }
.result_box div	{ margin-top: 10px; }
.result_box p	{ margin: 10px 0; }
.result_box p:nth-child(2)	{ font-size: 24px; font-weight: var(--font-sami-bold); }


.noti_box	{ padding: 40px; margin: 0 0 40px 0; background-color: #f8f9fb; text-align: left; font-size: 1rem; color: #333; }


.description_box	{ padding: 30px; margin: 40px 0; border: 1px solid #ccc; background-color: #fafafa; text-align: left; }
.description_box:after	{ display: block; clear: both; content: ""; }
.description_box + .agree_box	{ margin: -20px 0 40px 0; }
h2 + .description_box,
h3 + .description_box,
h4 + .description_box,
h5 + .description_box,
h6 + .description_box	{ margin-top: 0; }

@media all and ( max-width: 768px )
{
	.result_box	{ padding: 10px; margin: 20px 0; }
	.result_box strong	{ font-size: 1.2rem; }
	.result_box div	{ margin-top: 5px; }
	.result_box p	{ margin: 5px 0; }
	
	.description_box	{ padding: 10px; margin: 20px 0; }
}




/* 여백 */
.mt0	{ margin-top: 0px; }
.mt5	{ margin-top: 5px; }
.mt10	{ margin-top: 10px; }
.mt20	{ margin-top: 20px; }
.mt30	{ margin-top: 30px; }
.mt40	{ margin-top: 40px; }
.mt50	{ margin-top: 50px; }
.mt60	{ margin-top: 60px; }
.mt70	{ margin-top: 70px; }
.mt80	{ margin-top: 80px; }
.mt90	{ margin-top: 90px; }
.mt100	{ margin-top: 100px; }

.mb0	{ margin-bottom: 0px; }
.mb5	{ margin-bottom: 5px; }
.mb10	{ margin-bottom: 10px; }
.mb20	{ margin-bottom: 20px; }
.mb30	{ margin-bottom: 30px; }
.mb40	{ margin-bottom: 40px; }
.mb50	{ margin-bottom: 50px; }
.mb60	{ margin-bottom: 60px; }
.mb70	{ margin-bottom: 70px; }
.mb80	{ margin-bottom: 80px; }
.mb90	{ margin-bottom: 90px; }
.mb100	{ margin-bottom: 100px; }

.ml0	{ margin-left: 0px; }
.ml5	{ margin-left: 5px; }
.ml10	{ margin-left: 10px; }
.ml20	{ margin-left: 20px; }
.ml30	{ margin-left: 30px; }
.ml40	{ margin-left: 40px; }
.ml50	{ margin-left: 50px; }
.ml60	{ margin-left: 60px; }
.ml70	{ margin-left: 70px; }
.ml80	{ margin-left: 80px; }
.ml90	{ margin-left: 90px; }
.ml100	{ margin-left: 100px; }

.mb0	{ margin-right: 0px; }
.mb5	{ margin-right: 5px; }
.mb10	{ margin-right: 10px; }
.mb20	{ margin-right: 20px; }
.mb30	{ margin-right: 30px; }
.mb40	{ margin-right: 40px; }
.mb50	{ margin-right: 50px; }
.mb60	{ margin-right: 60px; }
.mb70	{ margin-right: 70px; }
.mb80	{ margin-right: 80px; }
.mb90	{ margin-right: 90px; }
.mb100	{ margin-right: 100px; }


.w10p	{ max-width: 10% !important; }
.w20p	{ max-width: 20% !important; }
.w30p	{ max-width: 30% !important; }
.w40p	{ max-width: 40% !important; }
.w50p	{ max-width: 50% !important; }
.w60p	{ max-width: 60% !important; }
.w70p	{ max-width: 70% !important; }
.w80p	{ max-width: 80% !important; }
.w90p	{ max-width: 90% !important; }
.w100p	{ max-width: 100% !important; }



 .in_width_1	{ display: flex; }
 .in_width_1 > *	{ flex: 0; }
 .in_width_2	{ display: flex; flex-wrap: wrap; gap: 10px; }
 .in_width_2 > *	{ flex: 1 1 40%; }
 .in_width_3	{ display: flex; flex-wrap: wrap; gap: 10px; }
 .in_width_3 > *	{ flex: 1 1 30%; }
 .in_width_4	{ display: flex; flex-wrap: wrap; gap: 10px; }
 .in_width_4 > *	{ flex: 1 1 20%; }
 .in_width_5	{ display: flex; flex-wrap: wrap; gap: 10px; }
 .in_width_5 > *	{ flex: 1 1 16%; }

@media all and ( max-width: 768px )
{
	.w10p, .w20p, .w30p, .w40p, .w50p, .w60p, .w70p, .w80p, .w90p, .w100p	{ max-width: 100% !important; }
}

.line	{ display: block; }
.line + .line	{ margin-top: 10px; }
.input_box	{ display: inline-block; }
.input_box + .input_box	{ display: inline-block; margin-left: 10px; }
 
 
 
 
/* 내용 */
.contents_content	{}
.contents_content:after	{ display: block; clear: both; content: "";  }

.contents_content > *	{ margin: 20px 0; }
.contents_content > *:first-child	{ margin-top: 0 !important; }

.contents_content h3	{ display: flex; align-items: center; gap: 8px; margin: 80px 0 15px 0; font-size: 25px; font-weight: 700; }
.contents_content h3:before	{ display: block; width: 10px; height: 10px; border: 2px solid #3D5688; border-radius: 50%; content: ""; }

.contents_content h4	{ margin: 30px 0 15px 0; font-size: 20px; font-weight: 600; }

.contents_content ul > li	{ position: relative; padding-left: 10px; }
.contents_content ul > li:before	{ position: absolute; left: 0; top: calc(0.5em + 1px); width: 3px; height: 3px; border-radius: 50%; background-color: var(--black); content: ""; }
.contents_content ol	{ padding-inline-start: 40px; }
.contents_content ol > li	{ list-style-type: decimal; list-style-position: outside; }

.contents_content img	{ max-width: 100%; }

.contents_content table tbody tr td	{ text-align: left; }


@media all and ( max-width: 768px )
{
	.contents_content h3	{ margin-top: 40px; font-size: 20px; }
	.contents_content h4	{ margin-top: 24px; font-size: 18px; }
}





/* 게시판 */
@media all and ( max-width: 768px )
{
	.modules_board .proc_read .read_header h3	{ padding: 15px !important; }
	.modules_board .proc_read .read_header dl	{ height: auto !important; }
	.modules_board .proc_read .read_header dl dt	{ flex: 0 0 20% !important; height: 40px !important; }
	.modules_board .proc_read .read_header dl dd	{ flex: 0 0 80% !important; justify-content: flex-start !important; height: 40px !important; padding-left: 10px !important; }
}





.contents_sitemap	{}
.contents_sitemap ul	{ padding: 0; margin: 0; list-style: none; }
.contents_sitemap ul:after	{ display: block; clear: both; content: ""; }
.contents_sitemap ul li	{ padding: 0; margin: 0; list-style: none; }

.contents_sitemap .ld1	{}
.contents_sitemap .ld1 .cd1	{ float: left; width: 33%; padding: 0; margin-bottom: 50px; background: none; }
.contents_sitemap .ld1 .cd1c1	{ display: none; }
.contents_sitemap .ld1 .cd1:nth-child(3n + 2)	{ clear: left; }
.contents_sitemap .ld1 .cd1 .l1	{ display: block; line-height: 25px; padding: 15px 0 15px 5px; margin-right: 30px; font-size: 20px; font-weight: 600; border-bottom: 2px solid #111; }

.contents_sitemap .ld2	{ margin-right: 30px;  }
.contents_sitemap .ld2 .cd2	{ padding: 0; background: none; }
.contents_sitemap .ld2 .cd2 .l2	{ display: block; line-height: 20px; padding: 15px 0 15px 5px; border-bottom: 1px solid #e1e1e1; font-size: 16px; }

.contents_sitemap .lb1	{ display: block !important; height: auto !important; overflow: visible !important; }

.contents_sitemap .ld3	{ display: none; }
@media all and ( max-width: 669px )
{
	.contents_sitemap .ld1 .cd1	{ width: 50%; }
	.contents_sitemap .ld1 .cd1:nth-child(3n + 2)	{ clear: none; }
	.contents_sitemap .ld1 .cd1:nth-child(2n + 2)	{ clear: left; }
}

@media all and ( max-width: 400px )
{
	.contents_sitemap .ld1 .cd1	{ float: none !important; clear: both !important; width: auto !important; }
}