@charset "UTF-8";
#container {
  padding-top: 40px;
}

.visual-wrap > .vis-inner {
  display: flex;
  flex-wrap: wrap;
}

.visual {
  width: calc(100% - 410px);
  height: 360px;
  background-color: #EEF2F7;
  display: inline-block;
  border-radius: 12px;
  padding: 32px;
  display: inline-flex;
  gap: 0 30px;
  vertical-align: top;
}
.visual-txt-box {
  font-size: 32px;
  display: inline-block;
  margin-right: auto;
  width: 360px;
  vertical-align: top;
}
.visual-txt-box .txt1 {
  font-size: 0.95em;
  font-weight: 700;
  line-height: 140%;
  letter-spacing: -1px;
  color: #1E2124;
}
.visual-txt-box .txt2 {
  font-size: 0.75em;
  font-weight: 700;
  line-height: 140%;
  margin-top: 8px;
}
.visual-txt-box .txt3 {
  font-size: 0.53em;
  line-height: 140%;
  margin-top: 17px;
  word-break: keep-all;
  text-align: justify;
}
.visual-bg {
  display: inline-block;
  vertical-align: top;
  background: url("../images/main/img_visual.png") no-repeat bottom;
  width: 280px;
  height: 296px;
  background-size: contain;
}
.visual-link-box {
  display: inline-block;
  vertical-align: top;
  margin-left: auto;
}
.visual-link-box .tit {
  font-size: 22px;
  font-weight: 700;
  color: #1E2124;
}
.visual-link-box .link-list {
  margin-top: 8px;
  width: 230px;
}
.visual-link-box .link-list li {
  margin-bottom: 8px;
}
.visual-link-box .link-list li:last-child {
  margin-bottom: 0;
}
.visual-link-box .link-list li a {
  position: relative;
  width: 100%;
  display: inline-flex;
  align-items: center;
  background-color: #fff;
  border-radius: 6px;
  padding: 15px 45px 15px 16px;
}
.visual-link-box .link-list li a::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url("../images/main/ico_arrow.svg") no-repeat center;
  position: absolute;
  right: 11px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 100px;
  transition: 0.3s ease;
}
.visual-link-box .link-list li a:hover::before {
  background-color: #fff;
  right: 3px;
}

.banner {
  position: relative;
  width: 384px;
  height: 360px;
  display: inline-flex;
  vertical-align: top;
  margin-left: auto;
  border-radius: 12px;
  z-index: 0;
}
.banner .banner-img {
  border-radius: 12px;
  border: 1px solid #B1B8BE;
  overflow: hidden;
  display: block;
  width: 100%;
  height: 100%;
}
.banner a {
  display: block;
  width: 100%;
  height: 100%;
}
.banner img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.banner .swiper-pagination {
  background-color: #fff;
  height: 40px;
  border-radius: 100px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 65px;
  width: auto;
  text-align: center;
  vertical-align: middle;
  font-weight: 700;
  position: relative;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
  border: 1px solid #CDD1D5;
  gap: 0 4px;
}
.banner .swiper-pagination-current {
  color: #052B57;
}
.banner .banner-control {
  position: absolute;
  right: 32px;
  bottom: 32px;
  z-index: 1;
  display: inline-flex;
  gap: 0 8px;
}
.banner .banner-control-box {
  display: inline-block;
  vertical-align: middle;
}
.banner .banner-button {
  display: inline-block;
  position: relative;
  margin: 0;
}
.banner .banner-control-button {
  width: 40px;
  height: 40px;
  display: inline-block;
  background-color: #fff;
  border: 1px solid #CDD1D5;
  border-radius: 100px;
}
.banner .banner-control-button--pause {
  background: #fff url("../images/main/ico_stop.png") no-repeat center;
}
.banner .banner-control-button--play {
  background: #fff url("../images/main/ico_play.png") no-repeat center;
  display: none;
}
.banner .banner-button {
  width: 40px;
  height: 40px;
  border: 1px solid #CDD1D5;
  display: inline-block;
  border-radius: 100px;
  right: auto;
  left: auto;
}
.banner .banner-button.swiper-button-prev {
  background: #fff url("../images/main/ico_visual_prev.svg") no-repeat center;
}
.banner .banner-button.swiper-button-next {
  background: #fff url("../images/main/ico_visual_next.svg") no-repeat center;
}
.banner .banner-button::after {
  display: none;
}

.main-cont-tit {
  font-size: 32px;
  font-weight: 700;
  color: #1E2124;
}

.section {
  margin-top: 64px;
  position: relative;
}

.data-link-wrap {
  margin-top: 24px;
}

