@charset "UTF-8";
.p-ticket {
  width: 90%;
  max-width: 92rem;
  display: block;
  position: relative;
  margin: 0 auto;
  padding-top: 9rem;
}
@media screen and (max-width: 960px) {
  .p-ticket {
    padding-top: 2.7rem;
  }
}
.p-ticket__inner {
  display: block;
  position: relative;
}
.p-ticket__outline {
  display: block;
  position: relative;
}
.p-ticket__content {
  display: block;
  position: relative;
  margin-top: 19.2rem;
}
@media screen and (max-width: 960px) {
  .p-ticket__content {
    margin-top: 8.6rem;
  }
}

.p-ticket_outline {
  display: block;
  position: relative;
}
.p-ticket_outline__list {
  width: 100%;
  display: block;
  position: relative;
  margin: 0 auto;
}
.p-ticket_outline__list-item {
  display: block;
  position: relative;
}
.p-ticket_outline__list-item::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border-top: 1px solid var(--color-black);
}
.p-ticket_outline__list-item + .p-ticket_outline__list-item {
  margin-top: 4rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline__list-item + .p-ticket_outline__list-item {
    margin-top: 0.8rem;
  }
}
.p-ticket_outline__novelty {
  display: block;
  position: relative;
  margin-top: 8.5rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline__novelty {
    margin-top: 5rem;
  }
}

.p-ticket_outline_content {
  display: block;
  position: relative;
  padding: 3.6rem 0 2rem;
}
@media screen and (min-width: 961px) {
  .p-ticket_outline_content {
    display: grid;
    grid-template-columns: 32rem 1fr;
  }
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_content {
    padding: 2rem 0 2rem;
  }
}
.p-ticket_outline_content__header {
  display: block;
  position: relative;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_content__header {
    margin-bottom: 1.2rem;
  }
}
.p-ticket_outline_content__title {
  display: block;
  position: relative;
  font-size: 2.8rem;
  font-weight: 400;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_content__title {
    font-size: 1.6rem;
  }
}
.p-ticket_outline_content__inner {
  display: block;
  position: relative;
}
.p-ticket_outline_content__list {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 4.5rem;
  position: relative;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_content__list {
    gap: 3.4rem;
  }
}
.p-ticket_outline_content__list-item {
  width: calc(50% - 2.25rem);
  display: block;
  position: relative;
}

.p-ticket_outline_data {
  display: block;
  position: relative;
}
.p-ticket_outline_data__header {
  display: block;
  position: relative;
}
.p-ticket_outline_data__title {
  display: block;
  position: relative;
  font-size: 2.2rem;
  letter-spacing: -0.05rem;
  font-weight: 400;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_data__title {
    font-size: 1.45rem;
  }
}
.p-ticket_outline_data__inner {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.8rem;
  position: relative;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_data__inner {
    gap: 0.3rem;
  }
}
.p-ticket_outline_data__price {
  display: block;
  position: relative;
  font-size: 7rem;
  letter-spacing: 0.2rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_data__price {
    font-size: 4.4rem;
  }
}
.p-ticket_outline_data__cap {
  display: block;
  position: relative;
  top: 0.5rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_data__cap {
    top: 0.4rem;
  }
}
.p-ticket_outline_data__cap-main {
  display: block;
  position: relative;
  font-size: 3rem;
  font-weight: 300;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_data__cap-main {
    font-size: 2.2rem;
    line-height: 1;
  }
}
.p-ticket_outline_data__cap-sub {
  display: block;
  position: relative;
  font-size: 1.3rem;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_data__cap-sub {
    font-size: 1rem;
  }
}

