/* ------------------------
 *   Foundation/Google Fonts
 * -------------------------------- */
/* ------------------------
 *   Foundation/Font Face
 * -------------------------------- */
/* ------------------------
 *   Foundation/Base
 * -------------------------------- */
/* Cumulative Layout Shift optimization */
/* for Tablet */
@media (min-width: 750px) {
  :root {
    --rv: calc(100vw / 108);
  }
}
/* for PC (Scaling) */
/* for PC (Fixing) */
@media (min-width: 1080px) {
  :root {
    --rv: 10px;
  }
}
/* for PC (High resolution) */
@media (min-width: 1920px) {
  :root {
    --rv: calc(100vw / 192);
  }
}
/* for Mobile */
@media (max-width: 750px) {
  :root {
    --rv: calc(100vw / 75);
  }
}
body {
  background-image: url(../img/common/body_back.webp);
  background-position: center calc(-30 * var(--rv));
  background-repeat: repeat-y;
  background-size: calc(192 * var(--rv));
  margin: 0;
}

*[class*=-m-],
*[class*=-m-]::before,
*[class*=-m-]::after {
  border-style: solid;
  border-width: 0;
  box-sizing: border-box;
}

*[class*=-m-] {
  position: relative;
  margin: 0;
  padding: 0;
}

*[class*=-m-] > picture {
  display: flex;
}

ul[class*=-m-],
ol[class*=-m-] {
  list-style: none;
}

a[class*=-m-] {
  text-decoration: none;
}

*[class*=-m-][class*=control] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* End of base */
/* ------------------------
 *   Object/Component/Fade
 * -------------------------------- */
.is-m-hide {
  opacity: 0;
  transition: opacity 0.5s;
}

.c-m-fade-in--left {
  transform: translate(calc(5 * var(--rv)), 0) scale(1) rotate(0);
  transition: opacity 0.5s, transform 0.5s;
}
.c-m-fade-in--right {
  transform: translate(calc(-5 * var(--rv)), 0) scale(1) rotate(0);
  transition: opacity 0.5s, transform 0.5s;
}
.c-m-fade-in--down {
  transform: translate(0, calc(-5 * var(--rv))) scale(1) rotate(0);
  transition: opacity 0.5s, transform 0.5s;
}
.c-m-fade-in--up {
  transform: translate(0, calc(5 * var(--rv))) scale(1) rotate(0);
  transition: opacity 0.5s, transform 0.5s;
}

.c-m-fade-zoom--in {
  transform: translate(0, 0) scale(0) rotate(0);
  transform-origin: center;
  transition: opacity 0.5s, transform 0.5s;
}
.c-m-fade-zoom--out {
  transform: translate(0, 0) scale(2) rotate(0);
  transform-origin: center;
  transition: opacity 0.5s, transform 0.5s;
}

.c-m-fade-rotate--left {
  transform: translate(0, 0) scale(1) rotateZ(360deg);
  transform-origin: center;
  transition: opacity 0.5s, transform 0.5s;
}
.c-m-fade-rotate--right {
  transform: translate(0, 0) scale(1) rotateZ(-360deg);
  transform-origin: center;
  transition: opacity 0.5s, transform 0.5s;
}
.c-m-fade-rotate--in {
  transform: translate(0, 0) scale(0) rotateZ(360deg);
  transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}
.c-m-fade-rotate--out {
  transform: translate(0, 0) scale(2) rotateZ(-360deg);
  transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}
.c-m-fade-rotate--x {
  transform: translate(0, 0) scale(1) rotateX(180deg);
  transform-origin: center;
  transition: opacity 0.5s, transform 0.5s;
}
.c-m-fade-rotate--y {
  transform: translate(0, 0) scale(1) rotateY(180deg);
  transform-origin: center;
  transition: opacity 0.5s, transform 0.5s;
}

.c-m-fade-delay01 {
  transition-delay: 0.25s;
}

.c-m-fade-delay02 {
  transition-delay: 0.5s;
}

.c-m-fade-delay03 {
  transition-delay: 0.75s;
}

.c-m-fade-delay04 {
  transition-delay: 1s;
}

.is-m-show {
  opacity: 1;
  transform: translate(0, 0) scale(1) rotate(0);
}

@media (max-width: 750px) {
  .c-m-fade-delay01 {
    transition-delay: 0s;
  }
  .c-m-fade-delay02 {
    transition-delay: 0s;
  }
  .c-m-fade-delay03 {
    transition-delay: 0s;
  }
  .c-m-fade-delay04 {
    transition-delay: 0s;
  }
}

/* ------------------------
 *   Object/Component/Inner
 * -------------------------------- */
.c-m-inner {
  max-width: calc(192 * var(--rv));
  margin: 0 auto;
}
.c-m-inner__content {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  min-width: calc(108 * var(--rv));
  max-width: calc(108 * var(--rv));
  margin: 0 auto;
}
.c-m-inner__content--expand {
  min-width: 100%;
  max-width: 100%;
}
.c-m-inner--wide {
  max-width: 100vw;
}

@media (max-width: 0px) {
  .c-m-inner {
    max-width: 100vw;
  }
  .c-m-inner__content {
    min-width: 100%;
    max-width: 100%;
  }
}
@media (max-width: 750px) {
  .c-m-inner {
    max-width: 100vw;
  }
  .c-m-inner__content {
    min-width: 100%;
    max-width: 100%;
  }
}


/* ------------------------
 *   Object/Component/Tabs
 * -------------------------------- */
.c-m-tabs {
  width: 100%;
}
.c-m-tabs__list {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
}
.c-m-tabs__page {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.c-m-tabs__below {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  padding: calc(1 * var(--rv));
}

.c-m-tabs input {
  display: none;
}

.c-m-tabs #tab_ctl01:checked ~ ul #tab01 {
  background-color: #e82598;
  color: #ffffff;
}

.c-m-tabs #tab_ctl01:checked ~ ul #tab01::after {
  background-image: url(../img/index/player_current@2x.webp);
  background-position: center;
  background-repeat: repeat-y;
  background-size: cover;
  content: "";
  position: absolute;
  bottom: calc(-1.5 * var(--rv));
  left: calc(50% - calc(1 * var(--rv)));
  width: calc(2 * var(--rv));
  height: calc(1.5 * var(--rv));
}

.c-m-tabs #tab_ctl02:checked ~ ul #tab02 {
  background-color: #e82598;
  color: #ffffff;
}

.c-m-tabs #tab_ctl02:checked ~ ul #tab02::after {
  background-image: url(../img/index/player_current@2x.webp);
  background-position: center;
  background-repeat: repeat-y;
  background-size: cover;
  content: "";
  position: absolute;
  bottom: calc(-1.5 * var(--rv));
  left: calc(50% - calc(1 * var(--rv)));
  width: calc(2 * var(--rv));
  height: calc(1.5 * var(--rv));
}

.c-m-tabs #tab_ctl03:checked ~ ul #tab03 {
  background-color: #e82598;
  color: #ffffff;
}

.c-m-tabs #tab_ctl03:checked ~ ul #tab03::after {
  background-image: url(../img/index/player_current@2x.webp);
  background-position: center;
  background-repeat: repeat-y;
  background-size: cover;
  content: "";
  position: absolute;
  bottom: calc(-1.5 * var(--rv));
  left: calc(50% - calc(1 * var(--rv)));
  width: calc(2 * var(--rv));
  height: calc(1.5 * var(--rv));
}

.c-m-tabs > ul > li {
  background-color: #ffffff;
  border: calc(0.4 * var(--rv)) solid #e82598;
  border-radius: calc(4 * var(--rv));
  white-space: normal;
  width: calc(31.5 * var(--rv));
  height: calc(6.5 * var(--rv));
}

.c-m-tabs li label {
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

.c-m-tabs #tab_box01 {
  display: none;
}

.c-m-tabs #tab_ctl01:checked ~ #tab_box01 {
  border-radius: calc(2.2 * var(--rv));
  box-shadow: 0 0 calc(1.8 * var(--rv)) rgba(218, 196, 205, 0.5);
  display: block;
  margin-top: calc(4.5 * var(--rv));
  padding: calc(5 * var(--rv)) calc(4 * var(--rv));
  /* width: calc(100% - calc(8 * var(--rv))); */
}

.c-m-tabs #tab_box02 {
  display: none;
}

.c-m-tabs #tab_ctl02:checked ~ #tab_box02 {
  border-radius: calc(2.2 * var(--rv));
  box-shadow: 0 0 calc(1.8 * var(--rv)) rgba(218, 196, 205, 0.5);
  display: block;
  margin-top: calc(4.5 * var(--rv));
  padding: calc(5 * var(--rv)) calc(4 * var(--rv));
  /* width: calc(100% - calc(8 * var(--rv))); */
}

.c-m-tabs #tab_box03 {
  display: none;
}

.c-m-tabs #tab_ctl03:checked ~ #tab_box03 {
  border-radius: calc(2.2 * var(--rv));
  box-shadow: 0 0 calc(1.8 * var(--rv)) rgba(218, 196, 205, 0.5);
  display: block;
  margin-top: calc(4.5 * var(--rv));
  padding: calc(5 * var(--rv)) calc(4 * var(--rv));
  /* width: calc(100% - calc(8 * var(--rv))); */
}

@media (max-width: 750px) {
  .c-m-tabs__below {
    padding: 0 calc(1 * var(--rv));
  }
  .c-m-tabs > ul > li {
    border-radius: calc(5 * var(--rv));
    text-align: center;
    width: calc(21 * var(--rv));
    height: calc(10 * var(--rv));
  }
  .c-m-tabs #tab_ctl01:checked ~ ul #tab01::after {
    bottom: calc(-2 * var(--rv));
    left: calc(50% - calc(2 * var(--rv)));
    width: calc(4 * var(--rv));
    height: calc(3 * var(--rv));
  }
  .c-m-tabs #tab_ctl01:checked ~ #tab_box01 {
    padding: calc(5 * var(--rv)) calc(2 * var(--rv));
    width: calc(100% - calc(4 * var(--rv)));
  }
  .c-m-tabs #tab_ctl02:checked ~ ul #tab02::after {
    bottom: calc(-2 * var(--rv));
    left: calc(50% - calc(2 * var(--rv)));
    width: calc(4 * var(--rv));
    height: calc(3 * var(--rv));
  }
  .c-m-tabs #tab_ctl02:checked ~ #tab_box02 {
    padding: calc(5 * var(--rv)) calc(2 * var(--rv));
    width: calc(100% - calc(4 * var(--rv)));
  }
  .c-m-tabs #tab_ctl03:checked ~ ul #tab03::after {
    bottom: calc(-2 * var(--rv));
    left: calc(50% - calc(2 * var(--rv)));
    width: calc(4 * var(--rv));
    height: calc(3 * var(--rv));
  }
  .c-m-tabs #tab_ctl03:checked ~ #tab_box03 {
    padding: calc(5 * var(--rv)) calc(2 * var(--rv));
    width: calc(100% - calc(4 * var(--rv)));
  }
}
/* ------------------------
 *   Object/Component/Card
 * -------------------------------- */
.c-m-card--review {
  border-radius: calc(2.2 * var(--rv));
  box-shadow: 0 0 calc(1.8 * var(--rv)) rgba(218, 196, 205, 0.5);
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  padding: calc(4 * var(--rv));
  padding-bottom: calc(2 * var(--rv));
}
.c-m-card--flow {
  border-radius: calc(2.2 * var(--rv));
  box-shadow: 0 0 calc(1.8 * var(--rv)) rgba(218, 196, 205, 0.5);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  min-height: calc(44 * var(--rv));
  padding: calc(3 * var(--rv));
  width: calc(28.5 * var(--rv));
}
.c-m-card--flow::after {
  background-image: url(../img/index/flow_tri@2x.webp);
  background-position: center;
  background-repeat: repeat-y;
  background-size: cover;
  content: "";
  position: absolute;
  top: calc(50% - calc(1 * var(--rv)));
  right: calc(-4.5 * var(--rv));
  width: calc(2.5 * var(--rv));
  height: calc(4.3 * var(--rv));
}
.c-m-card--flow:nth-last-of-type(1)::after {
  display: none;
}

@media (max-width: 750px) {
  .c-m-card--review {
    flex-wrap: wrap;
    justify-content: flex-end;
    padding-bottom: calc(3 * var(--rv));
  }
  .c-m-card--flow {
    padding: calc(5 * var(--rv)) calc(3 * var(--rv));
    width: 100%;
  }
  .c-m-card--flow::after {
    top: auto;
    right: calc(50% - calc(1.7 * var(--rv)));
    bottom: calc(-6.5 * var(--rv));
    transform: rotate(90deg);
    width: calc(3.5 * var(--rv));
    height: calc(5.3 * var(--rv));
  }
}

