@charset "utf-8";

/* 不要なフッターのマージンを消す */
body.is-renewal .footer-navigation,
body:has(.top-kv) .footer-navigation,
body:has(.pagetitle) .footer-navigation,
body:has(.breadcrumbs) .footer-navigation {
  margin-top: 0 !important;
}

/* common */
.contentContainer {
  position: relative;
  overflow: hidden;
  background: #fff;
}

.contentContainer * {
  box-sizing: border-box;
}

.contentContainer img {
  vertical-align: top;
}

.fontNotoSansJp,
.contentContainer {
  font-family: "Noto Sans Japanese";
}
.fontJinsNextLight {
  font-family: jins_next_ttlight;
}
.fontJinsNextRegular {
  font-family: jins_next_ttregular;
}
.fontJinsNextMedium {
  font-family: jins_next_ttmedium;
}
.fontJinsNextBold {
  font-family: jins_next_ttbold;
}

/* content */
.contentContainer img {
  vertical-align: top;
}

.contentContainer p {
  margin-bottom: 0;
}

/* font */
@font-face {
  font-family: "DotGothic16";
  font-style: normal;
  src: url("../fonts/DotGothic16-Regular.ttf") format("truetype");
}

@font-face {
  font-family: "Rounded Mplus 1c ExtraBold";
  src: url("../fonts/MPLUSRounded1c-ExtraBold.ttf") format("truetype");
}

@font-face {
  font-family: "Rounded Mplus 1c Medium";
  src: url("../fonts/MPLUSRounded1c-Medium.ttf") format("truetype");
}

@font-face {
  font-family: "Noto Sans JP Bold";
  src: url("../fonts/NotoSansJP-Bold.ttf") format("truetype");
}

@font-face {
  font-family: "Noto Sans JP Medium";
  src: url("../fonts/NotoSansJP-Medium.ttf") format("truetype");
}

@font-face {
  font-family: "TamaFont";
  src: url("../fonts/Tamafont.otf") format("opentype");
}

.fontDotGothic16 {
  font-family: "DotGothic16", sans-serif;
}

.fontRoundedMplus1cExtraBold {
  font-family: "Rounded Mplus 1c ExtraBold", sans-serif;
}

.fontRoundedMplus1cMedium {
  font-family: "Rounded Mplus 1c Medium", sans-serif;
}

.fontNotoSansJPBold {
  font-family: "Noto Sans JP Bold", sans-serif;
}

.fontNotoSansJPMedium {
  font-family: "Noto Sans JP Medium", sans-serif;
}

.fontTamaFont {
  font-family: "TamaFont", sans-serif;
}

/* KV section with layered circles */
.tamagotchi__kv {
  position: relative;
  width: 100%;
  height: 56.25vw;
  overflow: hidden;
}

.tamagotchi__kv__bg {
  position: relative;
  width: 100%;
  height: 100%;
}

.tamagotchi__kv__bg__pc {
  display: block;
}
.tamagotchi__kv__bg__sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__kv {
    height: 107.179vw;
  }
  .tamagotchi__kv__bg__pc {
    display: none;
  }
  .tamagotchi__kv__bg__sp {
    display: block;
  }
}

/** tamagotchi section2 */
.tamagotchi__section2 {
  position: relative;
  width: 100%;
  height: 136.263vw;
  background: #fff;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2 {
    height: 385.641vw;
  }
}

.tamagotchi__characters > div {
  position: absolute;
  z-index: 1;
}

.tamagotchi__characters img {
  position: relative;
  width: 100%;
  height: auto;
  display: block;
}

.tamagotchi__characters__myaotchi {
  width: 13.021vw;
  height: auto;
  top: 53.646vw;
  right: 15.625vw;
  animation: bounce-character 5s ease-in-out infinite;
  animation-delay: 5s;
}

@media screen and (max-width: 768px) {
  .tamagotchi__characters__myaotchi {
    width: 28.205vw;
    right: 2.564vw;
    top: 87.179vw;
  }
}

.tamagotchi__characters__mametchi {
  width: 14.648vw;
  height: auto;
  top: 69.01vw;
  left: 13.672vw;
  animation: bounce-character 5s ease-in-out infinite;
  animation-delay: 5.7s;
}

@media screen and (max-width: 768px) {
  .tamagotchi__characters__mametchi {
    width: 28.205vw;
    left: -2.564vw;
    top: 148.718vw;
  }
}

.tamagotchi__characters__mimitchi {
  width: 13.021vw;
  height: auto;
  top: 78.776vw;
  right: 10.417vw;
  animation: bounce-character 5s ease-in-out infinite;
  animation-delay: 6.4s;
}

@media screen and (max-width: 768px) {
  .tamagotchi__characters__mimitchi {
    width: 26.923vw;
    right: 0;
    top: 161.538vw;
  }
}

.tamagotchi__characters__hohotchi {
  width: 10.742vw;
  height: auto;
  top: 118.49vw;
  right: 19.857vw;
  animation: bounce-character 5s ease-in-out infinite;
  animation-delay: 7.1s;
}

@media screen and (max-width: 768px) {
  .tamagotchi__characters__hohotchi {
    width: 24.359vw;
    right: 1.282vw;
    top: 292.308vw;
  }
}

.tamagotchi__characters__kuchipatchi {
  width: 13.021vw;
  height: auto;
  top: 135.417vw;
  left: 19.531vw;
  animation: bounce-character 5s ease-in-out infinite;
  animation-delay: 7.8s;
}

@media screen and (max-width: 768px) {
  .tamagotchi__characters__kuchipatchi {
    width: 28.205vw;
    left: -2.564vw;
    top: 379.487vw;
  }
}

.tamagotchi__section2__guruguru {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: auto;
}
.tamagotchi__section2__guruguru__sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__guruguru {
    display: none;
  }

  .tamagotchi__section2__guruguru.tamagotchi__section2__guruguru__sp {
    display: block;
  }
}

.tamagotchi__section2__guruguru img {
  width: 100%;
  height: auto;
  display: block;
}

.tamagotchi__section2__text-top {
  position: relative;
  padding-top: 5.078vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #153362;
  gap: 1.823vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__text-top {
    width: 73.333vw;
    height: auto;
    gap: 0;
    margin: 0 auto;
    padding-top: 10.256vw;
  }
}

.tamagotchi__section2__text-top__date {
  font-feature-settings: "palt" on;
  font-size: 2.441vw;
  font-style: normal;
  line-height: normal;
}

.tamagotchi__section2__text-top__date span {
  font-feature-settings: "palt" on;
  font-size: 1.79vw;
  font-style: normal;
  line-height: normal;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__text-top__date {
    font-size: 4.953vw;
  }

  .tamagotchi__section2__text-top__date span {
    font-size: 3.632vw;
  }
}

