:root {
	--black: #333333;
	--mainGreen: #8AC038;
	--mainPink: #DC71E5;
	--mainRed: #EC5F5F;
	--mainPurple: #8D7EFF;
}


@keyframes fadein { 
0%, 15% {  background-color: #ffffff; opacity: 0; /* 0%부터 15%까지 투명도 유지 */ }
  100% {    opacity: 1; /* 100%에서 투명도 1로 변화 */  }
}

.greenBox .pointColor, .traning .pointColor {color: var(--mainGreen);}
.pinkBox .pointColor, .spec .pointColor {color: var(--mainPink);}
.redBox .pointColor, .blind .pointColor {color: var(--mainRed);}
.purpleBody .pointColorBg, .purpleBody .sub, .purpleBg {background: var(--mainPurple);}
.purpleBox .pointColor {color: var(--mainPurple);}
.greenBox .pointColorBg, .traning .pointColorBg {background: var(--mainGreen);}
.pinkBox .pointColorBg, .spec .pointColorBg {background: var(--mainPink);}
.redBox .pointColorBg, .blind .pointColorBg {background: var(--mainRed);}
.traning, .greenBg {background-color: var(--mainGreen);}
.spec, .pinkBg {background-color: var(--mainPink);}
.blind, .redBg {background-color: var(--mainRed);}
.mypage {background: var(--mainPurple);}
.mypage .pointColorBg {background: var(--mainPurple);}
.gray {color: #999999;}
.commentBtn .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_comment.svg) no-repeat center / contain;}
.commentBtn.ok .icon {background-image: url(/skin/spec/img/ico_comment_black.svg);}
.viewBtn .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_view_black.svg) no-repeat center / contain;}