.data-link-list {
  display: flex;
  gap: 0 24px;
}
.data-link-list .data-link-item {
  display: inline-block;
  width: calc(33.3% - 12px);
  vertical-align: top;
}
.data-link-list .data-link-item a {
  height: 100%;
  transition: 0.3s ease;
  border-radius: 10px;
  display: block;
  border: 1px solid #B1B8BE;
  overflow: hidden;
}
.data-link-list .data-link-item .data-link-img {
  overflow: hidden;
  width: 100%;
  position: relative;
  padding-bottom: 49%;
  background: #DFE8F4 url("../images/main/ico_data01.png") no-repeat center;
  background-size: 45%;
}
.data-link-list .data-link-item .data-link-img::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 10px solid #fff;
  box-sizing: border-box;
  opacity: 0;
  transition: 0.3s ease;
  transform: scale(1.1);
}
.data-link-list .data-link-item .img01 {
  background: #DFE8F4 url("../images/main/ico_data01.png") no-repeat center;
  background-size: 60%;
}
.data-link-list .data-link-item .img02 {
  background: #DFE8F4 url("../images/main/ico_data02.png") no-repeat center;
  background-size: 70%;
}
.data-link-list .data-link-item .img03 {
  background: #DFE8F4 url("../images/main/ico_data03.png") no-repeat center;
  background-size: 70%;
}
.data-link-list .data-link-txt {
  transition: 0.3s ease;
  padding: 32px;
  border-top: 1px solid #B1B8BE;
}
.data-link-list .data-link-txt .tit {
  font-size: 22px;
  font-weight: 700;
  display: block;
}
.data-link-list .data-link-txt .txt {
  margin-top: 16px;
  font-size: 18px;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
}
.data-link-list .data-link-txt .more-btn {
  background-color: #fff;
  display: block;
  width: 135px;
  text-align: right;
  font-size: 17px;
  font-weight: 400;
  color: #1E2124;
  margin-top: 27px;
  position: relative;
  padding: 5px 40px 5px 10px;
  border-radius: 100px;
  border: 1px solid transparent;
  transition: 0.3s ease;
  margin-left: auto;
}
.data-link-list .data-link-txt .more-btn::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url("../images/main/ico_arrow.svg") no-repeat center;
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
}
.data-link-list .data-link-item a:hover {
  border-color: #1E2124;
}
.data-link-list .data-link-item a:hover .data-link-txt .more-btn {
  background-color: #EEF2F7;
  transform: translateX(5px);
}
.data-link-list .data-link-item a:hover .tit {
  text-decoration: underline;
}
.data-link-list .data-link-item a:hover .data-link-img::before {
  opacity: 1;
  transform: scale(1);
}

/* 고용조사분석시스템 주제별 통계 */
.stats-link-wrap {
  margin-top: 24px;
}
.stats-link-wrap .stats-tab-list {
  font-size: 0;
  position: relative;
  height: 160px;
}
.stats-link-wrap .stats-tab-item {
  display: inline-block;
  width: 33.3%;
  vertical-align: middle;
  font-size: 17px;
}
.stats-link-wrap .tab {
  display: block;
}
.stats-link-wrap .stats-tab-btn {
  display: block;
  width: 100%;
  text-align: center;
  background-color: #fff;
  height: 56px;
  font-size: 19px;
  color: #464C53;
  font-weight: 700;
  border: 1px solid #B1B8BE;
  border-left: 0;
}
.stats-link-wrap .stats-tab-list .stats-tab-item:first-child .stats-tab-btn {
  border-radius: 8px 0 0 8px;
  border-left: 1px solid #B1B8BE;
}
.stats-link-wrap .stats-tab-list .stats-tab-item:last-child .stats-tab-btn {
  border-radius: 0 8px 8px 0;
}
.stats-link-wrap .stats-tab-btn.active {
  outline-offset: 2px;
  background-color: #063A74;
  color: #fff;
  border-color: #063A75;
}
.stats-link-wrap a {
  display: block;
  outline-offset: 5px;
}
.stats-link-wrap .ico {
  display: inline-flex;
  background-color: #EEF2F7;
  box-sizing: border-box;
  vertical-align: middle;
  border-radius: 10px;
  position: relative;
  transition: 0.4s ease;
  border: 3px solid #EEF2F8;
  width: 10vw;
  height: 10vw;
  max-width: 80px;
  max-height: 80px;
}
.stats-link-wrap .ico::after {
  content: "";
  display: inline-block;
  width: calc(100% - 14px);
  height: calc(100% - 14px);
  position: absolute;
  left: 7px;
  top: 7px;
  border-radius: 7px;
  box-sizing: border-box;
  transition: 0.4s ease;
}
.stats-link-wrap .ico::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-position: center;
  background-repeat: no-repeat;
  transition: 0.4s ease;
  z-index: 1;
}
.stats-link-wrap .ico.ico1-1::before {
  background-image: url("../images/main/ico_stats1.png");
}
.stats-link-wrap .ico.ico1-2::before {
  background-image: url("../images/main/ico_stats2.png");
}
.stats-link-wrap .ico.ico1-3::before {
  background-image: url("../images/main/ico_stats3.png");
}
.stats-link-wrap .ico.ico1-4::before {
  background-image: url("../images/main/ico_stats4.png");
}
.stats-link-wrap .ico.ico1-5::before {
  background-image: url("../images/main/ico_stats5.png");
}
.stats-link-wrap .ico.ico1-6::before {
  background-image: url("../images/main/ico_stats6.png");
}
.stats-link-wrap .ico.ico1-7::before {
  background-image: url("../images/main/ico_stats7.png");
}
.stats-link-wrap .ico.ico1-8::before {
  background-image: url("../images/main/ico_stats8.png");
}
.stats-link-wrap .ico.ico1-9::before {
  background-image: url("../images/main/ico_stats9.png");
}
.stats-link-wrap .ico.ico1-10::before {
  background-image: url("../images/main/ico_stats10.png");
}
.stats-link-wrap .ico.ico1-11::before {
  background-image: url("../images/main/ico_stats11.png");
}
.stats-link-wrap .txt {
  margin-left: 12px;
  font-weight: 700;
}
.stats-link-wrap .btn-box {
  position: absolute;
  left: 0;
  top: 80px;
  width: 100%;
  background-color: #fff;
  display: none;
}
.stats-link-wrap .btn-box ul {
  display: flex;
  gap: 12px;
}
.stats-link-wrap .btn-box li {
  display: inline-block;
  width: 100%;
}
.stats-link-wrap .btn-box.active {
  display: block;
}
.stats-link-wrap .btn-box a:hover {
  text-decoration: underline;
}
.stats-link-wrap .btn-box a:hover .ico {
  background-color: #fff;
  border-color: #063A74;
}
.stats-link-wrap .btn-box a:hover .ico::before {
  transform: rotateY(360deg);
}

