@charset "UTF-8";
/* CSS Document */
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, article, aside, canvas,
details, embed, figure, figcaption, footer, header, hgroup, menu, nav,
output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	text-decoration: none;
	list-style: none;
	font-style: normal;
}

html {
	scroll-behavior: smooth;
}

html, body {
	font-family: "Noto Sans KR", "맑은 고딕", "Malgun Gothic", sans-serif;
	font-size: 14px;
	font-weight: 400;
	color: #333;
	line-height: 1;
	width: 100%;
	height: 100%;
	word-wrap: break-word;
	word-break: keep-all;
	letter-spacing: -0.5px;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {
	display: block;
}

blockquote, q {
	quotes: none;
}

blockquote::before, blockquote::after, q::before, q::after {
	content: "";
}

table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}

* {
	box-sizing: border-box;
}

a {
	color: #333;
	text-decoration: none;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
}

select {
	position: relative;
	width: 100%;
	min-width: 150px;
	font-family: "Noto Sans KR", "맑은 고딕", "Malgun Gothic", sans-serif;
	height: 34px;
	line-height: 34px;
	font-size: 14px;
	color: #333;
	border: 1px solid #dbdbe8;
	appearance: none;
	padding: 0 30px 0 10px;
	vertical-align: middle;
	border-radius: 3px;
	background: #fff url(/static/image/bg/bg-select.svg) right 10px center/7px no-repeat;
}

select::-ms-expand {
	display: none;
}

select[disabled] {
	background: #eff1f5 url(/static/image/bg/bg-select.svg) right 10px center/7px no-repeat;
}

input[type="checkbox"], input[type="radio"] {
	display: none;
	z-index: -1;
}

input[type="checkbox"] + label {
	position: relative;
	letter-spacing: -1px;
	padding-left: 16px;
}

input[type="radio"] + label {
	position: relative;
	letter-spacing: -1px;
	padding-left: 22px;
}

input[type="checkbox"].chk_text + label {
	padding-left: 22px;
}

input[type="checkbox"] + label::before {
	width: 16px;
	height: 16px;
	line-height: 16px;
	position: relative;
	left: 0;
	font-size: 16px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	border-radius: 50px;
	overflow: hidden;
}

input[type="checkbox"].chk_text + label::before {
	margin-right: 16px;
	margin-bottom: 2px;
}

input[type="checkbox"] + label::before {
	content: "";
	position: absolute;
	display: inline-block;
	color: #dbdbe8;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	vertical-align: middle;
}

input[type="radio"] + label::before {
	content: "";
	position: absolute;
	margin: 1px 0 0 -20px;
	background: url(/static/image/icon/ic-square.svg) no-repeat;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s; 
}

input[type="checkbox"]:checked + label, 
input[type="radio"]:checked + label {
	position: relative;
}

input[type="checkbox"]:checked + label::before {
	content: "";
	position: absolute;
	display: inline-block;
	color: #3e50c5;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	background: #fff;
	vertical-align: middle;
}

input[type="radio"]:checked + label::before {
	content: "";
	background-image: url(/static/image/icon/ic-check-square.svg)
}

input[type="tel"], 
input[type="time"], 
input[type="text"], 
input[type="password"],
input[type="search"], 
input[type="email"], 
/* input[type="file"],  */
input[type="url"],
input[type="number"] {
	box-sizing: border-box;
	width: 100%;
	font-family: "Noto Sans KR", "맑은 고딕", "Malgun Gothic", sans-serif;
	font-size: 14px;
	height: 34px;
	border: 1px solid #dbdbe8;
	background: #fff;
	text-indent: 10px;
	padding-right: 10px;
	vertical-align: middle;
	border-radius: 3px;
	padding-bottom: 2px;
}

input[type="date"] {
	width: 100%;
	font-family: "Noto Sans KR", "맑은 고딕", "Malgun Gothic", sans-serif;
	font-size: 14px;
	height: 34px;
	border: 1px solid #dbdbe8;
	background: #fff;
	text-indent: 4px;
	padding-right: 5px;
	vertical-align: middle;
	border-radius: 3px;
	color: #8b949e;
}

input[type="date"]::-webkit-clear-button, 
input[type="date"]::-webkit-inner-spin-button {
	display: none;
}

input[type="date"]::-webkit-calendar-picker-indicator {
	color: rgba(0, 0, 0, 0);
	opacity: 1;
	display: block;
	position: relative;
	right: 0px;
	top: 0px;
	background: url(/static/image/icon/ic-calendar.svg) center center/contain no-repeat;
	width: 13px;
	height: 13px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
}