.tamagotchi__section2__text-top__description1 {
  font-size: 2.083vw;
  font-style: normal;
  line-height: normal;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__text-top__description1 {
    font-size: 4.872vw;
    margin-top: 1.282vw;
  }
}

.tamagotchi__section2__text-top__description1 img {
  width: 36.589vw;
  height: 2.937vw;
  display: block;
  margin: 0.781vw auto 0;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__text-top__description1 img {
    width: 73.479vw;
    height: 5.897vw;
    margin: 2.564vw auto 0;
  }
}

.tamagotchi__section2__text-top__description2 {
  text-align: center;
  font-size: 1.172vw;
  font-style: normal;
  line-height: normal;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__text-top__description2 {
    display: block;
    font-size: 3.077vw;
    margin-top: 1.282vw;
  }
}

.tamagotchi__section2__collab {
  display: flex;
  width: 67.839vw;
  padding: 2.604vw 0vw 2.279vw;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 3.244vw;
  border: 0.521vw solid #f499c0;
  background: #ffedf5;
  margin: 6.836vw auto 0 auto;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__collab {
    width: 85.641vw;
    height: 112.308vw;
    padding: 10.256vw 0 9.084vw;
    border-radius: 5.297vw;
    border: 1.364vw solid #f499c0;
    margin: 24.359vw auto 0 auto;
    justify-content: flex-start;
  }
}

.tamagotchi__section2__collab__top {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3.646vw;
  color: #153362;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__collab__top {
    flex-direction: column;
    gap: 0;
  }
}

.tamagotchi__section2__collab__top__image {
  position: relative;
  width: 19.401vw;
  height: 19.401vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__collab__top__image {
    display: none;
  }
}

.tamagotchi__section2__collab__top__text__image {
  position: relative;
  display: none;
  width: 47.1vw;
  height: 47.1vw;
  margin-top: 4.103vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__collab__top__text__image {
    display: block;
  }
}

.tamagotchi__section2__collab__top__text__image img {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
}

.tamagotchi__section2__collab__top__image img {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
}

.tamagotchi__section2__collab__top__text {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0;
}

.tamagotchi__section2__collab__top__text__title {
  text-align: center;
  font-size: 2.083vw;
  font-style: normal;
  line-height: 148.389%;
  letter-spacing: 0.104vw;
}

.tamagotchi__section2__collab__top__text__title__jp {
  letter-spacing: normal;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__collab__top__text__title {
    font-size: 5.509vw;
    letter-spacing: 0.551vw;
  }

  .tamagotchi__section2__collab__top__text__title__tamagotchi {
    letter-spacing: 0.275vw;
  }

  .tamagotchi__section2__collab__top__text__title__jp {
    display: block;
    letter-spacing: normal;
  }
}

.tamagotchi__section2__collab__top__text__description {
  text-align: center;
  font-size: 1.563vw;
  font-style: normal;
  line-height: 133.333%;
  margin-top: 1.563vw;
}

.tamagotchi__section2__collab__top__text__description2 {
  text-align: center;
  font-size: 1.042vw;
  font-style: normal;
  line-height: normal;
  margin-top: 1.042vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__collab__top__text__description {
    font-size: 3.638vw;
    line-height: 148.389%;
    margin-top: 1.795vw;
  }

  .tamagotchi__section2__collab__top__text__description2 {
    font-size: 2.564vw;
    margin-top: 4.103vw;
  }
}

.tamagotchi__section2__price {
  position: relative;
  display: flex;
  margin: 10.807vw auto 0;
  flex-direction: column;
  justify-content: center;
  background: #fff;
  box-shadow: 0vw 0vw 0.977vw 0vw #bea4b1;
  width: 52.263vw;
  height: 23.49vw;
  padding: 0;
  border-radius: 3.125vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__price {
    width: 88.205vw;
    height: auto;
    padding: 3.846vw 0 10.256vw;
    border-radius: 5.577vw;
    box-shadow: 0vw 0vw 3.846vw 0vw #bea4b1;
    margin: 12.821vw auto 0;
    justify-content: flex-start;
  }
}

.tamagotchi__section2__price__title {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding-left: 11.393vw;
  gap: 1.432vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__price__title {
    gap: 0;
    flex-direction: column;
    padding-left: 0;
  }
}

.tamagotchi__section2__price__title__icon {
  display: flex;
  padding: 0.736vw 2.079vw;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.521vw;
  border-radius: 2.075vw;
  background: #e0f8ff;
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 1.081vw;
  font-style: normal;
  line-height: normal;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__price__title__icon {
    width: 20vw;
    height: 7.179vw;
    padding: 0;
    gap: 1.693vw;
    border-radius: 6.746vw;
    font-size: 3.226vw;
  }
}

.tamagotchi__section2__price__title__text {
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 2.93vw;
  font-style: normal;
  line-height: normal;
}

.tamagotchi__section2__price__title__text__tax {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__price__title__text {
    font-size: 8.914vw;
    margin-top: 2.308vw;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .tamagotchi__section2__price__title__text__tax {
    display: inline-block;
    font-size: 3.688vw;
    margin-top: 1.538vw;
  }
}

.tamagotchi__section2__price__value {
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 0.977vw;
  font-style: normal;
  line-height: normal;
  margin-top: -0.651vw;
}

.tamagotchi__section2__price__sub {
  color: #626264;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 0.781vw;
  font-style: normal;
  line-height: normal;
}

.tamagotchi__section2__price__sub__pc {
  display: block;
}
.tamagotchi__section2__price__sub__sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__price__value {
    font-size: 3.688vw;
    margin-top: 0;
  }
  .tamagotchi__section2__price__sub {
    font-size: 3.077vw;
    margin-top: 2.308vw;
  }

  .tamagotchi__section2__price__sub__pc {
    display: none;
  }
  .tamagotchi__section2__price__sub__sp {
    display: block;
  }
}

.tamagotchi__section2__price__date {
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 1.972vw;
  font-style: normal;
  line-height: normal;
  margin-top: 1.172vw;
}

.tamagotchi__section2__price__date span {
  font-feature-settings: "palt" on;
  font-size: 1.446vw;
  font-style: normal;
  line-height: normal;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__price__date {
    margin-top: 0;
    font-size: 5.87vw;
  }

  .tamagotchi__section2__price__date span {
    font-size: 4.305vw;
  }
}

.tamagotchi__section2__price__description {
  color: #626264;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 0.846vw;
  font-style: normal;
  line-height: normal;
  margin-top: 1.237vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__price__description {
    font-size: 3.077vw;
    margin-top: 2.051vw;
  }
}

