.section#visual {
  width: 100%;
  height: calc(100vh - 140px);
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: center;
}
.section#visual:before,
.section#visual:after {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  transition: opacity 1000ms ease-out 5000ms;
  pointer-events: none;
}
.section#visual:before {
  position: absolute;
  content: "";
  width: 28px;
  height: 43px;
  background: url(../images/10541_scroll.png) no-repeat 50% 50% / cover;
  bottom: 40px;
  animation: scroll 750ms ease-in-out infinite alternate 5000ms;
  z-index: 1;
  opacity: 0.65;
}
.section#visual:after {
  position: absolute;
  content: "scroll";
  color: rgba(255, 255, 255, 0.65);
  bottom: 20px;
  z-index: 1;
  opacity: 1;
}
.section#visual.loading:before,
.section#visual.loading:after {
  opacity: 0;
}
@keyframes scroll {
  0% {
    bottom: 40px;
  }
  100% {
    bottom: 60px;
  }
}
.section#visual video {
  position: absolute;
  aspect-ratio: 16/9;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  clip-path: circle(100%);
  transition:
    clip-path 2500ms ease-out 1000ms,
    500ms opacity ease-out 500ms;
  pointer-events: none;
  opacity: 1;
}
.section#visual.loading video {
  clip-path: circle(20%);
  opacity: 0;
}
.section#visual .content {
  align-items: center;
}
.section#visual .content .title {
  z-index: 1;
  transition: opacity 500ms ease-out 3000ms;
  width: fit-content;
  align-items: center;
}
.section#visual.loading .content .title {
  opacity: 1;
  pointer-events: none;
}
.section#visual .content .title h3 {
  opacity: 1;
  width: 0%;
  overflow: hidden;
  transition: width 1000ms linear;
  white-space: nowrap;
}
.on .section#visual .content .title h3 {
  opacity: 1;
  width: 100%;
}
.section#visual .content .title h1 {
  opacity: 0;
  transition: opacity 1000ms ease-out 1500ms;
}
.on .section#visual .content .title h1 {
  opacity: 1;
}
.on .section#visual .content .title {
  opacity: 0;
  pointer-events: none;
}

.section#tv {
}
.section#tv .content {
  background: transparent;
}
.section#tv .content .title {
}
.section#tv .content .title h2 {
  color: #111111;
}
.section#tv .content .video_con {
  display: flex;
  gap: var(--gap);
}
.section#tv .content .video_con .video {
  aspect-ratio: 16/9;
  width: 100%;
  height: 100%;
}
.section#tv .content .video_con .video video {
  width: 100%;
  height: 100%;
  aspect-ratio: inherit;
  border-radius: 20px;
}
.section#tv .content .video_con .video_list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow-y: scroll;
  max-width: 480px;
  width: 75%;
  max-height: 528.75px;
  padding: 10px;
}
.section#tv .content .video_con .video_list::-webkit-scrollbar {
  width: 4px;
  height: 100%;
  background: rgba(0, 0, 0, 0.15);
}
.section#tv .content .video_con .video_list::-webkit-scrollbar-thumb {
  background: var(--main-color);
}
.section#tv .content .video_con .video_list > div {
  display: flex;
  gap: 10px;
  padding: 10px;
  border-radius: 5px;
  border: 2px solid transparent;
  transition:
    250ms border ease-out,
    250ms background ease-out;
  align-items: center;
  background: transparent;
  cursor: pointer;
}
.section#tv .content .video_con .video_list > div:hover {
  background: #d6d6d6;
}
.section#tv .content .video_con .video_list > div.selected {
  border: 2px solid var(--main-color);
  background: #efefef;
}
.section#tv .content .video_con .video_list > div.selected:hover {
  background: #d6d6d6;
}
.section#tv .content .video_con .video_list > div > div {
  aspect-ratio: 16/9;
  width: 100%;
  flex: 1;
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: center;
}
.section#tv .content .video_con .video_list > div > div img {
  width: 100%;
}
.section#tv .content .video_con .video_list > div span.video_title {
  width: 100%;
  flex: 1;
  word-break: keep-all;
  line-height: 1.2;
  font-weight: 500;
}