body, select, input,textarea, button {color: var(--black); font-family: 'pretendard', sans-serif; word-break: keep-all; letter-spacing: -.5px;}
input {font-size: 1rem; background: transparent; width: 100%; color: #fff;}
input::placeholder {color: rgba(255, 255, 255, .6);}
a {color: var(--black);}
select option { color: #333; }
.trans-inner { animation: fadein 0.8s forwards; }
.text-right { text-align: right; }
input[type="text"]:focus { border-color: rgba(141,126,255,0.7) !important; transition: .4s ease; }
input[type="number"]:focus { border-color: rgba(141,126,255,0.7) !important; transition: .4s ease; }
textarea:focus { border-color: rgba(141,126,255,0.7) !important; transition: .4s ease; }

/* 스크롤바 */
.main-cnt-rolling ul.menu { padding-bottom: 10px; cursor: pointer; }
.maincntSwiper ul.menu::-webkit-scrollbar { height: 6px; }
.maincntSwiper ul.menu::-webkit-scrollbar-thumb { background-color: #ddd; border-radius: 10px; } /*#c4df9b #add373*/
.maincntSwiper ul.menu::-webkit-scrollbar-track { background-color: #f6f6f6; border-radius: 10px; }


/* 페이지번호 */
.pageWrap { padding-top: 40px; width: 100%; } /* 임의로 추가함 */
.pageWrap ul {display: flex; gap: 12px; justify-content: center; align-items: center;}
.pageWrap ul li {width: 30px !important; height: 30px;}
.pageWrap ul li a {width: 100%; height: 100%;}
.pageWrap ul li:not(.arrow) a {/*font-weight: 700;*/ font-weight: 600; display: flex; align-items: center; justify-content: center; border-radius: 50%; border: 1px solid #EEEEEE;}
.pageWrap ul li.prev {background: url(/skin/spec/img/ico_page_prev.svg) no-repeat center / contain;}
.pageWrap ul li.prev.no {background: url(/skin/spec/img/ico_page_prev_no.svg) no-repeat center / contain;}
.pageWrap ul li.next {background: url(/skin/spec/img/ico_page_next.svg) no-repeat center / contain;}
.pageWrap ul li.last {background: url(/skin/spec/img/ico_page_last.svg) no-repeat center / contain;}

.pageWrap ul li.active a { color: #fff; border-color: transparent; }
.pageWrap ul li a .fa-chevron-left { width: 26px; height: 30px; background: url(/skin/spec/img/ico_page_prev.svg) no-repeat center / contain; }
.pageWrap ul li a .fa-chevron-right { width: 26px; height: 30px; background: url(/skin/spec/img/ico_page_next.svg) no-repeat center / contain; }
.page-item:first-child .page-link { border-radius: 50%; }
.page-item:last-child .page-link { border-radius: 50%; }
.page-link { color: var(--black); }
.page-item:not(:first-child) .page-link { margin-left: 0; }
.page-link:focus { color: var(--black); background-color: transparent; outline: 0; box-shadow: none; }
.page-item:first-child .page-link, .page-item:not(:first-child) .page-link { padding: 0; }

.cnt-wrap.default .pageWrap .pointColorBg { background-color: var(--mainPurple); }
.cnt-wrap.default .pageWrap .page-link:hover { color: var(--mainPurple); background: transparent; }
.cnt-wrap.default .pageWrap .active .page-link:hover { color: #fff; background-color: var(--mainPurple); }
.cnt-wrap.green .pageWrap .pointColorBg { background-color: var(--mainGreen); }
.cnt-wrap.green .pageWrap .page-link:hover { color: var(--mainGreen); background: transparent; }
.cnt-wrap.green .pageWrap .active .page-link:hover { color: #fff; background-color: var(--mainGreen); }
.cnt-wrap.pink .pageWrap .pointColorBg { background-color: var(--mainPink); }
.cnt-wrap.pink .pageWrap .page-link:hover { color: var(--mainPink); background: transparent; }
.cnt-wrap.pink .pageWrap .active .page-link:hover { color: #fff; background-color: var(--mainPink); }
.cnt-wrap.red .pageWrap .pointColorBg { background-color: var(--mainRed); }
.cnt-wrap.red .pageWrap .page-link:hover { color: var(--mainRed); background: transparent; }
.cnt-wrap.red .pageWrap .active .page-link:hover { color: #fff; background-color: var(--mainRed); }
.cnt-wrap.blindred .pageWrap .pointColorBg { background-color: var(--mainRed); }
.cnt-wrap.blindred .pageWrap .page-link:hover { color: var(--mainRed); background: transparent; }
.cnt-wrap.blindred .pageWrap .active .page-link:hover { color: #fff; background-color: var(--mainRed); }


/* 버튼 */
.refreshBtn .icon { width: 28px; height: 28px; background: url(/skin/spec/img/ico_refresh_black.svg) no-repeat center / contain;}
.heartBtn .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_bookmark.svg) no-repeat center / contain;}
.heartBtn.ok .icon {background-image: url(/skin/spec/img/ico_bookmark_ok.svg);}
.shareBtn .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_share.svg) no-repeat center / contain;}
.declarationBtn .icon { width: 16px; height: 16px; background: url(/skin/spec/img/ico_declaration_red.svg) no-repeat center / contain;}

/* 테이블  */
table {width: 100%;}
table tr > * {vertical-align: middle; padding: 12px 6px; font-size: 16px; border-bottom: 1px solid #EEEEEE; border-right: 1px solid #EEEEEE;}
table tr:first-child > * {border-top: 1px solid #eeeeee;}
table tr > *:last-child {border-right: none;}

table.writeTable {border-collapse: unset; border-spacing: 0 10px;}
table.writeTable tr:first-child > * {border-top: none;}
table.writeTable tr > * {border-right: none; padding: 7px 10px; transition: .5s ease;}
table.writeTable tr th { width: 60px; text-align: left; font-size: 16px;}
table.writeTable tr .inputBox input {color: var(--black); font-size: 16px;}
table.writeTable tr .inputBox input::placeholder {color: #ccc;}
table.writeTable .nice-select {padding: 0; align-items: center; height: 22px;}
table.writeTable .nice-select span {color: var(--black); line-height: 1;}

.red { color: var(--mainRed); }

/* selectBox */
.selectBox { position: relative; }
.selectBox:after { content: ''; position: absolute; width: 12px; height: 12px; right: 20px; top: 15px; border-width: 0 2px 2px 0; border-color: #333; border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }
.selectBox select { padding: 0 40px 0 20px; font-size: 1.125rem; font-weight: 600; }

.selectBox2 { position: relative; border: 1px solid #eee; padding: 6px 10px; border-radius: 6px; background: #fff; }
.selectBox2:after { content: ''; position: absolute; width: 8px; height: 8px; right: 12px; top: auto; border-width: 0 2px 2px 0; border-color: #333; border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }
.selectBox2 select { width: 100%; padding-right: 22px; cursor: pointer; }

/* list-sel-arrow */
.list-sel-arrow { position: relative; }
.list-sel-arrow:after {content: ''; position: absolute; width: 8px; height: 8px; right: 6px; top: -1px; border-width: 0 2px 2px 0; border-color: var(--mainPurple); border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }
.list-sel-arrow select { padding-right: 30px; cursor: pointer; font-weight: 500; color: var(--mainPurple); }
.ncs .list-sel-arrow select { color: var(--mainGreen); }
.pink .list-sel-arrow select { color: var(--mainPink); }
.red .list-sel-arrow select { color: var(--mainRed); }
.blindred .list-sel-arrow select { color: var(--mainRed); }
.ncs .list-sel-arrow:after { border-color: var(--mainGreen); }
.pink .list-sel-arrow:after { border-color: var(--mainPink); }
.red .list-sel-arrow:after { border-color: var(--mainRed); }
.blindred .list-sel-arrow:after { border-color: var(--mainRed); }


/* 정책 공통 */
.policy { font-size: 1.125rem; line-height: 1.5rem; font-weight: 400; }
.policy h1 { font-size: 1.75rem; font-weight: 700; }
.policy h3 { font-size: 1.25rem; font-weight: 600; }

.policy ol { list-style: decimal; list-style-position: inside; font-size: 1.25rem; font-weight: 600; line-height: 2rem; }
.policy ol > li { margin-bottom: 20px; }
.policy ol > li > p { padding-left: 12px; font-size: 1.125rem; font-weight: 400; line-height: 1.75rem; }
.policy ol > li > ul { list-style: disc; list-style-position: inside; padding-left: 12px; font-size: 1.125rem; font-weight: 400; line-height: 1.75rem; }
.policy ul { list-style: decimal; list-style-position: inside; line-height: 1.75rem; }
.policy ul > li > p { padding-left: 10px; }

.policy table { font-size: 1rem; line-height: 1.5rem; }
.policy table thead tr th { font-weight: 500; background: #F4F6F9; border: 1px solid #bdbdbd; }
.policy table tbody tr td { font-weight: 400; border: 1px solid #bdbdbd; }


/* 메뉴별 헤더 */
.header-info.default { background-color: var(--mainPurple); }
.header-info.pink { background-color: var(--mainPink); }
.header-info.green { background-color: var(--mainGreen); }
.header-info.red { background-color: var(--mainRed); }

.header-info { width: 100%; }
.header-info .inner { width: 1620px; height: 236px; margin: 0 auto; position: relative; }
.header-info .inner h1 { position: absolute; left: 0; bottom: 60px; font-size: 3.25rem; font-weight: 600; color: #fff; }
.header-info .inner ul { position: absolute; left: 0; bottom: 30px; overflow: hidden; font-size: 1rem; color: #fff; }
.header-info .inner ul li { float: left; margin-right: 10px; padding-right: 14px; background: url(/skin/spec/img/ico_arrow_right.svg) no-repeat right; background-size: 8px 10px; }
.header-info .inner ul li:last-child { background: none; margin-right: 0; padding-right: 0; }
.header-info .inner ul li .home { width: 16px; height: 16px; background: url(/skin/spec/img/ico_home.svg) no-repeat center / contain; opacity: .5;}


/* 섹션 공통 */
.cnt-wrap.default .left ul li.active a { color: var(--mainPurple); }
.cnt-wrap.default .left ul li.active a::after { background: var(--mainPurple); }
.cnt-wrap.pink .left ul li.active a { color: var(--mainPink); }
.cnt-wrap.pink .left ul li.active a::after { background: var(--mainPink); }
.cnt-wrap.green .left ul li.active a { color: var(--mainGreen); }
.cnt-wrap.green .left ul li.active a::after { background: var(--mainGreen); }
.cnt-wrap.red .left ul li.active a { color: var(--mainRed); }
.cnt-wrap.red .left ul li.active a::after { background: var(--mainRed); }

.cnt-wrap { width: 1620px; margin: 0 auto; display: flex; }
.cnt-wrap > .left { width: 195px; padding: 50px 0; box-shadow: 5px 0px 5px -2px rgba(0,0,0,0.1); }
.cnt-wrap > .left ul { position: sticky; top: 120px; }
.cnt-wrap > .left ul li { margin-bottom: 24px; }
.cnt-wrap > .left ul li:last-child { margin-bottom: 0; }
.cnt-wrap > .left ul li a { font-size: 1.125rem; font-weight: 600; color: #adadad; }
.cnt-wrap > .left ul li.active a { font-size: 1.563rem; font-weight: 700; letter-spacing: -1px; position: relative; display: flex; align-items: flex-start; gap: 3px; }
.cnt-wrap > .left ul li.active a::after { content:""; width: 5px; height: 5px; border-radius: 50%; }

.cnt-wrap > .right { width: calc(100% - 195px); padding: 50px 0 50px 100px; min-height: 600px; }
.cnt-wrap > .right .infoWrapBox { width: 100%; display: flex; align-items: flex-start; gap: 30px; }
.cnt-wrap > .right .infoWrapL { width: calc(100% - 390px); }
.cnt-wrap > .right .infoWrapR { width: 390px; flex-shrink: 0; }

.infoWrapL > .top { border-bottom: 1px solid #eee; padding: 0 20px 18px; display: flex; align-items: flex-start; gap: 22px; }
.infoWrapL > .top .topInfo { width: calc(100% - 82px); }
.infoWrapL > .top .topInfo ul { display: flex; gap: 6px; margin-bottom: 20px; }
.infoWrapL > .top .topInfo ul li { border-radius: 20px;  padding: 8px 14px; }

.infoWrapL > .top .topInfo .title { margin-bottom: 20px; font-size: 22px; font-weight: 600; }
.infoWrapL > .top .topInfo .dateBox { display: flex; align-items: center; }
.infoWrapL > .top .topInfo .dateBox .icon { width: 20px; height: 20px; margin-right: 10px; background: url(/skin/spec/img/ico_boardView_time.svg) no-repeat center / contain; }
.infoWrapL > .top .topInfo .eduBox { display: flex; align-items: center; gap: 26px; }
.infoWrapL > .top .topInfo .eduBox > div { display: flex; align-items: center; }
.infoWrapL > .top .topInfo .eduBox .edu .icon { width: 20px; height: 20px; margin-right: 8px; background: url(/skin/spec/img/ico_building.svg) no-repeat center / contain; }
.infoWrapL > .top .topInfo .eduBox .loca .icon { width: 16px; height: 20px; margin-right: 8px; background: url(/skin/spec/img/ico_location.svg) no-repeat center / contain; }
.infoWrapL > .top .heartBtn .icon { width: 20px; height: 20px; }
.infoWrapL > .top .shareBtn.gray .icon { width: 18px; height: 20px; background: url(/skin/spec/img/ico_share_gray.svg) no-repeat center / contain; }


/* stickyBox */
.stickyBox { position: sticky; top: 120px; border: 1px solid #eee; border-radius: 15px; }
.stickyBox .top { padding: 30px; padding-bottom: 20px; }
.stickyBox .top .status { width: auto; font-size: 1.125rem; color: #fff; font-weight: 500; padding: 8px 12px; border-radius: 20px; margin-bottom: 18px; display: inline-block; }
.stickyBox .top .status.default { background: var(--mainPurple); }
.stickyBox .top .status.green { background: var(--mainGreen); }
.stickyBox .top .status.pink { background: var(--mainPink); }
.stickyBox .top .status.red { background: var(--mainRed); }
.stickyBox .top .title { font-size: 22px; font-weight: 600; margin-bottom: 22px; word-break: break-word; }
.stickyBox .top .imgBox { overflow: hidden; border: 1px solid #eee; border-radius: 15px; }
.stickyBox .top .textBox { display: flex; flex-direction: column; gap: 12px; }
.stickyBox .top .textBox .text { display: flex; justify-content: space-between; font-size: 17px; }
.stickyBox .top .textBox .text p:first-child { font-weight: 700; }

.stickyBox .btm { padding: 30px; padding-top: 20px; border-top: 1px solid #eee; }
.stickyBox .btm .BtnBox { display: flex; flex-direction: column; gap:16px; }
.stickyBox .btm .money { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 10px; }
.stickyBox .btm .money p { font-weight: 500; color: #999; }
.stickyBox .btm .money p:last-child { text-decoration: line-through;}
.stickyBox .btm .price { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 26px; }
.stickyBox .btm .price p { font-size: 18px; font-weight: 500; color: #ec5f5f; }
.stickyBox .btm .price p:last-child { font-size: 22px; font-weight: 600; }

.stickyBox .btm .BtnBox .lineBtn { padding: 12px; font-weight: 500; border: 1px solid #fff; border-radius: 24px; }
.stickyBox .btm .BtnBox .lineBtn.default { color: var(--mainPurple); border-color: var(--mainPurple); }
.stickyBox .btm .BtnBox .lineBtn.green { color: var(--mainGreen); border-color: var(--mainGreen); }
.stickyBox .btm .BtnBox .lineBtn.pink { color: var(--mainPink); border-color: var(--mainPink); }
.stickyBox .btm .BtnBox .lineBtn.red { color: var(--mainRed); border-color: var(--mainRed); }

.stickyBox .btm .BtnBox .bgBtn { padding: 12px; font-weight: 500; color: #fff; border-radius: 24px; }
.stickyBox .btm .BtnBox .bgBtn.default { background: var(--mainPurple); }
.stickyBox .btm .BtnBox .bgBtn.green { background: var(--mainGreen); }
.stickyBox .btm .BtnBox .bgBtn.pink { background: var(--mainPink); }
.stickyBox .btm .BtnBox .bgBtn.red { background: var(--mainRed); }


/* 검색 */
.searchWrap .filterBtn.default { background: var(--mainPurple); }
.searchWrap .filterBtn.green { background: var(--mainGreen); }
.searchWrap .filterBtn.pink { background: var(--mainPink); }
.searchWrap .filterBtn.red { background: var(--mainRed); }

.searchWrap { width: 100%; }
.searchWrap form { display: flex; align-items: center; gap: 26px; margin-bottom: 20px; }
.searchWrap .searchInputBox { width: calc(100% - 128px); display: flex; align-items: center; gap: 18px; }
.searchWrap .searchInputBox label { font-size: 18px; font-weight: 600; color: #333; }
.searchWrap .searchInputBox input { color: #333; height: 60px; text-align: center; border: 1px solid #ddd; border-radius: 30px; padding: 0 20px; }
.searchWrap .searchInputBox input::placeholder { color: #999; }
.searchWrap .refreshBtn { width: 28px; height: 28px; }
.searchWrap .filterBtn { width: 48px; height: 48px; border-radius: 24px; display: flex; justify-content: center; align-items: center; }
.searchWrap .filterBtn .icon { width: 18px; height: 16px; background-image: url(/skin/spec/img/ico_filter_white.svg); }

.searchWrap.nofilter .searchInputBox { width: calc(100% - 54px); }

.filterWrap { padding: 30px 24px; border-radius: 30px; background: #f6f6f6; }
.filterWrap .title { font-size: 1.125rem; font-weight: 600; }
.filterWrap .title span { font-size: 0.875rem; opacity: 0.5; }


/* 검색 - 사이드 */
.cnt-wrap.default .searchWrapBetween .left .total span { color: var(--mainPurple); }
.cnt-wrap.pink .searchWrapBetween .left .total span { color: var(--mainPink); }
.cnt-wrap.green .searchWrapBetween .left .total span { color: var(--mainGreen); }
.cnt-wrap.red .searchWrapBetween .left .total span { color: var(--mainRed); }
.cnt-wrap.blindred .searchWrapBetween .left .total span { color: var(--mainRed); }

.searchWrapBetween { display: flex; justify-content: space-between; align-items: center; margin: 40px 0;}
.searchWrapBetween .left .total { font-size: 30px; color: #666; }
.searchWrapBetween .left .total span { font-weight: 700; }


/* nice-select */
.nice-select { font-size: 1.125rem; padding-right: 60px; }
.nice-select:after { width: 10px; height: 10px; margin-top: -7px; }

.cnt-wrap.default .searchWrapBetween .nice-select { color : var(--mainPurple); }
.cnt-wrap.default .searchWrapBetween .nice-select:after { border-bottom: 2px solid var(--mainPurple); border-right: 2px solid var(--mainPurple); }
.cnt-wrap.green .searchWrapBetween .nice-select { color : var(--mainGreen); }
.cnt-wrap.green .searchWrapBetween .nice-select:after { border-bottom: 2px solid var(--mainGreen); border-right: 2px solid var(--mainGreen); }
.cnt-wrap.pink .searchWrapBetween .nice-select { color : var(--mainPink); }
.cnt-wrap.pink .searchWrapBetween .nice-select:after { border-bottom: 2px solid var(--mainPink); border-right: 2px solid var(--mainPink); }
.cnt-wrap.red .searchWrapBetween .nice-select { color : var(--mainRed); }
.cnt-wrap.red .searchWrapBetween .nice-select:after { border-bottom: 2px solid var(--mainRed); border-right: 2px solid var(--mainRed); }
.cnt-wrap.blindred .searchWrapBetween .nice-select { color : var(--mainRed); }
.cnt-wrap.blindred .searchWrapBetween .nice-select:after { border-bottom: 2px solid var(--mainRed); border-right: 2px solid var(--mainRed); }

/* 모달 */
.modalCon {display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 150;}
.modalCon .bg {position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: rgba(17, 17, 17, .6); transition: .4s ease;}
.modalCon .m-inner {width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;}
.modalCon .boxWrap {position: relative; background: #fff; opacity: 0; transform: scale(.8); transition: .5s ease; max-width: 640px; width: 90%; max-height: 90%; border-radius: 1.8em; overflow-y: auto;}
.modalCon.open .boxWrap {opacity: 1; transform: none; transition-delay: .3s;}
.modalCon .boxWrap .close {cursor: pointer; transition: .5s ease; position: absolute; /*top: -50%;*/top: 52%; right: 30px; transform: translateY(-50%); line-height: .3; color: #fff; -webkit-text-stroke: 1px; border-radius: 50%; width: 16px; height: 16px; background: url(/skin/spec/img/ico_close.svg) no-repeat center / contain;}
.modalCon .boxWrap .titleWrap {padding: 16px 20px; font-size: 16px; position: relative; text-align: center; border-bottom: 1px solid #EEEEEE;}
.modalCon .boxWrap .textWrap {padding: 12px 24px 20px;}

.contact_modal .boxWrap .textWrap {display: flex; flex-direction: column; gap: 12px;}
.contact_modal .boxWrap .textWrap button {width: 100%; background: var(--mainGreen); font-size: 16px; font-weight: 600; color: #fff; padding: 14px 20px; border-radius: 16px;}

.modal-footer .buy-form { width: 100%; background: #f6f6f6; border-radius: 16px; padding: 16px; }
.modal-footer .buy-form span { font-weight: 500; color: var(--mainPurple); }
.modal-footer .buy-form .link { color: var(--mainPurple); text-decoration: underline; font-weight: 500; }
.modal-footer .rq-open { margin-top: 20px; width: 100%; padding: 12px; color: #fff; border-radius: 24px; background: var(--mainPurple); }
/* 로그인 */
.loginBg { background: var(--mainPurple); display: flex; align-items: center; justify-content: center; height: 100vh; }
.sub.login { position: relative; overflow: hidden; display: flex; align-items: center; flex-direction: column; justify-content: center; box-sizing: border-box;}
.sub.login .inner { width: 420px; }
.sub.login .inner .logo {margin-bottom: 32px; text-align: center;}
.sub.login .inner .logo img { height: 44px; }
.sub.login .inner .inputWrapBox {display: flex; flex-direction: column; gap: 24px; margin-bottom: 36px;}
.sub.login .inner .inputWrapBox .inputWrap label {font-size: 15px; padding-left: 12px; color: #fff;}
.sub.login .inner .inputWrapBox .inputWrap input {padding: 12px; border-bottom: 2px solid #fff; padding-top: 8px; box-sizing: border-box; font-size: 18px;}
.sub.login .inner .inputWrapBox .btnBox {display: flex; align-items: center; gap: 16px;}
.sub.login .inner .clickBtn {border-radius: 16px; background: #fff; color: var(--mainPurple); font-size: 16px; font-weight: 700; padding: 14px 20px; width: 100%; box-sizing: border-box; margin-bottom: 24px;}
.sub.login .inner .findBtnBox {display: flex; width: 90%; align-items: center; justify-content: center; width: 100%; margin-bottom: 30px;}
.sub.login .inner .findBtnBox button {position: relative; font-size: 16px; color: #fff;}
.sub.login .inner .findBtnBox button:not(:last-child):after {content: ""; width: 1px; background: #fff; height: 15px; display: inline-block; margin: 0 12px; vertical-align: middle;}
.sub.login .inner .orBox {display: flex; flex-direction: column; gap: 24px;}
.sub.login .inner .orBox .title {font-size: 18px; color: #fff; font-weight: 500; text-align: center; position: relative;}
.sub.login .inner .orBox .title:before, .sub.login .inner .orBox .title:after {content: ""; width: calc(50% - 27px); height: 1px; border-bottom: 1px solid #fff; position: absolute; top: 50%; transform: translateY(-50%);}
.sub.login .inner .orBox .title:before {left: 0;}
.sub.login .inner .orBox .title:after {right: 0;}
.sub.login .inner .orBox .snsBtnBox {display: flex; align-items: center; justify-content: center; gap: 15px;}
.sub.login .inner .orBox .snsBtnBox a .icon {width: 60px; height: 60px; border-radius: 50%} /* button이었으나 a태그로 변경 */
.sub.login .inner .orBox .snsBtnBox .kakao .icon {background: url(/skin/spec/img/ico_kakao.svg) no-repeat center / contain; background-color: #FAE100; background-size: 46px; }
.sub.login .inner .orBox .snsBtnBox .naver .icon {background: url(/skin/spec/img/ico_naver2.svg) no-repeat center / contain;}
.sub.login .inner .orBox .snsBtnBox .google .icon {background: url(/skin/spec/img/ico_google.svg) no-repeat center / contain;}
.sub.login .checkBox2 {display: flex; align-items: center; gap: 8px; color: #fff;}
.sub.login .checkBox2 input {border-radius: 4px; border: 1px solid rgba(255, 255, 255, .6); width: 16px; height: 16px; position: relative;}
.sub.login .checkBox2 label {font-size: 16px;}
.sub.login .checkBox2 input:checked {background: rgba(255, 255, 255, .2)}
.sub.login .checkBox2 input:checked:after {content: ''; font-size: 16px; text-align: center; position: absolute; width: 6px; left: 2px; top: -2px; height: 8px; border-width: 0 2px 2px 0; border-style: solid; transform-origin: bottom left; transform: rotate(45deg);}
/* 비밀번호 찾기 */
.sub.findpw {position: relative; overflow: hidden; display: flex; align-items: center; flex-direction: column; justify-content: center; box-sizing: border-box;}
.sub.findpw .inner {width: 420px; }
.sub.findpw .inner .logo {margin-bottom: 32px; text-align: center;}
.sub.findpw .inner .logo img { height: 44px; }
.sub.findpw .inner .text { font-size: 16px; color: #fff; margin-bottom: 16px; }
.sub.findpw .inner input { padding: 12px; border-bottom: 2px solid #fff; box-sizing: border-box; font-size: 18px; }
.sub.findpw .inner .bgBtn {border-radius: 16px; background: #fff; color: var(--mainPurple); font-size: 16px; font-weight: 700; padding: 14px 20px; width: 100%; box-sizing: border-box; margin-top: 20px;}
.sub.findpw .inner .inputWrap { display: flex; flex-direction: column; gap: 16px; }
.sub.findpw .inner .inputBox { position: relative; }
.sub.findpw .inner .inputBox .btn { position: absolute; top: 50%; transform: translateY(-50%); right: 12px; font-size: 0.875rem; color: var(--mainPurple); font-weight: 600; padding: 2px 8px; border-radius: 16px; background: #fff; }
.sub.findpw .inner .inputBox .timer { position: absolute; top: 50%; transform: translateY(-50%); right: 70px; font-size: 0.875rem; color: #fff; font-weight: 500; }
.sub.findpw .inner .inputBox .smallText span{ font-size: 0.875rem; color: #fff; padding-left: 6px; margin-top: 6px; }
.sub.findpw .inner .inputWrap .complate .inputWrap { margin-top: 26px; gap: 10px; }


.sub.sign_up .logo { text-align: center; margin-bottom: 10px; }
.sub.sign_up .logo img { height: 40px; }
.sub.sign_up {position: relative; overflow: hidden; box-sizing: border-box; color: #fff;}
.sub.sign_up .inner button {color: #fff;}
.sub.sign_up .inner {box-sizing: border-box; width: 420px; }
.sub.sign_up .title {font-size: 28px; font-weight: 700; margin-bottom: 40px; color: #fff; text-align: center; }
.sub.sign_up .title span { font-size: 16px; font-weight: 500; opacity: .6; padding-bottom: 6px;}
.sub.sign_up .topBox { height: 400px; overflow-y: auto; margin-bottom: 30px; }
.sub.sign_up .topBox::-webkit-scrollbar { width: 4px; }
.sub.sign_up .topBox::-webkit-scrollbar-thumb { background-color: rgba(255, 255, 255, 0.8); border-radius: 10px; }
.sub.sign_up .topBox::-webkit-scrollbar-track { background-color: rgba(255, 255, 255, 0.3); border-radius: 10px; }
.sub.sign_up .botButton {width: 100%; box-sizing: border-box; }
.sub.sign_up .botButton .clickBtn {border-radius: 16px; background: #fff; padding: 14px 20px; width: 100%; box-sizing: border-box; font-weight: 700; font-size: 16px; color: var(--mainPurple);}
.sub.sign_up .botCheck {display: flex; flex-direction: column; gap: 16px;}
.sub.sign_up .botCheck .inputWrap label {font-size: 14px; padding-left: 12px; color: #fff;}
.sub.sign_up .botCheck .inputWrap .inputBox {position: relative;}
.sub.sign_up .botCheck .inputWrap input {padding: 8px 12px; border-bottom: 2px solid #fff; box-sizing: border-box; font-weight: 500; font-size: 16px;}
.sub.sign_up .botCheck .inputWrap input[type="text"]:focus { border-color: #fff !important; }
.sub.sign_up.step1 .inputBoxWrap .checkBox2 {display: flex; align-items: center; gap: 10px; }
.sub.sign_up.step1 .inputBoxWrap .checkBox2 label { font-size: 17px; font-weight: 500;}
.sub.sign_up.step1 .inputBoxWrap .checkBox2 label .gray {color: rgba(255, 255, 255, .6); font-size: 14px;}
.sub.sign_up.step1 .inputBoxWrap .checkBox2 input {width: 18px; height: 18px; border: 1px solid rgba(255, 255, 255, .6); border-radius: 4px; position: relative; }
.sub.sign_up.step1 .inputBoxWrap .checkBox2 input:checked {background: rgba(255, 255, 255, .2)}
.sub.sign_up.step1 .inputBoxWrap .checkBox2 input:checked:after {content: ''; font-size: 15px; text-align: center; position: absolute; width: 6px; height: 8px; left: 3px; top: -1px; border-width: 0 2px 2px 0; border-style: solid; transform-origin: bottom left; transform: rotate(45deg);}
.sub.sign_up.step1 .inputBoxWrap .checkBox2.all {padding-bottom: 20px; border-bottom: 1px solid rgba(255, 255, 255, .6); }
.sub.sign_up.step1 .inputBoxWrap .checkBox2.all label {font-size: 20px;}
.sub.sign_up.step1 .inputBoxWrap .botCheck {padding-top: 20px; gap: 20px;}
.sub.sign_up.step1 .inputBoxWrap .botCheck li {display: flex; align-items: center; justify-content: space-between;}
.sub.sign_up.step1 .inputBoxWrap .botCheck .readBtn {padding: 6px 10px; border-radius: 30px; background: rgba(255, 255, 255, .3); color: #fff; font-size: 14px;}
.sub.sign_up.step2 .botCheck {gap: 4%; flex-direction: row;}
.sub.sign_up.step2 .botCheck li {width: 100%;}
.sub.sign_up.step2 .botCheck li .checkBox label { transition: .3s ease; font-size: 16px; font-weight: 600; color: #fff; display: flex; align-items: center; justify-content: center; gap: 10px; flex-direction: column; opacity: .3; border-radius: 16px; padding: 10px; height: 196px; box-sizing: border-box; border: 1px solid #fff;}
.sub.sign_up.step2 .botCheck li .checkBox input:checked + label {opacity: 1; background: rgba(255, 255, 255, .3);}
.sub.sign_up.step2 .botCheck li:first-child .checkBox label .icon {width: 54px; height: 56px; background: url(/skin/spec/img/sign_up_step2_icon1.svg) no-repeat center / contain;}
.sub.sign_up.step2 .botCheck li:last-child .checkBox label .icon {width: 39px; height: 46px; background: url(/skin/spec/img/sign_up_step2_icon2.svg) no-repeat center / contain;}
.sub.sign_up.step3 .botCheck li .inputFlex {display: flex; gap: 20px; align-items: center;}
.sub.sign_up.step3 .botCheck li .inputFlex .inputBox {width: calc(100% / 3 - 9px);}
.sub.sign_up.step3 .botCheck li .inputFlex .inputBox:not(:last-child):after {content: "-"; position: absolute; top: 50%; transform: translateY(-50%); right: -14px;}
.sub.sign_up.step3 .botCheck li.tel .inputBox input {text-align: center;}
.sub.sign_up.step4 .botCheck li.id .inputBox input {padding-right: 85px;}
.sub.sign_up.step4 .botCheck li.id .inputBox .btn {position: absolute; font-size: 12px; padding: 2px 8px; border-radius: 10px; background: #fff; color: var(--mainPurple); top: 50%; transform: translateY(-50%); right: 12px; font-weight: 600;}
.sub.sign_up.step4 .botCheck li.id .inputBox.code { margin-top: 16px; } /* 추가 */
.sub.sign_up.step4 .botCheck li.id .inputBox.code .timer { position: absolute; right: 66px; top: 50%; transform: translateY(-50%); font-size: 0.875rem; }
.sub.sign_up.step4 .botCheck li.pw .inputBox input {padding-right: 45px;}
.sub.sign_up.step4 .botCheck .inputBox .pwViewBtn {position: absolute; top: 50%; transform: translateY(-50%); right: 12px;}
.sub.sign_up.step4 .botCheck .inputBox .pwViewBtn .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_password_view_white.svg) no-repeat center / contain;}
.sub.sign_up.step4 .gaib .inputBox input { padding: 0; border-bottom: 0; }
.sub.sign_up.step4 .gaib .inputBox ul { display: flex; flex-direction: column; gap: 6px; }
.sub.sign_up.step4 .gaib .inputBox ul li { display: flex; align-items: center; margin-top: 10px; }
.sub.sign_up.step4 .gaib .inputBox ul li input[type=radio] { width: 16px; height: 16px; border: 1px solid #fff; border-radius: 50%; flex-shrink: 0; margin-right: 6px; }
.sub.sign_up.step4 .gaib .inputBox ul li input[type=radio]:checked { border: 4px solid #fff; }
.sub.sign_up.step4 .gaib .inputBox ul li label { font-size: 16px; width: 100%; }
.sub.sign_up.step4 .gaib .inputBox .etc { width: 80%; font-size: 0.938rem; font-weight: 400; padding: 6px 8px; border: 1px solid #fff; border-radius: 6px; margin-top: 6px; margin-left: 30px; }
.sub.sign_up.step4 .botCheck li .inputFlex {display: flex; gap: 16px; align-items: center;}
.sub.sign_up.step4 .botCheck li .inputFlex .inputBox {width: calc(100% / 3 - 9px); }
.sub.sign_up.step4 .botCheck li .inputFlex .inputBox input { text-align: center; }
.sub.sign_up.step4 .botCheck li.gender .inputFlex { margin-top: 8px; }
.sub.sign_up.step4 .botCheck li.gender .inputFlex .inputBox {width: calc(100% / 2 - 9px); }
.sub.sign_up.step4 .botCheck li.gender .inputFlex .inputBox input { display: none; }
.sub.sign_up.step4 .botCheck li.gender .inputFlex .inputBox label { font-size: 16px; font-weight: 400; width: 100%; text-align: center; border-radius: 26px; padding: 10px; box-sizing: border-box; border: 1px solid #fff; opacity: .2; transition: .3s ease;}
.sub.sign_up.step4 .botCheck li.gender .inputFlex .inputBox input[type="radio"]:checked + label { opacity: 1; background: #fff; color: var(--mainPurple); border-color: #fff; }
.sub.sign_up.step5 .inner {text-align: center; display: flex; flex-direction: column; justify-content: space-between; gap: 40px; }
.sub.sign_up.step5 .textBox .title {font-size: 60px; margin-bottom: 5px; font-weight: 500;}
.sub.sign_up.step5 .textBox .text {font-size: 14px; font-weight: 600; color: rgba(255, 255, 255, .6);}
.loginBg > .imgBox {display: inline-block; margin: 0 auto; position: absolute; bottom:0; z-index: -1; }
.loginBg > .imgBox img {filter: grayscale(1); opacity: .2;}
.sub.sign_up.step5 .botButton { position: static; }

/* 로그인 자동완성 색변경 */
.sub.login input:-webkit-autofill, .sub.sign_up input:-webkit-autofill,
.sub.login input:-webkit-autofill:hover, .sub.sign_up input:-webkit-autofill:hover,
.sub.login input:-webkit-autofill:focus, .sub.sign_up input:-webkit-autofill:focus,
.sub.login input:-webkit-autofill:active, .sub.sign_up input:-webkit-autofill:active {
	transition: background-color 50000s ease-in-out 0s;
	-webkit-transition: background-color 99999s ease-out;
	-webkit-box-shadow: 0 0 0px 1000px transparent inset !important;
	-webkit-text-fill-color: #fff !important;
}

/* 알림 */
.cnt-wrap.alarm_list > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.alarm_list .srcBotBox .pageNum { font-size: 1.375rem; color: #666; }
.alarm_list .srcBotBox .pageNum .pointColor { font-weight: 600; color: var(--mainPurple); }
.alarm_list .srcBotBox .all { font-size: 0.875rem; font-weight: 500; color: #B8B8B8; padding: 5px 14px; border: 1px solid #B8B8B8; border-radius: 30px; background: #fff; }
.alarm_list .listTable td a { display: block; }
.alarm_list .listTable .title { font-size: 1.125rem; font-weight: 600; }
.alarm_list .listTable .smtitle { font-size: 0.813rem; padding-top: 4px; color: #999; word-break: break-word; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }


/* 메인 */
.main-banner { width: 1920px; margin: 0 auto; height: 450px; }
.main-banner .swiper-slide a { display: block; width: 100%; display: flex; justify-content: center; align-items: center; }
.mainSwiper .swiper-pagination {position: static; margin-top: 20px; }
.mainSwiper .swiper-pagination-bullet { opacity: 1; background: #d6d6d6; width: 12px; height: 12px; border-radius: 14px; transition: .5s ease;}
.mainSwiper .swiper-pagination-bullet-active {width: 36px; background: var(--mainPurple); }
.main-search { width: 790px; margin: 0 auto; margin-top: 50px; }
.main-search p { text-align: center; font-size: 40px; }
.main-search p span { font-size: 16px; font-weight: 700; }
.main-search form { width: 100%; padding: 0 18px 0 30px; margin: 30px 0 16px 0; border: 1px solid #ddd; border-radius: 30px; overflow: hidden; }
.main-search form input { font-size: 18px; color: #333; float: left; width: calc(100% - 60px); height: 60px; border: 0; }
.main-search form input::placeholder { color: #666; }
.main-search form button { float: right; width: 60px; height: 60px; background: transparent; display: flex; align-items: center; justify-content: center;}
.main-search form button .icon { width: 25px; height: 25px; background: url(/skin/spec/img/ico_search_black.svg) no-repeat center / contain; }
.main-search .bothSearchBtn { width: 100%; margin: 30px 0 16px 0; padding: 16px 30px; border: 1px solid #ddd; border-radius: 30px; overflow: hidden; display: flex; justify-content: space-between; align-items: center; }
.main-search .bothSearchBtn p { font-size: 1.125rem; color: #666; }
.main-search .bothSearchBtn .icon { width: 24px; height: 24px; background: url(/skin/spec/img/ico_search_black.svg) no-repeat center / contain; }
.bothSearch_modal .textWrap { display: flex; flex-direction: column; gap: 20px; }
.bothSearch_modal .textWrap .topBox { display: flex; align-items: center; gap: 10px; padding: 0.375rem; padding-right: 0.875rem; border-radius: 16px; background: #f3f3f3; }
.bothSearch_modal .textWrap .topBox  input { color: #333; padding: 0.5rem 0.75rem; }
.bothSearch_modal .textWrap .topBox  input::placeholder { color: #999; }
.bothSearch_modal .textWrap .topBox button { flex-shrink: 0; width: 20px; height: 20px; background: url(/skin/spec/img/ico_search_black.svg) no-repeat center / contain; }
.bothSearch_modal .textWrap .botBox { display: flex; flex-direction: column; gap: 10px; }
.bothSearch_modal .textWrap .botBox .box { display: flex; justify-content: space-between; align-items: center; }
.bothSearch_modal .textWrap .botBox .box p { font-size: 1.25rem; font-weight: 600; }
.bothSearch_modal .textWrap .botBox .box p span { padding-left: 6px; font-weight: 700; color: var(--mainPurple); }
.bothSearch_modal .textWrap .botBox .box.green p span { color: var(--mainGreen); }
.bothSearch_modal .textWrap .botBox .box .bgBtn { font-size: 18px; font-weight: 500; color: #fff; padding: 10px 50px; border-radius: 30px; background: var(--mainPurple); }
.bothSearch_modal .textWrap .botBox .box.green .bgBtn { background: var(--mainGreen); }
.main-search-ncs { width: 100%; margin-bottom: 60px; }
.main-search-ncs ul { display: flex; justify-content: center; align-items: center; }
.main-search-ncs ul li { float: left; margin-right: 14px; padding: 10px 12px; border: 1px solid #8d7eff; border-radius: 20px; }
.main-search-ncs ul li:last-child { margin-right: 0; }
.main-search-ncs ul li a { font-weight: 500; color: var(--mainPurple); }
.main-cnt-rolling { width: 1620px; margin: 0 auto; margin-bottom: 100px; position: relative; }
.maincntSwiper { margin: -10px; padding: 10px; }
.maincntSwiper .swiper-slide { box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); padding: 30px 26px; border-radius: 30px; }
.main-cnt-rolling .swiper-button-next { right: -50px; color: #999; }
.main-cnt-rolling .swiper-button-prev { left: -50px; color: #999; }
.maincntSwiper .botWrap .listWrap > ul li a { transition: .3s ease; }
.maincntSwiper .topTitle { display: flex; align-items: center; gap: 10px; }
.maincntSwiper .ncsBox .topTitle .icon { width: 38px; height: 32px; background: url(/skin/spec/img/ico_training_color.svg) no-repeat center / contain; }
.maincntSwiper .ncsBox .topTitle { font-size: 22px; font-weight: 600; color: var(--mainGreen); }
.maincntSwiper .ncsBox .moreBtn { margin-top: 30px; width: 100%; font-size: 18px; font-weight: 500; color: #fff; border-radius: 16px; background: var(--mainGreen); display: flex; justify-content: center; padding: 16px; }
.maincntSwiper .ncsBox .cntWrap .cntBox { }
.maincntSwiper .ncsBox .cntWrap .cntBox .topBox {margin-bottom: 40px; position: relative;}
.maincntSwiper .ncsBox .cntWrap .cntBox .topBox a { width: 100%; }
.maincntSwiper .ncsBox .cntWrap .cntBox .topBox figure { height: 150px; margin-bottom: 12px; border-radius: 16px; overflow: hidden;}
.maincntSwiper .ncsBox .cntWrap .cntBox .topBox figure img {width: 100%; height: 100%; }
.maincntSwiper .ncsBox .cntWrap .cntBox .topBox .title { font-size: 20px; font-weight: 600; margin-bottom: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.maincntSwiper .ncsBox .cntWrap .cntBox .topBox .textBox {font-size: 15px; line-height: 1; display: flex; flex-direction: column; gap: 6px;}
.maincntSwiper .ncsBox .cntWrap .cntBox .topBox .textBox .name {margin-right: 4px; color: var(--mainGreen);}
.maincntSwiper .ncsBox .cntWrap .cntBox .topBox .heartBtn {position: absolute; bottom: 2px; right: 4px;}
.maincntSwiper .ncsBox .cntWrap .cntBox .listBox {display: flex; flex-wrap: wrap; gap: 16px; padding-bottom: 12px; }
.maincntSwiper .ncsBox .cntWrap .cntBox .listBox a { width: 100%; }
.maincntSwiper .ncsBox .cntWrap .cntBox .listBox li {border-radius: 16px; border: 1px solid #eee; padding: 16px; width: calc(50% - 8px); position: relative; box-sizing: border-box;}
.maincntSwiper .ncsBox .cntWrap .cntBox .listBox li .heartBtn {position: absolute; right: 16px; top: 16px; z-index: 1;}
.maincntSwiper .ncsBox .cntWrap .cntBox .listBox li .name {font-size: 14px; font-weight: 500; margin-bottom: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; width: calc(100% - 20px); color: var(--mainGreen); }
.maincntSwiper .ncsBox .cntWrap .cntBox .listBox li .place {font-size: 14px; margin-bottom: 12px; font-weight: 500;}
.maincntSwiper .ncsBox .cntWrap .cntBox .listBox li .title {font-size: 18px; font-weight: 600; margin-bottom: 20px; height: 42px; overflow: hidden; word-break: break-word; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.maincntSwiper .ncsBox .cntWrap .cntBox .listBox li .date {font-size: 14px; font-weight: 500;}
.maincntSwiper .specupBox .topTitle .icon { width: 38px; height: 32px; background: url(/skin/spec/img/ico_spec_color.svg) no-repeat center / contain; }
.maincntSwiper .specupBox .topTitle { font-size: 22px; font-weight: 600; color: var(--mainPink); }
.maincntSwiper .specupBox .moreBtn { margin-top: 30px; width: 100%; font-size: 18px; font-weight: 500; color: #fff; border-radius: 16px; background: var(--mainPink); display: flex; justify-content: center; padding: 16px; }
.maincntSwiper .specupBox .cntWrap { display: flex; flex-direction: column; gap: 36px; }
.maincntSwiper .specupBox .cntWrap .cntBox { position: relative; }
.maincntSwiper .specupBox .cntWrap .cntBox a { display: block; }
.maincntSwiper .specupBox .cntWrap .cntBox .img { overflow: hidden; border-radius: 16px; }
.maincntSwiper .specupBox .cntWrap .cntBox .img img { width: 100%; }
.maincntSwiper .specupBox .cntWrap .cntBox .title { margin: 16px 0; font-size: 18px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.maincntSwiper .specupBox .cntWrap .cntBox .d-day { color: #ec5f5f; }
.maincntSwiper .specupBox .cntWrap .cntBox .heartBtn { position: absolute; bottom: 0; right: 0; }
.maincntSwiper .blindBox .topTitle .icon { width: 32px; height: 32px; background: url(/skin/spec/img/ico_blind_color.svg) no-repeat center / contain; }
.maincntSwiper .blindBox .topTitle { font-size: 22px; font-weight: 600; color: var(--mainRed); }
.maincntSwiper .blindBox .moreBtn { margin-top: 28px; width: 100%; font-size: 18px; font-weight: 500; color: #fff; border-radius: 16px; background: var(--mainRed); display: flex; justify-content: center; padding: 16px; }
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li {padding: 23px 0; border-bottom: 1px solid #EEEEEE;}
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li:first-child {padding-top: 0;}
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li:last-child {border-bottom: none;}
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li .top { font-size: 15px; margin-bottom: 12px;}
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li .top .nick {font-weight: 700; margin-right: 2px;}
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li > a { overflow: hidden; height: 74px; margin-bottom: 14px; }
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li .title {font-size: 22px; font-weight: 600; margin-bottom: 8px; overflow: hidden; word-break: break-word; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical;}
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li .text {overflow: hidden; word-break: break-word; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: 16px; color: #666666; line-height: 1.4; margin-bottom: 14px;}
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li .bot {display: flex; justify-content: space-between; align-items: center; padding: 0 40px;}
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li .bot > * {display: flex; align-items: center; gap: 5px; width: 80px; justify-content: center; font-size: 14px;}
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li .bot .heartBtn p {min-width: 2.5em; text-align: left;}
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li .bot .heartBtn .icon { background: url(/skin/spec/img/ico_heart.svg) no-repeat center / contain; }
.maincntSwiper .blindBox .cntWrap .cntBox .commentBox li .bot .heartBtn.ok .icon { background: url(/skin/spec/img/ico_heart_pink.svg) no-repeat center / contain; }

.maincntSwiper ul.menu { /*margin: 26px 0;*/ margin: 18px 0 10px; width: 100%; overflow-x: auto; display: flex; align-items: flex-end; gap: 16px; white-space: nowrap; }
.maincntSwiper ul.menu li a { font-size: 18px; font-weight: 500; color: #adadad; }
.maincntSwiper ul.menu li.active a { font-size: 20px; font-weight: 600; letter-spacing: -1px; position: relative; display: flex; align-items: flex-start; gap: 3px; }
.maincntSwiper ul.menu li.active a::after { content:""; width: 5px; height: 5px; border-radius: 50%; }
.maincntSwiper .ncsBox ul.menu li.active a { color: var(--mainGreen); }
.maincntSwiper .ncsBox ul.menu li.active a::after { background: var(--mainGreen); }
.maincntSwiper .specupBox ul.menu li.active a { color: var(--mainPink); }
.maincntSwiper .specupBox ul.menu li.active a::after { background: var(--mainPink); }
.maincntSwiper .blindBox ul.menu li.active a { color: var(--mainRed); }
.maincntSwiper .blindBox ul.menu li.active a::after { background: var(--mainRed); }
/*.maincntSwiper .ncsBox ul.menu { margin-bottom: 22px; } */


/* 훈련과정 */
.ncs .searchWrap { display: flex; align-items: center; gap: 26px; margin-bottom: 20px; }
.ncs .searchWrap .searchInputBox { display: flex; gap: 32px; }
.ncs .searchWrap .searchInputBox > div { display: flex; align-items: center; gap: 18px; }
.ncs .searchWrap .searchInputBox .src1 { width: 31%; }
.ncs .searchWrap .searchInputBox .src1 #get_area_si_div { width: 50%; }
.ncs .searchWrap .searchInputBox .src1 #get_area_gu_div { width: 50%; }
.ncs .searchWrap .searchInputBox .src1 select { cursor: pointer; color: #333; width: 100%; height: 60px; font-size: 1.125rem; font-weight: 600; border: 1px solid #ddd; border-radius: 30px; padding: 0 20px; box-shadow: none; --bs-form-select-bg-img: none; }
.ncs .searchWrap .searchInputBox .src2 { width: 31%; }
.ncs .searchWrap .searchInputBox .src2 .selectBox { width: 100%; }
.ncs .searchWrap .searchInputBox .src2 .selectBox select { width: 100%; height: 60px; display: flex; align-items: center; color: #333;  border: 1px solid #ddd; border-radius: 30px; cursor: pointer; }
.ncs .searchWrap .searchInputBox .src3 { width: 38%; }

.ncs .filterWrap.ncs { display: flex; flex-direction: column; gap: 20px; padding: 30px; }
.ncs .filterWrap.ncs .box { display: flex; align-items: center; gap: 40px; }
.ncs .filterWrap.ncs .box .box1, .ncs .filterWrap.ncs .box .box2, .ncs .filterWrap.ncs .box3, .ncs .filterWrap.ncs .box4 { display: flex; align-items: center; }
.ncs .filterWrap.ncs .title { width: 80px; }
.ncs .filterWrap.ncs .radioBox { display: flex; align-items: center; gap: 8px; }
.ncs .filterWrap.ncs .radioBox input[type=radio] { display: none; }
.ncs .filterWrap.ncs .radioBox label { display: flex; justify-content: center; align-items: center; width: 100px; height: 40px; font-size: 1rem; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.ncs .filterWrap.ncs .radioBox input[type=radio]:checked + label { background: var(--mainGreen); color: #fff; border-color: transparent; }
.ncs .filterWrap.ncs .dateBox { width: calc(100% - 80px); display: flex; align-items: center; gap: 8px; }
.ncs .filterWrap.ncs .dateBox button { width: 100px; height: 40px; font-size: 1rem; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.ncs .filterWrap.ncs .dateBox span { font-weight: 700; }
.ncs .filterWrap.ncs .dateBox input[type=text] { width: 220px; height: 40px; text-align: center; color: #333; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.ncs .ncsRadioBox { width: 100%; border-bottom: 1px solid #eee; margin-top: 60px; height: 45px; position: relative; }
.ncs .ncsRadioBox .box { position: absolute; bottom: -1px; left: 0; z-index: 1; display: flex;}
.ncs .ncsRadioBox input[type=radio] { display: none; }
.ncs .ncsRadioBox input[type=radio]:checked + label { border: 1px solid #eee; border-radius: 16px 16px 0 0; border-bottom: 1px solid #fff; opacity: 1; }
.ncs .ncsRadioBox label { font-size: 20px; font-weight: 600; padding: 12px 20px 8px; opacity: 0.4;}
.ncs .botButton { margin-top: 26px; text-align: center; }
.ncs .botButton .clickBtn { width: 530px; background: url(/skin/spec/img/ico_search_white.svg) no-repeat 5% 50%; background-color: var(--mainGreen); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.ncs .searchWrapBetween { /*margin-top: 26px;*/ margin-top: 60px; }
.ncs .searchWrapBetween .left { display: flex; gap: 20px; align-items: flex-end; }
.ncs .searchWrapBetween .left .text { font-size: 15px; font-weight: 600; color: #000; padding-bottom: 4px; }
.ncs .swiper-pagination { position: static; }
.ncs .swiper-pagination-bullet {background: var(--mainGreen); width: 12px; height: 12px; border-radius: 14px; transition: .5s ease;}
.ncs .swiper-pagination-bullet-active {width: 36px;}
.ncs .boxWrap { display: flex; flex-direction: column; gap: 70px; }
.ncs .boxWrap h2 {font-size: 22px; font-weight: 700; margin-bottom: 22px;}
.ncs .boxWrap .box1 .trainingSwiper .swiper-slide { position: relative; }
.ncs .boxWrap .box1 .trainingSwiper .heartBtn {position: absolute; right: 350px; bottom: 100px;}
.ncs .boxWrap .box1 .trainingSwiper .heartBtn .icon { width: 26px; height: 26px; }
.ncs .boxWrap .box1 .trainingSwiper a {width: 100%;}
.ncs .boxWrap .box1 .trainingSwiper .imgBox {position: relative; overflow: hidden; height: 300px; border-radius: 30px; margin-bottom: 18px; display: flex; justify-content: center; align-items: center; }
.ncs .boxWrap .box1 .trainingSwiper .imgBox img {width: 100%; object-fit: cover;}
.ncs .boxWrap .box1 .trainingSwiper .btm { display: flex; justify-content: space-between; align-items: flex-start; }
.ncs .boxWrap .box1 .trainingSwiper .btm .left { width: calc(100% - 320px); padding: 12px 22px; height: 130px; position: relative; height: 134px; }
.ncs .boxWrap .box1 .trainingSwiper .btm .left .title { font-size: 24px; font-weight: 700; }
.ncs .boxWrap .box1 .trainingSwiper .btm .left .hashtag { display: flex; align-items: center; gap: 8px; margin-top: 10px; }
.ncs .boxWrap .box1 .trainingSwiper .btm .left .hashtag p { font-size: 14px; color: #fff; background: var(--mainGreen); padding: 6px 14px; border-radius: 20px; }
.ncs .boxWrap .box1 .trainingSwiper .btm .left ul { position: absolute; left: 22px; bottom: 22px; display: flex; align-items: flex-end; gap: 20px; font-weight: 500; color: #999; }
.ncs .boxWrap .box1 .trainingSwiper .btm .left ul li { padding-left: 20px; }
.ncs .boxWrap .box1 .trainingSwiper .btm .left ul li:first-child { background: url(/skin/spec/img/ico_building.svg) no-repeat left / contain; }
.ncs .boxWrap .box1 .trainingSwiper .btm .left ul li:nth-child(2) { background: url(/skin/spec/img/ico_location.svg) no-repeat left / contain; }
.ncs .boxWrap .box1 .trainingSwiper .btm .right { width: 330px; display: flex; flex-direction: column; gap: 20px; padding: 12px 16px; border-left: 2px solid #eee; }
.ncs .boxWrap .box1 .trainingSwiper .btm .right .text { display: flex; align-items: center; gap: 10px; }
.ncs .boxWrap .box1 .trainingSwiper .price { font-size: 24px; color: var(--mainGreen); position: absolute; right: 350px; bottom: 22px; }
.ncs .boxWrap .box2 .listSwiper { display: flex; flex-direction: column; gap: 30px; margin: -10px; padding: 10px; }
.ncs .boxWrap .box2 .listSwiper .swiper-slide { position: relative; border-radius: 30px; box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); background: #fff; width: 415px; height: 464px; overflow: hidden; }
.ncs .boxWrap .box2 .listSwiper a {width: 100%; box-sizing: border-box; }
.ncs .boxWrap .box2 .listSwiper .heartBtn {position: absolute; right: 20px; top: 20px;}
.ncs .boxWrap .box2 .listSwiper .heartBtn .icon { width: 24px; height: 24px; }
.ncs .boxWrap .box2 .listSwiper .img { overflow: hidden; display: flex; align-items: center; justify-content: center; height: 154px; border-bottom: 1px solid #eee; }
.ncs .boxWrap .box2 .listSwiper .img img { height: 90%; }
.ncs .boxWrap .box2 .listSwiper .top { padding: 22px 20px 20px; height: 219px; }
.ncs .boxWrap .box2 .listSwiper .top .title { font-size: 20px; font-weight: 700; height: 48px; margin-bottom: 20px; overflow: hidden; word-break: break-word; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.ncs .boxWrap .box2 .listSwiper .top .text { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.ncs .boxWrap .box2 .listSwiper .top .hashtag { display: flex; align-items: center; gap: 4px; }
.ncs .boxWrap .box2 .listSwiper .top .hashtag p { font-size: 14px; color: #fff; background: var(--mainGreen); padding: 6px 10px; border-radius: 20px; }
.ncs .boxWrap .box2 .listSwiper .btm { border-top: 1px solid #eee; padding: 22px 20px; display: flex; justify-content: space-between; align-items: center; }
.ncs .boxWrap .box2 .listSwiper .btm ul { display: flex; flex-direction: column; gap: 8px; font-weight: 500; color: #999; }
.ncs .boxWrap .box2 .listSwiper .btm ul li { padding-left: 22px; }
.ncs .boxWrap .box2 .listSwiper .btm ul li:first-child { background: url(/skin/spec/img/ico_building.svg) no-repeat left / contain; width: 246px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ncs .boxWrap .box2 .listSwiper .btm ul li:last-child { background: url(/skin/spec/img/ico_location.svg) no-repeat left / contain; }
.ncs .boxWrap .box2 .listSwiper .btm .price { font-size: 22px; color: var(--mainGreen); }
.ncs .boxWrap .box3 .training_listBox {display: flex; gap: 40px; flex-wrap: wrap;}
.ncs .boxWrap .box3 .training_listBox li {position: relative; width: 415px; }
.ncs .boxWrap .box3 .training_listBox .heartBtn {position: absolute; right: 24px; bottom: 20px; z-index: 1;}
.ncs .boxWrap .box3 .training_listBox .heartBtn .icon { width: 25px; height: 24px; }
.ncs .boxWrap .box3 .training_listBox li a {display: block; padding: 20px 24px; border: 1px solid #eee; border-radius: 16px;}
.ncs .boxWrap .box3 .training_listBox a .title { margin-bottom: 14px; font-size: 20px; font-weight: 600; height: 48px; overflow: hidden; word-break: break-word; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.ncs .boxWrap .box3 .training_listBox a .price {margin-bottom: 12px; font-size: 20px; color: var(--mainGreen);}
.ncs .boxWrap .box3 .training_listBox a .place {margin-bottom: 6px; font-size: 14px; display: flex; gap: 6px; font-weight: 500;}
.ncs .boxWrap .box3 .training_listBox a .date {font-size: 14px; display: flex; gap: 6px; font-weight: 500;}

.ncs_detail .hashtagBox {display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.ncs_detail .hashtagBox li {font-size: 14px; background: var(--mainGreen); color: #fff; border-radius: 14px; padding: 5px 11px;}
.ncs_detail .textWrap {display: flex; flex-direction: column; gap: 40px; }
.ncs_detail .textWrap ul {display: flex; flex-direction: column; gap: 30px;}
.ncs_detail .textWrap strong.title {font-size: 18px; margin-bottom: 10px;}
.ncs_detail .textWrap .text {font-size: 16px; line-height: 1.8; color: #666;}
.ncs_detail .textWrap .list1 .text p {display: flex; gap: 10px; align-items: flex-start;}
.ncs_detail .textWrap .list1 .text .circle {width: 4px; height: 4px; border-radius: 50%; background: #666; margin-top: 12px; flex-shrink: 0; }
.ncs_detail .textWrap .list2 .text p {/*display: flex; gap: 10px; align-items: flex-start;*/}
.ncs_detail .textWrap .list2 .text p .left {width: 60px; font-weight: 600;}
.ncs_detail .textWrap .list3 .text {display: flex; flex-wrap: wrap; gap: 6px; flex-direction: row; word-break: break-word;}
.ncs_detail .textWrap .list3 .text li {width: calc(100% / 3 - 4px); border-radius: 16px; border: 1px solid #EEEEEE; padding: 14px 16px; display: flex; flex-direction: column; gap: 4px; box-sizing: border-box;}
.ncs_detail .textWrap .list3 .text li .name { font-size: 18px; color: #333; }
.ncs_detail .textWrap .list5 .subject_list {display: flex; flex-direction: column; gap: 5px;}
.ncs_detail .textWrap .list5 .subject_list li {color: #333; font-weight: 500; border-radius: 25px; border: 1px solid #eee; display: flex; align-items: center; gap: 6px; justify-content: space-between; padding: 14px 20px;}
.ncs_detail .textWrap .list5 .subject_list li p.tt { width: calc(100% - 64px); }
.ncs_detail .textWrap .list5 .subject_list li p.time { font-weight: 600; color: var(--mainGreen); width: 64px; text-align: right; flex-shrink: 0;}
.ncs_detail .textWrap .ncsphotoSwiper { display: flex; flex-direction: column; gap: 20px; }
.ncs_detail .textWrap .ncsphotoSwiper .swiper-slide { border-radius: 16px; background: #eee;  height: 200px; overflow: hidden; }
.ncs_detail .textWrap .ncsphotoSwiper .swiper-slide .img { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; cursor: pointer; }
.ncs_detail .textWrap .ncsphotoSwiper .swiper-slide .img a { display: block; width: 100%; height: 100%; }
.ncs_detail .textWrap .ncsphotoSwiper .swiper-slide .img a img { width: 100%; height: 100%; }
.ncs_detail .textWrap .ncsphotoSwiper .swiper-pagination { position: static; }
.ncs_detail .textWrap .ncsphotoSwiper .swiper-pagination-bullet { background: var(--mainPurple); width: 12px; height: 12px; border-radius: 14px; transition: .5s ease; }
.ncs_detail .textWrap .ncsphotoSwiper .swiper-pagination-bullet-active { width: 36px; }
.ncs_detail .textWrap .list6 .ncspotSwiper { display: flex; flex-direction: column; gap: 20px; }
.ncs_detail .textWrap .list6 .ncspotSwiper .swiper-slide { display: flex; flex-direction: column; }
.ncs_detail .textWrap .list6 .ncspotSwiper .swiper-slide .imgBox { height: 180px; border-radius: 16px 16px 0 0; background: #eee; overflow: hidden; }
.ncs_detail .textWrap .list6 .ncspotSwiper .swiper-slide .textBox { border: 1px solid #ddd; border-top: 0; border-radius: 0 0 16px 16px; padding: 16px; }
.ncs_detail .textWrap .list6 .ncspotSwiper .swiper-slide .textBox .title { margin-bottom: 8px; font-size: 1.125rem; font-weight: 600; height: 42px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.ncs_detail .textWrap .list6 .ncspotSwiper .swiper-slide .textBox .hash { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; flex-direction: row; }
.ncs_detail .textWrap .list6 .ncspotSwiper .swiper-slide .textBox .hash li { font-size: 0.875rem; color: #999; }
.ncs_detail .textWrap .list6 .ncspotSwiper .swiper-pagination { position: static; }
.ncs_detail .textWrap .list6 .ncspotSwiper .swiper-pagination-bullet { background: var(--mainPurple); width: 12px; height: 12px; border-radius: 14px; transition: .5s ease; }
.ncs_detail .textWrap .list6 .ncspotSwiper .swiper-pagination-bullet-active { width: 36px; }
.ncs_detail .textWrap .list7 .blogWrap { display: flex; flex-direction: row; flex-wrap: wrap; gap: 20px; }
.ncs_detail .textWrap .list7 .blogWrap li { width: calc(50% - 10px); }
.ncs_detail .textWrap .list7 .blogWrap li a { display: flex; align-items: center; border: 1px solid #ddd; border-radius: 16px; overflow: hidden; }
.ncs_detail .textWrap .list7 .blogWrap li a .imgBox { width: 180px; height: 100px; background: #eee; overflow: hidden; flex-shrink: 0; }
.ncs_detail .textWrap .list7 .blogWrap li a .textBox { display: flex; flex-direction: column; gap: 16px; padding: 12px 16px; }
.ncs_detail .textWrap .list7 .blogWrap li a .title { font-size: 1.125rem; font-weight: 600; }
.ncs_detail .textWrap .list7 .blogWrap li a .text { font-size: 0.938rem; color: #999; }
.ncs_detail .textWrap .review .text { border-top: 1px solid #eee; gap: 0;}
.ncs_detail .textWrap .review .text li {padding: 14px 20px; border-bottom: 1px solid #eee;}
.ncs_detail .textWrap .place {display: flex; flex-direction: column; }
.ncs_detail .textWrap .place .imgBox {border-radius: 16px; border: 1px solid #EEEEEE; overflow: hidden; text-align: center; margin: 20px 0; }
.ncs_detail .textWrap .place .imgBox img { max-width: calc(100% - 2.5rem); max-height: 130px; padding: 1.125rem; }
.ncs_detail .textWrap .place .name { font-size: 20px; font-weight: 600; margin-bottom: 6px; }
.ncs_detail .textWrap .place .addressBox {margin-top: 12px; display: flex; flex-direction: column; font-size: 16px; gap: 6px;}
.ncs_detail .textWrap .place .addressBox li {display: flex; gap: 8px;}
.ncs_detail .textWrap .place .addressBox .left {width: 60px; font-weight: 600; flex-shrink: 0;}
.ncs_detail .textWrap .place .addressBox .right {color: #666;}
.ncs_detail .textWrap .place .linkBtn {background: var(--mainGreen); padding: 14px 10px; border-radius: 8px; color: #fff; display: flex; align-items: center; justify-content: center; width: 300px; margin: 20px auto 0;}
.ncs_detail .textWrap .mapBox { overflow: hidden; border-radius: 16px; }
.ncs_detail .textWrap .mapBox img {width: 100%;}
.ncs_detail .starBox {display: flex; align-items: flex-end; justify-content: space-between; color: #feb700; margin-bottom: 26px; }
.ncs_detail .starBox .star .icon {width: 42px; height: 42px;}
.ncs_detail .starBox .star .icon:not(.full) {background-image: url(/skin/spec/img/ico_star.svg);}
.ncs_detail .starBox .star > li {display: flex; gap: 10px; }
.ncs_detail .starBox .star > li i { display: block; width: 42px; height: 42px; }
.ncs_detail .starBox .star > li i.fa-solid.fa-star { background: url(/skin/spec/img/ico_star_full.svg) no-repeat center / contain; }
.ncs_detail .starBox .star > li i.fa-solid.fa-star-half-alt { background: url(/skin/spec/img/ico_star_half2.svg) no-repeat center / contain; }
.ncs_detail .starBox .star > li i.fa-regular.fa-star { background: url(/skin/spec/img/ico_star.svg) no-repeat center / contain; }

.ncs_detail .ncsYoyak { display: flex; flex-direction: column; gap: 20px; padding: 24px; border-radius: 16px; background: #fff1cb; }
.ncs_detail .ncsYoyak .title { font-size: 1.375rem; font-weight: 700; color: #333; }
.ncs_detail .ncsYoyak .box { display: flex; flex-direction: initial; align-items: center; flex-wrap: wrap; gap: 10px; }
.ncs_detail .ncsYoyak .box li { display: flex; align-items: center; gap: 4px; }
.ncs_detail .ncsYoyak .box .ttip { position: relative; }
.ncs_detail .ncsYoyak .box li > div { display: flex; align-items: center; gap: 10px; font-size: 1.125rem; font-weight: 600; color: var(--mainPurple); padding: 7px 16px; border: 1px solid #ddd; border-radius: 6px; background: #fff; }
.ncs_detail .ncsYoyak .box .ttip .icon { width: 18px; height: 18px; background: url(/skin/spec/img/ico_what.svg) no-repeat center / contain; opacity: .2; }
.ncs_detail .ncsYoyak .box li > p { font-weight: 500; }
.ncs_detail .ncsYoyak .box .ttip p { display: none; position: absolute; top: calc(100% + 4px); left: calc(-50% + 1.5em); width: 200px; padding: 10px; font-size: 0.938rem; font-weight: 300; color: #fff; border-radius: 10px; background: rgba(0, 0, 0, .7); z-index: 1; transition: .4s ease; }
.ncs_detail .ncsYoyak .text { font-size: 0.938rem; color: #999; }
.ncs_detail .ncsYoyak .box .ttip:hover p, .ncs_detail .ncsYoyak .box .ttip:focus p { display: block; }

.bmk_modal.modalCon .boxWrap { max-width: 400px; }
.bmk_modal.modalCon .boxWrap .close { top: 28px; right: 24px; }
.bmk_modal .red { padding-top: 30px; padding-bottom: 8px; font-size: 1.125rem; font-weight: 600; color: #333; }
.bmk_modal .gray { font-size: 0.875rem; font-weight: 500; }
.bmk_modal .writeBtn { width: 100%; height: 47px; border-radius: 16px; color: #fff; font-size: 16px; font-weight: 600; margin-top: 24px; background: var(--mainPurple); }


/* 부트캠프 */
.cnt-wrap.bootcamp > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.bootcamp .searchWrap { display: flex; align-items: center; gap: 26px; margin-bottom: 20px; }
.bootcamp .botList { display: flex; gap: 20px; flex-wrap: wrap; }
.bootcamp .botListBox { border-radius: 16px; overflow: hidden; }
.bootcamp .botListBox .dep1 { width: 375px; display: flex; align-items: center; background: #fff; position: relative; }
.bootcamp .botListBox .dep1 .title { width: 100%; padding: 14px 18px; font-size: 18px; color: #333; font-weight: 600; display: flex; gap: 10px; align-items: center; }
.bootcamp .botListBox .dep1 .title i { display: block; width: 16px; height: 17px; background: url(/skin/spec/img/ico_arrow_down.svg) no-repeat center / contain; transition: .4s ease; }
.bootcamp .botListBox .dep1 .title:not(.collapsed) i { transform: rotate(-180deg); }
.bootcamp .botListBox .dep1 .checkBtn { position: absolute; top: 16px; right: 16px; }
.bootcamp .botListBox .dep2 { background: #fff; padding: 14px 16px 14px 46px; border-top: 1px solid #eee; border-radius: 0 0 16px 16px; }
.bootcamp .botListBox .dep2 li { width: 100%; display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; cursor: pointer; }
.bootcamp .botListBox .dep2 li:last-child { margin-bottom: 0; }
.bootcamp .botListBox .dep2 li label { color: #999; cursor: pointer; }
.bootcamp .botList input[type=checkbox] {width: 16px; height: 16px; border-radius: 4px; border: 1px solid #999999; position: relative;}
.bootcamp .botList input[type=checkbox]:checked {border-color: #8D7EFF;}
.bootcamp .botList input[type=checkbox]:checked:after {content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 10px; height: 10px; border-radius: 2px; background: var(--mainPurple)}
.bootcamp .checkList { border: 1px solid #eee; margin-top: 20px; padding: 16px; border-radius: 30px; }
ul.checkList {display: flex; flex-wrap: wrap; gap: 12px; }
ul.checkList li {border-radius: 30px; border: 1px solid var(--mainPurple); color: var(--mainPurple); font-size: 16px; font-weight: 500; padding: 5px 12px; display: flex; gap: 8px; align-items: center;}
ul.checkList li button { width: 12px; height: 12px; }
ul.checkList li i { display: block; }
ul.checkList li .fa-xmark {width: 12px; height: 12px; background: url(/skin/spec/img/ico_close_purple.svg) no-repeat center / contain;}

.bootcamp .searchWrap { display: flex; align-items: center; gap: 26px; margin-bottom: 20px; }
.bootcamp .searchWrap .searchInputBox { display: flex; gap: 32px; }
.bootcamp .searchWrap .searchInputBox > div { display: flex; align-items: center; gap: 18px; }
.bootcamp .searchWrap .searchInputBox .src1 { width: 31%; }
.bootcamp .searchWrap .searchInputBox .src1 #get_area_si_div { width: 50%; }
.bootcamp .searchWrap .searchInputBox .src1 #get_area_gu_div { width: 50%; }
.bootcamp .searchWrap .searchInputBox .src1 select { cursor: pointer; color: #333; width: 100%; height: 60px; font-size: 1.125rem; font-weight: 600; border: 1px solid #ddd; border-radius: 30px; padding: 0 20px; box-shadow: none; --bs-form-select-bg-img: none; }
.bootcamp .searchWrap .searchInputBox .src2 { width: 31%; }
.bootcamp .searchWrap .searchInputBox .src2 .selectBox { width: 100%; }
.bootcamp .searchWrap .searchInputBox .src2 .selectBox select { width: 100%; height: 60px; display: flex; align-items: center; color: #333;  border: 1px solid #ddd; border-radius: 30px; cursor: pointer; }
.bootcamp .searchWrap .searchInputBox .src3 { width: 38%; }
.bootcamp .filterWrap.ncs { display: flex; flex-direction: column; gap: 20px; padding: 30px; }
.bootcamp .filterWrap.ncs .box { display: flex; align-items: center; gap: 40px;}
.bootcamp .filterWrap.ncs .box .box1, .bootcamp .filterWrap.ncs .box .box2, .bootcamp .filterWrap.ncs .box3, .bootcamp .filterWrap.ncs .box4 { display: flex; align-items: center; }
.bootcamp .filterWrap.ncs .title { width: 80px; }
.bootcamp .filterWrap.ncs .radioBox { display: flex; align-items: center; gap: 8px; }
.bootcamp .filterWrap.ncs .radioBox input[type=radio] { display: none; }
.bootcamp .filterWrap.ncs .radioBox label { display: flex; justify-content: center; align-items: center; width: 100px; height: 40px; font-size: 1rem; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.bootcamp .filterWrap.ncs .radioBox input[type=radio]:checked + label { background: var(--mainPurple); color: #fff; border-color: transparent; }
.bootcamp .filterWrap.ncs .dateBox { width: calc(100% - 80px); display: flex; align-items: center; gap: 8px; }
.bootcamp .filterWrap.ncs .dateBox input[type=text]::placeholder { font-weight: 400; color: #999;}
.bootcamp .filterWrap.ncs .dateBox button { width: 100px; height: 40px; font-size: 1rem; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.bootcamp .filterWrap.ncs .dateBox span { font-weight: 700; }
.bootcamp .filterWrap.ncs .dateBox input[type=text] { width: 220px; height: 40px; text-align: center; color: #333; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.bootcamp .ncsRadioBox { width: 100%; border-bottom: 1px solid #eee; margin-top: 60px; height: 45px; position: relative; }
.bootcamp .ncsRadioBox .box { position: absolute; bottom: -1px; left: 0; z-index: 1; display: flex;}
.bootcamp .ncsRadioBox input[type=radio] { display: none; }
.bootcamp .ncsRadioBox input[type=radio]:checked + label { border: 1px solid #eee; border-radius: 16px 16px 0 0; border-bottom: 1px solid #fff; opacity: 1; }
.bootcamp .ncsRadioBox label { font-size: 20px; font-weight: 600; padding: 12px 20px 8px; opacity: 0.4;}

.bootcamp .botButton { margin-top: 26px; text-align: center; }
.bootcamp .botButton .clickBtn { width: 530px; background: url(/skin/spec/img/ico_search_white.svg) no-repeat 5% 50%; background-color: var(--mainPurple); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.bootcamp .searchWrapBetween .left { display: flex; gap: 20px; align-items: flex-end; }
.bootcamp .searchWrapBetween .left .text { font-size: 15px; font-weight: 600; color: #000; padding-bottom: 4px; }
.bootcamp .listWrap {margin-bottom: 30px;}
.bootcamp .listWrap li {position: relative;}
.bootcamp .listWrap li:not(:last-child) {border-bottom: 1px solid #EEEEEE;}
.bootcamp .listWrap li a {display: flex; align-items: center; gap: 80px; padding: 20px 0;}
.bootcamp .listWrap li a .leftBox { width: 520px; }
.bootcamp .listWrap li:first-child a {padding-top: 0;}
.bootcamp .listWrap a .hashtagBox {display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 14px; }
.bootcamp .listWrap a .hashtagBox li {font-size: 12px; background: rgba(144, 165, 255, .2); color: var(--mainPurple); font-weight: 600; border-radius: 14px; padding: 5px 11px;}
.bootcamp .listWrap a .hashtagBox li.whiteBg {background: var(--mainPurple); color: #fff;}
.bootcamp .listWrap a .hashtagBox li.locaBg { background: #fff; border: 1px solid color-mix(in srgb, currentColor 50%, transparent); }
.bootcamp .listWrap a .hashtagBox li.ctgyBg { background: #fff; border: 1px solid color-mix(in srgb, currentColor 50%, transparent); color: var(--mainPurple); }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c01 { color: #FF4D4D; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c01 p { color: #FF4D4D !important; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c02 { color: #2546EB; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c02 p { color: #2546EB !important; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c03 { color: #FF983E; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c03 p { color: #FF983E !important; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c04 { color: #00C3D9; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c04 p { color: #00C3D9 !important; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c05 { color: #9B33DF; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c05 p { color: #9B33DF !important; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c06 { color: #4D88FF; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c06 p { color: #4D88FF !important; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c07 { color: #00BE2C; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c07 p { color: #00BE2C !important; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c08 { color: #DC71E5; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c08 p { color: #DC71E5 !important; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c09 { color: #7ACB00; }
.bootcamp .listWrap a .hashtagBox li.ctgyBg.c09 p { color: #7ACB00 !important; }
.bootcamp .listWrap a .title { width: 520px; font-size: 22px; font-weight: 600; margin-bottom: 16px; max-height: 52px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.bootcamp .listWrap a .price { width: 180px; font-size: 24px; font-weight: 700; color: var(--mainPurple); }
.bootcamp .listWrap a .date { width: 350px; display: flex; align-items: center; gap: 12px; font-size: 16px; font-weight: 600; }
.bootcamp .listWrap a .d-day {font-size: 14px; font-weight: 500; background: #FF7676; padding: 6px 12px; color: #fff; border-radius: 21px; flex-shrink: 0; }
.bootcamp .listWrap a .week { font-size: 16px; font-weight: 700; width: 250px; }
.bootcamp .listWrap .heartBtn {position: absolute; right: 16px; top: 50%; transform: translate(0, -50%); }
.bootcamp .listWrap .heartBtn .icon { width: 24px; height: 24px; }
.bootcamp .pageWrap { padding-top: 0; }

.cnt-wrap.bootcamp_detail > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.bootcamp_detail .hashtagBox {display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.bootcamp_detail .hashtagBox li {font-size: 14px; background: rgba(144, 165, 255, .2); color: var(--mainPurple); font-weight: 600; border-radius: 14px; padding: 5px 11px;}
.bootcamp_detail .hashtagBox li.whiteBg {background: var(--mainPurple); color: #fff;}
.bootcamp_detail .textWrap {display: flex; flex-direction: column; gap: 40px; }
.bootcamp_detail .textWrap ul {display: flex; flex-direction: column; gap: 30px;}
.bootcamp_detail .textWrap strong.title {font-size: 18px; margin-bottom: 10px;}
.bootcamp_detail .textWrap .text {font-size: 16px; line-height: 1.8; color: #666;}
.bootcamp_detail .textWrap .list1 .text p {display: flex; gap: 10px; align-items: flex-start;}
.bootcamp_detail .textWrap .list1 .text .subsidyBox {display: flex; gap: 10px; align-items: flex-start;}
.bootcamp_detail .textWrap .list1 .text .circle {width: 4px; height: 4px; border-radius: 50%; background: #666; margin-top: 12px; flex-shrink: 0; }
.bootcamp_detail .textWrap .list1 .text .moneyy { font-size: 13px; font-weight: 500; color: #6827ff; padding: 0 6px; border-radius: 4px; background: rgba(0,90,255,0.1); }
.bootcamp_detail .textWrap .list1 .text .subsidy { gap: 0; }
.bootcamp_detail .textWrap .list2 .text p {display: flex; gap: 10px; align-items: flex-start;}
.bootcamp_detail .textWrap .list2 .text p .left {width: 60px; font-weight: 600;}
.bootcamp_detail .textWrap .list3 .text {border-radius: 16px; border: 1px solid #eee; padding: 18px;}
.bootcamp_detail .textWrap .list3 .title2 {padding: 2px 14px; border-radius: 21px; margin-bottom: 10px;}
.bootcamp_detail .textWrap .list3 .text li.pilsu .title2 {background: rgba(255, 118, 118, .2); color: #ff7676;}
.bootcamp_detail .textWrap .list3 .text li.ude .title2 {background: rgba(141, 126, 255, .2); color: var(--mainPurple);}
.bootcamp_detail .textWrap .list3 .text .text2 {display: flex; flex-direction: column; gap: 1px;}
.bootcamp_detail .textWrap .list3 .text .text2 p {display: flex; gap: 8px; align-items: flex-start;}
.bootcamp_detail .textWrap .list3 .text .text2 .circle {width: 4px; height: 4px; border-radius: 50%; margin-top: 11px;}
.bootcamp_detail .textWrap .list3 .text li.pilsu .text2 .circle {background: #ff7676; flex-shrink: 0; }
.bootcamp_detail .textWrap .list3 .text li.ude .text2 .circle {background: var(--mainPurple); flex-shrink: 0; }
.bootcamp_detail .textWrap > .list3 { display: flex; gap: 20px; flex-direction: initial; }
.bootcamp_detail .textWrap > .list3 > li { width: 50%; }
.bootcamp_detail .textWrap .list3 ul.text { gap: 40px; }
.bootcamp_detail .textWrap .list4 .text {display: flex; flex-wrap: wrap; gap: 6px; flex-direction: row; word-break: break-word; overflow: hidden; }
.bootcamp_detail .textWrap .list4 .text li {width: calc(100% / 3 - 4px); border-radius: 16px; border: 1px solid #EEEEEE; padding: 14px 16px; display: flex; flex-direction: column; gap: 4px; box-sizing: border-box;}
.bootcamp_detail .textWrap .list4 .text li .name { font-size: 18px; color: #333; }
.bootcamp_detail .textWrap .list4 .heightWrap { position: relative; }
.bootcamp_detail .textWrap .list4 .heightWrap .moreBg { position: absolute; bottom: 0; width: 100%; height: 100px; background: linear-gradient(0deg, #fff 10%, transparent); }
.bootcamp_detail .textWrap .list4 .more { width: 100%; margin-top: 10px; padding: 10px; font-size: 14px; text-align: center; color: var(--mainPurple); border: 1px solid var(--mainPurple); border-radius: 4px; }
.bootcamp_detail .textWrap .list5 .text { flex-direction: row; gap: 10px; }
.bootcamp_detail .textWrap .list5 .text li { display: flex; align-items: center; gap: 10px; }
.bootcamp_detail .textWrap .list5 .text li:after { content:''; display: inline-block; width: 12px; height: 16px; margin-top: -2px; background: url(/skin/spec/img/ico_arrow_left_purple.svg) no-repeat right / contain; transform: rotate(180deg); }
.bootcamp_detail .textWrap .list5 .text li:last-child:after { background: none; }
.bootcamp_detail .textWrap .list5 .textBox { margin-top: 10px; padding: 10px 16px; border-radius: 10px; background: #f5f6f9; }
.bootcamp_detail .textWrap .list5 .textBox .title { font-size: 16px; font-weight: 600; line-height: 1.8; color: var(--mainPurple); }
.bootcamp_detail .textWrap .list6 .textBox { padding: 10px 16px; border-radius: 10px; background: #f5f6f9; }
.bootcamp_detail .textWrap .list6 .text { padding: 12px 16px; border-radius: 10px; background: #f5f6f9; }
.bootcamp_detail .textWrap .list6 .text p { display: flex; gap: 10px; align-items: flex-start; }
.bootcamp_detail .textWrap .list6 .text .circle {width: 4px; height: 4px; border-radius: 50%; background: #666; margin-top: 11px; flex-shrink: 0; }
.bootcamp_detail .textWrap .list7 .heightWrap { position: relative; }
.bootcamp_detail .textWrap .list7 .heightWrap .img { max-width: 800px; margin: 0 auto; overflow: hidden; height: 400px; }
.bootcamp_detail .textWrap .list7 .heightWrap .img img { max-width: 100%; }
.bootcamp_detail .textWrap .list7 .heightWrap .moreBg { position: absolute; bottom: 0; width: 100%; height: 200px; background: linear-gradient(0deg, #fff 20%, transparent); }
.bootcamp_detail .textWrap .list7 .more { width: 100%; padding: 10px; font-size: 14px; text-align: center; color: var(--mainPurple); border: 1px solid var(--mainPurple); border-radius: 4px; }
.bootcamp_detail .textWrap .list8 .bootphotoSwiper { display: flex; flex-direction: column; gap: 20px; }
.bootcamp_detail .textWrap .list8 .bootphotoSwiper .swiper-slide { border-radius: 16px; background: #eee;  height: 220px; overflow: hidden; }
.bootcamp_detail .textWrap .list8 .bootphotoSwiper .swiper-slide .img { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; cursor: pointer; }
.bootcamp_detail .textWrap .list8 .bootphotoSwiper .swiper-pagination { position: static; }
.bootcamp_detail .textWrap .list8 .bootphotoSwiper .swiper-pagination-bullet { background: var(--mainPurple); width: 12px; height: 12px; border-radius: 14px; transition: .5s ease; }
.bootcamp_detail .textWrap .list8 .bootphotoSwiper .swiper-pagination-bullet-active { width: 36px; }
.bootcamp_detail .textWrap .list9 .bootpotSwiper { display: flex; flex-direction: column; gap: 20px; }
.bootcamp_detail .textWrap .list9 .bootpotSwiper .swiper-slide { display: flex; flex-direction: column; }
.bootcamp_detail .textWrap .list9 .bootpotSwiper .swiper-slide .imgBox { height: 180px; border-radius: 16px 16px 0 0; background: #eee; overflow: hidden; }
.bootcamp_detail .textWrap .list9 .bootpotSwiper .swiper-slide .textBox { border: 1px solid #ddd; border-top: 0; border-radius: 0 0 16px 16px; padding: 16px; }
.bootcamp_detail .textWrap .list9 .bootpotSwiper .swiper-slide .textBox .title { margin-bottom: 8px; font-size: 1.125rem; font-weight: 600; height: 42px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.bootcamp_detail .textWrap .list9 .bootpotSwiper .swiper-slide .textBox .hash { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; flex-direction: row; }
.bootcamp_detail .textWrap .list9 .bootpotSwiper .swiper-slide .textBox .hash li { font-size: 0.875rem; color: #999; }
.bootcamp_detail .textWrap .list9 .bootpotSwiper .swiper-pagination { position: static; }
.bootcamp_detail .textWrap .list9 .bootpotSwiper .swiper-pagination-bullet { background: var(--mainPurple); width: 12px; height: 12px; border-radius: 14px; transition: .5s ease; }
.bootcamp_detail .textWrap .list9 .bootpotSwiper .swiper-pagination-bullet-active { width: 36px; }
.bootcamp_detail .textWrap .list10 .blogWrap { display: flex; flex-direction: row; flex-wrap: wrap; gap: 20px; }
.bootcamp_detail .textWrap .list10 .blogWrap li { width: calc(50% - 10px); }
.bootcamp_detail .textWrap .list10 .blogWrap li a { display: flex; align-items: center; border: 1px solid #ddd; border-radius: 16px; overflow: hidden; }
.bootcamp_detail .textWrap .list10 .blogWrap li a .imgBox { width: 180px; height: 100px; background: #eee; overflow: hidden; flex-shrink: 0; }
.bootcamp_detail .textWrap .list10 .blogWrap li a .textBox { display: flex; flex-direction: column; gap: 16px; padding: 12px 16px; }
.bootcamp_detail .textWrap .list10 .blogWrap li a .title { font-size: 1.125rem; font-weight: 600; }
.bootcamp_detail .textWrap .list10 .blogWrap li a .text { font-size: 0.938rem; color: #999; }
.autoHeight { height: auto !important; }
.displayNone { display: none !important; }
.bootcamp_detail .textWrap .review .heightWrap { position: relative; }
.bootcamp_detail .textWrap .review .heightWrap .moreBg { position: absolute; bottom: 0; width: calc(100% + 48px); height: 100px; margin-left: -24px; margin-right: -24px; background: linear-gradient(0deg, #fff 20%, transparent); }
.bootcamp_detail .textWrap .review .more { width: 100%; padding: 10px; font-size: 14px; text-align: center; color: var(--mainPurple); border: 1px solid var(--mainPurple); border-radius: 4px; }
.bootcamp_detail .textWrap .review .text {margin-left: -24px; margin-right: -24px; border-top: 1px solid #eee; gap: 0; overflow: hidden; }
.bootcamp_detail .textWrap .review .text li {padding: 14px 26px; border-bottom: 1px solid #eee;}
.bootcamp_detail .starBox {display: flex; align-items: flex-end; justify-content: space-between; color: #feb700; margin-bottom: 26px; }
.bootcamp_detail .starBox .star .icon {width: 42px; height: 42px;}
.bootcamp_detail .starBox .star .icon:not(.full) {background-image: url(/skin/spec/img/ico_star.svg);}
.bootcamp_detail .starBox .star > li {display: flex; gap: 10px; }
.bootcamp_detail .starBox .star > li i { display: block; width: 42px; height: 42px; }
.bootcamp_detail .starBox .star > li i.fa-solid.fa-star { background: url(/skin/spec/img/ico_star_full.svg) no-repeat center / contain; }
.bootcamp_detail .starBox .star > li i.fa-solid.fa-star-half-alt { background: url(/skin/spec/img/ico_star_half2.svg) no-repeat center / contain; }
.bootcamp_detail .starBox .star > li i.fa-regular.fa-star { background: url(/skin/spec/img/ico_star.svg) no-repeat center / contain; }

.bootcamp_detail .bootYoyak { display: flex; flex-direction: column; gap: 20px; padding: 24px; border-radius: 16px; background: #ffd9d9; }
.bootcamp_detail .bootYoyak .title { font-size: 1.375rem; font-weight: 700; color: #333; }
.bootcamp_detail .bootYoyak .box { display: flex; flex-direction: initial; align-items: center; flex-wrap: wrap; gap: 10px; }
.bootcamp_detail .bootYoyak .box li { display: flex; align-items: center; gap: 4px; }
.bootcamp_detail .bootYoyak .box .ttip { position: relative; }
.bootcamp_detail .bootYoyak .box li > div { display: flex; align-items: center; gap: 10px; font-size: 1.125rem; font-weight: 600; color: var(--mainPurple); padding: 7px 16px; border: 1px solid #ddd; border-radius: 6px; background: #fff; }
.bootcamp_detail .bootYoyak .box .ttip .icon { width: 18px; height: 18px; background: url(/skin/spec/img/ico_what.svg) no-repeat center / contain; opacity: .2; }
.bootcamp_detail .bootYoyak .box li > p { font-weight: 500; }
.bootcamp_detail .bootYoyak .box .ttip p { display: none; position: absolute; top: calc(100% + 4px); left: calc(-50% + 1.5em); width: 200px; padding: 10px; font-size: 0.938rem; font-weight: 300; color: #fff; border-radius: 10px; background: rgba(0, 0, 0, .7); z-index: 1; transition: .4s ease; }
.bootcamp_detail .bootYoyak .text { font-size: 0.938rem; color: #999; }
.bootcamp_detail .bootYoyak .box .ttip:hover p, .bootcamp_detail .bootYoyak .box .ttip:focus p { display: block; }


/* 훈련과정&부트캠프 신청폼 */
.modal-content { border-radius: 30px; }
.modal-header { padding: 18px 30px; border-bottom: 1px solid #eee;}
.modal-header .modal-title { font-size: 18px; font-weight: 600; }
.modal-body { padding: 22px 30px; }
.modal-body .title { font-size: 16px; font-weight: 500; margin-bottom: 14px; }
.modal-body .title p { font-size: 18px; margin-top: 6px; }
.modal-body .title.green { padding: 16px 22px; border-radius: 16px; background: rgba(138, 192, 56, 0.1); }
.modal-body .title.default { padding: 16px 22px; border-radius: 16px; background: rgba(141, 126, 255, 0.1); }
.modal-body .title.green span { font-weight: 600; color: var(--mainGreen); }
.modal-body .title.default span { font-weight: 600; color: var(--mainPurple); }
.modal-footer { border-top: 0; justify-content: center; padding: 0 24px 16px; flex-wrap: nowrap; gap: 10px; }
.modal-footer .bgBtn { width: 60%; font-size: 18px; font-weight: 500; color: #fff; padding: 14px; border-radius: 30px; background: var(--mainPurple); }
.modal-footer .bgBtn.green { background: var(--mainGreen); }
.modal-footer .lineBtn { width: 60%; font-size: 18px; font-weight: 500; color: var(--mainPurple); padding: 14px; border-radius: 30px; border: 1px solid var(--mainPurple); }
.modal-footer .lineBtn.green { color: var(--mainGreen); border: 1px solid var(--mainGreen); }

.sub.training_view.write .inner {padding-top: 15px; padding-bottom: 15px; height: calc(100% - 63px); overflow-y: auto;}
.modal-body .writeTable {margin-bottom: 14px;}
.modal-body .writeTable tr.focus > * {border-color: var(--mainGreen);}
.modal-body .textareaBox textarea:focus {border-color: var(--mainGreen);}
.modal-body .writeTable .nice-select:after {border-color: var(--mainGreen);}
.modal-body span.green { font-size: 1.125rem; font-weight: 500; color: var(--mainGreen); padding: 7px 0 3px; }
.modal-body .ncsBox {font-size: 16px; display: flex; flex-direction: column; gap: 10px; text-align: center; font-weight: 500; }
.modal-body .ncsBox .checkWrap {display: flex; gap: 12px; margin: 0 auto;}
.modal-body .ncsBox .checkWrap li {width: 100%;}
.modal-body .ncsBox .checkWrap label {border-radius: 35px; width: 200px; color: #ddd; border: 1px solid #ddd; transition: .5s ease; padding: 10px;}
.modal-body .ncsBox .checkWrap input { width: 0; height: 0; }
.modal-body .ncsBox .checkWrap input:checked + label {background: var(--mainGreen); border-color: var(--mainGreen); color: #fff;}
.modal-body .privacyBox { font-size: 0.938rem; display: flex; gap: 6px; justify-content: center; align-items: center; font-weight: 500; margin-top: 50px; }
.modal-body .privacyBox p a { text-decoration: underline; }
.modal-body .privacyBox .privacyCheck { width: 20px; height: 20px; border: 1px solid #ddd; border-radius: 10px; }
.modal-body .privacyBox .privacyCheck:checked { background: url(/skin/spec/img/ico_check.svg) no-repeat center / contain; background-color: var(--mainPurple); border-color: transparent; }
.modal-body .privacyBox.green .privacyCheck:checked { background: url(/skin/spec/img/ico_check.svg) no-repeat center / contain; background-color: var(--mainGreen); border-color: transparent; }

#nomember_minibox .btn-box { display: flex; flex-direction: column; gap: 16px; }
#nomember_minibox .btn-box button { width: 100%; font-size: 1rem; font-weight: 500; padding: 12px; border-radius: 36px; }
#nomember_minibox .btn-box button:first-child { background-color: #FFDF01; color: #350d00; }
#nomember_minibox .btn-box button:nth-child(2) { background-color: #00C739; color: #FFF; }
#nomember_minibox .btn-box button:last-child { background-color: #fff; color: #333; border: 1px solid #ddd; }


/*상담*/
.modalbtnBox { margin-top: 30px; }
.modalbtnBox .bgBtn { width: 100%; font-size: 18px; font-weight: 500; color: #fff; padding: 14px; border-radius: 30px; background: var(--mainPurple); }
.modalbtnBox .bgBtn.green { background: var(--mainGreen); }
.modal-body .spinner-border { color: var(--mainPurple); }
.modal-body .spinner-border.green { color: var(--mainGreen); }

.chat-room { position: relative; height: 100%; }
.chat-header { padding-bottom: 10px; border-bottom: 1px solid #eee; margin-bottom: 8px; }
.chat-header .top { display: flex; justify-content: space-between; align-items: center; }
.chat-header .top p { font-size: 1.125rem; font-weight: 500; color: #000; }
.chat-header .top .exit { font-size: 0.875rem; color: #333; padding: 6px 8px; border-radius: 4px; border: 1px solid #eee; background: #fff; }
.chat-header .btm { margin-top: 10px; }
.chat-header .btm p { color: var(--mainGreen); margin-bottom: 6px; }
.chat-header .btm .ncs { font-size: 1rem; font-weight: 500; }
.chat-body { overflow-x: hidden; display: inline-block; width: 100%; -ms-overflow-style: none; scrollbar-width: none; }
.chat-body::-webkit-scrollbar { display: none; }
.chat-body .left { display: flex; justify-content: flex-start; padding: 6px 0; padding-left: 6px; position: relative; word-break: break-all; font-size: 16px; }
.chat-body .chat-left { background: #eee; max-width: 260px; border-radius: 16px; font-size: 1rem; font-weight: 400; padding: 7px 14px; position: relative; display: inline-block; width: fit-content; z-index: 1;}
.chat-body .chat-left::before {content: ''; width: 20px; height: 14px; position: absolute; background: url(/skin/spec/img/chat_gray.svg) no-repeat center / contain; left: -5px; bottom: -5px; }
.chat-body .right { display: flex; justify-content: flex-end; padding: 6px 0; padding-right: 6px; position: relative; word-break: break-all; font-size: 16px; }
.chat-body .chat-right { color: #fff; background: var(--mainGreen); max-width: 270px; border-radius: 16px; font-size: 1rem; font-weight: 400; padding: 7px 14px; position: relative; display: inline-block; width: fit-content; z-index: 1;}
.chat-body .chat-right::before {content: ''; width: 20px; height: 14px; position: absolute; background: url(/skin/spec/img/chat_green.svg) no-repeat center / contain; right: -5px; bottom: -1px; }

.chat-footer { width: 100%; display: flex; align-items: center; flex-wrap: nowrap; gap: 12px; }

.chat-footer textarea {width: 100%; height: 40px; padding: 9px 16px; font-size: 17px; border-radius: 30px; border: 1px solid #ddd; box-sizing: border-box; color: var(--black); resize: none; }
.chat-footer textarea::placeholder {color: #ddd;}
.chat-footer .sendBtn {width: 40px; height: 40px; flex: none; border-radius: 50%; background: var(--mainGreen); }
.chat-footer .sendBtn .icon {width: 100%; height: 100%; background: url(/skin/spec/img/ico_send.svg) no-repeat center / contain;}

.chat-body .buy-form { padding-top: 26px; position: relative; }
.chat-body .buy-form span { font-weight: 500; color: var(--mainPurple); }
.chat-body .buy-form .btn-box { display: flex; justify-content: center; align-items: center; gap: 10px; margin-top: 26px; }
.chat-body .buy-form .btn-box .cancle { position: absolute; top: 0; right: 0; width: 16px; height: 16px; background: url(/skin/spec/img/ico_close.svg) no-repeat center / contain; }
.chat-body .buy-form .btn-box .bgBtn { width: 300px; padding: 16px; color: #fff; border-radius: 30px; background: var(--mainPurple); }
.chat-footer .sendBtn.edu { /*background: var(--mainPurple);*/ }

/* 청년지원 */
.cnt-wrap.youth > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.youth .topBox { margin-bottom: 40px; }
.youth .topBox .title {font-size: 22px; font-weight: 700; color: #333; margin-bottom: 24px; }
.youth .topBox .title strong {color: var(--mainPurple);}
.youth .topBox .topSupportSwiper { padding: 30px 0 60px 0; background: #eee; border-radius: 30px; }
.youth .topBox .swiper-slide { position: relative; transform: scale(.7); opacity: .4; }
.youth .topBox .swiper-slide.swiper-slide-active {transform: none; opacity: 1; z-index: 1;} 
.youth .topBox .swiper-slide.swiper-slide-next { transform: scale(.8); opacity: .8; left: 2%; }
.youth .topBox .swiper-slide.swiper-slide-prev { transform: scale(.8); opacity: .8; right: 2%; }
.youth .topBox .swiper-pagination { position: absolute; bottom: 20px; color: #666; font-weight: 500; }
.youth .topBox .swiper-pagination .swiper-pagination-current { color: #000; font-weight: 700; }
.swiper-slide > .listBox { width: 100% !important; }
.youth .searchWrap { display: flex; align-items: center; gap: 26px; margin-bottom: 20px; }
.youth .searchWrap .searchInputBox { display: flex; gap: 32px; }
.youth .searchWrap .searchInputBox div { display: flex; align-items: center; gap: 18px; width: 100%; }
.youth .searchWrap .searchInputBox div.sel { width: 36%; }
.youth .searchWrap .searchInputBox div.sel select { width: 100%; font-weight: 500; color: #333; height: 60px; border: 1px solid #ddd; border-radius: 30px; }

.filterWrap.youth { display: flex; flex-direction: column; gap: 32px; padding: 30px; }
.filterWrap.youth > div { display: flex; }
.filterWrap.youth .title { width: 110px; flex-shrink: 0; }
.filterWrap.youth ul { width: calc(100% - 110px); display: flex; flex-wrap: wrap; gap: 10px; text-align: center; }
.filterWrap.youth ul li input[type=checkbox] { display: none; }
.filterWrap.youth ul li label { display: flex; justify-content: center; align-items: center; width: 119px; height: 40px; font-size: 1rem; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.filterWrap.youth ul.sm li label { width: auto; padding: 0 30px; }
.filterWrap.youth ul li input[type=checkbox]:checked + label { background: var(--mainPurple); color: #fff; border-color: transparent; }
.youth .botButton { margin-top: 26px; text-align: center; }
.youth .botButton .clickBtn { width: 530px; background: url(/skin/spec/img/ico_search_white.svg) no-repeat 5% 50%; background-color: var(--mainPurple); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.youth .tabWrap { width: 100%; border-bottom: 1px solid #eee; margin-top: 60px; height: 45px; position: relative; }
.youth .tabWrap .tabGroup { position: absolute; bottom: -1px; left: 0; z-index: 1; display: flex;}
.youth .tabWrap input[type=radio] { display: none; }
.youth .tabWrap input[type=radio]:checked + label { border: 1px solid #eee; border-radius: 16px 16px 0 0; border-bottom: 1px solid #fff; opacity: 1; }
.youth .tabWrap label { font-size: 20px; font-weight: 600; padding: 12px 20px 8px; opacity: 0.4; }
.youth .listBoxWrap { display: flex; flex-wrap: wrap; gap: 24px; }
.youth .listBoxWrap li { position: relative; }
.youth .listBox {border-radius: 16px; background: #fff; border: 1px solid #ddd; width: 387px; padding: 20px; box-sizing: border-box; position: relative; height: 176px; }
.youth .listBox .text1 {font-size: 16px; background: rgba(141, 126, 255, .2); border-radius: 8px; color: var(--mainPurple); font-weight: 500; padding: 6px 14px; margin-bottom: 16px; }
.youth .listBox .text1.pink { color: var(--mainPink); background: rgba(220, 113, 229, .2); }
.youth .listBox .title { font-size: 22px; font-weight: 600; height: 26px; margin-bottom: 14px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
.youth .listBox .text2 { font-size: 1rem; font-wieght: 500; color: #999; height: 38px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.cnt-wrap.youth_detail > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.youth_detail .topBox { border-bottom: 1px solid #eee; display: flex; justify-content: space-between; align-items: flex-start; gap: 50px; padding-bottom: 26px; margin-bottom: 40px; }
.youth_detail .topBox .title { font-size: 26px; font-weight: 600; margin-bottom: 26px; }
.youth_detail .topBox .text { font-size: 18px; color: #999; }
.youth_detail .topBox .btnBox { display: flex; gap: 20px; }
.youth_detail .topBox .heartBtn .icon { width: 22px; height: 22px; }
.youth_detail .topBox .shareBtn.gray .icon { width: 20px; height: 22px; background: url(/skin/spec/img/ico_share_gray.svg) no-repeat center / contain; }
.youth_detail .botBox { display: flex; flex-wrap: wrap; gap: 40px; }
.youth_detail .botBox .box { width: calc(50% - 20px); }
.youth_detail .botBox .box h3 { font-size: 20px; font-weight: 600; margin-bottom: 10px; }
.youth_detail .botBox .box table th {background: #F4F6F9; color: #999; font-weight: 600; text-align: left; padding: 12px; width: 160px; box-sizing: border-box; font-size: 16px; border: 1px solid #eee; }
.youth_detail .botBox .box table td {padding: 12px; font-size: 15px; color: #000; border: 1px solid #eee; word-break: break-all; }
.youth_detail .botBox .box table td p { line-height: 1.5rem; }
.youth_detail .botBox .box table td a {color: var(--mainPurple);}


/* 스펙업 */
.filterWrap.specup { overflow: hidden; }
.filterWrap.specup .title { width: 175px; float: left; }
.filterWrap.specup ul { width: calc(100% - 175px); float: left; display: flex; flex-wrap: wrap; gap: 10px; text-align: center; }
.filterWrap.specup ul li input[type=checkbox] { display: none; }
.filterWrap.specup ul li label { display: flex; justify-content: center; align-items: center; width: 180px; height: 40px; font-size: 1rem; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.filterWrap.specup ul li input[type=checkbox]:checked + label { background: var(--mainPink); color: #fff; border-color: transparent; }
.specup .listBox {display: flex; flex-wrap: wrap; gap: 40px;}
.specup .listBox li {position: relative; width: 415px; }
.specup .listBox li a {width: 100%}
.specup .listBox li .imgBox {position: relative; margin-bottom: 12px; overflow: hidden; height: 180px; border-radius: 20px; }
.specup .listBox li .imgBox img {width: 100%; object-fit: cover;}
.specup .listBox li .imgBox .cate {position: absolute; bottom: 10px; left: 10px; background: var(--mainPink); color: #fff; padding: 8px 12px; border-radius: 22px; font-size: 14px;}
.specup .listBox li .title { font-size: 20px; font-weight: 500; height: 48px; margin-bottom: 8px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.specup .listBox li .date {display: flex; align-items: center; gap: 8px}
.specup .listBox li .date .d-day {color: #ec5f5f;}
.specup .listBox li .date p {font-weight: 600; font-size: 12px;}
.specup .listBox li .heartBtn {position: absolute; right: 0; bottom: 0;}
.downLoad { border-radius: 16px; display: flex; justify-content: space-between; border: 1px solid #EEE; font-size: 0.875rem; padding: 0.375rem 0.75rem; margin-bottom: 6px; }
.downLoad p { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.downLoad button { margin-left: 16px; font-size: 0.875rem; font-weight: 500; color: var(--mainPink); }
.textWrap { padding: 36px; }
.infoWrapL > .top .topInfo ul.pink li:first-child { color: #fff; font-weight: 500; background: var(--mainPink); }
.infoWrapL > .top .topInfo ul.pink li { font-weight: 500; color: var(--mainPink); background: #f8e3fa; }


/* 세미나 */
.cnt-wrap.seminar > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.seminar .searchWrap { display: flex; align-items: center; gap: 26px; margin-bottom: 20px; }
.seminar .botButton { margin-top: 26px; text-align: center; }
.seminar .botButton .clickBtn { width: 530px; background: url(/skin/spec/img/ico_search_white.svg) no-repeat 5% 50%; background-color: var(--mainPurple); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.seminar .filterWrap { display: flex; align-items: center; }
.seminar .filterWrap .title { width: 80px; }
.seminar .filterWrap .dateBox { display: flex; align-items: center; gap: 8px; }
.seminar .filterWrap .dateBox button { width: 100px; height: 40px; font-size: 1rem; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.seminar .filterWrap .dateBox span { font-weight: 700; }
.seminar .filterWrap .dateBox input[type=text] { width: 220px; height: 40px; text-align: center; color: #333; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.seminar .listBox { display: flex; flex-wrap: wrap; gap: 40px; }
.seminar .listBox li {position: relative; width: 375px; }
.seminar .listBox li a {width: 100%}
.seminar .listBox li .imgBox {position: relative; margin-bottom: 12px; overflow: hidden; height: 180px; border-radius: 20px; }
.seminar .listBox li .imgBox img {width: 100%; object-fit: cover;}
.seminar .listBox li .title { font-size: 20px; font-weight: 500; height: 48px; margin-bottom: 8px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.seminar .listBox li .date {display: flex; align-items: center; gap: 8px; }
.seminar .listBox li .date .d-day {color: #ec5f5f;}
.seminar .listBox li .date p {font-weight: 600; font-size: 12px;}
.seminar .listBox li .heartBtn {position: absolute; right: 0; bottom: 0;}

.cnt-wrap.seminar_detail > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.infoWrapL > .top .topInfo ul.default li { color: #fff; font-weight: 500; background: var(--mainPurple); }


/* 기관탐방 */
.cnt-wrap.visit > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.visit .searchWrap { display: flex; align-items: center; gap: 26px; margin-bottom: 20px; }
.visit .botButton { margin-top: 26px; text-align: center; }
.visit .botButton .clickBtn { width: 530px; background: url(/skin/spec/img/ico_search_white.svg) no-repeat 5% 50%; background-color: var(--mainPurple); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.visit .searchWrap .searchInputBox > div { display: flex; align-items: center; gap: 18px; }
.visit .searchWrap .searchInputBox .src1 { width: 20%; }
.visit .searchWrap .searchInputBox .src1 #get_area_si_div { width: 100%; }
.visit .searchWrap .searchInputBox .src1 select { cursor: pointer; color: #333; width: 100%; height: 60px; font-size: 1.125rem; font-weight: 600; border: 1px solid #ddd; border-radius: 30px; padding: 0 20px; box-shadow: none; --bs-form-select-bg-img: none; }
.visit .searchWrap .searchInputBox .src1 .selectBox { width: 100%; }
.visit .searchWrap .searchInputBox .src2 { width: 80%; }
.visit .listWrap {display: flex; flex-wrap: wrap; gap: 40px;}
.visit .listWrap li { width: 375px; }
.visit .listWrap li a {width: 100%;}
.visit .listWrap li a .imgBox {border-radius: 16px; margin-bottom: 16px; overflow: hidden;}
.visit .listWrap li a .imgBox img {width: 100%;}
.visit .listWrap li a .textBox .title {font-size: 20px; font-weight: 600; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; height: 48px;}

.cnt-wrap.visit_detail > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.visit_detail .videoWrap {padding: 40px;}
.visit_detail .videoWrap iframe {border-radius: 16px; overflow: hidden;}
.visit_detail .infoWrapR .textWrap { padding: 10px 0 20px; }


/* 공채속보 */
.cnt-wrap.recruit > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.recruit .botButton { margin-top: 26px; text-align: center; }
.recruit .botButton .clickBtn { width: 530px; background: url(/skin/spec/img/ico_search_white.svg) no-repeat 5% 50%; background-color: var(--mainPurple); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.recruit .listBox { display: flex; flex-wrap: wrap; gap: 28px; margin-bottom: 16px; }
.recruit .listBox > li { width: 384px; position: relative; }
.recruit .listBox li a { display: block; width: 100%; height: 100%; padding: 20px; border: 1px solid #ddd; border-radius: 16px; box-sizing: border-box; display: flex; flex-direction: column; }
.recruit .listBox li .topBox { display: flex; align-items: center; gap: 6px; margin-bottom: 12px; }
.recruit .listBox li .topBox .d-day { font-size: 1.125rem; font-weight: 600; color: #EC5F5F; }
.recruit .listBox li .topBox .circle { width: 3px; height: 3px; border-radius: 50%; background: #999; }
.recruit .listBox li .topBox .gray { font-size: 0.875rem; font-weight: 500; color: #999; }
.recruit .listBox li .title { margin-bottom: 16px; font-size: 1.25rem; font-weight: 600; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; height: 48px; }
.recruit .listBox li .btmBox { display: flex; justify-content: space-between; align-items: flex-end; }
.recruit .listBox li .btmBox .left { display: flex; flex-direction: column; gap: 6px; flex-shrink: 0; }
.recruit .listBox li .btmBox .left .agency { font-size: 1rem; font-weight: 500; color: var(--mainPurple); }
.recruit .listBox li .btmBox .left ul { display: flex; align-items: center; gap: 6px; }
.recruit .listBox li .btmBox .left ul li { font-size: 0.875rem; font-weight: 400; color: #999; display: flex; align-items: center; gap: 6px; }
.recruit .listBox li .btmBox .left ul li:after { content: ""; width: 2px; height: 10px; background: #ddd; }
.recruit .listBox li .btmBox .left ul li:last-child:after { display: none; }
.recruit .listBox li .btmBox .logo { width: 100%; height: 30px; text-align: right; }
.recruit .listBox li .btmBox .logo img { max-width: 100%; max-height: 100%; }
.recruit .listBox li .heartBtn { position: absolute; top: 20px; right: 20px; z-index: 1; }
.recruit .listBox li .heartBtn .icon { width: 18px; height: 18px; }
.recruit .noData { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 50px; }
.recruit .noData .imgBox { display: flex; flex-direction: column; align-items: center; gap: 20px; }
.recruit .noData .imgBox p { font-size: 1.125rem; font-weight: 500; color: #bcbcbc; }
.recruit .noData .btnBox { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 20px; }
.recruit .noData .btnBox p { font-size: 1.25rem; font-weight: 600; color: var(--mainPurple); line-height: 1.2; text-align: center; }
.recruit .noData .btnBox .bgBtn { width: 220px; height: 48px; font-size: 1rem; font-weight: 600; color: #fff; border-radius: 30px; background: var(--mainPurple); }


/* 공지/이벤트 */
.notice .botButton { margin-top: 26px; text-align: center; }
.notice .botButton .clickBtn { width: 530px; background: url(/skin/spec/img/ico_search_white.svg) no-repeat 5% 50%; background-color: var(--mainPurple); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.notice .listBox01 li { border-bottom: 1px solid #eee; padding: 24px 0; }
.notice .listBox01 li:first-child { padding-top: 0; }
.notice .listBox01 li a { display: flex; align-items: center; gap: 20px; }
.notice .listBox01 li .type { width: 84px; text-align: center; font-size: 14px; padding: 8px 16px; border-radius: 26px; background: rgba(141, 126, 255, .2); color: var(--mainPurple); font-weight: 600; } 
.notice .listBox01 li .title { width: 1040px; font-size: 22px; font-weight: 600; }
.notice .listBox01 li .date { font-size: 16px; font-weight: 500; display: flex; align-items: center; gap: 8px; }
.notice .listBox01 li .date .icon { width: 24px; height: 24px; background: url(/skin/spec/img/ico_boardView_time.svg) no-repeat center / contain; }
.notice .listBox02 {display: flex; flex-wrap: wrap; gap: 40px;}
.notice .listBox02 li { position: relative; width: 415px; }
.notice .listBox02 li a {width: 100%}
.notice .listBox02 li .imgBox {position: relative; margin-bottom: 12px; overflow: hidden; height: 180px; border-radius: 20px; background: #f6f6f6; }
.notice .listBox02 li .imgBox img {width: 100%; object-fit: cover;}
.notice .listBox02 li.complete .imgBox img { filter: grayscale(1); opacity: .5; }
.notice .listBox02 li .imgBox .cate {position: absolute; bottom: 10px; left: 10px; background: var(--mainPurple); color: #fff; padding: 8px 12px; border-radius: 22px; font-size: 14px;}
.notice .listBox02 li .title { font-size: 20px; font-weight: 500; height: 48px; margin-bottom: 8px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.notice .listBox02 li .date p {font-weight: 600; font-size: 14px;}
.notice .eventRadioBox { width: 100%; border-bottom: 1px solid #eee; margin-top: 60px; height: 45px; position: relative; }
.notice .eventRadioBox .box { position: absolute; bottom: -1px; left: 0; z-index: 1; display: flex;}
.notice .eventRadioBox input[type=radio] { display: none; }
.notice .eventRadioBox input[type=radio]:checked + label { border: 1px solid #eee; border-radius: 16px 16px 0 0; border-bottom: 1px solid #fff; opacity: 1; }
.notice .eventRadioBox label { font-size: 20px; font-weight: 600; padding: 12px 20px 8px; opacity: 0.4;}

.notice_detail .boardView .hashtagBox { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.notice_detail .boardView .hashtagBox li { padding: 6px 12px; font-weight: 500; color: var(--mainPurple); border-radius: 20px; background: rgba(141, 126, 255, .2); }
.notice_detail .boardView .hashtagBox li.state {background: var(--mainPurple); color: #fff; }
.notice_detail .boardView .title {font-size: 28px; font-weight: 600; margin-bottom: 16px; }
.notice_detail .boardView .date { color: #999; display: flex; align-items: center; gap: 8px; margin-bottom: 24px;}
.notice_detail .boardView .date .icon { width: 20px; height: 20px; background: url(/skin/spec/img/ico_boardView_time.svg) no-repeat center / contain; }
.notice_detail .boardView .textWrap { word-break: break-word; border-top: 2px solid #eee; }
.notice_detail .boardView .textWrap img {width: 100%;}

.event_detail .boardView .hashtagBox { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.event_detail .boardView .hashtagBox li { padding: 6px 12px; font-weight: 500; color: var(--mainPurple); border-radius: 20px; background: rgba(141, 126, 255, .2); }
.event_detail .boardView .hashtagBox li.state {background: var(--mainPurple); color: #fff; }
.event_detail .boardView .title { font-size: 28px; font-weight: 600; margin-bottom: 16px; }
.event_detail .boardView .date { color: #999; display: flex; align-items: center; gap: 8px; margin-bottom: 24px;}
.event_detail .boardView .date .icon { width: 20px; height: 20px; background: url(/skin/spec/img/ico_boardView_time.svg) no-repeat center / contain; }
.event_detail .boardView .textWrap { word-break: break-word; border-top: 2px solid #eee; }
.event_detail .boardView .textWrap img { max-width: 860px; }
.event_detail .listTable { width: 860px; }
.event_detail .voteListWrap { margin-top: 40px; padding: 20px; width: 860px; border: 1px solid rgba(141, 126, 255, .6); border-radius: 16px; }
.event_detail .voteList { display: flex; flex-direction: column; gap: 30px; }
.event_detail .voteList .voteListBox { display: flex; flex-direction: column; gap: 10px; }
.event_detail .voteList .voteListBox .title { font-size: 1.25rem; font-weight: 600; color: #333; margin-bottom: 0; }
.event_detail .voteList .voteListBox .radioBox { display: flex; flex-direction: column; gap: 10px; }
.event_detail .voteList .voteListBox .radioBox li { padding-left: 12px; display: flex; align-items: center; gap: 8px; }
.event_detail .voteList .voteListBox .radioBox li input[type="radio"] { flex-shrink: 0; width: 16px; height: 16px; background: #fff; border: 1px solid #ddd; border-radius: 50%; }
.event_detail .voteList .voteListBox .radioBox li label { font-size: 1rem; font-weight: 500; }
.event_detail .voteList .voteListBox .radioBox li input[type="radio"]:checked { border: 5px solid var(--mainPurple); }
.event_detail .voteList .voteListBox .radioBox li input[type="radio"]:checked + label { color: #604ded; }
.event_detail .voteInfoBox { width: 100%; margin-top: 40px; padding: 20px; border-radius: 16px; background: rgba(141, 126, 255, .1); }
.event_detail .voteInfoBox .text { font-size: 1rem; font-weight: 500; color: var(--mainPurple); padding-bottom: 12px; }
.event_detail .voteInfoBox .inputBox { display: flex; align-items: center; gap: 10px; }
.event_detail .voteInfoBox .inputBox input { font-size: 1rem; color: #333; padding: 12px 18px; background: #fff; border-radius: 8px; }
.event_detail .voteInfoBox .inputBox input::placeholder { color: #999; }
.event_detail .voteInfoBox .checkBox { margin-top: 20px; display: flex; align-items: center; justify-content: center; gap: 8px; }
.event_detail .voteInfoBox .checkBox .infoOk { font-size: 0.938rem; }
.event_detail .voteInfoBox .checkBox .infoOk a { color: var(--mainPurple); text-decoration: underline; }
.event_detail .voteInfoBox .checkBox input[type="checkbox"] { width: 18px; height: 18px; background: #fff; border: 1px solid #ddd; border-radius: 4px; }
.event_detail .voteInfoBox .checkBox input[type="checkbox"]:checked { background: url(/skin/spec/img/ico_check.svg) no-repeat center / contain; background-color: var(--mainPurple); border: 1px solid var(--mainPurple); }
.event_detail .voteBtnBox { margin-top: 20px; width: 100%; text-align: center; }
.event_detail .voteBtnBox .bgBtn { width: 220px; height: 48px; font-size: 1rem; font-weight: 600; border-radius: 30px; color: #fff; background: var(--mainPurple); }
.event_detail .voteBox { margin-top: 40px; width: 860px; text-align: center; box-sizing: border-box; }
.event_detail .voteBox p { font-size: 1.125rem; font-weight: 500; color: var(--mainPurple); padding: 16px; background: rgba(141, 126, 255, .1); border-radius: 10px; }


/* 블라인드 */
.cnt-wrap.blindlist > .right { position: relative; }
.blindlist .searchWrap { display: flex; align-items: center; gap: 26px; margin-bottom: 20px; }
.blindlist .searchWrap .searchInputBox > div { display: flex; align-items: center; gap: 18px; }
.blindlist .searchWrap .searchInputBox .src1 { width: 20%; }
.blindlist .searchWrap .searchInputBox .src1 #get_area_si_div { width: 100%; }
.blindlist .searchWrap .searchInputBox .src1 select { cursor: pointer; color: #333; width: 100%; height: 60px; font-size: 1.125rem; font-weight: 600; border: 1px solid #ddd; border-radius: 30px; padding: 0 20px; box-shadow: none; --bs-form-select-bg-img: none; }
.blindlist .searchWrap .searchInputBox .src2 { width: 35%; }
.blindlist .searchWrap .searchInputBox .src2 .selectBox { width: 100%; }
.blindlist .searchWrap .searchInputBox .src2 .selectBox select { width: 100%; height: 60px; display: flex; align-items: center; color: #333;  border: 1px solid #ddd; border-radius: 30px; cursor: pointer; }
.blindlist .searchWrap .searchInputBox .src3 { width: 45%; }
.blindlist .botButton { margin-top: 26px; text-align: center; }
.blindlist .botButton .clickBtn { width: 530px; background: url(/skin/spec/img/ico_search_white.svg) no-repeat 5% 50%; background-color: var(--mainRed); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.blindlist .commentBox { display: flex; flex-wrap: wrap; gap: 40px; }
.blindlist .commentBox li { width: calc(50% - 20px); border: 1px solid #eee; border-radius: 16px; padding: 20px; }
.blindlist .commentBox li .top { font-size: 15px; margin-bottom: 14px; }
.blindlist .commentBox li .top .nick { color: #333; margin-right: 6px; }
.blindlist .commentBox li .title { font-size: 20px; font-weight: 600; margin-bottom: 10px; }
.blindlist .commentBox li .text { font-size: 15px; height: 39px; }
.blindlist .commentBox li .bot { padding: 0 60px; }
.blindlist .commentBox li .bot > * { font-size: 15px; color: #333; }
.blindlist .commentBox li .bot .heartBtn .icon { background: url(/skin/spec/img/ico_heart.svg) no-repeat center / contain; }
.blindlist .commentBox li .bot .heartBtn.ok .icon { background: url(/skin/spec/img/ico_heart_pink.svg) no-repeat center / contain; }
.blindlist .writeBtn { position: fixed; bottom: 60px; right: 30px;}
.blindlist .writeBtn button { width: 80px; height: 80px; border-radius: 40px; background: var(--mainRed); box-shadow: 0 5px 5px rgba(0,0,0,0.1); display: flex; justify-content: center; align-items: center; }
.blindlist .writeBtn button .icon { width: 34px; height: 34px; background: url(/skin/spec/img/ico_write.svg) no-repeat center / contain; }

.blindNick_modal.modalCon .boxWrap { width: 460px; }
.blindNick_modal .red { padding-top: 20px; padding-bottom: 8px; font-size: 1.25rem; font-weight: 600; }
.blindNick_modal .gray { font-size: 1rem; font-weight: 500; }
.blindNick_modal .nickBox { padding: 30px 0; display: flex; align-items: center; flex-direction: column; gap: 6px; }
.blindNick_modal .nickBox input { width: calc(100% - 20px); color: #333; text-align: center; background: #f6f6f6; padding: 12px; border-radius: 20px; }
.blindNick_modal .nickBox input::placeholder { color: #999; }
.blindNick_modal .nickBox .green { font-size:1rem; font-weight: 400; color: var(--mainGreen); }
.blindNick_modal .nickBox .red { font-size: 1rem; font-weight: 400; padding: 0; }
.blindNick_modal .writeBtn { width: 100%; height: 47px; border-radius: 16px; color: #fff; font-size: 16px; }

.blind_detail .boardView .titleWrap {padding-top: 16px; padding-bottom: 16px; position: relative; border-bottom: 1px solid #eee; display: flex; align-items: flex-start; gap: 20px; }
.blind_detail .boardView .titleWrap > .left { width: calc(100% - 120px); }
.blind_detail .boardView .titleWrap > button .icon { width: 20px; height: 20px; }
.blind_detail .boardView .titleWrap .heartBtn .icon { background: url(/skin/spec/img/ico_heart.svg) no-repeat center / contain; }
.blind_detail .boardView .titleWrap .heartBtn.ok .icon { background: url(/skin/spec/img/ico_heart_pink.svg) no-repeat center / contain; }
.blind_detail .boardView .titleWrap .title {font-size: 24px; margin-bottom: 20px; color: var(--black); font-weight: 600;}
.blind_detail .boardView .titleWrap .name {font-size: 16px; font-weight: 600; margin-bottom: 20px;}
.blind_detail .boardView .titleWrap .botBox {font-size: 14px; display: flex; justify-content: space-between;}
.blind_detail .boardView .titleWrap .botBox .left {display: flex; align-items: center; gap: 16px; color: #aaa;}
.blind_detail .boardView .titleWrap .botBox .left > div {display: flex; align-items: center; gap: 8px;}
.blind_detail .boardView .titleWrap .botBox .left > div .icon {width: 16px; height: 16px;}
.blind_detail .boardView .titleWrap .botBox .left .time .icon {background: url(/skin/spec/img/ico_boardView_time.svg) no-repeat center / contain;}
.blind_detail .boardView .titleWrap .botBox .left .hit .icon {background: url(/skin/spec/img/ico_boardView_hit.svg) no-repeat center / contain;}
.blind_detail .boardView .titleWrap .botBox .left .num .icon {background: url(/skin/spec/img/ico_boardView_comment.svg) no-repeat center / contain;}
.blind_detail .boardView .titleWrap .botBox .right {display: flex; align-items: center; gap: 5px;}
.blind_detail .boardView .textWrap { padding: 30px; color: #666; font-size: 16px; display: flex; flex-direction: column; gap: 10px; border-bottom: 1px solid #eee;}
.blind_detail .boardView .textWrap table {color: #333; text-align: left; border: 1px solid #eee; margin-top: 20px; }
.blind_detail .boardView .textWrap table th {background: #F4F6F9; padding-left: 6px; color: #999; width: 124px;}
.blind_detail .boardView .textWrap table td {width: calc(100% - 124px / 2); }
.blind_detail .boardView .textWrap table td:nth-last-child(-n+2) { vertical-align: top; }
.blind_detail .boardView .textWrap table td .star > li {display: flex; gap: 4px; }
.blind_detail .boardView .textWrap table td .star > li i { display: inline-block; width: 16px; height:16px; }
.blind_detail .boardView .textWrap table td .star > li i.fa-solid.fa-star { background: url(/skin/spec/img/ico_star_full.svg) no-repeat center / contain; }
.blind_detail .boardView .textWrap table td .star > li i.fa-solid.fa-star-half-alt { background: url(/skin/spec/img/ico_star_half2.svg) no-repeat center / contain; }
.blind_detail .boardView .textWrap table td .star > li i.fa-regular.fa-star { background: url(/skin/spec/img/ico_star.svg) no-repeat center / contain; }
.blind_detail .boardView .textWrap table .culum ul {display: flex; flex-direction: column; gap: 4px; height: 100px; overflow-y: auto;}
.blind_detail .comment_list li {padding: 20px 30px; border-bottom:  1px solid #EEE; display: flex; flex-direction: column; gap: 12px;}
.blind_detail .comment_list li .top {font-size: 14px; display: flex; justify-content: space-between;}
.blind_detail .comment_list li .top .left {display: flex; gap: 6px; align-items: center;}
.blind_detail .comment_list li .top .left .nick { color: #333; }
.blind_detail .comment_list li .top .right {display: flex; align-items: center; gap: 10px;}
.blind_detail .comment_list li .top .right .likeBtn { height: 16px; display: flex; align-items: center; gap: 4px;}
.blind_detail .comment_list li .top .right .likeBtn .icon { width: 16px; height: 16px; background-image: url(/skin/spec/img/ico_like_gray.svg); }
.blind_detail .comment_list li .top .right .likeBtn.ok .icon {background-image: url(/skin/spec/img/ico_like_ok.svg);}
.blind_detail .comment_list li .top .right .declarationBtn { width: 16px; height: 16px; }
.blind_detail .comment_list li .top .right .declarationBtn .icon { width: 16px; height: 16px; background: url(/skin/spec/img/ico_declaration_red.svg) no-repeat center / contain; }
.blind_detail .comment_list li .bot {color: #666; font-size: 16px;}
.blind_detail .botWriteWrap { padding-top: 30px; display: flex; box-sizing: border-box; gap: 20px;}
.blind_detail .botWriteWrap .writeBox {width: 100%; padding: 14px 20px 14px 25px; border-radius: 30px; border: 1px solid #ddd; box-sizing: border-box; }
.blind_detail .botWriteWrap .writeBox textarea {width: 100%; max-height: 100px; padding: 0; font-size: 17px; border: 0; color: var(--black); resize: none; }
.blind_detail .botWriteWrap .writeBox textarea::placeholder {color: #ddd;}
.blind_detail .botWriteWrap .writeBox textarea::-webkit-scrollbar { width: 5px; }
.blind_detail .botWriteWrap .writeBox textarea::-webkit-scrollbar-thumb { background-color: var(--mainRed); border-radius: 10px; }
.blind_detail .botWriteWrap .writeBox textarea::-webkit-scrollbar-track { background-color: #f6f6f6; border-radius: 10px; }
.blind_detail .botWriteWrap .sendBtn {width: 54px; height: 54px; flex: none; border-radius: 50%; background: var(--mainRed); }
.blind_detail .botWriteWrap .sendBtn .icon {width: 100%; height: 100%; background: url(/skin/spec/img/ico_send.svg) no-repeat center / contain;}

.cnt-wrap.blind_write > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.blind_write .writeWrap { width: 1000px; margin: 0 auto; }
.blind_write .writeWrap .textareaBox { margin-top: 10px; }
.blind_write .botButton { margin-top: 40px; text-align: center; }
.blind_write .botButton .writeBtn { width: 530px; background: url(/skin/spec/img/ico_write.svg) no-repeat 5% 50%; background-size: 24px; background-color: var(--mainRed); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.blind_write .comparison_basket { width: 100%; display: flex; align-items: center; flex-direction: column; gap: 22px; padding: 30px; position: relative; background: #f6f6f6; border-radius: 30px; margin-bottom: 40px; }
.blind_write .comparison_basket .top .cartIcon {margin: 0 auto; margin-bottom: 6px; width: 30px; height: 30px; background: url(/skin/spec/img/ico_cart_black.svg) no-repeat center / contain; }
.blind_write .comparison_basket .top .title {font-size: 18px; font-weight: 700; display: flex; align-items: center; gap: 6px;}
.blind_write .comparison_basket .top .title .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_question_black.svg) no-repeat center / contain;}
.blind_write .listWrap { width: 100%; border-bottom: 1px solid #eee; margin-top: 60px; margin-bottom: 40px; height: 45px; position: relative; }
.blind_write .listWrap ul { position: absolute; bottom: -1px; left: 0; z-index: 1; display: flex; }
.blind_write .listWrap li.active { border: 1px solid #eee; border-radius: 16px 16px 0 0; border-bottom: 1px solid #fff; opacity: 1; }
.blind_write .listWrap li { font-size: 20px; font-weight: 600; opacity: 0.4; }
.blind_write .listWrap li a { display: block; padding: 12px 20px 8px; }
.blind_write .comparison_basket .box {display: flex; gap: 20px; }
.blind_write .comparison_basket .box li {background: #fff; border-radius: 16px; width: 450px; height: 182px; border: 1px solid #d6d6d6; padding: 16px; box-sizing: border-box;}
.blind_write .comparison_basket .box li .gray {color: rgba(0, 0, 0, .6);}
.blind_write .comparison_basket .box li .place {font-size: 14px; font-weight: 500; margin-bottom: 6px; display: flex; gap: 2px 6px; flex-wrap: wrap; color: var(--mainRed); }
.blind_write .comparison_basket .box li .price { font-size: 20px; font-weight: 700; margin-bottom: 10px; color: var(--mainRed); }
.blind_write .comparison_basket .box li .title { margin-bottom: 14px; font-size: 20px; font-weight: 600; height: 48px; overflow: hidden; word-break: break-word; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.blind_write .comparison_basket .box li .date {font-size: 15px; font-weight: 500; display: flex; gap: 10px; }
.blind_write .comparison_basket .box li.noSelect {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; text-align: center; }
.blind_write .comparison_basket .box li.noSelect p { font-size: 18px; font-weight: 500; }
.blind_write .comparison_basket .box li.noSelect .gray { font-size: 14px; color: #999; }
.blind_write .comparison_basket .box li.Select { background: #FEEFEF; border-color: var(--mainRed); }
.blind_write .comparison_basket .box li.Select a { display: block; padding: 6px; }
.blind_write .comparison_basket .box li.Select .date .gray { color: var(--mainRed); }
.blind_write .training_listBox {display: flex; gap: 40px; flex-wrap: wrap;}
.blind_write .training_listBox li {position: relative; width: 513px; border: 1px solid #eee; border-radius: 16px; }
.blind_write .training_listBox .heartBtn {position: absolute; right: 24px; bottom: 20px; z-index: 0;}
.blind_write .training_listBox .heartBtn .icon { width: 25px; height: 24px; }
.blind_write .training_listBox li a {display: block; padding: 20px 24px; }
.blind_write .training_listBox a .title { margin-bottom: 14px; font-size: 20px; font-weight: 600; height: 48px; overflow: hidden; word-break: break-word; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.blind_write .training_listBox a .price {margin-bottom: 12px; font-size: 20px; color: var(--mainRed);}
.blind_write .training_listBox a .place {margin-bottom: 6px; font-size: 14px; display: flex; gap: 6px; font-weight: 500;}
.blind_write .training_listBox a .date {font-size: 14px; display: flex; gap: 6px; font-weight: 500;}
.blind_write .training_listBox li.checked {background: rgba(236, 95, 95, .1); border-color: var(--mainRed);}
.blind_write .textWrap { padding: 0;  margin-bottom: 20px; }
.blind_write .textWrap table {color: #333; text-align: left; border: 1px solid #eee; margin-top: 20px; }
.blind_write .textWrap table th {background: #F4F6F9; padding-left: 6px; color: #999; width: 124px;}
.blind_write .textWrap table td {width: calc(100% - 124px / 2); }
.blind_write .textWrap table td:nth-last-child(-n+2) { vertical-align: top; }
.blind_write .textWrap table td .star > li {display: flex; gap: 4px; }
.blind_write .textWrap table td .star > li i { display: inline-block; width: 16px; height:16px; }
.blind_write .textWrap table td .star > li i.fa-solid.fa-star { background: url(/skin/spec/img/ico_star_full.svg) no-repeat center / contain; }
.blind_write .textWrap table td .star > li i.fa-solid.fa-star-half-alt { background: url(/skin/spec/img/ico_star_half2.svg) no-repeat center / contain; }
.blind_write .textWrap table td .star > li i.fa-regular.fa-star { background: url(/skin/spec/img/ico_star.svg) no-repeat center / contain; }
.blind_write .textWrap table .culum ul {display: flex; flex-direction: column; gap: 4px; height: 100px; overflow-y: auto;}
.blind_write .bcBack { margin: 0 auto; margin-bottom: 20px; font-size: 16px; font-weight: 500; padding: 8px 16px; color: var(--mainRed); border: 1px solid var(--mainRed); border-radius: 24px; display: flex; align-items: center; gap: 6px; }
.blind_write .searchWrap { display: flex; align-items: center; gap: 26px; margin-bottom: 20px; }
.blind_write .searchWrap .searchInputBox { display: flex; gap: 32px; }
.blind_write .searchWrap .searchInputBox > div { display: flex; align-items: center; gap: 18px; }
.blind_write .searchWrap .searchInputBox .src1 { width: 30%; }
.blind_write .searchWrap .searchInputBox .src1 #get_area_si_div { width: 50%; }
.blind_write .searchWrap .searchInputBox .src1 #get_area_gu_div { width: 50%; }
.blind_write .searchWrap .searchInputBox .src1 select { cursor: pointer; color: #333; width: 100%; height: 60px; font-size: 1.125rem; font-weight: 600; border: 1px solid #ddd; border-radius: 30px; padding: 0 20px; box-shadow: none; --bs-form-select-bg-img: none; }
.blind_write .searchWrap .searchInputBox .src2 { width: 30%; }
.blind_write .searchWrap .searchInputBox .src2 .selectBox { width: 100%; }
.blind_write .searchWrap .searchInputBox .src2 .selectBox select { width: 100%; height: 60px; display: flex; align-items: center; color: #333;  border: 1px solid #ddd; border-radius: 30px; cursor: pointer; }
.blind_write .searchWrap .searchInputBox .src3 { width: 40%; }
.blind_write .searchWrap .filterBtn.green { background: var(--mainRed); }
.blind_write .filterWrap.ncs { display: flex; flex-direction: column; gap: 20px; padding: 30px; }
.blind_write .filterWrap.ncs .box { display: flex; align-items: center; gap: 40px;}
.blind_write .filterWrap.ncs .box .box1, .blind_write .filterWrap.ncs .box .box2, .blind_write .filterWrap.ncs .box3, .blind_write .filterWrap.ncs .box4 { display: flex; align-items: center; }
.blind_write .filterWrap.ncs .title { width: 80px; }
.blind_write .filterWrap.ncs .radioBox { display: flex; align-items: center; gap: 8px; }
.blind_write .filterWrap.ncs .radioBox input[type=radio] { display: none; }
.blind_write .filterWrap.ncs .radioBox label { display: flex; justify-content: center; align-items: center; width: 100px; height: 40px; font-size: 1rem; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.blind_write .filterWrap.ncs .radioBox input[type=radio]:checked + label { background: var(--mainRed); color: #fff; border-color: transparent; }
.blind_write .filterWrap.ncs .dateBox { width: calc(100% - 80px); display: flex; align-items: center; gap: 8px; }
.blind_write .filterWrap.ncs .dateBox button { width: 100px; height: 40px; font-size: 1rem; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.blind_write .filterWrap.ncs .dateBox span { font-weight: 700; }
.blind_write .filterWrap.ncs .dateBox input[type=text] { width: 220px; height: 40px; text-align: center; color: #333; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.blind_write .ncsRadioBox { width: 100%; border-bottom: 1px solid #eee; margin-top: 60px; height: 45px; position: relative; }
.blind_write .ncsRadioBox .box { position: absolute; bottom: -1px; left: 0; z-index: 1; display: flex;}
.blind_write .ncsRadioBox input[type=radio] { display: none; }
.blind_write .ncsRadioBox input[type=radio]:checked + label { border: 1px solid #eee; border-radius: 16px 16px 0 0; border-bottom: 1px solid #fff; opacity: 1; }
.blind_write .ncsRadioBox label { font-size: 20px; font-weight: 600; padding: 12px 20px 8px; opacity: 0.4;}
.blind_write .botButton .clickBtn { width: 530px; background: url(/skin/spec/img/ico_search_white.svg) no-repeat 5% 50%; background-color: var(--mainRed); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.blind_write .searchWrapBetween .left { display: flex; gap: 20px; align-items: flex-end; }
.blind_write .searchWrapBetween .left .text { font-size: 15px; font-weight: 600; color: #000; padding-bottom: 4px; }


/* 멘토링 */
.cnt-wrap.mentoring > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.mentoring .searchWrap { display: flex; align-items: center; gap: 26px; margin-bottom: 20px; }
.mentoring .botButton { margin-top: 26px; text-align: center; }
.mentoring .botButton .clickBtn { width: 530px; background: url(/skin/spec/img/ico_search_white.svg) no-repeat 5% 50%; background-color: var(--mainPurple); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.mentoring .filterWrap { display: flex; align-items: center; }
.mentoring .filterWrap .title { width: 80px; }
.mentoring .filterWrap .dateBox { display: flex; align-items: center; gap: 8px; }
.mentoring .filterWrap .dateBox button { width: 100px; height: 40px; font-size: 1rem; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.mentoring .filterWrap .dateBox span { font-weight: 700; }
.mentoring .filterWrap .dateBox input[type=text] { width: 220px; height: 40px; text-align: center; color: #333; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.mentoring .listWrap {display: flex; flex-wrap: wrap; gap: 40px; }
.mentoring .listWrap li { width: 375px; position: relative;}
.mentoring .listWrap li a {width: 100%;}
.mentoring .listWrap li .imgBox { height: 180px; border-radius: 16px; overflow: hidden; margin-bottom: 16px; position: relative; }
.mentoring .listWrap li .imgBox img {width: 375px; height: 180px;}
.mentoring .listWrap li .title { font-size: 20px; font-weight: 600; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; height: 48px; margin-bottom: 8px;}
.mentoring .listWrap li .bot {color: #EC5F5F; font-weight: 800; font-size: 14px;}
.mentoring .listWrap li .bot strong {font-size: 18px;}
.mentoring .listWrap li .heartBtn {position: absolute; right: 0; bottom: 2px; z-index: 1;}
.mentoring .listWrap li.close {filter: grayscale(100%); opacity: .4}
.mentoring .listWrap li.close .imgBox:before {content: "기한마감"; position: absolute; font-size: 12px; left: 15px; top: 15px; padding: 4px 8px; border-radius: 25px; background: #DDDDDD;}

.cnt-wrap.mentoring_detail > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.mentoring_detail .infoWrapL > .top .topInfo .eduBox .edu .icon { width: 22px; height: 22px; background: url(/skin/spec/img/ico_boardView_time.svg) no-repeat center / contain; }
.mentoring_detail .infoWrapL > .top .topInfo .eduBox .loca .icon { width: 20px; height: 20px; background: url(/skin/spec/img/ico_person_gray.svg) no-repeat center / contain; }
.mentoring_detail .botWrap { padding: 30px; }
.mentoring_detail .botWrap .botList {display: flex; flex-direction: column; gap: 16px; }
.mentoring_detail .botWrap .botList .list {border-radius: 37px; border: 1px solid #eee; position: relative; }
.mentoring_detail .botWrap .botList .list:not(.ok) .title .left span {filter: grayscale(100%); opacity: .7;}
.mentoring_detail .botWrap .botList .boxWrap {margin-bottom: 0; padding-top: 10px; display: none; }
.mentoring_detail .botWrap .botList .list > .icon { position: absolute; top: 26px; left: 30px;  width: 22px; height: 22px; background: url(/skin/spec/img/ico_arrow_down.svg) no-repeat center / contain; cursor: pointer; transition: .4s ease; -webkit-transform: rotate(-180deg); -ms-transform: rotate(-180deg); transform: rotate(-180deg);}
.mentoring_detail .botWrap .botList .list > .icon.open { -webkit-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg); }
.mentoring_detail .botWrap .botList .list .title {display: flex; justify-content: space-between; gap: 10px; padding: 24px 30px 24px 70px; }
.mentoring_detail .botWrap .botList .list .title .left {display: flex; align-items: center; gap: 6px;}
.mentoring_detail .botWrap .botList .list .title .left strong {font-size: 22px;}
.mentoring_detail .botWrap .botList .list .title .left span {font-size: 16px; font-weight: 600; color: var(--mainPurple);}
.mentoring_detail .botWrap .botList .list .title .right {display: none;}
.mentoring_detail .botWrap .botList .list.ok .title .right {display: flex; align-items: center; gap: 8px;}
.mentoring_detail .botWrap .botList .list .title .right p {font-size: 14px; font-weight: 500; color: var(--mainGreen);}
.mentoring_detail .botWrap .botList .list .title .right .icon {width: 20px; height: 20px;background: url(/skin/spec/img/ico_complete_green.svg) no-repeat center / contain;}
.mentoring_detail .botWrap .botList .list.active .boxWrap {display: block;}
.mentoring_detail .botWrap .botList .list .textBox .titleText {font-size: 20px; margin-bottom: 16px;}
.mentoring_detail .botWrap .botList .list .textBox.text01 {display: flex; flex-direction: column; gap: 6px; font-size: 16px; padding: 0 30px 36px; }
.mentoring_detail .botWrap .botList .list .textBox.text01 li {display: flex; gap: 8px;}
.mentoring_detail .botWrap .botList .list .textBox.text01 li .left {width: 60px;}
.mentoring_detail .botWrap .botList .list .textBox.text01 li .right {color: #666666;}
.mentoring_detail .botWrap .botList .list .textBox.text02 { padding: 0 30px; margin-bottom: 30px;}
.mentoring_detail .botWrap .botList .list .textBox.text02 .list {border-radius: 16px; border: 1px solid #eee; padding: 16px; font-size: 14px; display: flex; flex-direction: column; gap: 22px;}
.mentoring_detail .botWrap .botList .list .textBox.text02 .title2 { padding: 7px 10px; border-radius: 24px; margin-bottom: 8px;}
.mentoring_detail .botWrap .botList .list .textBox.text02 .list li:first-child .title2 {background: rgba(255, 118, 118, .2); color: #ff7676}
.mentoring_detail .botWrap .botList .list .textBox.text02 .list li:last-child .title2 {background: rgba(141, 126, 255, .2); color: var(--mainPurple);}
.mentoring_detail .botWrap .botList .list .textBox.text02 .list .text {display: flex; flex-direction: column; gap: 10px;}
.mentoring_detail .botWrap .botList .list .textBox.text02 .list .text p { line-height: 1.4;}
.mentoring_detail .botWrap .botList .list .textBox.text02 .list .text p.gray { font-size: 16px; color: #666;}
.mentoring_detail .botWrap .botList .list .textBox.text02 .list .text p span {font-size: 18px; font-weight: 600;}
.mentoring_detail .botWrap .botList .list .textBox.text03 { padding-bottom: 20px; }
.mentoring_detail .botWrap .botList .list .textBox.text03 li {padding: 20px 30px; border-top: 1px solid #eee; display: flex; flex-direction: column; gap: 10px;}
.mentoring_detail .botWrap .botList .list .textBox.text03 li .top {display: flex; align-items: flex-end; gap: 6px; font-size: 14px;}
.mentoring_detail .botWrap .botList .list .textBox.text03 li .top span {color: #aaa;}
.mentoring_detail .botWrap .botList .list .textBox.text03 li .text {color: #666; font-size: 16px;}


/* 채팅문의 */
.cnt-wrap.chat_inq > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.chat_inq .ncsRadioBox { width: 100%; border-bottom: 1px solid #eee; height: 45px; position: relative; }
.chat_inq .ncsRadioBox .box { position: absolute; bottom: -1px; left: 0; z-index: 1; display: flex;}
.chat_inq .ncsRadioBox input[type=radio] { display: none; }
.chat_inq .ncsRadioBox input[type=radio]:checked + label { border: 1px solid #eee; border-radius: 16px 16px 0 0; border-bottom: 1px solid #fff; opacity: 1; }
.chat_inq .ncsRadioBox label { font-size: 20px; font-weight: 600; padding: 12px 20px 8px; opacity: 0.4;}
.chat_inq .searchWrapBetween .left { display: flex; gap: 16px; align-items: flex-end; }
.chat_inq .searchWrapBetween .left .text { font-size: 15px; font-weight: 600; color: #000; padding-bottom: 4px; }
.chat_inq .listTable button { font-size: 14px; color: #fff; padding: 6px 14px; border-radius: 16px; }
.chat_inq .listTable button.purple { background: var(--mainPurple); }
.chat_inq .listTable button.yellow { background: var(--mainRed); } 


/* 광고/견적 */
.cnt-wrap.market > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.market .topBox { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; }
.market .topBox .title { font-size: 26px; font-weight: 600; color: var(--mainPurple); }
.market .topBox button { padding: 14px 24px; border-radius: 16px; font-weight: 500; color: #fff; background: var(--mainPurple); }
.market .ncsCart { display: flex; margin-top: 30px; border: 1px solid #eee; border-radius: 12px; overflow: hidden; }
.market .ncsCart select { width: 328px; padding: 10px 36px 10px 12px; font-size: 16px; cursor: pointer; }
.market .ncsCart.selectBox:after { width: 10px; height: 10px; right: 16px; top: 8px; }

.market-calendar { border-radius: 16px; border: 1px solid #eee; box-sizing: border-box; overflow: hidden; }
.market-date { background: #f6f6f6; overflow: hidden; text-align: center; }
.market-date .market-week { float: left; width: 358px; padding: 13px; font-weight: 500; }
.market-date .market-week .week { font-size: 1.125rem; }
.market-date .market-week p { margin-top: 6px; }
.market-date .market-day { float: left; width: calc(100% - 358px); }
.market-date .market-day .top { overflow: hidden; width: 100%; height: 36px; border-bottom: 1px solid #eee; display: flex; }
.market-date .market-day .top .day-name { float: left; width: 120px; border-left: 1px solid #eee; display: flex; justify-content: center; align-items: center; }
.market-date .market-day .btm { overflow: hidden; width: 100%; height: 36px; display: flex; }
.market-date .market-day .btm .day-name { float: left; width: 120px; border-left: 1px solid #eee; display: flex; justify-content: center; align-items: center; }
.market-date .market-day .btm .day-name.today { font-weight: 600; color: var(--mainPurple); }
.market-type { border-top: 1px solid #eee; overflow: hidden; height: 58px; }
.market-type .market-title { float: left; width: 358px; padding: 10px 12px; background: #f6f6f6; }
.market-type .market-title p { font-weight: 500; }
.market-type .market-title span { font-size: 0.875rem; color: var(--mainRed); }
.market-type .market-count { float: left; overflow: hidden; width: calc(100% - 358px); height: 58px; display: flex; }
.market-type .market-count .count-box { float: left; width: 120px; border-left: 1px solid #eee; display: flex; justify-content: center; align-items: center; cursor: pointer; position: relative; }
.market-type .market-count .count-box.disabled { background: #f9f9f9; color: #ccc; cursor: not-allowed; }
.market-type .market-count .count-box i { position: absolute; right: 24px; width: 12px; height: 12px; background: url(/skin/spec/img/ico_close_white.svg) no-repeat center / contain; display: none; }
.market-type .market-count .count-box.start-cart span { display: none; }
.market-type .market-count .count-box.end-cart span { display: none; }
.market-type .market-count .count-box.selected-cart span { display: none; }
.market-type .market-count .count-box.start-cart::after { width: 100%; height: 34px;  content: ' '; background: var(--mainPurple); margin: 0 12px; border-radius: 20px 0 0 20px; }
.market-type .market-count .count-box.end-cart::after { width: 100%; height: 34px;  content: ' '; background: var(--mainPurple); margin: 0 12px; border-radius: 20px; }
.market-type .market-count .count-box.selected-cart::after { width: 100%; height: 34px;  content: ' '; background: rgba(141, 126, 255, 0.4); }
.market-type .market-count .count-box.disabled.selected-cart::after { width: 100%; height: 34px;  content: ' '; background: #C4CDD9; }
.market-type .market-count .count-box.selected-cart.start-cart::after { background: var(--mainPurple); margin-right: 0; border-radius: 20px 0 0 20px; }
.market-type .market-count .count-box.selected-cart.end-cart::after { background: var(--mainPurple); margin-left: 0; border-radius: 0 20px 20px 0; }
.market-type .market-count .count-box.end-cart i { display: block; }
.market-type .market-count .disabled2 { background: #f9f9f9; color: #ccc; cursor: not-allowed; }



/* 마이페이지 (일반) */
.bookmark .boxWrap { display: flex; align-items: flex-start; gap: 66px; min-height: 540px; }
.bookmark .calendarWrap { width: 46%; }
.bookmark .calendarWrap .topBox { display: flex; align-items: center; justify-content: space-between; padding-bottom: 30px; }
.bookmark .calendarWrap .topBox .left { display: flex; align-items: center; gap: 4px; }
.bookmark .calendarWrap .topBox .left .yymm { width: 120px; text-align: center; font-size: 1.75rem; font-weight: 700; }
.bookmark .calendarWrap .topBox .left .prevBtn { width: 20px; height: 20px; }
.bookmark .calendarWrap .topBox .left .prevBtn .icon { width: 20px; height: 20px; background: url(/skin/spec/img/ico_page_prev2.svg) no-repeat center / contain; }
.bookmark .calendarWrap .topBox .left .nextBtn { width: 20px; height: 20px; }
.bookmark .calendarWrap .topBox .left .nextBtn .icon { width: 20px; height: 20px; background: url(/skin/spec/img/ico_page_next2.svg) no-repeat center / contain; }
.bookmark .calendarWrap .topBox .right { display: flex; align-items: center; gap: 18px; }
.bookmark .calendarWrap .topBox .right .icon { width: 26px; height: 26px; }
.bookmark .calendarWrap .topBox .right .icon.month { width: 26px; height: 26px; background: url(/skin/spec/img/ico_schedule_month.svg) no-repeat center / contain; }
.bookmark .calendarWrap .topBox .right .icon.week { width: 26px; height: 26px; background: url(/skin/spec/img/ico_schedule_week.svg) no-repeat center / contain; }
.bookmark .calendarWrap .topBox .right .todayBtn { font-size: 1rem; font-weight: 600; color: var(--mainPurple); padding: 4px 16px; border: 1px solid var(--mainPurple); border-radius: 16px; }
.bookmark .calendarWrap .weekdays { display: grid; grid-template-columns: repeat(7, 1fr); text-align: center; font-size: 1rem; font-weight: 600; padding-bottom: 16px; }
.bookmark .calendarWrap .days { display: grid; grid-template-columns: repeat(7, 1fr); transition: transform 0.3s ease; }
.bookmark .calendarWrap .days .day { height: 58px; font-size: 1.125rem; font-weight: 600; padding: 6px 6px 10px; text-align: center; xcursor: pointer; box-sizing: border-box; }
.bookmark .calendarWrap .sunday { color: var(--mainRed); }
.bookmark .calendarWrap .selected { outline: 1px solid var(--mainPurple); border-radius: 6px; }
.bookmark .calendarWrap .days .day.outside { opacity: .3; }
.bookmark .calendarWrap .day .content span { padding-bottom: 8px; }
.bookmark .calendarWrap .day .content ul { display: flex; align-items: center; justify-content: center; gap: 4px; }
.bookmark .calendarWrap .day .content ul li { width: 6px; height: 6px; border-radius: 50%; }
.bookmark .monthList.hidden, .bookmark .weekList.hidden { display: none; }
.bookmark .monthList { min-height: 300px; padding: 30px 36px; border-radius: 20px; box-sizing: border-box; box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); }
.bookmark .monthList .selectDate { font-size: 1.375rem; font-weight: 700; color: var(--mainPurple); padding-bottom: 14px; }
.bookmark .monthList .listBox { max-height: 500px; box-sizing: border-box; overflow-y: auto; }
.bookmark .monthList .not { padding: 16px 0; display: flex; align-items: center; gap: 14px; }
.bookmark .monthList .not .icon { flex-shrink: 0; width: 18px; height: 20px; background: url(/skin/spec/img/ico_bookmark.svg) no-repeat center / contain; opacity: .5; }
.bookmark .monthList .not .text { font-size: 1.125rem; font-weight: 500; color: #bcbcbc; }
.bookmark .weekList .selectDate { font-size: 1rem; font-weight: 600; color: var(--mainPurple); padding: 6px 20px; background: #f6f6f6; }
.bookmark .weekList { overflow-y: auto; max-height: 600px; }
.bookmark .weekList .listBox { padding: 0 20px; }
.bookmark .weekList .not { padding: 16px 20px; display: flex; align-items: center; gap: 14px; }
.bookmark .weekList .not .icon { flex-shrink: 0; width: 18px; height: 20px; background: url(/skin/spec/img/ico_bookmark.svg) no-repeat center / contain; opacity: .5; }
.bookmark .weekList .not .text { font-size: 1.125rem; font-weight: 500; color: #bcbcbc; }
.bookmark .listWrap { width: 54%; }
.bookmark .listWrap .listBox li { display: flex; align-items: flex-start; gap: 14px; padding: 16px 0; border-bottom: 1px solid #eee; }
.bookmark .listWrap .listBox li:last-child { border-bottom: 0; }
.bookmark .listWrap .listBox li .type { width: 6px; height: 24px; border-radius: 3px; flex-shrink: 0; }
.bookmark .listWrap .listBox li .rightBox { width: 100%; display: flex; align-items: center; gap: 30px; }
.bookmark .listWrap .listBox li .rightBox .textBox { width: 100%; display: flex; flex-direction: column; gap: 8px; }
.bookmark .listWrap .listBox li .rightBox .textBox .title { font-size: 1.125rem; font-weight: 600; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
.bookmark .listWrap .listBox li .rightBox .textBox .text { font-size: 0.938rem; color: #666; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
.bookmark .listWrap .listBox li .rightBox .memoBtn { flex-shrink: 0; width: 36px; height: 36px; border-radius: 4px; background: #f1f1f1; display: flex; align-items: center; justify-content: center; }
.bookmark .listWrap .listBox li .rightBox .memoBtn .icon { width: 20px; height: 20px; background: url(/skin/spec/img/ico_pen.svg) no-repeat center / contain; }

.memo_modal.modalCon .boxWrap .close { top: 26px; right: 24px; }
.memo_modal .boxWrap .titleWrap { border-bottom: 0; padding: 20px 22px 16px; }
.memo_modal .boxWrap .topBox { display: flex; flex-direction: column; gap: 10px; text-align: left; margin-bottom: 20px; }
.memo_modal .boxWrap .topBox .type { width: 78px; padding: 4px; text-align: center; font-size: 0.875rem; font-weight: 600; color: #fff; border-radius: 12px; box-sizing: border-box; }
.memo_modal .boxWrap .topBox .title { font-size: 1.125rem; font-weight: 600; }
.memo_modal .boxWrap .topBox .date { font-size: 0.938rem; font-weight: 500; color: #999; }
.memo_modal .boxWrap .titleWrap textarea { resize: none; word-break: break-all; box-sizing: border-box; width: 100%;  height: 200px; padding: 14px 14px 18px; font-size: 1rem; font-weight: 500; border: 1px solid #eee; border-radius: 16px; background: #fff; transition: all 0.2s ease;}
.memo_modal .boxWrap .titleWrap textarea::placeholder { color: #999; }
.memo_modal .boxWrap .titleWrap textarea:focus { border-color: var(--mainPurple); }
.memo_modal .boxWrap .clickBtn { width: 100%; height: 47px; border-radius: 16px; color: #fff; font-size: 16px; font-weight: 600; margin-top: 20px; background: var(--mainPurple); }

.profile .nice-select:after {border-bottom: 2px solid var(--mainPurple); border-right: 2px solid var(--mainPurple); }
.profile .writeTable tr.focus > * {border-color: var(--mainPurple);}
.profile .textareaBox textarea:focus {border-color: var(--mainPurple);}
.profile .profileWrap { display: flex; flex-direction: column; gap: 40px; }
.profile .profileBox { padding: 25px 40px; border-radius: 30px; background: #fff; box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); }
.profile .profileBox .sub-title { font-size: 20px; font-weight: 600; color: var(--mainPurple); margin-bottom: 30px; }
.profile .writeTable {border-spacing: 0;}
.profile .writeTable tbody { display: flex; flex-wrap: wrap; gap: 40px 50px; }
.profile .writeTable tr {display: flex; align-items: center; width: calc(50% - 25px); }
.profile .writeTable th {display: block; flex: none; font-weight: 500; width: 120px; border-bottom: 0; }
.profile .writeTable th span { font-size: 14px; color: #999; }
.profile .writeTable td {display: block; width: 100%; box-sizing: border-box; padding: 14px 10px; }
.profile .writeTable td.noLine { border-bottom: 0; padding: 0; }
.profile .writeTable td .inputFlex {display: flex; flex-wrap: wrap; gap: 5px 10px;}
.profile .writeTable td .inputFlex > * {width: calc(50% - 5px);}
.profile .writeTable .hphoneBpx { position: relative; }
.profile .writeTable .hphoneBpx .btn { position: absolute; right: 0; top: 50%; transform: translateY(-50%); font-size: 14px; font-weight: 500; color: #fff; background: var(--mainPurple); padding: 2px 8px; border-radius: 10px;}
.profile .writeTable .hphoneBpx .timer { position: absolute; right: 50px; top: 50%; transform: translateY(-50%); font-size: 14px; font-weight: 400; color: #EC5F5F; }
.profile .writeTable .clickBtn {padding: 16px; border-radius: 26px; background: var(--mainPurple); color: #fff; width: 100%; font-size: 16px; font-weight: 600;}
.profile .writeTable .checkBox label {font-size: 16px; font-weight: 600; width: 100%; text-align: center; border-radius: 26px; padding: 16px; box-sizing: border-box; border: 1px solid #333; opacity: .2; transition: .3s ease;}
.profile .writeTable .checkBox input[type="radio"] { display: none; }
.profile .writeTable .checkBox input[type="radio"]:checked + label {opacity: 1; background: var(--mainPurple); color: #fff; border-color: var(--mainPurple);}
.profile .writeTable .smallText {position: absolute; color: #EC5F5F; font-size: 13px; left: 126px; bottom: 0;}
.profile .writeTable .smallText .green { color: var(--mainGreen); }
.profile .writeTable tr.padding {position: relative; padding-bottom: 22px;}
.profile .writeTable .fileUpload .fileBox {position: relative;}
.profile .writeTable .fileUpload .fileBox label {border-radius: 26px; background: var(--mainPurple); color: #fff; display: flex; align-items: center; justify-content: center; gap: 6px; font-size: 16px; font-weight: 600; padding: 16px;}
.profile .writeTable .fileUpload .fileBox input {position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: 0; cursor: pointer;}
.profile .writeTable .fileUpload .fileBox label .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_file_white.svg) no-repeat center / contain;}
.profile .writeTable .fileUpload .fileBox label span {max-width: 75%; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.profile .writeTable .fileUpload p {text-align: center; margin-top: 4px; color: #ec5f5f; font-size: 14px;}
.profile .fileUpload .fileBox .echofileBox { margin-top: 6px; display: flex; justify-content: space-between; align-items: center; position: relative;  }
.profile .fileUpload .fileBox .echofileBox a { width: 80%; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.profile .fileUpload .fileBox .echofileBox label { font-size: 14px; font-weight: 500; padding: 4px 8px; color: var(--mainRed); border: 1px solid var(--mainRed); border-radius: 10px; background: #fff; }
.profile .fileUpload .fileBox .echofileBox input { position: relative; width: 14px; height: 14px; border-radius: 4px; background: #fff; opacity: 1; }
.profile .fileUpload .fileBox .echofileBox input:checked:after { content: ''; position: absolute; width: 6px; height: 8px; left: 0; top: -2px; border-width: 0 2px 2px 0; border-color: var(--mainRed); border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }
.profile .botButton { margin-top: 50px; text-align: center; position: relative; }
.profile .botButton .writeBtn { width: 530px; background: url(/skin/spec/img/ico_write.svg) no-repeat 5% 50%; background-size: 24px; background-color: var(--mainPurple); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.profile .botButton .mb-del { position: absolute; bottom: 0; right: 0; }
.profile .botButton .mb-del a { display: block; font-size: 0.75rem; font-weight: 300; color: #999; }
.profile_modal .wrapBox {position: relative; max-width: 400px; width: 90%; padding-bottom: 10px;}
.profile_modal .wrapBox .close {width: 28px; height: 28px; position: absolute; bottom: -58px; left: 50%; transform: translateX(-50%); background: url(/skin/spec/img/ico_close_white.svg) no-repeat center / contain; cursor: pointer; }
.profile_modal .boxWrap {border-radius: 16px; width: 100%;}
.profile_modal .boxWrap .botBox {padding: 30px; padding-top: 16px;}
.profile_modal .boxWrap .botBox .writeTable {border-spacing: 0; margin-bottom: 10px; }
.profile_modal .boxWrap .botBox .writeTable tr {display: flex; align-items: center; gap: 10px; margin-bottom: 16px;}
.profile_modal .boxWrap .botBox .writeTable th {display: block; flex: none; width: 130px; font-size: 16px; font-weight: 400; color: #333; text-align: left; border-bottom: 0; }
.profile_modal .boxWrap .botBox .writeTable td {display: block; width: 100%; box-sizing: border-box;}
.profile_modal .boxWrap .botBox .writeTable td input { color: #333; }
.profile_modal .boxWrap .btnBox button {width: 100%; box-sizing: border-box; padding: 14px 20px; border-radius: 16px; font-size: 16px; font-weight: 600;}
.profile_modal .boxWrap .btnBox .btn1 {background: var(--mainPurple); color: #fff;}

.profile .profileBox .sub-title span { font-size: 1rem; font-weight: 400; }
.profile .sosoc tr { width: 50%; }
.sosoc_modal.modalCon .boxWrap { max-width: 420px; }
.sosoc_modal .textWrap { display: flex; flex-direction: column; gap: 20px; }
.sosoc_modal .textWrap .text { font-size: 0.938rem; font-weight: 500; }
.sosoc_modal .textWrap .srcBox { display: flex; align-items: center; gap: 6px; }
.sosoc_modal .textWrap .srcBox input {background: #f6f6f6; color: #333; border-radius: 30px; padding: 10px 24px; }
.sosoc_modal .textWrap .srcBox input::placeholder { color: #999; }
.sosoc_modal .textWrap .srcBox button { padding: 10px 16px; color: #fff; border-radius: 16px; background: var(--mainPurple); }
.sosoc_modal .textWrap ul { display: flex; flex-direction: column; gap: 6px; margin-bottom: 20px; overflow-y: auto; max-height: 30vh; }
.sosoc_modal .textWrap ul::-webkit-scrollbar { width: 5px; }
.sosoc_modal .textWrap ul::-webkit-scrollbar-thumb { background-color: var(--mainPurple); border-radius: 10px; }
.sosoc_modal .textWrap ul::-webkit-scrollbar-track { background-color: #f6f6f6; border-radius: 10px; }
.sosoc_modal .textWrap ul li { display: flex; align-items: center; margin-top: 10px; }
.sosoc_modal .textWrap ul li input[type="radio"] { width: 16px; height: 16px; border: 1px solid #ddd; border-radius: 50%; flex-shrink: 0; margin-right: 8px; }
.sosoc_modal .textWrap ul li input[type="radio"]:checked { border: 5px solid var(--mainPurple); }
.sosoc_modal .textWrap ul li label { font-size: 16px; width: 100%; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
.sosoc_modal .textWrap .bgBtn { width: 100%; font-size: 18px; font-weight: 500; color: #fff; padding: 14px; border-radius: 30px; background: var(--mainPurple); }

.profileBox .goTeacher { display: flex; justify-content: space-between; align-items: center; }
.profileBox .goTeacher .leftText { font-size: 1.125rem; font-weight: 500; }
.profileBox .goTeacher .leftText span { font-size: 0.938rem; font-weight: 400; }
.profileBox .goTeacher .bgBtn { width: 160px; background: var(--mainPurple); color: #fff; padding: 14px; border-radius: 30px; }
.profileBox .goTeacher .bgBtn:disabled { opacity: 0.5; cursor: default; }

.consultation .srcBotBox .pageNum { font-size: 1.375rem; color: #666; }
.consultation .srcBotBox .pageNum .pointColor { font-weight: 600; color: var(--mainPurple); }
.consultation .tabWrap { margin-bottom: 20px; }
.consultation .tabWrap.type1 .tabGroup label { font-size: 1rem; }
.consultation .tabWrap.type1 .tabGroup input:checked+ label { padding: 8px 16px; }
.consultation .listTable .state { font-weight: 500; color: var(--mainRed); }
.consultation .listTable .state.ok { color: var(--mainPurple); }
.consultation .listTable td a { display: block; }
.consultation .listTable .title { word-break: break-word; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.consultation .listTable .smtitle { font-size: 0.813rem; padding-bottom: 2px; color: #999; }
.consultation .listTable .edu { word-break: break-word; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }

.mentoBg { background: rgba(141, 126, 255, 0.2); }
.consultation_view .inquiryWrap { display: flex; align-items: center; justify-content: center; }
.consultation_view .inquiryWrap .boxWrap { width: 480px; padding: 30px; border: 1px solid #eee; border-radius: 16px; }
.consultation_view .inquiryWrap .boxWrap .topBox { position: relative; border-bottom: 1px solid #eee; margin-left: -10px; margin-right: -10px; padding: 0 10px 18px; }
.consultation_view .inquiryWrap .boxWrap .topBox .type { margin-bottom: 8px; width: 74px; height: 26px; border-radius: 13px; font-size: 0.875rem; font-weight: 500; color: #fff; display: flex; align-items: center; justify-content: center; }
.consultation_view .inquiryWrap .boxWrap .topBox .type.mentoBg { color: var(--mainPurple); }
.consultation_view .inquiryWrap .boxWrap .topBox .title { font-size: 1.125rem; font-weight: 600; padding-bottom: 20px; }
.consultation_view .inquiryWrap .boxWrap .topBox .edu { font-size: 0.938rem; font-weight: 500; color: #999; }
.consultation_view .inquiryWrap .boxWrap .topBox button { position: absolute; bottom: 18px; right: 10px; }
.consultation_view .inquiryWrap .boxWrap .topBox button .icon { width: 22px; height: 22px; background: url(/skin/spec/img/ico_go.svg) no-repeat center / contain; }
.consultation_view .inquiryWrap .boxWrap .btmBox { padding-top: 20px; display: flex; flex-direction: column; gap: 40px; }
.consultation_view .inquiryWrap .boxWrap .btmBox .listBox { display: flex; flex-direction: column; gap: 18px; }
.consultation_view .inquiryWrap .boxWrap .btmBox .listBox li { display: flex; align-items: center; justify-content: space-between; }
.consultation_view .inquiryWrap .boxWrap .btmBox .listBox li .title { font-size: 1rem; font-weight: 500; color: #666; }
.consultation_view .inquiryWrap .boxWrap .btmBox .listBox li .text { font-size: 1rem; font-weight: 600; }
.consultation_view .inquiryWrap .boxWrap .btmBox .listBox li .text.purple { color: var(--mainPurple); }
.consultation_view .inquiryWrap .boxWrap .btmBox .writeBtn { font-size: 1rem; font-weight: 600; color: #fff; padding: 14px; border-radius: 16px; background: var(--mainPurple); }

.consultation .topFilter { position: absolute; top: 11px; right: 40px; }
.consultation .topFilter .icon { width: 22px; height: 22px; background: url(/skin/spec/img/ico_arrow_down.svg) no-repeat center / contain; cursor: pointer; transition: .4s ease; }
.consultation .topFilter .icon.open { -webkit-transform: rotate(-180deg); -ms-transform: rotate(-180deg); transform: rotate(-180deg); }
.consultation .botList { display: flex; flex-direction: column; gap: 40px; }
.consultation .botList > li > .title { display: flex; align-items: center; gap: 14px; margin-bottom: 20px; padding: 0 40px; }
.consultation .botList > li > .title .icon { width: 36px; height: 36px; border-radius: 50%; }
.consultation .botList > li > .title p { font-size: 20px; font-weight: 600; }
.consultation .botList > li > .title p.purple { color: var(--mainPurple); }
.consultation .botList > li > .title p.green { color: var(--mainGreen); }
.consultation .botList .pageTop { display: flex; justify-content: space-between; margin: 24px 0 10px; }
.consultation .botList .pageTop .pageNum p { font-size: 22px; color: #666; }
.consultation .botList .pageTop .itemBox .nice-select .option {padding: 0 13px;}
.consultation .botList .pageTop .itemBox .nice-select span {color: var(--mainPurple);}
.consultation .botList .pageTop .itemBox .nice-select:after {border-color: var(--mainPurple);}
.consultation .botList .list02 .pageTop .itemBox .nice-select span {color: var(--mainGreen);}
.consultation .botList .list02 .pageTop .itemBox .nice-select:after {border-color: var(--mainGreen);}
.consultation .botList .list01 .pageTop .pointColor {color: var(--mainPurple);}
.consultation .botList .list02 .pageTop .pointColor {color: var(--mainGreen);}
.consultation .botList .list01 .tabWrap.type1 { display: flex; justify-content: space-between; }
.consultation .botList .list01, .consultation .botList .list02 { position: relative; }
.consultation .botList .boxWrap .filterBtn .icon {background-image: url(/skin/spec/img/ico_filter.svg)}
.consultation .botList .listBox { display: flex; flex-direction: column; gap: 20px; }
.consultation .botList .listBox li { border-bottom: 1px solid #eee; padding-bottom: 20px; }
.consultation .botList .listBox li:last-child { border-bottom: 0; }
.consultation .botList .listBox li.complete {filter: grayscale(1);}
.consultation .botList .listBox .topType {display: flex; align-items: center; gap: 12px;}
.consultation .botList .listBox .topType span {padding: 8px 12px; border-radius: 24px; font-size: 14px; font-weight: 600; background: #e8e5ff; color: var(--mainPurple);}
.consultation .botList .list02 .listBox .topType span { color: var(--mainGreen); background: #e8f2d7; }
.consultation .botList .list01 .listBox .topType span.state {background: var(--mainPurple); color: #fff; font-weight: 500;}
.consultation .botList .list02 .listBox .topType span.state {background: var(--mainGreen); color: #fff; font-weight: 500;}
.consultation .botList .listBox .title {font-weight: 600; font-size: 18px;}
.consultation .botList  .boxWrap { padding: 25px 40px; border-radius: 30px; background: #fff; box-shadow: 0 1px 10px rgba(0,0,0,0.1); }
.consultation .botList .list01 .title .icon {background: var(--mainPurple) url(/skin/spec/img/mypage_consultation_list01_icon.svg) no-repeat center / contain;}
.consultation .botList .list01 .listBox li a {display: flex; flex-direction: column; gap: 16px;}
.consultation .botList .list01 .listBox li .date {font-size: 14px; font-weight: 600;}
.consultation .botList .list01 .botButton { margin-top: 0; }
.consultation .botList .list01 .botButton .clickBtn {padding: 14px 20px; border-radius: 14px; background: var(--mainPurple); color: #fff;  font-size: 16px; font-weight: 600;}
.consultation .botList .list02 .title .icon {background: var(--mainGreen) url(/skin/spec/img/mypage_consultation_list02_icon.svg) no-repeat center / contain;}
.consultation .botList .list02 .listBox li a {display: flex; flex-direction: column; gap: 16px;}
.consultation .botList .list02 .listBox li .botType {font-size: 14px; font-weight: 500; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical;}
.consultation .botList .list02 .listBox li .title {margin-top: -6px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical;}
.consultation .botList .list02 .listBox li .bot {font-size: 14px; display: flex; align-items: center; gap: 4px;}
.consultation .botList .list02 .pageWrap ul li.now a {background: var(--mainGreen);}
.consultation_view .inquiryBox { border: 1px solid #eee; border-radius: 30px; }
.consultation_view .titleBox {padding: 30px 40px; border-bottom: 1px solid #EEEEEE;}
.consultation_view .titleBox .topType {display: flex; align-items: center; gap: 12px; margin-bottom: 16px;}
.consultation_view .titleBox .topType span { padding: 6px 12px; font-size: 14px; border-radius: 26px; background: rgba(153, 153, 153, .2); color: #999; text-align: center; box-sizing: border-box;}
.consultation_view .titleBox .topType span.state {background: #999999; color: #fff;}
.consultation_view .titleBox .botType {font-size: 12px; font-weight: 500; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; margin-bottom: 8px;}
.consultation_view .titleBox .smtitle { padding-bottom: 8px; }
.consultation_view .answerBox .titleBox .topType span.state {background: var(--mainGreen); color: #fff;}
.consultation_view .titleBox .title {display: flex; gap: 6px; align-items: center; font-size: 22px; font-weight: 600; margin-bottom: 10px;}
.consultation_view .titleBox .title span { font-size: 20px; font-weight: 600; color: var(--mainPurple);}
.consultation_view .titleBox .title span.green { color: var(--mainGreen); }
.consultation_view .titleBox .name {margin-bottom: 16px; font-size: 16px; font-weight: 500;}
.consultation_view .titleBox .date {font-size: 16px; display: flex; align-items: center; gap: 10px;}
.consultation_view .titleBox .date .icon {width: 18px; height: 18px; background: url(/skin/spec/img/ico_boardView_time.svg) no-repeat center / contain;}
.consultation_view .textBox {padding: 30px 40px; font-size: 16px; color: #666666; line-height: 1.6;}
.consultation_view .answerBox { border: 1px solid #eee; border-radius: 30px; margin-top: 30px; }
.consultation_view .answerBox .textBox {border-bottom: none;}
.consultation_view .botBox { text-align: center; margin-top: 30px; }
.consultation_view .botBox .btn { width: 530px; box-sizing: border-box; padding: 12px 20px; border-radius: 30px; font-size: 18px; font-weight: 500; background: var(--mainPurple); color: #fff; }
.consultation_view .botBox .smallText { margin-top: 10px; color: #EC5F5F; font-size: 13px;}

.consultation_view .chatWrap { width: 500px; margin: 0 auto; }
.consultation_view .chatWrap .titleBox { padding: 0 10px; padding-bottom: 20px; margin-bottom: 20px; }
.consultation_view .chatWrap .titleBox .title { margin-bottom: 20px; }
.consultation_view .chatWrap .box { display: flex; justify-content: space-between; align-items: center; }
.consultation_view .chatWrap .box .name { margin-bottom: 0; }
.consultation_view .titleBox .go .icon { width: 20px; height: 20px; background: url(/skin/spec/img/ico_go.svg) no-repeat center / contain; }
.consultation_view .chatBox { max-height: 580px; overflow-y: auto; }
.consultation_view .chatBox li { padding-bottom: 20px; }
.consultation_view .chatBox .left { display: flex; justify-content: flex-start; padding: 4px 0; padding-left: 6px; position: relative; word-break: break-all; font-size: 1rem; }
.consultation_view .chatBox .chat-left { background: #eee; max-width: 260px; border-radius: 16px; font-size: 1rem; font-weight: 400; padding: 7px 14px; position: relative; display: inline-block; width: fit-content; z-index: 1; box-sizing: border-box; }
.consultation_view .chatBox .chat-left::before { content: ""; width: 20px; height: 14px; position: absolute; background: url(/skin/spec_m/img/chat_gray.svg) no-repeat center / contain; left: -5px; bottom: -5px; }
.consultation_view .chatBox .right { display: flex; justify-content: flex-end; padding: 4px 0; padding-right: 6px; position: relative; word-break: break-all; font-size: 1rem; }
.consultation_view .chatBox .chat-right { color: #fff; background: var(--mainGreen); max-width: 270px; border-radius: 16px; font-size: 1rem; font-weight: 400; padding: 7px 14px; position: relative; display: inline-block; width: fit-content; z-index: 1; box-sizing: border-box; }
.consultation_view .chatBox .chat-right::before { content: ""; width: 20px; height: 14px; position: absolute; background: url(/skin/spec_m/img/chat_green.svg) no-repeat center / contain; right: -5px; bottom: -1px; }
.consultation_view .chatBox .date { display: flex; align-items: center; justify-content: center; margin-bottom: 6px; }
.consultation_view .chatBox .date p { font-size: 0.75rem; font-weight: 500; color: #aaa; padding: 3px; width: 86px; text-align: center; border: 1px solid #ddd; border-radius: 12px; }

.userclass .srcBotBox .left .pageNum { font-size: 1.375rem; color: #666; }
.userclass .srcBotBox .left .pageNum .pointColor { font-weight: 600; color: var(--mainPurple); }
.userclass .listTable .title { display: block; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
.userclass_add .boxWrap { width: 530px; margin: 0 auto; }
.userclass_add .boxWrap .title { font-size: 1.5rem; font-weight: 600; color: var(--mainPurple); }
.userclass_add .boxWrap { box-sizing: border-box; display: flex; flex-direction: column; gap: 28px; }
.userclass_add .boxWrap .inputBox { display: flex; flex-direction: column; gap: 6px; }
.userclass_add .boxWrap .inputBox .text { font-size: 1.125rem; font-weight: 600; padding-bottom: 2px; }
.userclass_add .boxWrap .inputBox select { font-size: 1rem; font-weight: 500; padding: 11px 12px; padding-right: 50px; border: 1px solid #ddd; border-radius: 6px; background: url(/skin/spec/img/ico_arrow_down.svg) no-repeat 97% 50%; }
.userclass_add .boxWrap .inputBox .disabled { font-size: 1rem; font-weight: 500; color: #686868; padding: 11px 12px; border: 1px solid #ddd; border-radius: 6px; background: #eee; overflow: hidden; }
.userclass_add .boxWrap .botButton { padding-top: 16px; padding-bottom: 40px; }
.userclass_add .boxWrap .botButton .writeBtn { width: 100%; padding: 15px 20px; font-size: 1.125rem; color: #fff; border-radius: 36px; background: var(--mainPurple);  }

.userclass_view .boxWrap { width: 100%; display: flex; align-items: flex-start; gap: 50px; }
.userclass_view .topWrap { width: 35%; padding: 20px 26px; border: 1px solid #ddd; border-radius: 16px; }
.userclass_view .topWrap .box { position: relative; display: flex; align-items: center; gap: 10px; margin-bottom: 16px; }
.userclass_view .topWrap .box .type { flex-shrink: 0; width: 76px; height: 32px; border-radius: 16px; font-size: 0.938rem; font-weight: 500; color: #fff; display: flex; align-items: center; justify-content: center; }
.userclass_view .topWrap .box .type.mentoBg { color: var(--mainPurple); }
.userclass_view .topWrap .box .gray { font-size: 0.875rem; font-weight: 500; }
.userclass_view .topWrap .box .moreBtn { position: absolute; top: 1px; right: 0; width: 20px; height: 20px; display: flex; align-items: center; justify-content: center; }
.userclass_view .topWrap .box .moreBtn .icon { width: 3px; height: 13px; background: url(/skin/spec/img/ico_more.svg) no-repeat right / contain; }
.userclass_view .topWrap .box .moreBox { display: none; position: absolute; top: 24px; right: -4px; padding: 10px; border-radius: 10px; background: #fff; z-index: 1; box-shadow: 0 3px 10px rgba(0,0,0,0.2); }
.userclass_view .topWrap .box .moreBox li { display: flex; flex-direction: column; gap: 4px; }
.userclass_view .topWrap .box .moreBox .delBtn { font-size: 1rem; font-weight: 500; color: var(--mainRed); text-align: left; width: 144px; padding: 8px; }
.userclass_view .topWrap .box .moreBox .stopBtn { font-size: 1rem; font-weight: 500; text-align: left; width: 144px; padding: 8px; }
.userclass_view .topWrap .title { font-size: 1.125rem; font-weight: 600; margin-bottom: 10px; word-break: break-all; }
.userclass_view .topWrap .date { font-size: 1rem; font-weight: 500; color: #666; margin-bottom: 30px; }
.userclass_view .topWrap .ddayBox { display: flex; flex-direction: column; gap: 6px; }
.userclass_view .topWrap .ddayBox .topText { display: flex; align-items: center; justify-content: space-between; font-size: 1rem; font-weight: 500; color: #999; }
.userclass_view .topWrap .ddayBox .topText .purple { font-weight: 600; }
.userclass_view .topWrap .progress { width: 100%; height: 16px; border-radius: 8px; background: #F1F1F1; overflow: hidden; box-sizing: border-box; position: relative; }
.userclass_view .topWrap .progress .bar { position: absolute; top: 0; left: 0; width: 10%; height: 16px; border-radius: 8px; background: linear-gradient( to left, var(--mainPurple), var(--mainPink)); }
.userclass_view .topWrap .reviewBtn { width: 100%; font-size: 1rem; font-weight: 600; color: #fff; padding: 14px; margin-top: 18px; border-radius: 16px; background: var(--mainPurple); }
.userclass_view .writeWrap { padding-bottom: 16px; display: flex; justify-content: space-between; align-items: flex-end; border-bottom: 1px solid var(--mainPurple); }
.userclass_view .writeWrap .text { padding-left: 6px; font-size: 1.5rem; font-weight: 600; }
.userclass_view .writeWrap .clickBtn { font-size: 1rem; font-weight: 600; color: #fff; border-radius: 14px; background: var(--mainPurple); padding: 14px 20px; }
.userclass_view .btmWrap { width: 65%; }
.userclass_view .btmWrap .listBox { max-height: 620px; overflow-y: auto; }
.userclass_view .btmWrap .listBox::-webkit-scrollbar { width: 5px; }
.userclass_view .btmWrap .listBox::-webkit-scrollbar-thumb { background-color: #BAB1FF; border-radius: 10px; }
.userclass_view .btmWrap .listBox::-webkit-scrollbar-track { background-color: #fff; border-radius: 10px; }
.userclass_view .btmWrap .listBox li { display: flex; align-items: center; gap: 28px; padding: 12px 18px; border-bottom: 1px solid #eee; }
.userclass_view .btmWrap .listBox li .imgBox { width: 42px; height: 42px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; }
.userclass_view .btmWrap .listBox li .textBox { display: flex; flex-direction: column; gap: 6px; width: 100%; }
.userclass_view .btmWrap .listBox li .textBox .date { font-size: 0.938rem; font-weight: 500; color: #999; }
.userclass_view .btmWrap .listBox li .textBox .text { display: block; font-size: 1rem; font-weight: 400; line-height: 1.3; height: 41px; word-break: break-word; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

#uwModal .modal-header .modal-title { line-height: 1; font-size: 1.25rem; color: var(--mainPurple); }
#uwModal .modal-body { display: flex; flex-direction: column; gap: 24px; }
#uwModal .modal-body .topWrap { display: flex; flex-direction: column; gap: 16px; }
#uwModal .modal-body .topWrap .title { font-size: 1.125rem; font-weight: 600; margin-bottom: 0; }
#uwModal .modal-body .topWrap .feelings { padding: 0 16px; display: flex; align-items: center; justify-content: space-between; }
#uwModal .modal-body .topWrap .feelings button { display: flex; flex-direction: column; gap: 8px; align-items: center; }
#uwModal .modal-body .topWrap .feelings button .icon { width: 50px; height: 50px; }
#uwModal .modal-body .topWrap .feelings button .feel01 { background: url(/skin/spec/img/ico_feel01_g.svg) no-repeat center / contain; }
#uwModal .modal-body .topWrap .feelings button .feel02 { background: url(/skin/spec/img/ico_feel02_g.svg) no-repeat center / contain; }
#uwModal .modal-body .topWrap .feelings button .feel03 { background: url(/skin/spec/img/ico_feel03_g.svg) no-repeat center / contain; }
#uwModal .modal-body .topWrap .feelings button .feel04 { background: url(/skin/spec/img/ico_feel04_g.svg) no-repeat center / contain; }
#uwModal .modal-body .topWrap .feelings button .feel05 { background: url(/skin/spec/img/ico_feel05_g.svg) no-repeat center / contain; }
#uwModal .modal-body .topWrap .feelings button.on .feel01 { background: url(/skin/spec/img/ico_feel01.svg) no-repeat center / contain; }
#uwModal .modal-body .topWrap .feelings button.on .feel02 { background: url(/skin/spec/img/ico_feel02.svg) no-repeat center / contain; }
#uwModal .modal-body .topWrap .feelings button.on .feel03 { background: url(/skin/spec/img/ico_feel03.svg) no-repeat center / contain; }
#uwModal .modal-body .topWrap .feelings button.on .feel04 { background: url(/skin/spec/img/ico_feel04.svg) no-repeat center / contain; }
#uwModal .modal-body .topWrap .feelings button.on .feel05 { background: url(/skin/spec/img/ico_feel05.svg) no-repeat center / contain; }
#uwModal .modal-body .topWrap .feelings button .text { font-size: 0.875rem; font-weight: 500; color: #999; }
#uwModal .modal-body .textWrap { height: 360px; box-sizing: border-box; display: flex; flex-direction: column; gap: 30px; padding: 0; }
#uwModal .modal-body .textWrap .textBox::-webkit-scrollbar { width: 5px; }
#uwModal .modal-body .textWrap .textBox::-webkit-scrollbar-thumb { background-color: #BAB1FF; border-radius: 10px; }
#uwModal .modal-body .textWrap .textBox::-webkit-scrollbar-track {  border-radius: 10px; }
#uwModal .modal-body .textWrap .textBox { resize: none; box-sizing: border-box; width: 100%; height: 100%; padding: 16px 16px 20px; font-size: 1rem; font-weight: 400; border: 1px solid #eee; border-radius: 16px; background: #fff; transition: all 0.2s ease; }
#uwModal .modal-body .textWrap .textBox::placeholder { color: #999; }
#uwModal .modal-body .textWrap .textBox:focus { border-color: var(--mainPurple); }
#uwModal .botButton { width: 100%; display: flex; align-items: center; gap: 40px; }
#uwModal .botButton .deleteBtn { width: 24px; height: 24px; flex-shrink: 0; margin-left: 20px; }
#uwModal .botButton .deleteBtn .icon { width: 24px; height: 24px; background: url(/skin/spec/img/ico_delete.svg) no-repeat center / contain; }
#uwModal .botButton .writeBtn { width: 100%; font-size: 1rem; font-weight: 500; color: #fff; padding: 14px; border-radius: 16px; background: var(--mainPurple); }

.review_modal .textWrap .reviewBox { display: flex; flex-direction: column; gap: 16px; }
.review_modal .textWrap .reviewBox textarea { resize: none; word-break: break-all; box-sizing: border-box; width: 100%; padding: 14px 14px 18px; font-size: 1rem; font-weight: 500; border: 1px solid #eee; border-radius: 16px; background: #fff; transition: all 0.2s ease;}
.review_modal .textWrap textarea::placeholder { color: #999; }
.review_modal .textWrap textarea:focus { border-color: var(--mainPurple); }
.review_modal .textWrap .ncsHugi { height: 140px; }
.review_modal .textWrap .bootHugi { height: 200px; }
.review_modal .textWrap .red { padding-top: 10px; font-size: 0.813rem; }
.review_modal .textWrap .clickBtn { width: 100%; font-size: 1rem; font-weight: 600; color: #fff; padding: 14px; margin-top: 20px; border-radius: 16px; background: var(--mainPurple); }
.del_modal .boxWrap { max-width: 400px; }
.del_modal.modalCon .boxWrap .close { top: 28px; right: 24px; }
.del_modal .red { padding-top: 30px; padding-bottom: 8px; font-size: 1.125rem; font-weight: 600; color: #333; }
.del_modal .gray { font-size: 0.875rem; font-weight: 500; }
.del_modal .writeBtn { width: 100%; height: 47px; border-radius: 16px; color: #fff; font-size: 16px; font-weight: 600; margin-top: 24px; }
.stop_modal .boxWrap { max-width: 400px; }
.stop_modal.modalCon .boxWrap .close { top: 28px; right: 24px; }
.stop_modal .red { padding-top: 30px; padding-bottom: 8px; font-size: 1.125rem; font-weight: 600; color: #333; }
.stop_modal .gray { font-size: 0.875rem; font-weight: 500; }
.stop_modal .writeBtn { width: 100%; height: 47px; border-radius: 16px; color: #fff; font-size: 16px; font-weight: 600; margin-top: 24px; }
.before_modal .boxWrap { max-width: 400px; }
.before_modal .red { padding-top: 30px; padding-bottom: 8px; font-size: 1.125rem; font-weight: 600; color: #333; }
.before_modal .gray { font-size: 0.875rem; font-weight: 500; }
.before_modal.modalCon .boxWrap .close.writeBtn { position: static; -webkit-text-stroke: 0; transform: none; line-height: 1; width: 100%; height: 47px; border-radius: 16px; color: #fff; font-size: 16px; font-weight: 600; margin-top: 24px; background: var(--mainPurple); }
.cancle_modal .boxWrap { max-width: 400px; }
.cancle_modal.modalCon { z-index: 1056; }
.cancle_modal.modalCon .boxWrap .close { top: 28px; right: 24px; }
.cancle_modal .red { padding-top: 30px; padding-bottom: 8px; font-size: 1.125rem; font-weight: 600; color: #333; }
.cancle_modal .gray { font-size: 0.875rem; font-weight: 500; }
.cancle_modal .writeBtn { width: 100%; height: 47px; border-radius: 16px; color: #fff; font-size: 16px; font-weight: 600; margin-top: 24px; }
.delete_modal .boxWrap { max-width: 400px; }
.delete_modal.modalCon { z-index: 1056; }
.delete_modal.modalCon .boxWrap .close { top: 28px; right: 24px; }
.delete_modal .red { padding-top: 30px; padding-bottom: 8px; font-size: 1.125rem; font-weight: 600; color: #333; }
.delete_modal .gray { font-size: 0.875rem; font-weight: 500; }
.delete_modal .writeBtn { width: 100%; height: 47px; border-radius: 16px; color: #fff; font-size: 16px; font-weight: 600; margin-top: 24px; }

.useractivity .profileWrap { display: flex; flex-direction: column; gap: 40px; }
.useractivity .profileBox { padding: 25px 40px; border-radius: 30px; background: #fff; box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); }
.useractivity .profileBox .sub-title { font-size: 20px; font-weight: 600; color: var(--mainPurple); margin-bottom: 30px; }

.cnt-wrap.consultation_write > .right { width: 100%; padding: 46px 100px 80px; }
.profile.consultation_write .writeTable tbody { display: flex; flex-direction: column; gap: 0; }
.profile.consultation_write .writeTable tr {display: flex; margin-bottom: 30px; width: 100%; }
.profile.consultation_write .writeTable th {display: block; flex: none;}
.profile.consultation_write .writeTable td {display: block; width: 100%; box-sizing: border-box;}
.profile.consultation_write .writeTable td .inputFlex { display: flex; flex-wrap: nowrap; gap: 16px; }
.profile.consultation_write .botButton .writeBtn { background-image: none; }

.consultation.counsel .botList .list01 .title .icon { background: var(--mainPurple) url(/skin/spec/img/mypage_application_list01_icon.svg) no-repeat center / contain; }
.consultation.counsel .botList .list02 .title .icon { background: var(--mainGreen) url(/skin/spec/img/mypage_application_list02_icon.svg) no-repeat center / contain; }
.consultation.counsel .botList .list02 .pageTop { margin-top: 0; }
.consultation.counsel .botList .listBox li a {display: flex; flex-direction: row; gap: 16px; align-items: center; }
.consultation.counsel .botList .listBox .title { margin-bottom: 10px; }
.consultation.counsel .botList .listBox span.type { padding: 8px 12px; border-radius: 26px; color: #fff; height: 36px; }
.consultation.counsel .botList .list02 .listBox li .date { width: 60px; }
.consultation.counsel .botList .list02 .listBox li .date .gray { margin-top: 10px; }
.consultation.counsel .botList .list02 .listBox li .textBox { width: calc(100% - 245px); }
.consultation.counsel .botList .list02 .listBox li .title { margin-top: 0; }
.consultation.counsel .botList .list02 .listBox li .price { width: 153px; text-align: right; font-size: 20px; color: var(--mainGreen); }
.application_modal .m-inner {overflow-y: auto;}
.application_modal .wrapBox {position: relative; max-width: 800px; width: 90%; padding-bottom: 10px;}
.application_modal .wrapBox .close {width: 28px; height: 28px; position: absolute; bottom: -58px; left: 50%; transform: translateX(-50%); background: url(/skin/spec/img/ico_close_white.svg) no-repeat center / contain; cursor: pointer; }
.application_modal .boxWrap {border-radius: 16px; max-width: 800px; width: 100%; }
.application_modal .boxWrap .topBox {border-bottom: 1px solid #eee; padding: 30px; padding-bottom: 16px;}
.application_modal .boxWrap .topBox .title { font-size: 24px; font-weight: 600; margin-bottom: 6px; display: block;}
.application_modal .boxWrap .topBox .name {font-size: 18px; font-weight: 600; color: #999; margin-bottom: 16px; display: block;}
.application_modal .boxWrap .topBox .date {font-size: 18px; display: flex; align-items: flex-end; gap: 4px; font-weight: 500;}
.application_modal .boxWrap .topBox .date .gray {font-size: 14px; font-weight: 600;}
.application_modal .boxWrap .botBox {padding: 30px; }
.application_modal .boxWrap .botBox .paymentList {display: flex; flex-direction: column; gap: 16px; margin-bottom: 32px;}
.application_modal .boxWrap .botBox .paymentList li {display: flex; justify-content: space-between; font-size: 14px;}
.application_modal .boxWrap .botBox .paymentList li .left {color: #999; font-size: 18px; }
.application_modal .boxWrap .botBox .paymentList li .right {font-weight: 600; font-size: 20px; }
.application_modal .boxWrap .botBox .paymentList li.price .right {color: var(--mainGreen);}
.application_modal .boxWrap .botBox .btnBox { display: flex; align-items: center; gap: 30px;}
.application_modal .boxWrap .botBox .btnBox button {width: 100%; box-sizing: border-box; padding: 14px 20px; border-radius: 16px; font-size: 16px; font-weight: 600;}
.application_modal .boxWrap .botBox .btnBox .btn1 {background: var(--mainPurple); color: #fff;}
.application_modal .boxWrap .botBox .btnBox .btn2 {background: #fff; border: 1px solid #999; color: #999;}

/* 회원탈퇴 */
.canclesign .cancleWrap { display: flex; align-items: flex-start; gap: 60px; width: 100%; }

.canclesign .textBox { width: 42%; display: flex; flex-direction: column; gap: 8px; }
.canclesign .textBox li { padding-left: 8px; }
.canclesign .textBox .title { font-size: 1.25rem; font-weight: 600; color: var(--mainPurple); padding-left: 0; padding-bottom: 6px; }
.canclesign .cancleWrap > form { width: 58%; }
.canclesign .cancle-reason { padding: 30px; border: 1px solid #ddd; border-radius: 16px; }
.canclesign .cancle-reason .title { font-size: 1.125rem; font-weight: 600; padding-bottom: 20px; }
.canclesign .cancle-reason .radioBox { display: flex; flex-direction: column; gap: 14px; }
.canclesign .cancle-reason .radioBox li { padding-left: 12px; display: flex; align-items: center; gap: 6px; }
.canclesign .cancle-reason .radioBox li input[type="radio"] { flex-shrink: 0; width: 16px; height: 16px; background: #fff; border: 1px solid #ddd; border-radius: 50%; }
.canclesign .cancle-reason .radioBox li label { font-size: 1rem; font-weight: 400; }
.canclesign .cancle-reason .radioBox li input[type="radio"]:checked { border: 5px solid var(--mainPurple); }
.canclesign .cancle-reason .radioBox li input[type="radio"]:checked + label { color: #604ded; }
.canclesign .cancle-reason .radioBox li input[type="text"] { margin-left: 6px; width: 70%; padding: 8px 12px; border: 1px solid #ddd; border-radius: 6px; color: #333; }
.canclesign .cancle-reason .checkPw { margin-top: 40px; padding: 12px 16px; border: 1px solid #ddd; border-radius: 6px; color: #333; }
.canclesign .cancle-reason .checkPw::placeholder { color: #999; }

.canclesign .botButton { margin-top: 50px; text-align: center; }
.canclesign .botButton .bgBtn { width: 530px; background-size: 24px; background-color: var(--mainPurple); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }


/* 마이페이지 테이블 */
.listTable { text-align: center; }
.listTable th { background: #f6f6f6; font-weight: 500; }
.listTable .noCT { text-align: left; }
.listTable .redBtn { background: var(--mainRed); color: #fff; padding: 8px 16px; border-radius: 20px; }
.listTable .bgBtn { background: var(--mainPurple); color: #fff; padding: 8px 16px; border-radius: 20px; }
.listTable .lineBtn { color: var(--mainPurple); padding: 6px 14px; border: 1px solid var(--mainPurple); border-radius: 20px; margin: 0 3px; }
.listTable td .answer { width: 100%; height: 260px; border: 0; resize: none; }

/* 마이페이지 검색 */
.srcTopBox { padding: 18px; border-radius: 16px; background: #f6f6f6; display: flex; justify-content: center; align-items: center; gap: 6px; margin-bottom: 30px; }
.srcTopBox input { width: 500px; padding: 8px 16px; border-radius: 12px; background: #fff; color: #333; }
.srcTopBox input::placeholder { color: #999; }
.srcTopBox .nice-select { width: 200px; height: 35px; background: #fff; border-bottom: 0; font-size: 16px; line-height: 35px; border-radius: 12px; }
.srcTopBox .clickBtn2 { background: var(--mainPurple); color: #fff; padding: 8px 16px; border-radius: 12px; }
.srcBotBox { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; }
.srcBotBox .left .tabGroup {display: flex; gap: 12px; align-items: center;}
.srcBotBox .left .tabGroup input[type="radio"] { display: none; }
.srcBotBox .left .tabGroup label {white-space: nowrap; font-size: 16px; font-weight: 600; transition: .5s ease;}
.srcBotBox .left .tabGroup input:checked+ label {padding: 8px 16px; border-radius: 24px; background: var(--black); color: #fff; font-size: 16px;}
.srcBotBox .right { width: 40%; display: flex; justify-content: flex-end; align-items: center; gap: 10px; }
.srcBotBox .right .nice-select { max-width: 186px; }
.srcBotBox .right .clickBtn { font-size: 16px; font-weight: 600; padding: 14px 20px; color: #fff; border-radius: 14px; background: var(--mainPurple); }



/* 마이페이지 (기관) */
.eduPage .topText { background: #F6F6F6; padding: 20px; display: flex; flex-direction: column; gap: 10px; align-items: center; text-align: center; font-size: 18px; font-weight: 500; border-radius: 16px; margin-bottom: 30px;}
.eduPage .topText .icon {width: 20px; height: 20px; background: url(/skin/spec/img/ico_info_purple.svg) no-repeat center / contain;}
.eduPage .topText p { font-size: 16px; }
.eduPage .topText .link {color: var(--mainPurple); text-decoration: underline; }

.eduPage .srcTopBox .list-sel-arrow:after { right: 16px; top: 7px; }
.eduPage .srcTopBox .list-sel-arrow select { padding: 8px 34px 8px 16px; border-radius: 12px; }

.eduPage .hrdBox .title { font-size: 18px; font-weight: 600; margin-bottom: 6px; }
.eduPage .hrdBox .title span { font-size: 14px; font-weight: 400; color: #EC5F5F; }
.eduPage .hrdBox { width: 100%; display: flex; align-items: center; justify-content: space-between; margin-bottom: 30px; }
.eduPage .hrdBox .hrdAuto { display: flex; align-items: center; gap: 6px; }
.eduPage .hrdBox .hrdAuto input { width: 500px; background: #f6f6f6; color: #333; border-radius: 30px; padding: 10px 24px; }
.eduPage .hrdBox .hrdAuto input::placeholder { color: #999; }
.eduPage .hrdBox .hrdAuto button { padding: 10px 16px; color: #fff; border-radius: 16px; background: var(--mainPurple); }
.eduPage .hrdBox .clickBtn { font-size: 16px; font-weight: 600; padding: 14px 20px; color: #fff; border-radius: 14px; background: var(--mainPurple); }

.eduPage.ncsWrite .hrdBox > div { width: 100%; }
.eduPage.ncsWrite .hrdBox{ margin-bottom: 50px; }
.eduPage.ncsWrite .hrdBox .hrdAuto input { width: calc(100% - 92px); }
.eduPage.ncsWrite .hrdBox .eduNB { padding-left: 16px; margin-top: 6px; display: flex; align-items: center; }
.eduPage.ncsWrite .hrdBox .eduNB input { padding-left: 10px; color: #333; width: auto; }
.eduPage .ncsWriteGap { display: flex; flex-direction: column; gap: 60px; }
.eduPage .ncsWriteGap li { display: flex; flex-direction: column; gap: 10px; }
.ncsWriteGap .ncsFormTop { display: flex; justify-content: space-between; align-items: flex-end; }
.ncsWriteGap .ncsFormTop .sub-title { margin-bottom: 0; }
.ncsWriteGap .ncsFormTop .bgBtn { font-size: 14px; font-weight: 500; color: #fff; padding: 8px 16px; border-radius: 20px; background: var(--mainPurple); }
.ncsWriteGap .ncsFormBot.tableScroll { max-height: 300px; overflow-y: auto; }
.ncsWriteGap .ncsFormBot input { padding: 0.375rem 0.75rem; color: #333; border: 1px solid #eee; border-radius: 6px; }
.ncsWriteGap .ncsFormBot input::placeholder { color: #ccc; }
.ncsWriteGap .ncsFormBot textarea { width: 100%; line-height: 1.5rem; padding: 16px; border: 1px solid #ddd; border-radius: 16px; resize: none; }
.ncsWriteGap .ncsFormBot textarea::placeholder { color: #ccc; }
.ncsWriteGap .ncsFormBot .listTable .inputRow { display: flex; justify-content: center; align-items: center; gap: 6px; }
.ncsWriteGap .ncsFormBot .listTable .inputRow.left { justify-content: flex-start; }
.ncsWriteGap .ncsFormBot .listTable textarea { width: 100%; line-height: initial; padding: 0.375rem 0.75rem; border: 1px solid #eee; border-radius: 6px; resize: none; }
.ncsWriteGap .ncsFormBot .listTable textarea::placeholder { color: #ccc; }
.ncsWriteGap .ncsFormBot .listTable .nice-select { height: 32px; line-height: 32px; }
/* .ncsWriteGap .ncsFormBot .listTable.noBorder input { border: 0; } */
.ncsWriteGap .ncsFormBot .listTable.minHeight tr:nth-child(2) { height: 58px; }
.ncsWriteGap .ncsFormBot input.noBorder { border: 0; }
.ncsWriteGap .ncsFormBot .ncsImgBox { padding: 20px; text-align: center; border: 1px solid #ddd; border-radius: 16px; }
.ncsWriteGap .ncsFormBot .ncsImgBox p { padding: 10px 0; color: #999; }
.ncsWriteGap .ncsFormBot .ncsImgBox .photos-btn-box button { padding: 4px 8px; border-radius: 4px; color: #fff; background: var(--mainPurple); }
.ncsWriteGap .ncsFormBot .listTable .fileUpload { display: flex; align-items: flex-start; gap: 16px; width: 80%; }
.ncsWriteGap .ncsFormBot .listTable .fileUpload .fileBox { position: relative; width: 100%; }
.ncsWriteGap .ncsFormBot .listTable .fileUpload .fileBox input { position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: 0; cursor: pointer; }
.ncsWriteGap .ncsFormBot .listTable .fileUpload .fileBox label { border-radius: 26px; background: var(--mainPurple); color: #fff; display: flex; align-items: center; justify-content: center; gap: 6px; font-size: 16px; font-weight: 600; padding: 12px; }
.ncsWriteGap .ncsFormBot .listTable .fileUpload .fileBox label span { max-width: 75%; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ncsWriteGap .ncsFormBot .listTable .fileUpload .fileBox label .icon { width: 16px; height: 16px; background: url(/skin/spec/img/ico_file_white.svg) no-repeat center / contain; }

.eduPage .sub-title { font-size: 18px; font-weight: 600; margin-bottom: 10px; }
.eduPage .sub-title span { font-size: 14px; padding-left: 10px; font-weight: 400; }
.eduPage .tableWrap { display: flex; flex-direction: column; gap: 46px; }
.eduPage .nice-select { color: var(--mainPurple); }
.eduPage .nice-select:after { border-color: var(--mainPurple); }
.eduPage .botButton { margin-top: 50px; text-align: center; position: relative; }
.eduPage .botButton .writeBtn { width: 530px; background-size: 24px; background-color: var(--mainPurple); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.eduPage .botButton .lineBtn { width: 160px; border: 1px solid #ccc; border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; margin-right: 10px; }
.eduPage .botButton .mb-del { position: absolute; bottom: 0; right: 0; }
.eduPage .botButton .mb-del a { display: block; font-size: 0.75rem; font-weight: 300; color: #999; }

.eduPage .writeWrap { width: 1000px; margin: 0 auto; display: flex; flex-direction: column; gap: 20px; }
.eduPage .writeWrap .inputBox { display: flex; gap: 10px; align-items: center; padding: 12px; border-bottom: 1px solid #eee; }
.eduPage .writeWrap .inputBox label { width: 120px; }
.eduPage .writeWrap .inputBox input { color: #333; }
.eduPage .writeWrap .inputBox input::placeholder { color: #999; }

.eduPage .selectSpec { margin-bottom: 40px; }
.eduPage .selectSpec .choice-btn { display: flex; justify-content: flex-start; align-items: center; gap: 16px; }
.eduPage .selectSpec .choice-btn .bgBtn { width: 260px; font-weight: 500; text-align: center; border-radius: 30px; padding: 20px; cursor: pointer; transition: all .2s; border: 1px solid #ddd; color: #ddd; }
.eduPage .selectSpec .choice-btn .bgBtn.active { color:#fff; border-color: var(--mainPurple); background: var(--mainPurple); }

.eduPage .listTable.leftText { text-align: left; }
.eduPage .listTable.leftText input { color: #333; padding: 0.375rem 0.75rem; border: 1px solid #eee; border-radius: 6px; }
.eduPage .listTable.leftText input::placeholder { color: #ccc; }
.eduPage .listTable.leftText .dateBox {display: flex; align-items: center; gap: 8px; width: 50%; }
.eduPage .listTable.leftText .dateBox .inputBox {width: 100%; border-bottom: 1px solid #fff; box-sizing: border-box;}
.eduPage .listTable.leftText .dateBox label {position: relative; width: 100%; }
.eduPage .listTable.leftText .dateBox input { height: 36px; padding: 8px 12px; font-size: 16px; box-sizing: border-box; font-weight: 600;}
.eduPage .listTable.leftText .dateBox .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_schedule_black.svg) no-repeat center / contain; position: absolute; right: 20px; top: 50%; transform: translateY(-50%);}
.eduPage .listTable.leftText .fileUpload { display: flex; align-items: flex-start; gap: 16px; }
.eduPage .listTable.leftText .fileUpload .fileBox {position: relative; width: calc(100% / 3); }
.eduPage .listTable.leftText .fileUpload .fileBox label {border-radius: 26px; background: var(--mainPurple); color: #fff; display: flex; align-items: center; justify-content: center; gap: 6px; font-size: 16px; font-weight: 600; padding: 12px;}
.eduPage .listTable.leftText .fileUpload .fileBox input {position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: 0; cursor: pointer;}
.eduPage .listTable.leftText .fileUpload .fileBox label .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_file_white.svg) no-repeat center / contain;}
.eduPage .listTable.leftText .fileUpload .fileBox label span {max-width: 75%; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.eduPage .listTable.leftText .fileUpload p {text-align: center; margin-top: 4px; color: #ec5f5f; font-size: 14px;}
.eduPage .listTable.specF .inputRow { display: flex; justify-content: center; gap: 20px; }

.eduPage .listTable.leftText .fileUpload .fileBox .echofileBox { margin-top: 10px; display: flex; justify-content: space-between; align-items: center; position: relative; }
.eduPage .listTable.leftText .fileUpload .fileBox .echofileBox .lineBtn { font-size: 14px; color: var(--mainPurple); padding: 4px 8px; border: 1px solid var(--mainPurple); border-radius: 10px; }
.eduPage .listTable.leftText .fileUpload .fileBox .echofileBox label { font-size: 14px; font-weight: 500; padding: 4px 8px; color: var(--mainRed); border: 1px solid var(--mainRed); border-radius: 10px; background: #fff; }
.eduPage .listTable.leftText .fileUpload .fileBox .echofileBox input { padding: 0; position: relative; width: 14px; height: 14px; border-radius: 4px; background: #fff; opacity: 1; border: 0; }
.eduPage .listTable.leftText .fileUpload .fileBox .echofileBox input:checked:after { content: ''; position: absolute; width: 6px; height: 8px; left: 3px; top: -1px; border-width: 0 2px 2px 0; border-color: var(--mainRed); border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }

.eduPage .listTable .radioForm input[type="radio"] { width: 18px; height: 18px; padding: 0; margin-right: 2px; border-radius: 50%; border: 1px solid #eee; position: relative; vertical-align: -4px; }
.eduPage .listTable .radioForm input[type="radio"]:checked { border-color: var(--mainPurple); background: var(--mainPurple); }
.eduPage .listTable .radioForm input[type="radio"]:checked:after { content: ''; position: absolute; width: 6px; height: 8px; left: 3px; top: -1px; border-width: 0 2px 2px 0; border-color: #fff; border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }
.eduPage .listTable .radioForm input[type="radio"]:disabled { background: #eee; }
.eduPage .listTable .radioForm { display: flex; align-items: center; gap: 26px; }
.eduPage .listTable .radioFormBot { margin-top: 6px; margin-left: 18px; display: flex; align-items: center; gap: 4px; }
.eduPage .listTable .radioFormBot input { width: 100px; padding-right: 0.375rem; border: 1px solid #eee; border-radius: 16px; text-align: center; }
.eduPage .listTable .checkForm input[type="checkbox"] { width: 18px; height: 18px; padding: 0; margin-right: 2px; border-radius: 6px; border: 1px solid #eee; position: relative; vertical-align: -4px; }
.eduPage .listTable .checkForm input[type="checkbox"]:checked { border-color: var(--mainPurple); background: var(--mainPurple); }
.eduPage .listTable .checkForm input[type="checkbox"]:checked:after { content: ''; position: absolute; width: 6px; height: 8px; left: 3px; top: -1px; border-width: 0 2px 2px 0; border-color: #fff; border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }
.eduPage .listTable .locaForm { display: flex; flex-direction: column; gap: 10px; }
.eduPage .listTable .locaForm .nice-select { width: 25%; }
.eduPage .listTable .locaForm .place_box { width: 100%; }
.eduPage .listTable .locaForm .place_box input { padding:  0.5rem 1rem; border: 1px solid #eee; border-radius: 20px; }
.eduPage .listTable .locaForm .place_box .inputBox { display: flex; align-items: center; gap: 10px; }

.eduPage .semiTitle { font-size: 18px; font-weight: 500; padding: 20px; margin-bottom: 30px; border-radius: 16px; background: #f6f6f6; }

.eduPage .profileWrap { display: flex; flex-direction: column; gap: 40px; }
.eduPage .profileBox { padding: 25px 40px; border-radius: 30px; background: #fff; box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); }
.eduPage .profileBox .sub-title { font-size: 20px; color: var(--mainPurple); margin-bottom: 30px; }
.eduPage .profileBox .writeTable .fileUpload .fileBox {position: relative;}
.eduPage .profileBox .writeTable .fileUpload .fileBox label {border-radius: 26px; background: var(--mainPurple); color: #fff; display: flex; align-items: center; justify-content: center; gap: 6px; font-size: 16px; font-weight: 600; padding: 16px;}
.eduPage .profileBox .writeTable .fileUpload .fileBox input {position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: 0; cursor: pointer;}
.eduPage .profileBox .writeTable .fileUpload .fileBox label .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_file_white.svg) no-repeat center / contain;}
.eduPage .profileBox .writeTable .fileUpload .fileBox label span {max-width: 75%; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.eduPage .profileBox .writeTable .fileUpload p {text-align: center; margin-top: 4px; color: #ec5f5f; font-size: 14px;}

.eduPage .profileBox .writeTable .fileUpload .fileBox .echofileBox { margin-top: 10px; display: flex; justify-content: space-between; align-items: center; position: relative;  }
.eduPage .profileBox .writeTable .fileUpload .fileBox .echofileBox label { font-size: 14px; font-weight: 500; padding: 4px 8px; color: var(--mainRed); border: 1px solid var(--mainRed); border-radius: 10px; background: #fff; }
.eduPage .profileBox .writeTable .fileUpload .fileBox .echofileBox input { position: relative; width: 14px; height: 14px; border-radius: 4px; background: #fff; opacity: 1; }
.eduPage .profileBox .writeTable .fileUpload .fileBox .echofileBox input:checked:after { content: ''; position: absolute; width: 6px; height: 8px; left: 3px; top: -1px; border-width: 0 2px 2px 0; border-color: var(--mainRed); border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }
.eduPage .profileBox .writeTable .addressfull_input { padding-right: 80px; }

.eduPage .profileBox .ncsWriteGap { gap: 40px; margin: 60px 0; }
.eduPage .profileBox .ncsWriteGap .ncsFormTop .sub-title { font-size: 1.125rem; color: #333; font-weight: 600; margin-bottom: 0; }

.eduPage .profileBox .introBox { position: relative; width: 100%; }
.eduPage .profileBox .ncsWriteGap .introBox .textBox { width: 100%; height: 100px; padding: 16px 20px; border: 1px solid #ddd; border-radius: 16px; resize: none; }
.eduPage .profileBox .ncsWriteGap .introBox .count {position: absolute; right: 20px; bottom: 20px; font-size: 0.875rem; font-weight: 500; color: #999; }


.eduPage .subIdWrap { width: 1000px; margin: 0 auto; }
.eduPage .writeTable {border-spacing: 0;}
.eduPage .writeTable tbody { display: flex; flex-wrap: wrap; gap: 30px 50px; }
.eduPage .writeTable tr {display: flex; align-items: center; width: calc(50% - 25px); }
.eduPage .writeTable tr.padding { position: relative; padding-bottom: 22px; }
.eduPage .writeTable th {display: block; flex: none; font-weight: 500; width: 140px; border-bottom: 0; }
.eduPage .writeTable th span { font-size: 14px; color: #999; }
.eduPage .writeTable td {display: block; width: 100%; box-sizing: border-box; padding: 14px 10px; }
.eduPage .writeTable td.noLine { border-bottom: 0; padding: 0; }
.eduPage .writeTable td .inputFlex {display: flex; flex-wrap: wrap; gap: 5px 10px;}
.eduPage .writeTable td .inputFlex > * {width: calc(50% - 5px);}
.eduPage .writeTable .hphoneBpx { position: relative; }
.eduPage .writeTable .hphoneBpx .btn { position: absolute; right: 0; top: 50%; transform: translateY(-50%); font-size: 14px; font-weight: 500; color: #fff; background: var(--mainPurple); padding: 2px 8px; border-radius: 10px;}
.eduPage .writeTable .hphoneBpx .timer { position: absolute; right: 50px; top: 50%; transform: translateY(-50%); font-size: 14px; font-weight: 400; color: #EC5F5F; }
.eduPage .writeTable .clickBtn {padding: 16px; border-radius: 26px; background: var(--mainPurple); color: #fff; width: 100%; font-size: 16px; font-weight: 600;}
.eduPage .writeTable .checkBox label {font-size: 16px; font-weight: 600; width: 100%; text-align: center; border-radius: 26px; padding: 16px; box-sizing: border-box; border: 1px solid #333; opacity: .2; transition: .3s ease;}
.eduPage .writeTable .checkBox input[type="radio"] { display: none; }
.eduPage .writeTable .checkBox input[type="radio"]:checked + label {opacity: 1; background: var(--mainPurple); color: #fff; border-color: var(--mainPurple);}
.eduPage .writeTable .smallText { position: absolute; color: #EC5F5F; font-size: 14px; left: 146px; bottom: 0; }

.eduPage .filterWrap { display: flex; flex-direction: column; gap: 20px; padding: 30px; }
.eduPage .filterWrap .box1, .eduPage .filterWrap .box2 { display: flex; align-items: center; gap: 20px;}
.eduPage .filterWrap .title { width: 80px; }
.eduPage .filterWrap .radioBox { display: flex; align-items: center; gap: 8px; }
.eduPage .filterWrap .radioBox input[type=radio] { display: none; }
.eduPage .filterWrap .radioBox label { display: flex; justify-content: center; align-items: center; width: 100px; height: 40px; font-size: 1rem; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.eduPage .filterWrap .radioBox input[type=radio]:checked + label { background: var(--mainPurple); color: #fff; border-color: transparent; }
.eduPage .filterWrap .dateBox { width: calc(100% - 80px); display: flex; align-items: center; gap: 8px; }
.eduPage .filterWrap .dateBox button { width: 100px; height: 40px; font-size: 1rem; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.eduPage .filterWrap .dateBox span { font-weight: 700; }
.eduPage .filterWrap .dateBox input[type=text] { width: 220px; height: 40px; text-align: center; color: #333; font-weight: 600; border: 1px solid #ddd; border-radius: 24px; background: #fff; }
.eduPage .botButton.formBtn { display: flex; justify-content: center; align-items: center; gap: 20px; margin-top: 30px; margin-bottom: 50px; }
.eduPage .botButton.formBtn .clickBtn { width: 400px; border-radius: 30px; padding: 15px 20px; background: var(--mainPurple); color: #fff;  font-size: 18px; font-weight: 500;}
.eduPage .canvasWrap { padding: 50px; padding-top: 30px; border-radius: 30px; background: #fff; box-shadow: 0 0 10px rgba(0,0,0,0.1); }
.eduPage .canvasWrap .title { font-size: 18px; font-weight: 600; padding-bottom: 20px; margin-bottom: 10px; border-bottom: 1px solid #eee; }

.eduPage .cart-top-box { margin: 0 auto; margin-bottom: 20px; }
.eduPage .cart-top-box ul { display: flex; justify-content: center; align-items: center; }
.eduPage .cart-top-box ul li:nth-child(odd) { height: 36px; border-radius: 19px; padding: 8px 22px; color: #999; border: 1px solid #ddd; }
.eduPage .cart-top-box ul li.active { color: #fff; background: var(--mainPurple); border-color: var(--mainPurple); }
.eduPage .cart-top-box ul li:nth-child(even) { width: 16px; height: 2px; background: #ddd; margin: 0 8px; }

.eduPage .cartNav { width: 100%; border-bottom: 1px solid #eee; height: 45px; position: relative; margin-bottom: 30px; }
.eduPage .cartNav .box { position: absolute; bottom: -1px; left: 0; z-index: 1; display: flex;}
.eduPage .cartNav button.active { border: 1px solid #eee; border-radius: 16px 16px 0 0; border-bottom: 1px solid #fff; opacity: 1; }
.eduPage .cartNav button { font-size: 20px; font-weight: 600; padding: 12px 20px 8px; opacity: 0.4;}

.eduPage .cart-delete button { font-size: 0.875rem; font-weight: 400; color: #333; padding: 8px 12px; border-radius: 12px; border: 1px solid #ddd; background: #fff; margin-bottom: 10px; }
.eduPage .cart-select { margin-top: 30px; padding: 22px 30px; border-radius: 16px; background: rgba(141,126,255,0.1); display: flex; justify-content: space-between; align-items: center; }
.eduPage .cart-select .left { display: flex; flex-direction: column; gap: 6px; }
.eduPage .cart-select .left p { font-size: 1.25rem; font-weight: 600; }
.eduPage .cart-select .left p span { color: var(--mainPurple); }
.eduPage .cart-select .left .cartName { font-size: 15px; font-weight: 500; line-height: 1.4; }
.eduPage .cart-select .right { display: flex; align-items: center; }
.eduPage .cart-select .right p { font-size: 1.25rem; font-weight: 600; }
.eduPage .cart-select .right p span { color: var(--mainPurple); padding-left: 20px; }
.eduPage .cart-select .right .redBtn { font-weight: 500; color: #fff; border-radius: 16px; background: var(--mainRed); padding: 12px 18px; margin-left: 24px; }
.eduPage .cart-select .right .bgBtn { font-weight: 500; color: #fff; border-radius: 16px; background: var(--mainPurple); padding: 12px 18px; margin-left: 10px; }

.eduPage .w-900 { width: 900px; margin: 0 auto; }
.eduPage .listTable .all-pay { display: flex; justify-content: space-between; align-items: center; font-weight: 600; }
.eduPage .listTable th.last { background: #d7d7dd; }

/*  tableCheck  */
.tableCheck { width: 18px; height: 18px; background: #fff; border: 1px solid #ddd; border-radius: 4px; position: relative; }
.tableCheck:checked { background: var(--mainPurple); border-color: var(--mainPurple); }
.tableCheck:checked:after { content: ''; position: absolute; width: 6px; height: 8px; left: 3px; top: -1px; border-width: 0 2px 2px 0; border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }

.tableRow { display: flex; justify-content: center; align-items: center; gap: 10px; }
.tableRow .radioBox { display: flex; justify-content: center; align-items: center; gap: 4px; }
.tableRow .radioBox input[type="radio"] { width: 18px; height: 18px; border-radius: 50%; border: 1px solid #ddd; background: #fff; position: relative; }
.tableRow .radioBox input[type="radio"]:checked { border-color: var(--mainPurple); background: var(--mainPurple); }
.tableRow .radioBox input[type="radio"]:checked:after { content: ''; position: absolute; width: 6px; height: 8px; left: 3px; top: -1px; border-width: 0 2px 2px 0; border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }

input[type="text"].tableText { padding: 8px; color: #333; border: 1px solid #eee; border-radius: 6px; background: #fff; } /*type=text*/
input[type="text"].tableText:disabled { background: #eee; }
input[type="text"].tableText::placeholder { color: #ccc; }

input[type="radio"].radioBox02 { width: 18px; height: 18px; border-radius: 50%; border: 1px solid #ddd; background: #fff; position: relative; }
input[type="radio"].radioBox02:checked { border-color: var(--mainPurple); background: var(--mainPurple); }
input[type="radio"].radioBox02:checked:after { content: ''; position: absolute; width: 6px; height: 8px; left: 3px; top: -1px; border-width: 0 2px 2px 0; border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }

/* 부트캠프 직접등록 */
.eduPage .ttip { position: relative; vertical-align: middle; padding-left: 2px; }
.eduPage .ttip .icon { width: 16px; height: 16px; background: url(/skin/spec/img/ico_what.svg) no-repeat center / contain; opacity: .2; }
.eduPage .ttip p { display: none; position: absolute; top: calc(100% + 4px); right: -50px; width: 200px; padding: 10px; font-size: 0.938rem; font-weight: 300; color: #fff; border-radius: 10px; background: rgba(0, 0, 0, .7); z-index: 1; transition: .4s ease; }
.eduPage .ttip:hover p, .eduPage .ttip:focus p { display: block; }
.eduPage .listTable.leftText input[type="text"]:disabled { background: #eee; }

.checkForm input[type="checkbox"] { width: 18px; height: 18px; padding: 0; margin-right: 2px; border-radius: 6px; border: 1px solid #eee; background: #fff; position: relative; vertical-align: -4px; }
.checkForm input[type="checkbox"]:checked { border-color: var(--mainPurple); background: var(--mainPurple); }
.checkForm input[type="checkbox"]:checked:after { content: ''; position: absolute; width: 6px; height: 8px; left: 3px; top: -1px; border-width: 0 2px 2px 0; border-color: #fff; border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }

.radioForm input[type="radio"] { width: 18px; height: 18px; padding: 0; margin-right: 2px; border-radius: 50%; border: 1px solid #eee; background: #fff; position: relative; vertical-align: -4px; }
.radioForm input[type="radio"]:checked { border-color: var(--mainPurple); background: var(--mainPurple); }
.radioForm input[type="radio"]:checked:after { content: ''; position: absolute; width: 6px; height: 8px; left: 3px; top: -1px; border-width: 0 2px 2px 0; border-color: #fff; border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }
.radioForm input[type="radio"]:disabled { background: #eee; }


.flexBox { display: flex; gap: 14px; }
.flexBox.bg > li { background: #f5f5f5; }
.flexBox.line > li { border: 1px solid #ddd; }
.flexBox > li { width: 25%; padding: 16px; border-radius: 16px; }
.flexBox > li .title { font-size: 16px; font-weight: 700; padding-bottom: 10px; }
.flexBox > li .title span { font-size: 14px; font-weight: 400; }
.flexBox > li .title .smtitle { padding-left: 6px; font-weight: 500; color: var(--mainPurple); }
.columnBox { display: flex; flex-direction: column; gap: 10px; }
.ncsFormBot .flexBox li textarea { padding: 10px; border-radius: 8px; border: 1px solid #eee; }
.etcText { margin-top: 6px; margin-left: 20px; width: calc(100% - 20px); background: #fff; }
.etcText:disabled { background: #e7e7e7; }
.ncsFormBot .flexBox textarea { padding: 10px 14px; resize: vertical; }
.ncsFormBot label { flex-shrink: 0; }
.etcCheckBox { display: flex; align-items: center; gap: 10px; }
.eduPage .procedure { display: flex; flex-direction: column; gap: 6px; }
.eduPage .procedure li { display: flex; flex-direction: row; align-items: center; gap: 10px; position: relative; }
.eduPage .procedure li p { width: 40px; flex-shrink: 0; font-weight: 500; }
.eduPage .procedure li input { padding-right: 30px; background: #fff; }
.eduPage .procedure li button { position: absolute; top: 10px; right: 10px; width: 14px; height: 14px; background: url(/skin/spec/img/ico_close.svg) no-repeat center / contain; }
.flexBox .lineBtn { font-weight: 500; color: var(--mainPurple); margin-top: 10px; }
.groupStudy { display: flex; flex-direction: column; gap: 10px; }
.groupStudy li { padding: 10px; border-radius: 10px; background: #fff; flex-direction: row !important; gap: 50px !important; position: relative; }
.groupStudy li .checkForm { display: flex; align-items: center; gap: 16px; flex-shrink: 0; }
.groupStudy li input[type="text"] { width: 50%; margin-right: 30px; background: #fff; }
.groupStudy li button { position: absolute; top: 19px; right: 12px; width: 14px; height: 14px; background: url(/skin/spec/img/ico_close.svg) no-repeat center / contain; }
.selfStudy { display: flex; align-items: center; gap: 6px; padding: 0 20px; }
.selfStudy input[type="text"] { background: #fff; }

/*  견적서  */
.estimate-wrap { width: 900px; padding: 30px; margin: 0 auto; background: #fff; }
.estimate-title { font-weight: 600; text-align: center; padding-bottom: 20px; margin-bottom: 20px; border-bottom: 1px solid #eee; }
.estimate-body .estimateTop { display: flex; gap: 20px; }
.estimate-body .estimateTop > div { width: calc(50% - 10px); }
.estimate-body .estimateTop .listTable td { text-align: left; }
.estimate-body .sub-title { font-size: 18px; font-weight: 600; margin-bottom: 8px; }
.estimate-body .all-pay { display: flex; justify-content: space-between; align-items: center; font-weight: 600; }
.estimate-body .all-pay p { margin-bottom: 0; }
.estimate-body .cart-goods table tbody tr:last-child th { background: #d7d7dd; }
.estimate-notice { margin-top: 40px; padding: 20px 26px; background: #f6f6f6; border-radius: 16px; }
.estimate-notice p { margin-bottom: 0; }
.estimate-wrap .botButton { width: 200px; margin: 0 auto; box-sizing: border-box; margin-top: 30px; }
.estimate-wrap .botButton .writeBtn { width: 100%; font-size: 18px; font-weight: 500; padding: 16px; border-radius: 16px; color: #fff; background: var(--mainPurple);  border: 0;}


/*강사구직*/
.teachermark .searchWrapBetween {margin-top: 0; }
.teachermark .listBox li { border-bottom: 1px solid #eee; padding: 24px 0; }
.teachermark .listBox li a { display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.teachermark .listBox li .title { font-size: 22px; font-weight: 600; }
.teachermark .listBox li .date { font-size: 16px; font-weight: 500; display: flex; align-items: center; gap: 8px; }
.teachermark .listBox li .date .icon { width: 24px; height: 24px; background: url(/skin/spec/img/ico_boardView_time.svg) no-repeat center / contain; }

.teacherlist .searchWrapBetween {margin-top: 0; }
.teacherlist .listBox {display: flex; flex-wrap: wrap; gap: 40px;}
.teacherlist .listBox li { width: 415px; }
.teacherlist .listBox a {width: 100%; border-radius: 16px; border: 1px solid #eee;}
.teacherlist .listBox .topText {padding: 16px; border-bottom: 1px solid #eee; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px;}
.teacherlist .listBox .topText .left {display: flex; flex-direction: column; gap: 12px;}
.teacherlist .listBox .topText .name {font-size: 15px; font-weight: 700; display: flex; align-items: flex-end; gap: 4px;}
.teacherlist .listBox .topText .name strong {font-size: 20px;}
.teacherlist .listBox .topText .detail {font-size: 14px; font-weight: 600; color: #999999; display: flex; gap: 6px; }
.teacherlist .listBox .topText .right {flex: none; margin-left: auto;}
.teacherlist .listBox .topText .right .state {font-size: 14px; font-weight: 600; background: #999; border-radius: 26px; padding: 10px 16px; color: #fff;}
.teacherlist .listBox .topText .right .state.no {background: #EC5F5F}
.teacherlist .listBox .topText .right .state.ing {background: var(--mainPurple);}
.teacherlist .listBox .botText {padding: 16px; display: flex; flex-direction: column; gap: 18px; align-items: flex-start;}
.teacherlist .listBox .botText .title { font-size: 22px; height: 52px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.teacherlist .listBox .botText .type {padding: 8px 16px; background: rgba(141, 126, 255, .2); color: var(--mainPurple); border-radius: 26px; font-weight: 600; font-size: 14px;}
.teacherlist .listBox .botText .date {font-size: 14px; font-weight: 600;}
.teacherlist .writeBtn { position: fixed; bottom: 60px; right: 30px;}
.teacherlist .writeBtn button { width: 80px; height: 80px; border-radius: 40px; background: var(--mainPurple); box-shadow: 0 5px 5px rgba(0,0,0,0.1); display: flex; justify-content: center; align-items: center; }
.teacherlist .writeBtn button .icon { width: 30px; height: 30px; background: url(/skin/spec/img/ico_close_white.svg) no-repeat center / contain;  -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }

.cnt-wrap.teacherwrite > .right { padding: 50px 300px; }
.instructor_write .pointColor { color: var(--mainPurple); }
.instructor_write form {display: flex; flex-direction: column; gap: 30px;}
.instructor_write .topText {background: #F6F6F6; padding: 20px; display: flex; flex-direction: column; gap: 10px; align-items: center; text-align: center; font-size: 18px; font-weight: 500; border-radius: 16px;}
.instructor_write .topText .icon {width: 20px; height: 20px; background: url(/skin/spec/img/ico_info_purple.svg) no-repeat center / contain;}
.instructor_write .topText p span {color: rgba(141, 126, 255, .7); font-size: 14px;}
.instructor_write .stateBox {text-align: center; display: flex; flex-direction: column; gap: 20px; font-weight: 500;}
.instructor_write .stateBox .text {display: flex; flex-direction: column; gap: 6px; font-size: 18px; font-weight: 500; }
.instructor_write .stateBox .text p {font-size: 14px;}
.instructor_write .checkBoxWrap {display: flex; gap: 30px;}
.instructor_write .checkBoxWrap li {width: calc(100% / 3 - 7px);}
.instructor_write .checkBoxWrap label {border-radius: 42px; border: 1px solid #ddd; color: #ddd; padding: 20px; display: flex; flex-direction: column; gap: 4px; font-size: 14px; font-weight: 500; transition: .3s ease; }
.instructor_write .checkBoxWrap label strong { font-size: 18px; font-weight: 600; }
.instructor_write .checkBoxWrap input { display: none; }
.instructor_write .checkBoxWrap input:checked + label {background: var(--mainPurple); border-color: var(--mainPurple); color: #fff;}
.instructor_write .tableBox .title { font-size: 18px; font-weight: 700; margin-bottom: 15px;}
.instructor_write .tableBox table.writeTable tr > * { padding: 12px 10px; }
.instructor_write .tableBox .writeTable tr th { width: 140px; font-weight: 500; }

.instructor_write .tableBox01 .writeTable:nth-child(2) {margin-bottom: 15px;}
.instructor_write .tableBox .writeTable tr {position: relative;}
.instructor_write .tableBox .writeTable .smallText {position: absolute; bottom: -22px; left: 0; color: #EC5F5F; font-size: 14px; margin-top: 5px;}
.instructor_write .tableBox .writeTable .emailBox { display: flex; align-items: center; gap: 8px; }
.instructor_write .tableBox .writeTable .emailBox .inputBox { width: calc(50% - 15px); }
.instructor_write .tableBox .writeTable .ncsBox { display: flex; align-items: center; gap: 10px; }
.instructor_write .tableBox .writeTable .ncsBox .itemBox { width: 50%; }
.instructor_write .tableBox .writeTable #get_area_si_div { width: 100%; }
.instructor_write .tableBox .writeTable #get_area_si_div select { cursor: pointer; color: #333; width: 100%; border: 0; padding: 0; box-shadow: none; --bs-form-select-bg-img: none; }

.instructor_write .tableBox .writeTable .genderBox { gap: 16px; }
.instructor_write .tableBox .writeTable .genderBox li { width: 150px; text-align: center; }
.instructor_write .tableBox .writeTable .genderBox li label { font-size: 16px; padding: 12px; }
.instructor_write .tableBox .writeTable .dateBox {display: flex; align-items: center; gap: 8px;}
.instructor_write .tableBox .writeTable .dateBox .inputBox {width: 100%; border-bottom: 1px solid #fff; box-sizing: border-box;}
.instructor_write .tableBox .writeTable .dateBox label {position: relative; width: 100%; }
.instructor_write .tableBox .writeTable .dateBox input {padding: 8px 12px; font-size: 16px; box-sizing: border-box; font-weight: 600;}
.instructor_write .tableBox .writeTable .dateBox .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_schedule_black.svg) no-repeat center / contain; position: absolute; right: 20px; top: 50%; transform: translateY(-50%);}
.instructor_write .fileUpload .fileBox {position: relative;}
.instructor_write .fileUpload .fileBox label {border-radius: 16px; background: var(--mainPurple); color: #fff; display: flex; align-items: center; justify-content: center; gap: 6px; font-size: 16px; font-weight: 600; padding: 14px 20px;}
.instructor_write .fileUpload .fileBox input {position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: 0; cursor: pointer;}
.instructor_write .fileUpload .fileBox label .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_file_white.svg) no-repeat center / contain;}
.instructor_write .fileUpload .fileBox label span {max-width: 75%; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.instructor_write .fileUpload .echofileBox { margin-top: 8px; display: flex; justify-content: space-between; align-items: center; position: relative;  }
.instructor_write .fileUpload .echofileBox label { font-size: 14px; font-weight: 500; padding: 4px 8px; color: var(--mainRed); border: 1px solid var(--mainRed); border-radius: 10px; background: #fff; }
.instructor_write .fileUpload .echofileBox input { position: relative; width: 14px; height: 14px; border-radius: 4px; background: #fff; opacity: 1; }
.instructor_write .fileUpload .echofileBox input:checked:after { content: ''; position: absolute; width: 6px; height: 8px; left: 0; top: -2px; border-width: 0 2px 2px 0; border-color: var(--mainRed); border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }

.instructor_write .fileUpload p {text-align: center; margin-bottom: 4px; color: #ec5f5f; font-size: 14px;}
.instructor_write .botButton { width: 100%; box-sizing: border-box; padding-top: 20px;}

.instructor_write .botButton .writeBtn { width: 100%; font-size: 18px; font-weight: 500; padding: 16px; border-radius: 16px; color: #fff; background: var(--mainPurple); margin-top: 40px; }
.instructor_write .textareaBox textarea { margin-top: 20px; width: 100%; height: 310px; padding: 16px; border: 1px solid #ddd; border-radius: 16px; transition: .3s ease; }
.instructor_write .textareaBox textarea:focus {border-color: var(--mainPurple);}


/* 탭 - type1 input [type=radio] */
.tabWrap.type1 .tabGroup {display: flex; gap: 12px; align-items: center; overflow-x: auto;}
.tabWrap.type1 .tabGroup::-webkit-scrollbar {height: 3.5px;}
.tabWrap.type1 .tabGroup input[type="radio"] { display: none; }
.tabWrap.type1 .tabGroup label {white-space: nowrap; font-size: 14px; font-weight: 600; transition: .5s ease;}
.tabWrap.type1 .tabGroup input:checked+ label {padding: 4px 14px; border-radius: 24px; background: var(--black); color: #fff; font-size: 16px;}

.nice-select ul { overflow-y: auto !important; max-height: 300px; }

/* faq */
.cnt-wrap.faq > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.faq .searchWrap { display: flex; align-items: center; gap: 26px; margin-bottom: 20px; }
.faq .botButton { margin-top: 26px; text-align: center; }
.faq .botButton .clickBtn { width: 530px; background: url(/skin/spec/img/ico_search_white.svg) no-repeat 5% 50%; background-color: var(--mainPurple); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.faq .faqBox { width: 100%; border-bottom: 1px solid #eee; margin-top: 60px; height: 45px; position: relative; margin-bottom: 20px; }
.faq .faqBox ul { position: absolute; bottom: -1px; left: 0; z-index: 1; display: flex;}
.faq .faqBox li a.active { border: 1px solid #eee; border-radius: 16px 16px 0 0; border-bottom: 1px solid #fff; opacity: 1; }
.faq .faqBox li a { font-size: 20px; font-weight: 600; padding: 12px 20px 8px; opacity: 0.4;}
.faq .pointColor { font-size: 20px; font-weight: 700; color: var(--mainPurple); padding-right: 10px; }
.faq .accordion-button:focus { box-shadow: none; }
.faq .accordion-button:not(.collapsed) { color: #000; background-color: transparent; box-shadow: none; }
.faq .accordion-button { font-size: 18px; }
.faq .accordion-item { border-color: #eee; }
.faq .accordion-body { line-height: 1.4; margin: 0 50px 30px 50px; padding: 30px; border-radius: 16px; background: #f6f6f6; }
.faq .btmButton { margin-top: 30px; text-align: right; }
.faq .btmButton .writeBtn { padding: 14px 36px; font-size: 1rem; font-weight: 500; border-radius: 16px; background: var(--mainPurple); color: #fff; }

/* sweet-alert */
.sweet-alert { font-family: 'pretendard', sans-serif; border-radius: 1.8em; }
.sweet-alert h2 { color: #333; margin: 12px 0; }
.sweet-alert p { color: #666; }
.sweet-alert button { font-size: 16px; background: var(--mainPurple) !important; border-radius: 40px; margin: 20px 5px 0 5px; padding: 13px 64px; }
.sweet-alert button.cancel { background: transparent !important; color: var(--mainPurple); border: 1px solid var(--mainPurple); }

/* input date 달력 css */
table.ui-datepicker-calendar tr:first-child > * {border-top: none;}
.ui-datepicker { width: auto; }
.ui-datepicker select.ui-datepicker-year, .ui-datepicker select.ui-datepicker-month { width: auto; }
.ui-state-default, .ui-widget-content .ui-state-default { border: 0; background: transparent; }
.ui-state-highlight, .ui-widget-content .ui-state-highlight { border: 0; background: #f2f2f2; border-radius: 10px; color: #454545; }
.ui-state-active, .ui-widget-content .ui-state-active { border: 0; background: #1a1a1a; border-radius: 10px; color: #fff; }
.ui-widget-header .ui-icon { background: url(/skin/spec/img/ico_page_prev.svg) no-repeat center / contain; }
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { width: 28px; height: 28px; left: 0; top: 0; margin-left: 0; margin-top: 0; }


/* 국비서치 */
.cnt-wrap.gbsearch > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.gbsearch .searchWrap { display: flex; align-items: center; gap: 26px; margin-bottom: 20px; }
.gbsearch .searchWrap .searchInputBox { display: flex; gap: 32px; width: calc(100% - 28px); }
.gbsearch .searchWrap .searchInputBox > div { display: flex; align-items: center; gap: 18px; }
.gbsearch .searchWrap .searchInputBox .src1 { width: 25%; }
.gbsearch .searchWrap .searchInputBox .src1 .selectBox { width: 50%; }
.gbsearch .searchWrap .searchInputBox .src1 select { width: 100%; height: 60px; display: flex; align-items: center; color: #333;  border: 1px solid #ddd; border-radius: 30px; cursor: pointer; }
.gbsearch .searchWrap .searchInputBox .src2 { width: 30%; }
.gbsearch .searchWrap .searchInputBox .src2 .selectBox { width: 100%; }
.gbsearch .searchWrap .searchInputBox .src2 select { width: 100%; height: 60px; display: flex; align-items: center; color: #333;  border: 1px solid #ddd; border-radius: 30px; cursor: pointer; }
.gbsearch .searchWrap .searchInputBox .src2 label { flex-shrink: 0; }
.gbsearch .searchWrap .searchInputBox .src2 .nice-select { display: flex; align-items: center; color: #333; height: 60px; border: 1px solid #ddd; border-radius: 30px; padding: 0 20px; }
.gbsearch .searchWrap .searchInputBox .src2 .nice-select:after { width: 12px; height: 12px; margin-top: -9px; border-bottom: 2px solid #333; border-right: 2px solid #333; right: 20px; }
.gbsearch .searchWrap .searchInputBox .src3 { width: 45%; }
.gbsearch .botButton { margin-top: 26px; text-align: center; }
.gbsearch .botButton .clickBtn { width: 530px; background: url(/skin/spec/img/ico_search_white.svg) no-repeat 5% 50%; background-color: var(--mainPurple); border-radius: 30px; padding: 15px 20px; box-sizing: border-box; font-size: 18px; color: #fff; }
.gbsearch .gbNav { width: 100%; border-bottom: 1px solid #eee; height: 45px; position: relative; margin-top: 60px; }
.gbsearch .gbNav .box { position: absolute; bottom: -1px; left: 0; z-index: 1; display: flex;}
.gbsearch .gbNav button.active { border: 1px solid #eee; border-radius: 16px 16px 0 0; border-bottom: 1px solid #fff; opacity: 1; }
.gbsearch .gbNav button { font-size: 20px; font-weight: 600; padding: 12px 20px 8px; opacity: 0.4;}
.gbsearch .searchWrapBetween { margin-top: 26px; }

.gbsearch .listWrap { display: flex; flex-wrap: wrap; gap: 40px; }
.gbsearch .listWrap > li { width: 375px; border: 1px solid #ddd; border-radius: 16px; }
.gbsearch .listWrap li a { display: block; width: 100%; }
.gbsearch .listWrap li .top { padding: 20px 24px; border-bottom: 1px solid #eee; display: flex; flex-direction: column; gap: 8px; }
.gbsearch .listWrap li .top .logo { width: 100%; height: 66px; display: flex; justify-content: center; align-items: center; overflow: hidden; }
.gbsearch .listWrap li .top .logo img { max-height: 100%; }
.gbsearch .listWrap li .top .title { font-size: 1.375rem; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gbsearch .listWrap li .top .text { font-size: 0.875rem; color: #999; }
.gbsearch .listWrap.agency li .top { text-align: center; }
.gbsearch .listWrap.agency li .top .text { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gbsearch .listWrap.teacher li .top { gap: 14px; }
.gbsearch .listWrap.teacher li .top .text { font-size: 1rem; color: #333; height: 38px; }
.gbsearch .listWrap.teacher li .topBox { display: flex; align-items: center; gap: 20px; }
.gbsearch .listWrap.teacher li .topBox .img { overflow: hidden; width: 60px; height: 60px; border-radius: 50%; background: #eee; }
.gbsearch .listWrap.teacher li .topBox .textBox { display: flex; flex-direction: column; gap: 6px; }
.gbsearch .listWrap.teacher li .topBox .textBox .name { font-size: 1.125rem; font-weight: 600; }
.gbsearch .listWrap.teacher li .topBox .textBox .name span { font-size: 1.375rem; }
.gbsearch .listWrap.teacher li .topBox .textBox .major { color: #666; }

.gbsearch .listWrap li .bot { padding: 20px 24px 24px; display: flex; align-content: flex-start; gap: 40px; }
.gbsearch .listWrap li .bot .leftBox { width: 50%; }
.gbsearch .listWrap li .bot .leftBox .title { font-size: 1rem; font-weight: 500; color: var(--mainPurple); text-align: center; margin-bottom: 14px; padding: 6px; border-radius: 20px; background: rgba(141, 126, 255, .2); }
.gbsearch .listWrap li .bot .leftBox ul { display: flex; flex-direction: column; gap: 10px; padding: 0 10px; }
.gbsearch .listWrap li .bot .leftBox ul li { display: flex; justify-content: space-between; }
.gbsearch .listWrap li .bot .leftBox ul li.accent p { font-weight: 600; }
.gbsearch .listWrap li .bot .leftBox ul li.accent .pp { color: var(--mainPurple);}
.gbsearch .listWrap li .bot .rightBox { width: 50%; }
.gbsearch .listWrap li .bot .rightBox .title { font-size: 1rem; font-weight: 500; color: var(--mainGreen); text-align: center; margin-bottom: 14px; padding: 6px; border-radius: 20px; background: rgba(138, 192, 56, .2); }
.gbsearch .listWrap li .bot .rightBox ul { display: flex; flex-direction: column; gap: 10px; padding: 0 10px; }
.gbsearch .listWrap li .bot .rightBox ul li { display: flex; justify-content: space-between; }
.gbsearch .listWrap li .bot .rightBox ul li.accent p { font-weight: 600; }
.gbsearch .listWrap li .bot .rightBox ul li.accent .pp { color: var(--mainGreen);}

/* 국비서치 - 훈련기관 */
.cnt-wrap.gb-agency > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.gb-agency .gbNav { width: 100%; border-bottom: 1px solid #eee; height: 45px; position: relative; margin-top: 30px; margin-bottom: 28px; }
.gb-agency .gbNav .box { position: absolute; bottom: -1px; left: 0; z-index: 1; display: flex;}
.gb-agency .gbNav button.active { border: 1px solid #eee; border-radius: 16px 16px 0 0; border-bottom: 1px solid #fff; opacity: 1; }
.gb-agency .gbNav button { font-size: 20px; font-weight: 600; padding: 12px 20px 8px; opacity: 0.4;}
.gb-agency .topWrap { display: flex; justify-content: space-between; align-items: flex-start; }
.gb-agency .topWrap .leftBox { display: flex; align-items: flex-start; gap: 30px; }
.gb-agency .topWrap .leftBox .logo { flex-shrink: 0; overflow: hidden; padding: 10px; width: 400px; height: 160px; border: 1px solid #eee; border-radius: 16px; display: flex; justify-content: center; align-items: center; }
.gb-agency .topWrap .leftBox .textBox { padding-top: 14px; display: flex; flex-direction: column; gap: 10px; }
.gb-agency .topWrap .leftBox .textBox .top { width: 590px; display: flex; justify-content: space-between; align-items: flex-start; }
.gb-agency .topWrap .leftBox .textBox .top .name { font-size: 1.375rem; font-weight: 600; }
.gb-agency .topWrap .leftBox .textBox .top .certi { font-size: 0.938rem; display: flex; align-items: center; gap: 6px; color: var(--mainGreen); }
.gb-agency .topWrap .leftBox .textBox .top .certi .icon { width: 16px; height: 16px; background: url(/skin/spec/img/ico_complete_green.svg) no-repeat center / contain; }
.gb-agency .topWrap .leftBox .textBox .adress { font-size: 0.938rem; color: #999; }
.gb-agency .topWrap .leftBox .textBox .text { width: 600px; margin-top: 6px; padding-top: 10px; font-size: 1rem; line-height: 1.375rem; border-top: 1px solid #ddd; }
.gb-agency .topWrap .rightBox { width: 340px; height: 160px; border-radius: 16px; background: #fffcf1; display: flex; justify-content: center; align-items: center; flex-direction: column; gap: 3px; }
.gb-agency .topWrap .rightBox .title { font-size: 1.125rem; font-weight: 500; padding-bottom: 10px; margin-top: -5px; }
.gb-agency .topWrap .rightBox .count { font-size: 2rem; font-weight: 600; color: #ffa700; }
.gb-agency .topWrap .rightBox .starBox .star li { display: flex; gap: 2px; }
.gb-agency .topWrap .rightBox .starBox .star li img { width: 32px; }

.gb-agency .gbtSecList { display: flex; flex-direction: column; gap: 50px; }
.gb-agency .gbt.secWrap { display: flex; gap: 80px; }
.gb-agency .gbt.secWrap .secBox { width: 50%; }
.gb-agency .gbt .titleWrap { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.gb-agency .gbt .titleWrap .title { font-size: 1.25rem; font-weight: 600; }
.gb-agency .gbt .titleWrap .title span { font-size: 1rem; font-weight: 400; }
.gb-agency .gbt .titleWrap .bgBtn { padding: 10px 28px; font-weight: 500; color: #fff; border-radius: 30px; background: var(--mainPurple); }

.gb-agency .sec01 .photoSwiper { display: flex; flex-direction: column; gap: 20px; }
.gb-agency .sec01 .photoSwiper .swiper-slide { border-radius: 16px; background: #eee; width: 400px; height: 220px; overflow: hidden; }
.gb-agency .sec01 .photoSwiper .swiper-slide .img { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; cursor: pointer; }
.gb-agency .sec01 .swiper-pagination { position: static; }
.gb-agency .sec01 .swiper-pagination-bullet { background: var(--mainPurple); width: 12px; height: 12px; border-radius: 14px; transition: .5s ease; }
.gb-agency .sec01 .swiper-pagination-bullet-active { width: 36px; }
.gb-agency .sec02 .swiper-arrow-wrap { position: relative; }
.gb-agency .sec02 .videoSwiper .swiper-slide { border-radius: 16px; background: #eee; width: 500px; height: 280px; overflow: hidden; }
.gb-agency .sec02 .videoSwiper .swiper-slide .videoBox { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; }
.gb-agency .sec02 .swiper-button-next { right: -40px; color: #999; }
.gb-agency .sec02 .swiper-button-prev { left: -40px; color: #999; }
.gb-agency .sec03 .jangdanWrap { padding: 26px; border: 1px solid #ddd; border-radius: 16px; position: relative; }
.gb-agency .sec03 .jangdanWrap .loginNo { position: absolute; bottom: 26px; display: flex; justify-content: center; align-items: center; width: calc(100% - 52px); height: 200px; border-radius: 16px; background: rgba(195, 187, 255, .9); }
.gb-agency .sec03 .jangdanWrap .loginNo p { font-size: 1.125rem; font-weight: 400; color: #fff; }
.gb-agency .sec03 .jangdanWrap .jangdanBox { display: flex; align-items: center; gap: 10px; }
.gb-agency .sec03 .jangdanWrap .jangdanBox li { width: 50%; display: flex; flex-direction: column; gap: 20px; }
.gb-agency .sec03 .jangdanWrap .jangdanBox li .kwdBox { height: 200px; display: flex; justify-content: center; align-items: center; }
.gb-agency .sec03 .jangdanWrap .jangdanBox .jangBox p { font-size: 1.5rem; font-weight: 600; color: var(--mainPurple); text-align: center; }
.gb-agency .sec03 .jangdanWrap .jangdanBox .danBox p { font-size: 1.5rem; font-weight: 600; color: var(--mainRed); text-align: center; }
.gb-agency .sec03 .aiReviewWrap { height: 303px; padding: 24px; border: 1px solid #ddd; border-radius: 16px; display: flex; flex-direction: column; gap: 30px; }
.gb-agency .sec03 .aiReviewWrap .aiBox ul { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; }
.gb-agency .sec03 .aiReviewWrap .aiBox ul li { font-weight: 600; cursor: pointer; }
.gb-agency .sec03 .aiReviewWrap .aiBox ul li.active { padding: 8px 16px; font-weight: 500; color: #fff; border-radius: 30px; background: #333; }
.gb-agency .sec03 .aiReviewWrap .aiBox .textBox { overflow: hidden; height: 130px; padding: 16px; border: 1px solid #eee; border-radius: 16px; display: flex; flex-direction: column; justify-content: space-between; }
.gb-agency .sec03 .aiReviewWrap .aiBox .textBox p { font-size: 1rem; line-height: 1.375rem; word-break: break-all; }
.gb-agency .sec03 .aiReviewWrap .aiBox .textBox .tag { gap: 6px; margin-bottom: 0; }
.gb-agency .sec03 .aiReviewWrap .aiBox .textBox .tag li { font-size: 1rem; font-weight: 500; color: var(--mainPurple); }
.gb-agency .sec03 .aiReviewWrap .bgBtn { padding: 14px; font-weight: 500; color: #fff; border-radius: 30px; background: var(--mainPurple); }
.gb-agency .sec04 .potSwiper { display: flex; flex-direction: column; gap: 20px; width: 770px; }
.gb-agency .sec04 .potSwiper .swiper-slide { display: flex; flex-direction: column; }
.gb-agency .sec04 .potSwiper .swiper-slide .imgBox { height: 190px; border-radius: 16px 16px 0 0; background: #eee; overflow: hidden; }
.gb-agency .sec04 .potSwiper .swiper-slide .textBox { border: 1px solid #ddd; border-top: 0; border-radius: 0 0 16px 16px; padding: 16px; }
.gb-agency .sec04 .potSwiper .swiper-slide .textBox .title { margin-bottom: 8px; font-size: 1.125rem; font-weight: 600; height: 42px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.gb-agency .sec04 .potSwiper .swiper-slide .textBox .hash { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.gb-agency .sec04 .potSwiper .swiper-slide .textBox .hash li { font-size: 0.875rem; color: #999; }
.gb-agency .sec04 .swiper-pagination { position: static; }
.gb-agency .sec04 .swiper-pagination-bullet { background: var(--mainPurple); width: 12px; height: 12px; border-radius: 14px; transition: .5s ease; }
.gb-agency .sec04 .swiper-pagination-bullet-active { width: 36px; }
.gb-agency .sec04 .blogWrap { display: flex; flex-direction: column; gap: 10px; }
.gb-agency .sec04 .blogWrap li a { display: flex; align-items: center; border: 1px solid #ddd; border-radius: 16px; overflow: hidden; }
.gb-agency .sec04 .blogWrap li a .imgBox { width: 180px; height: 100px; background: #eee; overflow: hidden; flex-shrink: 0; }
.gb-agency .sec04 .blogWrap li a .textBox { display: flex; flex-direction: column; gap: 16px; padding: 12px 16px; }
.gb-agency .sec04 .blogWrap li a .title { font-size: 1.125rem; font-weight: 600; }
.gb-agency .sec04 .blogWrap li a .text { font-size: 0.938rem; color: #999; }
.gb-agency .sec05 .listWrap { display: flex; flex-wrap: wrap; gap: 20px; }
.gb-agency .sec05 .listWrap > li { width: calc(50% - 10px); padding: 20px 24px; border: 1px solid #ddd; border-radius: 16px; display: flex; gap: 40px; }
.gb-agency .sec05 .listWrap li .name { flex-shrink: 0; font-size: 1.125rem; font-weight: 500; }
.gb-agency .sec05 .listWrap li .textBox { display: flex; flex-direction: column; gap: 14px; }
.gb-agency .sec05 .listWrap li .textBox li { display: flex; align-items: flex-start; gap: 10px; }
.gb-agency .sec05 .listWrap li .textBox .jang .left { color: var(--mainPurple); background: rgba(141, 126, 255, .2); }
.gb-agency .sec05 .listWrap li .textBox .dan .left { color: var(--mainRed); background: rgba(236, 95, 95, .2); }
.gb-agency .sec05 .listWrap li .textBox .left { font-weight: 600; padding: 6px 18px; border-radius: 40px; }
.gb-agency .sec05 .listWrap li .textBox .text { padding-top: 4px; line-height: 1.375rem; }

.gba_jangdan_modal { }
.gba_jangdan_modal .fileUpload .fileBox {position: relative;}
.gba_jangdan_modal .fileUpload .fileBox label {border-radius: 26px; background: var(--mainPurple); color: #fff; display: flex; align-items: center; justify-content: center; gap: 6px; font-size: 16px; font-weight: 600; padding: 16px;}
.gba_jangdan_modal .fileUpload .fileBox input {position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: 0; cursor: pointer;}
.gba_jangdan_modal .fileUpload .fileBox label .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_file_white.svg) no-repeat center / contain;}
.gba_jangdan_modal .fileUpload .fileBox label span {max-width: 75%; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.gba_jangdan_modal .textWrap { display: flex; flex-direction: column; gap: 30px; }
.gba_jangdan_modal .textWrap .topBox p { font-weight: 500; margin-bottom: 8px; padding-top: 10px; }
.gba_jangdan_modal .textWrap .topBox textarea { width: 100%; padding: 16px; border: 1px solid #eee; border-radius: 16px; resize: none; }
.gba_jangdan_modal .textWrap .botBox { padding-bottom: 60px; }
.gba_jangdan_modal .textWrap .botBox p { font-weight: 500; margin-bottom: 8px; }
.gba_jangdan_modal .textWrap .botBox span { font-size: 0.875rem; }
.gba_jangdan_modal .bgBtn { width: 100%; padding: 16px; font-weight: 500; color: #fff; border-radius: 30px; background: var(--mainPurple); }


.gb-agency .listWrap02 { display: flex; flex-wrap: wrap; gap: 30px; }
.gb-agency .listWrap02 > li { width: 520px; padding: 20px; border: 1px solid #ddd; border-radius: 16px; position: relative; }
.gb-agency .listWrap02 li .heartBtn { position: absolute; bottom: 20px; right: 20px; z-index: 1; }
.gb-agency .listWrap02 li .boxWrap { display: flex; align-items: flex-start; gap: 20px; }
.gb-agency .listWrap02 li .boxWrap .leftBox { }
.gb-agency .listWrap02 li .boxWrap .leftBox .title { font-size: 1.25rem; font-weight: 600; height: 48px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.gb-agency .listWrap02 li .boxWrap .leftBox .price { margin-top: 20px; font-size: 1.375rem; color: var(--mainPurple); }
.gb-agency .listWrap02 li .boxWrap .leftBox .date { margin-top: 8px; display: flex; align-items: center; gap: 6px; }
.gb-agency .listWrap02 li .boxWrap .btnBox { display: flex; flex-direction: column; gap: 6px; }
.gb-agency .listWrap02 li .boxWrap .btnBox .bgBtn { padding: 8px 16px; color: #fff; border-radius: 30px; background: var(--mainPurple); }
.gb-agency .listWrap02 li .boxWrap .btnBox .bgBtn:disabled { opacity: .4; cursor: Default; }
.gb-agency .listWrap02 li .boxWrap .btnBox .lineBtn { padding: 8px 16px; color: var(--mainPurple); border: 1px solid var(--mainPurple); border-radius: 30px; box-sizing: border-box; }
.gb-agency .listWrap03 { display: flex; flex-wrap: wrap; gap: 24px; }
.gb-agency .listWrap03 > li { width: 387px; padding: 24px 26px; border: 1px solid #ddd; border-radius: 16px; display: flex; flex-direction: column; gap: 16px; }
.gb-agency .listWrap03 .topBox { display: flex; align-items: center; gap: 24px; }
.gb-agency .listWrap03 .topBox .img { flex-shrink: 0; overflow: hidden; width: 60px; height: 60px; border-radius: 50%; background: #eee; }
.gb-agency .listWrap03 .topBox .textBox { display: flex; flex-direction: column; gap: 8px; }
.gb-agency .listWrap03 .topBox .textBox .name { font-weight: 500; }
.gb-agency .listWrap03 .topBox .textBox .name span { font-size: 1.375rem; font-weight: 600; padding-right: 4px; }
.gb-agency .listWrap03 .topBox .textBox .major { color: #666; }
.gb-agency .listWrap03 .text { padding: 0 6px; }
.gb-agency .listWrap04 { display: flex; flex-wrap: wrap; gap: 24px; }
.gb-agency .listWrap04 > li { width: 387px; padding: 20px 24px; border: 1px solid #ddd; border-radius: 16px; }
.gb-agency .listWrap04 li .title { font-size: 1.25rem; font-weight: 600; height: 48px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.gb-agency .listWrap04 li .date { margin-top: 10px; font-size: 1rem; color: #666; }
.gb-agency .listWrap04 li .date span { padding-left: 6px; color: var(--mainPurple); }
.gb-agency .listWrap04 li .bot { margin-top: 26px; display: flex; justify-content: space-between; align-items: center; }
.gb-agency .listWrap04 li .bot .leftBox { display: flex; flex-direction: column; gap: 5px; }
.gb-agency .listWrap04 li .bot .leftBox li { width: 100px; display: flex; justify-content: space-between; align-items: center; }
.gb-agency .listWrap04 li .bot .leftBox li p { font-weight: 500; }
.gb-agency .listWrap04 li .bot .leftBox li p span { font-size: 1.25rem; font-weight: 600; }
.gb-agency .listWrap04 li .bot .leftBox li p span.color { color: var(--mainPurple); }
.gb-agency .listWrap04 li .bot .clickBtn { padding: 12px 28px; font-weight: 500; color: #fff; border-radius: 30px; background: var(--mainPurple); }


/* 국비서치 - 강사 */
.cnt-wrap.gb-teacher > .right { width: 100%; padding: 0; padding-top: 46px; padding-bottom: 80px; }
.gb-teacher .gbNav { width: 100%; border-bottom: 1px solid #eee; height: 45px; position: relative; margin-top: 30px; margin-bottom: 28px; }
.gb-teacher .gbNav .box { position: absolute; bottom: -1px; left: 0; z-index: 1; display: flex;}
.gb-teacher .gbNav button.active { border: 1px solid #eee; border-radius: 16px 16px 0 0; border-bottom: 1px solid #fff; opacity: 1; }
.gb-teacher .gbNav button { font-size: 20px; font-weight: 600; padding: 12px 20px 8px; opacity: 0.4;}
.gb-teacher .topWrap { display: flex; justify-content: space-between; }
.gb-teacher .topWrap .leftBox { width: 900px; padding-top: 20px; display: flex; align-items: flex-start; gap: 30px; }
.gb-teacher .topWrap .leftBox .img { flex-shrink: 0; overflow: hidden; width: 140px; height: 140px; border-radius: 50%; background: #eee; }
.gb-teacher .topWrap .leftBox .textBox { display: flex; flex-direction: column; gap: 6px; padding-top: 30px; }
.gb-teacher .topWrap .leftBox .textBox .name { font-size: 1.25rem; font-weight: 600; }
.gb-teacher .topWrap .leftBox .textBox .name span { font-size: 1.75rem; }
.gb-teacher .topWrap .leftBox .textBox .major { font-size: 1.125rem; color: #666; }
.gb-teacher .topWrap .leftBox .textBox .edu { margin-top: 8px; color: #999; }
.gb-teacher .topWrap .leftBox .textBox .text { margin-top: 12px; padding-top: 12px; width: 500px; font-size: 1.125rem; line-height: 1.5rem; border-top: 1px solid #ddd; }
.gb-teacher .topWrap .centerBox .title { font-size: 1.25rem; font-weight: 600; margin-bottom: 12px; }
.gb-teacher .topWrap .centerBox ul { display: flex; flex-direction: column; gap: 20px; padding: 40px; border-radius: 16px; background: rgba(138, 192, 56, .1); }
.gb-teacher .topWrap .centerBox ul li { width: 150px; font-size: 1.125rem; font-weight: 500; display: flex; justify-content: space-between; }
.gb-teacher .topWrap .centerBox ul li.accent p { font-weight: 700; }
.gb-teacher .topWrap .centerBox ul li.accent .pp { color: var(--mainGreen); }
.gb-teacher .topWrap .rightBox { width: 400px; }
.gb-teacher .topWrap .rightBox .title { font-size: 1.25rem; font-weight: 700; margin-bottom: 12px; }
.gb-teacher .topWrap .rightBox .view { width: 400px; height: 225px; border-radius: 16px; background: #eee; }

.gb-teacher .listWrap01 { display: flex; flex-wrap: wrap; gap: 24px; }
.gb-teacher .listWrap01 > li { width: 387px; padding: 20px 24px; border: 1px solid #ddd; border-radius: 16px; }
.gb-teacher .listWrap01 li .title { font-size: 1.25rem; font-weight: 600; height: 48px; overflow: hidden; word-break: break-all; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.gb-teacher .listWrap01 li .date { margin-top: 10px; font-size: 1rem; color: #666; }
.gb-teacher .listWrap01 li .bot { margin-top: 26px; display: flex; justify-content: space-between; align-items: center; }
.gb-teacher .listWrap01 li .bot .leftBox { display: flex; flex-direction: column; gap: 5px; }
.gb-teacher .listWrap01 li .bot .leftBox li { width: 100px; display: flex; justify-content: space-between; align-items: center; }
.gb-teacher .listWrap01 li .bot .leftBox li p { font-weight: 500; }
.gb-teacher .listWrap01 li .bot .leftBox li p span { font-size: 1.25rem; font-weight: 600; }
.gb-teacher .listWrap01 li .bot .leftBox li p span.color { color: var(--mainPurple); }
.gb-teacher .listWrap01 li .bot .clickBtn { padding: 12px 28px; font-weight: 500; color: #fff; border-radius: 30px; background: var(--mainPurple); }

.gb-teacher .tkTop { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; }
.gb-teacher .tkTop p { font-size: 1.385rem; font-weight: 700; }
.gb-teacher .tkTop .clickBtn { padding: 10px 28px; font-weight: 500; color: #fff; border-radius: 30px; background: var(--mainPurple); }
.gb-teacher .listWrap03 { display: flex; flex-wrap: wrap; gap: 20px; }
.gb-teacher .listWrap03 > li { width: calc(50% - 10px); padding: 20px 24px; border: 1px solid #ddd; border-radius: 16px; display: flex; gap: 60px; }
.gb-teacher .listWrap03 li .name { flex-shrink: 0; font-size: 1.125rem; font-weight: 500; }
.gb-teacher .listWrap03 li .text { line-height: 1.375rem; }

.hugi_modal .textWrap .scrollBox { overflow-y: auto; max-height: 50vh; }
.hugi_modal .textWrap .scrollBox::-webkit-scrollbar { width: 5px; }
.hugi_modal .textWrap .scrollBox::-webkit-scrollbar-thumb { background-color: var(--mainPurple); border-radius: 10px; }
.hugi_modal .textWrap .scrollBox::-webkit-scrollbar-track { background-color: #f6f6f6; border-radius: 10px; }
.hugi_modal .textWrap .scrollBox .topBox { padding: 14px; border-radius: 16px; background: #f5f5f5; }
.hugi_modal .textWrap .scrollBox .topBox .title { font-size: 1.125rem; font-weight: 600; }
.hugi_modal .textWrap .scrollBox .topBox .bot { margin-top: 10px; font-size: 0.938rem; display: flex; align-items: center; gap: 14px; }
.hugi_modal .textWrap .scrollBox .listWrap { margin-top: 10px; display: flex; flex-direction: column; gap: 12px; }
.hugi_modal .textWrap .scrollBox .listWrap li { display: flex; align-items: flex-start; gap: 20px; border-top: 1px solid #eee; padding-top: 12px; }
.hugi_modal .textWrap .scrollBox .listWrap li:first-child { border-top: 0; }
.hugi_modal .textWrap .scrollBox .listWrap li .hugi { font-weight: 600; padding: 8px 18px; color: var(--mainPurple); border-radius: 40px; background: rgba(141, 126, 255, .2); }
.hugi_modal .textWrap .scrollBox .listWrap li .hugi.green { color: var(--mainGreen); background: rgba(138, 192, 56, .2); }
.hugi_modal .textWrap .scrollBox .listWrap li .hugi.red { color: var(--mainRed); background: rgba(236, 95, 95, .2); }
.hugi_modal .textWrap .scrollBox .listWrap li .hugi.gray { color: #666; background: rgba(0, 0, 0, .1); }
.hugi_modal .textWrap .scrollBox .listWrap li .text { }

.gb_tk_modal .fileUpload .fileBox {position: relative;}
.gb_tk_modal .fileUpload .fileBox label {border-radius: 26px; background: var(--mainPurple); color: #fff; display: flex; align-items: center; justify-content: center; gap: 6px; font-size: 16px; font-weight: 600; padding: 16px;}
.gb_tk_modal .fileUpload .fileBox input {position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: 0; cursor: pointer;}
.gb_tk_modal .fileUpload .fileBox label .icon {width: 16px; height: 16px; background: url(/skin/spec/img/ico_file_white.svg) no-repeat center / contain;}
.gb_tk_modal .fileUpload .fileBox label span {max-width: 75%; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.gb_tk_modal .textWrap { display: flex; flex-direction: column; gap: 30px; }
.gb_tk_modal .textWrap .topBox p { font-weight: 500; margin-bottom: 8px; padding-top: 10px; }
.gb_tk_modal .textWrap .topBox textarea { width: 100%; padding: 16px; border: 1px solid #eee; border-radius: 16px; resize: none; }
.gb_tk_modal .textWrap .botBox { padding-bottom: 60px; }
.gb_tk_modal .textWrap .botBox p { font-weight: 500; margin-bottom: 8px; }
.gb_tk_modal .textWrap .botBox span { font-size: 0.875rem; }
.gb_tk_modal .bgBtn { width: 100%; padding: 16px; font-weight: 500; color: #fff; border-radius: 30px; background: var(--mainPurple); }


/* sns 공유하기 */
.share_modal .textWrap { display: flex; justify-content: center; align-items: center; gap: 20px; padding: 20px !important; }
.share_modal .textWrap img { width: 70px; height: 70px; border-radius: 50%; cursor: pointer; }


/*리뷰 수정*/
.review_modal .textWrap form {display: flex; flex-direction: column; gap: 12px; }
.review_modal .textWrap .title { text-align: center; font-size: 1rem; font-weight: 600; }
.review_modal .textWrap .star-box { text-align: center; background: #f1f1f1; border-radius: 16px; padding: 16px; color: var(--mainPurple); }
.review_modal .textWrap .star-box p { font-size: 0.875rem; margin-bottom: 10px; color: #333; }
.review_modal .textWrap textarea { border-radius: 16px; }
.review_modal .textWrap .btnBox {display: flex; justify-content: center; gap: 8px; margin-top: 20px; }
.review_modal .textWrap .btnBox button {width: 50%; box-sizing: border-box; padding: 14px 20px; border-radius: 16px; font-size: 16px; font-weight: 500; text-align: center; }
.review_modal .textWrap .btnBox button.cancle { background: #fff; border: 1px solid #999; color: #999; }
.review_modal .textWrap .btnBox button.save { background: var(--mainPurple); color: #fff; }

/*블라인드 신고*/
.board_block_modal .titleWrap { color: var(--black); }
.board_block_modal textarea { width: calc(100% - 0px); padding: 16px; border: 1px solid #ddd; border-radius: 16px; font-size: 1rem; }

.pointColorBg {background: var(--mainRed);}
.pointColorBg.writeBtn {width: 100%; height: 47px; border-radius: 16px; color: #fff; font-size: 16px; position: relative; z-index: 2;}

#captcha #captcha_key { color: #333; }