.p-top-mv {
  aspect-ratio: 375/812;
  width: 100%;
  background: url(../img/top/mv_bg_sp.jpg) no-repeat center/cover;
  padding: 9rem 0 1rem;
}
@media only screen and (min-width: 769px) {
  .p-top-mv {
    aspect-ratio: 1/1.1;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-mv {
    aspect-ratio: 1920/1080;
    background: url(../img/top/mv_bg_pc.jpg) no-repeat center/cover;
    padding: 15rem 0 1rem;
  }
}
.p-top-mv__center {
  position: relative;
  width: 94.6666666667%;
  padding: 4.3rem 3rem 26.5rem;
  margin-inline: auto;
  border-radius: 5.6rem;
  background: #fff;
  z-index: 0;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__center {
    width: 70%;
    padding: 10rem 6rem 45rem;
    border-radius: 10rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__center {
    width: 33.3333333333%;
    padding: 14.5rem 8rem 13rem;
    border-radius: 16rem;
    z-index: 2;
  }
}
.p-top-mv__center::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 5.6rem;
  background: #f98484;
  opacity: 0.3;
  -webkit-filter: blur(2rem);
  filter: blur(2rem);
  position: absolute;
  top: 1rem;
  left: -1rem;
  z-index: -1;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__center::after {
    border-radius: 10rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__center::after {
    -webkit-filter: blur(3.2rem);
    filter: blur(3.2rem);
    border-radius: 16rem;
  }
}
.p-top-mv__center-bg {
  width: 100%;
  height: 100%;
  border-radius: 5.6rem;
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__center-bg {
    border-radius: 10rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__center-bg {
    border-radius: 16rem;
  }
}
.p-top-mv__center-logo {
  position: relative;
  width: 28rem;
  margin-inline: auto;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__center-logo {
    width: 45.4rem;
  }
}
.p-top-mv__center-ttl {
  position: relative;
  font-size: 3.7rem;
  font-weight: 500;
  text-align: center;
  line-height: 1;
  margin: 0.7rem 0 0.9rem;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__center-ttl {
    font-size: 6rem;
    margin: 1.8rem 0 2rem;
  }
}
.p-top-mv__center-wlcm {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0 2rem;
  border-radius: 0.8rem;
  padding: 0.3rem 0;
  margin-bottom: 1rem;
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    from(#ffcfd4),
    color-stop(50%, #ffe9dc),
    to(#fff0ca)
  );
  background: linear-gradient(90deg, #ffcfd4 0%, #ffe9dc 50%, #fff0ca 100%);
}
@media only screen and (min-width: 769px) {
  .p-top-mv__center-wlcm {
    gap: 0 4rem;
    border-radius: 1.2rem;
    padding: 0.8rem 0;
    margin-bottom: 1.3rem;
  }
}
.p-top-mv__center-wlcm p {
  font-size: 1.6rem;
  font-weight: 700;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__center-wlcm p {
    font-size: 2.2rem;
  }
}
.p-top-mv__center-txt {
  position: relative;
  font-size: 1.3rem;
  line-height: 1.7;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__center-txt {
    font-size: 2rem;
  }
}
.p-top-mv__fukidasi {
  padding: 1.5rem 2rem;
  border-radius: 9999px;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#edb246),
    color-stop(40.76%, #ea6d4b),
    color-stop(81.52%, #dc1f22)
  );
  background: linear-gradient(
    180deg,
    #edb246 0%,
    #ea6d4b 40.76%,
    #dc1f22 81.52%
  );
  position: absolute;
  top: -1.7rem;
  right: 0;
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__fukidasi {
    padding: 2.4rem 3.4rem;
    top: 4rem;
    right: -0.8rem;
  }
}
.p-top-mv__fukidasi::after {
  content: "";
  display: block;
  width: 1.8rem;
  height: 1.1rem;
  background-color: #dc1f22;
  -webkit-clip-path: polygon(0 100%, 20% 0, 100% 0);
  clip-path: polygon(0 100%, 20% 0, 100% 0);
  position: absolute;
  bottom: -0.8rem;
  left: 0;
  right: 0;
  margin-inline: auto;
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__fukidasi::after {
    width: 3rem;
    height: 1.8rem;
    bottom: -1.3rem;
  }
}
.p-top-mv__fukidasi p {
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
  line-height: 1;
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__fukidasi p {
    font-size: 3rem;
  }
}
.p-top-mv__down {
  display: block;
  width: 5.6rem;
  height: 2.5rem;
  border-radius: 1.4rem 1.4rem 0 0;
  background-color: #e03830;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin-inline: auto;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__down {
    width: 8rem;
    height: 3.6rem;
    border-radius: 2rem 2rem 0 0;
  }
}
.p-top-mv__down::after {
  content: "";
  display: block;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 23.0003149 9.20278"><path fill="%23ffffff" d="M11.4999865,9.20278L.445299,1.8326628C-.0141736,1.5265105-.1381971.9054167.1679553.4459441S1.0952014-.1390168,1.554674.1686003l9.9453125,6.6298828L21.445299.1686003c.4599609-.3076172,1.0810547-.1821289,1.3867188.2773438.3066406.4594727.1826172,1.0805664-.2773438,1.3867188l-11.0546875,7.3701172Z" /></svg>')
    no-repeat center/contain;
  aspect-ratio: 23/9;
  width: 1.4rem;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__down::after {
    width: 2.3rem;
  }
}
.p-top-mv__swiper {
  width: 100vw;
  height: auto;
  position: absolute;
  bottom: 22.8rem;
  left: 0;
  right: 0;
  margin-inline: auto;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  will-change: opacity;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__swiper {
    bottom: 33rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__swiper {
    bottom: 38rem;
  }
}
.p-top-mv__swiper.is-ready {
  opacity: 1;
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__swiper .swiper-wrapper {
    padding-inline: 17.8rem !important;
  }
}
.swiper-slide.p-top-mv__slide {
  width: 19.2rem;
  height: auto;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
@media only screen and (min-width: 769px) {
  .swiper-slide.p-top-mv__slide {
    width: 27rem;
  }
}
@media only screen and (min-width: 1025px) {
  .swiper-slide.p-top-mv__slide {
    width: 39rem;
    -webkit-transition: 0;
    transition: 0;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__slide.swiper-slide-active {
    overflow: visible;
    margin: 0 17.8rem 0 12.6rem !important;
    z-index: 2;
  }
}
.p-top-mv__slide-img {
  aspect-ratio: 390/420;
  width: 100%;
  height: 100%;
  border-radius: 3.2rem;
  overflow: hidden;
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__slide-img {
    border-radius: 8rem;
  }
}
.p-top-mv__slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.p-top-mv__btm {
  aspect-ratio: 1016/156;
  width: 270.9333333333%;
  border-radius: 50%;
  position: absolute;
  bottom: -8.5rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #f5f5f5;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__btm {
    aspect-ratio: 2373/156;
    width: 123.59375%;
    bottom: -2rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__btm {
    bottom: -11rem;
  }
}
.p-top-mv__btm-img {
  position: absolute;
  opacity: 0;
}
.p-top-mv__btm-img.is-animated {
  -webkit-animation: 0.8s 0s linear mvIllust forwards;
  animation: 0.8s 0s linear mvIllust forwards;
}
@-webkit-keyframes mvIllust {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 0;
  }
  8% {
    -webkit-transform: scale(1.07);
    transform: scale(1.07);
    opacity: 1;
  }
  17% {
    -webkit-transform: scale(1.232);
    transform: scale(1.232);
    opacity: 1;
  }
  34% {
    scale: 1;
    opacity: 1;
  }
  51% {
    -webkit-transform: scale(1.071);
    transform: scale(1.071);
    opacity: 1;
  }
  68% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  84% {
    -webkit-transform: scale(1.03525);
    transform: scale(1.03525);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes mvIllust {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 0;
  }
  8% {
    -webkit-transform: scale(1.07);
    transform: scale(1.07);
    opacity: 1;
  }
  17% {
    -webkit-transform: scale(1.232);
    transform: scale(1.232);
    opacity: 1;
  }
  34% {
    scale: 1;
    opacity: 1;
  }
  51% {
    -webkit-transform: scale(1.071);
    transform: scale(1.071);
    opacity: 1;
  }
  68% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  84% {
    -webkit-transform: scale(1.03525);
    transform: scale(1.03525);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}
.p-top-mv__btm-img.--01 {
  display: none;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__btm-img.--01 {
    display: block;
    width: 24rem;
    top: -13rem;
    left: 8.4%;
    -webkit-animation-delay: 1.3s;
    animation-delay: 1.3s;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__btm-img.--01 {
    width: 34rem;
    top: -18.9rem;
    left: 8.4%;
  }
}
.p-top-mv__btm-img.--02 {
  width: 21.2rem;
  top: -8.5rem;
  left: 30%;
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__btm-img.--02 {
    width: 29.2rem;
    top: -11.5rem;
    left: 27.8%;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__btm-img.--02 {
    width: 47.7rem;
    top: -18.9rem;
    left: 27.8%;
  }
}
.p-top-mv__btm-img.--03 {
  width: 14.8rem;
  top: -8.7rem;
  right: 32.3%;
  -webkit-animation-delay: 0.9s;
  animation-delay: 0.9s;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__btm-img.--03 {
    width: 22.8rem;
    top: -12.7rem;
    right: 31.9%;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__btm-img.--03 {
    width: 33.2rem;
    top: -18.7rem;
    right: 31.9%;
  }
}
.p-top-mv__btm-img.--04 {
  display: none;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__btm-img.--04 {
    display: block;
    width: 33rem;
    top: -12.3rem;
    right: 7.1%;
    -webkit-animation-delay: 1.7s;
    animation-delay: 1.7s;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-mv__btm-img.--04 {
    width: 47rem;
    top: -17.3rem;
    right: 7.1%;
  }
}
.p-top-mv__event-wrap {
  position: fixed;
  bottom: 2rem;
  right: 1.5rem;
  z-index: 5;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__event-wrap {
    bottom: 2.5rem;
    right: 3.5rem;
  }
}
.p-top-mv__event-wrap.scroll {
  position: absolute;
}
.p-top-mv__event {
  position: relative;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 3.2rem 0.8rem 1fr;
  grid-template-columns: 3.2rem 1fr;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 0.8rem;
  width: 19rem;
  height: 4.8rem;
  background-color: #fff;
  border-radius: 1.2rem;
  -webkit-box-shadow: 0px 5px 12px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 5px 12px rgba(0, 0, 0, 0.1);
  padding: 0.8rem 1.5rem 0.8rem 0.8rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__event {
    -ms-grid-columns: 6.4rem 2rem 1fr;
    grid-template-columns: 6.4rem 1fr;
    gap: 0 2rem;
    width: 40rem;
    height: 8.8rem;
    border-radius: 2.4rem;
    -webkit-box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.1);
    padding: 1.2rem 5.5rem 1.2rem 1.2rem;
  }
}
@media only screen and (min-width: 769px) {
  .p-top-mv__event::after {
    content: "";
    display: block;
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 10"><path fill="%23222222" d="M5.44629 0.563914C5.60249 0.407733 5.85551 0.407731 6.01172 0.563914L9.88086 4.43305C9.95569 4.50797 9.99796 4.6094 9.99805 4.71528V5.28462C9.99796 5.3905 9.95569 5.49192 9.88086 5.56684L6.01172 9.43598C5.85551 9.59218 5.6025 9.59217 5.44629 9.43598L5.11133 9.102C4.95523 8.94579 4.95517 8.69177 5.11133 8.53559L8.00879 5.63911H0.400391C0.17963 5.63911 0.000247866 5.4604 0 5.2397V4.76606C0.000105534 4.54524 0.179542 4.36665 0.400391 4.36665H8.01465L5.11133 1.4643C4.95517 1.30813 4.95523 1.05411 5.11133 0.897899L5.44629 0.563914Z" /></svg>')
      no-repeat center/contain;
    aspect-ratio: 1/1;
    width: 1.2rem;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 3rem;
    margin-block: auto;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
}
.p-top-mv__event-close {
  display: block;
  width: 2rem;
  height: 2rem;
  border-radius: 0.6rem;
  background: #222;
  position: absolute;
  top: -1rem;
  right: -0.5rem;
  z-index: 10;
  pointer-events: auto;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__event-close {
    width: 2.8rem;
    height: 2.8rem;
    border-radius: 0.8rem;
    right: -1rem;
  }
}
.p-top-mv__event-close::before,
.p-top-mv__event-close::after {
  content: "";
  display: block;
  width: 1rem;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__event-close::before,
  .p-top-mv__event-close::after {
    width: 1.2rem;
  }
}
.p-top-mv__event-close::before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.p-top-mv__event-close::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.p-top-mv__event-l {
  aspect-ratio: 1/1;
  border-radius: 0.6rem;
  background-color: #f0a800;
  font-size: 0.8rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
  line-height: 1.3;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__event-l {
    border-radius: 1.6rem;
    font-size: 1.4rem;
  }
}
.p-top-mv__event-ttl {
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
}
@media only screen and (min-width: 769px) {
  .p-top-mv__event-ttl {
    font-size: 1.6rem;
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {
  .p-top-mv__event:hover {
    background-color: #f5f5f5;
  }
  .p-top-mv__event:hover::after {
    -webkit-transform: translateX(0.5rem);
    transform: translateX(0.5rem);
  }
}
.p-top-outline {
  position: relative;
  background-color: #f5f5f5;
  margin-top: -0.5rem;
  padding: 3.7rem 0 8.7rem;
}
@media only screen and (min-width: 769px) {
  .p-top-outline {
    padding: 10rem 0 11rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-outline {
    padding: 28.7rem 0 11rem;
  }
}
.p-top-outline__bg {
  aspect-ratio: 347/342;
  width: 34.7rem;
  position: absolute;
}
@media only screen and (max-width: 768px) {
  .p-top-outline__bg {
    display: none;
  }
}
.p-top-outline__bg.--tr {
  top: 30rem;
  right: -6rem;
}
.p-top-outline__bg.--bl {
  bottom: 7rem;
  left: -6rem;
}
.p-top-outline__bg-img {
  width: 100%;
  height: 100%;
}
.p-top-outline__bg-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.p-top-outline__bgtxt {
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 3rem;
  width: 100vw;
  position: absolute;
  top: -2rem;
  left: 0;
  right: 0;
  margin-inline: auto;
}
@media only screen and (min-width: 769px) {
  .p-top-outline__bgtxt {
    top: 2rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-outline__bgtxt {
    top: 18rem;
  }
}
.p-top-outline__bgtxt p {
  font-size: 10rem;
  font-weight: 500;
  line-height: 1;
  color: #efeff0;
  white-space: nowrap;
  -webkit-animation: oulineTxt 30s infinite linear;
  animation: oulineTxt 30s infinite linear;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@media only screen and (min-width: 769px) {
  .p-top-outline__bgtxt p {
    font-size: 18rem;
  }
}
@-webkit-keyframes oulineTxt {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(calc(-100% - 3rem));
    transform: translateX(calc(-100% - 3rem));
  }
}
@keyframes oulineTxt {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(calc(-100% - 3rem));
    transform: translateX(calc(-100% - 3rem));
  }
}
.p-top-outline__txtbox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 0.8rem;
}
@media only screen and (min-width: 769px) {
  .p-top-outline__txtbox {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0 1.5rem;
  }
}
.p-top-outline__txtbox + .p-top-outline__txtbox {
  margin-top: 0.5rem;
}
.p-top-outline__txt {
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 2.3;
}
@media only screen and (min-width: 769px) {
  .p-top-outline__txt {
    font-size: 4.8rem;
    line-height: 2.15;
  }
}
.p-top-outline__img {
  position: relative;
  display: inline-block;
  aspect-ratio: 180/72;
  width: 9.6rem;
  border-radius: 9999px;
  overflow: hidden;
}
@media only screen and (min-width: 769px) {
  .p-top-outline__img {
    width: 18rem;
  }
}
.p-top-outline__img::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #e03830;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
.p-top-outline__img.is-animated::after {
  -webkit-animation: outlineImg 1.2s cubic-bezier(0.8, 0, 0.17, 1) forwards;
  animation: outlineImg 1.2s cubic-bezier(0.8, 0, 0.17, 1) forwards;
}
@-webkit-keyframes outlineImg {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}
@keyframes outlineImg {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}
.p-top-outline__img img {
  opacity: 1;
}
.p-top-outline__img.show-img img {
  opacity: 1;
}
.p-top-about {
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(80%, #f5f5f5),
    color-stop(80%, #ffffff),
    to(#ffffff)
  );
  background: linear-gradient(
    to bottom,
    #f5f5f5 80%,
    #ffffff 80%,
    #ffffff 100%
  );
}
.p-top-about .c-btn {
  margin-top: 2.3rem;
}
@media only screen and (min-width: 769px) {
  .p-top-about .c-btn {
    margin-top: 8rem;
  }
}
.p-top-about__inner {
  position: relative;
  border-radius: 4.8rem;
  background: linear-gradient(
    77.11deg,
    #dc1f67 3.53%,
    #ea6d4b 50.22%,
    #ffb52d 96.92%
  );
  padding: 3.5rem 3rem 6rem;
  display: -ms-grid;
  display: grid;
  gap: 6rem 0;
  -webkit-box-shadow: 0 2.4rem 3rem rgba(97, 3, 3, 0.16);
  box-shadow: 0 2.4rem 3rem rgba(97, 3, 3, 0.16);
  z-index: 5;
}
@media only screen and (min-width: 769px) {
  .p-top-about__inner {
    border-radius: 13rem;
    padding: 7rem 12rem 13rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-about__inner {
    border-radius: 16rem;
    padding: 13.5rem 17rem 16.5rem;
    -ms-grid-columns: 43% 10rem 1fr;
    grid-template-columns: 43% 1fr;
    gap: 0 10rem;
  }
}
.p-top-about__ttl {
  position: relative;
  font-size: 1.6rem;
  font-weight: 500;
  opacity: 0.5;
  color: #fff;
  padding-left: 2rem;
  margin-bottom: 1.5rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media only screen and (min-width: 769px) {
  .p-top-about__ttl {
    font-size: 2rem;
    margin-bottom: 6.5rem;
  }
}
.p-top-about__ttl::before {
  content: "";
  display: block;
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 9999px;
  background-color: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin-block: auto;
}
@media only screen and (min-width: 769px) {
  .p-top-about__ttl::before {
    width: 1rem;
    height: 1rem;
  }
}
.p-top-about__txt {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.7;
  color: #fff;
  margin-top: 2rem;
}
@media only screen and (min-width: 769px) {
  .p-top-about__txt {
    font-size: 2.8rem;
    margin-top: 0;
  }
}
.p-top-about__imgbox {
  position: relative;
}
.swiper.p-top-about__swiper {
  width: 29rem;
  height: auto;
  position: relative;
  margin-inline: auto;
}
@media only screen and (min-width: 769px) {
  .swiper.p-top-about__swiper {
    width: 70rem;
  }
}
@media only screen and (min-width: 1025px) {
  .swiper.p-top-about__swiper {
    width: 60rem;
  }
}
.p-top-about__slide-img {
  border-radius: 1.5rem;
  overflow: hidden;
}
@media only screen and (min-width: 769px) {
  .p-top-about__slide-img {
    border-radius: 3.2rem;
  }
}
.swiper-slide.p-top-about__slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: -webkit-transform 0.4s ease, -webkit-filter 0.4s ease;
  transition: -webkit-transform 0.4s ease, -webkit-filter 0.4s ease;
  transition: transform 0.4s ease, filter 0.4s ease;
  transition: transform 0.4s ease, filter 0.4s ease, -webkit-transform 0.4s ease,
    -webkit-filter 0.4s ease;
  -webkit-transform-origin: center center;
  transform-origin: center center;
}
.p-top-about__slide:not(.swiper-slide-active) .p-top-about__slide-img {
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
  z-index: 0 !important;
}
.p-top-about__slide:not(.swiper-slide-active) .p-top-about__slide-img::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 1.5rem;
  background-color: #fff;
  opacity: 0.4;
  -webkit-filter: blur(1px);
  filter: blur(1px);
  position: absolute;
  top: 0;
  left: 0;
}
.p-top-about__slide.swiper-slide-active .p-top-about__slide-img {
  -webkit-transform: scale(1);
  transform: scale(1);
  z-index: 1 !important;
}
.p-top-about__slide.swiper-slide-active .p-top-about__slide-img::before {
  display: none;
}
.p-top-about .swiper-pagination {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  top: 0;
  bottom: 0;
  left: auto;
  right: -13rem;
  margin-block: auto;
  gap: 0.6rem 0;
}
@media only screen and (max-width: 1024px) {
  .p-top-about .swiper-pagination {
    display: none;
  }
}
.circle-pagination {
  position: relative;
  width: 2rem;
  height: 2rem;
  z-index: 1;
  background-color: #fba833;
  border-radius: 9999px;
  border: 1px solid #fff;
  margin: auto;
  cursor: pointer;
  opacity: 1;
}
.circle-pagination .circle-pagination_inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 0.8rem;
  height: 0.8rem;
  background-color: #fff;
  border-radius: 9999px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 4;
}
.circle-pagination::before {
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  background-color: #fba833;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
  -webkit-transform-origin: top left;
  transform-origin: top left;
  position: absolute;
  top: 0;
  bottom: 0;
  margin-block: auto;
  left: -1rem;
  z-index: 2;
}
.circle-pagination::after {
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  background-color: #fba833;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
  -webkit-transform-origin: bottom right;
  transform-origin: bottom right;
  position: absolute;
  top: 0;
  bottom: 0;
  margin-block: auto;
  left: 1rem;
  z-index: 3;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active.circle-pagination::before {
  -webkit-animation: circleRight 3s linear forwards;
  animation: circleRight 3s linear forwards;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active.circle-pagination::after {
  -webkit-animation: circleLeft 3s linear forwards;
  animation: circleLeft 3s linear forwards;
}
@-webkit-keyframes circleLeft {
  0% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  50% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
  }
  100% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
  }
}
@keyframes circleLeft {
  0% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  50% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
  }
  100% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
  }
}
@-webkit-keyframes circleRight {
  0% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  50% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  100% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
  }
}
@keyframes circleRight {
  0% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  50% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  100% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
  }
}
.p-top-about__btm {
  aspect-ratio: 1016/156;
  width: 270.9333333333%;
  border-radius: 50%;
  position: absolute;
  bottom: -8.5rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #fff;
}
@media only screen and (min-width: 1025px) {
  .p-top-about__btm {
    aspect-ratio: 2373/156;
    width: 123.59375%;
    bottom: 6rem;
  }
}
.p-top-about__wlcm {
  position: absolute;
  z-index: 3;
  aspect-ratio: 157/82;
}
.p-top-about__wlcm.--jp {
  width: 10.5rem;
  top: 3.7rem;
  right: -2.3rem;
}
@media only screen and (min-width: 769px) {
  .p-top-about__wlcm.--jp {
    width: 15.7rem;
    top: 13rem;
    right: 3rem;
  }
}
.p-top-about__wlcm.--de {
  width: 9rem;
  top: -2.2rem;
  left: -1.8rem;
}
@media only screen and (min-width: 769px) {
  .p-top-about__wlcm.--de {
    width: 15.7rem;
    top: 6rem;
    left: -2rem;
  }
}
.p-top-about__wlcm img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.p-top-cnct {
  position: relative;
  padding: 7rem 0 3rem;
  background-color: #fff;
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct {
    padding: 6rem 0;
  }
}
.p-top-cnct .c-btn {
  margin: 2.5rem auto 0;
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct .c-btn {
    margin: 4rem auto 0;
  }
}
.p-top-cnct__inner {
  position: relative;
  aspect-ratio: 375/752;
  width: 100%;
  background: url(../img/top/connect_bg_sp.png) no-repeat center/cover;
  padding: 18.8rem 0;
  z-index: 5;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__inner {
    aspect-ratio: 1920/1018;
    background: url(../img/top/connect_bg_pc.png) no-repeat center/contain;
    padding: 20rem 0;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__inner {
    padding: 30rem 0;
  }
}
.p-top-cnct__box {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.p-top-cnct__ttl {
  font-size: 3.35rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.2;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__ttl {
    font-size: 6.8rem;
  }
}
.p-top-cnct__ttl .ribon {
  display: inline-block;
  aspect-ratio: 46/24;
  width: 2.8rem;
  background: url(../img/top/connect_ribon.svg) no-repeat center/contain;
  margin-inline: -1rem;
  margin-bottom: 0.3rem;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__ttl .ribon {
    width: 4.6rem;
    margin-inline: -1.5rem;
  }
}
.p-top-cnct__ttl .de {
  font-size: 4.6rem;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(62.43%, #f87a4c),
    to(#cf592e)
  );
  background: linear-gradient(180deg, #f87a4c 62.43%, #cf592e 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0, 0, 0, 0);
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__ttl .de {
    font-size: 8.8rem;
    margin-right: 1.5rem;
  }
}
.p-top-cnct__ttl .jp {
  font-size: 4.6rem;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#f97777),
    to(#c32121)
  );
  background: linear-gradient(180deg, #f97777 0%, #c32121 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(0, 0, 0, 0);
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__ttl .jp {
    font-size: 8.8rem;
    margin-left: 1.5rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__ttl br.--sptb {
    display: none;
  }
}
.p-top-cnct__txt {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.7;
  text-align: center;
  margin-top: 1.5rem;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__txt {
    font-size: 2rem;
    margin-top: 2.7rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__txt.--sp {
    display: none;
  }
}
.p-top-cnct__txt.--pc {
  display: none;
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__txt.--pc {
    display: block;
  }
}
.p-top-cnct__imgbox {
  position: absolute;
}
.p-top-cnct__imgbox.--1 {
  top: 3.8rem;
  left: 16.5rem;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__imgbox.--1 {
    top: 12.5rem;
    left: 11.5rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__imgbox.--1 {
    left: 41.5rem;
  }
}
.p-top-cnct__imgbox.--2 {
  top: 16.6rem;
  left: -3.1rem;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__imgbox.--2 {
    top: 37.6rem;
    left: 2.8rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__imgbox.--2 {
    left: 11.8rem;
  }
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__imgbox.--3 {
    bottom: 17.6rem;
    left: 18rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__imgbox.--3 {
    left: 32rem;
  }
}
.p-top-cnct__imgbox.--4 {
  bottom: 27rem;
  right: -1.7rem;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__imgbox.--4 {
    bottom: auto;
    top: 16.3rem;
    right: 16.3rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__imgbox.--4 {
    right: 28.3rem;
  }
}
.p-top-cnct__imgbox.--5 {
  bottom: 15.2rem;
  right: 2.5rem;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__imgbox.--5 {
    bottom: 30.2rem;
    right: 4.5rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__imgbox.--5 {
    right: 11.5rem;
  }
}
.p-top-cnct__imgbox.--6 {
  bottom: 8.5rem;
  right: 18.3rem;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__imgbox.--6 {
    bottom: 11rem;
    right: 20.3rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__imgbox.--6 {
    right: 49.3rem;
  }
}
.p-top-cnct__img {
  border-radius: 0.4rem;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__img {
    border-radius: 1.2rem;
  }
}
.p-top-cnct__img::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 0.4rem;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
  -webkit-transform-origin: top right;
  transform-origin: top right;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__img::after {
    border-radius: 1.2rem;
  }
}
.p-top-cnct__img.--black::after {
  background-color: #222;
}
.p-top-cnct__img.--red::after {
  background-color: #e03830;
}
.p-top-cnct__img.--yellow::after {
  background-color: #ffcf00;
}
.p-top-cnct__img.--white::after {
  background-color: #f5f5f5;
}
.p-top-cnct__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.p-top-cnct__img.is-animated {
  opacity: 1;
}
.p-top-cnct__img.is-animated::after {
  -webkit-animation: cnctImg 1s 0.3s cubic-bezier(0.8, 0, 0.17, 1) forwards;
  animation: cnctImg 1s 0.3s cubic-bezier(0.8, 0, 0.17, 1) forwards;
}
@-webkit-keyframes cnctImg {
  0% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  100% {
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
  }
}
@keyframes cnctImg {
  0% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  100% {
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
  }
}
.p-top-cnct__img.--1 {
  aspect-ratio: 209/140;
  width: 10rem;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__img.--1 {
    width: 15.5rem;
  }
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__img.--1 {
    width: 20.9rem;
  }
}
.p-top-cnct__img.--2 {
  aspect-ratio: 282/188;
  width: 10.9rem;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__img.--2 {
    width: 19rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__img.--2 {
    width: 28.2rem;
  }
}
.p-top-cnct__img.--3 {
  aspect-ratio: 225/300;
  width: 14rem;
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__img.--3 {
    width: 22.5rem;
  }
}
@media only screen and (max-width: 768px) {
  .p-top-cnct__img.--3 {
    display: none;
  }
}
.p-top-cnct__img.--4 {
  aspect-ratio: 225/300;
  width: 9.2rem;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__img.--4 {
    width: 15rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__img.--4 {
    width: 22.5rem;
  }
}
.p-top-cnct__img.--5 {
  aspect-ratio: 294/196;
  width: 18rem;
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__img.--5 {
    width: 29.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .p-top-cnct__img.--5 {
    display: none;
  }
}
.p-top-cnct__img.--6 {
  aspect-ratio: 212/141;
  width: 10.3rem;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__img.--6 {
    width: 18rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__img.--6 {
    width: 21.2rem;
  }
}
.p-top-cnct__illust {
  position: absolute;
  opacity: 0;
}
.p-top-cnct__illust.is-animated {
  -webkit-animation: 0.8s 0s linear BoundIn forwards;
  animation: 0.8s 0s linear BoundIn forwards;
}
@-webkit-keyframes BoundIn {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 0;
  }
  8% {
    -webkit-transform: scale(1.07);
    transform: scale(1.07);
    opacity: 1;
  }
  17% {
    -webkit-transform: scale(1.232);
    transform: scale(1.232);
    opacity: 1;
  }
  34% {
    scale: 1;
    opacity: 1;
  }
  51% {
    -webkit-transform: scale(1.071);
    transform: scale(1.071);
    opacity: 1;
  }
  68% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  84% {
    -webkit-transform: scale(1.03525);
    transform: scale(1.03525);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes BoundIn {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 0;
  }
  8% {
    -webkit-transform: scale(1.07);
    transform: scale(1.07);
    opacity: 1;
  }
  17% {
    -webkit-transform: scale(1.232);
    transform: scale(1.232);
    opacity: 1;
  }
  34% {
    scale: 1;
    opacity: 1;
  }
  51% {
    -webkit-transform: scale(1.071);
    transform: scale(1.071);
    opacity: 1;
  }
  68% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  84% {
    -webkit-transform: scale(1.03525);
    transform: scale(1.03525);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}
.p-top-cnct__illust.--1 {
  aspect-ratio: 190/131;
  width: 9.5rem;
  bottom: -4rem;
  left: -8rem;
  -webkit-animation-delay: 1.3s;
  animation-delay: 1.3s;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__illust.--1 {
    width: 14rem;
    bottom: -5.4rem;
    left: -6.7rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__illust.--1 {
    width: 19rem;
    left: -15.7rem;
  }
}
.p-top-cnct__illust.--2 {
  aspect-ratio: 94/68;
  width: 4.4rem;
  top: -3rem;
  left: 4.7rem;
  -webkit-animation-delay: 1.5s;
  animation-delay: 1.5s;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__illust.--2 {
    width: 7.4rem;
    top: 5rem;
    left: auto;
    right: -9rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__illust.--2 {
    width: 9.4rem;
    top: 10rem;
    right: -11rem;
  }
}
.p-top-cnct__illust.--3 {
  aspect-ratio: 95/156;
  width: 5.4rem;
  right: 0;
  bottom: -13.7rem;
  -webkit-animation-delay: 1.7s;
  animation-delay: 1.7s;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__illust.--3 {
    width: 7rem;
    right: auto;
    bottom: -10rem;
    left: 3.2rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__illust.--3 {
    width: 9.5rem;
  }
}
.p-top-cnct__illust.--4 {
  aspect-ratio: 217/132;
  width: 15rem;
  bottom: -1rem;
  left: -12.5rem;
  -webkit-animation-delay: 1.5s;
  animation-delay: 1.5s;
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__illust.--4 {
    width: 21.7rem;
    left: -18.5rem;
  }
}
@media only screen and (max-width: 768px) {
  .p-top-cnct__illust.--4 {
    display: none;
  }
}
.p-top-cnct__illust.--5 {
  aspect-ratio: 92/165;
  width: 6.8rem;
  bottom: -8rem;
  right: -7rem;
  -webkit-animation-delay: 1.7s;
  animation-delay: 1.7s;
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__illust.--5 {
    width: 9.2rem;
  }
}
@media only screen and (max-width: 768px) {
  .p-top-cnct__illust.--5 {
    display: none;
  }
}
.p-top-cnct__illust.--6 {
  aspect-ratio: 256/168;
  width: 15rem;
  bottom: 0;
  right: 0;
  -webkit-animation-delay: 1.3s;
  animation-delay: 1.3s;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__illust.--6 {
    width: 20rem;
    top: -11.6rem;
    bottom: auto;
    right: -0.5rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__illust.--6 {
    width: 25.6rem;
    top: -16.6rem;
    right: 2.5rem;
  }
}
.p-top-cnct__illust.--7 {
  aspect-ratio: 80/159;
  width: 7rem;
  bottom: -14.8rem;
  left: 4.8rem;
  -webkit-animation-delay: 1.7s;
  animation-delay: 1.7s;
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__illust.--7 {
    width: 8.5rem;
    bottom: -13.8rem;
    left: -6.2rem;
  }
}
@media only screen and (max-width: 768px) {
  .p-top-cnct__illust.--7 {
    display: none;
  }
}
.p-top-cnct__illust.--8 {
  aspect-ratio: 128/93;
  width: 6.4rem;
  top: -4.6rem;
  left: 2rem;
  -webkit-animation-delay: 1.3s;
  animation-delay: 1.3s;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__illust.--8 {
    width: 8rem;
    top: -5.8rem;
    left: 4rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__illust.--8 {
    width: 12.8rem;
    top: -9rem;
  }
}
.p-top-cnct__btm {
  aspect-ratio: 1016/156;
  width: 270.9333333333%;
  border-radius: 50%;
  position: absolute;
  bottom: -1rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #fff;
  z-index: 1;
}
@media only screen and (min-width: 769px) {
  .p-top-cnct__btm {
    aspect-ratio: 2373/156;
    width: 123.59375%;
    bottom: -2.5rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-cnct__btm {
    bottom: -5.5rem;
  }
}
.p-top-report {
  background: url(../img/top/report_bg.jpg) no-repeat center/cover;
  padding: 9rem 0 8rem;
}
@media only screen and (min-width: 769px) {
  .p-top-report {
    padding: 11rem 0 10rem;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-report {
    padding: 21rem 0 15rem;
  }
}
.p-top-report .c-btn {
  margin: 2.5rem auto 0;
}
@media only screen and (min-width: 769px) {
  .p-top-report .c-btn {
    margin: -8.5rem auto 0 6rem;
  }
}
.p-top-report .c-title {
  margin-left: 1rem;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 769px) {
  .p-top-report .c-title {
    margin-left: 6rem;
    margin-bottom: 6rem;
  }
}
.swiper.p-top-report__swiper {
  width: 100vw;
  margin-inline: calc(50% - 50vw);
  padding-bottom: 10rem;
}
@media only screen and (min-width: 769px) {
  .swiper.p-top-report__swiper {
    padding-bottom: 14.5rem;
  }
}
.swiper.p-top-report__swiper .swiper-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.swiper-slide.p-top-report__slide {
  width: 89.3333333333%;
  display: -ms-grid;
  display: grid;
  gap: 1.5rem 0;
}
@media only screen and (min-width: 769px) {
  .swiper-slide.p-top-report__slide {
    width: 41.0416666667%;
    gap: 2rem 0;
  }
}
.p-top-report__slide .slide-img-wrap {
  position: relative;
}
.p-top-report__slide .slide-tag {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0.8rem;
  position: absolute;
  top: 1rem;
  left: 1rem;
}
@media only screen and (min-width: 769px) {
  .p-top-report__slide .slide-tag {
    gap: 1.2rem;
    top: 1.6rem;
    left: 2rem;
  }
}
.p-top-report__slide .slide-new {
  font-size: 1.1rem;
  font-weight: 500;
  color: #fff;
  min-width: 6.5rem;
  min-height: 2.7rem;
  border-radius: 0.6rem;
  background: #2aa95f;
  -webkit-box-shadow: inset 0px 0px 10px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0px 0px 10px rgba(0, 0, 0, 0.2);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0 0.5rem;
  padding: 0.3rem 1.5rem;
}
@media only screen and (min-width: 769px) {
  .p-top-report__slide .slide-new {
    font-size: 2rem;
    min-width: 10.8rem;
    min-height: 4.4rem;
    border-radius: 1.6rem;
  }
}
.p-top-report__slide .slide-new::before {
  content: "";
  display: block;
  width: 0.6rem;
  height: 0.8rem;
  background: url(../img/top/report_new.svg) no-repeat center/contain;
}
@media only screen and (min-width: 769px) {
  .p-top-report__slide .slide-new::before {
    width: 1rem;
    height: 1.4rem;
  }
}
.p-top-report__slide .slide-tax {
  font-size: 1.1rem;
  font-weight: 500;
  color: #fff;
  min-width: 6.5rem;
  min-height: 2.7rem;
  border-radius: 0.6rem;
  background: #363331;
  -webkit-box-shadow: inset 0px 0px 10px rgba(0, 0, 0, 0.2);
  box-shadow: inset 0px 0px 10px rgba(0, 0, 0, 0.2);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0 0.5rem;
  padding: 0.3rem 1.5rem;
}
@media only screen and (min-width: 769px) {
  .p-top-report__slide .slide-tax {
    font-size: 2rem;
    min-width: 12.7rem;
    min-height: 4.4rem;
    border-radius: 1.6rem;
  }
}
.p-top-report__slide .slide-tax::before {
  content: "";
  display: block;
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 9999px;
  background: #e03830;
}
@media only screen and (min-width: 769px) {
  .p-top-report__slide .slide-tax::before {
    width: 0.6rem;
    height: 0.6rem;
  }
}
.p-top-report__slide .slide-img {
  aspect-ratio: 788/525;
  width: 100%;
  border-radius: 1.2rem;
  overflow: hidden;
  -webkit-box-shadow: 0px 0.5rem 1.2rem rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0.5rem 1.2rem rgba(0, 0, 0, 0.1);
}
@media only screen and (min-width: 769px) {
  .p-top-report__slide .slide-img {
    border-radius: 3.2rem;
    -webkit-box-shadow: 0px 1rem 2rem rgba(0, 0, 0, 0.1);
    box-shadow: 0px 1rem 2rem rgba(0, 0, 0, 0.1);
  }
}
.p-top-report__slide .slide-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.p-top-report__slide .slide-txt-box {
  padding: 0 1rem;
  display: -ms-grid;
  display: grid;
  gap: 0.5rem 0;
}
@media only screen and (min-width: 769px) {
  .p-top-report__slide .slide-txt-box {
    padding: 0 2rem;
    gap: 1rem 0;
  }
}
.p-top-report__slide .slide-ttl {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
}
@media only screen and (min-width: 769px) {
  .p-top-report__slide .slide-ttl {
    font-size: 2.8rem;
    margin-bottom: 0.5rem;
  }
}
.p-top-report__slide .slide-txt {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 30% 1fr;
  grid-template-columns: 30% 1fr;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (min-width: 1025px) {
  .p-top-report__slide .slide-txt {
    -ms-grid-columns: 18% 1fr;
    grid-template-columns: 18% 1fr;
  }
}
.p-top-report__slide .slide-txt dt {
  position: relative;
  font-size: 1.3rem;
  color: #fff;
  opacity: 0.7;
  padding-left: 2rem;
}
@media only screen and (min-width: 769px) {
  .p-top-report__slide .slide-txt dt {
    font-size: 1.8rem;
    padding-left: 3rem;
  }
}
.p-top-report__slide .slide-txt dt::before {
  content: "";
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin-block: auto;
}
@media only screen and (min-width: 769px) {
  .p-top-report__slide .slide-txt dt::before {
    width: 2.4rem;
    height: 2.4rem;
  }
}
.p-top-report__slide .slide-txt.--sche dt::before {
  background: url(../img/top/report_icon_sche.svg) no-repeat center/contain;
}
.p-top-report__slide .slide-txt.--pin dt::before {
  background: url(../img/top/report_icon_pin.svg) no-repeat center/contain;
}
.p-top-report__slide .slide-txt dd {
  font-size: 1.3rem;
  color: #fff;
  line-height: 1.5;
}
@media only screen and (min-width: 769px) {
  .p-top-report__slide .slide-txt dd {
    font-size: 1.8rem;
  }
}
.p-top-report .swiper-navigation {
  width: 10.8rem;
  height: 4.8rem;
  position: absolute;
  bottom: 0;
  left: 2rem;
}
@media only screen and (min-width: 769px) {
  .p-top-report .swiper-navigation {
    width: 12.8rem;
    height: 5.6rem;
    left: auto;
    right: 12rem;
  }
}
.p-top-report .swiper-button-next,
.p-top-report .swiper-button-prev {
  position: relative;
  width: 4.8rem;
  height: 4.8rem;
  border-radius: 1.2rem;
  border: 1px solid #fff;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media only screen and (min-width: 769px) {
  .p-top-report .swiper-button-next,
  .p-top-report .swiper-button-prev {
    width: 5.6rem;
    height: 5.6rem;
    border-radius: 1.6rem;
  }
}
.p-top-report .swiper-button-next {
  position: absolute;
  top: 0;
  right: 0;
}
.p-top-report .swiper-button-prev {
  top: 0;
  left: 0;
}
.p-top-report .swiper-button-next::after,
.p-top-report .swiper-button-prev::after {
  font-size: 1.2rem;
  color: #fff;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {
  .p-top-report .swiper-button-next:hover,
  .p-top-report .swiper-button-prev:hover {
    background-color: #fff;
  }
  .p-top-report .swiper-button-next:hover::after,
  .p-top-report .swiper-button-prev:hover::after {
    color: #e03830;
  }
}
.p-top-news {
  background-color: #f5f5f5;
  padding: 7.6rem 0;
}
@media only screen and (min-width: 769px) {
  .p-top-news {
    padding: 10rem 0;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-news {
    padding: 16.5rem 0;
  }
}
.p-top-news .c-btn.--pc {
  display: none;
}
@media only screen and (min-width: 1025px) {
  .p-top-news .c-btn.--pc {
    display: -ms-grid !important;
    display: grid !important;
    margin-top: 8rem;
  }
}
.p-top-news .c-btn.--sp {
  margin-top: 3rem;
}
@media only screen and (min-width: 769px) {
  .p-top-news .c-btn.--sp {
    margin: 5rem auto 0;
  }
}
@media only screen and (min-width: 1025px) {
  .p-top-news .c-btn.--sp {
    display: none;
  }
}
.p-top-news__inner {
  padding: 0 2rem !important;
}
@media only screen and (min-width: 1025px) {
  .p-top-news__inner {
    padding: 0 5rem !important;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 63%;
    grid-template-columns: 1fr 63%;
  }
}
.p-top-news__list {
  display: -ms-grid;
  display: grid;
  gap: 1.6rem 0;
  margin-top: -1rem;
}
@media only screen and (min-width: 769px) {
  .p-top-news__list {
    gap: 3rem 0;
    margin-top: 2rem;
  }
}
.p-top-news__link {
  display: block;
  border-radius: 1.6rem;
  background-color: #fff;
  -webkit-box-shadow: 0px 5px 12px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 5px 12px rgba(0, 0, 0, 0.1);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 2.5rem 2.3rem;
  gap: 1.1rem 1rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media only screen and (min-width: 769px) {
  .p-top-news__link {
    border-radius: 2.4rem;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 9% 3.5rem 10.5% 3.5rem 1fr;
    grid-template-columns: 9% 10.5% 1fr;
    padding: 3rem 5.3rem;
    gap: 0 3.5rem;
  }
}
.p-top-news__date {
  font-size: 1.1rem;
  opacity: 0.5;
}
@media only screen and (min-width: 769px) {
  .p-top-news__date {
    font-size: 1.6rem;
  }
}
.p-top-news__tax {
  font-size: 1.1rem;
  font-weight: 500;
  color: #e03830;
  text-align: center;
  line-height: 1;
  border-radius: 0.8rem;
  border: 1px solid #e03830;
  padding: 0.5rem 2.2rem;
}
@media only screen and (min-width: 769px) {
  .p-top-news__tax {
    font-size: 1.6rem;
    border-radius: 1.2rem;
    padding: 1rem 2.2rem;
  }
}
.p-top-news__ttl {
  position: relative;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.7;
  width: 100%;
}
@media only screen and (min-width: 769px) {
  .p-top-news__ttl {
    font-size: 1.8rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.p-top-news__ttl::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #222;
  position: absolute;
  bottom: -0.1rem;
  left: 0;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transform-origin: left top;
  transform-origin: left top;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {
  .p-top-news__link:hover {
    background-color: #f5f5f5;
  }
  .p-top-news__link:hover .p-top-news__ttl::after {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}
.p-top-gallery {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 1.2rem;
  padding: 2rem 0 9rem;
}
@media only screen and (min-width: 769px) {
  .p-top-gallery {
    gap: 0 3.2rem;
    padding: 4.5rem 0 16rem;
  }
}
.p-top-gallery__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 0 1.2rem;
  -webkit-animation: gallery 20s infinite linear;
  animation: gallery 20s infinite linear;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@media only screen and (min-width: 769px) {
  .p-top-gallery__list {
    gap: 0 3.2rem;
    -webkit-animation: gallery 40s infinite linear;
    animation: gallery 40s infinite linear;
  }
}
@-webkit-keyframes gallery {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(calc(-100% - 1.2rem));
    transform: translateX(calc(-100% - 1.2rem));
  }
}
@keyframes gallery {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(calc(-100% - 1.2rem));
    transform: translateX(calc(-100% - 1.2rem));
  }
}
@media only screen and (min-width: 769px) {
  @-webkit-keyframes gallery {
    from {
      -webkit-transform: translateX(0);
      transform: translateX(0);
    }
    to {
      -webkit-transform: translateX(calc(-100% - 3.2rem));
      transform: translateX(calc(-100% - 3.2rem));
    }
  }
  @keyframes gallery {
    from {
      -webkit-transform: translateX(0);
      transform: translateX(0);
    }
    to {
      -webkit-transform: translateX(calc(-100% - 3.2rem));
      transform: translateX(calc(-100% - 3.2rem));
    }
  }
}
.p-top-gallery__item {
  border-radius: 1.2rem;
  overflow: hidden;
}
@media only screen and (min-width: 769px) {
  .p-top-gallery__item {
    border-radius: 3.2rem;
  }
}
.p-top-gallery__item:nth-child(3n + 1) {
  aspect-ratio: 385/514;
  width: 20rem;
}
@media only screen and (min-width: 769px) {
  .p-top-gallery__item:nth-child(3n + 1) {
    width: 38.5rem;
  }
}
.p-top-gallery__item:nth-child(3n + 2) {
  aspect-ratio: 514/343;
  width: 23.2rem;
  margin-top: 1.5rem;
}
@media only screen and (min-width: 769px) {
  .p-top-gallery__item:nth-child(3n + 2) {
    width: 51.4rem;
    margin-top: 2.4rem;
  }
}
.p-top-gallery__item:nth-child(3n + 3) {
  aspect-ratio: 514/343;
  width: 23.2rem;
  margin-top: 3rem;
}
@media only screen and (min-width: 769px) {
  .p-top-gallery__item:nth-child(3n + 3) {
    width: 51.4rem;
    margin-top: 4.8rem;
  }
}
.p-top-gallery__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