input[type="date"]::-webkit-calendar-picker-indicator:hover {
	background: url(/static/image/icon/ic-calendar-hover.svg) center center/contain no-repeat;
}

textarea {
	padding: 10px;
	width: 100%;
	font-family: "Noto Sans KR", "맑은 고딕", "Malgun Gothic", sans-serif;
	font-size: 14px;
	border: 1px solid #dbdbe8;
	background: #fff;
	vertical-align: middle;
	resize: none;
	height: 150px;
}

button:focus, 
select:focus, 
textarea:focus, 
input:focus {
	outline: none;
	-webkit-appearance: none;
}

input[type="tel"][readonly], 
input[type="text"][readonly], 
input[type="password"][readonly],
input[type="email"][readonly], 
input[type="search"][readonly], 
input[type="tel"][disabled],
input[type="text"][disabled], 
input[type="password"][disabled], 
input[type="search"][disabled],
input[type="email"][disabled] {
	background: #eff1f5;
	border-color: #dbdbe8;
	color: #666;
	-webkit-appearance: none;
	font-size: 15px;
	outline: none;
}

input[type="file"] {
	display: none;
}

textarea[readonly], 
textarea[disabled] {
	padding: 5px;
	font-size: 15px;
	color: #eff1f5;
	font-weight: normal;
	line-height: 140%;
	height: 78px;
	background: #eaeaea;
	border: 1px solid #eff1f5;
}

a {
	cursor: pointer;
}

label {
	display: inline-block;
	padding: 10px 15px;
	font-size: 100%;
	font-weight: 400;
	vertical-align: middle;
	cursor: pointer;
}

p {
	margin-bottom: 15px;
	color: #666;
	font-size: 100%;
	line-height: 1.66;
}

span.required {
	vertical-align: middle;
	color: red;
}

.w-100 {
	width: 100% !important;
}

.w-80 {
	width: 80% !important;
}

.w-70 {
	width: 70% !important;
}

.w-60 {
	width: 60% !important;
}

.w-50 {
	width: 50% !important;
}

.w-40 {
	width: 40% !important;
}

.w-30 {
	width: 30% !important;
}

.w-25 {
	width: 25% !important;
}

.w-20 {
	width: 20% !important;
}

.fw-100 {
	flex-basis: 100% !important;
}

/* 텍스트 굵기, 색상 */
.bold {
	font-weight: 700;
}

.bold-m {
	font-weight: 500;
}

.txt-underline {
	text-decoration: underline;
}

.txt-red {
	color: #e40009;
}

.txt-blue {
	color: #3e50c5;
}

.txt-yellow {
	color: #ffc533;
}

.txt-green {
	color: #37bc9b;
}

.txt-gray {
	color: #999999;
}

.txt-gray-dark {
	color: #666666;
}

.txt-link {
	color: #2d2f94;
}

/* 텍스트 정렬 */
.txt-al {
	text-align: left !important;
}

.txt-ac {
	text-align: center !important;
}

.txt-ar {
	text-align: right !important;
}

/* 패딩,마진 스타일 */
.pd-0 {
	padding: 0 !important;
}

.pl-0 {
	padding-left: 0 !important;
}

.pr-0 {
	padding-right: 0 !important;
}

.pt-0 {
	padding-top: 0 !important;
}

.pb-0 {
	padding-bottom: 0 !important;
}

.pd-5 {
	padding: 5px !important;
}

.pl-5 {
	padding-left: 5px !important;
}

.pr-5 {
	padding-right: 5px !important;
}

.pt-5 {
	padding-top: 5px !important;
}

.pb-5 {
	padding-bottom: 5px !important;
}

.pd-10 {
	padding: 10px !important;
}

.pl-10 {
	padding-left: 10px !important;
}

.pr-10 {
	padding-right: 10px !important;
}

.pt-10 {
	padding-top: 10px !important;
}

.pb-10 {
	padding-bottom: 10px !important;
}

.pd-15 {
	padding: 15px !important;
}

.pl-15 {
	padding-left: 15px !important;
}

.pr-15 {
	padding-right: 15px !important;
}

.pt-15 {
	padding-top: 15px !important;
}

.pb-15 {
	padding-bottom: 15px !important;
}

.pd-20 {
	padding: 20px !important;
}

.pl-20 {
	padding-left: 20px !important;
}

.pr-20 {
	padding-right: 20px !important;
}

.pt-20 {
	padding-top: 20px !important;
}

.pb-20 {
	padding-bottom: 20px !important;
}

.pd-25 {
	padding: 25px !important;
}

.pl-25 {
	padding-left: 25px !important;
}

.pr-25 {
	padding-right: 25px !important;
}

