@charset "utf-8";
@import url(font.css);

html,body,div,span,applet,section,object,iframe,h1,h2,h3,h4,h5,h6,p,time,figure,article,nav,header,footer,hgroup,video,audio,aside,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,button {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	vertical-align: baseline;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
ol,ul {list-style: none;}
table {border-collapse: separate; border-spacing: 0;}
caption,th,td {text-align: left; font-weight: normal;}
figure,article,header,footer,nav,hgroup,video,audio,aside,main {display: block;}

/* mobile */
/*input, textarea{ -webkit-appearance: none; -webkit-border-radius:0px; border-radius:0px;}*/

/*reset mobile default style*/
body,textarea:focus,input:focus,a:focus {-webkit-tap-highlight-color: rgba(255, 255, 255, 0);}
html{-ms-text-size-adjust: none;-webkit-text-size-adjust: none;text-size-adjust: none;}

/*font
normal : 16px || small : 13px*/
html, body {line-height:1.5; font-size: 16px; color: #000; letter-spacing: -0.025rem; min-width: 340px;}
html {-ms-text-size-adjust: none; -webkit-text-size-adjust: none; text-size-adjust: none; min-width: 320px; width: 100%;}
body {overflow-x: hidden; font-family: 'Pretendard', sans-serif;}
a{color: #111; text-decoration: none;}
img{max-width:100%; vertical-align: middle;}
i{font-style:inherit;}
hr{border:1px dashed #ddd; border-width:0 0 1px 0; margin:20px 0;}
[lang="en"] {font-family: 'Pretendard', sans-serif; letter-spacing: normal;}
ul, dl {font-size: 0;}

*, :after, :before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

input[type=text],input[type=password], textarea {
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	outline: none;
}

/* form control */
input,
select,
textarea,
label{display:inline-block; box-sizing:border-box; width:auto; vertical-align:middle; line-height:1.4; margin: 3px 0; border-radius:0;}
input[type=text],
input[type=tel],
input[type=email],
input[type=password],
input[type=url],
input[type=submit],
input[type=button],
textarea,
select{-webkit-appearance: none;-moz-appearance: none; appearance: none; -moz-box-sizing: border-box; box-sizing: border-box; outline: none; background:transparent; font-family: 'Pretendard', sans-serif;}
select {background:url('/images/page/common/icon_select.png') no-repeat; background-position: calc(100% - 10px) center; background-size: 10px auto;}
input[type=radio]{border-radius: 100%;}
input:disabled,
input:-moz-read-only{background: #ddd;border-color: #ddd;-webkit-box-shadow: none;box-shadow: none;}
input[readonly],
input[readonly]:not(.designChk),
input[readonly]:not(.designRadio),
input[disabled]:not(.designChk),
input[disabled]:not(.designRadio){background:#eee;}
.datepicker[readonly],
.datepicker[disabled]{background-color: #f9f9f9;}
select::-ms-expand{display: none;}
textarea{resize:none;}
input[type=submit],
button{font-size:inherit; font-family: 'Pretendard', sans-serif; cursor: pointer; background-color: transparent;}
input[lang="en"],
textarea[lang="en"],
button[lang="en"] {font-family: 'Pretendard', sans-serif;}

/* 자동완성 배경색 */
input:-webkit-autofill {-webkit-box-shadow: 0 0 0 1000px transparent inset;}
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus, input:-webkit-autofill:active {transition: background-color 5000s ease-in-out 0s;}

.input40{width:40px !important;}
.input60{width:60px !important;}
.input80{width:80px !important;}
.input100{width:100px !important;}
.input200{width:200px !important;}
.input300{width:300px !important;}
.input400{width:400px !important;}
.input500{width:500px !important;}
.inputFull{width:100% !important;}

/* input common */
select, .textar, textarea, input:not([type="radio"],[type="checkbox"]) {display: inline-block; width: 100%; font-size: 1rem; font-weight: 400; color: #000; border: 1px solid #eee; border-radius: 5px; padding: 0 20px; background-color: #fff; width: 100%; min-height: 50px; vertical-align: middle;}
select:focus, .textar:focus, textarea:focus, input:not([type="radio"],[type="checkbox"]):focus {border-color: var(--mitc-main); box-shadow: 0 0 0 3px rgba(202, 31, 28, .1);}
textarea {padding: 20px 20px;}

.input_group {display: flex; align-items: center;}
.input_unit {display: inline-block; vertical-align: middle; color: #666; padding: 0 3px;}

/* color */
:root {
	--mitc-main: #CA1F1C;
	--mitc-sub: #2737cc;
	--mitc-light: #f5f5f5;
	--mitc-gray: #58595b;
}

/* margin */
.mr5{margin-right: 5px !important;}
.mr10{margin-right: 10px !important;}
.mb10 {margin-bottom: 10px !important;}
.mt10 {margin-top: 10px !important;}
.mt20 {margin-top: 20px !important;}
.mt30 {margin-top: 30px !important;}
.mt40 {margin-top: 40px !important;}
.mt50 {margin-top: 50px !important;}
.mt60 {margin-top: 60px !important;}

/* checkbox */
.designChk {display: inline-block;}
.designChk + .designChk {margin-left: 10px;}
.designChk input[type="checkbox"] {width: 18px; height: 18px; vertical-align: top; border: 1px solid #CBD2DC; background-color: #fff; background-image: url('/images/page/common/icon_check.svg'); background-repeat: no-repeat; background-position: 50% 50%; background-size: contain; border-radius: 5px; float: left; margin: 0; margin-top: 4px; appearance: none; -webkit-appearance: none; -moz-appearance: none; transition: all .25s;}
.designChk label {font-size: 1rem; color: var(--mitc-gray); max-width: calc(100% - 18px);}
.designChk label span {display: inline-block; padding-left: 5px;}
.designChk input[type="checkbox"]:checked {background-color: var(--mitc-main); border-color: var(--mitc-main);}
.designChk input[type="checkbox"]:checked + label {color: #000;}
.designChk input[type="checkbox"]:focus {box-shadow: 0 0 0 3px rgba(var(--mitc-main), .25); border-color: var(--mitc-main);}
.designChk input[type="checkbox"]:disabled {cursor: not-allowed; -webkit-filter: none; filter: none; opacity: .5;}
.designChk input[type="checkbox"]:checked:disabled {background-color: var(--mitc-main) !important;}


/* radio button */
.designRadio {display: inline-block;}
.designRadio + .designRadio {margin-left: 10px;}
.designRadio input[type="radio"] {width: 18px; height: 18px; vertical-align: top; border: 1px solid #CBD2DC; background-color: #fff; background-image: url('/images/page/common/icon_radio.svg'); background-repeat: no-repeat; background-position: 50% 50%; background-size: contain; border-radius: 50%; float: left; margin: 0; margin-top: 4px; appearance: none; -webkit-appearance: none; -moz-appearance: none; transition: all .25s;}
.designRadio label {font-size: 1rem; color: var(--mitc-gray); max-width: calc(100% - 18px);}
.designRadio label span {display: inline-block; padding-left: 5px;}
.designRadio input[type="radio"]:checked {background-color: var(--mitc-main); border-color: var(--mitc-main);}
.designRadio input[type="radio"]:checked + label {color: #000;}
.designRadio input[type="radio"]:focus {box-shadow: 0 0 0 3px rgba(var(--mitc-main), .25); border-color: var(--mitc-main);}
.designRadio input[type="radio"]:disabled {cursor: not-allowed; -webkit-filter: none; filter: none; opacity: .5;}
.designRadio input[type="radio"]:checked:disabled {background-color: var(--mitc-main) !important;}

/* file */
.file{position:relative;}
.file input[type="file"]{overflow:hidden; position:absolute; margin:-1px; width:1px; height:1px; clip:rect(0,0,0,0);}

/*table*/
table{border-collapse: collapse; border-spacing: 0;}
table,th,td{border:none;}
caption{overflow:hidden; line-height:0; text-indent:-2000em;}

/* placeholder */
::-webkit-input-placeholder {font-family: 'Pretendard', sans-serif; font-size: inherit;color: #999;}
::-moz-placeholder {font-family: 'Pretendard', sans-serif; font-size: inherit;color: #999;}
:-ms-input-placeholder {font-family: 'Pretendard', sans-serif; font-size: inherit;color: #999;}
input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder {color: transparent;}
input:focus::-moz-placeholder, textarea:focus::-moz-placeholder {color: transparent;}
input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder {color: transparent;}

/*button*/
.btn {display: inline-block; min-width: 80px; height: 50px; line-height: 48px; font-size: 1rem; font-weight: 400; text-align: center; vertical-align: middle; user-select: none; border: 1px solid transparent; background-color: transparent; transition: color .15s; border-radius: 3px; padding: 0 16px; margin: 2px 3px; white-space: nowrap; transition: all .25s;}

.btn-primary {color: #fff; background-color: var(--mitc-main); border-color: var(--mitc-main);}
.btn-danger {color: #fff; background-color: #E51A2F; border-color: #E51A2F;}
.btn-secondary {color: #fff; background-color: #8592A3; border-color: #8592A3;}
.btn-gray {color: #fff; background-color: var(--mitc-gray); border-color: var(--mitc-gray);}
.btn-light {color: #fff; background-color: #dadada; border-color: #dadada;}
.btn-blk{color:#fff; background-color:#111; border-color:#111;}

/* button line */
.btn-line-primary {color: var(--mitc-main); background-color: #fff; border-color: var(--mitc-main);}
.btn-line-danger {color: #E51A2F; background-color: #fff; border-color: #E51A2F;}
.btn-line-success {color: var(--mitc-sub); background-color: #fff; border-color: var(--mitc-sub);}
.btn-line-secondary {color: #8592A3; background-color: #fff; border-color: #8592A3;}
.btn-line-light {color: #111; background-color: #fff; border-color: #dadada;}
.btn-line-blk {color: #111; background-color: #fff; border-color: #000;}

.btn.line_primary {background-color: #fff; color: var(--mitc-main); border-color: var(--mitc-main);}

.btn.sm {min-width: 60px; height: 30px; line-height: 28px; font-size: 13px; padding: 0 10px;}
.btn.lg {min-width: 160px; height: 60px; line-height: 58px; font-size: 18px; padding: 0 20px;}
.btn.xsm {min-width:unset; height:auto; padding:5px 12px; font-size:12px; line-height:12px; background:#fff; border:1px solid #ddd; color:#333;}
.btn.xsm:hover {opacity: .8;}

.btn_wrap {text-align: center; padding-top: 30px;}
.btn_wrap .btn_left{float: left;}
.btn_wrap .btn_right{float: right;}

/* btn hover */
.btn:hover,
.btn:focus{opacity: .8;}
.btn.white:hover,
.btn.white:focus{box-shadow:3px 3px 5px rgba(0,0,0,.1);}

.btn.line_primary:hover,
.btn.line_primary:focus {background-color: var(--mitc-main); color: #fff; opacity: 1;}


/*tac*/
.tac{text-align: center !important;}
.tar{text-align: right !important;}
.tal{text-align: left !important;}

/*color*/
.txt_red{color: var(--mitc-main) !important;}
.txt_blue{color: var(--mitc-sub) !important;}

/* 필수입력 */
.marking:after {content: '*'; color: #E51A2F; vertical-align: top;}

/*wrap*/
.sr_only{overflow:hidden; position:absolute; margin:-1px; width:1px; height:1px; clip:rect(0,0,0,0); font-size: 0;}

/* A11Y */
#skip_menu {position: relative; z-index: 3000}
#skip_menu a {position: absolute; top: -30px; left: 0; width: 138px; border: 1px solid #4ec53d; background: #333; text-align: center}
#skip_menu a:active,
#skip_menu a:focus {top: 0; text-decoration: none; z-index: 1000}
#skip_menu span {display: inline-block; padding: 2px 6px 0 0; line-height: 26px; letter-spacing: -1px; font-size: 13px; color: #fff; white-space: nowrap}

::-moz-selection {background: #222; color: #fff;}
::selection {background: #222; color: #fff;}

/*주석*/
.ellip{overflow:hidden; display:block; width:100%; white-space:nowrap; word-wrap:normal; text-overflow:ellipsis;}
.ellip2{overflow:hidden; display:-webkit-box; line-height:1.4em; max-height:2.8em; -webkit-line-clamp:2; -webkit-box-orient:vertical; word-wrap:break-word; text-overflow:ellipsis;}

.pointer{cursor: pointer;}

/* 게시글 없을 때 */
.nodata {text-align: center;}
.nodata > i {font-size: 60px; color: #999;}
.nodata > p {font-size: 1rem; color: #666; font-weight: 400; margin-top: 10px;}

/* 달력 */
.calendar {width: 100%; min-width: 360px; padding: 40px 20px; margin: 0 auto; border: 2px solid rgba(30, 31, 36, .05); border-radius: 10px;}
.calendar .cal_top {position: relative;}
.calendar .cal_nav {display: flex; justify-content: center; align-items: center;}
.calendar .cal_nav .nav_btn {display: flex; justify-content: center; align-items: center; font-size: 0; width: 50px; height: 50px;}
.calendar .cal_nav .nav_btn:before {content: ''; display: block; width: 10px; height: 10px; border: 3px solid #111; border-width: 3px 3px 0 0;}
.calendar .cal_nav .nav_btn.prev:before {transform: rotate(-135deg);}
.calendar .cal_nav .nav_btn.next:before {transform: rotate(45deg);}

.calendar .cal_state {text-align: center;margin-top: 10px;}
.calendar .cal_state{font-size: 0;}
.calendar .cal_state *{display: inline-block; line-height:1; vertical-align: middle;}
.calendar .cal_state > span{margin-right:10px; font-size: 1rem; color:#666;}
.calendar .cal_state .state{min-width: auto; width: 11px; height: 11px; padding: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; border:2px solid transparent; border-radius:50%; margin-right:6px;}
.calendar .cal_state .state.cal_slt{border:2px solid var(--mitc-sub); background-color: transparent;}
.calendar .cal_state .state.cal_today{background-color: var(--mitc-sub);}
.calendar .cal_state .state.cal_end{background-color: #eee;}
.calendar .cal_state .state.cal_dont{background-color: var(--mitc-gray);}

.calendar .year-month {font-size: 28px; font-weight: 600;}

.calendar .cal_wrap {padding-top: 20px; position: relative; margin: 0 auto;}
.calendar .cal_wrap .day {display: flex; align-items: center; justify-content: center; width: calc(100% / 7); text-align: center; color: #666; font-size: 18px;}
.calendar .cal_wrap .days {display: flex; padding: 20px 0; border-bottom: 1px solid #eee;}
.calendar .cal_wrap .day:first-child {color: #e82c27;}
.calendar .cal_wrap .day:last-child {color: var(--mitc-sub);}
.calendar .cal_wrap .days .day {color: #111; font-weight: 600;}
.calendar .dates .cal_day {display: flex; align-items: center;}
.calendar .dates .cal_day .day {position: relative;}
.calendar .dates .cal_day .day span {position: relative; z-index: 1;}
.calendar .dates .cal_day .day:before {content: ''; display: block; height: 0px; padding-top: 100%;}
.calendar .dates .cal_day .day:after {content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 70%; height: 70%; border-radius: 50%; z-index: 0;}

.calendar .dates .cal_day .day.start,
.calendar .dates .cal_day .day.end {color: #fff;}
.calendar .dates .cal_day .day.start:after{background-color: var(--mitc-sub);}
.calendar .dates .cal_day .day.end:after {background-color: var(--mitc-gray); opacity:0.8;}
.calendar .dates .cal_day .day.start {border-radius: 50% 0 0 50%;}
.calendar .dates .cal_day .day.end {border-radius: 0 50% 50% 0;}
.calendar .dates .cal_day .day.day_ing {background-color: rgba(38, 100, 214, .1);}

.calendar .dates .cal_day .day.today:after {border: 3px solid var(--mitc-sub);}
.calendar .dates .cal_day .day.disable {color: #999;}
.calendar .dates .cal_day .day.disable:after{background:var(--mitc-light);}

/* swiper */
.swiper, .swiper-container {margin-left: auto; margin-right: auto; position: relative; overflow: hidden; list-style: none; padding: 0; z-index: 1; display: block}

/* scroll bar */
::-webkit-scrollbar {width: 6px; height: 6px;}
::-webkit-scrollbar-thumb {background-color: var(--mitc-main);}
::-webkit-scrollbar-track {background-color: #fff;}

/* **************************************** *
 * responsive
 * **************************************** */
@media (max-width:1600px){
	.control_box .ctrl{width: 42px; height: 42px;}
}

@media (max-width:1024px){
	/*font
	normal : 15px
	small : 12px*/
	html, body {line-height:1.5; font-size: 15px; overflow-x: hidden !important;}

	/* input common */
	/* input common */
	select, .textar, textarea, input:not([type="radio"],[type="checkbox"]) {min-height: 40px;}

	.btn {min-width:92px; height: 40px; line-height: 38px;} /*-5*/

	.btn.sm {min-width: 60px; height: 25px; line-height: 23px; font-size: 13px; padding: 0 10px;}
	.btn.lg {min-width: 120px; height: 50px; line-height: 48px; font-size: 16px; padding: 0 20px;}

	.mobile_none{display: none !important;}
	.sr_not_mobile{overflow:visible; position:static; margin:0; width:auto; height:auto; clip:unset;}

	.button{min-width:92px; height:40px;}
	.button span{line-height:38px;}
}
@media (max-width:768px){


}
@media (max-width:576px){
	.input300,
	.input400 {width: 100% !important;}

	.btn_wrap .btn_left,
	.btn_wrap .btn_right {float: none; display: inline-block; vertical-align: middle;}

	.checkbox em {font-size: 1rem;}
	.radio em {font-size: 1rem;}

}

