@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Outfit:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Play:wght@400;700&display=swap');

:root{
	/*color*/
	--c-main:#d12127;
	--c-2:#17469e;
	--c-dark:#242424;

	/*font-family*/
	--font-abril:"abril-fatface", serif;
	--font-outfit:"Outfit", sans-serif;
	--font-play:"Play", sans-serif;
	
	/*size*/
	--size180-80:clamp(5rem, 1.875rem + 7.8125vw, 11.25rem);
	--size150-80:clamp(5rem, 2.8125rem + 5.4688vw, 9.375rem);
	--size150-40:clamp(2.5rem, -0.9375rem + 8.5938vw, 9.375rem);
	--size150-30:clamp(1.875rem, -1.875rem + 9.375vw, 9.375rem);
	--size150-10:clamp(0.625rem, -3.75rem + 10.9375vw, 9.375rem);
	--size140-60:clamp(3.75rem, 1.25rem + 6.25vw, 8.75rem);
	--size140-40:clamp(2.5rem, -0.625rem + 7.8125vw, 8.75rem);
	--size130-60:clamp(3.75rem, 1.5625rem + 5.4688vw, 8.125rem);
	--size130-50:clamp(3.125rem, 0.625rem + 6.25vw, 8.125rem);
	--size120-60:clamp(3.75rem, 1.875rem + 4.6875vw, 7.5rem);
	--size110-60:clamp(3.75rem, 2.1875rem + 3.9063vw, 6.875rem);
	--size100-60:clamp(3.75rem, 2.5rem + 3.125vw, 6.25rem);
	--size100-50:clamp(3.125rem, 1.5625rem + 3.9063vw, 6.25rem);
	--size100-40:clamp(2.5rem, 0.6250rem + 4.6875vw, 6.25rem);
	--size100-30:clamp(1.875rem, -0.3125rem + 5.4688vw, 6.25rem);
	--size100-15:clamp(0.9375rem, -1.7188rem + 6.6406vw, 6.25rem);
	--size90-40:clamp(2.5rem, 0.9375rem + 3.9063vw, 5.625rem);
	--size80-60:clamp(3.75rem, 3.125rem + 1.5625vw, 5rem);
	--size80-50:clamp(3.125rem, 2.1875rem + 2.3438vw, 5rem);
	--size80-40:clamp(2.5rem, 1.2500rem + 3.1250vw, 5rem);
	--size80-20:clamp(1.25rem, -0.6250rem + 4.6875vw, 5rem);
	--size75-20:clamp(1.25rem, -0.4688rem + 4.2969vw, 4.6875rem);
	--size70-40:clamp(2.5rem, 1.5625rem + 2.3438vw, 4.375rem);
	--size70-20:clamp(1.25rem, -0.3125rem + 3.9063vw, 4.375rem);
	--size70-10:clamp(0.625rem, -1.25rem + 4.6875vw, 4.375rem);
	--size70-0:clamp(0rem, -2.1875rem + 5.4688vw, 4.375rem);
	--size65-15:clamp(0.9375rem, -0.4688rem + 3.5156vw, 3.75rem);
	--size60-40:clamp(2.5rem, 1.875rem + 1.5625vw, 3.75rem);
	--size60-30:clamp(1.875rem, 0.9375rem + 2.3438vw, 3.75rem);	
	--size60-20:clamp(1.25rem, 0rem + 3.125vw, 3.75rem);
	--size60-10:clamp(0.625rem, -0.9375rem + 3.9063vw, 3.75rem);
	--size60-0:clamp(0rem, -1.875rem + 4.6875vw, 3.75rem);
	--size50-40:clamp(2.5rem, 2.1875rem + 0.7813vw, 3.125rem);
	--size50-20:clamp(1.875rem, 1.25rem + 1.5625vw, 3.125rem);
	--size50-0:clamp(0rem, -1.5625rem + 3.9063vw, 3.125rem);
	--size40-20:clamp(1.25rem, 0.6250rem + 1.5625vw, 2.5rem);
	--size40-10:clamp(0.625rem, -0.3125rem + 2.3438vw, 2.5rem);
	--size30-20:clamp(1.25rem, 0.9375rem + 0.7813vw, 1.875rem);
	--size30-15:clamp(0.9375rem, 0.4688rem + 1.1719vw, 1.875rem);
	--size30-5:clamp(0.3125rem, -0.4688rem + 1.9531vw, 1.875rem);	
	--size25-10:clamp(0.625rem, 0.1563rem + 1.1719vw, 1.5625rem);
	--size25-5:clamp(0.3125rem, -0.3125rem + 1.5625vw, 1.5625rem);
	--size20-10:clamp(0.625rem, 0.3125rem + 0.7813vw, 1.25rem);
	--size20-0:clamp(0rem, -0.625rem + 1.5625vw, 1.25rem);	
	--size17-5:clamp(0.3125rem, -0.0625rem + 0.9375vw, 1.0625rem);
	--size15-10:clamp(0.625rem, 0.4688rem + 0.3906vw, 0.9375rem);
	--size15-5:clamp(0.3125rem, 0rem + 0.7813vw, 0.9375rem);
	--size10-5:clamp(0.3125rem, 0.1563rem + 0.3906vw, 0.625rem);
	--size5-2:clamp(0.125rem, 0.0313rem + 0.2344vw, 0.3125rem);

	/*font-size*/
	--font80-30:clamp(1.875rem, 0.3125rem + 3.9063vw, 5rem);
	--font80-20:clamp(1.25rem, -0.625rem + 4.6875vw, 5rem);
	--font60-20:clamp(1.25rem, 0rem + 3.125vw, 3.75rem);
	--font58-30:clamp(1.875rem, 1rem + 2.1875vw, 3.625rem);
	--font54-28:clamp(1.75rem, 0.9375rem + 2.0313vw, 3.375rem);
	--font54-24:clamp(1.5rem, 0.5625rem + 2.3438vw, 3.375rem);
	--font50-28:clamp(1.75rem, 1.0625rem + 1.7188vw, 3.125rem);
	--font48-24:clamp(1.5rem, 0.75rem + 1.875vw, 3rem);
	--font44-28:clamp(1.75rem, 1.25rem + 1.25vw, 2.75rem);
	--font40-28:clamp(1.75rem, 1.375rem + 0.9375vw, 2.5rem);
	--font40-20:clamp(1.25rem, 0.625rem + 1.5625vw, 2.5rem);
	--font38-22:clamp(1.375rem, 0.8750rem + 1.2500vw, 2.375rem);
	--font36-20:clamp(1.25rem, 0.75rem + 1.25vw, 2.25rem);
	--font32-20:clamp(1.25rem, 0.875rem + 0.9375vw, 2rem);
	--font30-20:clamp(1.25rem, 0.9375rem + 0.7813vw, 1.875rem);
	--font30-16:clamp(1rem, 0.5625rem + 1.0938vw, 1.875rem);
	--font28-18:clamp(1.125rem, 0.8125rem + 0.7813vw, 1.75rem);
	--font26-15:clamp(0.9375rem, 0.5938rem + 0.8594vw, 1.625rem);
	--font24-18:clamp(1.125rem, 0.9375rem + 0.4688vw, 1.5rem);
	--font24-15:clamp(0.9375rem, 0.6563rem + 0.7031vw, 1.5rem);
	--font24-14:clamp(0.875rem, 0.5625rem + 0.7813vw, 1.5rem);
	--font22-15:clamp(0.9375rem, 0.7188rem + 0.5469vw, 1.375rem);
	--font22-14:clamp(0.875rem, 0.625rem + 0.625vw, 1.375rem);
	--font21-16:clamp(1rem, 0.8438rem + 0.3906vw, 1.3125rem);
	--font20-18:clamp(1.125rem, 1.0625rem + 0.1563vw, 1.25rem);
	--font20-16:clamp(1rem, 0.8750rem + 0.3125vw, 1.25rem);
	--font20-14:clamp(0.875rem, 0.6875rem + 0.4688vw, 1.25rem);
	--font18-15:clamp(0.938rem, 0.8445rem + 0.2338vw, 1.125rem);
	--font18-14:clamp(0.875rem, 0.7500rem + 0.3125vw, 1.125rem);
	--font17-14:clamp(0.875rem, 0.7810rem + 0.2350vw, 1.063rem);
	--font16-14:clamp(0.875rem, 0.8125rem + 0.1563vw, 1rem);
	--font15-12:clamp(0.75rem, 0.6563rem + 0.2344vw, 0.9375rem);
	--font14-12:clamp(0.75rem, 0.6875rem + 0.1563vw, 0.875rem);
}