.tamagotchi__section2__price__button {
  display: inline-flex;
  width: 20.565vw;
  height: 3.438vw;
  padding: 1.375vw 0;
  margin: 1.237vw auto 0;
  justify-content: center;
  align-items: center;
  gap: 0.458vw;
  flex-shrink: 0;
  border-radius: 1.891vw;
  border: 0.172vw solid #000;
  background: #fef102;
  box-shadow: 0vw 0.229vw 0vw 0vw #000;
  color: #000;
  font-feature-settings: "palt" on;
  font-size: 1.042vw;
  font-style: normal;
  line-height: normal;
  letter-spacing: 0.156vw;
  transition: all 0.3s ease;
  text-decoration: none;
}

.tamagotchi__section2__price__button:hover {
  box-shadow: 0 0 0 0 #000;
  transform: translateY(0.229vw);
}

.tamagotchi__section2__price__button svg {
  width: 0.911vw;
  height: 1.107vw;
  margin-left: 0.391vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__price__button {
    width: 59.129vw;
    height: 11.826vw;
    padding: 4.73vw 1.774vw;
    gap: 1.577vw;
    border-radius: 6.504vw;
    border: 0.591vw solid #000;
    box-shadow: 0vw 0.788vw 0vw 0vw #000;
    font-size: 3.59vw;
    letter-spacing: 0.144vw;
    margin-top: 5.128vw;
  }

  .tamagotchi__section2__price__button:hover {
    box-shadow: 0 0 0 0 #000;
    transform: translateY(0.788vw);
  }

  .tamagotchi__section2__price__button svg {
    width: 3.59vw;
    height: 4.359vw;
    margin-left: 1.538vw;
  }
}

.tamagotchi__section2__lineup {
  position: relative;
  margin-top: 2.279vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__lineup {
    margin-top: 12.821vw;
  }
}

.tamagotchi__section2__lineup__title {
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 3.81vw;
  font-style: normal;
  line-height: normal;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__lineup__title {
    font-size: 7.179vw;
  }
}

.tamagotchi__section2__lineup__items {
  margin-top: 1.953vw;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3.197vw;
  flex-shrink: 0;
  align-self: stretch;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__lineup__items {
    margin-top: 3.846vw;
    gap: 3.077vw;
  }
}

.tamagotchi__section2__lineup__items > div {
  width: 33.984vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__lineup__items > div {
    width: 44.615vw;
  }
}

.tamagotchi__section2__lineup__items a {
  display: block;
  width: 100%;
  transition: filter 0.3s ease;
  border-radius: 5.211vw;
  box-shadow: 0vw 0vw 7.816vw 0vw #deced6;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__lineup__items a {
    border-radius: 2.505vw;
    box-shadow: 0vw 0vw 3.758vw 0vw #deced6;
  }
}

.tamagotchi__section2__lineup__items a:hover {
  filter: brightness(0.7);
}

.tamagotchi__section2__lineup__items__pc {
  display: block;
}

.tamagotchi__section2__lineup__items__sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section2__lineup__items__pc {
    display: none;
  }
  .tamagotchi__section2__lineup__items__sp {
    display: block;
  }
}

.tamagotchi__section3 {
  position: relative;
  width: 100%;
  height: 369.271vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3 {
    height: 1218.974vw;
  }
}

.tamagotchi__section3__star {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  display: flex;
  justify-content: space-between;
  z-index: 100;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3__star {
    display: none;
  }
}

.tamagotchi__section3__star__l,
.tamagotchi__section3__star__r {
  position: relative;
  display: block;
  width: 16.341vw;
  height: auto;
}

.tamagotchi__section3__star__l {
  top: -3.125vw;
  left: 0.326vw;
}

.tamagotchi__section3__star__r {
  top: -3.125vw;
  right: -2.734vw;
}

.tamagotchi__section3__lineup-kodomo {
  position: relative;
  width: 100%;
  height: 32.292vw;
  background: #e3b7ce;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3__lineup-kodomo {
    height: 67.949vw;
  }
}

.tamagotchi__section3__lineup-kodomo__title {
  position: relative;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 4.948vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3__lineup-kodomo__title {
    font-size: 9.41vw;
    letter-spacing: -2.635vw;
    padding-top: 7.949vw;
  }
}

.tamagotchi__section3__lineup-kodomo__title__star_L {
  margin-right: 0.977vw;
  width: 2.501vw;
  height: 2.501vw;
}

.tamagotchi__section3__lineup-kodomo__title__pc {
  width: 35.286vw;
  height: 2.669vw;
  display: block;
}

.tamagotchi__section3__lineup-kodomo__title__sp {
  display: none;
}

.tamagotchi__section3__lineup-kodomo__title__star_R {
  margin-left: 0.977vw;
  width: 2.501vw;
  height: 2.501vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3__lineup-kodomo__title__star_L {
    margin-right: 1.538vw;
    width: 7.386vw;
    height: 7.386vw;
  }

  .tamagotchi__section3__lineup-kodomo__title__pc {
    display: none;
  }

  .tamagotchi__section3__lineup-kodomo__title__sp {
    width: 64.359vw;
    height: auto;
    display: block;
  }

  .tamagotchi__section3__lineup-kodomo__title__star_R {
    margin-left: 1.538vw;
    width: 7.386vw;
    height: 7.386vw;
  }
}

.tamagotchi__section3__lineup-kodomo__items {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4.427vw;
  align-self: stretch;
  margin-top: 3.971vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3__lineup-kodomo__items {
    gap: 6.059vw;
    margin-top: 5.128vw;
  }
}

.tamagotchi__section3__lineup-kodomo__items a {
  position: relative;
  display: flex;
  width: 11.133vw;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.521vw;
  text-decoration: none;
  transition: all 0.3s ease;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3__lineup-kodomo__items a {
    width: 23.846vw;
    gap: 1.026vw;
  }
}

.tamagotchi__section3__lineup-kodomo__items a svg:nth-of-type(1) {
  width: 11.081vw;
  height: 12.63vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3__lineup-kodomo__items a svg:nth-of-type(1) {
    width: 23.846vw;
    height: 26.923vw;
  }
}

.tamagotchi__section3__lineup-kodomo__items a .tamagotchi__chara-arrow {
  width: 2.093vw;
  height: 1.256vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3__lineup-kodomo__items a .tamagotchi__chara-arrow {
    width: 4.615vw;
    height: 2.821vw;
  }
}

.tamagotchi__section3__lineup-kodomo__items a p {
  color: #fff;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 1.432vw;
  font-style: normal;
  line-height: normal;
  white-space: nowrap;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3__lineup-kodomo__items a p {
    font-size: 3.333vw;
  }
}

.tamagotchi__section3__lineup-kodomo__items a .tamagotchi__chara {
  position: absolute;
  width: 8.203vw;
  height: 8.203vw;
  top: 2.279vw;
  left: 1.237vw;
  transition: transform 0.3s ease;
}

