@charset "utf-8";
@import url('html5_reset.css');
@import url('layout.css');

/********** skip_nav **********/
.skip_nav {position:relative;z-index:1000;display:block;overflow:hidden;height:0;background:#000;text-align:center;}
.skip_nav:focus {overflow:auto;height:auto;padding:5px 0;color:#fff;}

/********** 숨김 **********/
.hide {overflow: hidden; position: absolute; width: 1px; height: 1px; margin: -1px; clip: rect(0 0 0 0);}

/********** overflow-hidden **********/
.overflow-hidden {overflow: hidden;}

/********** color **********/
:root {
	--main-color: #53247e; /* 메인컬러 */
	--sub-color: #1c5ba5; /* 서브컬러 */
	--gray-44: #444444;
	--gray-55: #555555;
	--gray-66: #666666;
	--gray-dd: #dddddd;
	--gray-e5: #e5e5e5;
	--gray-e9: #e9e9e9;
	--gray-f5: #f5f5f5;
	--gray-f9: #f9f9f9;
}

/* background color */
.bg-main-color {background-color: var(--main-color); color: #fff;}
.bg-sub-color {background-color: var(--sub-color); color: #fff;}
.bg-gray-44 {background-color: var(--gray-44); color: #fff;}
.bg-gray-55 {background-color: var(--gray-55); color: #fff;}
.bg-gray-66 {background-color: var(--gray-66); color: #fff;}
.bg-gray-dd {background-color: var(--gray-dd); color: #fff;}
.bg-gray-e5 {background-color: var(--gray-e5); color: #666;}
.bg-gray-e9 {background-color: var(--gray-e9); color: #666;}
.bg-gray-f5 {background-color: var(--gray-f5); color: #666;}
.bg-gray-f9 {background-color: var(--gray-f9); color: #666;}
.bg-white {background-color: #ffffff;}

/* font color */
.fc-main-color {color: var(--main-color);}
.fc-sub-color {color: var(--sub-color);}
.fc-gray-44 {color: var(--gray-44);}
.fc-gray-55 {color: var(--gray-55);}
.fc-gray-66 {color: var(--gray-66);}
.fc-gray-dd {color: var(--gray-dd);}
.fc-gray-e5 {color: var(--gray-e5);}
.fc-gray-e9 {color: var(--gray-e9);}
.fc-gray-f5 {color: var(--gray-f5);}
.fc-gray-f9 {color: var(--gray-f9);}
.fc-fff {color: #fff !important;}

/* border color */
.bd-main-color {border: 1px solid var(--main-color);}
.bd-sub-color {border: 1px solid var(--sub-color);}
.bd-gray-44 {border: 1px solid var(--gray-44);}
.bd-gray-55 {border: 1px solid var(--gray-55);}
.bd-gray-66 {border: 1px solid var(--gray-66);}
.bd-gray-dd {border: 1px solid var(--gray-dd);}
.bd-gray-e5 {border: 1px solid var(--gray-e5);}
.bd-gray-e9 {border: 1px solid var(--gray-e9);}
.bd-gray-f5 {border: 1px solid var(--gray-f5);}
.bd-gray-f9 {border: 1px solid var(--gray-f9);}

/********** table **********/
.tableA {width: 100%; border-collapse: collapse;}
.tableA thead th {padding: 10px 5px; text-align: center; background: var(--gray-f9); border: 1px solid var(--gray-e5);}
.tableA tbody td {padding: 10px 5px; text-align: center; border: 1px solid var(--gray-e5);}

/* 테이블 반응형 */
@media only screen and (max-width: 767px) {
	.table-responsive1 {border-top: 1px solid var(--gray-44);}
	.table-responsive1 colgroup,
	.table-responsive1 thead {display: none;}
	.table-responsive1 tbody tr {border-bottom: 1px solid var(--gray-e5);}
	.table-responsive1 tbody tr:nth-child(even) {background: var(--gray-f9);}
	.table-responsive1 tbody td {display: flex; width: 100%; padding: 8px 10px; text-align: left; border: 0; border-bottom: 1px dashed var(--gray-e9);}
	.table-responsive1 tbody td:last-child {border-bottom: 0;}
	.table-responsive1 tbody td:before {content: attr(data-label); flex-shrink: 0; width: 40px; font-weight: 600;}

	.table-responsive2 {border-top: 1px solid var(--gray-44);}
	.table-responsive2 colgroup,
	.table-responsive2 thead {display: none;}
	.table-responsive2 tbody tr {border-bottom: 1px solid var(--gray-dd);}
	.table-responsive2 tbody td {position: relative; display: block; width: 100%; padding: 50px 10px 10px 10px; text-align: left; border: 0; border-bottom: 1px dashed var(--gray-e9);}
	.table-responsive2 tbody td:last-child {border-bottom: 0;}
	.table-responsive2 tbody td:before {content: attr(data-label); position: absolute; top: 0; left: 0; width: 100%;padding: 8px 10px; font-weight: 600; background: var(--gray-f5);}
}

/********** checkbox & radio **********/
/* inline */
.checkbox-list1 {display: flex; flex-wrap: wrap; margin: 0 -20px -4px 0;}
.checkbox-list1 li {position: relative; margin-right: 20px; margin-bottom: 4px;}

/* block */
.checkbox-list2 li {display: block; position: relative; margin-bottom: 4px;}
.checkbox-list2 li:last-child {margin-bottom: 0;}

input.checkbox-st1 {appearance:none; position: absolute; top: 3px; left: 0; width: 16px; height: 16px; border:none; background:transparent;}
input.checkbox-st1 + label.checkbox-st1 {position: relative; padding-left: 25px; font-size: 1.6rem; color: #444; cursor: pointer;}
input.checkbox-st1 + label.checkbox-st1:before {content: ""; position: absolute; top: 1px; left: 0; width: 16px; height: 16px; border: 1px solid rgba(52,59,66,0.25);}
input.checkbox-st1:checked + label.checkbox-st1 {font-weight: 600;}
input.checkbox-st1:checked + label.checkbox-st1:before {content: ""; position: absolute; top: 1px; left: 0; width: 16px; height: 16px; background: #343b42; border: 1px solid #343b42;}
input.checkbox-st1:checked + label.checkbox-st1:after {content: ""; position:absolute; top:3px; left:6px; width:4px; height:9px; border-right:1px solid #fff; border-bottom:1px solid #fff; border-left:transparent; border-top:transparent; transform:rotate(40deg);}

/********** list **********/
.list1 > li {position: relative; padding-left: 11px;}
.list1 > li:before {content: ""; position: absolute; top: 9px; left: 0; width: 4px; height: 4px; background: var(--main-color); border-radius: 100%;}
.list2 > li {position: relative; padding-left: 11px;}
.list2 > li:before {content: ""; position: absolute; top: 10px; left: 0; width: 5px; height: 1px; background: var(--gray-66);}

.tx-list1 {position: relative; display: block; padding-left: 11px;}
.tx-list1:before {content: ""; position: absolute; top: 9px; left: 0; width: 4px; height: 4px; background: var(--main-color); border-radius: 100%;}
.tx-list2 {position: relative; display: block; padding-left: 11px;}
.tx-list2:before {content: ""; position: absolute; top: 10px; left: 0; width: 5px; height: 1px; background: var(--gray-66);}

/********** tab **********/
.tab-st1 .tab-btn {display: flex; align-items: center;}
.tab-st1 .tab-btn li {margin-right: 18px;}
.tab-st1 .tab-btn li:last-child {margin-right: 0;}
.tab-st1 .tab-btn li a {display: block; font-weight: 500; font-size: 1.7rem; color: #999;}
.tab-st1 .tab-btn li.on a {font-weight: 700; color: var(--main-color);}

/********** btn **********/
/* 버튼 정렬 */
.btn-lf {display: flex; justify-content: flex-start;}
.btn-ce {display: flex; justify-content: center;}
.btn-rg {display: flex; justify-content: flex-end;}

.btn-bace1 {display: inline-block; min-width: 60px; height: 36px; line-height: 36px; padding: 0 10px; text-align: center;}
.btn-bace2 {display: inline-block; min-width: 50px; height: 30px; line-height: 32px; padding: 0 10px; text-align: center; border-radius: 50px;}
.btn-bace3 {display: inline-block; min-width: 120px; height: 42px; line-height: 42px; padding: 0 10px; text-align: center;}
.btn-bace4 {display: inline-block; min-width: 120px; height: 42px; line-height: 42px; padding: 0 15px;}

/* 버튼 화살표 */
.btn-arrow {position: relative; display: inline-block; width: 8px; height: 10px; margin-left: 20px;}
.btn-arrow:before {content: ""; position: absolute; top: 50%; left: 0; width: 6px; height: 2px; margin-top: -3px; transform: rotate(45deg);}
.btn-arrow:after {content: ""; position: absolute; bottom: 50%; left: 0; width: 6px; height: 2px; margin-bottom: -3px; transform: rotate(-45deg);}
.btn-arrow.wh:before, .btn-arrow.wh:after {background: #fff;} /* White Arrow */
.btn-arrow.main-c:before, .btn-arrow.main-c:after {background: var(--main-color);} /* Main Color Arrow */
.btn-arrow.sub-c:before, .btn-arrow.sub-c:after {background: var(--main-color);} /* Sub Color Arrow */

/********** 텍스트 ...처리 **********/
.txt-over1 {display: -webkit-box; display: -ms-flexbox; display: box; overflow: hidden; text-overflow: ellipsis; word-break: break-all; -webkit-box-orient: vertical; -webkit-line-clamp: 1;} /* 1줄 */
.txt-over2 {display: -webkit-box; display: -ms-flexbox; display: box; overflow: hidden; text-overflow: ellipsis; word-break: break-all; -webkit-box-orient: vertical; -webkit-line-clamp: 2;} /* 2줄 */
.txt-over3 {display: -webkit-box; display: -ms-flexbox; display: box; overflow: hidden; text-overflow: ellipsis; word-break: break-all; -webkit-box-orient: vertical; -webkit-line-clamp: 3;} /* 3줄 */
.txt-over10 {display: -webkit-box; display: -ms-flexbox; display: box; overflow: hidden; text-overflow: ellipsis; word-break: break-all; -webkit-box-orient: vertical; -webkit-line-clamp: 10;} /* 10줄 */

/********** 텍스트 정렬 **********/
.text-lf {text-align: left;}
.text-ce {text-align: center;}
.text-rg {text-align: right;}

/********** font-weight **********/
.fc-300 {font-weight: 300;}
.fc-400 {font-weight: 400 !important;}
.fc-500 {font-weight: 500;}
.fc-600 {font-weight: 600;}
.fc-700 {font-weight: 700 !important;}

.inline-block { display: inline-block; }
/********** flex **********/
.flex {display: flex;}
.flex-shrink {flex-shrink: 0;}

/* 정렬 */
.flex-align-center {display: flex; align-items: center;}
.flex-justify-between {display: flex; justify-content: space-between;}
.flex-justify-center {display: flex; justify-content: center;}
.flex-justify-between-center {display: flex; justify-content: space-between; align-items: center;}

/********** gap **********/
.gap5 { gap: 5px; }
.gap10 { gap: 10px; }
.gap15 { gap: 15px; }
.gap20 { gap: 20px; }
.gap25 { gap: 25px; }
.gap30 { gap: 30px; }

/********** width **********/
.wh100p {width: 100%;}
.wh90p {width: 90%;}
.wh80p {width: 80%;}
.wh70p {width: 70%;}
.wh60p {width: 60%;}
.wh50p {width: 50%;}
.wh40p {width: 40%;}
.wh30p {width: 30%;}
.wh20p {width: 20%;}
.wh10p {width: 10%;}
.wh5p {width: 5%;}

/********** margin **********/
.mg0 {margin:0;}
/*** margin_top ***/
.mt-33 {margin-top:-33px;}
.mt0 {margin-top:0;}
.mt3 {margin-top:3px;}
.mt5 {margin-top:5px;}
.mt10 {margin-top:10px;}
.mt15 {margin-top:15px;}
.mt20 {margin-top:20px;}
.mt25 {margin-top:25px;}
.mt30 {margin-top:30px;}
.mt35 {margin-top:35px;}
.mt40 {margin-top:40px;}
.mt45 {margin-top:45px;}
.mt50 {margin-top:50px;}
.mt55 {margin-top:55px;}
.mt60 {margin-top:60px;}
.mt65 {margin-top:65px;}
.mt70 {margin-top:70px;}
.mt75 {margin-top:75px;}
.mt80 {margin-top:80px;}
.mt85 {margin-top:85px;}
.mt90 {margin-top:90px;}
.mt95 {margin-top:95px;}
.mt100 {margin-top:100px;}
/*** margin_bottom ***/
.mb0 {margin-bottom:0;}
.mb5 {margin-bottom:5px;}
.mb10 {margin-bottom:10px;}
.mb15 {margin-bottom:15px;}
.mb20 {margin-bottom:20px;}
.mb25 {margin-bottom:25px;}
.mb30 {margin-bottom:30px;}
.mb35 {margin-bottom:35px;}
.mb40 {margin-bottom:40px;}
.mb45 {margin-bottom:45px;}
.mb50 {margin-bottom:50px;}
.mb55 {margin-bottom:55px;}
.mb60 {margin-bottom:60px;}
.mb65 {margin-bottom:65px;}
.mb70 {margin-bottom:70px;}
.mb75 {margin-bottom:75px;}
.mb80 {margin-bottom:80px;}
.mb85 {margin-bottom:85px;}
.mb90 {margin-bottom:90px;}
.mb95 {margin-bottom:95px;}
.mb100 {margin-bottom:100px;}
/*** margin_left ***/
.ml0 {margin-left:0;}
.ml5 {margin-left:5px;}
.ml10 {margin-left:10px;}
.ml15 {margin-left:15px;}
.ml20 {margin-left:20px;}
.ml25 {margin-left:25px;}
.ml30 {margin-left:30px;}
.ml35 {margin-left:35px;}
.ml40 {margin-left:40px;}
.ml45 {margin-left:45px;}
.ml50 {margin-left:50px;}
.ml55 {margin-left:55px;}
.ml60 {margin-left:60px;}
.ml65 {margin-left:65px;}
.ml70 {margin-left:70px;}
.ml75 {margin-left:75px;}
.ml80 {margin-left:80px;}
.ml85 {margin-left:85px;}
.ml90 {margin-left:90px;}
.ml95 {margin-left:95px;}
.ml100 {margin-left:100px;}
/*** margin_right ***/
.mr0 {margin-right:0;}
.mr5 {margin-right:5px;}
.mr10 {margin-right:10px;}
.mr15 {margin-right:15px;}
.mr20 {margin-right:20px;}
.mr25 {margin-right:25px;}
.mr30 {margin-right:30px;}
.mr35 {margin-right:35px;}
.mr40 {margin-right:40px;}
.mr45 {margin-right:45px;}
.mr50 {margin-right:50px;}
.mr55 {margin-right:55px;}
.mr60 {margin-right:60px;}
.mr65 {margin-right:65px;}
.mr70 {margin-right:70px;}
.mr75 {margin-right:75px;}
.mr80 {margin-right:80px;}
.mr85 {margin-right:85px;}
.mr90 {margin-right:90px;}
.mr95 {margin-right:95px;}
.mr100 {margin-right:100px;}

@media only screen and (max-width: 560px) {
	.mt60 {margin-top: 30px;}
}

/******************** padding ********************/
.pd0 {padding:0;}
/*** padding_top ***/
.pt0 {padding-top:0;}
.pt5 {padding-top:5px;}
.pt10 {padding-top:10px;}
.pt15 {padding-top:15px;}
.pt20 {padding-top:20px;}
.pt25 {padding-top:25px;}
.pt30 {padding-top:30px;}
.pt35 {padding-top:35px;}
.pt40 {padding-top:40px;}
.pt45 {padding-top:45px;}
.pt50 {padding-top:50px;}
.pt55 {padding-top:55px;}
.pt60 {padding-top:60px;}
.pt65 {padding-top:65px;}
.pt70 {padding-top:70px;}
.pt75 {padding-top:75px;}
.pt80 {padding-top:80px;}
.pt85 {padding-top:85px;}
.pt90 {padding-top:90px;}
.pt95 {padding-top:95px;}
.pt100 {padding-top:100px;}
/*** padding_bottom ***/
.pb0 {padding-bottom:0;}
.pb5 {padding-bottom:5px;}
.pb10 {padding-bottom:10px;}
.pb15 {padding-bottom:15px;}
.pb20 {padding-bottom:20px;}
.pb25 {padding-bottom:25px;}
.pb30 {padding-bottom:30px;}
.pb35 {padding-bottom:35px;}
.pb40 {padding-bottom:40px;}
.pb45 {padding-bottom:45px;}
.pb50 {padding-bottom:50px;}
.pb55 {padding-bottom:55px;}
.pb60 {padding-bottom:60px;}
.pb65 {padding-bottom:65px;}
.pb70 {padding-bottom:70px;}
.pb75 {padding-bottom:75px;}
.pb80 {padding-bottom:80px;}
.pb85 {padding-bottom:85px;}
.pb90 {padding-bottom:90px;}
.pb95 {padding-bottom:95px;}
.pb100 {padding-bottom:100px;}
/*** padding_left ***/
.pl0 {padding-left:0;}
.pl5 {padding-left:5px;}
.pl10 {padding-left:10px;}
.pl15 {padding-left:15px;}
.pl17 {padding-left:17px;}
.pl20 {padding-left:20px;}
.pl25 {padding-left:25px;}
.pl30 {padding-left:30px;}
.pl35 {padding-left:35px;}
.pl40 {padding-left:40px;}
.pl45 {padding-left:45px;}
.pl50 {padding-left:50px;}
.pl55 {padding-left:55px;}
.pl60 {padding-left:60px;}
.pl65 {padding-left:65px;}
.pl70 {padding-left:70px;}
.pl75 {padding-left:75px;}
.pl80 {padding-left:80px;}
.pl85 {padding-left:85px;}
.pl90 {padding-left:90px;}
.pl95 {padding-left:95px;}
.pl100 {padding-left:100px;}
/*** padding_right ***/
.pr0 {padding-right:0;}
.pr5 {padding-right:5px;}
.pr10 {padding-right:10px;}
.pr15 {padding-right:15px;}
.pr17 {padding-right:17px;}
.pr20 {padding-right:20px;}
.pr25 {padding-right:25px;}
.pr30 {padding-right:30px;}
.pr35 {padding-right:35px;}
.pr40 {padding-right:40px;}
.pr45 {padding-right:45px;}
.pr50 {padding-right:50px;}
.pr55 {padding-right:55px;}
.pr60 {padding-right:60px;}
.pr65 {padding-right:65px;}
.pr70 {padding-right:70px;}
.pr75 {padding-right:75px;}
.pr80 {padding-right:80px;}
.pr85 {padding-right:85px;}
.pr90 {padding-right:90px;}
.pr95 {padding-right:95px;}
.pr100 {padding-right:100px;}


