/* 공모전 공통 */
.mt0 {
  margin-top: 0;
}
@keyframes fadeTxt {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.foundation.competition .banner_wrap {
  padding-top: 80px;
}
.gmarket {
  font-family: "Gmarket";
}
.seemore.wh {
  background-color: #fff;
}
.foundation.competition section.wrap:not(.sub_background) {
  padding-top: 0;
}
.foundation.competition .icn_wrap.wrap {
  padding-top: 240px !important;
  padding-bottom: 120px;
}
.foundation.competition section.wrap.detail {
  padding-top: 220px;
}
.txt_ani {
  opacity: 0;
  transform: translateY(100px);
  animation: fadeTxt 0.8s 0.3s forwards;
}
.competition .section_title {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
}
.competition .section_title .seemore {
  align-self: flex-end;
}
.competition .navbar_intro {
  top: 144px;
}
.competition.foundation .sub_background {
  height: 480px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 80px;
}
.competition.foundation .sub_background .txt_box {
  position: static;
  opacity: 0;
  transform: translate(0, 100px);
  transition:
          opacity 0.8s 0.3s,
          transform 0.8s 0.3s;
}
.competition.foundation .sub_background.active .txt_box {
  opacity: 1;
  transform: translate(0, 0);
}

.competition.foundation .sub_background .txt_box .sb_title {
  font-size: 60px;
  margin-bottom: 24px;
}
.competition.foundation .sub_background .txt_box .sb_title .green {
  vertical-align: baseline;
}
.competition.foundation .sub_background .txt_box p {
  font-size: 20px;
  line-height: 133%;
  margin-top: 0px;
}
.competition .sub_background .img_box {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
}
.competition .sub_background .img_box img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.competition .sub_background.bk_txt .txt_box {
  color: #1d1f25;
}
.competition.foundation .cmp_tab {
  max-width: 1184px;
  margin: 0 auto;
  width: 100%;
}
.competition.foundation .cmp_tab .swiper-wrapper {
  display: flex;
  justify-content: center;
}
.competition.foundation .cmp_tab .swiper-slide {
  text-align: center;
  width: auto;
  flex: 1;
  padding: 0px 20px;
}
.competition.foundation .cmp_tab button {
  font-size: 18px;
  font-weight: 700;
  color: #888;
  position: relative;
}
.competition.foundation .cmp_tab button.active {
  color: #026442;
}
.competition.foundation .cmp_tab .swiper-slide::after {
  right: 0px;
  top: 0;
  content: "";
  width: 1px;
  height: 100%;
  background-color: #888;
  position: absolute;
}
.competition.foundation .cmp_tab .swiper-slide:last-child::after {
  display: none;
}
.competition .space-80 {
  display: flex;
  flex-direction: column;
  gap: 80px;
  margin-top: 80px;
}
.competition .space-80 .board_sch {
  width: 100%;
}
.competition .mv-160 {
  margin: 160px 0;
}

@media screen and (max-width: 1440px) {
  .competition.foundation .inner_1440 {
    padding: 0px 40px;
  }
  .competition .space-80 {
    gap: 40px;
  }
  .competition.foundation .sub_background {
    padding-top: 64px;
  }
  .competition .mv-160 {
    margin: 80px 0;
  }
  .competition .navbar_intro {
    top: 88px;
  }
}
@media screen and (max-width: 768px) {
  .competition.foundation .inner_1440 {
    padding: 0px 16px;
  }
  .foundation.competition .icn_wrap.wrap {
    padding-top: 184px !important;
    padding-bottom: 80px;
  }
  .competition .space-80 {
    margin-top: 40px;
  }
  .foundation.competition .banner_wrap {
    padding-top: 0px;
  }
  .competition .navbar_intro {
    top: 88px;
  }
  .competition.foundation .content {
    margin: 24px 0 0 0;
  }
  .competition.foundation .sub_background .txt_box .sb_title {
    font-size: 40px;
    line-height: 120%;
  }
  .competition.foundation .sub_background .txt_box p {
    font-size: 14px;
    margin-top: 24px;
  }
  .competition.foundation .sub_background {
    height: 400px;
  }
  .competition.foundation .cmp_tab button {
    font-size: 14px;
  }
  .competition.foundation .cmp_tab .swiper-wrapper {
    justify-content: flex-start;
  }
  .competition.foundation .cmp_tab.center .swiper-wrapper {
    justify-content: center;
  }
  .competition.foundation .cmp_tab .swiper-slide {
    min-width: 100px;
    width: auto;
    flex: none;
    padding: 0 10px;
  }
}
.competiton .board_list_wrap {
  margin-top: 80px;
}

.scl #header {
  top: -120px;
}
.reverse-scl #header {
  top: 0px;
}

