@charset "UTF-8";
:root {
  --color-page-blue: #0646D9;
  --color-page-dark-blue: #44557D;
  --color-page-bg-gray: #F2F5F6;
  --color-page-text: var(--color-page-dark-blue);
  --ff-noto-sans: "Noto Sans JP";
  --ff-yu-gothic: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  --color-page-red: #EB1B00;
  --color-page-light-blue: #0073D5;
}

.c-breadcrumb {
  display: none;
}

.global-contents > .global-contents__inner {
  width: 100%;
  padding-bottom: 0;
  overflow: hidden;
  background-color: #F0F1F6;
}

#GBFes2025 {
  font-family: var(--ff-noto-sans), sans-serif;
  background: url("../img/bg_page_sp.jpg") no-repeat top center;
  background-size: 100% auto;
  color: var(--color-page-text);
  background-color: var(--color-white);
  max-width: 1800px;
}

@media (max-width: 767px) {
  #GBFes2025 {
    background-position: top -0.4rem center;
  }

  #GBFes2025:not(:has(.page-open-content)) {
    background: url("../img/bg_page_preopen_sp.jpg") no-repeat top center;
    background-size: 100% auto;
  }
}
@media (min-width: 768px) {
  #GBFes2025 {
    background: url("../img/bg_pc.jpg") no-repeat top center, url("../img/bg_bottom_pc.png") no-repeat bottom center;
    background-size: 100% auto;
  }

  #GBFes2025 .page-inner {
    position: relative;
    overflow: visible;
    z-index: 2;
    margin-left: auto;
    margin-right: auto;
  }

  #GBFes2025 .page-inner::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    top: 0.25%;
    left: 50%;
    translate: -50% 0;
    width: min(112.5svw, 180rem);
    height: 100%;
    background-image: url("../img/bg_upper_pc.jpg"), url("../img/bg_star_preopen_bottom.png");
    background-repeat: no-repeat;
    background-size: min(112.5svw, 180rem) auto, min(100svw, 160rem) auto;
    background-position: top left -0.1%, bottom max(-14rem, -8.75svw) left min(6.25svw, 10rem);
    pointer-events: none;
  }

  #GBFes2025:not(:has(.page-open-content)) .page-inner::before {
    background-image: url("../img/bg_star_preopen_pc.png"), url("../img/bg_star_preopen_bottom.png");
    background-size: min(105svw, 168rem) auto, min(100svw, 160rem) auto;
  }
}
.u-paragraph {
  font-weight: var(--fw-regular);
  font-size: 1.4rem;
  line-height: 160%;
}

@media (min-width: 768px) {
  .u-paragraph {
    font-size: min(1svw, 1.6rem);
  }
}
.u-paragraph--bold {
  font-weight: var(--fw-bold);
}

.u-paragraph--center {
  text-align: center;
}

.u-color-red {
  color: var(--color-page-red);
  font-weight: var(--fw-bold);
}

.u-button-wrapper {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 2rem;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
}

@media (min-width: 768px) {
  .u-button-wrapper {
    margin-top: min(1.375svw, 2.2rem);
  }
}
@media (max-width: 767px) {
  .u-button-wrapper {
    width: 24rem;
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.8rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.5rem;
  }
}
.c-page-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: var(--fw-bold);
  width: 100%;
  height: 5.4rem;
  border-radius: 2.7rem;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0;
  text-decoration: none;
  border: 2px solid var(--color-page-blue);
}

