@font-face {
  font-family: "Noto Sans JP";
  font-weight: 400;
  font-display: swap;
  src: url(../media/files/fonts/NotoSansJP-Regular.woff);
}
@font-face {
  font-family: "Noto Sans JP";
  font-weight: 500;
  font-display: swap;
  src: url(../media/files/fonts/NotoSansJP-Medium.woff);
}
@font-face {
  font-family: "Noto Sans JP";
  font-weight: 700;
  font-display: swap;
  src: url(../media/files/fonts/NotoSansJP-Bold.woff);
}
@font-face {
  font-family: "Noto Sans JP";
  font-weight: 900;
  font-display: swap;
  src: url(../media/files/fonts/NotoSansJP-Black.woff);
}
@font-face {
  font-family: "M PLUS Rounded 1c";
  font-weight: 900;
  font-display: swap;
  src: url(../media/files/fonts/NotoSansJP-Black.woff);
}
.c-width {
  position: relative;
}

.bg-circle-1,
.bg-circle-2,
.bg-circle-3 {
  position: absolute;
  border-radius: 100%;
  aspect-ratio: 1;
}

.p-home-section:has(.bg-circle-1), .p-home-section:has(.bg-circle-2), .p-home-section:has(.bg-circle-3),
.p-lower-section:has(.bg-circle-1),
.p-lower-section:has(.bg-circle-2),
.p-lower-section:has(.bg-circle-3) {
  position: relative;
}

.p-home-section:has(.js-waveCanvas),
.l-ft:has(.js-waveCanvas) {
  position: relative;
  padding-top: 0;
  z-index: 2;
}
@media only screen and (max-width: 767px) {
  .p-home-section:has(.js-waveCanvas),
  .l-ft:has(.js-waveCanvas) {
    padding-top: 24px;
  }
}
.p-home-section .js-waveCanvas,
.l-ft .js-waveCanvas {
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(max(-100%, -120px));
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .p-home-section .js-waveCanvas,
  .l-ft .js-waveCanvas {
    transform: translateY(max(-100%, -74px));
  }
}

.p-home-section:has(.bg-circle-1),
.p-lower-section:has(.bg-circle-1) {
  z-index: 2;
}
.p-home-section .bg-circle-1--01,
.p-lower-section .bg-circle-1--01 {
  top: 64px;
  left: 8.3%;
  width: 96px;
  background-color: #A9CE52;
  animation: float01 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--01,
  .p-lower-section .bg-circle-1--01 {
    top: 24px;
    left: 13.3%;
    width: 48px;
  }
}
.p-home-section .bg-circle-1--02,
.p-lower-section .bg-circle-1--02 {
  top: 136px;
  left: 3.3%;
  width: 64px;
  background-color: #FFC72D;
  animation: float02 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--02,
  .p-lower-section .bg-circle-1--02 {
    top: 80px;
    left: 5.5%;
    width: 32px;
  }
}
.p-home-section .bg-circle-1--03,
.p-lower-section .bg-circle-1--03 {
  top: 440px;
  left: 8.3%;
  width: 32px;
  background-color: #FF695B;
  animation: float03 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--03,
  .p-lower-section .bg-circle-1--03 {
    display: none;
  }
}
.p-home-section .bg-circle-1--04,
.p-lower-section .bg-circle-1--04 {
  top: 464px;
  left: 12.5%;
  width: 64px;
  background-color: #00B8FF;
  animation: float04 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--04,
  .p-lower-section .bg-circle-1--04 {
    display: none;
  }
}
.p-home-section .bg-circle-1--05,
.p-lower-section .bg-circle-1--05 {
  top: 727px;
  left: 3.4%;
  width: 96px;
  background-color: #B295F9;
  animation: float01 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--05,
  .p-lower-section .bg-circle-1--05 {
    display: none;
  }
}
.p-home-section .bg-circle-1--06,
.p-lower-section .bg-circle-1--06 {
  top: 847px;
  left: 8.4%;
  width: 64px;
  background-color: #FE993A;
  animation: float02 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--06,
  .p-lower-section .bg-circle-1--06 {
    display: none;
  }
}
.p-home-section .bg-circle-1--07,
.p-lower-section .bg-circle-1--07 {
  top: 1157px;
  left: 10.8%;
  width: 32px;
  background-color: #A9CE52;
  animation: float03 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--07,
  .p-lower-section .bg-circle-1--07 {
    display: none;
  }
}
.p-home-section .bg-circle-1--08,
.p-lower-section .bg-circle-1--08 {
  top: 48px;
  right: 9.2%;
  width: 64px;
  background-color: #FE993A;
  animation: float01 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--08,
  .p-lower-section .bg-circle-1--08 {
    top: 50px;
    right: 17.5%;
    width: 32px;
  }
}
.p-home-section .bg-circle-1--09,
.p-lower-section .bg-circle-1--09 {
  top: 204px;
  right: 3.4%;
  width: 64px;
  background-color: #FFC72D;
  animation: float02 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--09,
  .p-lower-section .bg-circle-1--09 {
    top: 98px;
    right: 6%;
    width: 32px;
  }
}
.p-home-section .bg-circle-1--10,
.p-lower-section .bg-circle-1--10 {
  top: 444px;
  right: 8.3%;
  width: 96px;
  background-color: #B295F9;
  animation: float03 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--10,
  .p-lower-section .bg-circle-1--10 {
    display: none;
  }
}
.p-home-section .bg-circle-1--11,
.p-lower-section .bg-circle-1--11 {
  top: 428px;
  right: 8.3%;
  width: 32px;
  background-color: #A9CE52;
  animation: float04 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--11,
  .p-lower-section .bg-circle-1--11 {
    display: none;
  }
}
.p-home-section .bg-circle-1--12,
.p-lower-section .bg-circle-1--12 {
  top: 783px;
  right: 5%;
  width: 64px;
  background-color: #FF695B;
  animation: float01 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--12,
  .p-lower-section .bg-circle-1--12 {
    display: none;
  }
}
.p-home-section .bg-circle-1--13,
.p-lower-section .bg-circle-1--13 {
  top: 924px;
  right: 12.5%;
  width: 32px;
  background-color: #00B8FF;
  animation: float02 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--13,
  .p-lower-section .bg-circle-1--13 {
    display: none;
  }
}
.p-home-section .bg-circle-1--14,
.p-lower-section .bg-circle-1--14 {
  top: 1086px;
  right: 3.3%;
  width: 96px;
  background-color: #A9CE52;
  animation: float03 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--14,
  .p-lower-section .bg-circle-1--14 {
    display: none;
  }
}
.p-home-section .bg-circle-1--15,
.p-lower-section .bg-circle-1--15 {
  top: 1148px;
  right: 9.1%;
  width: 64px;
  background-color: #FFC72D;
  animation: float04 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-1--15,
  .p-lower-section .bg-circle-1--15 {
    display: none;
  }
}