.competition #header2 {
  height: 120px;
  transition-duration: 0.5s;
  transition-property: background-color, top;
}
.competition #header2.wht .flex_inner {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.competition #header2 .flex_inner {
  border-bottom: 1px solid #dfdfdf;
}
.competition #header2 .logo {
  position: relative;
  z-index: 5;
}
.competition #header2.wht {
  background: linear-gradient(
          180deg,
          rgba(0, 0, 0, 0.2) 0%,
          rgba(0, 0, 0, 0) 100%
  );
}
.competition #header2 .default_theme {
  display: block;
}
.competition #header2 .wht_theme {
  display: none;
}
.competition #header2.wht .default_theme {
  display: none;
}
.competition #header2.wht .wht_theme {
  display: block;
}
.competition #header2.wht #gnb > li > a {
  color: #fff;
}
.competition #header2 #gnb > li:has(.submenu):hover > a::after {
  background-color: transparent;
}
.competition #header2.wht .alarm_wrap .alarm_icn {
  filter: brightness(35);
}
.competition #header2 #gnb {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}
.competition #header2 #gnb > li > a {
  line-height: normal;
  display: flex;
  align-items: center;
  justify-content: center;
}
.competition.scl #header2 {
  top: -120px;
}
.competition.reverse-scl #header2 {
  top: 0px;
}
.competition #header2 .login_btn {
  background-image: none;
  background-color: transparent;
  color: #1d1f25;
  border: 1px solid transparent;
}
.competition #header2 .login_btn:hover {
  border: 1px solid rgba(29, 31, 37, 0.2);
}
.competition #header2.wht .login_btn {
  color: #fff;
}
.competition #header2.wht .login_btn:hover {
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.competition #header2 .login_btn svg {
  width: 16px;
}
.competition #header2 .langding {
  position: relative;
  /* padding-right: 240px; */
}
.competition #header2 .foundation_link {
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0px 10px;
  background-color: transparent;
  transition: width 0.3s ease-in-out;
  border-radius: 20px;
  border: 1px solid transparent;
  width: 40px;
  /* position: absolute;
  right: 0px;
  top: 50%;
  transform: translateY(-50%); */
}
.competition #header2.wht .foundation_link {
  background-color: transparent;
}
.competition #header2 .foundation_link:hover {
  border: 1px solid rgba(29, 31, 37, 0.2);
}
.competition #header2.wht .foundation_link:hover {
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.competition #header2.wht .foundation_link:hover .hover_area img {
  filter: brightness(0) invert(1);
}
.competition #header2 .foundation_link .hover_area {
  width: 0;
  height: 0;
  overflow: hidden;
}
.competition #header2 .foundation_link:hover {
  border-radius: 20px;
  width: 200px;
}
.competition #header2 .foundation_link:hover .hover_area {
  width: auto;
  height: auto;
  margin-left: 10px;
}
.competition_floating {
  position: fixed;
  bottom: 70px;
  right: 0px;
  z-index: 11;
}
.competition_floating .float_list {
  display: flex;
  flex-direction: column;
  box-shadow: 10px 10px 40px 0 rgba(0, 0, 0, 0.2);
}
.competition_floating .float_list button {
  width: 100px;
  height: 100px;
  background-color: #fff;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.competition_floating .float_list button::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  height: 1px;
  background-color: rgba(29, 31, 37, 0.2);
}
.competition_floating .float_list button:last-child::after {
  display: none;
}
.competition_floating .float_list button .icon {
  width: 40px;
  height: 40px;
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.competition_floating .float_list button.float_1 .icon {
  background-image: url(../../img/competition/icn_float_1.svg);
}
.competition_floating .float_list button.float_1:hover .icon {
  background-image: url(../../img/competition/icn_float_1_hover.svg);
}
.competition_floating .float_list button.float_2 .icon {
  background-image: url(../../img/competition/icn_float_2.svg);
}
.competition_floating .float_list button.float_2:hover .icon {
  background-image: url(../../img/competition/icn_float_2_hover.svg);
}
.competition_floating .float_list button.float_3 .icon {
  background-image: url(../../img/competition/icn_float_3.svg);
}
.competition_floating .float_list button.float_4 .icon {
  background-image: url(../../img/competition/icn_float_4.svg);
}
.competition_floating .float_list button.float_4:hover .icon {
  background-image: url(../../img/competition/icn_float_4_hover.svg);
}
.competition_floating .float_list button p {
  font-size: 18px;
  font-weight: 700;
  color: #1d1f25;
}
.competition_floating .float_list button:hover {
  background-color: #026442;
}
.competition_floating .float_list button:hover p {
  color: #fff;
}
@media screen and (max-width: 1440px) {
  .competition #header2 {
    height: 64px;
  }
  .competition #header2 .logo img {
    width: 156px !important;
  }
  .competition .section_title.has_swiper {
    padding-right: 64px;
  }
  .competition_floating {
    right: 12px;
    bottom: 30px;
  }
  .competition_floating .more {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 48px;
    height: 48px;
    background-color: #026442;
    border-radius: 50%;
    margin: 0 auto;
  }
  .competition_floating .more svg {
    color: #fff;
    transition: transform 0.35s ease;
  }
  .competition_floating .more.active svg {
    transform: rotate(45deg);
  }
  .competition_floating .more span {
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    display: block;
    margin-top: -5px;
  }
  .competition_floating .float_list {
    pointer-events: none;
    box-shadow: none;
    position: relative;
    z-index: -1;
    height: 0;
    overflow: hidden;
  }
  .competition_floating .float_list.is_open {
    box-shadow: 10px 10px 40px 0 rgba(0, 0, 0, 0.2);
    height: auto;
    z-index: 10;
  }
  .competition_floating .float_list button {
    opacity: 0;
    transform: translateY(20px);
    transition:
            opacity 0.3s ease,
            transform 0.3s ease,
            background-color 0.3s;
    width: 72px;
    height: 78px;
  }
  .competition_floating .float_list.is_open {
    pointer-events: auto;
    margin-bottom: 20px;
  }
  .competition_floating .float_list button p {
    font-size: 14px;
  }
  .competition_floating .float_list button .icon {
    width: 40px;
    height: 40px;
  }
  .competition_floating .float_list.is_open button {
    opacity: 1;
    transform: translateY(0);
  }
  .competition_floating .float_list.is_open button.float_4 {
    transition-delay: 0s;
  }
  .competition_floating .float_list.is_open button.float_3 {
    transition-delay: 0.04s;
  }
  .competition_floating .float_list.is_open button.float_2 {
    transition-delay: 0.08s;
  }
  .competition_floating .float_list.is_open button.float_1 {
    transition-delay: 0.12s;
  }
}
/* 공모전 메인 */
.mv_roll {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
.mv_roll .mvSwiper {
  width: 100%;
  height: 100%;
}
.mv_roll .swiper-slide {
  position: relative;
  overflow: hidden;
}
.mv_roll .swiper-slide::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  background:
          linear-gradient(180deg, rgba(0, 0, 0, 0) 69.07%, rgba(0, 0, 0, 0.3) 100%),
          rgba(0, 0, 0, 0.3);
}
.mv_roll .swiper-slide video,
.mv_roll .swiper-slide > img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: auto;
  min-width: 100.5%;
  min-height: 100%;
  object-fit: cover;
}
.mv_roll .txt_pack {
  position: absolute;
  bottom: 80px;
  left: 100px;
  z-index: 2;
  color: #fff;
}
.mv_roll .txt_pack .txt_ani_1 {
  font-size: 56px;
  line-height: 1.3;
  opacity: 0;
  transform: translateY(120px);
  text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  font-weight: 700;
  animation: fadeTxt 0.8s ease-out 1.0s forwards;
}
.mv_roll .txt_pack .txt_ani_2 {
  margin-top: 24px;
  font-size: 16px;
  line-height: 2;
  opacity: 0;
  transform: translateY(120px);
  animation: fadeTxt 0.8s ease-out 1.2s forwards;
}
.mv_roll .txt_pack div.txt_ani_2 {
  animation: fadeTxt 0.8s ease-out 1.4s forwards;
}
.mv_roll .txt_pack .txt_ani strong {
  font-weight: 700;
  font-size: 32px;
  display: block;
  margin-bottom: 16px;
}
.mv_roll .txt_pack .mv_roll_btn {
  margin-top: 40px;
  color: #fff;
  padding-bottom: 5px;
  font-weight: 700;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border-bottom: 2px solid #fff;
}
.mv_roll .txt_pack .mv_roll_btn svg {
  fill: #fff;
  width: 16px;
  height: 16px;
}
.mv_roll .swiper-button-prev,
.mv_roll .swiper-button-next {
  color: #fff;
  z-index: 3;
  top: 40%;
  opacity: 0.5;
}
.mv_roll .swiper-button-prev {
  left: 80px;
  background-image: url(../../img/competition/icn_arr_prev_s.svg);
  width: 60px;
  height: 60px;
  background-size: 100%;
}
.mv_roll .swiper-button-next {
  right: 80px;
  background-image: url(../../img/competition/icn_arr_next_s.svg);
  width: 60px;
  height: 60px;
  background-size: 100%;
}
.mv_roll .swiper-button-prev::after,
.mv_roll .swiper-button-next::after {
  display: none;
}
.mv_roll .swiper-pagination {
  justify-content: center;
  position: absolute;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 10px;
}
.mv_roll .swiper-pagination .swiper-pagination-bullet {
  background-color: rgba(255, 255, 255, 0.2);
  filter: drop-shadow(4px 4px 8px rgba(0, 0, 0, 0.5));
  width: 10px;
  height: 10px;
}
.mv_roll .swiper-pagination .swiper-pagination-bullet-active {
  background-color: #fff;
}
@media all and (max-width: 1440px) {
  .mv_roll .swiper-button-prev {
    left: 24px;
  }
  .mv_roll .swiper-button-next {
    right: 24px;
  }
  .mv_roll .txt_pack {
    left: 30px;
    bottom: 80px;
  }
  .mv_roll .txt_pack .txt_ani_1 {
    font-size: 26px;
    line-height: 34px;
  }
  .mv_roll .txt_pack .txt_ani_2 {
    font-size: 14px;
    line-height: 28px;
    margin-top: 20px;
  }
  .mv_roll .txt_pack .txt_ani strong {
    font-size: 18px;
  }
  .mv_roll .txt_pack .mv_roll_btn {
    font-size: 13px;
    margin-top: 20px;
  }
}
@media all and (max-width: 768px) {
  .mv_roll .txt_pack {
    left: 30px;
    bottom: 80px;
  }
  .mv_roll .txt_pack .txt_ani_1 {
    font-size: 26px;
    line-height: 34px;
  }
  .mv_roll .txt_pack .txt_ani_2 {
    font-size: 14px;
    line-height: 28px;
    margin-top: 20px;
  }
  .mv_roll .txt_pack .txt_ani strong {
    font-size: 16px;
  }
  .mv_roll .txt_pack .mv_roll_btn {
    font-size: 13px;
    margin-top: 20px;
  }
  .mv_roll .swiper-pagination {
    bottom: 16px;
  }
  .mv_roll .swiper-button-prev {
    left: 20px;
    width: 40px;
    height: 40px;
  }
  .mv_roll .swiper-button-next {
    right: 20px;
    width: 40px;
    height: 40px;
  }
  .mv_roll .txt_pack .mv_roll_btn svg {
    width: 14px;
  }
}

