@charset "UTF-8";
/* =======================
   1. Reset & 변수 정의
========================== */
/* 🧩 Variables 
색상,폰트,간격 변수화
*/
body {
  box-sizing: border-box;
}

.h1 {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.5;
}

.h2 {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.5;
}

.h3 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
}

.subtitle1 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
}

.subtitle2 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
}

.subtitle3 {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}

.subtitle4 {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}

.body1 {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}

.body2 {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
}

.caption1 {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
}

.caption2 {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  color: #999999;
}

/* 🧹 Reset */
*::-webkit-scrollbar {
  width: 12px;
  height: 12px;
}

*::-webkit-scrollbar-track {
  background: #dddddd;
}

*::-webkit-scrollbar-thumb {
  background: #525252;
  border: 3px solid #dddddd;
  border-radius: 10px;
}

*::-webkit-scrollbar-thumb:hover {
  border-width: 0px;
}

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
figure,
dl,
dd {
  margin: 0;
}

ul,
ol {
  padding: 0;
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
}

button {
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
}

input,
button,
textarea,
select {
  font: inherit;
  color: inherit;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* 📚 Typography */
body {
  font-family: "Pretendard", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 400;
  color: #191919;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  line-height: 1.3;
}

strong {
  font-weight: 700;
}

small {
  font-size: 0.875em;
}

blockquote {
  margin-left: 0;
  padding-left: 1rem;
  border-left: 4px solid #f1f4fd;
  color: #191919;
  font-style: italic;
}

._inBlock {
  display: inline-block;
}

._flex {
  display: flex;
}

._poRe {
  position: relative;
}

._poAb {
  position: absolute;
}

._poFx {
  position: fixed;
}

._flL {
  float: left !important;
}

._flR {
  float: right !important;
}

._clearFix {
  clear: both !important;
}

._cleFx::after {
  display: block;
  content: "";
  clear: both;
}

._bold {
  font-weight: bold;
}

._hide {
  display: none !important;
}

/* =======================
   2. 유틸리티
========================== */
.u-m-0 {
  margin: 0;
}

.u-mt-0 {
  margin-top: 0;
}

.u-mr-0 {
  margin-right: 0;
}

.u-mb-0 {
  margin-bottom: 0;
}

.u-ml-0 {
  margin-left: 0;
}

.u-mx-0 {
  margin-left: 0;
  margin-right: 0;
}

.u-my-0 {
  margin-top: 0;
  margin-bottom: 0;
}

.u-m-4 {
  margin: 4px;
}

.u-mt-4 {
  margin-top: 4px;
}

.u-mr-4 {
  margin-right: 4px;
}

.u-mb-4 {
  margin-bottom: 4px;
}

.u-ml-4 {
  margin-left: 4px;
}

.u-mx-4 {
  margin-left: 4px;
  margin-right: 4px;
}

.u-my-4 {
  margin-top: 4px;
  margin-bottom: 4px;
}

.u-m-8 {
  margin: 8px;
}

.u-mt-8 {
  margin-top: 8px;
}

.u-mr-8 {
  margin-right: 8px;
}

.u-mb-8 {
  margin-bottom: 8px;
}

.u-ml-8 {
  margin-left: 8px;
}

.u-mx-8 {
  margin-left: 8px;
  margin-right: 8px;
}

.u-my-8 {
  margin-top: 8px;
  margin-bottom: 8px;
}

.u-m-12 {
  margin: 12px;
}

.u-mt-12 {
  margin-top: 12px;
}

.u-mr-12 {
  margin-right: 12px;
}

.u-mb-12 {
  margin-bottom: 12px;
}

.u-ml-12 {
  margin-left: 12px;
}

.u-mx-12 {
  margin-left: 12px;
  margin-right: 12px;
}

.u-my-12 {
  margin-top: 12px;
  margin-bottom: 12px;
}

.u-m-16 {
  margin: 16px;
}

.u-mt-16 {
  margin-top: 16px;
}

.u-mr-16 {
  margin-right: 16px;
}

.u-mb-16 {
  margin-bottom: 16px;
}

.u-ml-16 {
  margin-left: 16px;
}

.u-mx-16 {
  margin-left: 16px;
  margin-right: 16px;
}

.u-my-16 {
  margin-top: 16px;
  margin-bottom: 16px;
}

.u-m-20 {
  margin: 20px;
}

.u-mt-20 {
  margin-top: 20px;
}

.u-mr-20 {
  margin-right: 20px;
}

.u-mb-20 {
  margin-bottom: 20px;
}

.u-ml-20 {
  margin-left: 20px;
}

.u-mx-20 {
  margin-left: 20px;
  margin-right: 20px;
}

.u-my-20 {
  margin-top: 20px;
  margin-bottom: 20px;
}

.u-m-24 {
  margin: 24px;
}

.u-mt-24 {
  margin-top: 24px;
}

.u-mr-24 {
  margin-right: 24px;
}

.u-mb-24 {
  margin-bottom: 24px;
}

.u-ml-24 {
  margin-left: 24px;
}

.u-mx-24 {
  margin-left: 24px;
  margin-right: 24px;
}

.u-my-24 {
  margin-top: 24px;
  margin-bottom: 24px;
}

.u-m-32 {
  margin: 32px;
}

.u-mt-32 {
  margin-top: 32px;
}

.u-mr-32 {
  margin-right: 32px;
}

.u-mb-32 {
  margin-bottom: 32px;
}

.u-ml-32 {
  margin-left: 32px;
}

.u-mx-32 {
  margin-left: 32px;
  margin-right: 32px;
}

.u-my-32 {
  margin-top: 32px;
  margin-bottom: 32px;
}

.u-m-36 {
  margin: 36px;
}

.u-mt-36 {
  margin-top: 36px;
}

.u-mr-36 {
  margin-right: 36px;
}

.u-mb-36 {
  margin-bottom: 36px;
}

.u-ml-36 {
  margin-left: 36px;
}

.u-mx-36 {
  margin-left: 36px;
  margin-right: 36px;
}

.u-my-36 {
  margin-top: 36px;
  margin-bottom: 36px;
}

.u-m-40 {
  margin: 40px;
}

.u-mt-40 {
  margin-top: 40px;
}

.u-mr-40 {
  margin-right: 40px;
}

.u-mb-40 {
  margin-bottom: 40px;
}

.u-ml-40 {
  margin-left: 40px;
}

.u-mx-40 {
  margin-left: 40px;
  margin-right: 40px;
}

.u-my-40 {
  margin-top: 40px;
  margin-bottom: 40px;
}

.u-m-60 {
  margin: 60px;
}

.u-mt-60 {
  margin-top: 60px;
}

.u-mr-60 {
  margin-right: 60px;
}

.u-mb-60 {
  margin-bottom: 60px;
}

.u-ml-60 {
  margin-left: 60px;
}

.u-mx-60 {
  margin-left: 60px;
  margin-right: 60px;
}

.u-my-60 {
  margin-top: 60px;
  margin-bottom: 60px;
}

.u-p-0 {
  padding: 0;
}

.u-pt-0 {
  padding-top: 0;
}

.u-pr-0 {
  padding-right: 0;
}

.u-pb-0 {
  padding-bottom: 0;
}

.u-pl-0 {
  padding-left: 0;
}

.u-px-0 {
  padding-left: 0;
  padding-right: 0;
}

.u-py-0 {
  padding-top: 0;
  padding-bottom: 0;
}

.u-p-4 {
  padding: 4px;
}

.u-pt-4 {
  padding-top: 4px;
}

.u-pr-4 {
  padding-right: 4px;
}

.u-pb-4 {
  padding-bottom: 4px;
}

.u-pl-4 {
  padding-left: 4px;
}

.u-px-4 {
  padding-left: 4px;
  padding-right: 4px;
}

.u-py-4 {
  padding-top: 4px;
  padding-bottom: 4px;
}

.u-p-8 {
  padding: 8px;
}

.u-pt-8 {
  padding-top: 8px;
}

.u-pr-8 {
  padding-right: 8px;
}

.u-pb-8 {
  padding-bottom: 8px;
}

.u-pl-8 {
  padding-left: 8px;
}

.u-px-8 {
  padding-left: 8px;
  padding-right: 8px;
}

.u-py-8 {
  padding-top: 8px;
  padding-bottom: 8px;
}

.u-p-12 {
  padding: 12px;
}

.u-pt-12 {
  padding-top: 12px;
}

.u-pr-12 {
  padding-right: 12px;
}

.u-pb-12 {
  padding-bottom: 12px;
}

.u-pl-12 {
  padding-left: 12px;
}

.u-px-12 {
  padding-left: 12px;
  padding-right: 12px;
}

.u-py-12 {
  padding-top: 12px;
  padding-bottom: 12px;
}

.u-p-16 {
  padding: 16px;
}

.u-pt-16 {
  padding-top: 16px;
}

.u-pr-16 {
  padding-right: 16px;
}

.u-pb-16 {
  padding-bottom: 16px;
}

.u-pl-16 {
  padding-left: 16px;
}

.u-px-16 {
  padding-left: 16px;
  padding-right: 16px;
}

.u-py-16 {
  padding-top: 16px;
  padding-bottom: 16px;
}

.u-p-20 {
  padding: 20px;
}

.u-pt-20 {
  padding-top: 20px;
}

.u-pr-20 {
  padding-right: 20px;
}

.u-pb-20 {
  padding-bottom: 20px;
}

.u-pl-20 {
  padding-left: 20px;
}

.u-px-20 {
  padding-left: 20px;
  padding-right: 20px;
}

.u-py-20 {
  padding-top: 20px;
  padding-bottom: 20px;
}

.u-p-24 {
  padding: 24px;
}

.u-pt-24 {
  padding-top: 24px;
}

.u-pr-24 {
  padding-right: 24px;
}

.u-pb-24 {
  padding-bottom: 24px;
}

.u-pl-24 {
  padding-left: 24px;
}

.u-px-24 {
  padding-left: 24px;
  padding-right: 24px;
}

.u-py-24 {
  padding-top: 24px;
  padding-bottom: 24px;
}

.u-p-32 {
  padding: 32px;
}

.u-pt-32 {
  padding-top: 32px;
}

.u-pr-32 {
  padding-right: 32px;
}

.u-pb-32 {
  padding-bottom: 32px;
}

.u-pl-32 {
  padding-left: 32px;
}

.u-px-32 {
  padding-left: 32px;
  padding-right: 32px;
}

.u-py-32 {
  padding-top: 32px;
  padding-bottom: 32px;
}

.u-p-36 {
  padding: 36px;
}

.u-pt-36 {
  padding-top: 36px;
}

.u-pr-36 {
  padding-right: 36px;
}

.u-pb-36 {
  padding-bottom: 36px;
}

.u-pl-36 {
  padding-left: 36px;
}

.u-px-36 {
  padding-left: 36px;
  padding-right: 36px;
}

.u-py-36 {
  padding-top: 36px;
  padding-bottom: 36px;
}

.u-p-40 {
  padding: 40px;
}

.u-pt-40 {
  padding-top: 40px;
}

.u-pr-40 {
  padding-right: 40px;
}

.u-pb-40 {
  padding-bottom: 40px;
}

.u-pl-40 {
  padding-left: 40px;
}

.u-px-40 {
  padding-left: 40px;
  padding-right: 40px;
}

.u-py-40 {
  padding-top: 40px;
  padding-bottom: 40px;
}

.u-p-60 {
  padding: 60px;
}

.u-pt-60 {
  padding-top: 60px;
}

.u-pr-60 {
  padding-right: 60px;
}

.u-pb-60 {
  padding-bottom: 60px;
}

.u-pl-60 {
  padding-left: 60px;
}

.u-px-60 {
  padding-left: 60px;
  padding-right: 60px;
}

.u-py-60 {
  padding-top: 60px;
  padding-bottom: 60px;
}

/* =======================
   3. 레이아웃 구조
========================== */
nav,
section {
  width: 100%;
}

.condiv {
  width: 1100px;
  margin: 0 auto;
}

/* =======================
   4. 공통 컴포넌트
========================== */
/* 🧩 Variables 
색상,폰트,간격 변수화
*/
body {
  box-sizing: border-box;
}

.h1 {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.5;
}

.h2 {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.5;
}

.h3 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
}

