.activity .subtitle:nth-of-type(1) {
  margin-top: 1rem;
}

.activity .subtitle>span {
  display: flex;
  align-items: center;
  letter-spacing: 0.3rem;
  padding-left: 3.8rem;
  font-size: 2.2rem;
  font-weight: 700;
  color: #fff100;
}

.activity .subtitle>span::before {
  content: "";
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  background: #fff100;
  margin-right: 1.2rem;
}

.activity .general-content {
  text-align: left;
}

.activity .text {
  margin: 0 auto;
  font-size: 1.4rem;
  color: #FFF;
  line-height: 2.5rem;
  padding: 0.5rem 5% 2rem 17.2%;
  font-weight: 400;
  letter-spacing: 0.1rem;
}

.activity .text>ul {
  display: flex;
  flex-direction: column;
  padding: 0;
  font-size: 1.4rem;
  gap: 0.5rem;
  list-style-type: disc;
  list-style-position: outside;
  margin-top: 0.5rem;
  padding-left: 4.3rem;
}

.activity .text.notice-list>ul,
.activity .text.notice-list-2>ul {
  list-style: outside;
  list-style-type: decimal;
}

.activity .text .manual-list {
  counter-reset: custom-counter;
  list-style-type: none !important;
  padding-left: 4.3rem;
}

.activity .text .manual-list>li {
  counter-increment: custom-counter;
  align-items: flex-start;
  position: relative;
}

.activity .text .manual-list li::before {
  position: absolute;
  left: -2rem;
  content: counter(custom-counter) ". ";
  flex-shrink: 0;
  width: 1.5rem;
  font-weight: bold;
}

.activity .text .manual-list>li>ul {
  padding-left: 3rem;
}

.activity .text>ul>li {
  margin: 0;
  letter-spacing: 0.03rem;
}

.activity .text>ul>ul {
  list-style: circle;
  padding-left: 3rem;
}

.activity .text h3 {
  color: #fff100;
  margin: 1rem 0 1rem;
  font-size: 1.83rem;
  letter-spacing: 0.1rem;
}

.activity .text a {
  color: #FFF;
  font-size: 1.4rem;
  font-weight: 400;
}

.activity .text ol {
  margin-top: 1rem;
}

.activity .text ol li {
  position: relative;
  margin-left: 2.5rem;
}

.activity .text ol li::before {
  content: "※";
  position: absolute;
  left: -2rem;
}

.activity .text.notice-list>ul:nth-of-type(1)>li>ul {
  list-style: none;
  padding-left: 0;
}

.activity .text.notice-list>ul:nth-of-type(2)>li>ul,
.activity .text.notice-list-2>ul>li>ul {
  list-style: none;
  counter-reset: my-counter;
}

.activity .text.notice-list>ul:nth-of-type(2)>li>ul>li,
.activity .text.notice-list-2>ul>li>ul>li {
  counter-increment: my-counter;
  position: relative;
}

.activity .text.notice-list>ul:nth-of-type(2)>li>ul>li::before,
.activity .text.notice-list-2>ul>li>ul>li::before {
  content: "(" counter(my-counter) ") ";
  position: absolute;
  left: -2.4rem;
}

.activity .text.notice-list h3:nth-of-type(3) {
  font-size: 1.75rem;
}

.activity .text.notice-list ul:nth-of-type(3) span {
  display: inline;
  border-bottom: 1px solid #FFF;
}

.activity .return {
  text-align: center;
  margin: 2rem auto 0 auto;
}

#privacy_policy {
  scroll-margin-top: 100px;
}

@media (max-width: 1024px) {
  .activity .general-content {
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
  }

  .activity .activity-content {
    padding: 1rem 8rem;
    height: 68vh;
    height: 68svh;
    overflow: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;

    &::-webkit-scrollbar {
      display: none;
    }

    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .activity .subtitle>span {
    letter-spacing: 0.3rem;
    padding-left: 0;
    font-size: 2.5rem;
    font-weight: 500;
    color: #FFF;
  }

  .activity .subtitle>span::before {
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background: #FFF;
    margin-right: 1rem;
  }

  .activity .text {
    margin: 0 auto;
    font-size: 1.7rem;
    color: #FFF;
    line-height: 2.8rem;
    padding: 1.5rem 3% 3.5rem 3%;
    font-weight: 400;
  }

  .activity .text a {
    font-size: 1.7rem;
  }

  .activity .text ul {
    font-size: 1.7rem;
    padding-left: 4rem;
  }

  .activity .text h3 {
    color: #FFF;
    font-size: 2rem;
  }

  .activity .text ol {
    margin-top: 2rem;
  }

  .activity .text.notice-list>ul:nth-of-type(2)>li>ul>li::before,
  .activity .text.notice-list-2>ul>li>ul>li::before {
    left: -3rem;
  }

  .activity .return.btns {
    position: fixed;
    top: 89svh;
    left: 50%;
    transform: translateX(-50%);
  }

  #privacy_policy {
    scroll-margin-top: 10px;
  }
}

/* ------------------------------------------------------------ */
/* 專門For Ｍobile設定 */
@media (max-width: 640px) {
  .activity .activity-content {
    padding: 1rem 0rem;
  }
}