/* ------------------------
 *   Object/Component/List
 * -------------------------------- */
.c-m-list--price {
  border-radius: calc(2.2 * var(--rv));
  box-shadow: 0 0 calc(1.8 * var(--rv)) rgba(218, 196, 205, 0.5);
  display: flex;
  overflow: hidden;
}
.c-m-list--price li:nth-child(1) {
  background: linear-gradient(90deg, #cfb6e5 0%, #e1bce0 100%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(17.5 * var(--rv));
  height: calc(9 * var(--rv));
}
.c-m-list--price li:nth-child(2) {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(28.8 * var(--rv));
  height: calc(9 * var(--rv));
}

@media (max-width: 750px) {
  .c-m-list--price li:nth-child(1) {
    width: calc(25.5 * var(--rv));
    height: calc(12 * var(--rv));
  }
  .c-m-list--price li:nth-child(2) {
    width: calc(40.8 * var(--rv));
    height: calc(12 * var(--rv));
  }
}
/* ------------------------
 *   Object/Component/Accordion
 * -------------------------------- */
.c-m-accordion {
  background-color: #ffffff;
  border-radius: calc(2.2 * var(--rv));
  box-shadow: 0 0 calc(1.8 * var(--rv)) rgba(218, 196, 205, 0.5);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding: calc(3 * var(--rv));
  width: 100%;
}
.c-m-accordion__block {
  width: inherit;
}
.c-m-accordion__label p {
  padding-right: calc(4 * var(--rv));
}
.c-m-accordion__label {
  cursor: pointer;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
}
.c-m-accordion__label::after {
  border-left: calc(0.3 * var(--rv)) solid #e82598;
  border-bottom: calc(0.3 * var(--rv)) solid #e82598;
  content: "";
  position: absolute;
  top: calc(50% - calc(1 * var(--rv)));
  right: calc(1.8 * var(--rv));
  transform: rotate(-45deg);
  transition: top 0.5s, transform 0.5s;
  width: calc(1 * var(--rv));
  height: calc(1 * var(--rv));
}
.c-m-accordion__folder {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  max-height: 0;
  margin-top: 0;
  opacity: 0;
  overflow: hidden;
  transition: all 0.5s;
  width: 100%;
}
.c-m-accordion p {
  padding-left: calc(1 * var(--rv));
}

.c-m-accordion input[id^=q]:checked ~ .c-m-accordion__label::after {
  top: calc(50% - calc(0.6 * var(--rv)));
  transform: rotate(135deg);
}
.c-m-accordion input[id^=q]:checked ~ .c-m-accordion__folder {
  border-top: calc(0.1 * var(--rv)) solid #e6e6e6;
  max-height: calc(8 * var(--rv));
  margin-top: calc(0.5 * var(--rv));
  padding-top: calc(1.5 * var(--rv));
  opacity: 1;
}

@media (max-width: 750px) {
  .c-m-accordion {
    padding-bottom: calc(6 * var(--rv));
  }
  .c-m-accordion__label p {
    padding-right: calc(6 * var(--rv));
  }
  .c-m-accordion__label::after {
    border-left: calc(0.8 * var(--rv)) solid #e82598;
    border-bottom: calc(0.8 * var(--rv)) solid #e82598;
    width: calc(2.5 * var(--rv));
    height: calc(2.5 * var(--rv));
  }
  .c-m-accordion input[id^=q]:checked ~ .c-m-accordion__folder {
    max-height: calc(50 * var(--rv));
    margin-top: calc(2.5 * var(--rv));
    padding-top: calc(2.5 * var(--rv));
  }
}
/* ------------------------
 *   Object/Utility/Browser
 * -------------------------------- */
.u-m-browser-ie {
  position: relative;
}

.u-m-browser-edge {
  position: relative;
}

.u-m-browser-chrome {
  position: relative;
}

.u-m-browser-firefox {
  position: relative;
}

.u-m-browser-safari {
  position: relative;
}

/* ------------------------
 *   Object/Utility/Only
 * -------------------------------- */
.u-m-only-pc {
  display: block;
}

.u-m-only-sp {
  display: none;
}

.u-m-only-pc--flex {
  display: flex;
}

.u-m-only-sp--flex {
  display: none;
}

.u-m-only-pc--inline {
  display: inline;
}

.u-m-only-sp--inline {
  display: none;
}

.u-m-only-pc--inline-block {
  display: inline-block;
}

.u-m-only-sp--inline-block {
  display: none;
}

.u-m-only-pc--inline-flex {
  display: inline-flex;
}

.u-m-only-sp--inline-flex {
  display: none;
}

@media (max-width: 750px) {
  .u-m-nobr {
    display: none; /* Disable line breaks. And wrap the content. */
  }
  .u-m-only-pc {
    display: none;
  }
  .u-m-only-sp {
    display: block;
  }
  .u-m-only-pc--flex {
    display: none;
  }
  .u-m-only-sp--flex {
    display: flex;
  }
  .u-m-only-pc--inline {
    display: none;
  }
  .u-m-only-sp--inline {
    display: inline;
  }
  .u-m-only-pc--inline-block {
    display: none;
  }
  .u-m-only-sp--inline-block {
    display: inline-block;
  }
  .u-m-only-pc--inline-flex {
    display: none;
  }
  .u-m-only-sp--inline-flex {
    display: inline-flex;
  }
}
/* ------------------------
 *   Object/Utility/Platform
 * -------------------------------- */
.u-m-platform-windows {
  position: relative;
}

.u-m-platform-android {
  position: relative;
}

.u-m-platform-ios {
  position: relative;
}

.u-m-platform-macintosh {
  position: relative;
}

/* ------------------------
 *   Object/Utility/Deco
 * -------------------------------- */
.u-m-deco--grad {
  background: linear-gradient(90deg, rgb(255, 90, 146) 0%, rgb(180, 110, 255) 100%);
  border-radius: calc(4 * var(--rv));
  padding: calc(0.2 * var(--rv)) calc(2 * var(--rv));
}

@media (max-width: 750px) {
  .u-m-deco--grad {
    padding: calc(0.5 * var(--rv)) calc(2.5 * var(--rv));
  }
}
/* ------------------------
 *   Object/Utility/Container
 * -------------------------------- */
.u-m-container--shadow {
  border-radius: calc(2.2 * var(--rv));
  box-shadow: 0 0 calc(1.8 * var(--rv)) rgba(218, 196, 205, 0.5);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  padding: calc(3 * var(--rv));
  width: calc(30.5 * var(--rv));
  height: calc(47 * var(--rv));
}

.u-m-container-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}

@media (max-width: 750px) {
  .u-m-container--shadow {
    padding-top: calc(6 * var(--rv));
    padding-bottom: calc(5 * var(--rv));
    margin-bottom: calc(4.5 * var(--rv));
    width: 100%;
    height: auto;
  }
}
/* ------------------------
 *   Object/Utility/Back
 * -------------------------------- */
.u-m-back--user {
  background-color: #636363;
  border-radius: calc(2 * var(--rv));
  text-align: center;
  padding: calc(0.5 * var(--rv)) 0;
  width: calc(16 * var(--rv));
}
.u-m-back--player {
  background-color: #ea3fa0;
  border-radius: calc(2 * var(--rv));
  text-align: center;
  padding: calc(0.5 * var(--rv)) 0;
  width: calc(16 * var(--rv));
}

@media (max-width: 750px) {
  .u-m-back--user {
    border-radius: calc(3 * var(--rv));
    width: calc(29 * var(--rv));
  }
  .u-m-back--player {
    border-radius: calc(3 * var(--rv));
    width: calc(29 * var(--rv));
  }
}
/* ------------------------
 *   Object/Utility/Button
 * -------------------------------- */
