.pageTtlArea {
  margin-bottom: 2.5em;
  background-color: #F7F7F7;
}
@media screen and (min-width: 768px) {
  .pageTtlArea {
    margin-bottom: 4.5455em;
    background-color: #fff;
  }
}
.pageTtlArea__inner {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .pageTtlArea__inner {
    flex-direction: row;
    align-items: flex-start;
  }
}
.pageTtlArea__txtWrap {
  display: contents;
}
@media screen and (min-width: 768px) {
  .pageTtlArea__txtWrap {
    width: 100%;
    padding-top: 6.2273em;
    display: block;
  }
}
.pageTtlArea__ttl {
  width: 100%;
  margin: 0 0 3em;
  display: flex;
  flex-direction: column-reverse;
  align-items: flex-start;
}
.pageTtlArea__ttl .jp {
  margin-top: -1.3636em;
  color: #CE1177;
  font-size: 137.5%;
  font-weight: 500;
  --ls: 0.05em;
  text-align: center;
  align-self: center;
  position: relative;
  z-index: 1;
  transform: translateX(50px);
  transition: 1s;
  opacity: 0;
}
.pageTtlArea__ttl .en {
  margin-left: -0.0714em;
  color: #fff;
  font-size: 437.5%;
  font-weight: 900;
  --ls: 0;
  line-height: 1.4286;
  transform: translateX(-50px);
  transition: 1s;
  opacity: 0;
}
.pageTtlArea__ttl.visibled .jp {
  transform: translateX(0);
  opacity: 1;
}
.pageTtlArea__ttl.visibled .en {
  transform: translateX(0);
  opacity: 1;
}
@media screen and (min-width: 768px) {
  .pageTtlArea__ttl {
    width: 100%;
    padding-bottom: 2.1818em;
    position: relative;
  }
  .pageTtlArea__ttl .jp {
    margin-top: -1.7381em;
    margin-right: 1.9048em;
    font-size: 190.91%;
    align-self: flex-end;
  }
  .pageTtlArea__ttl .en {
    margin-left: -0.1333em;
    color: #F7F7F7;
    font-size: 545.45%;
  }
}
@media screen and (min-width: 1024px) {
  .pageTtlArea__ttl .jp {
    margin-right: 4.5238em;
  }
  .pageTtlArea__ttl .en {
    font-size: 545.45%;
  }
}
@media screen and (min-width: 1200px) {
  .pageTtlArea__ttl .en {
    font-size: 681.82%;
  }
}
.pageTtlArea__img {
  width: 100%;
  overflow: hidden;
}
.pageTtlArea__img img {
  transform: scale(1.05);
  transition: 1s;
}
.pageTtlArea__img.visibled img {
  transform: scale(1);
}
@media screen and (min-width: 768px) {
  .pageTtlArea__img {
    width: 46.875%;
    flex-shrink: 0;
  }
}
.pageTtlArea__introBlk {
  width: 100%;
  padding: 1.36em;
  background-color: rgba(240, 240, 240, 0.9);
  color: #CE1177;
  font-size: 156.25%;
  font-weight: 700;
  --ls: 0.05em;
  line-height: 1.6;
  text-align: center;
  order: 1;
}
@media screen and (max-width: 767px) {
  .pageTtlArea__introBlk {
    transition: 1s;
    transition-delay: 0.5s;
    opacity: 0;
    filter: blur(10px);
  }
  .pageTtlArea__introBlk.visibled {
    opacity: 1;
    filter: blur(0);
  }
}
@media screen and (min-width: 768px) {
  .pageTtlArea__introBlk {
    width: calc(100% + 2.7556em);
    padding: 1.1556em 1em;
    font-size: 172.73%;
    line-height: 1.6667;
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: relative;
    z-index: 1;
    transform: translateX(-50px);
    transition: 1s;
    transition-delay: 1s;
    opacity: 0;
  }
  .pageTtlArea__introBlk.visibled {
    transform: translateX(0);
    opacity: 1;
  }
}
@media screen and (min-width: 1200px) {
  .pageTtlArea__introBlk {
    font-size: 204.55%;
  }
}

