html,
* {
  box-sizing: border-box;
}

/* 인트로 */
#intro {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  height: 100%;
  background: url(../../images/intro.png) no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  z-index: 9999;
  position: absolute;
  top: 0;
  left: 0;
}

#intro.off {
  display: none;
}
/* .intro_box {display: flex; flex-direction: column; margin-right: 150px; padding: 30px; width: 450px; background: rgba(0, 0, 0, 0.75); box-sizing: border-box;} */

@keyframes rainbow-ani {
  100% {
    background-position: -20398px 0;
  }
}

.intro_wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  max-width: 500px;
  height: 580px;
  background-color: #ffffff;
  box-shadow: 5px 5px 10px #00000029;
  border-radius: 10px;
  padding-left: 60px;
  padding-top: 100px;
  padding: 70px 45px 30px 45px;
}

.top {
  display: flex;
  align-content: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: 0px 10px;
}

.img_box {
  width: 130px;
  height: 34px;
  /* background-color: black; */
}

.img_box img {
  margin-top: 6px;
}

.top_line {
  /* background-color: #05507D; */
  width: calc(100% - 135px);
  border-bottom: 1px solid #05507d;
}

.mid {
  margin-top: 20px;
}

.mid_title {
  line-height: 60px;
  letter-spacing: -2.5px;
  font-family: Noto Sans CJK KR;
  font-size: 46px;
  font-weight: bold;
  color: #05507d;
  margin-bottom: 20px;
  text-align: center;
}

.mid_title .stroke {
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #05507d;
  color: transparent;
}

.mid_line {
  width: 100%;
  height: 1px;
  background-color: #05507d;
  margin-bottom: 20px;
}

.mid_des {
  font-weight: 500;
  color: #05507d;
  text-align: center;
  font-size: 14px;
}

.mid_des span {
  font: normal normal bold 14px/20px Noto Sans CJK KR;
  /* font-size: 14px; */
  color: #f18a00;
}

.btn_box {
  text-align: center;
  margin-top: 60px;
}

.intro_btn {
  color: #05507d;
  font-size: 18px;
  font-weight: 700;
  background-color: #ffffff;
  width: 250px;
  height: 55px;
  border: 2px solid #05507d;
  border-radius: 5px;
  margin-bottom: 34px;
  transition: 0.2s;
}

.intro_btn:hover {
  background-color: #05507d;
  color: #ffffff;
}

.lang_box img {
  vertical-align: middle;
}

.lang_select,
.lang_select span {
  cursor: pointer;
  color: #05507d;
  font-weight: bold;
}

.lang_select span {
  display: inline-block;
  width: 25px;
}

.lang_select span.dis_select {
  font-weight: 400;
  width: 25px;
}

/* 미디어쿼리 1024px */

@media (max-width: 1024px) {
  /* 인트로 */
  #intro {
    justify-content: center;
  }
}
/* 미디어쿼리 768px */

@media (max-width: 768px) {
  /* 인트로 */
  #intro {
    justify-content: center;
    background-size: cover;
  }
  .mid_title {
    text-align: center;
    font-size: 40px;
  }
}

.fancybox-caption {
  text-align: right !important;
}

/* 반응형 인트로 */
@media (max-width: 620px) {
  .mid_title {
    text-align: center;
    font-size: 36px;
  }
}

@media (max-width: 475px) {
  .mid_title {
    text-align: center;
    font-size: 28px;
    line-height: 50px;
    letter-spacing: -1px;
  }
  .intro_btn {
    width: 90%;
  }
}

@media (max-width: 402px) {
  .mid_title {
    text-align: center;
    font-size: 24px;
    line-height: 50px;
    letter-spacing: -1px;
  }
  .intro_btn {
    width: 90%;
  }
}