.p-ticket_outline_novelty {
  display: block;
  position: relative;
}
.p-ticket_outline_novelty__img {
  display: block;
  position: relative;
  margin-bottom: 3.5rem;
}
.p-ticket_outline_novelty__title {
  display: block;
  position: relative;
}
.p-ticket_outline_novelty__title-sub {
  display: block;
  position: relative;
  margin-bottom: 0.8rem;
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem;
  text-align: center;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_novelty__title-sub {
    font-size: 1.4rem;
  }
}
.p-ticket_outline_novelty__title-main {
  display: block;
  position: relative;
  font-size: 3.8rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem;
  text-align: center;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_novelty__title-main {
    font-size: 2rem;
  }
}
.p-ticket_outline_novelty__note {
  display: block;
  position: relative;
  margin-top: 2rem;
  font-size: 1.3rem;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_novelty__note {
    margin-top: 1.5rem;
    line-height: 1.5;
    letter-spacing: 0;
    font-size: 1rem;
  }
}
.p-ticket_outline_novelty__btn {
  width: 45rem;
  display: block;
  position: relative;
  margin: 5.6rem auto 0;
}
@media screen and (max-width: 960px) {
  .p-ticket_outline_novelty__btn {
    width: 30rem;
    margin-top: 1.7rem;
  }
}

.p-ticket_content {
  display: block;
  position: relative;
  padding: 5rem 0 0;
}
@media screen and (max-width: 960px) {
  .p-ticket_content {
    padding: 4rem 0 0;
  }
}
.p-ticket_content + .p-ticket_content {
  margin-top: 18.5rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_content + .p-ticket_content {
    margin-top: 7.7rem;
  }
}
.p-ticket_content__header {
  display: block;
  position: relative;
}
.p-ticket_content__title {
  display: block;
  position: relative;
}
.p-ticket_content__title-sub {
  width: 90vw;
  display: block;
  position: absolute;
  top: calc(50% + 1.5rem);
  left: 50%;
  font-size: 17rem;
  font-family: "Cinzel", "Noto Serif JP", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ 明朝", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
  letter-spacing: 0.6rem;
  color: var(--color-cap-bg);
  text-align: center;
  transform: translate(-50%, -50%);
  white-space: nowrap;
  overflow: hidden;
}
@media screen and (max-width: 960px) {
  .p-ticket_content__title-sub {
    width: 150vw;
    top: 50%;
    font-size: 6.8rem;
    letter-spacing: 0.4rem;
  }
}
.p-ticket_content__title-main {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  position: relative;
  padding: 0.7rem 2.5rem 0;
  margin: 0 auto;
  font-size: 3.1rem;
  line-height: 1;
  font-family: "Cinzel", "Noto Serif JP", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ 明朝", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
  font-weight: 400;
  background-color: var(--color-white);
}
@media screen and (max-width: 960px) {
  .p-ticket_content__title-main {
    padding: 0.3rem 1rem 0.25rem;
    font-size: 1.5rem;
  }
}
.p-ticket_content__title-main:before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border: 1px solid currentColor;
}
.p-ticket_content__inner {
  display: block;
  position: relative;
}
.p-ticket_content__novelty {
  display: block;
  position: relative;
  padding-top: 11.5rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_content__novelty {
    padding-top: 5.4rem;
  }
}
.p-ticket_content__schedule {
  display: block;
  position: relative;
  padding-top: 11.5rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_content__schedule {
    padding-top: 5rem;
  }
}
.p-ticket_content__howto {
  display: block;
  position: relative;
  padding-top: 10rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_content__howto {
    padding-top: 4.8rem;
  }
}

.p-ticket_novelty {
  display: block;
  position: relative;
}
.p-ticket_novelty__default {
  display: block;
  position: relative;
}
.p-ticket_novelty__weekly {
  display: block;
  position: relative;
  margin-top: 14rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty__weekly {
    margin-top: 10rem;
  }
}
.p-ticket_novelty__weekly::before {
  content: "";
  width: 100%;
  height: 1px;
  display: block;
  position: absolute;
  top: -7rem;
  left: 0;
  background: var(--gradient-line);
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty__weekly::before {
    top: -5rem;
  }
}