.secMsg {
  padding: 0 0 3.75em;
}
@media screen and (min-width: 768px) {
  .secMsg {
    padding-bottom: 9.1818em;
  }
}
.secMsg p {
  font-size: 93.75%;
  --ls: 0.025em;
  line-height: 1.6667;
}
.secMsg p + p {
  margin-top: 1.6667em;
}
.secMsg strong {
  color: #CE1177;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .secMsg p {
    font-size: 100%;
    --ls: 0.03em;
    line-height: 1.6667;
  }
  .secMsg p + p {
    margin-top: 1.6667em;
  }
}
@media screen and (min-width: 1024px) {
  .secMsg {
    font-size: 109.09%;
  }
}
.secMsg__row {
  margin-bottom: 1.5625em;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .secMsg__row {
    margin-bottom: 4.9091em;
    flex-direction: row;
  }
  .secMsg__row:has(.secMsg__row_img.visibled) .secMsg__ttl {
    transform: translateX(0);
    opacity: 1;
  }
}
.secMsg__row_img {
  width: 100%;
  padding-top: 80%;
}
@media screen and (min-width: 768px) {
  .secMsg__row_img {
    width: 41.6666%;
    padding-top: 33.8541%;
    margin-top: 3.3636em;
    flex-shrink: 0;
  }
}
.secMsg__row_txtWrap {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .secMsg__row_txtWrap_inner {
    width: auto;
    margin: 0 9.6vw 0 8.5%;
  }
  .secMsg__row_txtWrap_inner .secMsg__subTtl {
    margin-bottom: 1.6786em;
  }
  .secMsg__row_txtWrap_inner .secMsg__list {
    padding-left: 0.5em;
    grid-gap: 1.6667em;
  }
}
@media screen and (min-width: 1024px) {
  .secMsg__row_txtWrap_inner {
    margin-right: 14.5vw;
  }
}
.secMsg__ttl {
  width: 100%;
  padding: 1.36em;
  margin-bottom: 1.6em;
  background-color: rgba(240, 240, 240, 0.9);
  color: #CE1177;
  font-size: 156.25%;
  font-weight: 700;
  --ls: 0.05em;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .secMsg__ttl {
    transition: 1s;
    opacity: 0;
    filter: blur(10px);
  }
  .secMsg__ttl.visibled {
    opacity: 1;
    filter: blur(0);
  }
}
@media screen and (min-width: 768px) {
  .secMsg__ttl {
    width: calc(100% + 1.7778em);
    padding: 1.1111em 2em 1em 2em;
    margin-bottom: 1.6889em;
    margin-left: -1.7778em;
    font-size: 172.73%;
    line-height: 1.6667;
    text-align: left;
    position: relative;
    z-index: 1;
    transform: translateX(50px);
    transition: 1s;
    transition-delay: 0.5s;
    opacity: 0;
  }
}
@media screen and (min-width: 1200px) {
  .secMsg__ttl {
    font-size: 204.55%;
  }
}
.secMsg__subTtl {
  margin-bottom: 1.6875em;
  font-weight: 700;
  --ls: 0.05em;
  line-height: 1.5625;
  display: flex;
  align-items: center;
  justify-content: center;
  grid-gap: 1em;
}
.secMsg__subTtl::before {
  content: "";
  width: 0.75em;
  height: 0.75em;
  border: 1px solid #3B3B3B;
  display: block;
  transform: rotate(45deg);
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .secMsg__subTtl {
    margin-bottom: 1.3571em;
    font-size: 127.27%;
    --ls: 0.03em;
    line-height: 1.4286;
    justify-content: flex-start;
  }
}
.secMsg__list {
  font-size: 93.75%;
  --ls: 0.025em;
  line-height: 1.6667;
  display: grid;
  grid-gap: 1.6667em;
}
.secMsg__list li::before {
  content: "- ";
  color: #CE1177;
  font-weight: 500;
}
.secMsg__list li strong {
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .secMsg__list {
    font-size: 100%;
    --ls: 0.03em;
    line-height: 1.6667;
    grid-gap: 0.8333em;
  }
}
@media screen and (min-width: 1024px) {
  .secMsg__list {
    font-size: 109.09%;
  }
}
.secMsg__txt {
  margin-bottom: 2.6667em;
}
@media screen and (min-width: 768px) {
  .secMsg__txt {
    margin-bottom: 3.3333em;
  }
}

.secRequirements {
  padding: 3.125em 0 5em;
  background-color: #F7F7F7;
}
@media screen and (min-width: 768px) {
  .secRequirements {
    padding: 4.5455em 0 6.8182em;
  }
}
.secRequirements__ttl {
  margin-bottom: 1.875em;
  color: #CE1177;
  font-weight: 700;
  --ls: 0.05em;
  display: flex;
  align-items: center;
  justify-content: center;
  grid-gap: 0.75em;
}
.secRequirements__ttl::before {
  content: "";
  width: 0.75em;
  height: 0.75em;
  border: 1px solid #CE1177;
  display: block;
  transform: rotate(45deg);
}
@media screen and (min-width: 768px) {
  .secRequirements__ttl {
    font-size: 159.09%;
    font-weight: 500;
    margin-bottom: 2.4em;
    grid-gap: 1.0286em;
  }
  .secRequirements__ttl::before {
    width: 0.6286em;
    height: 0.6286em;
  }
}
.secRequirements__table {
  width: 88%;
  margin: 0 auto 1em;
}
.secRequirements__table th, .secRequirements__table td {
  font-size: 93.75%;
  --ls: 0.025em;
  line-height: 1.6667;
  display: block;
}
.secRequirements__table th {
  padding: 0 0 0.3333em;
}
.secRequirements__table td {
  padding: 0 0 1.4667em;
}
.secRequirements__table td p + p {
  margin-top: 1em;
}
@media screen and (min-width: 768px) {
  .secRequirements__table {
    width: 100%;
    margin: 0 auto 3.1818em;
  }
  .secRequirements__table th, .secRequirements__table td {
    font-size: 100%;
    --ls: 0.03em;
    line-height: 1.5909;
    display: table-cell;
  }
  .secRequirements__table th {
    padding: 0;
    white-space: nowrap;
  }
  .secRequirements__table td {
    padding: 0 0 1.6364em 0.9091em;
  }
  .secRequirements__table td p + p {
    margin-top: 0.0909em;
  }
}
@media screen and (min-width: 1200px) {
  .secRequirements__table {
    width: 95%;
  }
}
.secRequirements__btnWrap {
  width: 90%;
}
@media screen and (min-width: 768px) {
  .secRequirements__btnWrap {
    width: 55.6%;
    margin: 0 auto 0 15%;
  }
  .secRequirements__btnWrap .btn {
    width: 100%;
    max-width: 100%;
  }
  .secRequirements__btnWrap .btn::after {
    width: 38%;
  }
  .secRequirements__btnWrap .btn > span {
    width: 75%;
  }
}