/* 게시판 */
.board-list-wrap {
  margin-top: 64px;
  display: flex;
  gap: 24px;
}
.board-list-wrap .board {
  border: 1px solid #B1B8BE;
  font-size: 17px;
  border-radius: 12px;
  display: inline-block;
  padding: 32px;
  position: relative;
  width: 100%;
  min-height: 325px;
}
.board-list-wrap .main-cont-tit {
  font-size: 22px;
}
.board-list-wrap .board-list {
  margin-top: 38px;
}
.board-list-wrap .board-list li {
  margin-top: 28px;
}
.board-list-wrap .board-list li:first-child {
  margin-top: 0;
}
.board-list-wrap .board-list a {
  color: #1E2124;
  display: block;
}
.board-list-wrap .board-list .board-title {
  display: inline-block;
  max-width: calc(100% - 120px);
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
.board-list-wrap .board-list .board-date {
  float: right;
  color: #464C53;
}
.board-list-wrap .board-list a:hover .board-title {
  text-decoration: underline;
}
.board-list-wrap .more-btn {
  position: absolute;
  right: 32px;
  top: 35px;
  padding-right: 25px;
}
.board-list-wrap .more-btn::before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate3d(0, -50%, 0);
  background: url("../images/main/ico_more.svg") no-repeat center;
  width: 20px;
  height: 20px;
  transition: 0.3s ease;
}
.board-list-wrap .more-btn:hover::before {
  transform: translate3d(0, -50%, 0) rotate(180deg);
}

.board-banner {
  position: relative;
  min-width: 382px;
  width: 382px;
  height: 325px;
  display: inline-flex;
  vertical-align: top;
  margin-left: auto;
  border-radius: 12px;
}
.board-banner .board-banner-img {
  border-radius: 12px;
  border: 1px solid #B1B8BE;
  overflow: hidden;
  display: block;
  width: 100%;
  height: 100%;
}
.board-banner a {
  display: block;
  width: 100%;
  height: 100%;
}
.board-banner img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.board-banner .swiper-pagination {
  background-color: #fff;
  height: 40px;
  border-radius: 100px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 65px;
  width: auto;
  text-align: center;
  vertical-align: middle;
  font-weight: 700;
  position: relative;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
  border: 1px solid #CDD1D5;
  gap: 0 4px;
}
.board-banner .swiper-pagination-current {
  color: #052B57;
}
.board-banner .board-banner-control {
  position: absolute;
  right: 32px;
  bottom: 32px;
  z-index: 1;
  display: inline-flex;
  gap: 0 8px;
}
.board-banner .board-banner-control-box {
  display: inline-block;
  vertical-align: middle;
}
.board-banner .board-banner-button {
  display: inline-block;
  position: relative;
  margin: 0;
}
.board-banner .board-banner-control-button {
  width: 40px;
  height: 40px;
  display: inline-block;
  background-color: #fff;
  border: 1px solid #CDD1D5;
  border-radius: 100px;
}
.board-banner .board-banner-control-button--pause {
  background: #fff url("../images/main/ico_stop.png") no-repeat center;
}
.board-banner .board-banner-control-button--play {
  background: #fff url("../images/main/ico_play.png") no-repeat center;
  display: none;
}
.board-banner .board-banner-button {
  width: 40px;
  height: 40px;
  border: 1px solid #CDD1D5;
  display: inline-block;
  border-radius: 100px;
  right: auto;
  left: auto;
}
.board-banner .board-banner-button.swiper-button-prev {
  background: #fff url("../images/main/ico_visual_prev.svg") no-repeat center;
}
.board-banner .board-banner-button.swiper-button-next {
  background: #fff url("../images/main/ico_visual_next.svg") no-repeat center;
}
.board-banner .board-banner-button::after {
  display: none;
}