@media (hover: hover) and (pointer: fine) {
  .c-page-button {
    -webkit-transition: color var(--transition-default), background-color var(--transition-default);
    transition: color var(--transition-default), background-color var(--transition-default);
  }
}
@media (min-width: 768px) {
  .c-page-button {
    width: min(15svw, 24rem);
    height: min(3.25svw, 5.2rem);
    border-radius: min(1.625svw, 2.6rem);
  }
}
.c-page-button__primary {
  background-color: var(--color-page-blue);
  color: var(--color-white, #fff);
}

@media (hover: hover) and (pointer: fine) {
  .c-page-button__primary:hover {
    color: var(--color-page-blue);
    background-color: var(--color-white);
  }
}
.c-page-button__secondary {
  background-color: var(--color-white);
  color: var(--color-page-blue);
}

@media (hover: hover) and (pointer: fine) {
  .c-page-button__secondary:hover {
    color: var(--color-white);
    background-color: var(--color-page-blue);
  }
}
@media (min-width: 768px) {
  .page-container {
    margin-left: auto;
    margin-right: auto;
  }
}
.page-fv {
  position: relative;
  overflow: visible;
}

.page-notice {
  position: relative;
  z-index: 2;
  padding-top: 2rem;
  padding-bottom: 3.6rem;
}

@media (min-width: 768px) {
  .page-fv {
    max-width: min(100svw, 160rem);
    margin-left: auto;
    margin-right: auto;
    translate: min(1.375svw, 2.2rem) 0;
  }

  .page-notice {
    padding-top: min(7.5svw, 12rem);
    padding-bottom: min(3.875svw, 6.2rem);
  }
}
.page-notice__inner {
  width: min(67.5svw, 108rem);
  margin-left: auto;
  margin-right: auto;
  background-color: rgba(255, 255, 255, 0.7);
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
  border: 2px solid var(--color-white);
  border-radius: 1.2rem;
  position: relative;
  padding: min(6.875svw, 11rem) min(4svw, 6.4rem) min(3.8125svw, 6.1rem);
  -webkit-box-shadow: 0 -2px 24px 0 rgba(40, 85, 215, 0.02), 0 8px 40px 0 rgba(11, 54, 178, 0.08);
          box-shadow: 0 -2px 24px 0 rgba(40, 85, 215, 0.02), 0 8px 40px 0 rgba(11, 54, 178, 0.08);
}

@media (max-width: 767px) {
  .page-notice__inner {
    width: calc(100% - 3.2rem);
    padding: 7.6rem 1.8rem 4.4rem;
    margin-top: 5.8rem;
  }
}
.page-notice__title {
  width: 29.5rem;
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% 0;
}

@media (min-width: 768px) {
  .page-notice__title {
    width: auto;
    height: min(4svw, 6.4rem);
  }

  .page-notice__title img {
    width: auto;
    height: 100%;
  }

  .page-terms .page-notice__title {
    top: 2px;
  }
}
@media (max-width: 767px) {
  .page-notice__title {
    top: 0;
  }
}
.page-notice__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 3.2rem;
}