.p-ticket_novelty_default {
  display: block;
  position: relative;
}
.p-ticket_novelty_default__img {
  display: block;
  position: relative;
  margin-bottom: 2.5rem;
}
.p-ticket_novelty_default__title {
  display: block;
  position: relative;
}
.p-ticket_novelty_default__title-sub {
  display: block;
  position: relative;
  margin-bottom: 0.8rem;
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem;
  text-align: center;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_default__title-sub {
    margin-bottom: 0.4rem;
    font-size: 1.4rem;
  }
}
.p-ticket_novelty_default__title-main {
  display: block;
  position: relative;
  font-size: 3.8rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem;
  text-align: center;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_default__title-main {
    font-size: 2.2rem;
    letter-spacing: -0.1rem;
  }
}
.p-ticket_novelty_default__title-main small {
  display: inline-block;
  position: relative;
  vertical-align: middle;
  top: -0.2em;
  margin-left: 0.5em;
  font-size: 0.5em;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_default__title-main small {
    display: block;
    margin-top: 0.3em;
    font-size: 0.75em;
  }
}
.p-ticket_novelty_default__title-main + .p-ticket_novelty_default__title-main {
  margin-top: 0.3em;
}
.p-ticket_novelty_default__title-note {
  display: inline-block;
  position: relative;
  top: -0.5rem;
  font-size: 1.4rem;
  line-height: 1.8;
  text-align: center;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_default__title-note {
    display: block;
    margin-top: 0.4em;
    font-size: 1rem;
  }
}
.p-ticket_novelty_default__note {
  display: block;
  position: relative;
  margin-top: 0.2rem;
  font-size: 1.3rem;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_default__note {
    margin-top: 0.2rem;
    font-size: 1rem;
  }
}
.p-ticket_novelty_default__btn {
  width: 45rem;
  display: block;
  position: relative;
  margin: 5.6rem auto 0;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_default__btn {
    width: 30rem;
  }
}

.p-ticket_novelty_weekly {
  display: block;
  position: relative;
}
.p-ticket_novelty_weekly__img {
  display: block;
  position: relative;
  margin-bottom: 2.5rem;
}
.p-ticket_novelty_weekly__title {
  display: block;
  position: relative;
}
.p-ticket_novelty_weekly__title-sub {
  display: block;
  position: relative;
  margin-bottom: 0.8rem;
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem;
  text-align: center;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_weekly__title-sub {
    margin-bottom: 0.4rem;
    font-size: 1.4rem;
  }
}
.p-ticket_novelty_weekly__title-main {
  display: block;
  position: relative;
  font-size: 3.8rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem;
  text-align: center;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_weekly__title-main {
    font-size: 2.2rem;
    letter-spacing: -0.1rem;
  }
}
.p-ticket_novelty_weekly__title-main small {
  display: inline-block;
  position: relative;
  vertical-align: middle;
  top: -0.2em;
  margin-left: 0.5em;
  font-size: 0.5em;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_weekly__title-main small {
    display: block;
    margin-top: 0.3em;
    font-size: 0.75em;
  }
}
.p-ticket_novelty_weekly__title-note {
  display: inline-block;
  position: relative;
  top: -0.5rem;
  font-size: 1.4rem;
  line-height: 1.8;
  text-align: center;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_weekly__title-note {
    display: block;
    margin-top: 0.4em;
    font-size: 1rem;
  }
}
.p-ticket_novelty_weekly__btn {
  width: 45rem;
  display: block;
  position: relative;
  margin: 5.6rem auto 0;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_weekly__btn {
    width: 30rem;
  }
}
.p-ticket_novelty_weekly__schedule {
  display: block;
  position: relative;
  margin-top: 3.2rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_weekly__schedule {
    margin-top: 1.5rem;
  }
}