.section#center {
  background: #efefef;
}
.section#center .content {
  gap: 40px;
}
.section#center .content .title > * {
  text-align: center;
}
.section#center .content .center_list {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-gap: var(--gap);
}
.section#center .content .center_list .center {
  border-radius: var(--gap);
  aspect-ratio: 3/4;
  width: 100%;
  position: relative;
}
.section#center .content .center_list .center:nth-child(1) {
  background:
    linear-gradient(0deg, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 30%),
    url(../images/10541_center_01.png) no-repeat 50% 50% / cover;
}
.section#center .content .center_list .center:nth-child(2) {
  background:
    linear-gradient(0deg, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 30%),
    url(../images/10541_center_02.png) no-repeat 50% 50% / cover;
}
.section#center .content .center_list .center:nth-child(3) {
  background:
    linear-gradient(0deg, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 30%),
    url(../images/10541_center_03.png) no-repeat 50% 50% / cover;
}
.section#center .content .center_list .center:nth-child(4) {
  background:
    linear-gradient(0deg, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 30%),
    url(../images/10541_center_04.png) no-repeat 50% 50% / cover;
}
.section#center .content .center_list .center:nth-child(5) {
  background:
    linear-gradient(0deg, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 30%),
    url(../images/10541_center_05.png) no-repeat 50% 50% / cover;
}
.section#center .content .center_list .center:nth-child(6) {
  background:
    linear-gradient(0deg, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 30%),
    url(../images/10541_center_06.png) no-repeat 50% 50% / cover;
}
.section#center .content .center_list .center span {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  color: #ffffff;
  font-size: 18px;
  font-weight: 600;
}

.section#as {
}
.section#as .map {
  width: 100%;
  position: relative;
  max-width: 710px;
}
.section#as .map img {
  width: 100%;
}
.section#as .map a.location {
  position: absolute;
  padding: 3px;
  background: transparent;
  height: 4.5%;
  width: 10.7%;
}
.section#as .map a.location#강릉 {
  top: 17.5%;
  right: 13.5%;
}
.section#as .map a.location#명동 {
  top: 18.8%;
  left: 19.8%;
}
.section#as .map a.location#수원 {
  top: 24%;
  left: 19.1%;
}
.section#as .map a.location#제천 {
  top: 29.8%;
  right: 26.8%;
}
.section#as .map a.location#안동 {
  top: 39.9%;
  right: 16.8%;
}
.section#as .map a.location#영천 {
  top: 43.8%;
  right: 29.1%;
}
.section#as .map a.location#대구 {
  top: 46.5%;
  right: 41.6%;
}
.section#as .map a.location#덕영 {
  top: 51.5%;
  right: 43%;
}
.section#as .map a.location#밀양 {
  top: 58.3%;
  right: 40%;
}
.section#as .map a.location#진주 {
  top: 65%;
  right: 49.5%;
}
.section#as .map a.location#마산 {
  bottom: 23.9%;
  right: 40.2%;
}
.section#as .map a.location#여수 {
  bottom: 18%;
  left: 31%;
}
.section#as .map a.location#창원 {
  bottom: 22.3%;
  right: 17.9%;
}
.section#as .map a.location#김해 {
  bottom: 27.9%;
  right: 13.8%;
}
.section#as .map a.location#울산 {
  bottom: 34.2%;
  right: 8%;
}
.section#as .map a.location#경주 {
  bottom: 40.4%;
  right: 9.3%;
}
.section#as .map a.location#포항죽도 {
  top: 44.3%;
  right: 4.4%;
  width: 12.8%;
}
.section#as .map a.location#포항오천 {
  top: 49.4%;
  right: 2.6%;
  width: 12.8%;
}
.section#as .map a.location#구제주 {
  bottom: 4.35%;
  left: 26.2%;
}
.section#as .map a.location#신제주 {
  bottom: 8.2%;
  left: 2.2%;
}
.section#as .content {
  flex-direction: row;
  align-items: center;
}
.section#as .content .title {
  max-width: 720px;
}

.section#system {
  background: #efefef;
}
.section#system .content {
  max-width: 1200px;
  gap: 40px;
}
.section#system .content .title {
}
.section#system .content .title h2 {
  text-align: center;
}
.section#system .content .grid_con {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.section#system .content .grid_con > div {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
}
.section#system .content .grid_con > div:after {
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 40%;
  content: "";
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0));
  opacity: 1;
  transition: opacity 250ms ease-out;
}
/* .section#system .content .grid_con > div:hover:after{opacity: 0;} */
.section#system .content .grid_con > div > div {
  aspect-ratio: 1/1;
  line-height: 0;
  width: 100%;
}
/* .section#system .content .grid_con > div:hover > div img{transform: scale(1); transform-origin: center;} */
.section#system .content .grid_con > div > span {
  position: absolute;
  bottom: 5%;
  left: 50%;
  transform: translateX(-50%);
  color: #ffffff;
  font-size: 24px;
  opacity: 1;
  z-index: 2;
  font-weight: 500;
  margin-top: 0px;
  text-align: center;
}
/* .section#system .content .grid_con > div:hover > span{opacity: 0; margin-top: 10px;  transition: opacity 250ms ease-out, margin-top 250ms cubic-bezier(.21,.48,.67,1.14);} */
.section#system .content .grid_con > div img {
  aspect-ratio: 1/1;
  width: 100%;
  transition: 250ms all ease-out;
  transform: scale(1);
}