.subtitle1 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
}

.subtitle2 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
}

.subtitle3 {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}

.subtitle4 {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}

.body1 {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}

.body2 {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
}

.caption1 {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
}

.caption2 {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  color: #999999;
}

/* 🧹 Reset */
*::-webkit-scrollbar {
  width: 12px;
  height: 12px;
}

*::-webkit-scrollbar-track {
  background: #dddddd;
}

*::-webkit-scrollbar-thumb {
  background: #525252;
  border: 3px solid #dddddd;
  border-radius: 10px;
}

*::-webkit-scrollbar-thumb:hover {
  border-width: 0px;
}

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
figure,
dl,
dd {
  margin: 0;
}

ul,
ol {
  padding: 0;
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
}

button {
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
}

input,
button,
textarea,
select {
  font: inherit;
  color: inherit;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* 📚 Typography */
body {
  font-family: "Pretendard", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 400;
  color: #191919;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  line-height: 1.3;
}

strong {
  font-weight: 700;
}

small {
  font-size: 0.875em;
}

blockquote {
  margin-left: 0;
  padding-left: 1rem;
  border-left: 4px solid #f1f4fd;
  color: #191919;
  font-style: italic;
}

._inBlock {
  display: inline-block;
}

._flex {
  display: flex;
}

._poRe {
  position: relative;
}

._poAb {
  position: absolute;
}

._poFx {
  position: fixed;
}

._flL {
  float: left !important;
}

._flR {
  float: right !important;
}

._clearFix {
  clear: both !important;
}

._cleFx::after {
  display: block;
  content: "";
  clear: both;
}

._bold {
  font-weight: bold;
}

._hide {
  display: none !important;
}

input {
  outline: none;
  border: none;
  background-color: transparent;
}

._renewCompo_inputTxt_ml {
  height: 50px;
  padding: 14px;
  border: 1px solid #8898af;
  border-radius: 8px;
}

._renewCompo_selectBox_ml {
  height: 50px;
  padding: 14px;
  border: 1px solid #8898af;
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
}
._renewCompo_selectBox_ml:hover {
  cursor: pointer;
}
._renewCompo_selectBox_ml .selected {
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
._renewCompo_selectBox_ml .arrow {
  width: 20px;
  height: 20px;
}
._renewCompo_selectBox_ml .count {
  color: #2754e7;
  font-weight: 700;
}

._renewCompo_selectBox_s {
  height: 34px;
  padding: 8px;
  border: 1px solid #c6cfdc;
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
}
._renewCompo_selectBox_s:hover {
  cursor: pointer;
}
[type=checkbox] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

._renewCompo_checkBox .screen-reader {
  /* 스크린 리더를 고려해서 체크박스를 화면에서 숨김 */
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  margin: -1px;
  clip-path: inset(50%);
}
._renewCompo_checkBox .label-box {
  position: relative;
}
._renewCompo_checkBox .check-icon {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  background-color: #fff;
  border: 1px solid #4a5668;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
._renewCompo_checkBox .check-icon::before {
  content: "";
  position: absolute;
  box-sizing: border-box;
  width: 30%;
  height: 55%;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-66%) rotateZ(45deg);
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
._renewCompo_checkBox label {
  position: relative;
  cursor: pointer;
}
._renewCompo_checkBox [type=checkbox]:checked + .label-box .check-icon::before {
  border-color: #163fc5;
}

* {
  box-sizing: border-box;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
  height: auto;
}

.subtitle {
  color: #595959;
}

.filter {
  width: 100%;
  border: 1px solid #66768f;
  box-shadow: rgba(33, 37, 41, 0.1) 0px 2px 4px 0px;
}

.filter01_industry {
  border-radius: 8px 0 0 8px;
}
.filter01_industry:hover .filterIcon {
  content: url(/assets/img/classList/filter01_industry_On.svg);
}

.filter02_classtype,
.filter03_process,
.filter04_search {
  border-radius: 0;
  border-left: none;
}

.filter02_classtype:hover .filterIcon {
  content: url(/assets/img/classList/filter02_classType_On.svg);
}

.filter03_process:hover .filterIcon {
  content: url(/assets/img/classList/filter03_process_On.svg);
}

.filter04_search {
  border-radius: 0 8px 8px 0;
  align-items: center;
}
.filter04_search .filterIcon {
  width: 22px;
  height: 22px;
}

.filter_dropDown01 {
  width: 247px;
  border: 1px solid #4a5668;
  border-radius: 8px;
  background-color: #fff;
  z-index: 100;
  box-shadow: rgba(33, 37, 41, 0.15) 0px 3px 12px 0px;
  top: 50px;
  left: 550px;
}
.filter_dropDown01 a:hover {
  color: #113098;
}
.filter_dropDown01 li:hover a {
  color: #113098;
  font-weight: 700;
}

.filter_dropDown02 {
  border: 1px solid #4a5668;
  border-radius: 8px;
  background-color: #fff;
  z-index: 100;
  box-shadow: rgba(33, 37, 41, 0.15) 0px 3px 12px 0px;
  top: 50px;
}
.filter_dropDown02 a:hover {
  color: #113098;
}

.filter_dropDown02_2 {
  border: 1px solid #4a5668;
  border-radius: 8px;
  background-color: #fff;
  z-index: 100;
  box-shadow: rgba(33, 37, 41, 0.15) 0px 3px 12px 0px;
  top: 50px;
  left: 273px;
}
.filter_dropDown02_2 a:hover {
  color: #113098;
}

.filter_dropDown02_3 {
  border: 1px solid #4a5668;
  border-radius: 8px;
  background-color: #fff;
  z-index: 100;
  box-shadow: rgba(33, 37, 41, 0.15) 0px 3px 12px 0px;
  top: 50px;
  left: 550px;
}
.filter_dropDown02_3 a:hover {
  color: #113098;
}

.filter_dd_depthN {
  width: 180px;
  border-right: 1px solid #dee4ed;
  margin: 0;
}
.filter_dd_depthN li {
  height: 34px;
}
.filter_dd_depthN li a {
  width: 100%;
}
.filter_dd_depthN li img {
  width: 7px;
}
.filter_dd_depthN .option_checked {
  background-color: #f1f8fe;
  font-weight: 700;
  color: #163fc5;
  border-radius: 4px;
}

.filter_dd_depth3 {
  width: 100%;
  margin: 0;
}
.filter_dd_depth3 .part_selectAll {
  width: 100%;
  border-bottom: 1px solid #dee4ed;
}
.filter_dd_depth3 .optionList {
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 20px;
  flex-wrap: wrap;
}
.filter_dd_depth3 .optionList .checked {
  border: 1px solid #dee4ed;
  background-color: #f8fafb;
  border-radius: 4px;
  font-weight: 700;
  color: #2754e7;
}
.filter_dd_depth3-2 {
  width: 100%;
  margin: 0;
}
.filter_dd_depth3-2 .part_selectAll {
  width: 100%;
  border-bottom: 1px solid #dee4ed;
}
.filter_dd_depth3-2 .optionList {
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 20px;
  flex-wrap: wrap;
}
.filter_dd_depth3-2 .optionList .checked {
  border: 1px solid #dee4ed;
  background-color: #f8fafb;
  border-radius: 4px;
  font-weight: 700;
  color: #2754e7;
}
.subfilter_dropDown {
  border: 1px solid #4a5668;
  border-radius: 8px;
  background-color: #fff;
  z-index: 100;
  top: 24px;
  box-shadow: rgba(33, 37, 41, 0.15) 0px 3px 12px 0px;
}
.subfilter_dropDown a:hover {
  color: #113098;
}
.subfilter_dropDown li:hover a {
  color: #113098;
  font-weight: 700;
}

.filterSelectedOptionGrp {
  flex-direction: column;
  align-items: end;
}
.filterSelectedOptionGrp .buttonWrap {
  background-color: #eff2f6;
  border-radius: 0 0 8px 8px;
  width: 108px;
  justify-content: center;
}
.filterSelectedOptionGrp .buttonWrap .openBtn {
  border: 1px solid #c6cfdc;
  border-radius: 4px;
  background-color: #fff;
  width: 75px;
  justify-content: space-between;
}

.filterSelectedOptionWrap {
  background-color: #f8fafb;
  border-radius: 8px 8px 0 8px;
  row-gap: 8px;
  -moz-column-gap: 20px;
       column-gap: 20px;
  border: 1px solid #dee4ed;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  min-height: 45.5px;
}
.filterSelectedOptionWrap .option {
  color: #4a5668;
}
.filterSelectedOptionWrap .option button {
  padding-left: 2px;
}

.subFilterGrp {
  -moz-column-gap: 12px;
       column-gap: 12px;
}
.subFilterGrp .subfilter_lv span {
  font-weight: 700;
  color: #1082da;
}
.subFilterGrp .subfilter_free,
.subFilterGrp .subfilter_discount,
.subFilterGrp .subfilter_limited {
  height: 34px;
  padding: 8px;
  border-radius: 8px;
  border: 1px solid #c6cfdc;
  justify-content: center;
  align-items: center;
}
.subFilterGrp .subfilter_free:hover,
.subFilterGrp .subfilter_discount:hover,
.subFilterGrp .subfilter_limited:hover {
  cursor: pointer;
}
.subFilterGrp .subfilter_checked {
  background-color: #f1f8fe;
  border: 1px solid #7fc2f5;
}

.classList {
  flex-wrap: wrap;
  -moz-column-gap: 30px;
       column-gap: 30px;
  row-gap: 40px;
  overflow-x: unset;
}
.classList .banner {
  background-color: #ddd;
  border-radius: 8px;
}
.classList .banner .indicator {
  justify-content: space-between;
  align-items: center;
}
.classList .banner .dot {
  width: 10px;
  height: 10px;
  border: 1px solid #dee4ed;
  border-radius: 5px;
  background-color: #fff;
  opacity: 40%;
}
.classList .banner .dot:hover {
  cursor: pointer;
}
.classList .banner .dot_selected {
  opacity: 100%;
  background-color: #50abf2;
}
.classList .card {
  width: 252px;
  height: 334px;
}
.classList .card:hover {
  cursor: pointer;
}

.thumbnail {
  width: 252px;
  height: 152px;
  border-radius: 8px;
  border: 1px solid #dee4ed;
  background-size: cover !important;
}

.tagWrap {
  -moz-column-gap: 4px;
       column-gap: 4px;
}

.classType {
  color: #737373;
}

.classTitle {
  letter-spacing: -0.2px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 2;
  height: 48px;
}

.date {
  color: #737373;
  letter-spacing: -0.4px;
}

.price {
  align-items: center;
  font-weight: 700;
}
.price .discountInfo {
  color: #e83535;
  font-weight: 700;
  letter-spacing: -0.5px;
  line-height: 24px;
}
.price .originalPrice {
  color: #999999;
  text-decoration: line-through;
}

.reviewWrap {
  color: #737373;
}
.reviewWrap .review img {
  width: 13px;
  margin-right: 2px;
}
.reviewWrap .countStudent img {
  width: 11px;
  margin-right: 2px;
}

.description {
  color: #737373;
  letter-spacing: -0.3px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 2;
}

.level {
  color: #404040;
}
.level p span {
  font-weight: 700;
}

.tagAndCartbtn p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 2;
  color: #999999;
}
.tagAndCartbtn .cartBtn {
  width: 34px;
  float: right;
}
.tagAndCartbtn .cartBtn:hover {
  content: url(/assets/img/classList/cart_2_hover.svg);
  cursor: pointer;
}

.headTitle2 {
  font-size: 28px;
  font-weight: 700;
}

.cate_search {
  border: 0px !important;
}

.filter_keyword {
  border: 1px solid #404040;
  border-radius: 10px;
  position: absolute;
  z-index: 100;
  background: white;
  left: 823px;
  top: 55px;
  padding: 16px 10px 16px 16px;
  width: 275px;
  font-family: Pretendard;
  font-weight: 400;
  font-size: 14px;
  line-height: 231%;
}

.filter_keyword_list {
  overflow-y: auto;
  max-height: 190px;
}

.filter_keyword_item {
  cursor: pointer;
}

.filter_keyword_item span {
  color: #1082DA;
}

.filter_keyword_item:hover {
  text-decoration: underline;
}

.null_data_keyword {
  color: #1082DA;
  display: inline-block;
}

.filter_keyword_item_nulldata {
  text-align: center;
}

.filter_keyword_item_nulldata_btn {
  background: #4A5668;
  color: white;
  font-weight: 500;
  font-style: Medium;
  font-size: 13px;
  line-height: 140%;
  display: inline-block;
  padding: 8px 36px;
  border-radius: 14px;
  margin-top: 8px;
  cursor: pointer;
}

.hover_change_area_hover {
  display: none;
}

.card:hover .hover_change_area_default {
  display: none;
}

.card:hover .hover_change_area_hover {
  display: block;
}

.hover_change_area {
  position: absolute;
  width: 252px;
  min-height: 100px;
}

.certi {
  color: #1a9711;
}

/* 페이지 number */
.classList .pagenation {
  position: relative;
  height: 24px;
  margin-bottom: 120px;
  width: 1100px;
}

.classList .pagenation > div {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
}

.classList .pagenation > div > * {
  float: left;
}

.classList .pagenation > div .prev {
  margin-right: 24px;
}

.classList .pagenation > div .next {
  margin-left: 24px;
}

.classList .pagenation > div > ul > li {
  float: left;
  margin-right: 24px;
}

.classList .pagenation > div > ul > li:last-child {
  margin-right: 0;
}

.classList .pagenation > div > ul > li > a {
  font-family: "Arial", sans-serif;
  font-size: 15px;
  /*line-height: 2.8;*/
  letter-spacing: -0.45px;
  color: #444444;
}

.classList .pagenation > div > ul > li.on > a {
  text-decoration: underline;
  font-weight: bold;
  color: #505ed1;
}

.pagiwrap .pagination {
  margin-top: 0;
}

.pagination {
  width: 100%;
  height: 40px;
  overflow: hidden;
  text-align: center;
  position: relative;
}

.pagination.type2 {
  overflow: visible;
}

.pagination .paging {
  display: inline-block;
  *display: inline;
  zoom: 1;
}

.pagination .paging > a {
  display: block;
  width: 20px;
  height: 40px;
  margin-left: 5px;
  float: left;
  font-size: 16px;
  line-height: 30px;
  color: #000;
}

.pagination .paging .page_first {
  background: url("/assets/img/classList/arrow/page_begin.png") center center no-repeat;
  width: 36px;
  height: 36px;
  margin-left: 5px;
}

.pagination .paging .page_prev {
  background: url("/assets/img/classList/arrow/page_prev.png") center center no-repeat;
  width: 36px;
  height: 36px;
  margin-left: 5px;
}

.pagination .paging .page_next {
  background: url("/assets/img/classList/arrow/page_next.png") center center no-repeat;
  width: 36px;
  height: 36px;
  margin-left: 5px;
}

.pagination .paging .page_last {
  background: url("/assets/img/classList/arrow/page_end.png") center center no-repeat;
  width: 36px;
  height: 36px;
}

.pagination .paging .page {
  display: block;
  float: left;
  padding: 0 0px;
  height: 40px;
}

.pagination .paging .page a {
  display: block;
  float: left;
  width: 36px;
  height: 36px;
  font-size: 15px;
  line-height: 12px;
  text-align: center;
  border: 1px solid #C3CBD5;
  border-radius: 8px;
  color: #303740;
  margin-left: 5px;
}

.pagination .paging .page a.active {
  border: 1px solid #2094EE;
  background-color: #2094EE;
  color: white !important;
  font-weight: bold;
  text-decoration: none !important;
  cursor: pointer;
}

.pagenation .page .active span {
  color: white !important;
}

.subfilter_align {
  min-width: 75px;
  width: 75px;
  line-height: 16px;
  background: #fff url(/assets/img/core/components/input/selectBox_s_arrow1.svg) right 5px center no-repeat;
}

.subfilter_lv {
  min-width: 114px;
  width: 114px;
  line-height: 16px;
  background: #fff url(/assets/img/core/components/input/selectBox_s_arrow1.svg) right 5px center no-repeat;
}

.subfilter_free {
  min-width: 56px !important;
}

.subfilter_discount {
  min-width: 68px !important;
}

.subfilter_limited {
  min-width: 80px !important;
}

.subFilterGrp input[type=checkbox] + label {
  cursor: pointer;
  display: flex;
  align-items: center;
  padding-left: 0;
  background: none;
  font-size: 13px;
  width: auto;
}

.subFilterGrp input[type=checkbox] + label::before {
  content: "";
  display: inline-block;
  height: 18px;
  margin-left: 4px;
  background-repeat: no-repeat;
  background-position: center;
}

.subFilterGrp input[type=checkbox]:checked + label::before {
  background-image: url("/assets/img/classList/check.svg");
  width: 18px;
}

.subFilterGrp input[type=checkbox]:checked + label {
  background-color: #f1f8fe;
  border: 1px solid #7fc2f5;
}

.subFilterGrp input[type=checkbox] {
  display: none;
}

/*loading*/
._lodingDiv {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0, 0, 0, 0.5);
  z-index: 99999;
}

._lodingBg {
  width: 184px;
  height: 184px;
  background-image: url("/assets/data/img/icon/loading/loading_img.png");
  display: inline-block;
  margin-top: calc(25% - 30px);
}

._lodingCn {
  width: 184px;
  height: 184px;
  display: inline-block;
  margin-top: calc(25% - 30px);
  position: absolute;
  top: 0;
  left: calc(50% - 92px);
}

.loginGifImg {
  margin-top: 70px;
  margin-left: 40px;
}

._lodingDiv {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0, 0, 0, 0.5);
  z-index: 99999;
}