.tamagotchi__section3__lineup-kodomo__items
  > div:nth-of-type(2)
  a
  .tamagotchi__chara {
  left: 1.628vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3__lineup-kodomo__items a .tamagotchi__chara {
    width: 17.949vw;
    height: 18.205vw;
    top: 5.128vw;
    left: 2.564vw;
  }
  .tamagotchi__section3__lineup-kodomo__items
    > div:nth-of-type(2)
    a
    .tamagotchi__chara {
    left: 3.077vw;
  }
}

.tamagotchi__section3__lineup-kodomo__items a:hover .tamagotchi__chara {
  transform: scale(1.1);
}

.tamagotchi__section3__lineup-kodomo__items a .tamagotchi__chara-arrow {
  transition: transform 0.3s ease;
}

.tamagotchi__section3__lineup-kodomo__items a:hover .tamagotchi__chara-arrow {
  animation: bounce 1s infinite;
}

.tamagotchi__section3__hohotchi {
  width: 100%;
  height: 93.359vw;
  background: #bb96bf;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 3.125vw;
}

.tamagotchi__section3__myaotchi {
  width: 100%;
  height: 93.359vw;
  background: #9170a9;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 3.125vw;
}

.tamagotchi__section3__irukatchi {
  width: 100%;
  height: 150.26vw;
  background: #494b95;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 3.125vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3__hohotchi {
    height: 321.026vw;
    padding-top: 15.385vw;
  }

  .tamagotchi__section3__myaotchi {
    height: 321.026vw;
    padding-top: 15.385vw;
  }

  .tamagotchi__section3__irukatchi {
    height: 508.974vw;
    padding-top: 15.385vw;
  }
}

.tamagotchi__glasses {
  position: relative;
  width: 72.591vw;
  height: auto;
}

.tamagotchi__glasses + .tamagotchi__glasses {
  margin-top: 4.688vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses {
    width: 89.487vw;
  }
  .tamagotchi__glasses + .tamagotchi__glasses {
    margin-top: 20.513vw;
  }
}

.tamagotchi__glasses__fukidashi {
  position: absolute;
  top: 0;
  left: -1.302vw;
  width: 16.862vw;
  height: auto;
  z-index: 10;
}

.tamagotchi__glasses__fukidashi__sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__fukidashi {
    display: none;
  }

  .tamagotchi__glasses__fukidashi.tamagotchi__glasses__fukidashi__sp {
    display: block;
    width: 40.513vw;
    left: -2.564vw;
  }
}

.tamagotchi__glasses__frame {
  display: flex;
  padding: 4.883vw 0 3.1vw 3.906vw;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 1.78vw;
  border-radius: 2.604vw;
  border: 0.391vw solid #153362;
  background: #fff;
  box-shadow: 0vw 0.285vw 0vw 0vw #153362;
  width: 69.466vw;
  margin-top: 4.688vw;
  margin-left: 1.823vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__frame {
    width: 89.487vw;
    padding: 14.103vw 0.034vw 13.846vw 0.222vw;
    border-radius: 5.098vw;
    border: 0.765vw solid var(--color-brand-text, #153362);
    box-shadow: 0vw 0.557vw 0vw 0vw #153362;
    margin-top: 7.179vw;
    margin-left: 0;
    flex-direction: column;
    gap: 3.333vw;
  }
}

.tamagotchi__glasses__frame__left {
  position: relative;
  width: 16.276vw;
  height: auto;
}

.tamagotchi__glasses__frame__left__color {
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 1.132vw;
  font-style: normal;
  line-height: normal;
}

.tamagotchi__glasses__frame__left__title {
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 2.173vw;
  font-style: normal;
  line-height: normal;
  white-space: nowrap;
  margin-left: -0.326vw;
}

.tamagotchi__glasses__frame__left__no {
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 1.304vw;
  font-style: normal;
  line-height: normal;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__frame__left {
    width: 100%;
  }

  .tamagotchi__glasses__frame__left__color {
    font-size: 4.103vw;
  }
  .tamagotchi__glasses__frame__left__title {
    margin-left: 0;
    margin-top: -1.282vw;
    font-size: 5.641vw;
  }

  .tamagotchi__glasses__frame__left__no {
    font-size: 4.103vw;
    margin-top: -1.282vw;
  }
}

.tamagotchi__glasses__frame__left__image {
  display: flex;
  width: 16.603vw;
  height: 19.729vw;
  padding: 1.426vw 0vw 1.483vw 0vw;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  aspect-ratio: 255.02/303.03;
}
.tamagotchi__glasses__frame__left__image img {
  width: 15.437vw;
  height: 15.437vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__frame__left__image {
    position: absolute;
    top: -25.641vw;
    right: -3.846vw;
    width: 26.63vw;
    height: 26.977vw;
    transform: rotate(7.22deg);
    aspect-ratio: 103.86/105.21;
    z-index: 10;
  }
  .tamagotchi__glasses__frame__left__image img {
    width: 26.63vw;
    height: 26.977vw;
  }

  .tamagotchi__section3 .tamagotchi__glasses__frame__left__image {
    position: absolute;
    top: -28.718vw;
    right: -6.41vw;
    width: 32.051vw;
    height: auto;
    transform: rotate(7.22deg);
    aspect-ratio: 103.86/105.21;
    z-index: 10;
  }
  .tamagotchi__section3 .tamagotchi__glasses__frame__left__image img {
    width: 32.051vw;
    height: auto;
  }
}

.tamagotchi__glasses__frame__right {
  position: relative;
  width: 44.661vw;
  overflow: visible;
}

.tamagotchi__glasses__frame__right__sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__frame__right {
    display: none;
  }
  .tamagotchi__glasses__frame__right__sp {
    display: block;
    position: relative;
    width: 81.538vw;
    overflow: visible;
    margin: 0 auto;
  }
}

/* Swiperスライダーのスタイル */
.glasses-swiper {
  position: relative;
  width: 100%;
  height: 24.935vw;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .glasses-swiper {
    height: 76.923vw;
  }
}

.glasses-swiper .swiper-slide {
  text-align: center;
}

.glasses-swiper .swiper-slide img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.glasses-swiper .swiper-slide p {
  margin-top: 3.906vw;
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 1.06vw;
  font-style: normal;
  line-height: normal;
}

@media screen and (max-width: 768px) {
  .glasses-swiper .swiper-slide p {
    margin-top: 0;
    position: absolute;
    bottom: 1.282vw;
    font-size: 3.077vw;
    width: 100%;
  }
}