.section#laboratory {
  background: #545554;
  color: #ffffff;
}
.section#laboratory .content {
  max-width: initial;
  flex-direction: row;
  gap: 40px;
  padding: 0;
  align-items: center;
}
.section#laboratory .content > * {
  width: 100%;
}
.section#laboratory .content .title {
  padding: 20px;
}
.section#laboratory .content .youtubeCon {
  aspect-ratio: 1/1;
  line-height: 0;
}
.section#laboratory .content .youtubeCon iframe {
  width: 100%;
  height: 100%;
}

.section#preview {
}
.section#preview .content {
  max-width: 1200px;
  overflow: hidden;
}
.section#preview .content .owl-carousel {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.section#preview .content .owl-carousel .owl-stage-outer {
  border-radius: 20px;
  order: 1;
}
.section#preview .content .owl-carousel .carousel-item {
  aspect-ratio: 16/9;
  width: 100%;
}
.section#preview .content .owl-carousel .carousel-item.item-1 {
  background:
    linear-gradient(0, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 40%),
    url(../images/10541_preview_01.jpg) no-repeat 50% 50% / cover;
}
.section#preview .content .owl-carousel .carousel-item.item-2 {
  background:
    linear-gradient(0, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 40%),
    url(../images/10541_preview_02.jpg) no-repeat 50% 50% / cover;
}
.section#preview .content .owl-carousel .carousel-item.item-3 {
  background:
    linear-gradient(0, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 40%),
    url(../images/10541_preview_03.jpg) no-repeat 50% 50% / cover;
}
.section#preview .content .owl-carousel .carousel-item.item-4 {
  background:
    linear-gradient(0, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 40%),
    url(../images/10541_preview_04.jpg) no-repeat 50% 50% / cover;
}
.section#preview .content .owl-carousel .carousel-item.item-5 {
  background:
    linear-gradient(0, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 40%),
    url(../images/10541_preview_05.jpg) no-repeat 50% 50% / cover;
}
.section#preview .content .owl-carousel .carousel-item.item-6 {
  background:
    linear-gradient(0, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 40%),
    url(../images/10541_preview_06.jpg) no-repeat 50% 50% / cover;
}
.section#preview .content .owl-carousel .carousel-item.item-7 {
  background:
    linear-gradient(0, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 40%),
    url(../images/10541_preview_07.jpg) no-repeat 50% 50% / cover;
}
.section#preview .content .owl-carousel .carousel-item.item-8 {
  background:
    linear-gradient(0, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 40%),
    url(../images/10541_preview_08.jpg) no-repeat 50% 50% / cover;
}
.section#preview .content .owl-carousel .carousel-item .txt {
  position: absolute;
  bottom: 20px;
  font-size: 20px;
  left: 50%;
  transform: translateX(-50%);
  color: #ffffff;
  font-weight: 600;
}
.section#preview .content .owl-carousel .owl-nav {
  z-index: 3;
  position: absolute;
  width: calc(100% - 40px);
  display: flex;
  justify-content: space-between;
  top: calc(50% + 37.5px);
  left: 50%;
  transform: translate(-50%, -50%);
}
.section#preview .content .owl-carousel .owl-nav > button {
  border: 2px solid rgba(255, 255, 255, 0.65);
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.35);
  position: relative;
  backdrop-filter: blur(4px);
}
.section#preview .content .owl-carousel .owl-nav > button:before,
.section#preview .content .owl-carousel .owl-nav > button:after {
  content: "";
  position: absolute;
  top: 50%;
  width: 12px;
  height: 3px;
  background: rgba(255, 255, 255, 1);
  border-radius: 3px;
}
.section#preview .content .owl-carousel .owl-nav > button span {
  color: transparent;
}
.section#preview .content .owl-carousel .owl-nav > button.owl-prev:before,
.section#preview .content .owl-carousel .owl-nav > button.owl-prev:after {
  left: 54%;
}
.section#preview .content .owl-carousel .owl-nav > button.owl-next:before,
.section#preview .content .owl-carousel .owl-nav > button.owl-next:after {
  right: 20%;
}
.section#preview .content .owl-carousel .owl-nav > button.owl-prev:before {
  transform-origin: left top;
  transform: translate(-50%, -50%) rotate(45deg);
}
.section#preview .content .owl-carousel .owl-nav > button.owl-prev:after {
  transform-origin: left bottom;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.section#preview .content .owl-carousel .owl-nav > button.owl-next:before {
  transform-origin: right bottom;
  transform: translate(-50%, -50%) rotate(45deg);
}
.section#preview .content .owl-carousel .owl-nav > button.owl-next:after {
  transform-origin: right top;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.section#preview .content .owl-carousel .owl-dots {
  display: flex;
  justify-content: space-evenly;
  order: 0;
  position: relative;
}
.section#preview .content .owl-carousel .owl-dots:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 2px;
  background: #111111;
  bottom: 11px;
  left: 0;
}
.section#preview .content .owl-carousel .owl-dots .owl-dot {
  z-index: 1;
}
.section#preview .content .owl-carousel .owl-dots .owl-dot button {
  display: flex;
  border: none;
  background: transparent;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}