@media (min-width: 768px) {
  .page-notice__body {
    row-gap: min(3.0625svw, 4.9rem);
  }
}
@media (min-width: 768px) {
  .page-notice__detail {
    display: grid;
    grid-template-columns: min(13.5svw, 21.6rem) 1fr;
    gap: min(2.3125svw, 3.7rem);
  }

  .page-notice__detail:nth-of-type(n + 2) {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .page-notice__detail:last-of-type {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
}
.page-notice__detail-head {
  font-weight: var(--fw-bold);
  font-size: 2.4rem;
  line-height: 1.3333333333;
  letter-spacing: 0;
  color: var(--color-page-dark-blue);
}

.page-notice__detail-body .u-paragraph {
  line-height: 1.75;
}

@media (min-width: 768px) {
  .page-notice__detail-head {
    font-size: min(1.5svw, 2.4rem);
  }
}
@media (max-width: 767px) {
  .page-notice__detail-head {
    font-size: 1.8rem;
    line-height: 1.8;
    margin-bottom: 1.3rem;
  }

  .page-notice__detail-body .u-paragraph {
    line-height: 1.6;
  }
}
.page-notice[data-notice=close] .u-paragraph {
  color: var(--color-page-text);
  font-size: min(1.5svw, 2.4rem);
  line-height: 1.3333;
}

@media (min-width: 768px) {
  .page-notice[data-notice=close] .u-paragraph {
    text-align: center;
  }

  .page-notice[data-notice=close] {
    padding-top: min(4.375svw, 7rem);
  }
}
.page-notice[data-notice=close] .page-notice__inner {
  padding: 1.8rem;
}

.page-notice[data-notice=close] .page-notice__inner-layer {
  padding: min(2.5svw, 4rem);
}

.page-notice[data-notice=close] .page-notice__body {
  row-gap: min(2.5svw, 4rem);
}

@media (max-width: 767px) {
  .page-notice[data-notice=close] .u-paragraph {
    font-size: 1.8rem;
    line-height: 1.7;
  }

  .page-notice[data-notice=close] .page-notice__inner {
    padding: 0.7rem;
  }

  .page-notice[data-notice=close] .page-notice__inner-layer {
    padding: 3.7rem 1.6rem;
  }

  .page-notice[data-notice=close] .page-notice__body {
    row-gap: 2rem;
  }

  .page-notice[data-notice=close] .item-button {
    width: 28rem;
  }

  .page-notice[data-notice=close] .item-button--mypage {
    width: 30rem;
  }

  .page-notice[data-notice=close] .page-notice__inner {
    margin-top: 0;
  }
}
.page-terms {
  position: relative;
  z-index: 2;
  padding-bottom: 5rem;
}

.page-terms__inner {
  width: calc(100% - 3.2rem);
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 1.2rem;
  border: 2px solid #fff;
  -webkit-box-shadow: 0 -2px 24px 0 rgba(40, 85, 215, 0.02), 0 8px 40px 0 rgba(11, 54, 178, 0.08);
          box-shadow: 0 -2px 24px 0 rgba(40, 85, 215, 0.02), 0 8px 40px 0 rgba(11, 54, 178, 0.08);
  margin-left: auto;
  margin-right: auto;
  padding: 7.5rem 1.2rem 4.6rem;
}

@media (min-width: 768px) {
  .page-terms {
    padding-bottom: min(7.5svw, 12rem);
  }

  .page-terms__inner {
    width: min(67.5svw, 108rem);
    padding: min(4svw, 6.4rem);
    margin-inline: auto;
  }
}
@media (max-width: 767px) {
  .page-terms__inner {
    border-radius: 0.8rem;
  }
}
.page-terms__title {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 2;
  padding-left: 2rem;
}

.page-terms__title img {
  width: 8.5rem;
}

.page-terms__title::before {
  content: "";
  display: block;
  width: min(3.75svw, 6rem);
  height: min(3.625svw, 6rem);
  background: url("../img/deco.png") no-repeat center;
  background-size: contain;
  position: absolute;
  z-index: 0;
  top: 50%;
  left: max(-2rem, -1.25svw);
  translate: 0 -50%;
}

@media (max-width: 767px) {
  .page-terms__title::before {
    width: 2.9rem;
    height: 2.8rem;
  }
}
.page-terms__title::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  height: 2px;
  background-color: #ccc;
}

.page-terms__list {
  margin-left: auto;
  margin-right: auto;
  padding-block: min(1.875svw, 3rem) min(2.875svw, 4.6rem);
}

.page-terms__list {
  padding-top: 0;
}

.page-terms__title::after {
  width: 20.2rem;
}

@media (min-width: 768px) {
  .page-terms__title {
    margin-left: 0;
    padding-left: min(1.875svw, 3rem);
  }

  .page-terms__title img {
    width: min(8.5svw, 13.6rem);
  }

  .page-terms__title::before {
    width: min(3.75svw, 6rem);
    height: min(3.625svw, 5.8rem);
    left: max(-2rem, -1.25svw);
  }

  .page-terms__title::after {
    width: min(48svw, 76.8rem);
  }

  .page-terms__list {
    padding-top: min(3.125svw, 5rem);
    padding-left: min(0.1875svw, 0.3rem);
  }
}
@media (max-width: 767px) {
  .page-terms__list {
    padding-left: 0.8rem;
  }
}
.page-terms__item {
  color: var(--color-page-text);
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 160%;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: min(0.3125svw, 0.5rem);
}

.page-terms__item a {
  font-size: inherit;
  line-height: inherit;
  color: var(--color-page-blue);
}

.page-terms__item::before {
  content: "・";
  display: block;
}

@media (min-width: 768px) {
  .page-terms__item {
    font-size: min(1svw, 1.6rem);
    line-height: 1.75;
  }
}
.page-guide {
  width: min(60svw, 96rem);
  margin-left: auto;
  margin-right: auto;
  background-color: var(--color-white);
  padding: 3.7rem 4rem 3.7rem;
  text-align: center;
  color: #000;
  border-radius: 1rem;
  color: #354468;
}

@media (max-width: 767px) {
  .page-guide {
    width: calc(305* (100vw / 375));
    margin-top: 1.8rem;
    margin-left: auto;
    margin-right: auto;
    padding: 3rem calc(16* (100vw / 375)) calc(12* (100vw / 375));
  }
}
.page-guide__title {
  font-weight: var(--fw-bold);
  font-size: 1.8rem;
  line-height: normal;
  letter-spacing: 0;
  margin-bottom: 1.1rem;
  color: #354468;
}

.page-guide__description {
  font-weight: var(--fw-medium);
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0;
  color: #354468;
}

.page-guide__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-decoration: none;
  margin-top: 1.1rem;
  width: 28.6rem;
  height: 4.8rem;
  border-radius: 2.4rem;
  border: 2px solid #354468;
  font-weight: var(--fw-bold);
  font-size: 1.6rem;
  line-height: 1.25;
  letter-spacing: 0;
  margin-left: auto;
  margin-right: auto;
  color: #354468;
}