.p-ticket_novelty_schedule {
  display: block;
  position: relative;
}
.p-ticket_novelty_schedule__header {
  display: block;
  position: relative;
  margin-bottom: 2.6rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_schedule__header {
    margin-bottom: 1.1rem;
  }
}
.p-ticket_novelty_schedule__title {
  display: block;
  position: relative;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem;
  text-align: center;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_schedule__title {
    font-size: 1.45rem;
  }
}
.p-ticket_novelty_schedule__inner {
  display: block;
  position: relative;
}
.p-ticket_novelty_schedule__list {
  display: block;
  position: relative;
}
.p-ticket_novelty_schedule__list-item {
  display: block;
  position: relative;
}
.p-ticket_novelty_schedule__list-item + .p-ticket_novelty_schedule__list-item {
  margin-top: 1rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_schedule__list-item + .p-ticket_novelty_schedule__list-item {
    margin-top: 0.6rem;
  }
}

.p-ticket_novelty_schedule_data {
  display: block;
  position: relative;
}
@media screen and (min-width: 961px) {
  .p-ticket_novelty_schedule_data {
    display: grid;
    grid-template-columns: 18.3rem 1fr;
  }
}
.p-ticket_novelty_schedule_data__header {
  width: 100%;
  min-height: 7.7rem;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: var(--gradient-sub);
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_schedule_data__header {
    min-height: 4.5rem;
  }
}
.p-ticket_novelty_schedule_data__title {
  display: block;
  position: relative;
  font-size: 1.5rem;
  letter-spacing: 0.1rem;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_schedule_data__title {
    font-size: 1.3rem;
  }
}
.p-ticket_novelty_schedule_data__inner {
  display: block;
  position: relative;
}
.p-ticket_novelty_schedule_data__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2px;
  position: relative;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_schedule_data__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 1px;
  }
}
.p-ticket_novelty_schedule_data__list-item {
  display: block;
  position: relative;
}
.--all .p-ticket_novelty_schedule_data__list-item {
  grid-column: 1/-1;
}
.p-ticket_novelty_schedule_data__cell {
  min-height: 7.7rem;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: var(--color-bg-content);
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_schedule_data__cell {
    min-height: 6.5rem;
  }
}
.p-ticket_novelty_schedule_data__cell-text {
  display: block;
  position: relative;
  font-size: 1.3rem;
  letter-spacing: 0;
  line-height: 1.5;
  font-weight: 400;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_novelty_schedule_data__cell-text {
    font-size: 1.25rem;
    letter-spacing: -0.05rem;
  }
}

.p-ticket_schedule {
  display: block;
  position: relative;
}