/* ナビゲーション矢印のスタイル */
.glasses-swiper-button-next,
.glasses-swiper-button-prev {
  position: absolute;
  top: 35% !important;
  display: flex;
  width: 3.516vw !important;
  height: 3.516vw !important;
  padding: 0;
  justify-content: center;
  align-items: center;
  border-radius: 4.232vw;
  border: 0.148vw solid var(--color-brand-text, #153362);
  background: var(--color-mono-0, #fff);
  box-shadow: 0vw 0.197vw 0vw 0vw #153362;
  margin: 0 !important;
  transition: all 0.3s ease;
}
.glasses-swiper-button-next img,
.glasses-swiper-button-prev img {
  display: block;
  width: 1.107vw;
  height: 1.497vw;
}

.glasses-swiper-button-next:hover,
.glasses-swiper-button-prev:hover {
  box-shadow: 0vw 0vw 0vw 0vw #153362;
  transform: translateY(0.197vw);
}

.glasses-swiper-button-next {
  right: 0 !important; /* 画像から離れた位置に配置 */
}

.glasses-swiper-button-prev {
  left: 0 !important; /* 画像から離れた位置に配置 */
}

@media screen and (max-width: 768px) {
  .glasses-swiper-button-next,
  .glasses-swiper-button-prev {
    width: 11.026vw !important;
    height: 11.026vw !important;
    border-radius: 13.272vw;
    top: 66% !important;
    border: 0.464vw solid #153362;
    box-shadow: 0vw 0.619vw 0vw 0vw #153362;
    z-index: 11 !important;
  }
  .glasses-swiper-button-next img,
  .glasses-swiper-button-prev img {
    display: block;
    width: 3.333vw;
    height: 4.692vw;
  }

  .glasses-swiper-button-next:hover,
  .glasses-swiper-button-prev:hover {
    box-shadow: 0vw 0vw 0vw 0vw #153362;
    transform: translateY(0.619vw);
  }

  .glasses-swiper-button-next {
    right: 0.513vw !important; /* 画像から離れた位置に配置 */
  }

  .glasses-swiper-button-prev {
    left: auto !important; /* 画像から離れた位置に配置 */
    right: 15.385vw !important;
  }
}

/* ページネーション（bullet）のスタイル */
.glasses-swiper-pagination {
  position: absolute;
  bottom: 5.208vw !important;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 0.456vw;
  justify-content: center;
  align-items: center;
}

.glasses-swiper-pagination .swiper-pagination-bullet {
  width: 0.488vw;
  height: 0.488vw;
  aspect-ratio: 7.49/7.49;
  cursor: pointer;
  background-color: transparent;
  border: 0.065vw solid #153362;
  transition: background-color 0.3s ease;
  opacity: 1;
  margin: 0 !important;
}

.glasses-swiper-pagination .swiper-pagination-bullet-active {
  background-color: #153362;
}

@media screen and (max-width: 768px) {
  .glasses-swiper-pagination {
    position: absolute;
    bottom: 18.462vw !important;
    left: 3.333vw !important;
    display: flex;
    gap: 3.59vw;
    justify-content: flex-start;
    align-items: center;
  }
  .glasses-swiper-pagination .swiper-pagination-bullet {
    width: 3.846vw;
    height: 3.846vw;
    aspect-ratio: 15/15;
    border: 0.769vw solid #153362;
  }
  .glasses-swiper-pagination .swiper-pagination-bullet-active {
    background-color: #153362;
  }
}

.tamagotchi__glasses__frame__button {
  position: absolute;
  width: 25.716vw;
  height: 5.534vw;
  left: calc(50% - 12.858vw);
  bottom: -2.767vw;
}

.tamagotchi__glasses__frame__button__pc {
  display: block;
}
.tamagotchi__glasses__frame__button__sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__frame__button {
    width: 56.154vw;
    height: 15.128vw;
    left: calc(50% - 28.077vw);
    bottom: -7.564vw;
  }

  .tamagotchi__glasses__frame__button__pc {
    display: none;
  }
  .tamagotchi__glasses__frame__button__sp {
    display: block;
  }
}

.tamagotchi__glasses__frame__button img {
  width: 100%;
  height: 100%;
}

.tamagotchi__glasses__accessory {
  margin-top: 8.333vw;
  display: flex;
  width: 70.508vw;
  height: 38.737vw;
  padding: 2.604vw 0vw 0vw;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  border-radius: 3.244vw;
  background: #fff;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__accessory {
    margin-top: 24.103vw;
    width: 86.41vw;
    height: 157.692vw;
    padding: 6.667vw 0vw 0vw;
    border-radius: 4.445vw;
  }

  .tamagotchi__glasses__accessory.tamagotchi__glasses__accessory--red {
    margin-top: 18.718vw;
    height: 188.718vw;
  }
}

.tamagotchi__glasses__accessory__text {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 1.042vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__accessory__text {
    gap: 1.526vw;
  }
}

.tamagotchi__glasses__accessory__text__title {
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 1.953vw;
  font-style: normal;
  line-height: normal;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__accessory__text__title {
    font-size: 5.641vw;
  }
}

.tamagotchi__glasses__accessory__text__description1 {
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 1.302vw;
  font-style: normal;
  line-height: normal;
  letter-spacing: 0.104vw;
}

.tamagotchi__glasses__accessory__text__description1__pc {
  display: block;
}

.tamagotchi__glasses__accessory__text__description1__sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__accessory__text__description1 {
    font-size: 5.128vw;
    letter-spacing: normal;
  }
  .tamagotchi__glasses__accessory__text__description1__pc {
    display: none;
  }
  .tamagotchi__glasses__accessory__text__description1__sp {
    display: block;
  }
}

.tamagotchi__glasses__accessory__text__description2 {
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 1.042vw;
  font-style: normal;
  line-height: normal;
}

.tamagotchi__glasses__accessory__text__description2__pc {
  display: block;
}

.tamagotchi__glasses__accessory__text__description2__sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__accessory__text__description2 {
    font-size: 3.59vw;
    width: 100%;
    position: relative;
    margin: 0 auto;
  }

  .tamagotchi__glasses__accessory__text__description2__pc {
    display: none;
  }
  .tamagotchi__glasses__accessory__text__description2__sp {
    display: block;
  }
}

.tamagotchi__glasses__accessory__text__description3 {
  color: #153362;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 0.781vw;
  font-style: normal;
  line-height: normal;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__accessory__text__description3 {
    font-size: 3.077vw;
    width: 72.308vw;
    margin: 0 auto;
  }
}

.tamagotchi__glasses__accessory img {
  position: relative;
  width: 51.302vw;
  margin-top: 2.604vw;
}

.tamagotchi__glasses__accessory__image__pc {
  display: block;
}

.tamagotchi__glasses__accessory__image__sp {
  display: none;
}

.tamagotchi__glasses__accessory.tamagotchi__glasses__accessory--red img {
  width: 54.557vw;
  height: 21.875vw;
  margin-top: 1.302vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__glasses__accessory img {
    width: 66.154vw;
    margin-top: 4.103vw;
  }

  .tamagotchi__glasses__accessory__image__pc {
    display: none;
  }
  .tamagotchi__glasses__accessory__image__sp {
    display: block;
  }

  .tamagotchi__glasses__accessory.tamagotchi__glasses__accessory--red img {
    width: 78.462vw;
    height: 117.949vw;
    margin-top: 4.103vw;
  }
}