.competition .main_swiper {
  background: linear-gradient(180deg, #fafafa 0%, #dde6de 50%, #f8f8f8 100%);
  padding-bottom: 30px;
}
.competition .story_section {
  padding: 200px 140px 40px 140px;
}
.competition .main_swiper.bg_wht {
  background: #fff;
}
.competition .story_con {
  position: relative;
  z-index: 10;
}
.competition .story_con .swiper {
  position: relative;
}
.competition .story_con .swiper-slide {
  position: relative;
  width: 392px;
  transform: translate(0, 200px);
  opacity: 0;
  transition:
          transform 0.8s,
          opacity 0.8s;
}
.competition .story_con .swiper-slide:nth-child(1) {
  transition-delay: 0.4s;
}
.competition .story_con .swiper-slide:nth-child(2) {
  transition-delay: 0.5s;
}
.competition .story_con .swiper-slide:nth-child(3) {
  transition-delay: 0.6s;
}
.competition .story_con .swiper-slide:nth-child(4) {
  transition-delay: 0.7s;
}
.competition .story_con.active .swiper-slide {
  transform: translate(0, 0);
  opacity: 1;
}
.competition .story_con .swiper-slide .img {
  position: relative;
  width: 392px;
  height: 220px;
  border-radius: 16px;
  overflow: hidden;
}
.competition .story_con .swiper-slide .img img {
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s;
}
.competition .story_con .swiper-slide:hover .img img {
  transform: scale(1.1);
}
.competition .story_con .swiper-slide .slide-txt {
  padding: 24px 8px 0 8px;
}
.competition .story_con .swiper-slide .type {
  font-size: 18px;
}
.competition .story_con .swiper-slide .tit {
  margin-top: 8px;
  font-size: 28px;
  font-weight: 700;
  color: #2e2e2e;
  word-break: keep-all;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.competition .story_con .swiper-slide .author {
  margin-top: 16px;
  color: #888;
  font-size: 14px;
}
.competition .story_con .swiper-slide .date {
  margin-top: 8px;
  color: #888;
  font-size: 14px;
}
.competition .infinite_txt {
  position: relative;
  width: 100%;
  height: 183px;
  z-index: 10;
  overflow: hidden;
}
.competition .infinite_txt p {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  width: 2060px;
  height: 100px;
}
.competition .infinite_txt p:nth-child(2) {
  left: 2160px;
}
@media all and (max-width: 1440px) {
  .competition .story_con .swiper-slide {
    position: relative;
    width: 280px;
  }
  .competition .story_con .swiper-slide .img {
    position: relative;
    width: 280px;
    height: 157px;
  }
  .competition .story_con .swiper-slide .slide-txt {
    padding: 16px 8px 0 8px;
  }
  .competition .story_con .swiper-slide .type {
    font-size: 16px;
  }
  .competition .story_con .swiper-slide .tit {
    margin-top: 8px;
    font-size: 20px;
  }
  .competition .story_con .swiper-slide .author {
    margin-top: 16px;
    color: #888;
    font-size: 14px;
  }
}
@media all and (max-width: 768px) {
  .competition .infinite_txt {
    height: 48px;
  }
  .competition .infinite_txt p {
    width: 844px;
    height: 48px;
  }
  .competition .infinite_txt p:nth-child(2) {
    left: 900px;
  }
}
.mtit {
  font-size: 56px;
  font-weight: 700;
  color: #1d1f25;
  transform: translate(0, 200px);
  opacity: 0;
  transition:
          transform 0.8s,
          opacity 0.8s;
}
.mtxt {
  color: #888;
  margin-top: 20px;
  font-size: 24px;
  transform: translate(0, 200px);
  opacity: 0;
  transition:
          transform 0.8s 0.2s,
          opacity 0.8s 0.2s;
}
.active .mtit {
  transform: translate(0, 0);
  opacity: 1;
}
.active .mtxt {
  transform: translate(0, 0);
  opacity: 1;
}

@media all and (max-width: 1440px) {
  .competition .story_section {
    padding: 160px 0 40px 24px;
  }
  .competition .story_con .swiper {
    margin: 80px 0 0 0px;
    width: 100%;
  }
}
@media all and (max-width: 768px) {
  .competition .story_section {
    padding: 100px 0px 30px 16px;
  }
  .competition .section_title {
    padding-right: 0;
    margin-bottom: 40px;
    gap: 16px;
  }
  .competition .section_title.has_swiper {
    flex-direction: column;
    padding-right: 16px;
  }
  .competition .story_con .swiper {
    margin: 0;
    margin-top: 40px;
    width: 100%;
  }
  .competition .story_con .swiper-slide {
    width: 280px;
  }
  .competition .story_con .swiper-slide .img {
    width: 280px;
    height: 157px;
  }
  .competition .story_con .swiper-slide .nation {
    margin-top: 24px;
    font-size: 14px;
  }
  .competition .story_con .swiper-slide .tit {
    width: 100%;
    margin-top: 12px;
    font-size: 20px;
  }
  .competition .story_con .swiper-slide .author {
    margin-top: 12px;
  }
  .competition .story_con .swiper-slide .date {
    margin-top: 8px;
  }
  .mtit {
    font-size: 40px;
  }
  .mtxt {
    margin-top: 16px;
    font-size: 16px;
    word-break: keep-all;
  }
  .competition .story_con .swiper-slide .type {
    font-size: 16px;
  }
}

.competition .card_fade {
  /* overflow: hidden; */
  display: flex;
  flex-wrap: wrap;
  gap: 48px;
}
.competition .card_fade.gap-32 {
  gap: 32px;
}
.competition .card_fade .ani_card {
  display: inline-block;
  flex: 0 0 calc((100% - 40px) / 3);
  max-width: calc((100% - 40px) / 3);
  min-height: 248px;
  border: 1px solid #e5e5e5;
  border-radius: 20px;
  padding: 50px 40px;
  overflow: hidden;
  transform: translateY(70px);
  opacity: 0;
  transition:
          transform 0.7s,
          opacity 0.7s,
          border-color 0.2s;
}
/* 3열 (기본) 딜레이 */
.competition .card_fade .ani_card:nth-of-type(3n + 1) {
  transition-delay: 0.1s, 0.1s, 0s;
}
.competition .card_fade .ani_card:nth-of-type(3n + 2) {
  transition-delay: 0.2s, 0.2s, 0s;
}
.competition .card_fade .ani_card:nth-of-type(3n) {
  transition-delay: 0.3s, 0.3s, 0s;
}
.competition .card_fade .ani_card.active {
  transform: translateY(0);
  opacity: 1;
}

/* 2열 */
.competition .card_fade.card_fade_2.gap-32 .ani_card {
  flex: 0 0 calc((100% - 32px) / 2);
  max-width: calc((100% - 32px) / 2);
}
.competition .card_fade.card_fade_2 .ani_card {
  flex: 0 0 calc((100% - 48px) / 2);
  max-width: calc((100% - 48px) / 2);
}
.competition .card_fade.card_fade_2 .ani_card:nth-of-type(n) {
  transition-delay: 0s, 0s, 0s;
}
.competition .card_fade.card_fade_2 .ani_card:nth-of-type(2n + 1) {
  transition-delay: 0.1s, 0.1s, 0s;
}
.competition .card_fade.card_fade_2 .ani_card:nth-of-type(2n) {
  transition-delay: 0.2s, 0.2s, 0s;
}

/* 4열 */
.competition .card_fade.card_fade_4 {
  gap: 32px 40px;
}
.competition .card_fade.card_fade_4 .ani_card {
  flex: 0 0 calc((100% - 120px) / 4);
  max-width: calc((100% - 120px) / 4);
}
.competition .card_fade.card_fade_4 .ani_card:nth-of-type(n) {
  transition-delay: 0s, 0s, 0s;
}
.competition .card_fade.card_fade_4 .ani_card:nth-of-type(4n + 1) {
  transition-delay: 0.1s, 0.1s, 0s;
}
.competition .card_fade.card_fade_4 .ani_card:nth-of-type(4n + 2) {
  transition-delay: 0.2s, 0.2s, 0s;
}
.competition .card_fade.card_fade_4 .ani_card:nth-of-type(4n + 3) {
  transition-delay: 0.3s, 0.3s, 0s;
}
.competition .card_fade.card_fade_4 .ani_card:nth-of-type(4n) {
  transition-delay: 0.4s, 0.4s, 0s;
}
.competition .card_fade .ani_card:hover {
  border-color: #00854a;
}

.competition .card_fade .ani_card .class {
  font-family: "spoqa_bold";
  position: relative;
  margin-bottom: 40px;
}
.competition .card_fade .ani_card .class span.color {
  color: #00854a;
  margin-right: 20px;
}
.competition .card_fade .ani_card .tit {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 0 0 60px;
  word-break: break-all;
}
.competition .card_fade .ani_card .date {
  color: #888;
  position: relative;
  display: inline-block;
  padding-right: 32px;
}
@media screen and (max-width: 1440px) {
  /* 3열 → 1열 */
  .competition .card_fade .ani_card {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .competition .card_fade .ani_card:nth-of-type(n) {
    transition-delay: 0.1s, 0.1s, 0s;
  }

  /* 4열 → 2열 */
  .competition .card_fade.card_fade_4 .ani_card {
    flex: 0 0 calc((100% - 40px) / 2);
    max-width: calc((100% - 40px) / 2);
  }
  .competition .card_fade.card_fade_4 .ani_card:nth-of-type(n) {
    transition-delay: 0s, 0s, 0s;
  }
  .competition .card_fade.card_fade_4 .ani_card:nth-of-type(2n + 1) {
    transition-delay: 0.1s, 0.1s, 0s;
  }
  .competition .card_fade.card_fade_4 .ani_card:nth-of-type(2n) {
    transition-delay: 0.2s, 0.2s, 0s;
  }
  /* 2열 → 1열 */
  .competition .card_fade.card_fade_2 .ani_card {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .competition .card_fade.card_fade_2 .ani_card:nth-of-type(n) {
    transition-delay: 0.1s, 0.1s, 0s;
  }
}
@media screen and (max-width: 768px) {
  .competition .card_fade {
    padding: 40px 15px 0;
    gap: 20px 0;
  }
  /* 전체 1열 */
  .competition .card_fade .ani_card,
  .competition .card_fade.card_fade_2 .ani_card,
  .competition .card_fade.card_fade_4 .ani_card {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding: 30px 20px;
    border-radius: 16px;
    min-height: auto;
  }
  .competition .card_fade.card_fade_2.gap-32 .ani_card {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  /* 딜레이 일괄 리셋 */
  .competition .card_fade .ani_card:nth-of-type(n),
  .competition .card_fade.card_fade_2 .ani_card:nth-of-type(n),
  .competition .card_fade.card_fade_4 .ani_card:nth-of-type(n) {
    transition-delay: 0.1s, 0.1s, 0s;
  }

  .competition .card_fade .ani_card .class {
    margin-bottom: 20px;
  }

  .competition .card_fade .ani_card .tit {
    margin: 0 0 28px;
  }

  .competition .card_fade .ani_card .class span.color {
    margin-right: 12px;
  }

  .competition .card_fade .ani_card .date {
    padding-right: 30px;
  }
  .competition .card_fade.gap-32 {
    gap: 16px;
  }
}
.competition .notice_section {
  background:
          linear-gradient(
                  186deg,
                  rgba(204, 204, 204, 0) 9.6%,
                  rgba(204, 204, 204, 0.28) 48.39%,
                  rgba(204, 204, 204, 0.4) 60.18%,
                  rgba(204, 204, 204, 0) 80.37%
          ),
          rgba(236, 242, 232, 0.7);
  background-blend-mode: multiply, normal;
  background-image: url(../../img/competition/cmp_notice_bg.png);
  background-size: cover;
  background-position: center;
}
.competition .notice_section .notice_con {
  padding: 234px 160px;
}
.competition .card_fade.notice_card .ani_card {
  border-radius: 16px;
  padding: 32px;
  background-color: #fff;
  min-height: 166px;
  display: flex;
  align-items: center;
}
.competition .card_fade.notice_card .ani_card .notice_wrap {
  display: flex;
  align-items: center;
}
.competition .card_fade.notice_card .ani_card .notice_wrap .date {
  font-size: 48px;
  text-align: center;
  color: #1d1f25;
  font-weight: 700;
}
.competition .card_fade.notice_card .ani_card .notice_wrap .date span {
  color: #888;
  display: block;
  font-size: 20px;
}
.competition .card_fade.notice_card .ani_card .notice_wrap .date p {
  height: 40px;
}
.competition .card_fade.notice_card .ani_card .notice_wrap .box {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.competition .card_fade.notice_card .ani_card .notice_wrap .box .type {
  padding: 8px 16px;
  font-size: 14px;
  font-weight: 500;
  border-radius: 4px;
  align-self: baseline;
}
.competition .card_fade.notice_card .ani_card .notice_wrap .box .type.ing {
  border: 1px solid #00854a;
  background-color: #f5f9e8;
  color: #00854a;
}
.competition .card_fade.notice_card .ani_card .notice_wrap .box .type.end {
  border: 1px solid rgba(29, 31, 37, 0.2);
  background-color: rgba(29, 31, 37, 0.05);
  color: #888;
}
.competition .card_fade.notice_card .ani_card .notice_wrap .box p {
  font-size: 24px;
  font-weight: 700;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}
.competition .card_fade.notice_card .ani_card:hover .notice_wrap .box p {
  color: #00854a;
}
@media screen and (max-width: 1440px) {
  .competition .notice_section .notice_con {
    padding: 100px 24px 120px;
  }
  .competition .section_title {
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 768px) {
  .competition .notice_section .notice_con {
    padding: 100px 24px;
  }

  .competition .card_fade.notice_card .ani_card .notice_wrap {
    flex-direction: column;
    align-items: flex-start;
    flex: 1;
    height: 100%;
    justify-content: center;
  }
  .competition .card_fade.notice_card .ani_card .notice_wrap .date {
    order: 2;
  }
  .competition .card_fade.notice_card .ani_card .notice_wrap .box {
    order: 1;
  }
  .competition .card_fade.notice_card .ani_card .notice_wrap .date {
    padding-right: 0;
    display: flex;
    align-items: center;
    font-weight: 400;
    font-size: 14px;
    margin-top: 8px;
  }
  .competition .card_fade.notice_card .ani_card .notice_wrap .date p {
    height: auto;
    color: #888;
    display: flex;
  }
  .competition .card_fade.notice_card .ani_card .notice_wrap .date p em {
    font-weight: 400;
  }
  .competition .card_fade.notice_card .ani_card .notice_wrap .date span {
    font-size: 14px;
  }
  .competition .card_fade {
    padding: 0;
  }
  .competition .card_fade.notice_card .ani_card {
    flex: 0 0 100%;
    max-width: 100%;
    flex: 0 0 100%;
    max-width: none;
    padding: 24px 16px;
  }

  .competition .card_fade.notice_card .ani_card .notice_wrap .box .type {
    padding: 8px;
    min-width: 56px;
    font-size: 12px;
    text-align: center;
  }
  .competition .card_fade.notice_card .ani_card .notice_wrap .box p {
    font-size: 18px;
  }
}

.competition .invite_wrap {
  height: 100%;
  min-height: calc(100vh - 100px);
  background-color: #e8e8ea;
  display: flex;
  flex-direction: column;
  /* background-image: url(../../img/competition/cmp_invite_obj.png);
  background-position: 50% 73%;
  background-repeat: no-repeat; */
}
.competition .page_title {
  padding: 220px 0 120px;
  text-align: center;
}
.competition .page_title .title {
  font-size: 60px;
  font-weight: 700;
}
.foundation.competition .ani_line {
  top: 50%;
  width: 100%;
}

.competition .invite_wrap .txt_card {
  max-width: 1168px;
  width: 100%;
  border-radius: 40px 40px 0 0;
  background: #fff;
  box-shadow: 10px 10px 40px 0 rgba(0, 0, 0, 0.2);
  padding: 100px 112px;
  margin: 0 auto;
  flex: 1;
  text-align: center;
  position: relative;
  z-index: 3;
}
/*.competition .invite_wrap .txt_card .txt_ani {*/
/*  white-space: pre-line;*/
/*}*/

@media screen and (max-width: 1440px) {
  .competition .invite_wrap .txt_card {
    width: 95%;
    padding: 100px 40px;
  }
}

@media screen and (max-width: 768px) {
  .competition .page_title {
    padding: 184px 0 80px;
  }
  .competition .page_title.img_title {
    padding: 134px 0 70px;
  }
  .foundation.competition section.wrap.detail {
    padding-top: 184px;
  }
  .competition .page_title .title {
    font-size: 28px;
  }
  .competition .invite_wrap .txt_card {
    padding: 40px 16px;
  }
}
.competition .thumbnail_card .ani_card {
  padding: 0;
  display: flex;
  min-height: auto;
}

.competition .thumbnail_card .ani_card .thumbnail {
  width: 348px;
  height: 196px;
  overflow: hidden;
  position: relative;
  flex-shrink: 0;
}

.competition .thumbnail_card .ani_card .thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.competition .thumbnail_card .txt_box {
  padding: 24px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  height: 196px;
}
.competition .thumbnail_card .txt_box .type {
  font-size: 16px;
  font-weight: 500;
}
.competition .thumbnail_card .txt_box .title {
  font-size: 20px;
  margin-top: 8px;
  white-space: pre-line;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.competition .thumbnail_card .txt_box .author {
  display: block;
  margin-top: auto;
  color: #888;
  font-size: 14px;
}
.competition .thumbnail_card .txt_box .date {
  color: #888;
  margin-top: 8px;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  .competition .thumbnail_card .ani_card {
    padding: 0 !important;
    flex-direction: column;
  }
  .competition .thumbnail_card .ani_card .thumbnail {
    width: 100%;
    height: 184px;
    overflow: hidden;
    position: relative;
  }

  .competition .thumbnail_card .txt_box {
    padding: 24px 16px;
    display: block;
    height: auto;
    overflow: visible;
  }
  .competition .thumbnail_card .txt_box .type {
    font-size: 14px;
  }
  .competition .thumbnail_card .txt_box .title {
    font-size: 16px;
  }
  .competition .thumbnail_card .txt_box .author {
    margin-top: 12px;
    font-size: 12px;
  }
  .competition .thumbnail_card .txt_box .date {
    margin-top: 4px;
    font-size: 12px;
  }
}

.competition .board_wrap {
  text-align: center;
  max-width: 1168px;
  margin: 0 auto;
}
.competition .board_wrap .board_title {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.competition .board_wrap .board_title h4 {
  font-size: 24px;
}
.competition .board_wrap .board_title h2 {
  font-size: 48px;
  font-weight: 700;
  line-height: 116%;
  word-break: keep-all;
  overflow-wrap: break-word;
  white-space: normal;
}
.competition .board_wrap .board_title .author_wrap {
  display: flex;
  justify-content: center;
  gap: 24px;
}
.competition .board_wrap .board_title .author_wrap span {
  font-size: 18px;
}
.competition .board_wrap .board_con {
  /*padding-top: 120px;*/
  padding-bottom: 80px;
}

.competition .board_wrap .board_con .author_info {
  padding-bottom: 40px;
  border-bottom: 1px solid rgba(29, 31, 37, 0.2);
}
.competition .board_wrap .board_con .author_info .author_txt {
  font-size: 24px;
  line-height: 133%;
  color: #0061af;
  font-weight: 700;
}
.competition .board_wrap .board_con .author_info .author_name {
  font-size: 24px;
  font-weight: 700;
  display: block;
  margin-top: 40px;
  text-align: left;
}
.competition .board_wrap .board_con .editor_box {
  padding-top: 40px;
  text-align: left;
}

@media screen and (max-width: 1440px) {
  .competition .board_wrap .board_title {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
  .competition .board_wrap .board_title h4 {
    font-size: 16px;
  }
  .competition .board_wrap .board_title h2 {
    font-size: 28px;
  }
  .competition .board_wrap .board_title .author_wrap span {
    font-size: 14px;
  }
  .competition .board_wrap .board_con {
    padding-top: 60px;
    padding-bottom: 24px;
  }

  .competition .board_wrap .board_con .author_info {
    padding-bottom: 40px;
    border-bottom: 1px solid rgba(29, 31, 37, 0.2);
  }
  .competition .board_wrap .board_con .author_info .author_txt {
    font-size: 24px;
  }
  .competition .board_wrap .board_con .author_info .author_name {
    font-size: 16px;
    margin-top: 24px;
  }
  .competition .board_wrap .board_con .editor_box {
    padding-top: 24px;
  }
}

@media screen and (max-width: 768px) {
  .competition .board_wrap .board_title h2 {
    font-size: 28px;
  }
  .competition .board_wrap .board_title .author_wrap {
    flex-direction: column;
    gap: 8px;
  }
  .competition .board_wrap .board_title .author_wrap span {
    font-size: 14px;
  }
  .competition .board_wrap .board_con .author_info {
    padding-bottom: 24px;
  }
  .competition .board_wrap .board_con .author_info .author_txt {
    font-size: 20px;
  }
  .competition .board_wrap .board_con .aut hor_info .author_name {
    font-size: 16px;
    margin-top: 24px;
  }
  .competition .board_wrap .board_con .editor_box {
    padding-top: 24px;
  }
}

.card_fade .docu {
  position: relative;
  transform: translateY(70px);
  transition-property: transform, opacity, border;
  transition-duration: 0.7s, 0.7s, 0.2s;
  opacity: 0;
  overflow: hidden;
}
.competition .card_fade .ani_card.docu {
  padding: 0;
  border: none;
  border-radius: 0;
}
.card_fade .docu .img {
  border-radius: 16px;
  overflow: hidden;
  width: 100%;
  height: 450px;
  position: relative;
  border: 1px solid #ddd;
}
.card_fade .docu .img img {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  object-fit: cover;
}
.card_fade .docu.active {
  opacity: 1;
  transform: translateY(0);
}
.card_fade .docu:nth-of-type(4n-2) {
  transition-delay: 0.3s;
}
.card_fade .docu:nth-of-type(4n-1) {
  transition-delay: 0.4s !important;
}
.card_fade .docu:nth-of-type(4n) {
  margin-right: 0;
  transition-delay: 0.5s !important;
}

/* 2025-05-20 수정 s */
.card_fade .docu .hover {
  width: 100%;
  height: 100%;
  background: #2e9f62;
  position: absolute;
  top: 0;
  left: 0;
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: all 0.3s;
  z-index: 1;
}
.card_fade .docu .hover button {
  display: flex;
  align-items: center;
  width: calc(100% - 120px);
  margin: 0 auto;
  padding: 24px 0;
  color: #fff;
  font-size: 24px;
  position: relative;
  gap: 12px;
  cursor: pointer;
  border-top:1px solid rgba(255, 255, 255, 0.20);
  border-bottom: 1px solid rgba(255, 255, 255, 0.20);
}
.card_fade .docu .hover button.pdf::before {
  content: "";
  width: 24px;
  height: 24px;
  display: block;
  background-image: url(../../img/icn/icn_pdf.svg);
  background-size: cover;
}
.card_fade .docu .hover button.ebook::before {
  content: "";
  width: 24px;
  height: 24px;
  display: block;
  background-image: url(../../img/icn/icn_download.svg);
  background-size: cover;
}
.card_fade .docu .hover button.video::before {
  content: "";
  width: 24px;
  height: 24px;
  display: block;
  background-image: url(https://foundation.miraeasset.com/common_ko/images/ico-video.svg);
  background-size: cover;
}
.card_fade .docu .hover button + button {
  border-top: 1px solid rgba(255, 255, 255, 0.4);
}
.card_fade .docu:hover .hover {
  opacity: 1;
}
.card_fade .docu .flex_txt {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 24px;
}
.card_fade .docu .flex_txt .content_stit {
  line-height: 130%;
  font-size: 24px;
  font-weight: 700;
}
.competition .board_list li {
  padding: 32px;
}
.competition .board_list.arc li {
  padding: 0;
}
.competition .board_list.arc li a {
  padding: 32px;
}
.competition .board_list.arc li a .list_title p {
  font-size: 24px;
}
.competition .board_list.arc li.open .list_title p {
  font-weight: 700;
  border-bottom: none;
  text-decoration: underline;
}
.competition .board_list li a .list_title p {
  font-size: 24px;
  padding-bottom: 8px;
}
.competition .board_list.arc .arc_con {
  padding: 32px;
  border-top: 1px solid rgba(29, 31, 37, 0.2);
}
.competition .board_list.arc .arc_con p {
  white-space: inherit;
}
.competition .board_list li a:hover .list_title p {
  /*border-bottom: none;*/
  /*text-decoration: underline;*/
  /*text-underline-offset: 8px;*/

  border-bottom: 1px solid #1D1F25;
}
@media all and (max-width: 1440px) {
  .competition .board_list li a .list_title {
    flex-direction: column;
    align-items: flex-start;
  }
  .competition .board_list.arc li a .list_title {
    flex-direction: row;
    align-items: center;
  }
  .card_fade .docu .flex_txt .content_stit {
    font-size: 20px;
  }
  .competition .board_list li {
    padding: 20px 16px;
  }
  .competition .board_list.arc li {
    padding: 0;
  }
  .competition .board_list.arc li a {
    padding: 20px 16px;
  }
  .competition .board_list.arc li a .list_title p {
    font-size: 16px;
  }
  .competition .board_list li a .list_title p {
    font-size: 16px;
  }
  .competition .board_list.arc .arc_con {
    padding: 20px 16px;
  }
  .competition .board_list.arc .arc_con p {
    font-size: 14px;
  }
}
@media all and (max-width: 768px) {
  .card_fade .docu {
    width: 100%;
    position: relative;
  }
  .competition .card_fade.card_fade_4 {
    gap: 24px 0;
  }
  .card_fade .docu {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
    display: flex !important;
    gap: 16px;
  }
  .card_fade .docu .img {
    display: flex;
    height: 63vw;
    width: calc(50% - 18px);
    min-width: 40vw;
  }
  .card_fade .docu .img img {
    position: static;
    transform: translate(0, 0);
    order: 1;
  }
  .card_fade .docu .hover {
    display: none !important;
  }
  .card_fade .docu .m_hover {
    width: 100%;
    transform: translate(0, 0);
    position: static;
    background-color: #fff;
    opacity: 1;
    display: flex !important;
    padding: 0;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    height: auto;
    gap: 8px;
  }
  .card_fade .docu .m_hover button {
    background-color: #2e9f62;
  }
  .card_fade .docu .m_hover button + button {
    border: none;
  }
  .card_fade .docu .m_card_info {
    display: flex !important;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
  }
  .card_fade .docu .m_card_info .content_stit {
    margin-bottom: 16px;
    font-size: 16px;
    font-weight: 700;
    line-height: 20px;
  }
  .card_fade .docu .hover button {
    width: auto;
    margin: 0;
    padding: 8px 10px;
    color: #fff;
    font-size: 12px;
    width: 138px;
    border-radius: 8px;
  }
  .card_fade .docu .hover button::before {
    width: 16px !important;
    height: 16px !important;
  }
  .competition .board_list li a {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .competition .board_list.arc li a {
    flex-direction: row;
  }
  .competition .board_list li a .list_title:has(span) p {
    max-width: none;
  }
  .competition .board_list.arc li a .list_title p {
    max-width: none;
    white-space: wrap;
    text-overflow: initial;
  }
  .competition .board_list li a .list_title p {
    max-width: none;
    white-space: normal;
    text-overflow: clip;
    overflow: visible;
  }
}

/* 공모요강 */
.contest_info .info_title {
  display: block;
  text-align: center;
  padding-bottom: 60px;
  font-size: 40px;
  font-weight: 700;
  border-bottom: 2px solid rgba(29, 31, 37, 0.2);
}

.contest_info .info_con {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.contest_info .info_con.mt32 {
  margin-top: 32px;
}

.contest_info .info_flex .info_cell {
  padding: 32px 0;
  display: flex;
}
.contest_info .info_flex .info_cell.not_flex {
  display: block;
  padding: 24px;
}
.contest_info .info_flex .info_cell.not_flex .not_flex_txt strong {
  margin-bottom: 8px;
  font-size: 18px;
  display: block;
}
.contest_info .info_flex .info_cell.not_flex .not_flex_txt p {
  font-size: 14px;
  line-height: 22px;
}

.contest_info .info_flex .info_cell.not_flex .not_flex_txt.fec p {
  font-size: 18px !important;
}

.contest_info .info_flex .info_cell {
  border-bottom: 1px solid rgba(29, 31, 37, 0.2);
}

.contest_info .info_flex .info_cell .left {
  min-width: 280px;
}

.contest_info .info_flex .info_cell .left .left_title {
  font-size: 28px;
  font-weight: 700;
}
.contest_info .info_flex .info_cell .right ul li + li {
  margin-top: 16px;
}
.contest_info .info_flex .info_cell .right ul li p {
  position: relative;
  font-size: 18px;
  line-height: 144%;
}
/*.contest_info .info_flex .info_cell .right ul li p::before {*/
/*  content: "";*/
/*  display: block;*/
/*  position: absolute;*/
/*  top: 10px;*/
/*  left: -14px;*/
/*  width: 6px;*/
/*  height: 6px;*/
/*  background-color: #1d1f25;*/
/*  border-radius: 50%;*/
/*}*/
.contest_info .info_flex .info_cell .right.dot_none ul li p::before {
  display: none;
}
.contest_info .table_title {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 24px;
}
.contest_info .table_title h2 {
  font-size: 28px;
  line-height: 114%;
}
.contest_info .table_title .sub_flex {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
}
.contest_info .table_title .sub_flex .txt p {
  font-size: 18px;
  line-height: 144%;
}
.contest_info .table_title .sub_flex .btn_wrap .btn {
  padding: 16px 24px;
  border-radius: 100px;
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  background-color: #1d1f25;
}
.competition .board_table table {
  border-top: 1px solid rgba(29, 31, 37, 0.2);
}
.competition .board_table th {
  background-color: #effbff;
  color: #1d1f25;
  border-right: 1px solid rgba(29, 31, 37, 0.2);
  text-align: left;
  padding: 0px 24px;
}
.competition .board_table th:last-child {
  border-right: none;
}

.competition .board_table tbody tr td {
  padding: 16px 24px;
  border-right: 1px solid rgba(29, 31, 37, 0.2);
  text-align: left;
}
.competition .board_table tbody tr td .table_txt {
  font-size: 16px;
  line-height: 150%;
}

.competition .board_table.fec tbody tr td .table_txt {
  font-size: 18px;
}

.competition .board_table tbody tr td:last-child {
  border-right: none;
}
.competition.foundation .table_info {
  margin: 0;
}
.competition .info_list.list_6 .item {
  width: 16.6%;
}
.competition .info_list .item:last-child {
  padding-right: 0 !important;
}
.competition .info_list .icn_desc p {
  font-weight: 700;
  font-size: 18px;
}
.competition .info_list .icn_desc span {
  font-size: 16px;
  line-height: 150%;
}

.competition .contest_flex {
  display: flex;
  gap: 80px;
}
.competition .contest_flex .notice_item {
  width: calc((100% - 40px) / 2);
  display: flex;
  flex-direction: column;
}
.competition .contest_flex .notice_item h4 {
  display: block;
  padding-bottom: 32px;
  border-bottom: 2px solid rgba(29, 31, 37, 0.2);
  font-size: 32px;
  text-align: center;
}
.competition .contest_flex .notice_item .notice_con {
  padding-top: 32px;
  padding-bottom: 32px;
  border-bottom: 1px solid rgba(29, 31, 37, 0.2);
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.competition .contest_flex .notice_item .notice_con .txt + .txt {
  margin-top: 8px;
}
.competition .contest_flex .notice_item .notice_con .txt {
  font-size: 18px;
  line-height: 144%;
  display: flex;
  gap: 10px;
}
.competition .contest_flex .notice_item .notice_con .txt em {
  font-weight: 400;
}

@media screen and (max-width: 1440px) {
  /* 공모요강 */
  .contest_info .info_title {
    padding-bottom: 40px;
    font-size: 28px;
  }

  .contest_info .info_con {
    gap: 32px;
  }
  .contest_info .info_con.mt32 {
    margin-top: 32px;
  }

  .contest_info .info_flex .info_cell {
    padding: 24px 0;
  }
  .contest_info .info_flex .info_cell.not_flex .not_flex_txt strong {
    font-size: 16px;
  }
  .contest_info .info_flex .info_cell.not_flex .not_flex_txt p {
    font-size: 14px;
  }

  .contest_info .info_flex .info_cell .left {
    min-width: 120px;
  }

  .contest_info .info_flex .info_cell .left .left_title {
    font-size: 16px;
  }
  .contest_info .info_flex .info_cell .right ul li p {
    font-size: 14px;
    line-height: 22px;
  }
  .contest_info .info_flex .info_cell .right ul li p::before {
    top: 6px;
  }
  .contest_info .table_title h2 {
    font-size: 16px;
  }
  .contest_info .table_title .sub_flex {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .contest_info .table_title .sub_flex .txt p {
    font-size: 14px;
    line-height: 144%;
  }
  .contest_info .table_title .sub_flex .btn_wrap {
    margin-top: 16px;
    text-align: center;
    align-self: center;
    width: 100%;
  }
  .contest_info .table_title .sub_flex .btn_wrap .btn {
    padding: 16px 24px;
    font-size: 14px;
    width: 100%;
    max-width: 328px;
  }
  .competition .board_table th {
    font-size: 14px;
  }
  .competition .board_table table a,
  .board_table table button {
    font-size: 14px;
  }
  .competition .board_table tbody tr td .table_txt {
    font-size: 14px;
    line-height: 150%;
  }
  .foundation.competition .table_info li .info_list.icn.list_6 .item {
    width: calc((100% - 40px) / 3);
    padding: 0;
  }
  .foundation.competition
  .table_info
  li
  .info_list.icn.list_6
  .item:not(:first-child) {
    padding-left: 0px;
  }
  .foundation.competition
  .table_info
  li
  .info_list.icn.list_6
  .item:nth-child(3n) {
    padding-right: 0;
  }
  .foundation.competition
  .table_info
  li
  .info_list.icn.list_6
  .item:last-child {
    padding-right: 0;
  }
  .foundation.competition
  .table_info
  li
  .info_list.icn.list_6
  .item:nth-child(3n)::after {
    display: none;
  }
  .foundation.competition .table_info li .info_list.icn.list_6 .item::after {
    top: 47px;
    right: -32px;
  }
  .foundation.competition .table_info li .info_list.icn.list_6 .item .img_box {
    width: 94px;
    margin: 0 auto;
  }
  .competition .info_list .item:last-child {
    padding-right: 0 !important;
  }
  .competition .info_list .icn_desc p {
    font-size: 16px;
  }
  .competition .info_list .icn_desc span {
    font-size: 14px;
  }

  .competition .contest_flex {
    display: flex;
    gap: 40px;
    flex-direction: column;
  }
  .competition .contest_flex .notice_item {
    width: 100%;
  }
  .competition .contest_flex .notice_item h4 {
    padding-bottom: 24px;
    font-size: 24px;
  }
  .competition .contest_flex .notice_item .notice_con {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .competition .contest_flex .notice_item .notice_con .txt {
    font-size: 14px;
    gap: 5px;
  }
  .contest_info .table_title {
    margin-bottom: 16px;
  }
}

@media screen and (max-width: 768px) {
  .contest_info .info_title {
    font-size: 24px;
  }
  .contest_info .info_flex .info_cell {
    flex-direction: column;
    gap: 16px;
  }
  .contest_info .info_flex .info_cell .right ul li p {
    margin-left: 24px;
  }
  .contest_info .info_flex .info_cell .right.dot_none ul li p {
    margin-left: 0;
  }
}

.card_fade.award_card .ani_card {
  padding: 24px;
  display: flex;
  gap: 32px;
}
.card_fade.award_card .ani_card .thumbnail {
  width: 200px;
  height: 200px;
  position: relative;
  flex-shrink: 0;
  overflow: hidden;
}
.card_fade.award_card .ani_card .thumbnail img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-fit: cover;
}

.card_fade.award_card .ani_card .type {
  font-size: 24px;
  font-weight: 700;
  display: block;
  margin-bottom: 24px;
}
.card_fade.award_card .ani_card .txt_wrap {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.card_fade.award_card .ani_card .txt_wrap .bar_txt {
  display: flex;
  gap: 16px;
}
.card_fade.award_card .ani_card .txt_wrap .bar_txt .title {
  min-width: 72px;
  font-size: 18px;
  font-weight: 700;
  position: relative;
}
.card_fade.award_card .ani_card .txt_wrap .bar_txt .title::after {
  content: "";
  height: 16px;
  width: 1px;
  position: absolute;
  right: 0;
  top: 5px;
  background-color: rgba(29, 31, 37, 0.2);
}
.card_fade.award_card .ani_card .txt_wrap .bar_txt .desc span {
  display: block;
  color: #888;
  font-size: 18px;
  line-height: 140%;
}

@media screen and (max-width: 768px) {
  .card_fade.award_card .ani_card {
    padding: 24px 16px;
    gap: 24px;
    flex-direction: column;
  }
  .card_fade.award_card .ani_card .thumbnail {
    width: calc(100% - 80px);
    aspect-ratio: 1 / 1;
    height: auto;
    position: relative;
    flex-shrink: 0;
    overflow: hidden;
    margin: 0 auto;
  }
  .card_fade.award_card .ani_card .thumbnail img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    width: 100%;
    height: 100%;
  }

  .card_fade.award_card .ani_card .type {
    font-size: 20px;
    margin-bottom: 16px;
  }
  .card_fade.award_card .ani_card .txt_wrap {
    gap: 8px;
  }

  .card_fade.award_card .ani_card .txt_wrap .bar_txt {
    display: flex;
    gap: 16px;
  }
  .card_fade.award_card .ani_card .txt_wrap .bar_txt .title {
    min-width: 50px;
    font-size: 14px;
  }
  .card_fade.award_card .ani_card .txt_wrap .bar_txt .title::after {
    top: 0px;
  }
  .card_fade.award_card .ani_card .txt_wrap .bar_txt .desc span {
    font-size: 14px;
  }
}

.cmp_tab_title {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding-bottom: 80px;
  border-bottom: 1px solid rgba(29, 31, 37, 0.2);
}
.cmp_tab_title h4 {
  font-size: 40px;
  font-weight: 700;
}
.cmp_tab_title span {
  font-size: 24px;
}
.competition .dongari_list .item {
  padding: 80px 0;
  border-bottom: 1px solid rgba(29, 31, 37, 0.2);
  display: flex;
  justify-content: space-between;
}
.competition .dongari_list .item .logo {
  width: 200px;
  height: 200px;
  overflow: hidden;
  position: relative;
  flex-shrink: 0;
  opacity: 0;
  transform: translateY(100px);
  transition:
          opacity 0.6s ease,
          transform 0.6s ease;
}
.competition .dongari_list .item.active .logo {
  opacity: 1;
  transform: translateY(0);
}
.competition .dongari_list .item .item_info {
  width: calc(100% - 280px);
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.competition .dongari_list .item .logo img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
}
.competition .dongari_list .arc_box {
  margin-top: 16px;
}
.competition .dongari_list .arc_box .arc_open_btn {
  padding-right: 40px;
  font-size: 18px;
  font-weight: 700;
  position: relative;
}

.competition .dongari_list .arc_box .arc_open_btn::after {
  content: "";
  position: absolute;
  top: 0;
  right: 16px;
  width: 24px;
  height: 24px;
  background-image: url(../../img/icn/icn_drop_down.png);
  background-size: 100%;
  transition: transform 0.2s;
}
.competition .dongari_list .arc_box.open .arc_open_btn::after {
  transform: rotate(180deg);
}
.competition .dongari_list .arc_box .dongari_arc_list {
  display: none;
  padding: 16px;
  background-color: #f5f9e8;
  margin-top: 16px;
}
.competition .dongari_list .arc_box .dongari_arc_list .flex {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 0;
}
.competition .dongari_list .arc_box .dongari_arc_list p {
  font-size: 16px;
  width: calc(100% / 4);
}
.competition .dongari_list .item .item_info h4 {
  font-size: 32px;
  font-weight: 700;
}
.competition .dongari_list .item .item_info p {
  font-size: 18px;
  line-height: 140%;
}
.competition .dongari_list .item .item_info .link {
  font-size: 18px;
  color: #888;
  border-bottom: 1px solid #888;
  align-self: baseline;
}
@media screen and (max-width: 1440px) {
  .competition .dongari_list .arc_box .dongari_arc_list p {
    width: calc(100% / 3);
  }
}
@media screen and (max-width: 768px) {
  .cmp_tab_title {
    gap: 16px;
    padding-bottom: 24px;
  }
  .cmp_tab_title h4 {
    font-size: 24px;
  }
  .cmp_tab_title span {
    font-size: 16px;
  }
  .competition .dongari_list .item {
    padding: 24px 0;
    flex-direction: column;
    justify-content: space-between;
    gap: 16px;
  }

  .competition .dongari_list .item .logo {
    margin: 0 auto;
  }
  .competition .dongari_list .item .item_info {
    width: 100%;
    gap: 8px;
  }
  .competition .dongari_list .arc_box {
    margin-top: 16px;
  }
  .competition .dongari_list .arc_box .arc_open_btn {
    font-size: 14px;
  }

  .competition .dongari_list .arc_box .arc_open_btn::after {
    content: "";
    position: absolute;
    top: 0;
    right: 16px;
    width: 16px;
    height: 16px;
  }
  .competition .dongari_list .arc_box.open .arc_open_btn::after {
    transform: rotate(180deg);
  }
  .competition .dongari_list .arc_box .dongari_arc_list {
    display: none;
    padding: 16px;
    background-color: #f5f9e8;
    margin-top: 16px;
  }
  .competition .dongari_list .arc_box .dongari_arc_list .flex {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 0;
  }
  .competition .dongari_list .arc_box .dongari_arc_list p {
    font-size: 14px;
    width: calc(100% / 2);
  }
  .competition .dongari_list .item .item_info h4 {
    font-size: 20px;
  }
  .competition .dongari_list .item .item_info p {
    font-size: 14px;
  }
  .competition .dongari_list .item .item_info .link {
    font-size: 14px;
  }
}
.gray {
  background-color: rgb(245, 245, 245);
}
.competition .guide_banner .page_title {
  max-width: 875px;
  margin: 0 auto;
}
.competition .guide_banner .amends {
  margin-bottom: 50px;
}
.competition .kakao_banner {
  padding: 24px 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  background-color: #fff;
  border: 1px solid rgba(29, 31, 37, 0.2);
  border-radius: 8px;
  margin-bottom: 40px;
}
.competition .kakao_banner i {
  width: 56px;
  height: 56px;
  background-size: 100%;
  background-position: center;
  background-size: cover;
  flex-shrink: 0;
  background-image: url(../../img/common/icn_sns_k.svg);
}
.competition .kakao_banner p {
  line-height: 140%;
  text-align: left;
  font-size: 18px;
}
.competition .apply_section {
  padding: 40px 0;
}
.competition .noti_download {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.competition .noti_download .com_download {
  height: 40px;
}
.competition .mypage_info .joinout_btn {
  margin-top: 24px;
  color: #888;
  border-bottom: 1px solid #888;
  font-size: 18px;
}
.competition .mypage_info .info_view {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(29, 31, 37, 0.2);
  width: 100%;
}
.competition .mypage_info .info_view .label {
  font-size: 18px;
  color: #888;
}
.competition .mypage_info .info_view .data_txt {
  font-weight: 700;
  font-size: 20px;
}

.competition .apply_section {
  padding-bottom: 0;
}

.competition .space-80 .board_list_wrap {
  margin-top: 0;
}
.competition .page_title ~ .space-80 {
  margin-top: 0;
}
.competition .page_title.img_title {
  padding: 140px 0 60px;
}

@media screen and (max-width: 1440px) {
  .competition .guide_banner {
    padding: 0px 40px;
  }
  .competition .noti_download {
    flex-direction: column;
    align-items: flex-start;
  }
  .competition .noti_download .com_download {
    font-size: 14px;
    width: 176px;
    line-height: 22px;
  }
}

@media screen and (max-width: 768px) {
  .competition .guide_banner {
    padding: 0px 16px;
  }
  .competition .mypage_info .joinout_btn {
    font-size: 14px;
  }
  .competition .mypage_info .info_view {
    gap: 8px;
    padding-bottom: 8px;
  }
  .competition .mypage_info .info_view .label {
    font-size: 14px;
  }
  .competition .mypage_info .info_view .data_txt {
    font-size: 16px;
  }
  .competition .kakao_banner {
    padding: 16px;
    gap: 16px;
  }
  .competition .kakao_banner p {
    font-size: 14px;
  }
  .competition .guide_banner .amends {
    margin-bottom: 40px;
  }
  .competition .apply_section {
    padding-top: 80px;
  }
}

.amends_wrap {
  position: relative;
  padding: 20px 16px;
  background-color: #fff;
  border-radius: 8px;
  margin-bottom: 50px;
}
.amends_wrap .badge {
  padding: 14px 30px;
  border-radius: 8px;
  background: #00854a;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  position: absolute;
  left: 0;
  top: 0;
}
.amends_wrap .flex {
  display: flex;
  gap: 20px;
}
.amends_wrap .flex .txt {
  display: flex;
  flex-direction: column;
  gap: 3px;
  flex: 1;
  align-self: flex-end;
}

.amends_wrap .flex .txt p {
  display: flex;
  gap: 8px;
  align-items: center;
}
.amends_wrap .flex .txt .num {
  width: 26px;
  height: 26px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid rgba(29, 31, 37, 0.2);
  font-size: 18px;
  color: #0f3323;
  font-weight: 700;
  flex-shrink: 0;
}
.amends_wrap .flex .txt .desc {
  font-size: 15px;
  text-align: left;
}
.amends_wrap .flex .txt .noti_txt {
  color: #888;
  font-size: 11px;
  align-self: flex-end;
}
.amends_wrap .green_banner {
  padding: 20px;
  border-radius: 8px;
  text-align: left;
  background-color: #f5f9e8;
  max-width: 250px;
}
.amends_wrap .green_banner strong {
  color: #026442;
  font-size: 16px;
  font-weight: 700;
  display: block;
  margin-bottom: 10px;
}

.amends_wrap .green_banner p {
  font-size: 14px;
  line-height: 23px;
  color: #1d1f25;
}
.amends_wrap .green_banner .green {
  font-weight: 700;
  color: #00854a;
}

@media screen and (max-width: 768px) {
  .amends_wrap {
    margin-bottom: 40px;
    padding-top: 68px;
  }
  .amends_wrap .flex {
    gap: 16px;
    flex-direction: column;
  }
  .amends_wrap .flex .txt {
    display: flex;
    flex-direction: column;
    gap: 6px;
    flex: 1;
    align-self: flex-start;
    width: 100%;
  }

  .amends_wrap .flex .txt p {
    display: flex;
    gap: 8px;
    align-items: center;
  }
  .amends_wrap .flex .txt .desc {
    font-size: 13px;
  }
  .amends_wrap .green_banner {
    max-width: none;
    width: 100%;
  }
  .amends_wrap .green_banner strong {
    font-size: 18px;
    margin-bottom: 14px;
  }

  .amends_wrap .green_banner p {
    font-size: 12px;
    line-height: 20px;
    color: #1d1f25;
  }
}
.competition #header2 .logo img {
  max-width: none;
  width: 234px;
}