@media (min-width: 768px) {
  .page-guide__title {
    font-size: min(1.125svw, 1.8rem);
  }
}
@media (max-width: 767px) {
  .page-guide {
    padding-left: 0;
    padding-right: 0;
  }

  .page-guide__description {
    line-height: 1.5;
    padding-inline: 1.6rem;
  }

  .page-guide__button {
    width: 28.8rem;
    margin-top: 1rem;
    padding: 0.4rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .page-guide__button {
    -webkit-transition: color var(--transition-default), background-color var(--transition-default);
    transition: color var(--transition-default), background-color var(--transition-default);
  }

  .page-guide__button:hover {
    color: var(--color-white);
    background-color: #000;
  }
}
.page-open-content {
  position: relative;
  z-index: 3;
}

.item-search-area {
  padding-block: 4rem 4.8rem;
  background-color: #F7F8FC;
}

@media (max-width: 767px) {
  .item-search {
    width: 100% !important;
  }

  .item-search-area {
    padding-block: 0;
    padding: 5.7rem 1.5rem 7rem;
  }
}
@media (min-width: 768px) {
  .page-open-content {
    margin-top: min(1svw, 1.6rem);
    margin-left: auto;
    margin-right: auto;
  }

  .item-search-area {
    padding-block: min(2.8125svw, 4.5rem);
    margin-top: min(3.375svw, 5.4rem);
  }
}
.item-button {
  display: block;
  width: min(29.0625svw, 46.5rem);
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 767px) {
  .item-button {
    width: 33.3rem;
  }

  .item-search__searchword-tag:nth-child(1) {
    margin-left: 25svw;
  }

  .item-search__searchword-tag:nth-child(2) {
    margin-right: 25svw;
  }
}
.item-button__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.5rem;
}

@media (max-width: 767px) {
  .item-button__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: min(0.9375svw, 1.5rem);
  }
}
.item-button__wrapper .item-button {
  margin-left: 0;
  margin-right: 0;
}

.item-button {
  position: relative;
  -webkit-transition: translate 200ms ease-in;
  transition: translate 200ms ease-in;
}

.item-button img:not(.img-hover) {
  -webkit-transition: opacity 200ms ease-in;
  transition: opacity 200ms ease-in;
}

.item-button .img-hover {
  opacity: 0;
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  -webkit-transition: opacity 200ms ease-in;
  transition: opacity 200ms ease-in;
}

.item-button:hover {
  translate: 0 0.3em;
  -webkit-transition: translate 260ms ease-in;
  transition: translate 260ms ease-in;
}

.item-button:hover img:not(.img-hover) {
  opacity: 0;
  -webkit-transition: opacity 260ms ease-in;
  transition: opacity 260ms ease-in;
}

.item-button:hover .img-hover {
  opacity: 1;
  -webkit-transition: opacity 260ms ease-in;
  transition: opacity 260ms ease-in;
}