.tamagotchi__section3__end-border,
.tamagotchi__section4__end-border {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: auto;
}

.tamagotchi__section3__end-border.tamagotchi__section3__end-border__pc,
.tamagotchi__section4__end-border.tamagotchi__section4__end-border__pc {
  display: block;
}

.tamagotchi__section3__end-border.tamagotchi__section3__end-border__sp,
.tamagotchi__section4__end-border.tamagotchi__section4__end-border__sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section3__end-border.tamagotchi__section3__end-border__pc,
  .tamagotchi__section4__end-border.tamagotchi__section4__end-border__pc {
    display: none;
  }

  .tamagotchi__section3__end-border.tamagotchi__section3__end-border__sp,
  .tamagotchi__section4__end-border.tamagotchi__section4__end-border__sp {
    display: block;
  }
}

.tamagotchi__section4 {
  position: relative;
  width: 100%;
  height: 372.917vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section4 {
    height: 1286.154vw;
  }
}

.tamagotchi__section4__star {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  display: flex;
  justify-content: space-between;
  z-index: 100;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section4__star {
    display: none;
  }
}

.tamagotchi__section4__star__l,
.tamagotchi__section4__star__r {
  position: relative;
  display: block;
  width: 16.341vw;
  height: auto;
}

.tamagotchi__section4__star__l {
  top: 1.628vw;
  left: 0.326vw;
}

.tamagotchi__section4__star__r {
  top: 1.628vw;
  right: -2.734vw;
}

.tamagotchi__section4__lineup-otona {
  position: relative;
  width: 100%;
  height: 32.292vw;
  background: #00b0ec;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section4__lineup-otona {
    height: 108.462vw;
  }
}

.tamagotchi__section4__lineup-otona__title {
  position: relative;
  color: #fff;
  text-align: center;
  font-family: DotGothic16;
  font-size: 3.029vw;
  font-style: normal;
  line-height: normal;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 6.836vw;
  gap: 2.279vw;
}

.tamagotchi__section4__lineup-otona__title img {
  position: relative;
  display: block;
  width: 4.099vw;
  height: 4.099vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section4__lineup-otona__title {
    font-size: 6.41vw;
    padding-top: 8.462vw;
    gap: 7.692vw;
  }

  .tamagotchi__section4__lineup-otona__title img {
    width: 9.082vw;
    height: 9.082vw;
  }
}

.tamagotchi__section4__lineup-otona__items {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2.017vw;
  align-self: stretch;
  margin-top: 2.604vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section4__lineup-otona__items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 5.097vw 6.059vw;
    margin: 5.097vw auto 0;
    width: 83.656vw;
  }
}

.tamagotchi__section4__lineup-otona__items a {
  position: relative;
  display: flex;
  width: 10.418vw;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.521vw;
  text-decoration: none;
  transition: all 0.3s ease;
}

.tamagotchi__section4__lineup-otona__items a svg:nth-of-type(1) {
  width: 10.418vw;
  height: 12.63vw;
}

.tamagotchi__section4__lineup-otona__items a .tamagotchi__chara-arrow {
  width: 2.093vw;
  height: 1.256vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section4__lineup-otona__items a {
    width: 23.846vw;
    gap: 1.026vw;
  }

  .tamagotchi__section4__lineup-otona__items a svg:nth-of-type(1) {
    width: 22.308vw;
    height: 26.923vw;
  }

  .tamagotchi__section4__lineup-otona__items a .tamagotchi__chara-arrow {
    width: 4.615vw;
    height: 2.821vw;
  }
}

.tamagotchi__section4__lineup-otona__items a p {
  color: #fff;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 1.432vw;
  font-style: normal;
  line-height: normal;
  white-space: nowrap;
}

.tamagotchi__section4__lineup-otona__items a .tamagotchi__chara {
  position: absolute;
  width: 8.203vw;
  height: 8.203vw;
  top: 2.734vw;
  left: calc(50% - 4.1015vw);
  transition: transform 0.3s ease;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section4__lineup-otona__items a p {
    font-size: 3.333vw;
  }

  .tamagotchi__section4__lineup-otona__items a .tamagotchi__chara {
    width: 17.179vw;
    height: 17.179vw;
    top: 6.41vw;
    left: calc(50% - 8.5895vw);
  }
}

.tamagotchi__section4__lineup-otona__items a:hover .tamagotchi__chara {
  transform: scale(1.1);
}

.tamagotchi__section4__lineup-otona__items a .tamagotchi__chara-arrow {
  transition: transform 0.3s ease;
}

.tamagotchi__section4__lineup-otona__items a:hover .tamagotchi__chara-arrow {
  animation: bounce 1s infinite;
}

.tamagotchi__section4__blue {
  width: 100%;
  height: 98.047vw;
  background: #00b0ec;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 5.534vw;
}

.tamagotchi__section4__yellow {
  width: 100%;
  height: 93.359vw;
  background: #fef102;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 3.125vw;
}

.tamagotchi__section4__red {
  width: 100%;
  height: 150.26vw;
  background: #d1476d;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 6.51vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section4__blue {
    height: 320.513vw;
    padding-top: 15.385vw;
  }

  .tamagotchi__section4__yellow {
    height: 318.718vw;
    padding-top: 15.385vw;
  }

  .tamagotchi__section4__red {
    height: 538.462vw;
    padding-top: 15.385vw;
  }
}

.tamagotchi__section5 {
  position: relative;
  width: 100%;
  height: 54.297vw;
  background: #22274f;
  padding-top: 9.44vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section5 {
    height: 151.795vw;
    padding-top: 20.513vw;
  }
}

.tamagotchi__section5__star {
  position: absolute;
  top: 1.432vw;
  left: 0;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section5__star {
    display: none;
  }
}

.tamagotchi__section5__star img {
  position: relative;
  width: 100%;
  height: auto;
  display: block;
}

.tamagotchi__section5__irukatchi {
  position: absolute;
  z-index: 1;
  top: 27.995vw;
  left: 9.115vw;
  width: 11.068vw;
  height: auto;
  animation: bounce-character 5s ease-in-out infinite;
  animation-delay: 5s;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section5__irukatchi {
    top: 12.549vw;
    left: 2.782vw;
    width: 24.974vw;
  }
}

.tamagotchi__section5__irukatchi img {
  position: relative;
  width: 100%;
  height: auto;
  display: block;
}

