/************************************************************************************************************************/
/* 설정 초기화 */

@charset "utf-8";

* {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
:after, :before {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}

@font-face {
    font-family: 'InfinitySans-RegularA1';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@2.1/InfinitySans-RegularA1.woff') format('woff');
    font-weight: normal;
    font-style: normal;
	font-size: 16px;
}

@font-face {
    font-family: 'Pretendard-Regular';
    src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
	font-size: 16px;
}

html {overflow-y: scroll;}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small,
strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form,
label, legend, table, caption, tbody, tfoot, thead, tr, th, td, input, textarea, button,
article, aside, canvas, details, embed, figure, figcaption, footer, header, menu, select,
nav, main, output, ruby, section, summary, time, mark, audio, video {margin: 0; padding: 0; box-sizing: border-box;}

body, div, p, a, ul, ol, li, input, select, label, textarea, button, table, th, td, dl, dt, dd {
	/*font-family: Noto, "Noto Sans KR", "맑은 고딕", Malgun Gothic, "돋움", Dotum, "굴림", Gulim, Tahoma, Verdana, AppleGothic, UnDotum, sans-serif;*/
	font-family: 'Pretendard-Regular', 'InfinitySans-RegularA1', 'Noto Sans KR','Open Sans', AppleGothic, helvetica, sans-serif;
	line-height: 1.75rem; font-size: 1.000rem; /*word-break: keep-all;*/ color: #222;
}

header, main, footer {display: block; position: relative; width: 100%; height: auto;}
hgroup, article, nav, figure, figcaption, canvas, section, time {display: block;}
ol, ul {list-style: none;}
table {border-collapse: collapse;}
button {cursor: pointer;}
label {cursor: pointer;}

a {
	color: inherit;
	text-decoration: none;
	-webkit-transition: all 0.25s ease-in-out;
	   -moz-transition: all 0.25s ease-in-out;
		-ms-transition: all 0.25s ease-in-out;
		 -o-transition: all 0.25s ease-in-out;
			transition: all 0.25s ease-in-out;
}
a:hover, a:active {
	-webkit-transition: all 0.25s ease-in-out;
	   -moz-transition: all 0.25s ease-in-out;
		-ms-transition: all 0.25s ease-in-out;
		 -o-transition: all 0.25s ease-in-out;
			transition: all 0.25s ease-in-out;
}

::-webkit-input-placeholder {color: #999;}
:-moz-placeholder {color: #999;}
::-moz-placeholder {color: #999;}
:-ms-input-placeholder {color: #999;}
:placeholder-shown {color: #999;}

/* input type 속성 설정 */
.inp_txt, .inp_pwd {width: 100%; min-height: 40px; padding: 0 10px; border: 1px solid #eee;}
.inp_radio, .inp_chkbox {position: relative; top: 5px; width: 20px; height: 20px; margin: 0 5px;}

/* selectbox 속성 설정 */
.select_box {width: 100%; min-width: 120px; max-width: 200px; min-height: 40px; outline: none; border: 1px solid #eee; padding-left: 10px;}
.select_box:focus-visible {border: 2px solid #222;}

/* textarea 속성 설정 */
.textarea {width: 100%; min-height: 150px; padding: 10px; border: 1px solid #eee; resize: vertical;}
.textarea_m {width: 100%; min-height: 50px; padding: 10px; border: 1px solid #eee; resize: vertical;}


/* input 밑줄 추가 */
.add_bdr_btm {border: none; border-bottom: 1px solid #222;}

/* input 상하단 여백 추가 */
.add_mg_top {margin-top: 10px;}
.add_mg_btm {margin-bottom: 10px;}


/* 폰트 기본 설정 */
.txt_xs {font-size: 0.750rem;} /* 12px */
.txt_s {font-size: 0.875rem;} /* 14px */
.txt_m {font-size: 1.000rem;} /* 16px */
.txt_l {font-size: 1.125rem;} /* 18px */
.txt_xl {font-size: 1.250rem;} /* 20px */
.txt_2xl {font-size: 1.500rem;} /* 24px */
.txt_3xl {font-size: 1.875rem;} /* 30px */
.txt_4xl {font-size: 2.250rem;} /* 36px */

/* 폰트 효과 설정 */
.line {text-decoration: underline;}
.bold {font-weight: 700;}
.red {color: #f00;}
.gray {color: #999;}
.indent {text-indent: 0.750em;}
.stress {color: #e03a3e;}
.clear {content: ""; display: block; clear: both;}
.pointer {cursor: pointer;}

.left {text-align: left;}
.center {text-align: center;}
.right {text-align: right;}

/* 너비 설정 */
.w_10 {width: 10%;}
.w_20 {width: 20%;}
.w_30 {width: 30%;}
.w_40 {width: 40%;}
.w_50 {width: 50%;}
.w_60 {width: 60%;}
.w_70 {width: 70%;}
.w_80 {width: 80%;}
.w_90 {width: 90%;}
.w_100 {width: 100%;}
.w_300 {width: 300px;}

/* 상하좌우 여백 설정 */
.mgt_10 {margin-top: 10px;}
.mgt_20 {margin-top: 20px;}
.mgt_30 {margin-top: 30px;}
.mgt_50 {margin-top: 50px;}
.mgt_100 {margin-top: 100px;}
.mgr_10 {margin-right: 10px;}
.mgr_20 {margin-right: 20px;}
.mgr_30 {margin-right: 30px;}
.mgr_50 {margin-right: 50px;}
.mgr_100 {margin-right: 100px;}
.mgb_10 {margin-bottom: 10px;}
.mgb_20 {margin-bottom: 20px;}
.mgb_30 {margin-bottom: 30px;}
.mgb_50 {margin-bottom: 50px;}
.mgb_100 {margin-bottom: 100px;}
.mgl_10 {margin-left: 10px;}
.mgl_20 {margin-left: 20px;}
.mgl_30 {margin-left: 30px;}
.mgl_50 {margin-left: 50px;}
.mgl_100 {margin-left: 100px;}


/************************************************************************************************************************/

/* 버튼 기본 설정 */
.btn_wrap {width: 100%; margin-top: 30px;}
.btn_wrap_lt, .btn_wrap_ct, .btn_wrap_rt {width: 100%; margin-top: 30px;}
.btn_wrap_lt {text-align: left;}
.btn_wrap_ct {text-align: center;}
.btn_wrap_rt {text-align: right;}
.btn {
	background: #333; color: #fff; min-height: 40px; padding: 0px 20px; margin: 5px;
	border: none; border-radius: 5px; cursor: pointer; transition: all 0.25s; letter-spacing: -0.3px;
}
.btn:active, .btn:hover, .btn:focus {background: #e03a3e; color: #fff;}

.btn_gray {
	background: #eee; color: #222; min-height: 40px; padding: 0px 20px; margin: 5px;
	border: none; border-radius: 5px; cursor: pointer; transition: all 0.25s; letter-spacing: -0.3px;
}
.btn_gray:active, .btn_gray:hover, .btn_gray:focus {background: #ccc;}

.btn_wide {
	background: #333; color: #fff; width: 100%; max-width: 400px; min-height: 50px;
	border: none; border-radius: 5px; cursor: pointer; transition: all 0.25s; letter-spacing: -0.3px;
}
.btn_wide:active, .btn_wide:hover, .btn_wide:focus {background: #e03a3e; color: #fff;}


/************************************************************************************************************************/

/* 참고사항 박스 */
.refer_wrap {width: 100%; height: auto; padding: 20px; margin: 20px 0; background: #f5f5f5;}
.refer_wrap_lt, .refer_wrap_ct, .refer_wrap_rt {width: 100%; height: auto; padding: 20px; margin: 20px 0; background: #f5f5f5;}
.refer_wrap_lt {text-align: left;}
.refer_wrap_ct {text-align: center;}
.refer_wrap_rt {text-align: right;}


/************************************************************************************************************************/

/* 테이블 - 기본형 */
.main_tbl, .tbl_view, .tbl_write {width: 100%; height: auto; border-top: 1px solid #222; border-bottom: 1px solid #222;}
.main_tbl tr, .tbl_view tr, .tbl_write tr {border-bottom: 1px solid #eee;}
.main_tbl tr:last-child, .tbl_view tr:last-child, .tbl_write tr:last-child {border-bottom: 1px solid #222;}
.main_tbl th, .main_tbl td {font-size: 1.000rem; min-height: 50px; padding: 10px; vertical-align: middle; text-align: center;}
.main_tbl th {background: #f5f5f5;}
.main_tbl td {background: #fff;}

/* 테이블 - 내용보기 */
.tbl_view td {text-align: left;}
.tbl_view ul li {display: inline-block; margin-right: 30px;}
.tbl_view ul li span {color: #222; margin-left: 10px;}
.tbl_view .tbl_view_detail {padding: 20px;}
.tbl_view .tbl_view_detail img {max-width: 100%; height: auto;}


/* 테이블 - 내용쓰기 */
.tbl_write th, .tbl_write td {min-height: 50px;}
.tbl_write th {width: 20%;}
.tbl_write td {text-align: left;}
.tbl_write .radio_box {display: flex; flex-flow: row wrap; justify-content: flex-start; align-items: center; min-height: 70px;}
.tbl_write .radio_box div {display: inline-block; margin-right: 20px;}

/* 테이블 - 내용보기 - 답변글 */
.tbl_reply {width: 100%; margin-top: 100px; padding: 20px; border-top: 1px solid #e03a3e; background: #fff;}


/************************************************************************************************************************/
/* modal popup setting */

/* 모달 팝업 기본 설정 : bg + show → pop_wrap → pop */

.modal_bg {position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background: rgba(0, 0, 0, .7);	z-index: -1; opacity: 0; display: none;}
.modal_bg_show {z-index: 999; opacity: 1; transition: all 0.25s;}

.modal_wrap {position: relative; width: 100%; height: 100%;}
.modal_pop {width: 90%; max-width: 1200px; height: auto; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -40%); background: #fff; padding: 30px;}
.modal_bg_show .modal_pop {transform: translate(-50%, -50%); transition: all 0.25s;}
.modal_pop .btn_close_wrap {position: absolute; top: 30px; right: 30px; z-index: 999;}
.modal_pop .ttl_wrap {text-align: center; padding: 20px 0;}

.pop_management .modal_pop, .pop_reject .modal_pop {max-width: 600px;}


/************************************************************************************************************************/

/* 섹션 영역 기본 설정(기본 단 설정) */
.section_wrap {position: relative; width: 100%; height: auto; margin-bottom: 50px;}
.section_wrap:first-child {margin-top: 50px;}
.section_wrap:last-child {margin-bottom: 100px;}
.section {position: relative; width: 100%; max-width: 1260px; margin: 0 auto; padding-left: 30px; padding-right: 30px;}