.search {
  margin-top: 70px;
}
.search__title {
  text-align: center;
  font-size: 30px;
  font-family: "jalnan";
}
.search__col {
  margin-top: 20px;
  display: flex;
  justify-content: center;
}
.search__input-box {
  max-width: 815px;
  width: 100%;
  min-width: 300px;
  display: inline-flex;
  align-items: end;
  position: relative;
}
.search__input-box .search__input {
  overflow: hidden;
  width: 100%;
  height: 45px;
  display: inline-block;
  padding: 5px 140px 5px 80px;
  border: 0;
  transition: 0.4s ease;
  border-bottom: 2px solid #d71921;
  background: url("../images/main/ico_search_character.png") no-repeat 17px 10px;
  font-size: 18px;
}
.search__input-box .search__input:focus {
  outline: none;
  background: url("../images/main/ico_search_character_on.png") no-repeat 17px 100%;
  border-color: #ff9d31;
  animation: borderColor 5s infinite;
}
.search__input-box .search__input::-moz-placeholder {
  color: #767676;
}
.search__input-box .search__input::placeholder {
  color: #767676;
}
.search__col {
  text-align: center;
  vertical-align: middle;
}
.search__input-button {
  background-color: #d71921;
  color: #fff;
  border-radius: 100px;
  min-width: 140px;
  text-align: center;
  font-size: 18px;
  height: 46px;
  font-weight: 500;
  position: absolute;
  right: -18px;
  transition: 0.3s ease;
}
.search__input-button:hover {
  background-color: #ba1118;
}
.search__input-button::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url("../images/main/ico_search.png") no-repeat center;
  vertical-align: middle;
  margin-left: 10px;
  margin-right: -10px;
}
.search__detail-button {
  position: relative;
  display: inline-block;
  vertical-align: bottom;
  border-radius: 100px;
  min-width: 185px;
  text-align: center;
  background-color: #666;
  color: #fff;
  font-size: 18px;
  height: 46px;
  margin-left: 60px;
  padding: 0 55px 0 30px;
  transition: 0.3s ease;
}
.search__detail-button::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  background: url("../images/main/ico_detail_open.png") no-repeat center;
  vertical-align: middle;
  position: absolute;
  right: 23px;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s ease;
}
.search__detail-button:hover {
  background-color: #333;
}
.search__detail-button.active::after {
  transform: translateY(-50%) rotate(-180deg);
}
.search__detail::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 40px;
  background: rgb(0, 0, 0);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.15) 0%, rgba(220, 219, 216, 0) 100%);
  transform: translateY(100%);
}
.search__detail {
  padding: 40px 40px 60px;
  z-index: 2;
  position: absolute;
  left: 0;
  background-color: #faf9f3;
  width: 100%;
  border-bottom: 1px solid #ddd;
  display: none;
}
.search__detail-inner {
  display: flex;
  max-width: 1230px;
  margin: 0 auto;
}
.search__hash-title {
  padding-top: 10px;
  display: inline-block;
  vertical-align: top;
  min-width: 65px;
  font-size: 18px;
  font-weight: 700;
}
.search__hash-list {
  font-size: 0;
  padding-left: 20px;
  display: inline-block;
}
.search__hash-item { /* 241218 dropdown 수정 (ej)*/
  position: relative;
  display: inline-block;
  font-size: 16px;
  margin: 0 10px 15px;
}
.search__check {
  position: absolute;
  left: -1px;
  top: -1px;
  width: 1px;
  height: 1px;
}
.search__label {
  font-size: 16px;
  background-color: #fff;
  border-radius: 100px;
  line-height: 110%;
  border: 2px dotted #bbb;
  padding: 8px 18px;
  cursor: pointer;
  display: inline-block;
  font-weight: 500;
}
.search__check:checked + .search__label {
  border: 2px dashed #d71921;
  background-color: #fff8e7;
}
.search__check:focus-visible + .search__label { /* 241218 포커스 수정 (ej)*/
  outline: 2px dotted #000;
}
.search__category-box {
  display: flex;
  margin: 60px -20px 0;
  padding: 0 120px;
}
.search__category {
  display: inline-block;
  text-align: center;
  width: 20%;
  border-left: 1px solid #ddd;
  padding: 0 20px;
}
.search__category--wide {
  width: 30%;
}
.search__category:first-child {
  border-left: 0;
  padding-left: 0;
}
.search__category:last-child {
  padding-right: 0;
}
.search__col-title {
  display: block;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
}
.search__col-list {
  display: block;
  text-align: left;
  margin: 30px 0 -20px;
  display: flex;
  flex-wrap: wrap;
}
.search__category-item { /* 241218 (ej)*/
  margin: 0 20px 22px;
  position: relative;
  vertical-align: top;
  display: inline-block;
  width: calc(50% - 40px);
  height: 110px;
  max-width: 110px;
}
.search__category-item .search__label {
  width: 100%;
  height: 100%;
  border: 2px solid transparent;
  border-radius: 20px;
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: center;
  padding: 8px;
  word-break: keep-all;
  letter-spacing: -1px;
}
.search__category--wide .search__category-item {
  width: calc(33.3% - 40px);
}
.search__button-box {
  text-align: center;
  margin-top: 100px;
}
.search__button {
  border-radius: 100px;
  min-width: 140px;
  text-align: center;
  font-size: 18px;
  height: 46px;
  font-weight: 500;
  margin: 0 10px;
}
.search__button--search {
  background-color: #d71921;
  color: #fff;
}
.search__button--search::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url("../images/main/ico_search.png") no-repeat center;
  vertical-align: middle;
  margin-left: 10px;
  margin-right: -10px;
}
.search__button--reset {
  border: 2px solid #d71921;
  color: #d71921;
  background-color: #fff;
}
.search__button--reset::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url("../images/main/ico_reset.png") no-repeat center;
  vertical-align: middle;
  margin-left: 10px;
  margin-right: -10px;
  transition: 0.3s ease;
}
.search__button--reset:hover::after {
  transform: rotate(45deg);
}