.pt-25 {
	padding-top: 25px !important;
}

.pb-25 {
	padding-bottom: 25px !important;
}

.pd-30 {
	padding: 30px !important;
}

.pl-30 {
	padding-left: 30px !important;
}

.pr-30 {
	padding-right: 30px !important;
}

.pt-30 {
	padding-top: 30px !important;
}

.pb-30 {
	padding-bottom: 30px !important;
}

.pd-35 {
	padding: 35px !important;
}

.pl-35 {
	padding-left: 35px !important;
}

.pr-35 {
	padding-right: 35px !important;
}

.pt-35 {
	padding-top: 35px !important;
}

.pb-35 {
	padding-bottom: 35px !important;
}

.pd-40 {
	padding: 40px !important;
}

.pl-40 {
	padding-left: 40px !important;
}

.pr-40 {
	padding-right: 40px !important;
}

.pt-40 {
	padding-top: 40px !important;
}

.pb-40 {
	padding-bottom: 40px !important;
}

.mg-0 {
	margin: 0 !important;
}

.ml-0 {
	margin-left: 0 !important;
}

.mr-0 {
	margin-right: 0 !important;
}

.mt-0 {
	margin-top: 0 !important;
}

.mb-0 {
	margin-bottom: 0 !important;
}

.mg-5 {
	margin: 5px !important;
}

.ml-5 {
	margin-left: 5px !important;
}

.mr-5 {
	margin-right: 5px !important;
}

.mt-5 {
	margin-top: 5px !important;
}

.mb-5 {
	margin-bottom: 5px !important;
}

.mg-10 {
	margin: 10px !important;
}

.ml-10 {
	margin-left: 10px !important;
}

.mr-10 {
	margin-right: 10px !important;
}

.mt-10 {
	margin-top: 10px !important;
}

.mb-10 {
	margin-bottom: 10px !important;
}

.mg-15 {
	margin: 15px !important;
}

.ml-15 {
	margin-left: 15px !important;
}

.mr-15 {
	margin-right: 15px !important;
}

.mt-15 {
	margin-top: 15px !important;
}

.mb-15 {
	margin-bottom: 15px !important;
}

.mg-20 {
	margin: 20px !important;
}

.ml-20 {
	margin-left: 20px !important;
}

.mr-20 {
	margin-right: 20px !important;
}

.mt-20 {
	margin-top: 20px !important;
}

.mb-20 {
	margin-bottom: 20px !important;
}

.mg-25 {
	margin: 25px !important;
}

.ml-25 {
	margin-left: 25px !important;
}

.mr-25 {
	margin-right: 25px !important;
}

.mt-25 {
	margin-top: 25px !important;
}

.mb-25 {
	margin-bottom: 25px !important;
}

.mg-30 {
	margin: 30px !important;
}

.ml-30 {
	margin-left: 30px !important;
}

.mr-30 {
	margin-right: 30px !important;
}

.mt-30 {
	margin-top: 30px !important;
}

.mb-30 {
	margin-bottom: 30px !important;
}

.mg-35 {
	margin: 35px !important;
}

.ml-35 {
	margin-left: 35px !important;
}

.mr-35 {
	margin-right: 35px !important;
}

.mt-35 {
	margin-top: 35px !important;
}

.mb-35 {
	margin-bottom: 35px !important;
}

.mg-40 {
	margin: 40px !important;
}

.ml-40 {
	margin-left: 40px !important;
}

.mr-40 {
	margin-right: 40px !important;
}

.mt-40 {
	margin-top: 40px !important;
}

.mb-40 {
	margin-bottom: 40px !important;
}

.mg-45 {
	margin: 45px !important;
}

.ml-45 {
	margin-left: 45px !important;
}

.mr-45 {
	margin-right: 45px !important;
}

.mt-45 {
	margin-top: 45px !important;
}

.mb-45 {
	margin-bottom: 45px !important;
}

.mg-50 {
	margin: 50px !important;
}

.ml-50 {
	margin-left: 50px !important;
}

.mr-50 {
	margin-right: 50px !important;
}

.mt-50 {
	margin-top: 50px !important;
}

.mb-50 {
	margin-bottom: 50px !important;
}

/* 간격 스타일 */
.space-5 {
	height: 5px;
}

.space-10 {
	height: 10px;
}

.space-15 {
	height: 15px;
}

.space-20 {
	height: 20px;
}

.space-25 {
	height: 25px;
}

.space-30 {
	height: 30px;
}

.space-35 {
	height: 35px;
}

.space-40 {
	height: 40px;
}

.space-45 {
	height: 45px;
}

.space-50 {
	height: 50px;
}
