/* ---------------------------------------------------
mixin
---------------------------------------------------- */
/* ---------------------------------------------------
device
---------------------------------------------------- */
.forTB, .forSP, .forTBSP, .forTBSPSE, .forSE, .forSPSE {
  display: none !important;
}

@media screen and (max-width: 1024px) {
  .forTB, .forTBSP, .forTBSPSE {
    display: block !important;
  }

  .forSP, .forPC, .forSE, .forSPSE {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .forSP, .forTBSP, .forSPSE, .forTBSPSE {
    display: block !important;
  }

  .forTB, .forPC, .forPCTB {
    display: none !important;
  }
}
@media screen and (max-width: 320px) {
  .forSE, .forSPSE, .forTBSPSE {
    display: block !important;
  }

  .forTB, .forPC, .forPCTB, .forSP, .forTBSP {
    display: none !important;
  }
}
/* ---------------------------------------------------
layout
---------------------------------------------------- */
.l-content__inner {
  padding: 0 15px;
  margin-bottom: 60px;
}
@media screen and (max-width: 1024px) {
  .l-content__inner {
    padding: 0 10px;
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 768px) {
  .l-content__inner {
    padding: 0 5px;
    margin-bottom: 40px;
  }
}

/* ---------------------------------------------------
text
---------------------------------------------------- */
.u-taL {
  text-align: left !important;
}

.u-taC {
  text-align: center !important;
}

.u-taR {
  text-align: right !important;
}

/* ---------------------------------------------------
image
---------------------------------------------------- */
figure {
  text-align: center;
  margin: 0 auto;
}
figure > figcaption {
  font-size: clamp(1.2rem, 0.9vw, 1.3rem);
  text-align: center;
  margin-top: 5px;
}
@media screen and (max-width: 768px) {
  figure > figcaption {
    font-size: clamp(1rem, 3.07vw, 1.2rem);
  }
}

/* ---------------------------------------------------
table
---------------------------------------------------- */
@media screen and (max-width: 1024px) {
  .l-table-scroll__tb {
    overflow: auto;
    white-space: nowrap;
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 768px) {
  .l-table-scroll__sp {
    overflow: auto;
    white-space: nowrap;
    margin-bottom: 10px;
  }
}

/* ---------------------------------------------------
column
---------------------------------------------------- */
.c-column {
  display: flex;
  -moz-display: flex;
  -webkit-display: flex;
  flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  align-items: flex-start;
  -moz-align-items: flex-start;
  -webkit-align-items: flex-start;
  margin: 0 auto !important;
}
.c-column.c-column__alignItems-center {
  align-items: center;
  -moz-align-items: center;
  -webkit-align-items: center;
}
.c-column.c-column__justifyContent-center {
  justify-content: center;
  -moz-justify-content: center;
  -webkit-justify-content: center;
}
.c-column > * {
  margin-right: 2%;
  margin-bottom: 20px;
}
@media screen and (max-width: 1024px) {
  .c-column > * {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 768px) {
  .c-column > * {
    margin-bottom: 10px;
  }
}
.c-column > .c-column__inner .c-dl-block {
  margin-bottom: 0 !important;
}
.c-column > .c-column__inner .c-button {
  margin-bottom: 0 !important;
}
.c-column.c-column-02 > .c-column__inner {
  width: 49%;
}
.c-column.c-column-02 > .c-column__inner:nth-child(n+3) {
  margin-top: 10px;
}
.c-column.c-column-02 > .c-column__inner:nth-child(2n) {
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  .c-column.c-column-02 > .c-column__inner.c-column__inner-spW100p {
    display: block;
    width: 100%;
    margin-right: 0;
  }
}
.c-column.c-column-02 > .c-column__inner.c-column__inner-W60p {
  width: 59%;
}
@media screen and (max-width: 768px) {
  .c-column.c-column-02 > .c-column__inner.c-column__inner-W60p.c-column__inner-spW100p {
    width: 100%;
    margin-right: 0;
  }
}
.c-column.c-column-02 > .c-column__inner.c-column__inner-W40p {
  width: 39%;
}
@media screen and (max-width: 768px) {
  .c-column.c-column-02 > .c-column__inner.c-column__inner-W40p.c-column__inner-spW100p {
    width: 100%;
    margin-right: 0;
  }
}
.c-column.c-column-02 > .c-column__inner.c-column__inner-W70p {
  width: 69%;
}
@media screen and (max-width: 768px) {
  .c-column.c-column-02 > .c-column__inner.c-column__inner-W70p.c-column__inner-spW100p {
    width: 100%;
    margin-right: 0;
  }
}
.c-column.c-column-02 > .c-column__inner.c-column__inner-W30p {
  width: 29%;
}
@media screen and (max-width: 768px) {
  .c-column.c-column-02 > .c-column__inner.c-column__inner-W30p.c-column__inner-spW100p {
    width: 100%;
    margin-right: 0;
  }
}
.c-column.c-column-02 > .c-column__inner.c-column__inner-W80p {
  width: 79%;
}
@media screen and (max-width: 768px) {
  .c-column.c-column-02 > .c-column__inner.c-column__inner-W80p.c-column__inner-spW100p {
    width: 100%;
    margin-right: 0;
  }
}
.c-column.c-column-02 > .c-column__inner.c-column__inner-W20p {
  width: 19%;
}
@media screen and (max-width: 768px) {
  .c-column.c-column-02 > .c-column__inner.c-column__inner-W20p.c-column__inner-spW100p {
    width: 100%;
    margin-right: 0;
  }
}
.c-column.c-column-02 > .c-column__inner.c-column__inner-WAuto {
  width: auto !important;
}
@media screen and (max-width: 768px) {
  .c-column.c-column-02 > .c-column__inner.c-column__inner-WAuto.c-column__inner-spW100p {
    width: 100% !important;
    max-width: 100%;
    margin-right: 0;
  }
}
@media screen and (max-width: 1024px) {
  .c-column.c-column-02 > .c-column__inner .c-button {
    min-width: 320px;
  }
}
@media screen and (max-width: 768px) {
  .c-column.c-column-02 > .c-column__inner .c-button {
    min-width: 100%;
  }
}
.c-column.c-column-03 > .c-column__inner {
  width: calc((100% - 4%) / 3);
  margin-right: 2%;
}
.c-column.c-column-03 > .c-column__inner:nth-child(n+4) {
  margin-top: 10px;
}
.c-column.c-column-03 > .c-column__inner:nth-child(3n) {
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  .c-column.c-column-03 > .c-column__inner.c-column__inner-spW50p {
    width: 49%;
  }
}
@media screen and (max-width: 768px) {
  .c-column.c-column-03 > .c-column__inner.c-column__inner-spW100p {
    display: block;
    width: 100%;
    margin-right: 0;
  }
}
@media screen and (max-width: 1024px) {
  .c-column.c-column-03 > .c-column__inner .c-button {
    min-width: 100%;
  }
}
.c-column.c-column-04 > .c-column__inner {
  width: calc((100% - 6%) / 4);
}
.c-column.c-column-04 > .c-column__inner:nth-child(n+5) {
  margin-top: 10px;
}
.c-column.c-column-04 > .c-column__inner:nth-child(4n) {
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  .c-column.c-column-04 > .c-column__inner {
    width: 49%;
  }
  .c-column.c-column-04 > .c-column__inner:nth-child(n+3) {
    margin-top: 10px;
  }
  .c-column.c-column-04 > .c-column__inner:nth-child(4n) {
    margin-right: 2%;
  }
  .c-column.c-column-04 > .c-column__inner:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .c-column.c-column-04 > .c-column__inner.c-column__inner-spW100p {
    display: block;
    width: 100%;
    margin-right: 0;
  }
}
@media screen and (max-width: 1024px) {
  .c-column.c-column-04 > .c-column__inner .c-button {
    min-width: 100%;
  }
}
.c-column.c-column-05 > .c-column__inner {
  width: calc((100% - 8%) / 5);
}
.c-column.c-column-05 > .c-column__inner:nth-child(n+6) {
  margin-top: 10px;
}
.c-column.c-column-05 > .c-column__inner:nth-child(5n) {
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  .c-column.c-column-05 > .c-column__inner {
    width: calc((100% - 4%) / 3);
  }
  .c-column.c-column-05 > .c-column__inner:nth-child(n+4) {
    margin-top: 10px;
  }
  .c-column.c-column-05 > .c-column__inner:nth-child(5n) {
    margin-right: 2%;
  }
  .c-column.c-column-05 > .c-column__inner:nth-child(3n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .c-column.c-column-05 > .c-column__inner.c-column__inner-spW100p {
    display: block;
    width: 100%;
    margin-right: 0;
  }
}
@media screen and (max-width: 1024px) {
  .c-column.c-column-05 > .c-column__inner .c-button {
    min-width: 100%;
  }
}

/* ---------------------------------------------------
margin/padding
---------------------------------------------------- */
.u-m0 {
  margin: 0 !important;
}

.u-m5 {
  margin: 5px !important;
}

.u-m10 {
  margin: 10px !important;
}

.u-m15 {
  margin: 15px !important;
}

.u-m20 {
  margin: 20px !important;
}

.u-m30 {
  margin: 30px !important;
}

.u-m40 {
  margin: 40px !important;
}

.u-m50 {
  margin: 50px !important;
}

.u-mt0 {
  margin-top: 0 !important;
}

.u-mt5 {
  margin-top: 5px !important;
}

.u-mt10 {
  margin-top: 10px !important;
}

.u-mt15 {
  margin-top: 15px !important;
}

.u-mt20 {
  margin-top: 20px !important;
}

.u-mt30 {
  margin-top: 30px !important;
}

.u-mt40 {
  margin-top: 40px !important;
}

.u-mt50 {
  margin-top: 50px !important;
}

.u-ml0 {
  margin-left: 0 !important;
}

.u-ml5 {
  margin-left: 5px !important;
}

.u-ml10 {
  margin-left: 10px !important;
}

.u-ml15 {
  margin-left: 15px !important;
}

.u-ml20 {
  margin-left: 20px !important;
}

.u-ml30 {
  margin-left: 30px !important;
}

.u-ml40 {
  margin-left: 40px !important;
}

.u-ml50 {
  margin-left: 50px !important;
}

.u-mr0 {
  margin-right: 0 !important;
}

.u-mr5 {
  margin-right: 5px !important;
}

.u-mr10 {
  margin-right: 10px !important;
}

.u-mr15 {
  margin-right: 15px !important;
}

.u-mr20 {
  margin-right: 20px !important;
}

.u-mr30 {
  margin-right: 30px !important;
}

.u-mr40 {
  margin-right: 40px !important;
}

.u-mr50 {
  margin-right: 50px !important;
}

.u-mb0 {
  margin-bottom: 0 !important;
}

.u-mb5 {
  margin-bottom: 5px !important;
}

.u-mb10 {
  margin-bottom: 10px !important;
}

.u-mb15 {
  margin-bottom: 15px !important;
}

.u-mb20 {
  margin-bottom: 20px !important;
}

.u-mb30 {
  margin-bottom: 30px !important;
}

.u-mb40 {
  margin-bottom: 40px !important;
}

.u-mb50 {
  margin-bottom: 50px !important;
}

.u-p0 {
  padding: 0 !important;
}

.u-p5 {
  padding: 5px !important;
}

.u-p10 {
  padding: 10px !important;
}

.u-p15 {
  padding: 15px !important;
}

.u-p20 {
  padding: 20px !important;
}

.u-p30 {
  padding: 30px !important;
}

.u-p40 {
  padding: 40px !important;
}

.u-p50 {
  padding: 50px !important;
}

.u-pt0 {
  padding-top: 0 !important;
}

.u-pt5 {
  padding-top: 5px !important;
}

.u-pt10 {
  padding-top: 10px !important;
}

.u-pt15 {
  padding-top: 15px !important;
}

.u-pt20 {
  padding-top: 20px !important;
}

.u-pt30 {
  padding-top: 30px !important;
}

.u-pt40 {
  padding-top: 40px !important;
}

.u-pt50 {
  padding-top: 50px !important;
}

.u-pl0 {
  padding-left: 0 !important;
}

.u-pl5 {
  padding-left: 5px !important;
}

.u-pl10 {
  padding-left: 10px !important;
}

.u-pl15 {
  padding-left: 15px !important;
}

.u-pl20 {
  padding-left: 20px !important;
}

.u-pl30 {
  padding-left: 30px !important;
}

.u-pl40 {
  padding-left: 40px !important;
}

.u-pl50 {
  padding-left: 50px !important;
}

.u-pr0 {
  padding-right: 0 !important;
}

.u-pr5 {
  padding-right: 5px !important;
}

.u-pr10 {
  padding-right: 10px !important;
}

.u-pr15 {
  padding-right: 15px !important;
}

.u-pr20 {
  padding-right: 20px !important;
}

.u-pr30 {
  padding-right: 30px !important;
}

.u-pr40 {
  padding-right: 40px !important;
}

.u-pr50 {
  padding-right: 50px !important;
}

.u-pb0 {
  padding-bottom: 0 !important;
}

.u-pb5 {
  padding-bottom: 5px !important;
}

.u-pb10 {
  padding-bottom: 10px !important;
}

.u-pb15 {
  padding-bottom: 15px !important;
}

.u-pb20 {
  padding-bottom: 20px !important;
}

.u-pb30 {
  padding-bottom: 30px !important;
}

.u-pb40 {
  padding-bottom: 40px !important;
}

.u-pb50 {
  padding-bottom: 50px !important;
}

/* ---------------------------------------------------
width
---------------------------------------------------- */
.u-w05p {
  width: 5% !important;
}

.u-w10p {
  width: 10% !important;
}

.u-w15p {
  width: 15% !important;
}

.u-w20p {
  width: 20% !important;
}

.u-w25p {
  width: 25% !important;
}

.u-w30p {
  width: 30% !important;
}

.u-w35p {
  width: 35% !important;
}

.u-w40p {
  width: 40% !important;
}

.u-w45p {
  width: 45% !important;
}

.u-w50p {
  width: 50% !important;
}

.u-w55p {
  width: 55% !important;
}

.u-w60p {
  width: 60% !important;
}

.u-w65p {
  width: 65% !important;
}

.u-w70p {
  width: 70% !important;
}

.u-w75p {
  width: 75% !important;
}

.u-w80p {
  width: 80% !important;
}

.u-w85p {
  width: 85% !important;
}

.u-w90p {
  width: 90% !important;
}

.u-w95p {
  width: 95% !important;
}

.u-w100p {
  width: 100% !important;
}

/* ---------------------------------------------------
button
---------------------------------------------------- */
.c-button-mticket {
  width: 50%;
  max-width: 500px;
  margin: 0 auto 20px;
}
@media screen and (max-width: 768px) {
  .c-button-mticket {
    width: 100%;
    max-width: 100%;
  }
}
.c-button-mticket > a.is-inactive {
  opacity: 0.3;
  pointer-events: none;
}