@keyframes borderColor {
  0% {
    border-color: #d71921;
  }
  30% {
    border-color: #ff7200;
  }
  70% {
    border-color: #00c18a;
  }
  100% {
    border-color: #d71921;
  }
}
.favor-menu {
  margin-top: 135px;
}
.favor-menu .favor-menu__list {
  display: flex;
  gap: 20px;
  margin-top: 15px;
  font-size: 0;
}
.favor-menu .favor-menu__item {
  display: inline-block;
  font-size: 24px;
  width: calc(16.6666666667% - 20px);
  vertical-align: top;
}
.favor-menu .favor-menu__item a {
  position: relative;
  display: block;
  padding: 20px;
  padding-top: 120px;
  width: 100%;
  height: 175px;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 10px;
  font-size: 0;
  box-sizing: border-box;
  box-shadow: 5px 5px 10px 0px rgba(0, 0, 0, 0.3);
}
.favor-menu .favor-menu__item a::before {
  position: absolute;
  right: 20px;
  top: 30px;
  background-position: center;
  background-repeat: no-repeat;
  content: "";
  transition: 0.5s ease;
}
.favor-menu .favor-menu__item a span {
  display: inline-block;
  font-size: 24px;
  font-weight: 700;
  word-break: keep-all;
}
.favor-menu .favor-menu__item a .icon {
  display: inline-block;
  margin-left: 10px;
  width: 52px;
  height: 12px;
  background: url("../images/main/ico_menu_arrow.png") center no-repeat;
  transition: 0.3s ease;
}
.favor-menu .favor-menu__item01 a::before {
  width: 51px;
  height: 45px;
  background-image: url("../images/main/ico_favor01.png");
}
.favor-menu .favor-menu__item02 a::before {
  width: 60px;
  height: 43px;
  background-image: url("../images/main/ico_favor02.png");
}
.favor-menu .favor-menu__item03 a::before {
  width: 37px;
  height: 48px;
  background-image: url("../images/main/ico_favor03.png");
}
.favor-menu .favor-menu__item04 a::before {
  width: 36px;
  height: 58px;
  background-image: url("../images/main/ico_favor04.png");
}
.favor-menu .favor-menu__item05 a::before {
  width: 51px;
  height: 40px;
  background-image: url("../images/main/ico_favor05.png");
}
.favor-menu .favor-menu__item06 a::before {
  width: 41px;
  height: 54px;
  background-image: url("../images/main/ico_favor06.png");
}
.favor-menu .favor-menu__item a:hover::before {
  transform: rotateY(-360deg);
}