.p-home-section:has(.bg-circle-2),
.p-lower-section:has(.bg-circle-2) {
  z-index: 2;
}
.p-home-section .bg-circle-2--01,
.p-lower-section .bg-circle-2--01 {
  top: 160px;
  left: 12.5%;
  width: 64px;
  background-color: #A9CE52;
  animation: float01 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-2--01,
  .p-lower-section .bg-circle-2--01 {
    top: 40px;
    left: 19.1%;
    width: 32px;
  }
}
.p-home-section .bg-circle-2--02,
.p-lower-section .bg-circle-2--02 {
  top: 344px;
  left: 3.3%;
  width: 96px;
  background-color: #FFC72D;
  animation: float02 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-2--02,
  .p-lower-section .bg-circle-2--02 {
    top: 96px;
    left: 5.5%;
    width: 48px;
  }
}
.p-home-section .bg-circle-2--03,
.p-lower-section .bg-circle-2--03 {
  top: 345px;
  left: 7.5%;
  width: 32px;
  background-color: #B295F9;
  animation: float03 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-2--03,
  .p-lower-section .bg-circle-2--03 {
    top: 96px;
    left: 15%;
    width: 16px;
    height: 16px;
  }
}
.p-home-section .bg-circle-2--04,
.p-lower-section .bg-circle-2--04 {
  top: 688px;
  left: 8.4%;
  width: 64px;
  background-color: #00B8FF;
  animation: float04 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-2--04,
  .p-lower-section .bg-circle-2--04 {
    display: none;
  }
}
.p-home-section .bg-circle-2--05,
.p-lower-section .bg-circle-2--05 {
  top: 1260px;
  left: 6.7%;
  width: 32px;
  background-color: #FFC72D;
  animation: float01 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-2--05,
  .p-lower-section .bg-circle-2--05 {
    display: none;
  }
}
.p-home-section .bg-circle-2--06,
.p-lower-section .bg-circle-2--06 {
  top: 1340px;
  left: 12.6%;
  width: 96px;
  background-color: #FF695B;
  animation: float02 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-2--06,
  .p-lower-section .bg-circle-2--06 {
    display: none;
  }
}
.p-home-section .bg-circle-2--07,
.p-lower-section .bg-circle-2--07 {
  top: 238px;
  right: 13.3%;
  width: 64px;
  background-color: #FE993A;
  animation: float03 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-2--07,
  .p-lower-section .bg-circle-2--07 {
    top: 40px;
    right: 19.5%;
    width: 32px;
  }
}
.p-home-section .bg-circle-2--08,
.p-lower-section .bg-circle-2--08 {
  top: 400px;
  right: 7.4%;
  width: 96px;
  background-color: #FF695B;
  animation: float04 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-2--08,
  .p-lower-section .bg-circle-2--08 {
    top: 82px;
    right: 6%;
    width: 48px;
  }
}
.p-home-section .bg-circle-2--09,
.p-lower-section .bg-circle-2--09 {
  top: 720px;
  right: 3.4%;
  width: 32px;
  background-color: #A9CE52;
  animation: float01 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-2--09,
  .p-lower-section .bg-circle-2--09 {
    display: none;
  }
}
.p-home-section .bg-circle-2--10,
.p-lower-section .bg-circle-2--10 {
  top: 776px;
  right: 5%;
  width: 64px;
  background-color: #FFC72D;
  animation: float02 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-2--10,
  .p-lower-section .bg-circle-2--10 {
    display: none;
  }
}
.p-home-section .bg-circle-2--11,
.p-lower-section .bg-circle-2--11 {
  top: 1310px;
  right: 10.9%;
  width: 32px;
  background-color: #00B8FF;
  animation: float03 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-2--11,
  .p-lower-section .bg-circle-2--11 {
    display: none;
  }
}
.p-home-section .bg-circle-2--12,
.p-lower-section .bg-circle-2--12 {
  top: 1342px;
  right: 12.6%;
  width: 96px;
  background-color: #B295F9;
  animation: float04 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-2--12,
  .p-lower-section .bg-circle-2--12 {
    display: none;
  }
}