.tamagotchi__section5__content {
  width: 67.318vw;
  display: flex;
  height: 25.964vw;
  padding: 2.214vw;
  justify-content: center;
  align-items: center;
  gap: 3.646vw;
  align-self: stretch;
  position: relative;
  border-radius: 1.432vw;
  background: #fff;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section5__content {
    width: 86.395vw;
    height: 107.959vw;
    padding: 6.667vw 0;
    gap: 1.715vw;
    border-radius: 4.445vw;
    flex-direction: column;
    justify-content: flex-start;
  }
}

.tamagotchi__section5__content__image {
  width: 32.422vw;
  height: 18.164vw;
  aspect-ratio: 166/93;
  position: relative;
  display: block;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section5__content__image {
    display: none;
  }
}

.tamagotchi__section5__content__text {
  display: flex;
  width: 25.13vw;
  flex-direction: column;
  align-items: center;
  gap: 1.563vw;
}

.tamagotchi__section5__content__text__logo {
  width: 15.56vw;
  height: 8.008vw;
  aspect-ratio: 239/123;
  position: relative;
  display: block;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section5__content__text {
    width: 100%;
    gap: 0;
  }

  .tamagotchi__section5__content__text__logo {
    width: 38.607vw;
    height: 19.846vw;
    aspect-ratio: 150.57/77.4;
  }
}

.tamagotchi__section5__content__text__description {
  color: #626264;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 0.846vw;
  font-style: normal;
  line-height: normal;
  letter-spacing: 0.068vw;
}

.tamagotchi__section5__content__text__description__pc {
  display: block;
}
.tamagotchi__section5__content__text__description__sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section5__content__text__description {
    font-size: 3.077vw;
    letter-spacing: 0.246vw;
    margin-top: 2.564vw;
  }
  .tamagotchi__section5__content__text__description__pc {
    display: none;
  }
  .tamagotchi__section5__content__text__description__sp {
    display: block;
  }
}

.tamagotchi__section5__content__text__official {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section5__content__text__official {
    display: block;
    position: relative;
    width: 53.387vw;
    height: 29.912vw;
    aspect-ratio: 208.21/116.66;
    margin-top: 5.641vw;
  }
}

.tamagotchi__section5__content__text__link {
  color: #000;
  text-align: center;
  font-feature-settings: "palt" on;
  font-size: 0.917vw;
  font-style: normal;
  line-height: normal;
  letter-spacing: 0.037vw;
  display: flex;
  width: 17.188vw;
  height: 3.438vw;
  padding: 1.375vw 0.516vw;
  justify-content: center;
  align-items: center;
  gap: 0.458vw;
  flex-shrink: 0;
  border-radius: 1.891vw;
  border: 0.172vw solid #000;
  background: #fef102;
  text-decoration: none;
  box-shadow: 0vw 0.229vw 0vw 0vw #000;
  transition: all 0.3s ease;
}

.tamagotchi__section5__content__text__link:hover {
  transform: translateY(0.229vw);
  box-shadow: 0 0 0 0 #000;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section5__content__text__link {
    width: 59.129vw;
    height: 11.826vw;
    padding: 0;
    gap: 1.577vw;
    border-radius: 6.504vw;
    border: 0.591vw solid #000;
    box-shadow: 0vw 0.788vw 0vw 0vw #000;
    font-size: 3.154vw;
    letter-spacing: 0.126vw;
    margin-top: 6.41vw;
  }

  .tamagotchi__section5__content__text__link:hover {
    transform: translateY(0.788vw);
    box-shadow: 0 0 0 0 #000;
  }
}

.tamagotchi__section5__end-curve {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.tamagotchi__section5__end-curve__pc {
  display: block;
}

.tamagotchi__section5__end-curve__sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section5__end-curve__pc {
    display: none;
  }

  .tamagotchi__section5__end-curve__sp {
    display: block;
  }
}

.tamagotchi__section6 {
  position: relative;
  width: 100%;
  height: 59.896vw;
  background: #fff;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section6 {
    height: 214.005vw;
  }
}

.tamagotchi__section6__content {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.tamagotchi__section6__content__share {
  display: flex;
  width: 14.583vw;
  flex-direction: column;
  align-items: center;
  gap: 1.628vw;
  margin-top: 3.255vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section6__content__share {
    width: 57.436vw;
    gap: 6.41vw;
    margin-top: 16.667vw;
  }
}

.tamagotchi__section6__content__share__logo {
  position: relative;
  width: 10.417vw;
  display: block;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section6__content__share__logo {
    width: 31.264vw;
  }
}

.tamagotchi__section6__content__share__items {
  display: inline-flex;
  align-items: center;
  gap: 2.604vw;
}

.tamagotchi__section6__content__share__items a {
  position: relative;
  width: 3.125vw;
  height: 3.125vw;
}

.tamagotchi__section6__content__share__items a svg {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section6__content__share__items {
    gap: 8.792vw;
  }

  .tamagotchi__section6__content__share__items a {
    width: 10.549vw;
    height: 10.549vw;
  }
}

.tamagotchi__section6__content__official {
  position: relative;
  width: 26.367vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.391vw;
  align-self: stretch;
  margin: 3.711vw auto 0;
}

.tamagotchi__section6__content__official img {
  position: relative;
  width: 100%;
  height: auto;
  display: block;
}

.tamagotchi__section6__content__official a {
  color: #000;
  text-align: center;
  font-size: 0.977vw;
  font-style: normal;
  line-height: normal;
  letter-spacing: -0.059vw;
}

.tamagotchi__section6__content__official a:hover {
  background: #000;
  color: #fff;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section6__content__official {
    width: 77.179vw;
    margin: 14.615vw auto 0;
  }

  .tamagotchi__section6__content__official a {
    font-size: 2.858vw;
    letter-spacing: -0.172vw;
    margin-top: 1.026vw;
  }
}

.tamagotchi__section6__content__buttons {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.042vw;
  width: 26.367vw;
  align-self: stretch;
  margin: 3.711vw auto 0;
}
.tamagotchi__section6__content__buttons a {
  position: relative;
  display: flex;
  width: 100%;
  height: 4.362vw;
  padding: 0.781vw 0.586vw;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  border-radius: 4.167vw;
  border: 0.13vw solid #000;
  background: #fef102;
  text-decoration: none;
  transition: all 0.3s ease;
}

.tamagotchi__section6__content__buttons a:hover {
  background: #b4ab02;
}

.tamagotchi__section6__content__buttons__inner {
  display: flex;
  align-items: center;
  gap: 0.781vw;
}

.tamagotchi__section6__content__buttons__inner span {
  width: 14.779vw;
  display: block;
  color: #000;
  text-align: center;
  font-size: 1.042vw;
  font-style: normal;
  line-height: normal;
  letter-spacing: 0.01vw;
}

.tamagotchi__section6__content__buttons__inner img {
  position: relative;
  width: 1.953vw;
  height: auto;
  display: block;
}