.slide { /* 250110 이미지 비율 수정 - (ej) */
  padding-top: 140px;
  overflow: hidden;
}
.slide__tab-list {
  width: 100%;
  font-size: 0;
}
.slide__tab-list {
  display: flex;
  gap: 30px;
  width: 100%;
  font-size: 0;
  flex-wrap: wrap;
}
.slide__tab-item {
  display: inline-block;
}
.slide__tab-button {
  display: block;
  width: 200px;
  height: 95px;
  background: #fff;
  border: 1px dashed #aaa;
  border-radius: 20px;
  font-size: 22px;
  font-weight: 400;
  color: #666;
  text-align: center;
  line-height: 95px;
  box-sizing: border-box;
}
.slide__tab-button.active {
  border: 1px solid #d71921;
  font-weight: 600;
  color: #333333;
}
.slide__tab-container { /* 250110 이미지 비율 수정 - (ej) */
  padding-left: 160px;
  width: 1920px;
  margin: 40px auto 0;
  position: relative;
  z-index: 1;
}
.slide__tab { /* 241218 슬라이드 가운데 정렬 (ej)*/
  position: relative;
  display: flex;
  gap: 40px;
  overflow: hidden;
  min-height: 270px;
  justify-content: flex-start; /* 250110 이미지 비율 수정 - (ej) */
}
.slide__tab + .slide__tab { /* 241218 슬라이드 가운데 정렬 (ej)*/
  margin-top: 60px;
}
.slide .swiper__tit {
  display: inline-block;
  min-width: 215px;
  background: url("../images/main/img_slide-tit01.png") no-repeat left 34px top 90px;
  vertical-align: top;
}
.slide .tab2 .swiper__tit {
  background-image: url("../images/main/img_slide-tit02.png");
}
.slide .slide__tab-content { /* 241219 수정 (ej) */
  position: relative;
  display: none;
  max-width: 1510px;
  width: 100%;
}
.slide .slide__tab-content.active {
  display: block;
}
.slide .slide__tab-content .swiper-container {
  padding-right: 130px;
  padding-bottom: 40px;
}
.slide .slide__tab-content .swiper__controller button {
  position: absolute;
  top: 77.5px;
  transform: translateY(-50%);
  display: block;
  width: 42px;
  height: 42px;
  background-color: #fff;
  background-position: center;
  background-repeat: no-repeat;
  border: 1px solid #ccc;
  border-radius: 50%;
  cursor: pointer;
  z-index: 9;
  text-indent: -99999px;
}
.slide .slide__tab-content .swiper__controller button.swiper-button-disabled {
  display: none;
}
.slide .slide__tab-content .swiper--prev {
  left: -20px;
  background-image: url("../images/main/ico_left-arrow.png");
}
.slide .slide__tab-content .swiper--next {
  right: 120px;
  background-image: url("../images/main/ico_right-arrow.png");
}
.slide .slide__tab-content .swiper__pagination {
  margin-top: 20px;
  text-align: center;
  width: 90%;
  position: absolute;
  left: 0;
  bottom: 0;
}
.slide .slide__tab-content .swiper-pagination-bullet {
  width: 14px;
  height: 14px;
  background: #999;
  opacity: 1;
  text-indent: -99999px;
}
.slide .slide__tab-content .swiper-pagination-bullet + .swiper-pagination-bullet {
  margin-left: 13px;
}
.slide .slide__tab-content .swiper-pagination-bullet-active {
  width: 80px;
  background: #d71921;
  border-radius: 7px;
}
.slide .slide__tab-content .swiper-slide {
  position: relative;
  display: inline-block;
}
.slide .slide__tab-content .slide__link--video {
  display: block;
  width: 100%;
}
.slide .slide__tab-content .slide__link--video:hover .slide__info--tit {
  text-decoration: underline;
}
.slide .slide__tab-content .img { /* 250110 이미지 비율 수정 (ej)*/
  width: 100%;
  overflow: hidden;
  border-radius: 10px;
  background: #eee url("../images/common/ico_photo.png") no-repeat center;
  padding-bottom: 62.7%;
  position: relative;
  height: auto;
}
.slide .slide__tab-content .img img { /* 250110 이미지 비율 수정 (ej)*/
  width: 100%;
  height: 100%;
  border-radius: 10px;
  transition: 0.3s ease;
  -o-object-fit: contain;
     object-fit: contain;
  position: absolute;
  left: 0;
  top: 0;
}
.slide .slide__tab-content .swiper-slide:hover .img img {
  transform: scale(1.1);
}
.slide .slide__tab-content .slide__info {
  margin-top: 10px;
}
.slide .slide__tab-content .slide__info--info {
  margin-bottom: 7px;
  text-align: right;
  display: inline-block;
  width: 100%;
  font-size: 0;
  color: #333333;
}
.slide .slide__tab-content .slide__info--info .info--badge {
  float: left;
  display: inline-block;
  width: 60px;
  height: 28px;
  border-radius: 14px;
  margin-top: -2px;
  font-size: 14px;
  color: #fff;
  text-align: center;
  line-height: 28px;
  box-sizing: border-box;
}
.slide .slide__tab-content .slide__info--info .info--badge.all {
  background-color: #7e17c6;
}
.slide .slide__tab-content .slide__info--info .info--badge.e-learning {
  background-color: #1738c6;
}
.slide .slide__tab-content .slide__info--info .info--badge.set {
  background-color: #cd1b84;
}
.slide .slide__tab-content .slide__info--info span {
  float: left;
  margin-top: 3px;
  margin-left: 10px;
  font-size: 14px;
  font-weight: 500;
}
.slide .slide__tab-content .slide__info--info .info--mobile, .slide .slide__tab-content .slide__info--info .info--pc {
  padding-left: 10px;
  background-position: left center;
  background-repeat: no-repeat;
  font-size: 14px;
  margin-top: 4px;
}
.slide .slide__tab-content .slide__info--info .info--mobile {
  margin-left: 20px;
  margin-right: 9px;
  color: #33a3ff;
  font-weight: 600;
  background-image: url("../images/main/ico_mobile.png");
  padding-left: 14px;
}
.slide .slide__tab-content .slide__info--info .info--pc {
  padding-left: 20px;
  color: #00c18a;
  font-weight: 600;
  background-image: url("../images/main/ico_pc.png");
}
.slide .slide__tab-content .slide__info--tit {
  font-size: 16px;
  display: inline-block; /* 250110 이미지 비율 수정 - (ej) */
  height: 45px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 24px;
  font-weight: 600;
}
.slide .slide__tab-content .slide__link--teaser {
  position: absolute;
  right: 10px;
  top: 114px;
  display: inline-block;
  padding: 4px 8px 6px;
  background: #767676;
  border-radius: 4px;
  transition: 0.3s ease;
}
.slide .slide__tab-content .slide__link--teaser span {
  font-size: 14px;
  color: #fff;
}
.slide .slide__tab-content .slide__link--teaser i.icon {
  display: inline-block;
  width: 8px;
  height: 6px;
  background: url("../images/main/ico_triangle.png");
  background-size: cover;
  transform: rotate(-90deg);
  vertical-align: middle;
}
.slide .slide__tab-content .slide__link--teaser:hover {
  background-color: #444;
}
.slide .slide__tab-content .slide__link--none {
  width: 100%; /*margin-top: 12px;*/
  border: 1px solid #ddd;
  text-align: center;
  color: #767676;
  background-color: #fff;
  border-radius: 4px;
  font-size: 12px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 400;
  display: none;
}
.slide .slide--viewmore {
  position: absolute;
  left: 0;
  bottom: 0;
}
.slide .slide--viewmore-button {
  display: block;
  padding: 8px 32px 8px 16px;
  border: 1px solid #ffa038;
  background: #fff;
  border-radius: 20px;
  font-size: 14px;
  color: #333;
  position: relative;
}
.slide .slide--viewmore-button::before {
  content: "";
  transition: 0.3s ease;
  display: inline-block;
  width: 14px;
  height: 14px;
  background: url("../images/main/ico_plus.svg") no-repeat center;
  position: absolute;
  right: 14px;
  top: 9px;
}
.slide .slide--viewmore-button:hover::before {
  transform: rotate(180deg);
}
.slide .tab2 .slide--viewmore {
  bottom: 10px;
}

