@charset "UTF-8";
@font-face {
  font-family: "Uniform";
  src: url(../fonts/Uniform.otf);
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Uniform";
  src: url(../fonts/Uniform-Medium.otf);
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: "Uniform";
  src: url(../fonts/Uniform-Bold.otf);
  font-weight: 700;
  font-display: swap;
}
/**
 * * Allows you to use retina images at various pixel densities.
 * * Examples:
 * *
 * *   +retina(/images/mypic.jpg, 2);
 * *   +retina(/images/mypic.jpg, 3, 100px 100px, left top no-repeat transparent);
 * *
 * * @param  {Value}  $path               The path to the file name minus extension.
 * * @param  {Number} $cap:    2          The highest pixel density level images exist for.
 * * @param  {Value}  $size:   auto auto  The intended width of the rendered image.
 * * @param  {Value}  $extras: null       Any other `background` values to be added.
 * */
/**
 * * 往上適應
 * * 引用方式: +media-up($breakpoint-value)
 * */
/**
 * * 往上適應
 * * 引用方式: +media-up-num(自訂數值)
 * */
/**
 * * 往下適應
 * * 引用方式: +media-down($breakpoint-value)
 * */
/**
 * * 往下適應
 * * 引用方式: +media-up-num(自訂數值)
 * */
/**
 * * 範圍內適應
 * * 引用方式: +media-between($lower-breakpoint, $upper-breakpoint)
 * */
/**
 * * 引用方式: +lh(15,22) 前面放 line-height 的 px 值, 後面放 font-size 的 px 值（計算）
 * */
/**
 * * 引用方式: +ls(15,22) 前面放 letter-spacing 的 px 值, 後面放 font-size 的 px 值（計算）
 * */
/*  ===== firefox font weight bold 統一設定為 normal (firefox 在小字為粗體的時候會過粗) ===== */
/**
 * * 引用方式: +gradient(180deg,#fff,4%,#eee,92%)
 * */
/**
 * * margin
 * * 引用方式: +mb(15,22) 前面放 margin 的 px 值, 後面放 font-size 的 px 值
 * */
/**
 * * padding
 * * 引用方式: +pb(15,22) 前面放 padding 的 px 值, 後面放 font-size 的 px 值
 * */
.accordion {
  width: 100%;
}
.accordion .accordion__title {
  position: relative;
  cursor: pointer;
}
.accordion .accordion__content {
  position: relative;
  display: grid;
  grid-template-rows: 0fr;
  transition: 0.4s ease-in-out;
}
.accordion .accordion__content > * {
  overflow: hidden;
}
.accordion.is-active .accordion__content {
  grid-template-rows: 1fr;
}
.accordion.is-active .accordion__content > * {
  animation: overflowModify 0.5s ease forwards;
}

@keyframes overflowModify {
  0%, 99.9% {
    overflow: hidden;
  }
  100% {
    overflow: visible;
  }
}
.apply-accordion .accordion__title {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 8px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  background-color: #B3934D;
}
@media (max-width: 991.98px) {
  .apply-accordion .accordion__title {
    padding: 16px 8px;
  }
}
.apply-accordion .accordion__title .title-text {
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.03rem;
  font-weight: 500;
  color: #ffffff;
}
.apply-accordion .accordion__title .title-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all ease 400ms;
}
.apply-accordion .accordion__title .title-icon svg path {
  transition: all ease 400ms;
}
.apply-accordion .accordion__content .content .m-editor {
  padding-top: 40px;
}
@media (max-width: 991.98px) {
  .apply-accordion .accordion__content .content .m-editor {
    padding-top: 24px;
  }
}
.apply-accordion.is-active .accordion__title .title-icon {
  transform: rotate(180deg);
}

.calendar__accordion__title.is-active .accordion-icon, .news__accordion__title.is-active .accordion-icon {
  transform: rotate(180deg);
}

.calendar__accordion__content, .news__accordion__content {
  position: relative;
  display: grid;
  grid-template-rows: 0fr;
  transition: 0.4s ease-in-out;
}
.calendar__accordion__content > *, .news__accordion__content > * {
  overflow: hidden;
}
.calendar__accordion__content.is-active, .news__accordion__content.is-active {
  grid-template-rows: 1fr;
}
.calendar__accordion__content.is-active > *, .news__accordion__content.is-active > * {
  animation: overflowModify 0.5s ease forwards;
}

.merch-accordion .accordion__title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 16px;
  border-bottom: 1px solid #3D3D3D;
}
.merch-accordion .accordion__title .accordion-text {
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.03rem;
  font-weight: 500;
  color: #ffffff;
}
.merch-accordion .accordion__title .accordion-icon {
  transition: all ease 400ms;
}
.merch-accordion .accordion__content .content {
  padding-top: 16px;
}
.merch-accordion.is-active .accordion__title .accordion-icon {
  transform: rotate(180deg);
}

/*# sourceMappingURL=accordion.css.map */
