.p-topics_in {
  padding-top: 172px;
}
@media screen and (max-width: 899px) {
  .p-topics_in {
    padding-top: 105px;
  }
}

.p-topics_in__header {
  padding: 67px 0 70px;
  position: relative;
  background: var(--color-red) url(../img/logo_bg.png) no-repeat center/cover;
  transform: translateY(10px);
  opacity: 0;
  transition: transform 0.6s var(--ease-bound), opacity 0.8s var(--ease-main);
}
.is-load .p-topics_in__header {
  opacity: 1;
  transform: translateY(0);
}
@media screen and (max-width: 899px) {
  .p-topics_in__header {
    padding: 32px 0 26px;
  }
}
.p-topics_in__header-num {
  text-align: center;
  font-family: var(--font-en_head);
  color: var(--color-green);
  font-size: 16.5rem;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -60%);
}
@media screen and (max-width: 899px) {
  .p-topics_in__header-num {
    font-size: 8.4rem;
    transform: translate(-50%, -60%);
  }
}
.p-topics_in__header-title {
  margin-bottom: 20px;
  text-align: center;
  font-size: 5rem;
  color: var(--color-white);
  line-height: 1.2;
}
@media screen and (max-width: 899px) {
  .p-topics_in__header-title {
    width: 90%;
    margin: 0 auto 10px;
    font-size: 2.6rem;
  }
}
.p-topics_in__header-text {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  text-align: center;
}
@media screen and (max-width: 899px) {
  .p-topics_in__header-text {
    width: 67%;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    margin: 0 auto 10px;
  }
}
.p-topics_in__header-text .p-in-item {
  display: inline;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  padding: 1px 11px;
  font-size: 1.6rem;
  color: var(--color-red);
  line-height: 2.1;
  background-color: var(--color-beige);
}
@media screen and (max-width: 899px) {
  .p-topics_in__header-text .p-in-item {
    padding: 0px 3px;
    font-size: 1rem;
    line-height: 1.9;
  }
}