.p-ticket_schedule_content {
  display: block;
  position: relative;
  padding: 5.4rem 0 6.5rem;
  background: var(--color-bg-content);
  overflow: hidden;
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_content {
    padding: 2.8rem 0 3.5rem;
  }
}
.p-ticket_schedule_content + .p-ticket_schedule_content {
  margin-top: 2rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_content + .p-ticket_schedule_content {
    margin-top: 1.5rem;
  }
}
.p-ticket_schedule_content.--end {
  padding: 5.4rem 0 5.8rem;
  background: var(--color-ticket-bg);
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_content.--end {
    padding: 2.8rem 0 3rem;
  }
}
.p-ticket_schedule_content.--end::after {
  content: "終了しました";
  width: 30rem;
  height: 15.5rem;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  position: absolute;
  padding: 1.4rem 2rem;
  top: 0;
  right: 0;
  font-size: 1.4rem;
  letter-spacing: 0;
  line-height: 1;
  text-align: center;
  transform: translate(42%, -58%) rotate(30deg);
  color: var(--color-white);
  background: var(--color-ticket-gray);
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_content.--end::after {
    width: 18rem;
    height: 10rem;
    font-size: 0.85rem;
    padding: 0.7rem 1rem;
  }
}
.p-ticket_schedule_content__header {
  width: 90%;
  max-width: 80rem;
  display: block;
  position: relative;
  margin: 0 auto 4rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_content__header {
    width: 100%;
    margin-bottom: 3rem;
  }
}
.p-ticket_schedule_content__header:last-child {
  margin-bottom: 0;
}
.p-ticket_schedule_content__title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  position: relative;
  margin: 0 auto;
  padding: 0 4.8rem;
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem;
  color: transparent;
  text-align: center;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_content__title {
    font-size: 2rem;
    line-height: 1.5;
    padding: 0 3.2rem;
  }
}
.p-ticket_schedule_content.--end .p-ticket_schedule_content__title {
  color: var(--color-ticket-text);
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_content.--end .p-ticket_schedule_content__title {
    font-size: 1.6rem;
  }
}
.p-ticket_schedule_content__title::before {
  content: "";
  width: 100%;
  height: 6rem;
  min-height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../img/common/deco_cap-l.svg") no-repeat 0 50%/4.5rem auto, url("../img/common/deco_cap-r.svg") no-repeat 100% 50%/4.5rem auto;
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_content__title::before {
    min-height: 140%;
    height: 4.5rem;
    background: url("../img/common/deco_cap-l.svg") no-repeat 0 50%/2.8rem auto, url("../img/common/deco_cap-r.svg") no-repeat 100% 50%/2.8rem auto;
  }
}
.--end .p-ticket_schedule_content__title::before {
  background: url("../img/common/deco_cap-l_w.svg") no-repeat 0 50%/4.5rem auto, url("../img/common/deco_cap-r_w.svg") no-repeat 100% 50%/4.5rem auto;
}
@media screen and (max-width: 960px) {
  .--end .p-ticket_schedule_content__title::before {
    background: url("../img/common/deco_cap-l_w.svg") no-repeat 0 50%/2.8rem auto, url("../img/common/deco_cap-r_w.svg") no-repeat 100% 50%/2.8rem auto;
  }
}
.p-ticket_schedule_content__cap {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  position: relative;
  padding: 0.3rem 2.3rem;
  margin: 1.5rem auto 0;
  font-size: 1.8rem;
  color: var(--color-white);
  background: var(--gradient-main);
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_content__cap {
    margin-top: 0.7rem;
    padding: 0.3rem 1.4rem;
    font-size: 1.3rem;
  }
}
.p-ticket_schedule_content.--end .p-ticket_schedule_content__cap {
  background: var(--color-ticket-gray);
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_content.--end .p-ticket_schedule_content__cap {
    margin-top: 1rem;
    padding: 0.2rem 1rem;
    font-size: 0.9rem;
  }
}
.p-ticket_schedule_content__inner {
  width: 90%;
  max-width: 80rem;
  display: block;
  position: relative;
  margin: 0 auto;
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_content__inner {
    width: 88%;
  }
}
.p-ticket_schedule_content__list {
  width: 100%;
  display: block;
  position: relative;
  margin: 0 auto;
}
.p-ticket_schedule_content__list-item {
  display: block;
  position: relative;
}
.p-ticket_schedule_content__list-item::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border-top: 1px solid var(--color-line-content);
}
.p-ticket_schedule_content__list-item:last-child::before {
  border-bottom: 1px solid var(--color-line-content);
}
.p-ticket_schedule_content__link {
  width: 100%;
  max-width: 45rem;
  display: block;
  position: relative;
  margin: 4rem auto 0;
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_content__link {
    max-width: 27.5rem;
    margin-top: 3.4rem;
  }
}
.p-ticket_schedule_content__link-item {
  display: block;
  position: relative;
}
.p-ticket_schedule_content__link-item + .p-ticket_schedule_content__link-item {
  margin-top: 1.5rem;
}