._lodingBg {
  width: 184px;
  height: 184px;
  background-image: url("/assets/data/img/icon/loading/loading_img.png");
  display: inline-block;
  margin-top: calc(25% - 0px);
}

._lodingCn {
  width: 184px;
  height: 184px;
  display: inline-block;
  margin-top: calc(25% - 0px);
  position: absolute;
  top: 0;
  left: calc(50% - 92px);
}

.filter_dd_depth1 {
  width: 180px;
}

.filter_dd_depth2 {
  width: 180px;
  display: none;
}

.filter_dd_depth3 {
  width: 737px;
  display: none;
}

.filter_dd_depth3-2 {
  width: 645px;
  display: none;
}

.cate_li_arrow {
  display: inline-block;
  position: absolute;
  top: 13px;
  right: 10px;
}

._cate_blue_avtive {
  color: #113098;
  font-weight: 700;
}

#optionListIAll {
  background-image: url("/assets/img/classList/checkBox.png");
  background-repeat: no-repeat;
  background-position: left center;
  /* 좌측 중앙 정렬 */
  padding-left: 30px;
  /* 아이콘 크기에 따라 적절히 조절 */
}

#optionListPAll {
  background-image: url("/assets/img/classList/checkBox.png");
  background-repeat: no-repeat;
  background-position: left center;
  /* 좌측 중앙 정렬 */
  padding-left: 30px;
  /* 아이콘 크기에 따라 적절히 조절 */
}