@media (max-width: 767px) {
  .item-search-area .item-button + .item-button {
    margin-top: -1.8rem;
  }
}
.item-search {
  width: min(42.5svw, 68rem);
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 767px) {
  .item-search {
    width: calc(100% - 3.2rem);
  }
}
.item-search__title {
  color: var(--color-page-text);
  font-weight: var(--fw-bold);
  font-size: 1.6rem;
  line-height: normal;
  margin-bottom: 1rem;
  text-align: center;
}

.item-search__bar {
  width: 100%;
  height: 4rem;
  border-radius: 2rem;
  display: grid;
  grid-template-columns: 1fr 7.8rem;
  border: 2px solid var(--color-page-blue);
  overflow: hidden;
}

@media (min-width: 768px) {
  .item-search__title {
    font-size: min(1.125svw, 1.8rem);
  }

  .item-search__bar {
    height: min(2.5svw, 4rem);
    border-radius: min(1.25svw, 2rem);
  }
}
@media (max-width: 767px) {
  .item-search__title {
    margin-bottom: 0.8rem;
  }
}
.item-search__bar-input {
  border: none;
  outline: none;
  border-radius: 0;
  font-size: 1.4rem;
  padding-inline: 2rem;
  overflow: hidden;
  text-overflow: ellipsis;
}