.section#preview .content .owl-carousel .owl-dots .owl-dot button span {
  pointer-events: none;
}
.section#preview .content .owl-carousel .owl-dots .owl-dot button div {
  height: 24px;
  width: 24px;
  border-radius: 50%;
  background: #c6c6c6;
  pointer-events: none;
}
.section#preview .content .owl-carousel .owl-dots .owl-dot.active button div {
  background: var(--main-color);
}

@media all and (max-width: 1440px) {
}
@media all and (max-width: 1280px) {
}

@media all and (max-width: 1080px) {
  .section#tv .content .video_con {
    flex-direction: column;
  }
  .section#tv .content .video_con .video {
  }
  .section#tv .content .video_con .video_list {
    flex-direction: row;
    overflow-y: auto;
    overflow-x: scroll;
    max-width: 100%;
    width: 100%;
    max-height: initial;
  }
  .section#tv .content .video_con .video_list::-webkit-scrollbar {
    height: 4px;
    width: 100%;
  }
  .section#tv .content .video_con .video_list > div {
    flex-direction: column;
    min-width: 210px;
    width: 100%;
  }
  .section#tv .content .video_con .video_list > div > div {
    width: 100%;
    flex: initial;
  }
  .section#tv .content .video_con .video_list > div > div img {
  }
  .section#tv .content .video_con .video_list > div span.video_title {
    width: 100%;
  }
  .section#tv .content .title {
    text-align: center;
  }
  .section#tv .content .title h3:before {
    left: 50%;
    transform: translate(-50%, -100%);
  }
  .section#tv .content .title h2:after {
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .section#center .content .center_list {
    grid-template-columns: repeat(3, 1fr);
  }

  .section#as .content {
    flex-direction: column;
  }
  .section#as .content .map {
    max-width: initial;
    order: 1;
  }
  .section#as .content .title {
    max-width: initial;
    order: 0;
    text-align: center;
  }
  .section#as .content .title h3:before {
    left: 50%;
    transform: translate(-50%, -100%);
  }
  .section#as .content .title h2:after {
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .section#laboratory .content {
    flex-direction: column;
    gap: 80px;
    align-items: center;
  }
  .section#laboratory .content .youtubeCon {
    aspect-ratio: 16/9;
  }
  .section#laboratory .content .title {
    padding: 0 20px 80px;
  }
}
@media all and (max-width: 768px) {
  .section#preview .content .owl-carousel .owl-dots .owl-dot button span {
    pointer-events: none;
    display: none;
  }
  .section#preview .content .owl-carousel .owl-nav {
    top: calc(50% + 21px);
  }
}
@media all and (max-width: 480px) {
  .section#center .content .center_list {
    grid-template-columns: repeat(2, 1fr);
  }
  .section#visual .content .title h3 {
    font-size: 18px;
  }

  .section#system .content .grid_con {
    gap: 10px;
  }
  .section#system .content .grid_con > div:after {
    background: linear-gradient(
      0,
      rgba(0, 0, 0, 0.65) 0%,
      rgba(0, 0, 0, 0) 50%
    );
    opacity: 1;
  }
  .section#system .content .grid_con > div > span {
    position: absolute;
    top: initial;
    bottom: 10px;
    left: 50%;
    transform: translate(-50%, 0%);
    color: #ffffff;
    font-size: 16px;
    opacity: 1;
    margin-top: 0px;
    width: 100%;
    text-align: center;
  }
  .section#system .content .grid_con > div:hover > span {
    opacity: 1;
    margin-top: 0px;
    transition:
      opacity 250ms ease-out 250ms,
      margin-top 250ms ease-out 250ms;
  }

  .section#preview .content {
    padding: 160px 0px;
  }
  .section#preview .content .title {
    padding: 0 20px;
  }
  .section#preview .content .owl-carousel .owl-stage-outer {
    border-radius: 0px;
  }
  .section#preview .content .owl-carousel .owl-dots:before {
    bottom: 10px;
  }
  .section#preview .content .owl-carousel .owl-nav {
    top: calc(50% + 20px);
  }
  .section#preview .content .owl-carousel .owl-dots .owl-dot button div {
    height: 20px;
    width: 20px;
  }
}

@media all and (max-width: 376px) {
  .section#system .content .grid_con {
    gap: 10px;
  }
}