.p-ticket_schedule_data {
  display: block;
  position: relative;
  padding: 3.7rem 0;
}
@media screen and (min-width: 961px) {
  .p-ticket_schedule_data {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_data {
    padding: 1.7rem 0;
  }
}
.p-ticket_schedule_data__header {
  display: block;
  position: relative;
}
@media screen and (min-width: 961px) {
  .p-ticket_schedule_data__header {
    min-width: 15rem;
    margin-right: 1.2rem;
  }
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_data__header {
    margin-bottom: 0.4rem;
  }
}
.p-ticket_schedule_data__title {
  display: block;
  position: relative;
  font-size: 2.1rem;
  letter-spacing: 0;
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_data__title {
    font-size: 1.5rem;
  }
}
.p-ticket_schedule_data__inner {
  display: block;
  position: relative;
}
@media screen and (min-width: 961px) {
  .p-ticket_schedule_data__inner {
    min-width: 0;
    flex: 1 1 0;
  }
}
.p-ticket_schedule_data__text {
  display: block;
  position: relative;
  font-size: 2.1rem;
  letter-spacing: 0;
}
@media screen and (max-width: 960px) {
  .p-ticket_schedule_data__text {
    font-size: 1.5rem;
  }
}

.p-ticket_howto {
  display: block;
  position: relative;
}
.p-ticket_howto__outline {
  display: block;
  position: relative;
}
.p-ticket_howto__guide {
  display: block;
  position: relative;
  margin-top: 20rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto__guide {
    margin-top: 9.8rem;
  }
}
.p-ticket_howto__guide::before {
  content: "";
  width: 100%;
  height: 1px;
  display: block;
  position: absolute;
  top: -10.8rem;
  left: 0;
  background: var(--gradient-line);
}
@media screen and (max-width: 960px) {
  .p-ticket_howto__guide::before {
    top: -5rem;
  }
}
.p-ticket_howto__guide-item {
  display: block;
  position: relative;
}
.p-ticket_howto__guide-item + .p-ticket_howto__guide-item {
  margin-top: 3rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto__guide-item + .p-ticket_howto__guide-item {
    margin-top: 1.5rem;
  }
}
.p-ticket_howto__support {
  display: block;
  position: relative;
  margin-top: 3.2rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto__support {
    margin-top: 1rem;
  }
}
.p-ticket_howto__support-item {
  display: block;
  position: relative;
}
.p-ticket_howto__support-item + .p-ticket_howto__support-item {
  margin-top: 3rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto__support-item + .p-ticket_howto__support-item {
    margin-top: 1.5rem;
  }
}

.p-ticket_howto_outline {
  display: block;
  position: relative;
}
.p-ticket_howto_outline__header {
  display: block;
  position: relative;
  margin-bottom: 3rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline__header {
    margin-bottom: 2rem;
  }
}
.p-ticket_howto_outline__title {
  display: block;
  position: relative;
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.05rem;
  color: transparent;
  text-align: center;
  background: var(--gradient-main);
  -webkit-background-clip: text;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline__title {
    font-size: 2.2rem;
    line-height: 1.35;
    letter-spacing: 0;
  }
}
.p-ticket_howto_outline__inner {
  display: block;
  position: relative;
}
.p-ticket_howto_outline__lead {
  display: block;
  position: relative;
  font-size: 1.5rem;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline__lead {
    font-size: 1.3rem;
    line-height: 2.1;
  }
}
.p-ticket_howto_outline__step {
  display: block;
  position: relative;
  margin-top: 8.5rem;
}
@media screen and (min-width: 961px) {
  .p-ticket_howto_outline__step {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 2rem;
  }
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline__step {
    margin-top: 6.4rem;
  }
}
.p-ticket_howto_outline__step-item {
  display: block;
  position: relative;
}
@media screen and (min-width: 961px) {
  .p-ticket_howto_outline__step-item {
    width: calc(50% - 1rem);
  }
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline__step-item + .p-ticket_howto_outline__step-item {
    margin-top: 4.5rem;
  }
}
.p-ticket_howto_outline__text {
  display: block;
  position: relative;
  margin-top: 5.8rem;
  font-size: 1.6rem;
  letter-spacing: 0.1rem;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline__text {
    margin-top: 3rem;
    font-size: 1.3rem;
    line-height: 2.2;
  }
}
.p-ticket_howto_outline__btn {
  width: 45rem;
  display: block;
  position: relative;
  margin: 3.6rem auto 0;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline__btn {
    width: 30rem;
    margin-top: 2.2rem;
  }
}
.p-ticket_howto_outline__note {
  display: block;
  position: relative;
  margin-top: 4rem;
  font-size: 1.3rem;
  letter-spacing: 0;
  line-height: 2.2;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline__note {
    margin-top: 3rem;
    font-size: 1rem;
    line-height: 1.8;
  }
  .p-ticket_howto_outline__note span:not(:last-child) {
    margin-bottom: 0.7em;
  }
}

.p-ticket_howto_outline_step {
  display: block;
  position: relative;
  background: var(--color-white);
  padding: 7rem 4rem 4rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline_step {
    padding: 4.2rem 2.2rem 3.2rem;
  }
}
.p-ticket_howto_outline_step__cap {
  width: 10.5rem;
  height: 9.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  left: 50%;
  padding-top: 2.2rem;
  font-size: 6rem;
  font-weight: 400;
  font-family: "Cinzel", "Noto Serif JP", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ 明朝", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
  font-weight: 400;
  color: var(--color-navy);
  background: var(--color-white);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline_step__cap {
    width: 7rem;
    height: 6.5rem;
    padding-top: 1.5rem;
    font-size: 4rem;
  }
}
.p-ticket_howto_outline_step__img {
  display: block;
  position: relative;
  margin-bottom: 3.2rem;
}
@media screen and (min-width: 961px) {
  .p-ticket_howto_outline_step__img {
    min-height: 22.5rem;
  }
  .p-ticket_howto_outline_step__img img {
    width: 100% !important;
    height: 100% !important;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    -o-object-fit: contain;
    object-fit: contain;
  }
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline_step__img {
    margin-bottom: 1.2rem;
  }
}
.p-ticket_howto_outline_step__text {
  display: block;
  position: relative;
  font-size: 1.8rem;
  letter-spacing: 0.05rem;
  line-height: 1.9;
  text-align: center;
  color: var(--color-navy);
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline_step__text {
    font-size: 1.5rem;
  }
}
.p-ticket_howto_outline_step__btn {
  width: 31.5rem;
  min-height: 6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 1rem 4rem;
  margin: 2.5rem auto 0;
  color: var(--color-black);
  background-color: transparent;
  border-radius: 20rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline_step__btn {
    width: 26.5rem;
    min-height: 5rem;
    margin-top: 1.4rem;
  }
}
.p-ticket_howto_outline_step__btn::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: var(--gradient-hov);
  border-radius: 20rem;
  opacity: 0;
}
@media (hover: hover) and (pointer: fine) {
  .p-ticket_howto_outline_step__btn::before {
    transition: opacity 0.6s var(--ease_out);
  }
  .p-ticket_howto_outline_step__btn:hover::before {
    opacity: 1;
  }
}
.p-ticket_howto_outline_step__btn::after {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border: 1px solid var(--color-black);
  border-radius: 20rem;
}
.p-ticket_howto_outline_step__btn-text {
  width: 100%;
  display: block;
  position: relative;
  font-size: 1.4rem;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline_step__btn-text {
    font-size: 1.2rem;
  }
}
.p-ticket_howto_outline_step__btn-arrow {
  width: 1.6rem;
  display: block;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translate(0, -50%);
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_outline_step__btn-arrow {
    width: 1.5rem;
    right: 1.5rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-ticket_howto_outline_step__btn:hover .p-ticket_howto_outline_step__btn-arrow img {
    animation: arrow 1s linear;
  }
}

.p-ticket_howto_guide {
  display: block;
  position: relative;
  padding: 5.4rem 0 5.6rem;
  background: var(--color-bg-content);
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_guide {
    padding: 3.8rem 0 2.5rem;
  }
}
.p-ticket_howto_guide__header {
  width: 90%;
  max-width: 84rem;
  display: block;
  position: relative;
  margin: 0 auto 5rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_guide__header {
    width: 100%;
    margin-bottom: 3.6rem;
  }
}
.p-ticket_howto_guide__title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  position: relative;
  margin: 0 auto;
  padding: 0 4.8rem;
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_guide__title {
    font-size: 2rem;
    padding: 0 3.5rem;
  }
}
.p-ticket_howto_guide__title::before {
  content: "";
  width: 100%;
  height: 6rem;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../img/common/deco_cap-l.svg") no-repeat 0 50%/4.5rem auto, url("../img/common/deco_cap-r.svg") no-repeat 100% 50%/4.5rem auto;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_guide__title::before {
    height: 4.5rem;
    background: url("../img/common/deco_cap-l.svg") no-repeat 0 50%/2.8rem auto, url("../img/common/deco_cap-r.svg") no-repeat 100% 50%/2.8rem auto;
  }
}
.p-ticket_howto_guide__inner {
  width: 90%;
  max-width: 84rem;
  display: block;
  position: relative;
  margin: 0 auto;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_guide__inner {
    width: 88%;
  }
}
.p-ticket_howto_guide__text {
  display: block;
  position: relative;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.03rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_guide__text {
    font-size: 1.3rem;
    line-height: 2.2;
  }
}
.p-ticket_howto_guide__text span:not(:last-child) {
  margin-bottom: 0.3em;
}