.center-slide {
  margin-top: 140px;
  margin-bottom: 100px;
}
.center-slide .center__tit {
  position: relative;
  z-index: 1;
}
.center-slide .center__tit p {
  color: #666;
}
.center-slide .center__slide {
  margin: -67px -35px 0;
  position: relative;
  z-index: 0;
}
.center-slide .swiper-container {
  position: relative;
  width: 100%;
  padding: 40px 0 57px;
}
.center-slide .swiper-wrapper {
  align-items: flex-end;
}
.center-slide .swiper-slide { /*width: 240px;height: 240px;*/
  transition: 0.3s ease-in;
  margin: 0;
  box-sizing: border-box;
  width: 20%;
}
.center-slide .swiper-slide a {
  display: block;
  transform: scale(0.7) translateY(50px);
  transition: 0.3s ease;
  height: 350px;
}
.center-slide .swiper-slide .img-wrap {
  display: inline-block;
  width: 100%;
  height: 100%;
  border-radius: 40px;
  box-shadow: 15px 15px 50px 0px rgba(0, 0, 0, 0.25);
}
.center-slide .swiper-slide .img {
  width: 100%;
  height: 100%;
  padding: 10px;
  display: inline-block;
  position: relative;
  overflow: hidden;
  z-index: 1;
  background: url("../images/common/ico_photo.png") no-repeat center;
}
.center-slide .swiper-slide img {
  max-width: none;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 43px;
  object-fit: cover;
}
.center-slide .swiper-slide .center--viewmore {
  position: absolute;
  right: -23px;
  bottom: -24px;
  width: 77px;
  height: 77px;
  text-indent: -99999px;
  background: #fff url("../images/main/ico_plus2.svg") no-repeat center;
  border-radius: 50%;
  text-align: center;
  line-height: 50px;
  display: none;
  transition: 0.3s ease;
  z-index: 1;
}
.center-slide .swiper-slide.swiper-slide-active {
  z-index: 1;
}
.center-slide .swiper-slide.swiper-slide-active a {
  transform: scale(1);
}
.center-slide .swiper-slide.swiper-slide-active .img {
  position: relative;
  width: 100%;
}
.center-slide .swiper-slide.swiper-slide-active .center--viewmore {
  display: block;
}
.center-slide .swiper-slide.swiper-slide-active a:hover .center--viewmore {
  transform: rotate(180deg);
  background-color: #FFF9E8;
}
.center-slide .swiper-slide.swiper-slide-active .img-wrap {
  overflow: hidden;
  border-radius: 50px;
  position: relative;
}
.center-slide .swiper-slide.swiper-slide-active .img-wrap::before {
  position: absolute;
  border-top: 25px solid #FFF9E8;
  top: 0;
  left: 0;
  right: 100%;
  transition: 0.3s ease;
  transition-duration: 0.3s;
  content: "";
}
.center-slide .swiper-slide.swiper-slide-active .img-wrap::after {
  position: absolute;
  border-right: 25px solid #FFF9E8;
  top: 0;
  right: 0;
  bottom: 100%;
  transition: 0.3s ease;
  transition-duration: 0.3s;
  content: "";
}
.center-slide .swiper-slide.swiper-slide-active .img-wrap .img::before {
  position: absolute;
  border-bottom: 25px solid #FFF9E8;
  left: 100%;
  right: 0;
  bottom: 0;
  transition: 0.3s ease;
  transition-duration: 0.3s;
  content: "";
  z-index: -1;
}
.center-slide .swiper-slide.swiper-slide-active .img-wrap .img::after {
  position: absolute;
  border-left: 25px solid #FFF9E8;
  top: 100%;
  left: 0;
  bottom: 0;
  transition: 0.3s ease;
  transition-duration: 0.3s;
  content: "";
  z-index: -1;
}
.center-slide .swiper-slide.swiper-slide-active a:hover .img-wrap::before {
  right: 0;
  transition-delay: 0s;
}
.center-slide .swiper-slide.swiper-slide-active a:hover .img-wrap::after {
  bottom: 0;
  transition-delay: 0.2s;
}
.center-slide .swiper-slide.swiper-slide-active a:hover .img::before {
  left: 0;
  transition-delay: 0.4s;
}
.center-slide .swiper-slide.swiper-slide-active a:hover .img::after {
  top: 0;
  transition-delay: 0.6s;
}
.center-slide .swiper-slide.swiper-slide-prev a {
  transform: scale(0.7) translateY(50px) translateX(-25%);
}
.center-slide .swiper-slide.swiper-slide-next a {
  transform: scale(0.7) translateY(50px) translateX(25%);
}
.center-slide .swiper--prev, .center-slide .swiper--next {
  position: absolute;
  bottom: 30%;
  width: 50px;
  height: 50px;
  background-position: center;
  background-repeat: no-repeat;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  text-indent: -99999px;
  background-color: transparent;
  z-index: 1;
}
.center-slide .swiper--prev {
  left: 36%;
  background-image: url("../images/main/ico_left_arrow_big.svg");
}
.center-slide .swiper--next {
  right: 36%;
  background-image: url("../images/main/ico_right_arrow_big.svg");
}

.section08 {
  padding-bottom: 140px;
}

