main {
  overflow: hidden;
  background-color: #f5f6f6;
}

.p-terms__inner {
  padding: 8rem 2rem;
}
@media (min-width: 1024px) {
  .p-terms__inner {
    max-width: 112rem;
    padding: 12.8rem 0;
    margin: 0 auto;
  }
}
.p-terms__section + .p-terms__section {
  margin-top: 9.6rem;
}
@media (min-width: 1024px) {
  .p-terms__section + .p-terms__section {
    margin-top: 8rem;
  }
}
.p-terms .c-section-ttl__label {
  line-height: 2.8rem;
}
@media (min-width: 1024px) {
  .p-terms .c-section-ttl__label {
    line-height: 3.6rem;
  }
}
.p-terms .c-section-ttl__ttl {
  font-size: 2.8rem;
  line-height: 4.8rem;
}
@media (min-width: 1024px) {
  .p-terms .c-section-ttl__ttl {
    font-size: 4rem;
    line-height: 6.4rem;
  }
}
.p-terms__ttl-sub {
  display: block;
  font-size: 1.8rem;
  line-height: 3.2rem;
}
@media (min-width: 1024px) {
  .p-terms__ttl-sub {
    display: inline;
    font-size: 3.2rem;
    line-height: 5.6rem;
  }
}
.p-terms__nowrap {
  white-space: nowrap;
}
.p-terms__list {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  margin-top: 4rem;
}
@media (min-width: 1024px) {
  .p-terms__list {
    gap: 4.8rem;
    margin-top: 4.8rem;
  }
}
@media (min-width: 1024px) {
  .p-terms__list--past {
    gap: 3.2rem;
  }
}
.p-terms__past {
  margin-top: 5.6rem;
}
@media (min-width: 1024px) {
  .p-terms__past {
    margin-top: 6.4rem;
  }
}
.p-terms__past-ttl {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 3.2rem;
  color: #0d121a;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #2baf2b;
}
@media (min-width: 1024px) {
  .p-terms__past-ttl {
    padding: 0 0.8rem;
    font-size: 2rem;
    line-height: 3.6rem;
  }
}
.p-terms__item {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.p-terms .c-mark-ttl__ttl {
  letter-spacing: 0.05em;
}
@media (min-width: 1024px) {
  .p-terms .c-mark-ttl__ttl {
    font-size: 1.8rem;
    line-height: 3.6rem;
  }
}
.p-terms__link-item + .p-terms__link-item {
  margin-top: 1.6rem;
}
.p-terms__plan, .p-terms__link {
  font-size: 1.6rem;
  line-height: 2.8rem;
  letter-spacing: 0.05em;
}
@media (min-width: 1024px) {
  .p-terms__plan, .p-terms__link {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 3.6rem;
  }
}
.p-terms__plan {
  color: #0d121a;
}
.p-terms__link {
  word-break: break-all;
}