@charset "UTF-8";
/* ========================================
 Breakpoint定義
======================================== */
/* ========================================
 breakpoint取得関数
----------------------------------------
 bp(pc) → 1025px
 bp(900px) → 900px
======================================== */
/* ========================================
 media query mixin
----------------------------------------
 @include media(tab) → min-width:768px
 @include media(tab,max) → max-width:767px
======================================== */
/* ---------------------------------------------
*   p-img-character
--------------------------------------------- */
/*  p-img-character-wrap
--------------------------------------------- */
.p-img-character-wrap {
  position: relative;
  max-width: none;
  width: 100%;
  margin-inline: auto;
  height: 1px;
}
@media (min-width: 768px) {
  .p-img-character-wrap {
    max-width: calc(var(--design-width) * 1px);
  }
}
.p-img-character-wrap--event {
  display: none;
}

/*  p-img-character
--------------------------------------------- */
.p-img-character {
  position: absolute;
  display: block;
}
.p-img-character img {
  width: 100%;
  object-fit: cover;
}
.p-img-character--1 {
  top: 0;
  width: calc(79 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-img-character--1 {
    top: -65px;
    left: 0;
    width: clamp(144px, 30vw, 360px);
  }
}
@media (min-width: 1025px) {
  .p-img-character--1 {
    top: -95px;
  }
}
.p-img-character--2 {
  top: 0;
  right: 0;
  width: calc(79 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-img-character--2 {
    top: -75px;
    width: clamp(125px, 30vw, 314px);
  }
}
@media (min-width: 1025px) {
  .p-img-character--2 {
    top: -35px;
  }
}
.p-img-character--3 {
  display: none;
}
@media (min-width: 1025px) {
  .p-img-character--3 {
    display: block;
    top: 7%;
    left: -25%;
    width: calc(101 / 714 * 100%);
  }
}
.p-img-character--4 {
  display: none;
}
@media (min-width: 1025px) {
  .p-img-character--4 {
    display: block;
    top: -74%;
    right: -20%;
    width: calc(80 / 714 * 100%);
  }
}
.p-img-character--5 {
  display: none;
}
@media (min-width: 1025px) {
  .p-img-character--5 {
    display: block;
    top: 20.9%;
    right: -31%;
    width: 20.4481792717%;
  }
}
.p-img-character--6 {
  top: calc(-61 / var(--design-width) * 100vw);
  left: 0;
  width: calc(54 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-img-character--6 {
    top: -88%;
    left: -31%;
    width: 21.0084033613%;
  }
}
.p-img-character--7 {
  top: 0;
  right: 0;
  width: calc(96 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-img-character--7 {
    width: 22.2580645161%;
  }
}
.p-img-character--8 {
  top: 6.8%;
  left: 9%;
  width: calc(52 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-img-character--8 {
    top: 9.8%;
    left: 7%;
    width: 11.0483870968%;
  }
}
.p-img-character--9 {
  display: none;
}
@media (min-width: 1025px) {
  .p-img-character--9 {
    display: block;
    bottom: 16.8%;
    left: 7%;
    width: 10.2419354839%;
  }
}
.p-img-character--10 {
  display: none;
}
@media (min-width: 1025px) {
  .p-img-character--10 {
    display: block;
    bottom: 22.4%;
    right: 7.1%;
    width: 9.1935483871%;
    display: none;
  }
}
.p-img-character--11 {
  z-index: 1;
  top: -17.8%;
  left: -9.9%;
  width: calc(130 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-img-character--11 {
    top: -64px;
    left: -1.6%;
    width: 22.0967741935%;
  }
}
.p-img-character--12 {
  z-index: 1;
  top: -2.5%;
  right: 8.4%;
  width: calc(42 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-img-character--12 {
    top: -3.5%;
    right: 11.4%;
    width: calc(80 / 714 * 100%);
  }
}
.p-img-character {
  /* intro */
}
.p-img-character--intro1 {
  top: 3.8%;
  left: -25%;
  width: calc(101 / 714 * 100%);
  display: none;
}
@media (min-width: 768px) {
  .p-img-character--intro1 {
    display: block;
  }
}
.p-img-character--intro2 {
  top: 60.5%;
  right: 3.1%;
  width: calc(70 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-img-character--intro2 {
    top: 15.1%;
    right: -31%;
    width: 20.4481792717%;
  }
}
.p-img-character--intro3 {
  top: 18.5%;
  left: 6.3%;
  width: calc(37 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-img-character--intro3 {
    top: 50.8%;
    left: auto;
    right: -20%;
    width: calc(80 / 714 * 100%);
  }
}
.p-img-character--intro4 {
  top: 39%;
  left: -31%;
  width: 21.0084033613%;
  display: none;
}
@media (min-width: 768px) {
  .p-img-character--intro4 {
    display: block;
  }
}
.p-img-character--intro5 {
  top: 61.5%;
  left: -27%;
  width: 19%;
  display: none;
}
@media (min-width: 768px) {
  .p-img-character--intro5 {
    display: block;
  }
}
.p-img-character--intro6 {
  bottom: 1.9%;
  left: -19.3%;
  width: 17.841935%;
  display: none;
}
@media (min-width: 768px) {
  .p-img-character--intro6 {
    display: block;
  }
}
.p-img-character--intro7 {
  bottom: 9.7%;
  right: -22.1%;
  width: 16.193548%;
  display: none;
}
@media (min-width: 768px) {
  .p-img-character--intro7 {
    display: block;
  }
}
.p-img-character {
  /* song */
}
.p-img-character--song1 {
  top: 7.5%;
  left: -25%;
  width: calc(101 / 714 * 100%);
  display: none;
}
.p-img-character--song2 {
  top: -3.7%;
  right: 1.9%;
  width: 13%;
}
@media (min-width: 768px) {
  .p-img-character--song2 {
    top: 22.1%;
    right: -31%;
    width: 20.4481792717%;
  }
}
.p-img-character--song3 {
  top: 50.7%;
  left: -31%;
  width: 21.0084033613%;
  display: none;
}
.p-img-character--song4 {
  top: 66.2%;
  right: -20%;
  width: calc(80 / 714 * 100%);
  display: none;
}
.p-img-character--song5 {
  top: 14.5%;
  left: 3.2%;
  width: calc(52 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-img-character--song5 {
    top: 13.9%;
    left: 16.3%;
    width: 11.0483870968%;
  }
}
.p-img-character--song6 {
  bottom: 10.6%;
  left: 6.4%;
  width: 10.2419354839%;
  display: none;
}
.p-img-character--song7 {
  bottom: 22.4%;
  right: 6.2%;
  width: 9.1935483871%;
  top: 28.2%;
}
@media (min-width: 768px) {
  .p-img-character--song7 {
    right: 7.7%;
  }
}
.p-img-character--song8 {
  top: 0;
  left: -1.6%;
  width: 22.0967741935%;
  display: none;
}
.p-img-character {
  /* event */
}
.p-img-character--event1 {
  top: -50.5%;
  left: -3.2%;
  width: 26.177419%;
}
@media (min-width: 768px) {
  .p-img-character--event1 {
    top: -76.5%;
    left: 0%;
    width: 22.1774193548%;
  }
}
.p-img-character--event2 {
  top: -15.1%;
  left: 29.5%;
  width: 3.774194%;
  display: none;
}
@media (min-width: 768px) {
  .p-img-character--event2 {
    display: block;
  }
}
.p-img-character--event3 {
  top: 34%;
  right: 4%;
  width: 10.996774%;
}
@media (min-width: 768px) {
  .p-img-character--event3 {
    top: -9%;
    right: 10%;
  }
}
.p-img-character {
  /* -- detail -- */
}
.p-img-character--detail1 {
  top: -40px;
  left: -20px;
  width: 20.893548%;
  z-index: 1;
  display: none;
}
@media (min-width: 768px) {
  .p-img-character--detail1 {
    display: block;
  }
}
.p-img-character--detail2 {
  top: -37px;
  right: -20px;
  width: 20.822581%;
  z-index: 1;
  display: none;
}
@media (min-width: 768px) {
  .p-img-character--detail2 {
    display: block;
  }
}
.p-img-character--detail3 {
  top: 30.9%;
  left: 3.6%;
  width: 11.808403%;
  display: none;
}
@media (min-width: 768px) {
  .p-img-character--detail3 {
    display: block;
  }
}
.p-img-character--detail4 {
  top: 33.5%;
  right: 10.6%;
  width: 6.377419%;
  display: none;
}
@media (min-width: 768px) {
  .p-img-character--detail4 {
    display: block;
  }
}
.p-img-character--detail5 {
  top: -0.5%;
  left: -0.1%;
  width: calc(92 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-img-character--detail5 {
    top: 0;
    left: 0;
    width: 22.1774193548%;
  }
}
.p-img-character--detail6 {
  top: 2.2%;
  left: 29.5%;
  width: 3.677419%;
  display: none;
}
.p-img-character--detail7 {
  top: 2.2%;
  right: 6.2%;
  width: 11.177419%;
}
@media (min-width: 768px) {
  .p-img-character--detail7 {
    top: 2.9%;
    right: 10%;
  }
}
.p-img-character--detail8 {
  bottom: 5%;
  left: 3.7%;
  width: 7.177419%;
  display: none;
}
.p-img-character--detail9 {
  top: 42.4%;
  right: 4%;
  width: 11.177419%;
  display: none;
}
.p-img-character--detail10 {
  top: 7.2%;
  left: 9.8%;
  width: 15.477419%;
}
@media (min-width: 768px) {
  .p-img-character--detail10 {
    top: 7.1%;
    left: 26%;
    width: 6.477419%;
  }
}
.p-img-character--detail11 {
  top: 41.3%;
  right: 6.2%;
  width: 7.477419%;
  display: none;
}
.p-img-character--detail12 {
  bottom: 1.1%;
  left: auto;
  width: 11.977419%;
  right: 4%;
}
@media (min-width: 768px) {
  .p-img-character--detail12 {
    bottom: -2.5%;
    left: 6.3%;
    width: 7.977419%;
  }
}

/* ---------------------------------------------
*   p-section-character
--------------------------------------------- */
.p-section-character--orange {
  background-color: var(--color-orange-2);
  border-radius: 0;
}
@media (min-width: 768px) {
  .p-section-character--orange {
    border-radius: 10px;
  }
}
.p-section-character--orange .p-section-character__container {
  padding-top: calc(20 / var(--design-width) * 100vw);
  padding-bottom: calc(30 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-section-character--orange .p-section-character__container {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.p-section-character--green {
  background-color: var(--color-green-1);
  border-radius: 0;
}
@media (min-width: 768px) {
  .p-section-character--green {
    border-radius: 20px;
  }
}
.p-section-character--green .p-section-character__container {
  padding-top: calc(15 / var(--design-width) * 100vw);
  padding-bottom: calc(50 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-section-character--green .p-section-character__container {
    padding-top: 38px;
    padding-bottom: 68px;
  }
}
.p-section-character__container {
  position: relative;
  max-width: 1240px;
  margin-inline: auto;
}
.p-section-character__narrow {
  max-width: 714px;
  margin-inline: auto;
  padding-left: calc(20 / var(--design-width) * 100vw);
  padding-right: calc(20 / var(--design-width) * 100vw);
  width: 100%;
}
@media (min-width: 768px) {
  .p-section-character__narrow {
    padding-left: 0;
    padding-right: 0;
  }
}
.p-section-character__ttl {
  display: block;
  margin-inline: auto;
}
.p-section-character__ttl--character {
  width: calc(203 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-section-character__ttl--character {
    width: min(341 / 714 * 100%, 341px);
  }
}
.p-section-character__ttl--youtube {
  width: calc(113 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-section-character__ttl--youtube {
    width: min(225 / 714 * 100%, 225px);
  }
}
.p-section-character__ttl--insta {
  width: calc(133 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-section-character__ttl--insta {
    width: min(274 / 714 * 100%, 274px);
  }
}
.p-section-character__ttl--intro {
  width: calc(253 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-section-character__ttl--intro {
    width: min(429 / 714 * 100%, 429px);
  }
}
.p-section-character__ttl--song {
  width: calc(227 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-section-character__ttl--song {
    width: min(383 / 714 * 100%, 383px);
  }
}
.p-section-character__ttl--event {
  width: calc(227 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-section-character__ttl--event {
    width: min(563 / 714 * 100%, 563px);
  }
}
.p-section-character__body {
  position: relative;
}

/* ---------------------------------------------
*   p-top-character-block
--------------------------------------------- */
.p-top-character-block {
  position: relative;
  padding-top: calc(27 / var(--design-width) * 100vw);
  padding-bottom: calc(30 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-top-character-block {
    padding-top: 6px;
    padding-bottom: 50px;
  }
}
.p-top-character-block--song {
  padding-top: calc(6 / var(--design-width) * 100vw);
  padding-bottom: calc(28 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-top-character-block--song {
    padding-top: 6px;
    padding-bottom: 40px;
  }
}
.p-top-character-block__picture {
  display: block;
  width: 100%;
  border-radius: calc(10 / var(--design-width) * 100vw);
  overflow: hidden;
  aspect-ratio: 335/194.71;
}
@media (min-width: 768px) {
  .p-top-character-block__picture {
    border-radius: 10px;
    aspect-ratio: 714/415;
  }
}
.p-top-character-block__picture img {
  width: 100%;
  object-fit: cover;
  object-position: center center;
  height: 100%;
}
.p-top-character-block__logo {
  display: block;
  margin-inline: auto;
  width: calc(250 / 335 * 100%);
  margin-block: 0 calc(10 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-top-character-block__logo {
    width: calc(600 / 714 * 100%);
    margin-block: 30px 50px;
  }
}
.p-top-character-block__logo img {
  display: block;
  width: 100%;
  height: auto;
}
.p-top-character-block__ttl {
  display: block;
  width: calc(230 / var(--design-width) * 100vw);
  margin-inline: auto;
  margin-top: calc(22 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-top-character-block__ttl {
    width: min(410 / 714 * 100%, 410px);
    margin-top: 17px;
  }
}
.p-top-character-block__txt {
  display: block;
  color: var(--color-brown-1);
  font-size: calc(12 / var(--design-width) * 100vw);
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  margin-top: calc(9 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-top-character-block__txt {
    font-size: 18px;
    margin-top: 14px;
  }
}
.p-top-character-block__btns {
  position: relative;
  margin-top: calc(20 / var(--design-width) * 100vw);
  display: block;
  justify-content: center;
  align-items: flex-start;
  gap: calc(78 / 714 * 100%);
}
@media (min-width: 768px) {
  .p-top-character-block__btns {
    margin-top: 70px;
    display: flex;
  }
}
.p-top-character-block__btn {
  display: block;
  width: 100%;
  aspect-ratio: 335/38;
  cursor: pointer;
  margin-top: calc(15 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-top-character-block__btn {
    width: min(113 / 714 * 100%, 113px);
    aspect-ratio: 266/374;
  }
}
.p-top-character-block__btn img {
  width: 100%;
  object-fit: cover;
  object-position: center center;
  height: 100%;
}
.p-top-character-block__btn--1 {
  background: url(../../img/character/sp/img_btn-top1.png) 0 0 no-repeat;
  background-size: 100% auto;
}
@media (min-width: 768px) {
  .p-top-character-block__btn--1 {
    background: url(../../img/character/img_btn-top1.webp) 0 0 no-repeat;
    background-size: 100% auto;
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {
  .p-top-character-block__btn--1:hover {
    background: url(../../img/character/img_btn-top1_on.webp) 0 0 no-repeat;
    background-size: 100% auto;
  }
}
.p-top-character-block__btn--2 {
  background: url(../../img/character/sp/img_btn-top2.png) 0 0 no-repeat;
  background-size: 100% auto;
}
@media (min-width: 768px) {
  .p-top-character-block__btn--2 {
    background: url(../../img/character/img_btn-top2.webp) 0 0 no-repeat;
    background-size: 100% auto;
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {
  .p-top-character-block__btn--2:hover {
    background: url(../../img/character/img_btn-top2_on.webp) 0 0 no-repeat;
    background-size: 100% auto;
  }
}
.p-top-character-block__btn--3 {
  background: url(../../img/character/sp/img_btn-top3.png) 0 0 no-repeat;
  background-size: 100% auto;
}
@media (min-width: 768px) {
  .p-top-character-block__btn--3 {
    background: url(../../img/character/img_btn-top3.webp) 0 0 no-repeat;
    background-size: 100% auto;
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {
  .p-top-character-block__btn--3:hover {
    background: url(../../img/character/img_btn-top3_on.webp) 0 0 no-repeat;
    background-size: 100% auto;
  }
}
.p-top-character-block__link {
  display: block;
  width: 100%;
  height: 100%;
}

/* ---------------------------------------------
*   p-top-character-youtube
--------------------------------------------- */
.p-top-character-youtube {
  margin-top: calc(20 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-top-character-youtube {
    margin-top: 30px;
  }
}
.p-top-character-youtube__movie {
  position: relative;
  border-radius: calc(10 / var(--design-width) * 100vw);
  aspect-ratio: 16/9;
  overflow: hidden;
}
@media (min-width: 768px) {
  .p-top-character-youtube__movie {
    border-radius: 10px;
  }
}
.p-top-character-youtube__movie iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
}
.p-top-character-youtube__detail {
  margin-top: calc(6 / var(--design-width) * 100vw);
  display: block;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1em;
}
@media (min-width: 768px) {
  .p-top-character-youtube__detail {
    margin-top: 30px;
    display: flex;
  }
}
.p-top-character-youtube__names {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: calc(5 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-top-character-youtube__names {
    gap: 20px;
  }
}
.p-top-character-youtube__icon {
  display: block;
  width: calc(30 / var(--design-width) * 100vw);
  aspect-ratio: 1/1;
  border-radius: 50%;
  overflow: hidden;
}
@media (min-width: 768px) {
  .p-top-character-youtube__icon {
    width: 50px;
  }
}
.p-top-character-youtube__icon img {
  width: 100%;
  object-fit: cover;
  object-position: center center;
  height: 100%;
}
.p-top-character-youtube__name {
  display: block;
  color: var(--color-brown-1);
  font-size: calc(12 / var(--design-width) * 100vw);
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-top-character-youtube__name {
    font-size: 16px;
  }
}
.p-top-character-youtube__link {
  display: block;
  width: 100%;
}
@media (hover: hover) and (pointer: fine) {
  .p-top-character-youtube__link {
    transition: opacity var(--hover-duration);
  }
  .p-top-character-youtube__link:hover {
    opacity: var(--hover-opacity-ratio);
  }
}
.p-top-character-youtube__link {
  margin-top: calc(6 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-top-character-youtube__link {
    width: min(226 / 714 * 100%, 226px);
  }
}
.p-top-character-youtube__txt {
  display: block;
  color: var(--color-brown-1);
  font-size: calc(12 / var(--design-width) * 100vw);
  font-weight: bold;
  text-align: center;
  margin-bottom: calc(15 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-top-character-youtube__txt {
    font-size: 18px;
    margin-bottom: 20px;
  }
}
.p-top-character-youtube__ttl {
  display: block;
  width: calc(124 / var(--design-width) * 100vw);
  margin-inline: auto;
  margin-top: calc(22 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-top-character-youtube__ttl {
    width: min(210 / 714 * 100%, 210px);
    margin-top: 37px;
  }
}
.p-top-character-youtube__btn {
  padding: calc(10 / var(--design-width) * 100vw);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-inline: auto;
  background-color: var(--color-orange-3);
  color: var(--color-brown-1);
  font-size: calc(14 / var(--design-width) * 100vw);
  font-weight: bold;
  text-align: center;
  width: 100%;
  border-radius: 999px;
  margin-top: calc(25 / var(--design-width) * 100vw);
}
@media (hover: hover) and (pointer: fine) {
  .p-top-character-youtube__btn {
    transition: opacity var(--hover-duration);
  }
  .p-top-character-youtube__btn:hover {
    opacity: var(--hover-opacity-ratio);
  }
}
@media (min-width: 768px) {
  .p-top-character-youtube__btn {
    padding: min(20 / var(--contents-width) * 100vw, 20px) min(50 / var(--contents-width) * 100vw, 50px);
    font-size: min(18 / var(--contents-width) * 100vw, 18px);
    width: fit-content;
    margin-top: 35px;
  }
}

/* ---------------------------------------------
*   p-character-insta
--------------------------------------------- */
.p-character-insta {
  width: 100%;
  margin-top: calc(20 / var(--design-width) * 100vw);
  margin-inline: auto;
  padding-left: calc(20 / var(--design-width) * 100vw);
  padding-right: calc(20 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-character-insta {
    width: calc(1056 / 1240 * 100%);
    margin-top: 18px;
  }
}
.p-character-insta__wrap {
  display: block;
  width: 100%;
}
.p-character-insta__wrap img {
  width: 100%;
  object-fit: cover;
  object-position: center center;
  height: 100%;
}
.p-character-insta__wrap ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: calc(10 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-character-insta__wrap ul {
    gap: 14px;
  }
}
.p-character-insta__wrap ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc((100% - 5.3333333333vw) / 3);
  aspect-ratio: 1/1;
  overflow: hidden;
  border-radius: calc(10 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-character-insta__wrap ul li {
    width: calc((100% - 56px) / 5);
    border-radius: 10px;
  }
}
@media (min-width: 768px) {
  .p-character-insta__wrap ul li:nth-of-type(6) {
    display: none;
  }
}
.p-character-insta__wrap ul li a {
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
  .p-character-insta__wrap ul li a {
    transition: opacity var(--hover-duration);
  }
  .p-character-insta__wrap ul li a:hover {
    opacity: var(--hover-opacity-ratio);
  }
}
.p-character-insta__wrap ul li a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.p-character-insta__btn {
  display: block;
  width: calc(293 / var(--design-width) * 100vw);
  margin-top: calc(12 / var(--design-width) * 100vw);
  margin-inline: auto;
}
@media (hover: hover) and (pointer: fine) {
  .p-character-insta__btn {
    transition: opacity var(--hover-duration);
  }
  .p-character-insta__btn:hover {
    opacity: var(--hover-opacity-ratio);
  }
}
@media (min-width: 768px) {
  .p-character-insta__btn {
    width: min(352 / 1056 * 100%, 352px);
    margin-top: 18px;
  }
}

/* ---------------------------------------------
*   p-character-ballorn
--------------------------------------------- */
.p-character-ballorn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: calc(10 / var(--design-width) * 100vw);
  margin-inline: auto;
  aspect-ratio: 335/105;
}
@media (min-width: 768px) {
  .p-character-ballorn {
    width: min(550 / 714 * 100%, 550px);
    margin-top: 13px;
    aspect-ratio: 550/178;
  }
}
.p-character-ballorn::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 100%;
  height: 100%;
  background: url(../../img/character/introduction/sp/ballorn.png) 0 0 no-repeat;
  background-size: 100% auto;
  transform: translate(-50%, -50%);
  z-index: -1;
}
@media (min-width: 768px) {
  .p-character-ballorn::before {
    background: url(../../img/character/introduction/ballorn.png) 0 0 no-repeat;
    background-size: 100% auto;
  }
}
.p-character-ballorn__txt {
  display: block;
  color: var(--color-brown-1);
  font-size: calc(12 / var(--design-width) * 100vw);
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
  margin-top: -4.1vw;
  padding-top: 0;
}
@media (min-width: 768px) {
  .p-character-ballorn__txt {
    font-size: 18px;
    margin-top: -4%;
  }
}

/* ---------------------------------------------
*   p-character-slider
--------------------------------------------- */
.p-character-slider {
  aspect-ratio: auto;
  width: 100%;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
@media (min-width: 768px) {
  .p-character-slider {
    aspect-ratio: 264/358;
    width: calc(269 / 347 * 100%);
  }
}
.p-character-slider__wrapper {
  position: relative;
}
.p-character-slider__control {
  margin-top: calc(15 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-character-slider__control {
    margin-top: 15px;
  }
}
.p-character-slider__img {
  display: block;
  width: calc(170 / var(--design-width) * 100vw);
  margin-inline: auto;
}
@media (min-width: 768px) {
  .p-character-slider__img {
    width: auto;
    margin-inline: 0;
  }
}
.p-character-slider__img--testa {
  width: calc(130 / var(--design-width) * 100vw);
  margin-inline: auto;
}
@media (min-width: 768px) {
  .p-character-slider__img--testa {
    width: calc(201.17 / 264 * 100%);
  }
}
.p-character-slider .splide__slide {
  transform: translate3d(0, 0, 0);
  overflow: hidden;
}
.p-character-slider .splide__slide img {
  width: 100%;
  object-fit: cover;
  object-position: center;
}
.p-character-slider .splide__track {
  overflow: visible !important;
}
@media (min-width: 768px) {
  .p-character-slider .splide__track {
    overflow: hidden !important;
  }
}
.p-character-slider .splide__arrow {
  display: none;
}
.p-character-slider .splide__pagination {
  gap: calc(7 / var(--design-width) * 100vw);
  flex-wrap: wrap;
  justify-content: center;
}
@media (min-width: 768px) {
  .p-character-slider .splide__pagination {
    gap: 10px;
  }
}
.p-character-slider .splide__pagination li {
  font-size: 0;
}
.p-character-slider .splide__pagination__page {
  position: relative;
  width: calc(6 / var(--design-width) * 100vw);
  height: auto !important;
  aspect-ratio: 1/1;
  border-radius: 50%;
  touch-action: manipulation;
  cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
  .p-character-slider .splide__pagination__page {
    transition: opacity var(--hover-duration);
  }
  .p-character-slider .splide__pagination__page:hover {
    opacity: var(--hover-opacity-ratio);
  }
}
.p-character-slider .splide__pagination__page {
  background-color: var(--color-gray-1);
}
@media (min-width: 768px) {
  .p-character-slider .splide__pagination__page {
    width: 8px;
  }
}
.p-character-slider .splide__pagination__page.is-active {
  background-color: var(--color-base-1);
}

/* ---------------------------------------------
*   p-character-follow
--------------------------------------------- */
.p-character-follow {
  position: relative;
  padding-top: calc(33 / var(--design-width) * 100vw);
  padding-bottom: calc(33 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-character-follow {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.p-character-follow__ttl {
  display: block;
  text-align: center;
  color: var(--color-brown-1);
  font-family: var(--ff-mont);
  font-size: calc(14 / var(--design-width) * 100vw);
  font-weight: 500;
  letter-spacing: 0.2em;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-character-follow__ttl {
    font-size: 16px;
  }
}
.p-character-follow__links {
  margin-top: calc(20 / var(--design-width) * 100vw);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(30 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-character-follow__links {
    margin-top: 20px;
    gap: min(30 / var(--contents-width) * 100vw, 30px);
  }
}
.p-character-follow__link {
  display: block;
  width: calc(50 / var(--design-width) * 100vw);
  aspect-ratio: 1/1;
}
@media (hover: hover) and (pointer: fine) {
  .p-character-follow__link {
    transition: opacity var(--hover-duration);
  }
  .p-character-follow__link:hover {
    opacity: var(--hover-opacity-ratio);
  }
}
@media (min-width: 768px) {
  .p-character-follow__link {
    width: min(70 / var(--contents-width) * 100vw, 70px);
  }
}

/* ---------------------------------------------
*   p-character-list
--------------------------------------------- */
.p-character-list {
  display: block;
  justify-content: center;
  align-items: stretch;
  gap: min(20 / var(--contents-width) * 100vw, 20px);
  margin-top: calc(8 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-character-list {
    display: flex;
    margin-top: 0;
  }
}
.p-character-list__item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
}
@media (min-width: 768px) {
  .p-character-list__item {
    width: min(347 / var(--contents-width) * 100vw, 347px);
  }
}
.p-character-list__item + .p-character-list__item {
  margin-top: calc(20 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-character-list__item + .p-character-list__item {
    margin-top: 0;
  }
}
.p-character-list__detail {
  padding: calc(21 / var(--design-width) * 100vw) calc(10 / var(--design-width) * 100vw);
  border-radius: calc(10 / var(--design-width) * 100vw);
  background-color: var(--color-orange-2);
  margin-top: calc(20 / var(--design-width) * 100vw);
  height: 100%;
}
@media (min-width: 768px) {
  .p-character-list__detail {
    padding: 29px 20px 18px;
    border-radius: 10px;
    margin-top: 30px;
    min-height: 258px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }
}
.p-character-list__name {
  display: block;
  width: calc(78 / var(--design-width) * 100vw);
  margin-inline: auto;
}
@media (min-width: 768px) {
  .p-character-list__name {
    width: calc(120 / 307 * 100%);
  }
}
.p-character-list__name-kana {
  display: block;
  font-size: calc(12 / var(--design-width) * 100vw);
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  margin-top: calc(2 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-character-list__name-kana {
    font-size: 16px;
    margin-top: 4px;
  }
}
.p-character-list__name-kana--1 {
  color: rgba(var(--color-pink-1-rgb), 0.5);
}
.p-character-list__name-kana--2 {
  color: rgba(var(--color-blue-1-rgb), 0.5);
}
.p-character-list__desc {
  margin-top: calc(7 / var(--design-width) * 100vw);
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (min-width: 768px) {
  .p-character-list__desc {
    margin-top: 10px;
  }
}
.p-character-list__desc-txt {
  display: block;
  color: var(--color-brown-1);
  font-size: calc(14 / var(--design-width) * 100vw);
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
}
@media (min-width: 768px) {
  .p-character-list__desc-txt {
    font-size: 16px;
  }
}
.p-character-list__age {
  padding-top: calc(6 / var(--design-width) * 100vw);
  padding-bottom: calc(6 / var(--design-width) * 100vw);
  margin-top: calc(10 / var(--design-width) * 100vw);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  background-color: var(--color-white-1);
  border-radius: 999px;
  color: var(--color-brown-1);
  font-size: calc(14 / var(--design-width) * 100vw);
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
}
@media (min-width: 768px) {
  .p-character-list__age {
    padding-top: 6px;
    padding-bottom: 6px;
    margin-top: 10px;
    font-size: 16px;
  }
}

/* ---------------------------------------------
*   p-character-song
--------------------------------------------- */
.p-character-song {
  position: relative;
  aspect-ratio: auto;
}
@media (min-width: 768px) {
  .p-character-song {
    aspect-ratio: 714/358;
  }
}
.p-character-song__bg {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: calc(337 / 335 * 100%);
  transform: translateX(-54.7%);
}
@media (min-width: 768px) {
  .p-character-song__bg {
    width: calc(645 / 714 * 100%);
  }
}
.p-character-song__bg img {
  width: 100%;
}
.p-character-song__txt {
  position: relative;
  padding-top: calc(55 / var(--design-width) * 100vw);
  padding-bottom: calc(50 / var(--design-width) * 100vw);
  display: block;
  color: var(--color-brown-1);
  font-size: calc(12 / var(--design-width) * 100vw);
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
}
@media (min-width: 768px) {
  .p-character-song__txt {
    padding-top: min(34.0782122905%, 122px);
    padding-bottom: min(43.0167597765%, 154px);
    font-size: 18px;
  }
}

/* ---------------------------------------------
*   p-character-event-ttl
--------------------------------------------- */
.p-character-event-ttl {
  padding: 0px;
  display: block;
  width: clamp(212px, 55%, 568px);
  margin-inline: auto;
  margin-bottom: calc(12 / var(--design-width) * 100vw);
  padding-top: calc(31 / var(--design-width) * 100vw);
  padding-bottom: 0;
}
@media (min-width: 768px) {
  .p-character-event-ttl {
    margin-bottom: 30px;
  }
}

/* ---------------------------------------------
*   p-character-event-ttl-2
--------------------------------------------- */
.p-character-event-ttl-2 {
  padding: 5px 0 0 0;
  display: block;
  width: clamp(145px, 35%, 233px);
  margin-inline: auto;
  padding-top: calc(7 / var(--design-width) * 100vw);
  padding-bottom: calc(7 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-character-event-ttl-2 {
    padding-top: 5px;
    padding-bottom: 0;
  }
}

/* ---------------------------------------------
*   p-character-event-ttl-3
--------------------------------------------- */
.p-character-event-ttl-3 {
  display: block;
  width: calc(121 / var(--design-width) * 100vw);
  margin-inline: auto;
  padding-top: calc(10 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-character-event-ttl-3 {
    width: min(231 / 1240 * 100%, 231px);
  }
}

/* ---------------------------------------------
*   p-character-event-ttl-4
--------------------------------------------- */
.p-character-event-ttl-4 {
  display: block;
  width: clamp(192px, 35%, 216px);
  margin-inline: auto;
  padding-top: calc(4 / var(--design-width) * 100vw);
}

/* ---------------------------------------------
*   p-event-section
--------------------------------------------- */
.p-event-section__container {
  position: relative;
  padding: calc(14 / var(--design-width) * 100vw) calc(10 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-event-section__container {
    padding: 26px 0 48px;
  }
}
@media (min-width: 768px) {
  .p-event-sectionl-container .p-event-section__container {
    padding-left: calc(var(--contents-side-padding) * 1px);
    padding-right: calc(var(--contents-side-padding) * 1px);
  }
}
.p-event-section--orange .p-event-section__container {
  padding: calc(22 / var(--design-width) * 100vw) calc(10 / var(--design-width) * 100vw) calc(30 / var(--design-width) * 100vw);
  border-radius: 0;
  background-color: var(--color-orange-2);
  margin-bottom: calc(46 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-event-section--orange .p-event-section__container {
    padding: 50px 0;
    border-radius: 10px;
    margin-bottom: 40px;
  }
}
.p-event-section__head {
  position: relative;
  text-align: center;
}
.p-event-section__body {
  max-width: 1120px;
  margin-top: calc(20 / var(--design-width) * 100vw);
  margin-inline: auto;
  padding-inline: 0;
}
@media (min-width: 768px) {
  .p-event-section__body {
    margin-top: 20px;
    padding-inline: 20px;
  }
}
.p-event-section__foot {
  display: block;
  margin-top: calc(20 / var(--design-width) * 100vw);
  margin-inline: auto;
}
@media (min-width: 768px) {
  .p-event-section__foot {
    margin-top: 20px;
  }
}

/* ---------------------------------------------
*   p-event-list
--------------------------------------------- */
.p-event-list {
  display: block;
  width: 100%;
  justify-content: flex-start;
  align-items: stretch;
  gap: 19px calc(19 / 1080 * 100%);
  flex-wrap: wrap;
}
@media (min-width: 1025px) {
  .p-event-list {
    display: flex;
    width: auto;
  }
}
.p-event-list__item {
  width: 100%;
  flex-shrink: 0;
}
@media (min-width: 1025px) {
  .p-event-list__item {
    width: calc(347 / 1080 * 100%);
  }
}
.p-event-list__item + .p-event-list__item {
  margin-top: calc(10 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-event-list__item + .p-event-list__item {
    margin-top: 10px;
  }
}
@media (min-width: 1025px) {
  .p-event-list__item + .p-event-list__item {
    margin-top: 0;
  }
}
.p-event-list__link {
  display: block;
  height: 100%;
  padding: calc(13 / var(--design-width) * 100vw) calc(10 / var(--design-width) * 100vw);
  border-radius: calc(10 / var(--design-width) * 100vw);
  background-color: var(--color-white-1);
}
@media (hover: hover) and (pointer: fine) {
  .p-event-list__link {
    transition: opacity var(--hover-duration);
  }
  .p-event-list__link:hover {
    opacity: var(--hover-opacity-ratio);
  }
}
@media (min-width: 768px) {
  .p-event-list__link {
    padding: 26px 40px 40px;
    border-radius: 10px;
  }
}
.p-event-list__article {
  display: block;
  height: 100%;
}
.p-event-list__content {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
}
@media (min-width: 1025px) {
  .p-event-list__content {
    flex-direction: column;
  }
}
.p-event-list__figure {
  position: relative;
  display: block;
  width: calc(140 / 335 * 100%);
  aspect-ratio: 1/1;
  border-radius: 10px;
  background-color: var(--color-gray-1);
  overflow: hidden;
}
@media (min-width: 1025px) {
  .p-event-list__figure {
    width: 100%;
  }
}
.p-event-list__figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-event-list__value {
  position: absolute;
  top: calc(9 / var(--design-width) * 100vw);
  left: 0;
  display: none;
  justify-content: center;
  align-items: center;
  padding: calc(5 / var(--design-width) * 100vw) calc(10 / var(--design-width) * 100vw);
  border-radius: 0 999px 999px 0;
  color: var(--color-white-1);
}
@media (min-width: 768px) {
  .p-event-list__value {
    top: calc(30 / 267 * 100%);
    padding: 5px 10px;
  }
}
.p-event-list__value.is-fin {
  display: flex;
  background-color: var(--color-brown-1);
}
.p-event-list__value.is-report {
  display: flex;
  background-color: var(--color-pink-1);
}
.p-event-list__value-txt {
  display: block;
  font-size: calc(12 / var(--design-width) * 100vw);
  font-weight: bold;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-event-list__value-txt {
    font-size: 12px;
  }
}
.p-event-list__txts {
  width: calc(185 / 335 * 100%);
  margin-top: calc(2 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-event-list__txts {
    margin-top: 2px;
  }
}
@media (min-width: 1025px) {
  .p-event-list__txts {
    width: 100%;
    margin-top: 5px;
  }
}
.p-event-list__ttl {
  display: block;
  color: var(--color-brown-1);
  font-size: calc(14 / var(--design-width) * 100vw);
  font-weight: bold;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-event-list__ttl {
    font-size: 18px;
  }
}
.p-event-list__date, .p-event-list__store, .p-event-list__other-term, .p-event-list__other {
  display: block;
  color: var(--color-brown-1);
  font-size: calc(12 / var(--design-width) * 100vw);
  font-weight: 500;
  margin-top: calc(5 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-event-list__date, .p-event-list__store, .p-event-list__other-term, .p-event-list__other {
    font-size: 16px;
  }
}
.p-event-list__date, .p-event-list__store, .p-event-list__other-term {
  position: relative;
  padding-left: calc(17 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-event-list__date, .p-event-list__store, .p-event-list__other-term {
    padding-left: 25px;
    margin-top: 6px;
  }
}
@media (min-width: 768px) {
  .p-event-list__date {
    padding-left: 24px;
    margin-top: 5px;
  }
}
.p-event-list__date::before {
  content: "";
  position: absolute;
  top: 0.2em;
  left: 0;
  display: block;
  width: calc(12 / var(--design-width) * 100vw);
  aspect-ratio: 1/1;
  background: url(../../img/character/event/icon_calender-pink.svg) 0 0 no-repeat;
  background-size: 100% auto;
}
@media (min-width: 768px) {
  .p-event-list__date::before {
    width: 18px;
  }
}
.is-archieve .p-event-list__date::before {
  background: url(../../img/common/icon_calender-gray.svg) 0 0 no-repeat;
  background-size: 100% auto;
}

.p-event-list__store::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: calc(12 / var(--design-width) * 100vw);
  aspect-ratio: 18/23;
  background: url(../../img/character/event/icon_pin-pink.svg) 0 0 no-repeat;
  background-size: 100% auto;
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  .p-event-list__store::before {
    top: 0.1em;
    width: 18px;
    transform: none;
  }
}
.is-archieve .p-event-list__store::before {
  background: url(../../img/common/icon_pin-gray.svg) 0 0 no-repeat;
  background-size: 100% auto;
}

@media (min-width: 768px) {
  .p-event-list__other {
    margin-top: 5px;
  }
}
.p-event-list__tags {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: calc(2 / var(--design-width) * 100vw);
  margin-top: calc(10 / var(--design-width) * 100vw);
}
@media (min-width: 768px) {
  .p-event-list__tags {
    gap: 2px;
    margin-top: 6px;
  }
}
@media (min-width: 768px) {
  .p-event-list__tags.sp-hide {
    display: flex !important;
  }
}
.p-event-list__tags-item {
  display: inline-flex;
  width: fit-content;
  flex: 0 0 auto;
  justify-content: center;
  align-items: center;
  padding: calc(4 / var(--design-width) * 100vw) calc(10 / var(--design-width) * 100vw);
  border-radius: calc(2 / var(--design-width) * 100vw);
  color: var(--color-white-1);
  font-size: calc(10 / var(--design-width) * 100vw);
  font-weight: bold;
  line-height: 1.5;
  background-color: var(--color-pink-1);
}
.is-archieve .p-event-list__tags-item {
  background-color: var(--color-gray-4);
}

@media (min-width: 768px) {
  .p-event-list__tags-item {
    padding: 3px 10px;
    border-radius: 2px;
    font-size: 12px;
  }
}
.p-event-list__tags-item a {
  cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
  .p-event-list__tags-item a {
    transition: opacity var(--hover-duration);
  }
  .p-event-list__tags-item a:hover {
    opacity: var(--hover-opacity-ratio);
  }
}

/*# sourceMappingURL=character.css.map */