.p-topics_in__contents {
  width: 78.8%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 90px 0;
  transform: translateY(10px);
  opacity: 0;
  transition: transform 0.6s var(--ease-bound) 0.1s, opacity 0.8s var(--ease-main) 0.1s;
}
.is-load .p-topics_in__contents {
  opacity: 1;
  transform: translateY(0);
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents {
    width: 88.8%;
    margin: 0 auto;
    padding: 35px 0;
  }
}
.p-topics_in__contents p {
  font-size: 1.5rem;
  line-height: 2.1;
}
.p-topics_in__contents p a {
  color: var(--color-red);
  transition: opacity 0.6s var(--ease-main);
}
@media (hover: hover) {
  .p-topics_in__contents p a:hover {
    opacity: 0.5;
  }
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents p {
    font-size: 1.2rem;
    line-height: 1.9;
  }
}
.p-topics_in__contents .btn_wrap {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin: 54px 0;
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .btn_wrap {
    flex-direction: column;
    gap: 15px;
    margin: 23px auto;
  }
}
.p-topics_in__contents .btn {
  display: block;
  width: 420px;
  padding: 34px 0 38px;
  text-align: center;
  color: var(--color-white);
  position: relative;
  border-radius: 50rem;
  transition: transform 0.6s var(--ease-main);
}
@media (hover: hover) {
  .p-topics_in__contents .btn:hover {
    transform: scale(0.95);
  }
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .btn {
    width: 78%;
    margin: 0 auto;
    padding: 18px 0 19px;
  }
}
.p-topics_in__contents .btn.--red {
  background-color: var(--color-red);
}
.p-topics_in__contents .btn.--red .btn__icon {
  background-color: var(--color-green);
}
.p-topics_in__contents .btn.--green {
  background-color: var(--color-green);
}
.p-topics_in__contents .btn.--green .btn__icon {
  background-color: var(--color-red);
}
.p-topics_in__contents .btn .btn__text {
  font-size: 1.8rem;
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .btn .btn__text {
    font-size: 1.3rem;
  }
}
.p-topics_in__contents .btn .btn__icon {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 50%;
  right: 27px;
  transform: translateY(-50%);
  background-color: var(--color-green);
  -webkit-mask: url(../img/arrow_s.svg) no-repeat center/contain;
  mask: url(../img/arrow_s.svg) no-repeat center/contain;
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .btn .btn__icon {
    width: 12px;
    height: 15px;
    right: 14px;
  }
}
.p-topics_in__contents iframe {
  display: block;
  width: 72.5%;
  height: 100%;
  margin: 0 auto;
  aspect-ratio: 16/9;
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents iframe {
    width: 100%;
  }
}
.p-topics_in__contents .h1 {
  display: block;
  width: 100%;
  font-size: 2.8rem;
  margin: 40px 0;
  padding: 11px 25px;
  background: var(--color-red) url(../img/logo_bg_s.png) no-repeat 97.7% center/auto 105%;
  border-radius: 10px;
  font-weight: var(--font-w-bold);
  position: relative;
  color: var(--color-white);
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .h1 {
    font-size: 1.6rem;
    margin: 40px 0;
    border-radius: 5px;
    padding: 10px 14px;
    background: var(--color-red) url(../img/logo_bg_s.png) no-repeat 96.7% center/auto 123%;
  }
}
.p-topics_in__contents .h1::before {
  content: "";
  display: block;
  width: 15px;
  height: 9px;
  position: absolute;
  left: 42px;
  bottom: 0;
  background-color: var(--color-red);
  transform: translateY(100%);
  -webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);
  clip-path: polygon(0 0, 50% 100%, 100% 0);
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .h1::before {
    width: 10px;
    height: 5px;
    left: 21px;
  }
}
.p-topics_in__contents .list {
  margin-bottom: 35px;
}
.p-topics_in__contents .list.--red .list__item-head::before {
  background-color: var(--color-red);
}
.p-topics_in__contents .list.--green .list__item-head::before {
  background-color: var(--color-green);
}
.p-topics_in__contents .list .list__item-head {
  padding-left: 22px;
  font-size: 1.8rem;
  font-weight: 700;
  position: relative;
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .list .list__item-head {
    padding-left: 12px;
    font-size: 1.3rem;
  }
}
.p-topics_in__contents .list .list__item-head::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  position: absolute;
  left: 0;
  top: 4px;
  border-radius: 50rem;
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .list .list__item-head::before {
    width: 5px;
    height: 5px;
    top: 6px;
  }
}
.p-topics_in__contents .list .list__item .list__in {
  margin-top: 18px;
  padding-left: 26px;
  font-size: 1.5rem;
  line-height: 1.5;
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .list .list__item .list__in {
    margin-top: 12px;
    padding-left: 12px;
    font-size: 1.3rem;
    line-height: 1.5;
  }
}
.p-topics_in__contents img {
  width: 72.5%;
  margin: 52px auto;
  border-radius: 10px;
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents img {
    width: 100%;
    margin: 25px auto;
    border-radius: 5px;
  }
}
.p-topics_in__contents .h2 {
  margin: 54px 0;
  padding: 4px 25px;
  background-color: var(--color-green);
  font-size: 2rem;
  font-weight: 700;
  color: var(--color-white);
  position: relative;
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .h2 {
    margin: 23px 0;
    padding: 6px 11px;
    font-size: 1.3rem;
  }
}
.p-topics_in__contents .h2::before {
  content: "";
  display: block;
  width: 6px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: var(--color-red);
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .h2::before {
    width: 3px;
  }
}
.p-topics_in__contents .h3 {
  margin: 40px 0 22px;
  padding: 0px 21px 6px;
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 700;
  color: var(--color-red);
  position: relative;
  border-bottom: 1px solid var(--color-red);
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .h3 {
    margin: 24px 0 10px;
    padding: 0px 21px 2px;
    font-size: 1.4rem;
  }
}
.p-topics_in__contents .h3::before {
  content: "";
  display: block;
  width: 6px;
  height: 84%;
  position: absolute;
  left: 0;
  top: 1px;
  background-color: var(--color-red);
}
@media screen and (max-width: 899px) {
  .p-topics_in__contents .h3::before {
    width: 4px;
  }
}