.p-home-section:has(.bg-circle-3),
.p-lower-section:has(.bg-circle-3) {
  z-index: 2;
}
.p-home-section .bg-circle-3--01,
.p-lower-section .bg-circle-3--01 {
  top: 184px;
  left: 8.3%;
  width: 64px;
  background-color: #FFC72D;
  animation: float01 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-3--01,
  .p-lower-section .bg-circle-3--01 {
    top: 46px;
    left: 13.3%;
    width: 48px;
  }
}
.p-home-section .bg-circle-3--02,
.p-lower-section .bg-circle-3--02 {
  top: 320px;
  left: 3.3%;
  width: 32px;
  background-color: #B295F9;
  animation: float02 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-3--02,
  .p-lower-section .bg-circle-3--02 {
    top: 120px;
    left: 5.5%;
    width: 32px;
  }
}
.p-home-section .bg-circle-3--03,
.p-lower-section .bg-circle-3--03 {
  top: 388px;
  left: 12.5%;
  width: 96px;
  background-color: #A9CE52;
  animation: float03 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-3--03,
  .p-lower-section .bg-circle-3--03 {
    display: none;
  }
}
.p-home-section .bg-circle-3--04,
.p-lower-section .bg-circle-3--04 {
  top: 844px;
  left: 16.7%;
  width: 64px;
  background-color: #00B8FF;
  animation: float04 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-3--04,
  .p-lower-section .bg-circle-3--04 {
    display: none;
  }
}
.p-home-section .bg-circle-3--05,
.p-lower-section .bg-circle-3--05 {
  top: 894px;
  left: 18.7%;
  width: 32px;
  background-color: #FF695B;
  animation: float01 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-3--05,
  .p-lower-section .bg-circle-3--05 {
    display: none;
  }
}
.p-home-section .bg-circle-3--06,
.p-lower-section .bg-circle-3--06 {
  top: 208px;
  right: 11.6%;
  width: 96px;
  background-color: #FE993A;
  animation: float02 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-3--06,
  .p-lower-section .bg-circle-3--06 {
    top: 62px;
    right: 11.5%;
    width: 48px;
  }
}
.p-home-section .bg-circle-3--07,
.p-lower-section .bg-circle-3--07 {
  top: 488px;
  right: 3.3%;
  width: 64px;
  background-color: #FF695B;
  animation: float03 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-3--07,
  .p-lower-section .bg-circle-3--07 {
    top: 118px;
    right: 5.6%;
    width: 32px;
  }
}
.p-home-section .bg-circle-3--08,
.p-lower-section .bg-circle-3--08 {
  top: 688px;
  right: 10.8%;
  width: 32px;
  background-color: #FFC72D;
  animation: float04 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-3--08,
  .p-lower-section .bg-circle-3--08 {
    display: none;
  }
}
.p-home-section .bg-circle-3--09,
.p-lower-section .bg-circle-3--09 {
  top: 792px;
  right: 15.8%;
  width: 96px;
  background-color: #A9CE52;
  animation: float01 3s ease-in-out infinite alternate;
}
@media only screen and (max-width: 767px) {
  .p-home-section .bg-circle-3--09,
  .p-lower-section .bg-circle-3--09 {
    display: none;
  }
}

@keyframes float01 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-10px, -20px);
  }
}
@keyframes float02 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(5px, -10px);
  }
}
@keyframes float03 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(10px, -5px);
  }
}
@keyframes float04 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(5px, -15px);
  }
}/*# sourceMappingURL=animation.css.map */