.card_list {
  position: relative;
}

.card_list .slick-next {
  width: 22px;
  height: 22px;
  background: url("/assets/img/classList/next.svg") no-repeat !important;
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 1;
  font-size: 0;
}

.card_list .slick-prev {
  width: 22px;
  height: 22px;
  background: url("/assets/img/classList/previous.svg") no-repeat !important;
  position: absolute;
  top: 6px;
  left: 6px;
  z-index: 1;
  font-size: 0;
}

.card_list .slick-dots {
  display: block;
  top: 3px;
  left: 0px;
  position: absolute;
  width: 252px;
  height: 32px;
  text-align: center;
}

.card_list .slick-dots li {
  width: 10px;
  height: 10px;
  border: 1px solid #dee4ed;
  border-radius: 5px;
  background-color: #fff;
  opacity: 40%;
  display: inline-block;
  margin: 0 5px;
}

.card_list .slick-active {
  opacity: 100% !important;
  background-color: #50abf2 !important;
}

.class_list_no_data {
  width: 100%;
  text-align: center;
}

.class_list_no_data img {
  margin: 55px auto 18px;
}

.class_item_title {
  font-weight: 700;
  font-size: 16px;
  line-height: 160%;
  letter-spacing: -2%;
  text-align: center;
}

.class_item_content {
  font-weight: 400;
  font-size: 13px;
}

.class_item_btn {
  font-weight: 400;
  font-size: 14px;
  line-height: 160%;
  letter-spacing: -2%;
  text-align: center;
  border: 1px solid #5579EC;
  border-radius: 8px;
  padding: 9px 46px;
  margin-top: 18px;
  color: #163FC5;
  display: inline-block;
  cursor: pointer;
}/*# sourceMappingURL=classList.css.map */