* {-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;}

/* reset */
body,p,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,table,th,td,form,fieldset,legend,input,textarea,button,select,figure,figcaption{margin:0;padding:0}
body,input,textarea,select,button,table{font-family:'Pretendard','Open Sans',AppleGothic,helvetica,sans-serif;font-size:clamp(0.875rem, 0.8125rem + 0.1563vw, 1rem); line-height:1.75em;color:#454545;word-break:keep-all;-webkit-text-size-adjust:none;}
img{border:0;max-width:100%;vertical-align:top;}
ul,ol{list-style:none}
fieldset{border:none}
fieldset legend {overflow:hidden;width:0;height:0;margin:0;padding:0;font-size:0;line-height:0;text-indent:-999em;}
button{cursor:pointer}
header,hgroup,article,nav,footer,figure,figcaption,canvas,section,time{display:block}
hr {clear:both;display:none;}
img[usemap] {border:none; height:auto; max-width:100%; width:auto;}

a{
	color:inherit;
	text-decoration:none;
	-webkit-transition: all 0.2s ease-in-out;
	   -moz-transition: all 0.2s ease-in-out;
		-ms-transition: all 0.2s ease-in-out;
		 -o-transition: all 0.2s ease-in-out;
			transition: all 0.2s ease-in-out;
}
a:hover,
a:active{
	-webkit-transition: all 0.2s ease-in-out;
	   -moz-transition: all 0.2s ease-in-out;
		-ms-transition: all 0.2s ease-in-out;
		 -o-transition: all 0.2s ease-in-out;
			transition: all 0.2s ease-in-out;
}

::-webkit-input-placeholder {color:#878787;}
:-moz-placeholder {color:#878787;}
::-moz-placeholder {color:#878787;}
:-ms-input-placeholder {color:#878787;}
:placeholder-shown {color:#878787;}

table caption {overflow:hidden;width:0;height:0;margin:0;padding:0;font-size:0;line-height:0;text-indent:-999em;}
input[type="radio"], input[type="checkbox"] {vertical-align:middle !important; margin:-.2em 3px 0 0 !important;}
input,select {vertical-align:middle; background:#fff;}
input,textarea,button{-webkit-appearance:none;-webkit-border-radius:0}
input[type='checkbox']{-webkit-appearance:checkbox} 
input[type='radio']{-webkit-appearance:radio}

/* user class */
h1,h2,h3,h4,h5,h6,strong,th,.bold{font-weight:700;}
.semibold {font-weight:500;}
.clear{clear:both;}
.clearfix:after {content:" "; display:block; clear:both;}
.blind {position:absolute;overflow:hidden;width:0;height:0;margin:0;padding:0;font-size:0;line-height:0;}
.pointer {cursor:pointer;}
.input {height:44px; padding:6px 16px; color:#505050; font-size:15px; line-height:1.5em; border:1px solid #ddd;}
.input[readonly] {background-color:#e8e8e8; color:#aaaaaa;}
.input.datepicker {padding-right:40px; background:#fff url('/images/bbs/datepicker_icon.png') right 10px center no-repeat;}
textarea.input {height:auto; padding:13px 16px; overflow:auto; resize:none;}
select.input {padding-right:40px; background:#fff url('/images/bbs/select.png') right 14px center no-repeat; -webkit-appearance:none; -moz-appearance:none; appearance:none;}
select.input::-ms-expand {display:none;}
input[type=file].input {padding:0;}

.mgb2 {margin-bottom:2px !important;}
.mgb3 {margin-bottom:3px !important;}
.mgb4 {margin-bottom:4px !important;}
.mgb5 {margin-bottom:5px !important;}
.mgb6 {margin-bottom:6px !important;}
.mgb7 {margin-bottom:7px !important;}
.mgb8 {margin-bottom:8px !important;}
.mgb9 {margin-bottom:9px !important;}
.mgb10 {margin-bottom:10px !important;}
.mgb15 {margin-bottom:15px !important;}
.mgb20 {margin-bottom:20px !important;}
.mgb30 {margin-bottom:30px !important;}
.mgb40 {margin-bottom:40px !important;}
.mgb50 {margin-bottom:50px !important;}

.fl {float:left;}
.fr {float:right;}

.space-center {text-align:center !important;}
.space-right {text-align:right !important;}
.space-left {text-align:left !important;}

.inline-block {display:inline-block;}

.video-container {position:relative; padding-bottom:56.25%; overflow:hidden;}
.video-container video,
.video-container iframe {position:absolute; top:0; left:0; width:100%; height:100%;}

.radiobox {display:inline-block; position:relative; vertical-align:middle; margin-top:-.2em;}
.radiobox input {position:absolute; top:0; left:0; width:0; height:0; border:0; opacity:0; z-index:-1;}
.radiobox label {display:inline-block;}
.radiobox label:before {content:""; display:inline-block; vertical-align:middle; margin:-.2em 8px 0 0; width:18px; height:18px; background-color:#f4f4f4; border:1px solid #ccc; border-radius:100%;}
.radiobox input:checked + label:before {background:#fff url("/images/bbs/radiobox.png") 50% 50% no-repeat; border-color:#ccc;}
.radiobox input:focus + label:before {outline:2px solid highlight;}

.checkbox {display:inline-block; position:relative; vertical-align:middle; margin-top:-.2em;}
.checkbox input {position:absolute; top:0; left:0; width:0; height:0; border:0; opacity:0; z-index:-1;}
.checkbox label {display:inline-block;}
.checkbox label:before {content:""; display:inline-block; vertical-align:middle; margin:-.2em 8px 0 0; width:18px; height:18px; background-color:#f4f4f4; border:1px solid #ccc;}
.checkbox input:checked + label:before {background:#d12127 url("/images/bbs/checkbox.png") 50% 50% no-repeat; border-color:#d12127;}
.checkbox input:focus + label:before {outline:2px solid highlight;}

.table-responsive {display:block; width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch;}

/* ui datepicker */
.ui-datepicker {display:none; background:#fff; margin-top:2px; border-radius:10px; padding:0 8px 8px; width:250px; box-shadow:0 0 3px rgba(0,0,0,.3);}
.ui-datepicker-header {position:relative; margin:0 -8px 6px; padding:5px 0; background:#eabf1d; border-radius:10px 10px 0 0;}
.ui-datepicker-prev,
.ui-datepicker-next {position:absolute; width:32px; height:32px; top:50%; cursor:pointer; margin-top:-16px; border-radius:100%; overflow:hidden; text-indent:-999em; background-position:50% 50%; background-repeat:no-repeat;}
.ui-datepicker-prev {left:0; background-image:url("/images/bbs/datepicker_prev.png");}
.ui-datepicker-next {right:0; background-image:url("/images/bbs/datepicker_next.png");}
.ui-datepicker-title {text-align:center; color:#fff; font-size:18px; line-height:30px; font-weight:500;}
.ui-datepicker-title select {border:0; margin:-.2em 2px 0; width:70px; height:30px; color:#000; font-size:15px; padding:0 10px 0 6px; vertical-align:middle;}
.ui-datepicker-calendar {width:100%; border-collapse:collapse; border-spacing:0px;}
.ui-datepicker-calendar th {padding:2px 0; text-align:center; font-size:14px; font-weight:500; line-height:30px; color:#222;}
.ui-datepicker-calendar td {padding:0; text-align:center; font-size:13px; font-weight:400; line-height:30px; color:#666;}
.ui-datepicker-calendar .ui-state-default {display:inline-block;width:30px;border-radius:4px;}
.ui-datepicker-calendar .ui-state-hover {background-color:#eee; color:#222;}
.ui-datepicker-calendar .ui-state-active {background-color:#238936; color:#fff;}
.ui-datepicker-other-month .ui-state-default {color:#ccc;}
.ui-datepicker-last {margin-left:-43px;}
.ui-datepicker-trigger {width:44px; height:44px; margin-left:-1px; background:url('/images/bbs/datepicker_icon.png') 50% 50% no-repeat; border:1px solid #aaa; vertical-align:middle; overflow:hidden; text-indent:-999em;}

@media (max-width: 640px) {
	.input.datepicker {background-image:url("../images/bbs/datepicker_icon_x2.png"); background-size:22px auto;}

	.ui-datepicker-prev,
	.ui-datepicker-next {background-size:8px auto;}
	.ui-datepicker-prev {background-image:url("../images/bbs/datepicker_prev_x2.png");}
	.ui-datepicker-next {background-image:url("../images/bbs/datepicker_next_x2.png");}
	.ui-datepicker-trigger {width:38px; height:38px;}
}