.item-search__search-button {
  background-color: var(--color-page-blue);
  color: var(--color-white);
  font-weight: var(--fw-bold);
  font-size: 1.4rem;
  letter-spacing: 10%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media (min-width: 768px) {
  .item-search__search-button {
    font-size: min(0.875svw, 1.4rem);
  }
}
@media (hover: hover) and (pointer: fine) {
  .item-search__search-button {
    -webkit-transition: background-color var(--transition-default);
    transition: background-color var(--transition-default);
  }

  .item-search__search-button:hover {
    background-color: var(--color-page-light-blue);
  }
}
.item-search__recommendation {
  margin-top: 1.7rem;
}

.item-search__recommendation dt {
  color: var(--color-page-text);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: min(1.25svw, 2rem);
  -moz-column-gap: min(1.25svw, 2rem);
  column-gap: min(1.25svw, 2rem);
  font-family: var(--ff-yu-gothic);
  font-weight: var(--fw-bold);
  text-align: center;
  font-size: min(1svw, 1.6rem);
  margin-bottom: 1rem;
}

.item-search__recommendation dt::before, .item-search__recommendation dt::after {
  content: "";
  width: min(7.5svw, 12rem);
  height: 1px;
  background-color: #354468;
}

@media (max-width: 767px) {
  .item-search__recommendation dt::before, .item-search__recommendation dt::after {
    width: 10.3rem;
  }

  .item-search__recommendation dt {
    font-size: 1.6rem;
  }

  .item-search__recommendation dt {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.item-search__recommendation dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0.6rem;
}

.item-search__searchword-tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 2.8rem;
  color: var(--color-white);
  background-color: var(--color-page-blue);
  border: 0.2rem solid var(--color-page-blue);
  border-radius: 1.5rem;
  text-decoration: none;
  padding-inline: 1.2rem;
  font-weight: var(--fw-medium);
  font-size: 1.4rem;
}

@media (min-width: 768px) {
  .item-search__recommendation dd {
    gap: min(0.375svw, 0.6rem);
  }

  .item-search__searchword-tag {
    height: min(1.75svw, 2.8rem);
    padding-inline: min(0.75svw, 1.2rem);
    font-size: min(0.875svw, 1.4rem);
  }
}
@media (hover: hover) and (pointer: fine) {
  .item-search__searchword-tag {
    -webkit-transition: background-color var(--transition-default), border-color var(--transition-default);
    transition: background-color var(--transition-default), border-color var(--transition-default);
  }

  .item-search__searchword-tag:hover {
    background-color: var(--color-page-light-blue);
    border-color: var(--color-page-light-blue);
  }
}
.item-area {
  margin-top: min(3.75svw, 6rem);
  position: relative;
  z-index: 2;
  max-width: 1800px;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 767px) {
  .item-area {
    margin-top: 4rem;
  }
}
@media (max-width: 767px) {
  .item-area::before {
    height: 38.2rem;
    background-size: auto 100%;
    background-position: center;
    bottom: 4.5rem;
  }
}
.item-area__title {
  width: min(75svw, 120rem);
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
  position: relative;
  z-index: 2;
}

@media (max-width: 767px) {
  .item-area__title {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1rem;
  }
}
.item-area .item-button {
  margin-top: min(2svw, 3.2rem);
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 767px) {
  .item-area .item-button {
    margin-top: 2.8rem;
  }
}
.item-area[data-item-type=new] .decoration-asset[data-decor-chara=gran] {
  position: absolute;
  z-index: 1;
  width: min(29.0625svw, 46.5rem);
  top: max(-11.2rem, -7svw);
  right: max(-2rem, -1.25svw);
}

.item-area[data-item-type=rerelease] .decoration-asset[data-decor-chara=djeeta] {
  position: absolute;
  z-index: 1;
  width: min(29.0625svw, 46.5rem);
  top: max(-9rem, -5.625svw);
  left: max(-1.9rem, -1.1875svw);
}

@media (max-width: 767px) {
  .item-area[data-item-type=new] {
    margin-top: 4rem;
  }

  .item-area[data-item-type=new] .decoration-asset[data-decor-chara=gran] {
    width: 26rem;
    top: 0.3rem;
    right: -4.2rem;
    pointer-events: none;
  }

  .item-area[data-item-type=rerelease] .decoration-asset[data-decor-chara=djeeta] {
    width: 23.5rem;
    top: -1.6rem;
    left: unset;
    right: -1.5rem;
    pointer-events: none;
  }
}
.item-area + .item-area {
  margin-top: 11.4rem;
}

@media (min-width: 768px) {
  .item-area + .item-area {
    margin-top: min(7.125svw, 11.4rem);
  }

  .item-area[data-item-type=new] .decoration-asset[data-decor-chara=gran] {
    top: unset;
    bottom: max(-14.3rem, -8.9375svw);
  }
}
.item-slider {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding: min(1.6875svw, 2.7rem) min(2.8125svw, 4.5rem) min(2.0625svw, 3.3rem);
}

.item-slider-container {
  width: min(63.75svw, 102rem);
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 3;
}

@media (max-width: 767px) {
  .item-slider-container {
    width: 100%;
  }

  .item-area + .item-area {
    margin-top: 9.3rem;
  }
}
@media (max-width: 767px) {
  .item-slider {
    width: 100%;
    padding: 1.8rem 1.6rem 3rem;
  }
}
.item-slide {
  position: relative;
  z-index: 2;
}

.item-slide.swiper-slide-next + .item-slide + .item-slide,
.item-slide.swiper-slide-prev {
  opacity: 0;
}

@media (min-width: 768px) {
  .item-area {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
  }

  .item-slider {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    padding: min(1.6875svw, 2.7rem) min(2.8125svw, 4.5rem) min(2.0625svw, 3.3rem);
  }
}
.item__wrapper {
  overflow: hidden;
  position: relative;
  display: block;
  border-radius: unset !important;
}

.item__wrapper::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("../img/item-hover-bg-sp.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 100ms ease-in;
  transition: opacity 100ms ease-in;
}

.item-slide:hover,
.item__wrapper:hover {
  opacity: 1;
}

.item__wrapper:hover::before {
  opacity: 1;
  -webkit-transition: opacity 160ms ease-out;
  transition: opacity 160ms ease-out;
}

@media (min-width: 768px) {
  .item__wrapper::before {
    background-image: url("../img/item-hover-bg.png");
  }
}
.item-slider__button--prev, .item-slider__button--next {
  width: min(5.4375svw, 8.7rem);
  cursor: pointer;
  position: absolute;
  z-index: 5;
  top: 50%;
  translate: 0 -50%;
}

.item-slider__button--prev.swiper-button-disabled,
.item-slider__button--next.swiper-button-disabled {
  opacity: 0.5;
}

.item-slider__button--prev img, .item-slider__button--next img {
  display: block;
  width: 100%;
  height: auto;
}

@media (hover: hover) and (pointer: fine) {
  .item-slider__button--prev, .item-slider__button--next {
    -webkit-transition: opacity var(--transition-default);
    transition: opacity var(--transition-default);
  }

  .item-slider__button--prev:hover, .item-slider__button--next:hover {
    opacity: 0.6;
  }
}
@media (max-width: 767px) {
  .item-slider__button--prev, .item-slider__button--next {
    width: 3rem;
  }
}
.item-slider__button--prev {
  left: max(-5.4rem, -3.375svw);
}

.item-slider__button--next {
  right: max(-5.4rem, -3.375svw);
}

.item-slider__scrollbar {
  width: calc(100% - 3.2rem) !important;
  height: 4px !important;
  bottom: 0 !important;
  left: 50% !important;
  translate: -50% 0 !important;
  background-color: transparent !important;
}

@media (min-width: 768px) {
  .item-slider__scrollbar {
    width: 91% !important;
    left: 50% !important;
    translate: -50% 0 !important;
  }
}
@media (max-width: 767px) {
  .item-slider__button--prev {
    left: 0;
  }

  .item-slider__button--next {
    right: 0;
  }
}
.item-slider__scrollbar::before {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #CCCCCC !important;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  left: 0;
}

.item-slider__scrollbar .swiper-scrollbar-drag {
  height: 100%;
  background-color: var(--color-page-blue);
  cursor: pointer;
}

.item-slide {
  -webkit-backdrop-filter: blur(32px);
          backdrop-filter: blur(32px);
  -webkit-box-shadow: 0 -2px 24px 0 rgba(40, 85, 215, 0.02), 0 8px 40px 0 rgba(11, 54, 178, 0.08);
          box-shadow: 0 -2px 24px 0 rgba(40, 85, 215, 0.02), 0 8px 40px 0 rgba(11, 54, 178, 0.08);
  border-radius: 0.4rem;
  border: 2px solid #fff;
  background: linear-gradient(-27deg, rgba(255, 255, 255, 0.64) 100%, rgba(255, 255, 255, 0.4) 0%);
  -webkit-transition: all var(--transition-default);
  transition: all var(--transition-default);
}

@media (max-width: 767px) {
  .item-slider__scrollbar {
    height: 3px !important;
  }

  .item-slider__scrollbar::before {
    height: 1px !important;
  }

  .item-slider__scrollbar .swiper-scrollbar-drag {
    height: 100%;
  }

  .item-slide {
    height: auto;
    aspect-ratio: unset;
    -webkit-backdrop-filter: blur(8px);
            backdrop-filter: blur(8px);
  }
}
.item__wrapper {
  display: block;
  text-decoration: none;
  border-radius: min(0.625svw, 1rem);
  overflow: hidden;
  background-image: url("../img/item_bg_pc.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  padding: 2rem;
  height: 100%;
  display: grid;
  grid-template-rows: auto 1fr;
}

.item__detail {
  display: grid;
  grid-template-rows: auto 1fr;
}

@media (max-width: 767px) {
  .item__wrapper {
    padding: 1rem 1rem 0.9rem;
    background-image: url("../img/item_bg_sp.png");
    border-radius: 1rem;
  }
}
.item__name {
  margin-top: min(1.5svw, 2.4rem);
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-weight: var(--fw-regular);
  font-size: min(1svw, 1.6rem);
  line-height: 1.75;
  letter-spacing: 0;
  min-height: 6rem;
}

@media (max-width: 767px) {
  .item__name {
    font-size: 1.4rem;
    line-height: 1.4;
    -webkit-line-clamp: 3;
    margin-top: 1rem;
  }
}
.item__price {
  margin-top: min(0.5625svw, 0.9rem);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  color: var(--color-page-blue);
}

.item__price-value {
  font-weight: var(--fw-bold);
  font-size: min(1.75svw, 2.8rem);
  line-height: 1.4642857143;
  letter-spacing: 0;
}

.item__price-tax {
  display: inline-block;
  font-weight: var(--fw-bold);
  font-size: 1.2rem;
  line-height: 1.4166666667;
  margin-bottom: 0.5rem;
}

@media (max-width: 767px) {
  .item__price {
    margin-top: 1rem;
  }

  .item__price-value {
    font-size: 2.2rem;
    line-height: 1.4090909091;
  }

  .item__price-tax {
    font-size: 1.2rem;
    line-height: 1.3333333333;
    margin-bottom: 0.3rem;
  }
}
.item__price[data-price-type=proper] {
  color: var(--color-gray-400);
  position: relative;
}

.item__price[data-price-type=proper] .item__price-value {
  font-size: 1.8rem;
}

.item__price[data-price-type=proper]::after {
  width: 100%;
  height: 1px;
  background-color: var(--color-black);
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  z-index: 2;
}

.item__price[data-price-type=discount] {
  background-color: var(--color-emphasis);
}

.item__label--soldout {
  position: absolute;
  z-index: 3;
  top: -2px;
  left: -2px;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  border-radius: min(0.625svw, 1rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: rgba(156, 172, 204, 0.5);
}

.all-button-wrap {
  position: relative;
  background-image: url("../img/bg_all_pc.jpg");
  background-repeat: no-repeat;
  background-size: cover;
}

.all-button-wrap__inner {
  padding-block: 8.6rem 8.2rem;
}

.all-button-wrap .decoration-asset {
  position: absolute;
  z-index: 1;
}

.all-button-wrap .item-button {
  position: relative;
  z-index: 2;
}

@media (max-width: 767px) {
  .all-button-wrap {
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  .all-button-wrap__inner {
    padding-block: min(3svw, 4.8rem) min(1.75svw, 2.8rem);
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }
}
.all-button-wrap .decoration-asset[data-decor-chara=bee] {
  width: min(23.5625svw, 30.8rem);
  top: min(1.875svw, 3rem);
  left: min(13.125svw, 21rem);
}

@media (max-width: 767px) {
  .all-button-wrap .decoration-asset[data-decor-chara=bee] {
    width: 16rem;
    top: -3.4rem;
    left: -0.8rem;
  }
}
.all-button-wrap .decoration-asset[data-decor-chara=lyria] {
  width: min(23.1875svw, 37.1rem);
  top: max(-1.3rem, -0.8125svw);
  right: min(9.125svw, 14.6rem);
}

@media (max-width: 767px) {
  .all-button-wrap .decoration-asset[data-decor-chara=lyria] {
    width: 19.5rem;
    top: -7rem;
    right: -4.7rem;
  }
}
@media (max-width: 767px) {
  .all-button-wrap .decoration-asset {
    z-index: 1;
  }
}
@media (max-width: 767px) {
  .all-button-wrap {
    margin-bottom: 0;
    background-image: url("../img/bg_all_sp.jpg");
  }

  .all-button-wrap .item-button {
    position: relative;
    z-index: 2;
    margin-top: -3rem;
  }
}
.all-button-wrap .item-area__title {
  width: 35rem;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 768px) {
  .all-button-wrap .item-area__title {
    width: min(31.5svw, 50.4rem);
  }

  .all-button-wrap .item-button {
    margin-top: max(-2rem, -1.25svw);
    width: min(29.0625svw, 46.5rem);
  }
}
@media (max-width: 767px) {
  #GBFes2025:has(.page-open-content) .page-bottom {
    background: url("../img/bg_bottom_sp.jpg") no-repeat bottom -1.2rem center;
    background-size: 100% auto;
  }
}
@media (min-width: 768px) {
  #GBFes2025:not(:has(.page-open-content)) .page-notice {
    padding-top: 0;
    margin-top: max(-13.5rem, -8.4375svw);
  }
}
@media (max-width: 767px) {
  #GBFes2025:not(:has(.page-open-content)) .page-notice__inner {
    margin-top: 0.8rem;
  }

  [data-item-type=rerelease] {
    padding-bottom: 5.9rem;
  }

  .page-terms .page-notice__title {
    top: 2px;
  }

  .item-area__title {
    margin-bottom: 0;
  }
}
@media (min-width: 768px) {
  [data-item-type=new] {
    margin-top: 0;
  }

  .item__wrapper {
    padding: min(1.25svw, 2rem) min(1.25svw, 2rem) min(1.125svw, 1.8rem);
  }
}
@media (max-width: 767px) {
  .page-notice {
    padding-top: 0;
  }

  .page-notice__inner {
    margin-top: 5.6rem;
  }

  .page-terms__item {
    -webkit-column-gap: 0.3rem;
       -moz-column-gap: 0.3rem;
            column-gap: 0.3rem;
  }
}
/*# sourceMappingURL=style.css.map */