.u-m-button {
  background: linear-gradient(90deg, rgb(249, 50, 139) 0%, rgb(197, 57, 178) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
}
.u-m-button--grad {
  background: linear-gradient(90deg, rgb(249, 50, 139) 0%, rgb(197, 57, 178) 100%);
  border-radius: calc(4 * var(--rv));
  box-shadow: 0 calc(0.3 * var(--rv)) 0 #fcc8dd;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: opacity 0.3s;
}
.u-m-button--grad:hover {
  opacity: 0.7;
}
.u-m-button--gradation {
  background: linear-gradient(90deg, rgb(249, 50, 139) 0%, rgb(197, 57, 178) 100%);
  border-radius: calc(5 * var(--rv));
  box-shadow: 0 calc(1 * var(--rv)) 0 #fcc8dd;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: opacity 0.3s;
}
.u-m-button--gradation:hover {
  opacity: 0.7;
}
.u-m-button--white {
  background-color: #ffffff;
  border: calc(0.2 * var(--rv)) solid #e82598;
  border-radius: calc(4 * var(--rv));
  box-shadow: 0 calc(0.3 * var(--rv)) 0 #fcc8dd;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: opacity 0.3s;
}
.u-m-button--white:hover {
  opacity: 0.7;
}

.u-m-button:hover {
  -webkit-text-fill-color: #ffffff;
}

.u-m-button:hover::after {
  opacity: 0;
}

.u-m-button::before {
  background: linear-gradient(90deg, rgb(249, 50, 139) 0%, rgb(197, 57, 178) 100%);
  border-radius: calc(4 * var(--rv));
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}

.u-m-button::after {
  background-color: #ffffff;
  border-radius: calc(4 * var(--rv));
  content: "";
  position: absolute;
  top: calc(0.4 * var(--rv));
  left: calc(0.4 * var(--rv));
  z-index: -1;
  transition: opacity 0.3s;
  width: calc(100% - calc(0.8 * var(--rv)));
  height: calc(100% - calc(0.8 * var(--rv)));
}

@media (max-width: 750px) {
  .u-m-button--grad {
    box-shadow: 0 calc(0.5 * var(--rv)) 0 #fcc8dd;
  }
  .u-m-button--white {
    box-shadow: 0 calc(0.5 * var(--rv)) 0 #fcc8dd;
  }
  .u-m-button--gradation {
    border-radius: calc(5 * var(--rv));
  }
  .u-m-button::before {
    border-radius: calc(5 * var(--rv));
  }
  .u-m-button::after {
    border-radius: calc(5 * var(--rv));
  }
}

/* ------------------------
 *   Object/Project/index
 * -------------------------------- */
.p-m-index-mv {
  /* margin:100px; */
  margin-top: 100px;
  padding-top: 0px;
  padding-bottom: 0;
}

/* タブレットサイズ用 */
@media screen and (max-width: 1024px) and (min-width: 751px) {
  .p-m-index-mv {
    margin-top: 100px; /* タブレット用のマージントップ値 */
  }
}

/* 小型スマホ用 */
@media screen and (max-width: 480px) {
  .p-m-index-mv {
    margin-top: 100px; /* 小型スマホ用のマージントップ値 */
  }
}

.p-m-index-mv__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-mv__h2 {
  color: #ffffff;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(3.717 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-mv__h3 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(9.725 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-mv__p01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(3.831 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-mv__p02 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.9 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-mv__p02 .aux01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.9 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-mv__button {
  color: #ffffff;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(4.2 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-mv__illust {
  display: flex;
}
.p-m-index-mv__illust img {
  width: calc(63.4 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-mv__logo {
  display: flex;
}
.p-m-index-mv__logo img {
  width: calc(26.1 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-mv__image01 {
  display: flex;
}
.p-m-index-mv__image01 img {
  width: calc(7.4 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-mv__image02 {
  display: flex;
}
.p-m-index-mv__image02 img {
  width: calc(5.6 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-mv__balloon {
  display: flex;
}
.p-m-index-mv__balloon img {
  width: calc(28.5 * var(--rv));
  height: auto;
  object-fit: contain;
}

.p-m-index-about {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.p-m-index-about__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-about__h3 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.025 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-about__head {
  display: flex;
}
.p-m-index-about__head img {
  width: calc(65.2 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-about__bottom {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-about__p01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-about__p01 .aux01 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-about__p01 .aux02 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-about__image {
  display: flex;
}
.p-m-index-about__image img {
  width: calc(50.5 * var(--rv));
  height: auto;
  object-fit: contain;
}

.p-m-index-suggest {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.p-m-index-suggest__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-suggest__h3 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.025 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-suggest__p01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-suggest__p01 .aux01 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-suggest__p01 .aux02 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-suggest__head {
  display: flex;
}
.p-m-index-suggest__head img {
  width: calc(86.7 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-suggest__center {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-suggest__figcaption {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.75 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-suggest__player {
  display: flex;
}
.p-m-index-suggest__player > img {

  width: calc(20.1 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-suggest__play {
  display: flex;
}
.p-m-index-suggest__play img {
  width: calc(5.2 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-suggest__bottom {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-suggest__button {
  color: #e82598;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(3.78 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}

.p-m-index-addition {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.p-m-index-addition__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-addition__h3 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.025 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-addition__head {
  display: flex;
}
.p-m-index-addition__head img {
  width: calc(90.6 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-addition__bottom {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-addition__h4 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-addition__p01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.488 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-addition__icon {
  display: flex;
}
.p-m-index-addition__icon img {
  width: calc(13.5 * var(--rv));
  height: auto;
  object-fit: contain;
}

.p-m-index-voice {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.p-m-index-voice__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-voice__h3 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.025 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-voice__head {
  display: flex;
}
.p-m-index-voice__head img {
  width: calc(55.4 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-voice__center {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-voice__p01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-voice__p02 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(2.4 * var(--rv));
  font-weight: 900;
  line-height: 2.1;
  white-space: pre-line;
}
.p-m-index-voice__h4 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(3.412 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-voice__h5 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.025 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-voice__illust01 {
  display: flex;
}
.p-m-index-voice__illust01 img {
  width: calc(34 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-voice__balloon {
  display: flex;
}
.p-m-index-voice__balloon img {
  width: calc(55.2 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-voice__icon03 {
  display: flex;
}
.p-m-index-voice__icon03 img {
  width: calc(18.4 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-voice__icon01 {
  display: flex;
}
.p-m-index-voice__icon01 img {
  width: calc(20.8 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-voice__icon02 {
  display: flex;
}
.p-m-index-voice__icon02 img {
  width: calc(22.1 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-voice__pop03 {
  display: flex;
}
.p-m-index-voice__pop03 img {
  width: calc(19.9 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-voice__pop02 {
  display: flex;
}
.p-m-index-voice__pop02 img {
  width: calc(19.9 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-voice__pop01 {
  display: flex;
}
.p-m-index-voice__pop01 img {
  width: calc(19.9 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-voice__bottom {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-voice__button {
  color: #e82598;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(3.78 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}

.p-m-index-player {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.p-m-index-player__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-player__h3 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.025 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__p01 {
  color: #ea3da1;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__p01 .aux01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__head {
  display: flex;
}
.p-m-index-player__head img {
  width: calc(69.5 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-player__bottom {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-player__point {
  color: #333333;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(1.488 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__point .aux01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.488 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__comment {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.488 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__li {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(2.45 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__pagenation {
  color: #333333;
  font-family: "NotoSansCJKjp-Regular", "Noto Sans JP", sans-serif;
  font-size: calc(1.75 * var(--rv));
  font-weight: 400;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__prev {
  color: #cccccc;
  font-family: "NotoSansCJKjp-Regular", "Noto Sans JP", sans-serif;
  font-size: calc(1.75 * var(--rv));
  font-weight: 400;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__next {
  color: #333333;
  font-family: "NotoSansCJKjp-Regular", "Noto Sans JP", sans-serif;
  font-size: calc(1.75 * var(--rv));
  font-weight: 400;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__p02 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.375 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__span {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(8.245 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__button {
  color: #e82598;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(3.78 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__current {
  display: flex;
}
.p-m-index-player__current img {
  width: calc(4.5 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-player__image {
  display: flex;
}
.p-m-index-player__image img {
  width: calc(18.9 * var(--rv));
  height: auto;
  object-fit: contain;
}

.p-m-index-review {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.p-m-index-review__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-review__h3 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.025 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-review__p01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-review__p01 .aux01 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-review__head {
  display: flex;
}
.p-m-index-review__head img {
  width: calc(70.5 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-review__bottom {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-review__span {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(1.75 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-review__name02 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.225 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-review__point {
  color: #333333;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(1.488 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-review__comment {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.488 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-review__name01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.75 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-review__time {
  color: #ffffff;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.313 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-review__reviewer {
  display: flex;
}
.p-m-index-review__reviewer img {
  width: calc(9.8 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-review__player {
  display: flex;
}
.p-m-index-review__player img {
  width: calc(10.1 * var(--rv));
  height: auto;
  object-fit: contain;
}

.p-m-index-game {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.p-m-index-game__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-game__h3 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.025 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-game__p01 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(3.412 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-game__head {
  display: flex;
}
.p-m-index-game__head img {
  width: calc(52.1 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-game__balloon {
  display: flex;
}
.p-m-index-game__balloon img {
  width: calc(98.8 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-game__center {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-game__figcaption {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.75 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-game__icon {
  display: flex;
}
.p-m-index-game__icon img {
  width: calc(18 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-game__bottom {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-game__button {
  color: #e82598;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(3.78 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}

.p-m-index-entry {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
  background-image: url(../img/index/entry_back@2x.webp);
  background-position: top;
  background-repeat: no-repeat;
  background-size: calc(192 * var(--rv));
  min-height: calc(74.6 * var(--rv));
}
.p-m-index-entry__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-entry__p01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-entry__p01 .aux01 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-entry__h4 {
  color: #333333;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(2.975 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-entry__p02 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.4 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-entry__p03 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.4 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-entry__h3 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.025 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-entry__button {
  color: #ffffff;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(4.637 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-entry__line {
  display: flex;
}
.p-m-index-entry__line img {
  width: calc(10.9 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-entry__head {
  display: flex;
}
.p-m-index-entry__head img {
  width: calc(59.9 * var(--rv));
  height: auto;
  object-fit: contain;
}

.p-m-index-price {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.p-m-index-price__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-price__h3 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.025 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-price__p01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-price__p01 .aux01 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-price__head {
  display: flex;
}
.p-m-index-price__head img {
  width: calc(52.9 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-price__bottom {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-price__desc {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(3.588 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-price__term {
  color: #ffffff;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-price__p02 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.4 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}

.p-m-index-flow {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.p-m-index-flow__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-flow__h3 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.025 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-flow__p01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-flow__p01 .aux01 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-flow__head {
  display: flex;
}
.p-m-index-flow__head img {
  width: calc(51.3 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-flow__bottom {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-flow__h4 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-flow__p02 {
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.487 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-flow__span {
  color: #ffffff;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.575 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-flow__p02 .aux01 {
  color: #ea3fa0;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.487 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-flow__icon {
  display: flex;
}
.p-m-index-flow__icon img {
  width: calc(13.5 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-flow__tri {
  display: flex;
}
.p-m-index-flow__tri img {
  width: calc(2.5 * var(--rv));
  height: auto;
  object-fit: contain;
}



/* 新着記事のスタイル */
.p-m-index-newpost {
  margin: 0 auto;
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
}

.p-m-index-newpost__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
  position: relative;
  margin-bottom: 50px !important;
}

.p-m-index-newpost__head {
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1;
  width: 100%;
}

.p-m-index-newpost__bottom {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}

.p-m-index-newpost__label {
  color: #333333;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
  text-align: center;
}

.p-m-index-newpost__q {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(2.362 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
  text-align: center;
}

/* PC表示用スタイル (751px以上) */
@media (min-width: 751px) {
  .p-m-index-newpost__h3 {
    color: #e82598;
    font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
    font-size: calc(5 * var(--rv));
    font-weight: 900;
    line-height: 1.3;
    white-space: pre-line;
    position: absolute;
    top: 20%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    margin: 0;
    text-shadow: 1px 1px 3px rgba(255, 255, 255, 0.8);
    width: auto;
    text-align: center;
  }
  
  .p-m-index-newpost__head img {
    width: calc(60 * var(--rv));
    height: auto;
    object-fit: contain;
    margin: 0 auto;
  }
  
  .p-m-index-newpost__p01 {
    color: #333333;
    font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
    font-size: calc(2 * var(--rv));
    font-weight: 700;
    line-height: 1.5;
    white-space: pre-line;
    margin-top: 15px;
    text-align: center;
  }
  
  .aux01 {
    color: #e82598;
    font-weight: 900;
  }
}

/* スマホ表示用スタイル (750px以下) */
@media (max-width: 750px) {
  .p-m-index-newpost__top {
    margin-bottom: 30px !important;
  }
  
  .p-m-index-newpost__h3 {
    color: #e82598;
    font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
    font-size: calc(7 * var(--rv));
    font-weight: 900;
    line-height: 1.2;
    white-space: pre-line;
    position: absolute;
    top: 15%;
    left: 50%;
    transform: translateX(-50%); /* 中央寄せの核心部分 */
    z-index: 2;
    margin: 0;
    text-shadow: 1px 1px 3px rgba(255, 255, 255, 0.8);
    width: 100%; /* 幅を100%に設定 */
    text-align: center; /* テキストを中央寄せ */
  }
  
  .p-m-index-newpost__head {
    width: 100%;
    text-align: center; /* 画像の中央寄せを確実に */
  }
  
  .p-m-index-newpost__head img {
    width: calc(80 * var(--rv));
    height: auto;
    object-fit: contain;
    margin: 0 auto; /* 左右のマージンを自動に */
    display: block; /* ブロック要素として表示 */
  }
  
  .p-m-index-newpost__p01 {
    color: #333333;
    font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
    font-size: calc(4.2 * var(--rv));
    font-weight: 700;
    line-height: 1.4;
    white-space: pre-line;
    margin-top: 30px;
    padding: 0 15px;
    text-align: center; /* テキストを中央寄せ */
    width: 100%; /* 幅を100%に設定 */
  }
  
  .aux01 {
    color: #e82598;
    font-weight: 900;
    display: inline-block;
    margin-top: 5px;
    text-align: center; /* テキストを中央寄せ */
  }
}

/* PC表示とスマホ表示共通の設定 */
.p-m-index-recent-posts {
  margin-bottom: 80px !important; /* 任意の値に調整可能 - 下部マージン */
}

/* PC表示用スタイル (751px以上) */
@media (min-width: 751px) {
  .p-m-index-recent-posts {
    margin-bottom: 100px !important; /* PC表示での下部マージン - 任意に調整可能 */
  }
  
  /* 既存のスタイルは維持 */
}

/* スマホ表示用スタイル (750px以下) */
@media (max-width: 750px) {
  .p-m-index-recent-posts {
    margin-bottom: 60px !important; /* スマホ表示での下部マージン - 任意に調整可能 */
  }
  
  /* 既存のスタイルは維持 */
}



.p-m-index-faq {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.p-m-index-faq__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-faq__h3 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(4.025 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-faq__head {
  display: flex;
}
.p-m-index-faq__head img {
  width: calc(35.4 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-faq__bottom {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-faq__p01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Medium", "Noto Sans JP", sans-serif;
  font-size: calc(1.488 * var(--rv));
  font-weight: 500;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-faq__label {
  color: #333333;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(2.1 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-faq__q {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(2.362 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}

.p-m-index-cta {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.p-m-index-cta__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.p-m-index-cta__p01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(6.115 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-cta__p02 {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(6.65 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-cta__p02 .aux01 {
  color: #333333;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(6.65 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-cta__button {
  color: #ffffff;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(5.001 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-cta__illust {
  display: flex;
}
.p-m-index-cta__illust img {
  width: calc(139.1 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-cta__balloon {
  display: flex;
}
.p-m-index-cta__balloon img {
  width: calc(45.2 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-cta__image01 {
  display: flex;
}
.p-m-index-cta__image01 img {
  width: calc(7.4 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-cta__image02 {
  display: flex;
}
.p-m-index-cta__image02 img {
  width: calc(5.6 * var(--rv));
  height: auto;
  object-fit: contain;
}

/* Add */
.p-m-index-mv {
  padding-top: calc(3 * var(--rv));
  padding-bottom: calc(8 * var(--rv));
  overflow: hidden;
}
.p-m-index-mv__top {
  align-items: center;
  max-width: 60%;
}
.p-m-index-mv__h2 {
  margin-bottom: calc(3.5 * var(--rv));
  font-size: calc(2.7 * var(--rv));
}
.p-m-index-mv__h3 {
  letter-spacing: calc(-0.5 * var(--rv));
  text-align: center;
  margin-bottom: calc(5.5 * var(--rv));
  font-size: calc(7.5 * var(--rv));
  line-height: 1.1;
}
.p-m-index-mv__p01 {
  font-size: calc(3.2 * var(--rv));
}
.p-m-index-mv__p02 {
  text-align: center;
  margin-bottom: calc(2 * var(--rv));
  font-size: calc(4.2 * var(--rv));
  line-height: 1.3;
}
.p-m-index-mv__p02 .aux01 {
  font-size: calc(3.6 * var(--rv));
}
.p-m-index-mv__button {
  font-size: calc(3.2 * var(--rv));
  width: calc(48 * var(--rv));
  height: calc(7.6 * var(--rv));
}
.p-m-index-mv__h3 strong {
  margin-right: calc(1 * var(--rv));
  font-size: calc(9.7 * var(--rv));
}
.p-m-index-mv__illust {
  position: absolute;
  top: calc(2 * var(--rv));
  right: calc(-55 * var(--rv));
}
.p-m-index-mv__logo {
  margin-bottom: calc(4 * var(--rv));
}
.p-m-index-mv__image01 {
  position: absolute;
  top: calc(30 * var(--rv));
  left: calc(2.5 * var(--rv));
}
.p-m-index-mv__image02 {
  position: absolute;
  top: calc(2 * var(--rv));
  left: calc(56 * var(--rv));
}
.p-m-index-mv__balloon {
  margin-top: calc(-4 * var(--rv));
}

.p-m-index-about {
  padding-top: calc(8 * var(--rv));
  padding-bottom: calc(8 * var(--rv));
}
.p-m-index-about__top {
  align-items: center;
}
.p-m-index-about__h3 {
  margin-top: calc(-10 * var(--rv));
  margin-bottom: calc(7 * var(--rv));
  font-size: calc(3.8 * var(--rv));
}
.p-m-index-about__bottom {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding-left: calc(5 * var(--rv));
  padding-right: calc(5 * var(--rv));
}
.p-m-index-about__p01 {
  margin-bottom: calc(4 * var(--rv));
  line-height: 2.1;
  width: calc(42 * var(--rv));
}

.p-m-index-suggest {
  padding-top: calc(5 * var(--rv));
  padding-bottom: calc(6 * var(--rv));
}
.p-m-index-suggest__top {
  align-items: center;
}
.p-m-index-suggest__h3 {
  margin-top: calc(-10 * var(--rv));
  margin-bottom: calc(5.5 * var(--rv));
  font-size: calc(3.8 * var(--rv));
}
.p-m-index-suggest__p01 {
  text-align: center;
  line-height: 2;
}
.p-m-index-suggest__center {
  flex-direction: row;
  justify-content: space-between;
  padding-left: calc(5 * var(--rv)) !important;
  padding-right: calc(5 * var(--rv)) !important;
  padding: calc(1 * var(--rv));
}
.p-m-index-suggest__player > a {
  border-radius: 100%;
  display: block;
  line-height: 0;
}

.p-m-index-suggest__player > a > img {
  border-radius: 100%;
  width: calc(18.7 * var(--rv));
  height: calc(18.7 * var(--rv));
  display: block;
}
.p-m-index-suggest__bottom {
  align-items: center;
}
.p-m-index-suggest__button {
  margin-top: calc(2 * var(--rv));
  font-size: calc(2.8 * var(--rv));
  width: calc(38 * var(--rv));
  height: calc(7.5 * var(--rv));
}
.p-m-index-suggest__figcaption {
  text-align: center;
  margin-top: calc(1.5 * var(--rv));
  margin-bottom: calc(4 * var(--rv));
}
.p-m-index-suggest__player {
  flex-direction: column;
  margin: 0 calc(1 * var(--rv));
  z-index: 1;
}
.p-m-index-suggest__player::before {
  background: linear-gradient(135deg, rgb(222, 237, 248) 0%, rgb(252, 226, 243) 100%);
  border-radius: 100%;
  content: "";
  position: absolute;
  top: calc(-0.7 * var(--rv));
  left: calc(-0.7 * var(--rv));
  z-index: -1;
  width: calc(20.1 * var(--rv));
  height: calc(20.1 * var(--rv));
}
.p-m-index-suggest__player.is-m-dummy {
  margin: 0;
  width: calc(20.1 * var(--rv));
  height: 0;
}
.p-m-index-suggest__player.is-m-dummy::before {
  display: none;
}
.p-m-index-suggest__play {
  position: absolute;
  top: calc(13.5 * var(--rv));
  right: 0;
}
.p-m-index-suggest__play--sample {
  display: flex;
  top: calc(-4 * var(--rv));
  left: calc(-16 * var(--rv));
}
.p-m-index-suggest__play--sample img {
  width: calc(4.4 * var(--rv));
  height: auto;
  object-fit: contain;
}

.p-m-index-addition {
  padding-top: calc(6 * var(--rv));
  padding-bottom: calc(6 * var(--rv));
}
.p-m-index-addition__top {
  align-items: center;
}
.p-m-index-addition__h3 {
  margin-top: calc(-10 * var(--rv));
  margin-bottom: calc(8 * var(--rv));
  font-size: calc(3.8 * var(--rv));
}
.p-m-index-addition__bottom {
  flex-direction: row;
  justify-content: space-between;
  padding-left: calc(5 * var(--rv));
  padding-right: calc(5 * var(--rv));
}
.p-m-index-addition__h4 {
  text-align: center;
  margin-bottom: calc(1 * var(--rv));
  line-height: 1.8;
}
.p-m-index-addition__p01 {
  line-height: 1.8;
}
.p-m-index-addition__icon {
  margin-bottom: calc(2 * var(--rv));
}

.p-m-index-voice {
  padding-top: calc(8 * var(--rv));
  padding-bottom: calc(6 * var(--rv));
  overflow: hidden;
  background-image: url(../img/index/voice_back@2x.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: calc(84.7 * var(--rv));
}
.p-m-index-voice__top {
  align-items: center;
}
.p-m-index-voice__h3 {
  margin-top: calc(-10 * var(--rv));
  margin-bottom: calc(14 * var(--rv));
  font-size: calc(3.8 * var(--rv));
}
.p-m-index-voice__center {
  align-items: center;
}
.p-m-index-voice__p01 {
  text-align: center;
  margin-bottom: calc(5 * var(--rv));
  line-height: 2.2;
}
.p-m-index-voice__bottom {
  align-items: center;
}
.p-m-index-voice__button {
  font-size: calc(2.9 * var(--rv));
  width: calc(54 * var(--rv));
  height: calc(7.5 * var(--rv));
}
.p-m-index-voice__p02 {
  text-align: center;
  margin-bottom: calc(12 * var(--rv));
}
.p-m-index-voice__h4 strong {
  font-size: calc(4.4 * var(--rv));
}
.p-m-index-voice__h5 {
  margin-top: calc(3 * var(--rv));
  margin-bottom: calc(6 * var(--rv));
}
.p-m-index-voice__h5 strong {
  font-size: calc(5.4 * var(--rv));
}
.p-m-index-voice__h5 strong span {
  position: relative;
}
.p-m-index-voice__h5 strong span::after {
  background-color: #e82598;
  border-radius: 100%;
  content: "";
  position: absolute;
  top: calc(-0.3 * var(--rv));
  left: calc(2 * var(--rv));
  width: calc(1 * var(--rv));
  height: calc(1 * var(--rv));
}
.p-m-index-voice__illust01 {
  position: absolute;
  top: calc(9 * var(--rv));
  right: calc(-1.5 * var(--rv));
}
.p-m-index-voice__balloon {
  margin-top: calc(-11 * var(--rv));
  margin-bottom: calc(7 * var(--rv));
}
.p-m-index-voice__icon03 {
  position: absolute;
  top: calc(44.5 * var(--rv));
  left: calc(2.5 * var(--rv));
}
.p-m-index-voice__icon01 {
  position: absolute;
  top: calc(-3 * var(--rv));
  left: 0;
}
.p-m-index-voice__icon02 {
  position: absolute;
  top: calc(20 * var(--rv));
  left: calc(7 * var(--rv));
}
.p-m-index-voice__pop02 {
  margin: 0 calc(4 * var(--rv));
}

.p-m-index-player {
  padding-top: calc(6 * var(--rv));
  padding-bottom: calc(6 * var(--rv));
}
.p-m-index-player__top {
  align-items: center;
}
.p-m-index-player__h3 {
  margin-top: calc(-9 * var(--rv));
  margin-bottom: calc(6 * var(--rv));
  font-size: calc(3.8 * var(--rv));
}
.p-m-index-player__bottom {
  padding-left: calc(5 * var(--rv));
  padding-right: calc(5 * var(--rv));
}
.p-m-index-player__comment {
  letter-spacing: calc(0.02 * var(--rv));
  line-height: 1.7;
}
.p-m-index-player__next {
  margin: 0 calc(2 * var(--rv));
  color: #cccccc;
}
.p-m-index-player__p02 {
  letter-spacing: calc(-0.3 * var(--rv));
  margin-top: calc(2 * var(--rv));
  margin-left: calc(2 * var(--rv));
  line-height: 1.2;
  max-width: calc(64 * var(--rv));
}
.p-m-index-player__button {
  margin-top: calc(3 * var(--rv));
  margin-bottom: calc(1 * var(--rv));
  font-size: calc(2.8 * var(--rv));
  width: calc(46 * var(--rv));
  height: calc(8 * var(--rv));
}
.p-m-index-player__p01 {
  margin-bottom: calc(4.8 * var(--rv));
}
.p-m-index-player__figcaption {
  text-align: center;
  margin-top: calc(1.6 * var(--rv));
  margin-bottom: calc(1.2 * var(--rv));
  color: #333333;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.5 * var(--rv));
  font-weight: 400;
  line-height: 1.5;
  white-space: pre-line;
}
.p-m-index-player__player {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: calc(3.3 * var(--rv));
  z-index: 1;
  width: calc(19.3 * var(--rv));
}
.p-m-index-player__player img {
  border-radius: 100%;
  width: calc(17.3 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-player__player::before {
  background: linear-gradient(135deg, rgb(222, 237, 248) 0%, rgb(252, 226, 243) 100%);
  border-radius: 100%;
  content: "";
  position: absolute;
  top: calc(-0.6 * var(--rv));
  left: calc(0.4 * var(--rv));
  z-index: -1;
  width: calc(18.5 * var(--rv));
  height: calc(18.5 * var(--rv));
}
.p-m-index-player__player.is-m-dummy {
  margin: 0;
  height: 0;
}
.p-m-index-player__player.is-m-dummy::before {
  display: none;
}
.p-m-index-player__play {
  display: flex;
  position: absolute;
  top: calc(12.5 * var(--rv));
  right: 0;
}
.p-m-index-player__play img {
  width: calc(5 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-player__star {
  display: flex;
  flex-direction: row;
  max-width: calc(17.3 * var(--rv));
  margin: 0 calc(0.5 * var(--rv));
  z-index: 1;
}
.p-m-index-player__star img {
  border-radius: 0;
  width: calc(8.4 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-player__point {
  margin-left: calc(0.5 * var(--rv));
}
.p-m-index-player__pagenations {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: calc(2 * var(--rv));
  width: 100%;
}
.p-m-index-player__pagenations li {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: calc(3.5 * var(--rv));
  height: calc(3.5 * var(--rv));
}
.p-m-index-player__pagenation {
  margin: 0 calc(0.5 * var(--rv));
}
.p-m-index-player__pagenation.is-m-active {
  background-color: #e82598;
  border-radius: calc(1 * var(--rv));
  top: calc(-0.15 * var(--rv));
  min-width: calc(3.65 * var(--rv));
  color: #ffffff;
  height: calc(3.8 * var(--rv));
}
.p-m-index-player__pagenation a {
  border: calc(0.15 * var(--rv)) solid #cccccc;
  border-radius: calc(1 * var(--rv));
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background 0.3s, border 0.3s, color 0.3s;
  color: inherit;
  width: 100%;
  height: 100%;
}
.p-m-index-player__pagenation a:hover {
  background-color: #e82598;
  border-color: #e82598;
  color: #ffffff;
}
.p-m-index-player__prev {
  margin: 0 calc(2 * var(--rv));
}
.p-m-index-player__prev a {
  text-decoration: none;
  color: #333333;
}
.p-m-index-player__next a {
  text-decoration: none;
  color: #333333;
}
.p-m-index-player__span {
  display: inline-block;
  transform: rotate(-10deg);
  left: calc(4 * var(--rv));
  top: calc(-0.5 * var(--rv));
}
.p-m-index-player__image {
  margin-right: calc(2 * var(--rv));
}

.p-m-index-review {
  padding-top: calc(6 * var(--rv));
  padding-bottom: calc(6 * var(--rv));
}
.p-m-index-review__top {
  align-items: center;
}
.p-m-index-review__h3 {
  margin-top: calc(-10 * var(--rv));
  margin-bottom: calc(7 * var(--rv));
  font-size: calc(3.8 * var(--rv));
}
.p-m-index-review__p01 {
  margin-bottom: calc(4 * var(--rv));
  font-size: calc(1.9 * var(--rv));
}
.p-m-index-review__span {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: calc(3.2 * var(--rv));
  font-size: calc(1.4 * var(--rv));
  width: calc(25 * var(--rv));
}
.p-m-index-review__card {
  margin-top: calc(1.5 * var(--rv));
  margin-bottom: calc(1.5 * var(--rv));
}
.p-m-index-review__span::after {
  border-style: solid;
  border-width: calc(0.8 * var(--rv)) 0 calc(0.8 * var(--rv)) calc(1.2 * var(--rv));
  border-color: transparent transparent transparent #ee88c5;
  content: "";
  position: absolute;
  top: calc(2.8 * var(--rv));
  left: calc(5 * var(--rv));
  z-index: 1;
  width: 0;
  height: 0;
}
.p-m-index-review__name02 {
  text-align: center;
  margin-top: calc(1 * var(--rv));
}
.p-m-index-review__star {
  display: flex;
  flex-direction: row;
  max-width: calc(17.3 * var(--rv));
  margin-top: calc(1 * var(--rv));
  margin-bottom: calc(0.8 * var(--rv));
}
.p-m-index-review__star img {
  border-radius: 0;
  width: calc(8.4 * var(--rv));
  height: auto;
  object-fit: contain;
}
.p-m-index-review__point {
  margin-left: calc(0.5 * var(--rv));
}
.p-m-index-review__time {
  background-color: #e82598;
  border-radius: calc(2 * var(--rv));
  margin-left: calc(1.2 * var(--rv));
  padding: calc(0.2 * var(--rv)) calc(1 * var(--rv));
}
.p-m-index-review__reviewer {
  margin-right: calc(3 * var(--rv));
}
.p-m-index-review__reviewer img {
  border-radius: 100%;
}
.p-m-index-review__reviewer::after {
  background: #eeeeee;
  border-radius: 100%;
  content: "";
  position: absolute;
  top: calc(-0.5 * var(--rv));
  left: calc(-0.5 * var(--rv));
  z-index: -1;
  width: calc(10.8 * var(--rv));
  height: calc(10.9 * var(--rv));
}
.p-m-index-review__player {
  flex-direction: column;
}
.p-m-index-review__player img {
  border-radius: 100%;
}
.p-m-index-review__player::before {
  background: linear-gradient(135deg, rgb(222, 237, 248) 0%, rgb(252, 226, 243) 100%);
  border-radius: 100%;
  content: "";
  position: absolute;
  top: calc(-0.5 * var(--rv));
  left: calc(-0.5 * var(--rv));
  z-index: -1;
  width: calc(11.1 * var(--rv));
  height: calc(11.1 * var(--rv));
}

.p-m-index-game {
  padding-top: calc(3.5 * var(--rv));
  padding-bottom: calc(12 * var(--rv));
}
.p-m-index-game__top {
  align-items: center;
}
.p-m-index-game__h3 {
  margin-top: calc(-10 * var(--rv));
  margin-bottom: calc(6.5 * var(--rv));
  font-size: calc(3.8 * var(--rv));
}
.p-m-index-game__center {
  flex-direction: row;
  justify-content: space-between;
  padding-left: calc(3 * var(--rv));
  padding-right: calc(3 * var(--rv));
}
.p-m-index-game__bottom {
  align-items: center;
}
.p-m-index-game__button {
  margin-top: calc(3.5 * var(--rv));
  font-size: calc(2.8 * var(--rv));
  width: calc(39 * var(--rv));
  height: calc(7.5 * var(--rv));
}
.p-m-index-game__p01 strong {
  font-size: calc(4.2 * var(--rv));
}
.p-m-index-game__balloon {
  margin-top: calc(-5.5 * var(--rv));
  margin-bottom: calc(9 * var(--rv));
}
.p-m-index-game__figcaption {
  text-align: center;
  margin-top: calc(1 * var(--rv));
  margin-bottom: calc(3 * var(--rv));
}
.p-m-index-game__icon {
  flex-direction: column;
  margin: 0 calc(2 * var(--rv));
}
.p-m-index-game__icon.is-m-dummy {
  margin: 0;
  width: calc(18 * var(--rv));
  height: 0;
}

.p-m-index-entry {
  padding-top: calc(9 * var(--rv));
}
.p-m-index-entry__top {
  align-items: center;
}
.p-m-index-entry__h3 {
  margin-top: calc(-10 * var(--rv));
  margin-bottom: calc(7 * var(--rv));
  font-size: calc(3.8 * var(--rv));
}
.p-m-index-entry__button {
  margin-bottom: calc(5 * var(--rv));
  font-size: calc(3.5 * var(--rv));
  width: calc(56 * var(--rv));
  height: calc(9 * var(--rv));
}
.p-m-index-entry__p01 {
  margin-bottom: calc(3 * var(--rv));
}
.p-m-index-entry__container {
  align-items: center;
  margin-bottom: calc(3 * var(--rv));
}
.p-m-index-entry__p02 {
  margin-bottom: calc(5 * var(--rv));
}
.p-m-index-entry__line {
  margin-right: calc(3 * var(--rv));
}

.p-m-index-price {
  padding-top: calc(13 * var(--rv));
  padding-bottom: calc(6 * var(--rv));
}
.p-m-index-price__top {
  align-items: center;
}
.p-m-index-price__p01 {
  text-align: center;
  /* margin-bottom: calc(1.5 * var(--rv)); */
  line-height: 2;
}
.p-m-index-price__bottom {
  align-items: center;
}
.p-m-index-price__desc {
  font-size: calc(4.8 * var(--rv));
}
.p-m-index-price__desc small {
  font-size: 70%;
  position: relative;
  top: calc(0.5 * var(--rv));
}
.p-m-index-price__p02 {
  margin-top: calc(2.5 * var(--rv));
  line-height: 1.75;
}
.p-m-index-price__h3 {
  margin-top: calc(-10 * var(--rv));
  margin-bottom: calc(8.5 * var(--rv));
}
.p-m-index-price__term strong {
  font-size: calc(2.6 * var(--rv));
}

.p-m-index-flow {
  padding-top: calc(6 * var(--rv));
  padding-bottom: calc(3 * var(--rv));
}
.p-m-index-flow__top {
  align-items: center;
}
.p-m-index-flow__bottom {
  flex-direction: row;
  justify-content: space-between;
  padding-left: calc(5 * var(--rv));
  padding-right: calc(5 * var(--rv));
}
.p-m-index-flow__h4 {
  text-align: center;
  margin-bottom: calc(1 * var(--rv));
  line-height: 1.7;
}
.p-m-index-flow__p02 {
  line-height: 1.75;
}
.p-m-index-flow__h3 {
  margin-top: calc(-10 * var(--rv));
  margin-bottom: calc(7 * var(--rv));
}
.p-m-index-flow__p01 {
  margin-bottom: calc(4 * var(--rv));
}
.p-m-index-flow__card {
  margin-bottom: calc(3.5 * var(--rv));
}
.p-m-index-flow__span {
  margin-bottom: calc(1.5 * var(--rv));
}
.p-m-index-flow__icon {
  margin-bottom: calc(2 * var(--rv));
}

.p-m-index-faq {
  padding-top: calc(6 * var(--rv));
  padding-bottom: calc(10.5 * var(--rv));
}
.p-m-index-faq__top {
  align-items: center;
}
.p-m-index-faq__h3 {
  margin-top: calc(-14 * var(--rv));
  margin-bottom: calc(7.5 * var(--rv));
  font-size: calc(3.8 * var(--rv));
}
.p-m-index-faq__bottom {
  padding-left: calc(5 * var(--rv));
  padding-right: calc(5 * var(--rv));
}
.p-m-index-faq__p01 {
  line-height: 1.75;
}
.p-m-index-faq__accordion {
  margin-bottom: calc(1.7 * var(--rv));
}
.p-m-index-faq__q {
  margin-left: calc(1.5 * var(--rv));
  margin-right: calc(0.5 * var(--rv));
}
.p-m-index-faq input[id^=q] {
  display: none;
}

.p-m-index-cta {
  overflow: hidden;
  background-color: #fbf1f8;
}
.p-m-index-cta__top {
  align-items: center;
}
.p-m-index-cta__p01 {
  margin-top: calc(8.5 * var(--rv));
  font-size: calc(4.8 * var(--rv));
}
.p-m-index-cta__p02 {
  letter-spacing: calc(-0.2 * var(--rv));
  text-align: center;
  margin-bottom: calc(3 * var(--rv));
  font-size: calc(5.65 * var(--rv));
  line-height: 1.2;
}
.p-m-index-cta__p02 .aux01 {
  font-size: calc(5.1 * var(--rv));
}
.p-m-index-cta__button {
  margin-bottom: calc(13 * var(--rv));
  font-size: calc(3.8 * var(--rv));
  width: calc(54 * var(--rv));
  height: calc(10 * var(--rv));
}
.p-m-index-cta__illust {
  position: absolute;
  top: calc(4 * var(--rv));
  left: calc(-15.5 * var(--rv));
}
.p-m-index-cta__balloon {
  margin-top: calc(-7 * var(--rv));
  margin-bottom: calc(1 * var(--rv));
}
.p-m-index-cta__image01 {
  position: absolute;
  top: calc(14 * var(--rv));
  left: calc(23 * var(--rv));
}
.p-m-index-cta__image02 {
  position: absolute;
  top: calc(12 * var(--rv));
  left: calc(79.5 * var(--rv));
}

@media (max-width: 750px) {
  .p-m-index-mv {
    position: relative;
  }
  .p-m-index-mv__h2 {
    font-size: calc(3.823 * var(--rv));
  }
  .p-m-index-mv__h3 {
    font-size: calc(10.213 * var(--rv));
    position: relative;
    z-index: 100; /* イラストより前面に表示（より強力な値） */
  }
  .p-m-index-mv__p01 {
    font-size: calc(5.28 * var(--rv));
  }
  .p-m-index-mv__p02 {
    font-size: calc(4.7 * var(--rv));
  }
  .p-m-index-mv__p02 .aux01 {
    font-size: calc(4.7 * var(--rv));
  }
  .p-m-index-mv__button {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-mv__illust img {
    width: calc(57.2 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-mv__logo img {
    width: calc(19.3 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-mv__image01 img {
    width: calc(8.5 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-mv__image02 img {
    width: calc(6.5 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-mv__balloon img {
    width: calc(39.2 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-about {
    position: relative;
  }
  .p-m-index-about__h3 {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-about__head img {
    width: calc(52.7 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-about__p01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-about__p01 .aux01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-about__p01 .aux02 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-about__image img {
    width: calc(57.7 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-suggest {
    position: relative;
  }
  .p-m-index-suggest__h3 {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-suggest__p01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-suggest__p01 .aux01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-suggest__p01 .aux02 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-suggest__head img {
    width: calc(70.1 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-suggest__figcaption {
    font-size: calc(2.4 * var(--rv));
  }
  .p-m-index-suggest__button {
    font-size: calc(4.2 * var(--rv));
  }
  .p-m-index-addition {
    position: relative;
  }
  .p-m-index-addition__h3 {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-addition__head img {
    width: calc(73.3 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-addition__h4 {
    font-size: calc(4.5 * var(--rv));
  }
  .p-m-index-addition__p01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-addition__icon img {
    width: calc(23.4 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-voice {
    position: relative;
  }
  .p-m-index-voice__h3 {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-voice__head img {
    width: calc(44.9 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-voice__p01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-voice__p01 .aux01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-voice__h4 {
    font-size: calc(3.9 * var(--rv));
  }
  .p-m-index-voice__h5 {
    font-size: calc(5 * var(--rv));
  }
  .p-m-index-voice__illust01 img {
    width: calc(34 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-voice__balloon img {
    width: calc(63.1 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-voice__icon03 img {
    width: calc(18.9 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-voice__icon01 img {
    width: calc(21.5 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-voice__icon02 img {
    width: calc(22.8 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-voice__pop03 img {
    width: calc(20.4 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-voice__pop02 img {
    width: calc(20.4 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-voice__pop01 img {
    width: calc(20.4 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-voice__button {
    font-size: calc(4.2 * var(--rv));
  }
  .p-m-index-player {
    position: relative;
  }
  .p-m-index-player__h3 {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-player__p01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-player__p01 .aux01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-player__head img {
    width: calc(56.2 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-player__point {
    font-size: calc(2.4 * var(--rv));
  }
  .p-m-index-player__point .aux01 {
    font-size: calc(2.4 * var(--rv));
  }
  .p-m-index-player__comment {
    font-size: calc(2.4 * var(--rv));
  }
  .p-m-index-player__li {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-player__pagenation {
    font-size: calc(3.282 * var(--rv));
  }
  .p-m-index-player__prev {
    font-size: calc(3.282 * var(--rv));
  }
  .p-m-index-player__next {
    font-size: calc(3.282 * var(--rv));
  }
  .p-m-index-player__p02 {
    font-size: calc(2.967 * var(--rv));
  }
  .p-m-index-player__span {
    font-size: calc(5.591 * var(--rv));
  }
  .p-m-index-player__button {
    font-size: calc(4.2 * var(--rv));
  }
  .p-m-index-review {
    position: relative;
  }
  .p-m-index-review__h3 {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-review__p01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-review__p01 .aux01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-review__head img {
    width: calc(57.1 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-review__span {
    font-size: calc(2.625 * var(--rv));
  }
  .p-m-index-review__name02 {
    font-size: calc(2 * var(--rv));
  }
  .p-m-index-review__point {
    font-size: calc(2.4 * var(--rv));
  }
  .p-m-index-review__comment {
    font-size: calc(2.4 * var(--rv));
  }
  .p-m-index-review__name01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-review__time {
    font-size: calc(2.4 * var(--rv));
  }
  .p-m-index-review__reviewer img {
    width: calc(14.2 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-review__player img {
    width: calc(14.7 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-game {
    position: relative;
  }
  .p-m-index-game__h3 {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-game__p01 {
    font-size: calc(3.315 * var(--rv));
  }
  .p-m-index-game__head img {
    width: calc(42 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-game__figcaption {
    font-size: calc(2.4 * var(--rv));
  }
  .p-m-index-game__button {
    font-size: calc(4.2 * var(--rv));
  }
  .p-m-index-entry {
    position: relative;
    background-image: url(../img/index/entry_back_sp.webp);
    background-size: calc(75 * var(--rv));
    min-height: calc(120.3 * var(--rv));
  }
  .p-m-index-entry__p01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-entry__p01 .aux01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-entry__h4 {
    font-size: calc(3.4 * var(--rv));
  }
  .p-m-index-entry__p02 {
    font-size: calc(2.4 * var(--rv));
  }
  .p-m-index-entry__p03 {
    font-size: calc(2.4 * var(--rv));
  }
  .p-m-index-entry__h3 {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-entry__button {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-entry__line img {
    width: calc(22.5 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-entry__head img {
    width: calc(48.4 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-price {
    position: relative;
  }
  .p-m-index-price__h3 {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-price__head img {
    width: calc(42.8 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-price__desc {
    font-size: calc(5.082 * var(--rv));
  }
  .p-m-index-price__term {
    font-size: calc(2.975 * var(--rv));
  }
  .p-m-index-price__p02 {
    font-size: calc(2.4 * var(--rv));
  }
  .p-m-index-flow {
    position: relative;
  }
  .p-m-index-flow__h3 {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-flow__p01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-flow__p01 .aux01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-flow__head img {
    width: calc(41.6 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-flow__h4 {
    font-size: calc(4.5 * var(--rv));
  }
  .p-m-index-flow__p02 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-flow__span {
    font-size: calc(2.8 * var(--rv));
  }
  .p-m-index-flow__p02 .aux01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-flow__icon img {
    width: calc(20.4 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-faq {
    position: relative;
  }
  .p-m-index-faq__h3 {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-faq__head img {
    width: calc(28.6 * var(--rv));
    height: auto;
    object-fit: contain;
  }



  .p-m-index-faq__p01 {
    font-size: calc(3 * var(--rv));
  }
  .p-m-index-faq__label {
    font-size: calc(3.6 * var(--rv));
    padding-right: calc(6 * var(--rv));
  }
  .p-m-index-faq__q {
    font-size: calc(3.6 * var(--rv));
  }
  .p-m-index-cta {
    position: relative;
  }
  .p-m-index-cta__p01 {
    font-size: calc(5.606 * var(--rv));
  }
  .p-m-index-cta__p02 {
    font-size: calc(8.36 * var(--rv));
  }
  .p-m-index-cta__p02 .aux01 {
    font-size: calc(8.36 * var(--rv));
  }
  .p-m-index-cta__button {
    font-size: calc(5.5 * var(--rv));
  }
  .p-m-index-cta__illust img {
    width: calc(93.8 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .p-m-index-cta__balloon img {
    width: calc(41.4 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  /* Add */
  .p-m-index-mv {
    padding-top: calc(2 * var(--rv));
    padding-bottom: calc(5 * var(--rv));
  }
  .p-m-index-mv__top {
    max-width: 100%;
  }
  .p-m-index-mv__h3 {
    letter-spacing: calc(-0.6 * var(--rv));
    margin-bottom: calc(48 * var(--rv));
    font-size: calc(7.5 * var(--rv));
  }
  .p-m-index-mv__p02 {
    margin-bottom: calc(3 * var(--rv));
  }
  .p-m-index-mv__button {
    width: calc(66 * var(--rv));
    height: calc(9.6 * var(--rv));
  }
  .p-m-index-mv__illust {
    top: calc(28 * var(--rv));
    right: calc(8 * var(--rv));
  }
  .p-m-index-mv__image01 {
    left: calc(3 * var(--rv));
  }
  .p-m-index-mv__image02 {
    top: calc(4 * var(--rv));
    left: calc(65.5 * var(--rv));
  }
  .p-m-index-mv__balloon {
    margin-top: calc(-6 * var(--rv));
    margin-bottom: calc(1.5 * var(--rv));
  }
  .p-m-index-mv__logo {
    position: absolute;
    left: calc(4.5 * var(--rv));
    top: calc(42.5 * var(--rv));
    z-index: 1;
  }
  .p-m-index-about__h3 {
    margin-top: calc(-5.5 * var(--rv));
    margin-bottom: calc(5 * var(--rv));
    font-size: calc(3.8 * var(--rv));
  }
  .p-m-index-about__bottom {
    justify-content: center;
  }
  .p-m-index-about__p01 {
    letter-spacing: calc(-0.2 * var(--rv));
    line-height: 1.9;
    width: 100%;
  }
  .p-m-index-about__image {
    margin-bottom: calc(3 * var(--rv));
  }
  .p-m-index-suggest {
    padding-top: calc(4 * var(--rv));
    padding-bottom: calc(5 * var(--rv));
  }
  .p-m-index-suggest__h3 {
    margin-top: calc(-5 * var(--rv));
    margin-bottom: calc(3.5 * var(--rv));
  }
  .p-m-index-suggest__p01 {
    text-align: left;
    letter-spacing: calc(-0.1 * var(--rv));
    padding: 0 calc(3.5 * var(--rv));
    line-height: 1.85;
  }
  .p-m-index-suggest__figcaption {
    margin-top: calc(2 * var(--rv));
    margin-bottom: calc(7 * var(--rv));
  }
  .p-m-index-suggest__player > img {
    width: calc(25.6 * var(--rv));
    height: calc(25.6 * var(--rv));
  }
  .p-m-index-suggest__play {
    top: calc(18.2 * var(--rv));
    right: calc(-1 * var(--rv));
  }
  .p-m-index-suggest__play--sample {
    top: calc(-5 * var(--rv));
    left: calc(-30.5 * var(--rv));
  }
  .p-m-index-suggest__play img {
    width: calc(7.2 * var(--rv));
    height: calc(7.2 * var(--rv));
  }
  .p-m-index-suggest__button {
    margin-top: calc(-1.5 * var(--rv));
    width: calc(66 * var(--rv));
    height: calc(9.5 * var(--rv));
  }
  .p-m-index-suggest__player::before {
    top: calc(-1 * var(--rv));
    left: calc(-1 * var(--rv));
    width: calc(27.6 * var(--rv));
    height: calc(27.6 * var(--rv));
  }
  .p-m-index-addition__h3 {
    margin-top: calc(-4 * var(--rv));
    margin-bottom: calc(5 * var(--rv));
  }
  .p-m-index-addition__icon {
    margin-bottom: calc(2.5 * var(--rv));
  }
  .p-m-index-voice {
    background-image: url(../img/index/voice_back_sp.webp);
    background-position: 0 calc(60 * var(--rv));
    background-size: contain;
  }
  .p-m-index-voice__h3 {
    margin-top: calc(-4 * var(--rv));
    margin-bottom: calc(33.5 * var(--rv));
  }
  .p-m-index-voice__p01 {
    line-height: 1.9;
  }
  .p-m-index-voice__p02 {
    margin-bottom: calc(57 * var(--rv));
    font-size: calc(3.3 * var(--rv));
    line-height: 1.8;
  }
  .p-m-index-voice__h5 {
    margin-top: calc(4 * var(--rv));
    margin-bottom: calc(5 * var(--rv));
    text-align: center;
  }
  .p-m-index-voice__illust01 {
    top: calc(64 * var(--rv));
    right: calc(21 * var(--rv));
  }
  .p-m-index-voice__balloon {
    margin-bottom: calc(3 * var(--rv));
  }
  .p-m-index-voice__icon03 {
    top: calc(-25.5 * var(--rv));
    left: calc(52 * var(--rv));
  }
  .p-m-index-voice__icon01 {
    top: calc(-25.5 * var(--rv));
    left: calc(4 * var(--rv));
  }
  .p-m-index-voice__icon02 {
    top: calc(-29 * var(--rv));
    left: calc(26 * var(--rv));
  }
  .p-m-index-voice__button {
    width: calc(66 * var(--rv));
    height: calc(9 * var(--rv));
  }
  .p-m-index-voice__h4 strong {
    font-size: calc(4.9 * var(--rv));
  }
  .p-m-index-voice__h5 strong {
    font-size: calc(6.4 * var(--rv));
  }
  .p-m-index-voice__h5 strong span::after {
    left: calc(2.5 * var(--rv));
  }
  .p-m-index-player__h3 {
    margin-top: calc(-4 * var(--rv));
    margin-bottom: calc(4 * var(--rv));
  }
  .p-m-index-player__p01 {
    margin-bottom: calc(3.8 * var(--rv));
    padding: 0 calc(3.5 * var(--rv));
  }
  .p-m-index-player__p01 .aux01 {
    line-height: 1.8;
  }
  .p-m-index-player__point {
    margin-left: calc(1 * var(--rv));
  }
  .p-m-index-player__li {
    line-height: 1.3;
  }
  .p-m-index-player__pagenation {
    margin: 0 calc(0.8 * var(--rv));
  }
  .p-m-index-player__p02 {
    margin-top: calc(4 * var(--rv));
    margin-left: calc(1 * var(--rv));
    max-width: calc(42 * var(--rv));
  }
  .p-m-index-player__button {
    width: calc(58 * var(--rv));
    height: calc(10 * var(--rv));
  }
  .p-m-index-player__image {
    margin-right: calc(1 * var(--rv));
  }
  .p-m-index-player__image img {
    width: calc(14.9 * var(--rv));
    height: calc(20.5 * var(--rv));
  }
  .p-m-index-player__figcaption {
    font-size: calc(2.1 * var(--rv));
  }
  .p-m-index-player__player {
    margin-bottom: calc(4.3 * var(--rv));
    width: calc(27.6 * var(--rv));
  }
  .p-m-index-player__player img {
    width: calc(25.6 * var(--rv));
    height: calc(25.6 * var(--rv));
  }
  .p-m-index-player__player::before {
    top: calc(-1 * var(--rv));
    left: 0;
    width: calc(27.6 * var(--rv));
    height: calc(27.6 * var(--rv));
  }
  .p-m-index-player__play {
    top: calc(18 * var(--rv));
    right: calc(1 * var(--rv));
  }
  .p-m-index-player__play img {
    width: calc(7 * var(--rv));
    height: calc(7 * var(--rv));
  }
  .p-m-index-player__star {
    max-width: calc(27.6 * var(--rv));
    margin: 0 calc(1 * var(--rv));
    justify-content: flex-start;
    align-items: center;
  }
  .p-m-index-player__star img {
    width: calc(11.6 * var(--rv));
    height: calc(2.4 * var(--rv));
  }
  .p-m-index-player__pagenations {
    margin-bottom: calc(4 * var(--rv));
  }
  .p-m-index-player__pagenations li {
    min-width: calc(6.5 * var(--rv));
    height: calc(6.5 * var(--rv));
  }
  .p-m-index-player__pagenation.is-m-active {
    min-width: calc(6.65 * var(--rv));
    height: calc(6.8 * var(--rv));
  }
  .p-m-index-player__prev {
    margin-left: 0;
  }
  .p-m-index-player__next {
    margin-right: 0;
  }
  .p-m-index-review__h3 {
    margin-top: calc(-3 * var(--rv));
    margin-bottom: calc(4 * var(--rv));
  }
  .p-m-index-review__p01 {
    margin-bottom: calc(1.5 * var(--rv));
    padding: 0 calc(5 * var(--rv));
    line-height: 1.7;
  }
  .p-m-index-review__bottom {
    display: block;
  }
  .p-m-index-review__span {
    margin-top: calc(5.2 * var(--rv));
    width: calc(11.5 * var(--rv));
  }
  .p-m-index-review__name02 {
    margin-top: calc(0.5 * var(--rv));
  }
  .p-m-index-review__point {
    margin-left: calc(1 * var(--rv));
  }
  .p-m-index-review__comment {
    letter-spacing: calc(-0.2 * var(--rv));
    line-height: 1.6;
    margin-bottom: calc(3 * var(--rv));
  }
  .p-m-index-review__time {
    margin-left: 0;
  }
  .p-m-index-review__reviewer {
    margin-right: calc(2 * var(--rv));
  }
  .p-m-index-review__card {
    margin-top: calc(1.3 * var(--rv));
  }
  .p-m-index-review__span::after {
    top: calc(3.8 * var(--rv));
  }
  .p-m-index-review__star img {
    width: calc(11.6 * var(--rv));
    height: calc(2.5 * var(--rv));
  }
  .p-m-index-review__reviewer::after {
    top: calc(-0.8 * var(--rv));
    left: calc(-0.8 * var(--rv));
    width: calc(15.8 * var(--rv));
    height: calc(15.9 * var(--rv));
  }
  .p-m-index-review__player::before {
    top: calc(-0.7 * var(--rv));
    left: calc(-0.7 * var(--rv));
    width: calc(16.1 * var(--rv));
    height: calc(16.1 * var(--rv));
  }
  .p-m-index-review__name01 {
    text-align: center;
    position: absolute;
    top: calc(15 * var(--rv));
    left: calc(-17.5 * var(--rv));
    width: calc(15.8 * var(--rv));
  }
  .p-m-index-review__star {
    align-items: center;
  }
  .p-m-index-review__container {
    width: calc(40 * var(--rv));
  }
  .p-m-index-game {
    padding-top: calc(6.5 * var(--rv));
  }
  .p-m-index-game__h3 {
    margin-top: calc(-4.5 * var(--rv));
    margin-bottom: calc(3.5 * var(--rv));
  }
  .p-m-index-game__balloon {
    margin-top: calc(-10.5 * var(--rv));
  }
  .p-m-index-game__balloon img {
    width: calc(65.8 * var(--rv));
    height: calc(8.3 * var(--rv));
  }
  .p-m-index-game__center {
    padding-left: calc(6 * var(--rv));
    padding-right: calc(6 * var(--rv));
  }
  .p-m-index-game__figcaption {
    margin-top: calc(1.5 * var(--rv));
    margin-bottom: calc(6 * var(--rv));
  }
  .p-m-index-game__icon {
    margin: 0;
  }
  .p-m-index-game__icon img {
    width: calc(26 * var(--rv));
    height: calc(26.1 * var(--rv));
  }
  .p-m-index-game__button {
    margin-top: calc(1 * var(--rv));
    width: calc(58 * var(--rv));
    height: calc(9.5 * var(--rv));
  }
  .p-m-index-game__p01 {
    text-align: center;
  }
  .p-m-index-entry {
    padding-top: calc(10 * var(--rv));
  }
  .p-m-index-entry__p01 {
    text-align: center;
    line-height: 1.8;
  }
  .p-m-index-entry__p02 {
    margin-bottom: calc(3 * var(--rv));
    text-align: center;
  }
  .p-m-index-entry__h3 {
    margin-top: calc(-5 * var(--rv));
    margin-bottom: calc(5 * var(--rv));
  }
  .p-m-index-entry__button {
    margin-bottom: calc(3 * var(--rv));
    width: calc(66 * var(--rv));
    height: calc(10 * var(--rv));
  }
  .p-m-index-entry__container {
    margin-bottom: calc(6 * var(--rv));
    flex-direction: column;
  }
  .p-m-index-entry__line {
    margin-bottom: calc(4 * var(--rv));
  }
  .p-m-index-price {
    padding-top: calc(12 * var(--rv));
  }
  .p-m-index-price__h3 {
    margin-top: calc(-5 * var(--rv));
    margin-bottom: calc(4.5 * var(--rv));
  }
  .p-m-index-price__p01 {
    font-size: calc(2.8 * var(--rv));
  }
  .p-m-index-price__p01 .aux01 {
    font-size: calc(2.8 * var(--rv));
  }
  .p-m-index-price__p02 {
    margin-top: calc(4.5 * var(--rv));
    padding: 0 calc(5 * var(--rv));
  }
  .p-m-index-price__term strong {
    font-size: calc(3.6 * var(--rv));
  }
  .p-m-index-flow {
    padding-top: calc(5 * var(--rv));
  }
  .p-m-index-flow__h3 {
    margin-top: calc(-5 * var(--rv));
    margin-bottom: calc(4 * var(--rv));
  }
  .p-m-index-flow__card {
    margin-bottom: calc(7.5 * var(--rv));
  }
  .p-m-index-flow__p02 {
    letter-spacing: calc(-0.2 * var(--rv));
  }
  .p-m-index-faq {
    padding-top: calc(2 * var(--rv));
  }
  .p-m-index-faq__h3 {
    margin-top: calc(-8 * var(--rv));
    margin-bottom: calc(5.5 * var(--rv));
  }
  .p-m-index-faq__accordion {
    margin-bottom: calc(5.5 * var(--rv));
  }
  .p-m-index-faq__p01 {
    letter-spacing: calc(-0.25 * var(--rv));
  }
  .p-m-index-cta__p01 {
    margin-top: calc(13.5 * var(--rv));
  }
  .p-m-index-cta__p02 {
    margin-bottom: calc(4 * var(--rv));
    line-height: 1.1;
  }
  .p-m-index-cta__button {
    margin-bottom: calc(10 * var(--rv));
    width: calc(66 * var(--rv));
  }
  .p-m-index-cta__illust {
    left: calc(-9.5 * var(--rv));
  }
  .p-m-index-cta__balloon {
    margin-bottom: calc(0 * var(--rv));
  }
  .p-m-index-cta__image01 {
    display: none;
  }
  .p-m-index-cta__image02 {
    display: none;
    left: 0;
  }
}
@media (max-width: 750px) {
  .p-m-index-mv__h2 {
    font-size: calc(2.75 * var(--rv));
  }
  .p-m-index-mv__h3 {
    font-size: calc(8 * var(--rv));
  }
  .p-m-index-mv__p01 {
    font-size: calc(4.28 * var(--rv));
  }
  .p-m-index-mv__p02 {
    font-size: calc(3.5 * var(--rv));
  }
  .p-m-index-mv__p02 .aux01 {
    font-size: calc(3.5 * var(--rv));
  }
  .p-m-index-mv__button {
    font-size: calc(4.2 * var(--rv));
  }
  .p-m-index-about__h3 {
    font-size: calc(5 * var(--rv));
  }
  .p-m-index-suggest__h3 {
    font-size: calc(5 * var(--rv));
  }
  .p-m-index-suggest__button {
    font-size: calc(3.2 * var(--rv));
  }
  .p-m-index-addition__h3 {
    font-size: calc(5 * var(--rv));
  }
  .p-m-index-voice__h3 {
    font-size: calc(5 * var(--rv));
  }
  .p-m-index-voice__button {
    font-size: calc(3.2 * var(--rv));
  }
  .p-m-index-player__h3 {
    font-size: calc(5 * var(--rv));
  }
  .p-m-index-player__button {
    font-size: calc(3.2 * var(--rv));
  }
  .p-m-index-review__h3 {
    font-size: calc(5 * var(--rv));
  }
  .p-m-index-review__span {
    font-size: calc(2.1 * var(--rv));
  }
  .p-m-index-review__name02 {
    font-size: calc(1.8 * var(--rv));
  }
  .p-m-index-game__h3 {
    font-size: calc(5 * var(--rv));
  }
  .p-m-index-game__button {
    font-size: calc(3.2 * var(--rv));
  }
  .p-m-index-entry__button {
    font-size: calc(4 * var(--rv));
  }
  .p-m-index-price__h3 {
    font-size: calc(5 * var(--rv));
  }
  .p-m-index-price__desc {
    font-size: calc(6.682 * var(--rv));
  }
  .p-m-index-faq__h3 {
    font-size: calc(5 * var(--rv));
  }
  .p-m-index-cta__p01 {
    font-size: calc(4.6 * var(--rv));
  }
  .p-m-index-cta__p02 {
    font-size: calc(6.5 * var(--rv));
  }
  .p-m-index-cta__p02 .aux01 {
    font-size: calc(4.8 * var(--rv));
  }
  .p-m-index-cta__button {
    font-size: calc(4 * var(--rv));
  }

  .p-m-index-mv__span {
    margin-top: 50px; /* 上のマージンを追加して下に移動 */
  }

}

/* ------------------------
 *   Layout/Footer
 * -------------------------------- */
.l-m-footer {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.l-m-footer__top {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.l-m-footer__li {
  color: #ffffff;
  font-family: "NotoSansCJKjp-Bold", "Noto Sans JP", sans-serif;
  font-size: calc(1.662 * var(--rv));
  font-weight: 700;
  line-height: 1.5;
  white-space: pre-line;
}
.l-m-footer__logo {
  display: flex;
}
.l-m-footer__logo img {
  width: calc(9.3 * var(--rv));
  height: auto;
  object-fit: contain;
}
.l-m-footer__bottom {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.l-m-footer__copyright {
  color: #ffffff;
  font-family: "NotoSansCJKjp-Regular", "Noto Sans JP", sans-serif;
  font-size: calc(1.05 * var(--rv));
  font-weight: 400;
  line-height: 1.5;
  white-space: pre-line;
}

/* Add */
.l-m-footer {
  padding-top: calc(3.5 * var(--rv));
  background-color: #f784c8;
}
.l-m-footer__top {
  align-items: center;
}
.l-m-footer__bottom {
  align-items: center;
}
.l-m-footer__list {
  display: flex;
  justify-content: center;
  margin: calc(0.8 * var(--rv)) 0;
}
.l-m-footer__li {
  margin: 0 calc(2 * var(--rv));
}
.l-m-footer__li a {
  text-decoration: none;
  color: inherit;
}
.l-m-footer__logo {
  margin-bottom: calc(1.5 * var(--rv));
}
.l-m-footer__copyright {
  margin-top: calc(4.5 * var(--rv));
  margin-bottom: calc(3 * var(--rv));
}

@media (max-width: 750px) {
  .l-m-footer {
    position: relative;
  }
  .l-m-footer__li {
    font-size: calc(3 * var(--rv));
  }
  .l-m-footer__logo img {
    width: calc(27 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .l-m-footer__copyright {
    font-size: calc(2.4 * var(--rv));
  }
  /* Add */
  .l-m-footer {
    padding-top: calc(8.5 * var(--rv));
  }
  .l-m-footer__logo {
    margin-bottom: calc(7.5 * var(--rv));
  }
  .l-m-footer__copyright {
    margin-top: calc(10.5 * var(--rv));
    margin-bottom: calc(5 * var(--rv));
  }
  .l-m-footer__li {
    margin-bottom: calc(2.5 * var(--rv));
  }
  .l-m-footer__list {
    flex-direction: column;
    align-items: center;
  }
}
/* ------------------------
 *   Layout/Header
 * -------------------------------- */
.l-m-header {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.l-m-header--fixed {
  position: fixed;
  top: 0;
  left: 0;
}
.l-m-header__left {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.l-m-header__logo {
  display: flex;
}
.l-m-header__logo img {
  width: calc(9.3 * var(--rv));
  height: auto;
  object-fit: contain;
}
.l-m-header__right {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.l-m-header__line {
  color: #ffffff;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(1.89 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}
.l-m-header__login {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(1.89 * var(--rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
}

/* Add */
.l-m-header__left {
  justify-content: center;
  max-width: 50%;
  padding-left: calc(5 * var(--rv));
  height: calc(7 * var(--rv));
}
.l-m-header__right {
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  max-width: 50%;
  padding-right: calc(5 * var(--rv));
  height: calc(7 * var(--rv));
}
.l-m-header__line {
  font-size: calc(1.6 * var(--rv));
  width: calc(14.5 * var(--rv));
  height: calc(3.5 * var(--rv));
}
.l-m-header__login {
  margin-right: calc(1 * var(--rv));
  font-size: calc(1.6 * var(--rv));
  width: calc(14.5 * var(--rv));
  height: calc(3.5 * var(--rv));
}

@media (max-width: 750px) {
  .l-m-header {
    position: relative;
  }
  .l-m-header__logo img {
    width: calc(13.4 * var(--rv));
    height: auto;
    object-fit: contain;
  }
  .l-m-header__login {
    font-size: calc(3 * var(--rv));
  }
  /* Add */
  .l-m-header__left {
    max-width: 30%;
    padding-left: calc(3.5 * var(--rv));
    height: calc(9 * var(--rv));
  }
  .l-m-header__right {
    max-width: 70%;
    padding-right: calc(3.5 * var(--rv));
    height: calc(9 * var(--rv));
  }
  .l-m-header__line {
    font-size: calc(2.2 * var(--rv));
    width: calc(21.5 * var(--rv));
    height: calc(6 * var(--rv));
  }
  .l-m-header__login {
    margin-right: calc(2.5 * var(--rv));
    font-size: calc(2.2 * var(--rv));
    width: calc(21.5 * var(--rv));
    height: calc(6 * var(--rv));
  }
}
/* ------------------------
 *   Layout/Main
 * -------------------------------- */
.l-m-main {
  position: relative;
  margin: 0;
  padding: 0;
}


/* アイコン画像を確実に円形に - シンプルなバージョン */
.p-m-index-review__reviewer img {
  width: 98px !important;
  height: 98px !important; /* 幅と高さを完全に同じ値に */
  min-width: 98px !important;
  min-height: 98px !important;
  max-width: 98px !important;
  max-height: 98px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}

.p-m-index-review__player img {
  width: 98px !important;
  height: 98px !important; /* プレイヤーも同じサイズに統一 */
  min-width: 98px !important;
  min-height: 98px !important;
  max-width: 98px !important;
  max-height: 98px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}

/* 背景の設定 */
.p-m-index-review__reviewer::after {
  width: 108px !important;
  height: 108px !important;
  border-radius: 50% !important;
}

.p-m-index-review__player::before {
  width: 108px !important;
  height: 108px !important;
  border-radius: 50% !important;
}

/* モバイル対応 */
@media (max-width: 750px) {
  .p-m-index-review__reviewer img,
  .p-m-index-review__player img {
      width: 60px !important; /* 固定値に変更 */
      height: 60px !important;
      min-width: 60px !important;
      min-height: 60px !important;
      max-width: 60px !important;
      max-height: 60px !important;
  }
  
  .p-m-index-review__reviewer::after,
  .p-m-index-review__player::before {
      width: 70px !important;
      height: 70px !important;
  }
}



/* 新着記事セクションのスタイル */
.p-m-index-recent-posts {
  padding: 60px 0 !important;
  background: linear-gradient(135deg, #f8f0ff 0%, #fff5fa 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}

.p-m-index-recent-posts .c-m-inner__content {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
}

/* 見出しと説明文を確実に中央寄せ */
.p-m-index-recent-posts__top {
  display: block !important;
  text-align: center !important;
  margin: 0 auto !important;
  width: 100% !important;
}

.p-m-index-recent-posts__head,
.p-m-index-recent-posts__h3,
.p-m-index-recent-posts__p01 {
  display: inline-block !important;
  text-align: center !important;
  margin: 0 auto !important;
  width: auto !important;
  max-width: 100% !important;
}

.p-m-index-recent-posts__head {
  font-size: 36px !important;
  font-weight: bold !important;
  color: #333 !important;
  margin-bottom: 5px !important;
}

.p-m-index-recent-posts__h3 {
  font-size: 28px !important;
  font-weight: bold !important;
  color: #333 !important;
  margin-bottom: 5px !important;
}

.p-m-index-recent-posts__p01 {
  font-size: 16px !important;
  color: #666 !important;
  line-height: 1.6 !important;
  margin-bottom: 10px !important;
}

.p-m-index-recent-posts__p01 .aux01 {
  color: #ff6b6b !important;
  font-weight: bold !important;
}

/* グリッドレイアウト */
.p-m-index-recent-posts__grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px !important;
}

/* 投稿カード */
.c-m-card--post {
  background-color: #fff !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1) !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.c-m-card--post:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15) !important;
}

.c-m-card--post__thumb {
  width: 100% !important;
  overflow: hidden !important;
}

.c-m-card--post__img {
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
}

/* カテゴリバッジ */
.c-m-card--post__badge {
  display: inline-block !important;
  padding: 5px 10px !important;
  background: linear-gradient(135deg, #e82598, #ff6b98) !important; /* グラデーションに変更 */
  color: #fff !important;
  border-radius: 20px !important;
  font-size: 12px !important;
  font-weight: bold !important;
  margin-bottom: 8px !important;
}

.p-m-index-recent-posts__more {
  text-align: center !important;
  margin-top: 20px !important;
}

.c-m-btn {
  display: inline-block !important;
  padding: 12px 30px !important;
  background: linear-gradient(135deg, #e82598, #ff6b98) !important; /* グラデーションに変更 */
  color: #fff !important;
  border-radius: 30px !important;
  font-weight: bold !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important; /* ホバー効果をスムーズにする */
}

.c-m-btn:hover {
  background: linear-gradient(135deg, #d01e87, #ff5588) !important; /* ホバー時は少し暗いグラデーション */
  box-shadow: 0 4px 8px rgba(232, 37, 152, 0.3) !important; /* ホバー時に軽い影を追加 */
}


.c-m-card--post__content {
  padding: 15px; /* 内側の余白 */
  margin: 10px 5px 20px 5px; /* 上右下左のマージン */
  /* text-align: center; */
}

/* マージンを直接指定したい場合 */
.p-m-index-recent-posts {
  margin-top: 100px; /* 上マージン */
  margin-bottom: 0px; /* 下マージン */
}

/* レスポンシブ対応 */
@media screen and (max-width: 960px) {
  .p-m-index-recent-posts__grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media screen and (max-width: 750px) {
  .p-m-index-recent-posts__grid {
    grid-template-columns: 1fr !important;
  }
}


/* ------------------------
 *   Custom Footer Buttons
 * -------------------------------- */
 .custom-footer-right {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  margin: 20px 0;
}

/* フッター用ログインボタン - ヘッダーボタンと同じデザイン */
.custom-footer-login-btn {
  color: #e82598;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(1.8 * var(--custom-rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
  width: calc(24 * var(--custom-rv)); /* ヘッダーより広く設定 */
  height: calc(5 * var(--custom-rv)); /* 少し高めに設定 */
  background-color: #fff;
  padding: 8px 16px;
  border-radius: 6px;
  text-decoration: none;
  border: 1px solid #eee;
  transition: all 0.2s ease;
  display: flex;
  justify-content: center;
  align-items: center;
}

.custom-footer-login-btn:hover {
  background-color: #f5f5f5;
}

/* フッター用LINEボタン - ヘッダーボタンと同じデザイン */
.custom-footer-line-btn {
  color: #ffffff;
  font-family: "NotoSansCJKjp-Black", "Noto Sans JP", sans-serif;
  font-size: calc(1.8 * var(--custom-rv));
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
  width: calc(24 * var(--custom-rv)); /* ヘッダーより広く設定 */
  height: calc(5 * var(--custom-rv)); /* 少し高めに設定 */
  background: linear-gradient(135deg, #e82598, #ff6b98); /* ヘッダーと同じグラデーション */
  padding: 8px 16px;
  border-radius: 6px;
  text-decoration: none;
  transition: all 0.2s ease;
  display: flex;
  justify-content: center;
  align-items: center;
}

.custom-footer-line-btn:hover {
  opacity: 0.9;
}

/* レスポンシブ設定 - PC・スマホともに縦並びを維持 */
@media screen and (max-width: 750px) {
  .custom-footer-right {
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }
  
  .custom-footer-login-btn,
  .custom-footer-line-btn {
    width: calc(25 * var(--custom-rv)); /* スマホでもヘッダーより広く */
    max-width: 280px; /* 最大幅制限 */
    font-size: calc(1.4 * var(--custom-rv)); /* フォントサイズ調整 */
  }
}


.p-m-index-mv__h3 small {
  font-size: 0.8em !important; /* デフォルトより少し大きく */
}

.p-m-index-mv__span {
  font-size: calc(var(--rv) * 2.5);
  color: #e82598;
  font-family: NotoSansCJKjp-Black, Noto Sans JP, sans-serif;
  font-weight: 900;
  line-height: 1.5;
  white-space: pre-line;
  margin-bottom: calc(2 * var(--rv));
}


.p-m-index-suggest__player-link {
  display: block;
  line-height: 0;
  border-radius: 100%;
  width: 100%;
  height: auto;
}

.p-m-index-suggest__player-link img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 100%;
}


.p-m-index-suggest__player .p-m-index-suggest__player-link {
  display: block !important;
  line-height: 0;
  border-radius: 100% !important;
  width: calc(18.7 * var(--rv)) !important;
  height: calc(18.7 * var(--rv)) !important;
}

.p-m-index-suggest__player .p-m-index-suggest__player-link img {
  width: calc(18.7 * var(--rv)) !important;
  height: calc(18.7 * var(--rv)) !important;
  border-radius: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* スマホ用 */
@media screen and (max-width: 768px) {
  .p-m-index-suggest__player .p-m-index-suggest__player-link {
    width: calc(25.6 * var(--rv)) !important;
    height: calc(25.6 * var(--rv)) !important;
  }
  
  .p-m-index-suggest__player .p-m-index-suggest__player-link img {
    width: calc(25.6 * var(--rv)) !important;
    height: calc(25.6 * var(--rv)) !important;
  }
}

/* ==============================================
   レビューセクション専用CSS - 追記分
   ============================================== */

/* レビューセクションの基本設定 */
.p-m-index-review {
  overflow: hidden !important;
  padding-bottom: 50px !important;
}

.p-m-index-review__bottom {
  overflow: visible !important;
}

/* レビューSwiper設定 */
.review-swiper {
  overflow: visible !important;
  padding: 0 50px !important;
}

.review-swiper .swiper-wrapper {
  align-items: stretch !important;
  display: flex !important;
}

.review-swiper .swiper-slide {
  height: auto !important;
  display: flex !important;
  align-items: stretch !important;
}

/* レビューカードの統一 */
.review-swiper .c-m-card--review {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
  min-height: 350px !important;
}

/* ナビゲーションボタン */
.review-swiper .swiper-button-next,
.review-swiper .swiper-button-prev {
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 40px !important;
  height: 40px !important;
  margin-top: 0 !important;
  color: #333 !important;
  background: rgba(255, 255, 255, 0.9) !important;
  border-radius: 50% !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1) !important;
  z-index: 10 !important;
}

.review-swiper .swiper-button-next {
  right: 10px !important;
}

.review-swiper .swiper-button-prev {
  left: 10px !important;
}

.review-swiper .swiper-button-next:after,
.review-swiper .swiper-button-prev:after {
  font-size: 16px !important;
  font-weight: bold !important;
}

/* リンクがあるカードのホバー効果 */
.review-swiper .c-m-card--review[style*="cursor: pointer"]:hover {
  transform: translateY(-2px) !important;
  transition: transform 0.3s ease !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
  .review-swiper {
      padding: 0 20px !important;
  }
  
  .review-swiper .swiper-button-next,
  .review-swiper .swiper-button-prev {
      width: 30px !important;
      height: 30px !important;
  }
  
  .review-swiper .swiper-button-next:after,
  .review-swiper .swiper-button-prev:after {
      font-size: 12px !important;
  }
}

/* Swiperの高さ制御 */
.review-swiper,
.review-swiper .swiper-container {
  height: auto !important;
}

/* フレックスボックスでカードの高さを揃える */
.review-swiper .swiper-wrapper {
  align-items: stretch !important;
}

.review-swiper .swiper-slide {
  height: auto !important;
}

.review-swiper .c-m-card--review {
  height: 100% !important;
}

.p-m-index-game__icon img {
  border-radius: 10px; /* お好みの角丸の大きさに調整 */
}

/* 注意事項 */

.p-m-index-game__notice {
  font-size: 14px;           /* 文字サイズ */
  font-weight: 700;          /* 文字の太さ（normal） */
  margin: 0 20px 20px 20px;  /* 上 右 下 左のマージン */
  text-align: center;        /* 中央揃え */
  color: #666;               /* 文字色（お好みで調整） */
  line-height: 1.4;          /* 行間 */
}

/* スマートフォン用の調整 */
@media (max-width: 750px) {
  .p-m-index-game__notice {
    font-size: 12px;          /* スマホでは少し小さく */
    font-weight: 700;          /* 文字の太さ（normal） */
    margin: 0 15px 15px 15px; /* スマホでは少しマージンを狭く */
    text-align: left !important;
  }
}

/* メディア掲載事例スマホ用 */
@media (max-width: 750px) {
  .custom-media-section {
    margin-top: 40px !important;    /* 上のマージン */
    margin-bottom: 40px !important; /* 下のマージン */
  }
}