.tamagotchi__section6__content__buttons__inner svg {
  width: 0.977vw;
  height: 0.781vw;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section6__content__buttons {
    gap: 3.187vw;
    width: 80.668vw;
    margin: 14.615vw auto 0;
  }
  .tamagotchi__section6__content__buttons a {
    height: 13.345vw;
    padding: 2.39vw 1.793vw;
    border-radius: 12.747vw;
    border: 0.398vw solid #000;
  }

  .tamagotchi__section6__content__buttons a:hover {
    background: #b4ab02;
  }

  .tamagotchi__section6__content__buttons__inner {
    gap: 2.39vw;
  }

  .tamagotchi__section6__content__buttons__inner span {
    width: 45.214vw;
    font-size: 3.187vw;
    letter-spacing: 0.032vw;
  }

  .tamagotchi__section6__content__buttons__inner img {
    width: 5.974vw;
  }

  .tamagotchi__section6__content__buttons__inner svg {
    height: 2.225vw;
    width: 2.989vw;
  }
}

.tamagotchi__section6__content__backtotop {
  margin-top: 4.753vw;
  position: relative;
  width: 21.419vw;
  height: 9.327vw;
}

.tamagotchi__section6__content__backtotop .marutchi {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 5.072vw;
  height: 5.1vw;
}

.tamagotchi__section6__content__backtotop .marutchi svg {
  position: relative;
  width: 100%;
  height: 100%;
}
.tamagotchi__section6__content__backtotop .fukidashi {
  position: absolute;
  top: 0;
  right: 0;
  width: 15.804vw;
  height: 5.584vw;
  transition: all 0.3s ease;
}

.tamagotchi__section6__content__backtotop .fukidashi:hover {
  filter: brightness(0.7);
}

.tamagotchi__section6__content__backtotop .fukidashi img {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section6__content__backtotop {
    margin-top: 21.182vw;
    width: 71.175vw;
    height: 25.701vw;
  }

  .tamagotchi__section6__content__backtotop .marutchi {
    width: 17.547vw;
    height: 17.644vw;
  }

  .tamagotchi__section6__content__backtotop .fukidashi {
    width: 50.172vw;
    height: 17.725vw;
  }

  .tamagotchi__section6__content__backtotop .fukidashi:hover {
    filter: brightness(0.7);
  }
}

.tamagotchi__section6__content__copyright {
  margin-top: 4.753vw;
  position: relative;
}

.tamagotchi__section6__content__copyright p {
  color: #626264;
  font-size: 0.651vw;
  font-style: normal;
  line-height: normal;
}

@media screen and (max-width: 768px) {
  .tamagotchi__section6__content__copyright {
    margin-top: 14.615vw;
  }

  .tamagotchi__section6__content__copyright p {
    font-size: 2.564vw;
  }
}

.tamagotchi__fixed__button {
  position: fixed;
  width: 10.482vw;
  height: 11.508vw;
  z-index: 101;
  bottom: 6.38vw;
  left: 4.427vw;
}

.tamagotchi__fixed__button a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  transition: all 0.3s ease;
}

.tamagotchi__fixed__button img {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
}
.tamagotchi__fixed__button a:hover {
  transform: scale(1.1);
}

@media screen and (max-width: 768px) {
  .tamagotchi__fixed__button {
    width: 26.923vw;
    height: 29.558vw;
    bottom: 3.185vw;
    left: 2.821vw;
  }
}

/* キャラクターの跳ねるアニメーション */
@keyframes bounce-character {
  0% {
    transform: translateY(0%) scaleY(1);
  }
  2% {
    transform: translateY(0%) scaleY(0.8);
  }
  4% {
    transform: translateY(-10%) scaleY(1.1);
  }
  6% {
    transform: translateY(-20%) scaleY(1.05);
  }
  8% {
    transform: translateY(-25%) scaleY(1);
  }
  10% {
    transform: translateY(-20%) scaleY(0.95);
  }
  12% {
    transform: translateY(-10%) scaleY(0.98);
  }
  14% {
    transform: translateY(-5%) scaleY(1);
  }
  16% {
    transform: translateY(-2%) scaleY(1.02);
  }
  18% {
    transform: translateY(0%) scaleY(0.98);
  }
  20% {
    transform: translateY(0%) scaleY(1);
  }
  100% {
    transform: translateY(0%) scaleY(1);
  }
}

/* fukidashi rotate animation */
@keyframes rotate-fukidashi {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(-10deg);
  }
  50% {
    transform: rotate(5deg);
  }
  75% {
    transform: rotate(-3deg);
  }
  100% {
    transform: rotate(0deg);
  }
}

/* character image rotate animation */
@keyframes rotate-character {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(-8deg);
  }
  50% {
    transform: rotate(4deg);
  }
  75% {
    transform: rotate(-2deg);
  }
  100% {
    transform: rotate(0deg);
  }
}

/* character image animation for mobile (considering the existing 7.22deg rotation) */
@keyframes rotate-character-mobile {
  0% {
    transform: rotate(7.22deg);
  }
  25% {
    transform: rotate(-1deg);
  }
  50% {
    transform: rotate(11deg);
  }
  75% {
    transform: rotate(5deg);
  }
  100% {
    transform: rotate(7.22deg);
  }
}

.tamagotchi__glasses__fukidashi {
  transition: transform 0.3s ease;
}

.tamagotchi__glasses__fukidashi.rotate-animation {
  animation: rotate-fukidashi 0.8s ease-in-out;
}

.tamagotchi__glasses__frame__left__image {
  transition: transform 0.3s ease;
}

.tamagotchi__glasses__frame__left__image.rotate-animation {
  animation: rotate-character 0.6s ease-in-out;
}

/* Mobile version uses different animation considering the existing rotation */
@media screen and (max-width: 768px) {
  .tamagotchi__glasses__frame__left__image.rotate-animation {
    animation: rotate-character-mobile 0.6s ease-in-out;
  }
}

/** fadein */
.fadeIn {
  opacity: 0;
  transition: opacity 2s;
}

.fadeIn.fadeIn-delay1 {
  transition-delay: 0.3s;
}

.fadeIn.fadeIn-delay2 {
  transition-delay: 0.6s;
}

.fadeIn.fadeIn-delay3 {
  transition-delay: 0.9s;
}

.fadeIn.fadeIn-delay4 {
  transition-delay: 1.2s;
}

.fadeIn.fadeIn-delay5 {
  transition-delay: 1.5s;
}

.fadeIn.is-show {
  opacity: 1;
}

/** character slide up animation */
.chara-slideUp {
  opacity: 0;
  transform: translateY(1.953vw);
  transition: opacity 2s, transform 2s;
}

.chara-slideUp.is-show {
  opacity: 1;
  transform: translateY(0);
}

@keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(0.521vw);
  }
  60% {
    transform: translateY(0.26vw);
  }
}
