@media (max-width: 768px) {
  .pc-show {
    display: none !important;
  }
  .pc-f-show {
    display: none !important;
  }
  .m-show {
    display: block !important;
  }
  .m-f-show {
    display: flex !important;
  }

  #hd {
    border-bottom: 0;
  }
  /* 헤더 반응형 */
  #hd,
  #wrapper,
  #ft {
    min-width: auto;
  }

  #hd_wrapper {
    padding: 15px 20px;
  }

  #logo {
    width: 150px;
  }

  #logo img {
    width: 100%;
    height: auto;
  }

  #gnb {
    display: none;
  }

  .hd_right {
    display: flex;
    align-items: center;
    gap: 15px;
  }

  .gnb_menu_btn {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
  }

  .gnb_menu_btn img {
    height: 20px;
  }

  #gnb {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    display: none !important;
    min-width: auto;
    width: 100vw;
    height: 100vh;
    z-index: 1000;
    overflow-y: auto;
    background: rgba(35, 35, 35, 90%);
    transform: none;
    margin-right: 0;
  }

  #gnb::after,
  #gnb::before {
    display: none;
  }

  #gnb #gnb_1dul {
    padding: 40px;
    flex-direction: column;
    align-items: flex-start;
    row-gap: 4px;
  }

  #gnb #gnb_1dul a {
    color: #fff;
    font-size: 16px;
    font-weight: 400;
  }

  #gnb .gnb_1dli {
    width: 100%;
    line-height: 45px;
    text-align: center;
    float: none;
  }

  .head-mobile-btn {
    position: absolute;
    top: 12px;
    right: 20px;
    display: flex;
    align-items: center;
    gap: 14px;
    z-index: 1001;
    cursor: pointer;
  }

  .head-mobile-btn img {
    width: 20px;
  }

  .gnb-header {
    padding: 20px;
  }

  .gnb-header .gnb-logo {
    width: 13.6vw;
  }

  .gnb-header .gnb-logo img {
    width: 150px;
  }

  .mobile-contact {
    margin: 20px auto 0;
    text-align: center;
  }

  .mobile-contact img {
    width: 70vw;
  }

  .gnb-header .hd_login {
    position: static;
    top: auto;
    right: auto;
    display: inline-block;
    margin-bottom: 10px;
  }

  .gnb-header .nav-close-btn {
    color: #fff;
    font-size: 28px;
  }

  .gnb-header .call img {
    width: 100%;
  }

  .mobile-nav-footer {
    padding: 0 10px;
  }

  .sns-icons {
    display: flex;
    max-width: 75vw;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin: 0 auto;
  }

  .sns-icons li {
    width: 50%;
  }

  .sns-icons li a {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    font-size: 10px;
    color: #fff;
  }

  .sns-icons li a img {
    width: 100%;
  }
  .hd_login {
    display: flex;
    align-items: center;
  }

  .hd_login li {
    display: flex;
    align-items: center;
  }

  .hd_login li a img {
    height: 20px;
  }

  .hd_login li:not(:last-child) {
    display: none;
  }

  #wrapper {
    margin-top: 57px;
  }

  .sec01 {
    padding-top: 0;
    padding-bottom: 100px;
  }

  .sec01 .img {
    width: 90%;
    margin: 0 auto;
  }

  .sec01_video {
    width: 100%;
    border-radius: 4px;
    border: 3px solid #fff;
  }

  .sec02 .inner {
    padding: 100px 10px 30px;
  }

  .sec02 .sec02-arrow {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    width: 35px;
    height: 35px;
    margin-top: 0;
  }

  .sec02 .sec02-arrow.swiper-button-prev {
    right: auto;
  }

  .sec02 .arrow-wrap {
    display: none;
    width: 100%;
    /* display: flex; */
    align-items: center;
    justify-content: center;
    gap: 10px;
  }

  .sec03 {
    padding-top: 0;
  }

  .sec03 .inner {
    flex-direction: column;
  }

  .sec04-slide03 {
    padding: 0 15px 27px;
  }

  .sec04-title {
    font-size: 1.5em;
  }

  .sec04-desc {
    font-size: 0.95em;
    margin-bottom: 30px;
  }

  .sec04-videos {
    flex-direction: column;
    gap: 20px;
    padding: 0 15px;
  }

  .sec04-video-left,
  .sec04-video-right {
    max-width: 100%;
  }

  .sec04-video-caption {
    font-size: 14px;
    padding: 10px 12px;
  }

  .sec04-video {
    aspect-ratio: 3 / 1.65;
  }

  .sec04 .swiper-wrapper {
    align-items: flex-start;
  }

  .sec05 {
    padding-top: 0;
  }

  .sec05 .tit {
    margin-bottom: 0;
  }

  .sec05 .swiper-container {
    width: 80%;
  }

  .sec05 .inner .sec05-arrow {
    top: 70%;
  }

  .sec05 .inner .sec05-arrow img {
    width: 30px;
  }

  .sec05 .inner .swiper-pagination-clickable .swiper-pagination-bullet {
    margin: 0 5px;
  }

  .sec08 {
    padding: 0 0 40px;
    flex-direction: column;
    gap: 0;
  }

  .sec08-title-ko {
    font-size: 1.5em;
  }

  .sec08-desc {
    font-size: 0.9em;
  }

  .sec08-left {
    padding: 0;
  }

  .sec08-left .tit {
    text-align: center;
    margin-bottom: 0;
  }

  .sec08-left .tit img {
    width: 100%;
  }

  .sec08-right {
    width: 100%;
    padding: 0;
  }

  .sec08-main {
    padding-bottom: 40px;
  }

  .sec08-main .swiper-wrapper {
    align-items: center;
  }

  .sec08-thumbnails.m-show {
    height: auto;
    margin: 20px 0;
    padding: 0 20px;
  }

  .sec08-thumbnails.m-show .swiper-slide {
    width: auto !important;
    height: auto;
    opacity: 0.6;
    transition: opacity 0.3s;
  }

  .sec08-thumbnails.m-show .swiper-slide-active {
    opacity: 1;
  }

  .sec08-thumbnails.m-show img {
    width: 100%;
    height: auto;
    border-radius: 4px;
  }

  .sec08-navigation.m-show {
    position: relative !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 20px !important;
    margin-bottom: 0 !important;
    padding: 20px !important;
    width: 100% !important;
  }

  .sec08-navigation.m-show .sec08-pagination {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    order: 2 !important;
  }

  .sec08-navigation.m-show .sec08-pagination .swiper-pagination-bullet {
    width: 8px !important;
    height: 8px !important;
    background: #ccc !important;
    opacity: 1 !important;
    margin: 0 !important;
  }

  .sec08-navigation.m-show .sec08-pagination .swiper-pagination-bullet-active {
    background: #5caefe !important;
  }

  .sec08-navigation.m-show .sec08-arrow-prev {
    position: static !important;
    width: 30px !important;
    height: 30px !important;
    background: transparent !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #bbb !important;
    font-size: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
    order: 1 !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
  }

  .sec08-navigation.m-show .sec08-arrow-next {
    position: static !important;
    width: 30px !important;
    height: 30px !important;
    background: transparent !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #bbb !important;
    font-size: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
    order: 3 !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
  }

  .sec08-navigation.m-show .sec08-arrow-prev::after,
  .sec08-navigation.m-show .sec08-arrow-next::after {
    display: none !important;
    content: none !important;
  }

  .sec10 .map {
    flex-direction: column;
  }

  .sec10 .map #daumRoughmapContainer1766388449804 {
    width: 100% !important;
    height: 40vh !important;
  }

  .sec10 .map .contact {
    width: 100%;
  }

  .partners-main .swiper-slide {
    text-align: center;
  }
  .partners-main img {
    width: 70%;
    margin: 0 auto;
  }
}