.p-ticket_howto_support {
  display: block;
  position: relative;
  padding: 5.4rem 0 6.5rem;
  background: var(--color-bg-content);
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_support {
    padding: 3rem 0 3rem;
  }
}
.p-ticket_howto_support__header {
  width: 90%;
  max-width: 84rem;
  display: block;
  position: relative;
  margin: 0 auto 2.8rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_support__header {
    margin-bottom: 1rem;
  }
}
.p-ticket_howto_support__title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  position: relative;
  margin: 0 auto;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem;
  color: transparent;
  background: var(--gradient-main);
  -webkit-background-clip: text;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_support__title {
    font-size: 1.4rem;
  }
}
.p-ticket_howto_support__inner {
  width: 90%;
  max-width: 84rem;
  display: block;
  position: relative;
  margin: 0 auto;
}
.p-ticket_howto_support__text {
  display: block;
  position: relative;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.03rem;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_support__text {
    font-size: 1.2rem;
    letter-spacing: 0;
  }
}
.p-ticket_howto_support__btn {
  width: 33rem;
  min-height: 6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 1rem 4rem;
  margin: 1.5rem auto 0;
  color: var(--color-black);
  background-color: transparent;
  border-radius: 20rem;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_support__btn {
    width: 26.5rem;
    min-height: 4.8rem;
  }
}
.p-ticket_howto_support__btn::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: var(--gradient-hov);
  border-radius: 20rem;
  opacity: 0;
}
@media (hover: hover) and (pointer: fine) {
  .p-ticket_howto_support__btn::before {
    transition: opacity 0.6s var(--ease_out);
  }
  .p-ticket_howto_support__btn:hover::before {
    opacity: 1;
  }
}
.p-ticket_howto_support__btn::after {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border: 1px solid var(--color-black);
  border-radius: 20rem;
}
.p-ticket_howto_support__btn-text {
  width: 100%;
  display: block;
  position: relative;
  font-size: 1.4rem;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_support__btn-text {
    font-size: 1.2rem;
  }
}
.p-ticket_howto_support__btn-arrow {
  width: 1.6rem;
  display: block;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translate(0, -50%);
}
@media screen and (max-width: 960px) {
  .p-ticket_howto_support__btn-arrow {
    width: 1.5rem;
    right: 1.5rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-ticket_howto_support__btn:hover .p-ticket_howto_support__btn-arrow img {
    animation: arrow 1s linear;
  }
}