.site__tit h2 {
  display: inline-block;
  font-family: "jalnan";
  font-size: 46px;
}
.site__txt {
  font-size: 24px;
  display: inline-block;
  margin-left: 10px;
  color: #666;
}
.site__slide {
  position: relative;
  margin-top: 20px;
}
.site__slide .swiper-container {
  height: 100%;
}
.site__slide .link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 10px;
  vertical-align: middle;
  box-sizing: border-box;
  box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.25);
  margin-bottom: 7px;
  text-decoration: none;
  transition: 0.3s ease;
}
.site__slide .link span {
  font-size: 24px;
  font-weight: 800;
  text-align: center;
}
.site__slide .link:hover {
  background-color: #FFF9E8;
}
.site__slide .swiper--prev, .site__slide .swiper--next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background-color: #fff;
  background-position: center;
  background-repeat: no-repeat;
  border: 1px solid #ccc;
  border-radius: 50%;
  cursor: pointer;
  z-index: 9;
  text-indent: -99999px;
}
.site__slide .swiper--prev {
  left: -20px;
  background-image: url("../images/main/ico_left-arrow.png");
}
.site__slide .swiper--next {
  right: -20px;
  background-image: url("../images/main/ico_right-arrow.png");
}

/* width */
@media screen and (max-width: 1450px) {
  .visual-bg {
    display: none;
  }
  .visual-txt-box {
    width: 100%;
  }
  .visual-link-box {
    width: 70%;
  }
  .visual-link-box .link-list {
    width: 100%;
  }
  .board-list-wrap {
    flex-wrap: wrap;
  }
  .board-list-wrap .board.notice {
    width: 100%;
  }
  .board-list-wrap .board.data {
    width: calc(100% - 412px);
  }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  .visual-txt-box {
    font-size: 28px;
  }
  .visual-link-box .link-list li a {
    padding: 13px;
  }
  .visual-link-box .link-list li a::before {
    display: none;
  }
  .visual-link-box .tit {
    font-size: 17px;
  }
  .data-link-list {
    gap: 10px;
  }
  .data-link-list .data-link-item {
    width: calc(33.3% - 5px);
  }
  .data-link-list .data-link-txt {
    padding: 20px;
  }
}
@media screen and (max-width: 1024px) {
  .visual {
    width: 100%;
    height: auto;
  }
  .banner {
    width: 100%;
    margin-top: 30px;
  }
  .board-list-wrap .board.data .board-date {
    display: none;
  }
  .board-list-wrap .board.data .board-title {
    max-width: 100%;
  }
  .stats-link-wrap .stats-tab-list {
    height: 250px;
  }
  .stats-link-wrap .btn-box ul {
    flex-wrap: wrap;
  }
  .stats-link-wrap .btn-box li {
    width: calc(33.3% - 12px);
  }
}
@media screen and (max-width: 768px) {
  .main-cont-tit {
    font-size: 27px;
  }
  .data-link-list .data-link-txt .tit {
    font-size: 20px;
  }
  .visual {
    flex-direction: column;
    gap: 40px;
    padding: 20px;
  }
  .visual-bg {
    display: block;
    width: 100%;
    background-position: center;
  }
  .visual-link-box {
    width: 100%;
  }
  .banner {
    height: auto;
    display: block;
  }
  .banner a {
    padding-bottom: 100%;
  }
  .banner img {
    position: absolute;
    left: 0;
    top: 0;
  }
  .banner .banner-control {
    text-align: right;
    display: block;
    position: relative;
    left: 0;
    top: 0;
    margin-top: 10px;
    transform: none;
  }
  .data-link-list {
    flex-wrap: wrap;
    gap: 24px;
  }
  .data-link-list .data-link-item {
    width: 100%;
  }
  .data-link-list .data-link-txt {
    padding: 20px;
  }
  .board-list-wrap .board.data {
    width: 100%;
  }
  .board-banner {
    min-width: auto;
    width: 100%;
    height: auto;
    display: block;
  }
  .board-banner a {
    padding-bottom: 100%;
  }
  .board-banner img {
    position: absolute;
    left: 0;
    top: 0;
  }
  .board-banner .board-banner-control {
    text-align: right;
    display: block;
    position: relative;
    left: 0;
    top: 0;
    margin-top: 10px;
    transform: none;
  }
  .board-list-wrap .board.data .board-title {
    width: calc(100% - 120px);
  }
  .board-list-wrap .board.data .board-date {
    display: inline-block;
  }
}
@media screen and (max-width: 600px) {
  .visual-txt-box {
    font-size: 27px;
  }
  .stats-link-wrap .stats-tab-list {
    height: 320px;
  }
  .stats-link-wrap .btn-box li {
    width: calc(50% - 12px);
  }
}
@media screen and (max-width: 400px) {
  .main-cont-tit {
    font-size: 22px;
  }
  .visual-txt-box .txt1 {
    font-size: 20px;
  }
  .visual-txt-box .txt2 {
    font-size: 17px;
  }
  .visual-bg {
    height: 156px;
  }
  .stats-link-wrap .stats-tab-list {
    height: 510px;
  }
  .stats-link-wrap .btn-box li {
    width: 100%;
  }
  .stats-link-wrap .ico {
    width: 80px;
    height: 80px;
    padding: 0;
  }
  .board-list-wrap .board {
    min-height: 285px;
  }
  .board-list-wrap .board-list li {
    margin-top: 17px;
  }
  .board-list-wrap .board.notice .board-title,
  .board-list-wrap .board.data .board-title {
    width: 100%;
    max-width: 100%;
  }
  .board-list-wrap .board.notice .board-date,
  .board-list-wrap .board.data .board-date {
    display: none;
  }
  .stats-link-wrap .stats-tab-btn {
    font-size: 14px;
  }
}