@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
/* -----------------------------------------------------
	flexLayout
----------------------------------------------------- */
.flexColumn01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.flexColumn01.bC {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.flexColumn01.between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.flexColumn01.aM {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
.flexColumn01.aEnd {
  -webkit-box-align: end;
  -ms-flex-align: end;
  -webkit-align-items: flex-end;
  align-items: flex-end;
}

/* -----------------------------------------------------
	columnLayout
----------------------------------------------------- */
.columnLayout {
  clear: both;
}
.columnLayout .colLeft {
  float: left;
}
.columnLayout .colRight {
  float: right;
}

.columnFlex {
  display: flex;
  flex-wrap: wrap;
}
.columnFlex.between {
  justify-content: space-between;
}

/* -----------------------------------------------------
	Clearfix
----------------------------------------------------- */
.columnLayout:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}

.columnLayout {
  *display: inline-table;
  *zoom: 1;
}

#contentsWrap {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .anchorWrap {
    margin-top: -44px;
    padding-top: 44px;
  }
}

.FX8_Layout {
  background: #000;
  min-width: 960px;
}
@media screen and (max-width: 767px) {
  .FX8_Layout {
    min-width: 100%;
  }
}
.FX8_Layout * {
  box-sizing: border-box;
}
.FX8_Layout p {
  margin-bottom: 0;
}
.FX8_Layout .introSection {
  padding: 19px 0 29px;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .introSection {
    padding: 1.25vw 0 2.5vw;
  }
}
.FX8_Layout .introSection > .inner01 {
  width: 960px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .introSection > .inner01 {
    width: 100%;
  }
}
.FX8_Layout .introSection > .inner01 .ti01 {
  text-align: center;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-feature-settings: "palt";
  font-size: 36px;
  margin-bottom: 13px;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .introSection > .inner01 .ti01 {
    font-size: 4.875vw;
    line-height: 1.3;
    margin-bottom: 10px;
  }
}
.FX8_Layout .introSection > .inner01 .tx01 {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-feature-settings: "palt";
  font-size: 12px;
  padding-left: 1em;
  text-indent: -1em;
  margin: 0.75em 5em 4em;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .introSection > .inner01 .tx01 {
    font-size: 8.5px;
    margin: 0.75em 1em 3.4em;
  }
}
@media screen and (max-width: 767px) {
  .FX8_Layout .introSection > .inner01 .btn01 {
    width: 95vw;
    margin: 0 auto;
  }
}
.FX8_Layout .section01 {
  padding: 35px 0 45px;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 {
    padding: 35px 0 32px;
  }
}
.FX8_Layout .section01 > .inner01 {
  width: 869px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 > .inner01 {
    width: 95vw;
  }
}
.FX8_Layout .section01 > .inner01 .ti01 {
  width: 573px;
  margin-bottom: 26px;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 > .inner01 .ti01 {
    width: 85.5vw;
    margin-bottom: 4.5vw;
  }
}
.FX8_Layout .section01 > .inner01 .tx01 {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-feature-settings: "palt";
  font-size: 18.2px;
  line-height: 1.4351648352;
}
.FX8_Layout .section01 > .inner01 .tx01 + .tx01 {
  margin-top: 0.75em;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 > .inner01 .tx01 + .tx01 {
    margin-top: 1em;
  }
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 > .inner01 .tx01 {
    font-size: 13px;
    line-height: 1.85;
  }
}
.FX8_Layout .section01 > .inner01 .button01 {
  width: 720px;
  margin: 47px auto 0;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 > .inner01 .button01 {
    width: 100%;
    margin: 27px auto 0;
  }
}
.FX8_Layout .section01 .gallerySection {
  margin-top: 50px;
  margin-bottom: 46px;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 .gallerySection {
    margin-top: 34px;
    margin-bottom: 19px;
  }
}
.FX8_Layout .section01 .gallerySection > .inner01 {
  max-width: 960px;
  margin: 0 auto;
  text-align: center;
  background: #222;
  padding: 15px 15px 18px;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 .gallerySection > .inner01 {
    max-width: 100%;
    padding: 15px 10px 9px;
  }
}
.FX8_Layout .section01 .gallerySection .gallery01 {
  width: 930px;
  margin: 0 auto 7px;
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 .gallerySection .gallery01 {
    width: 100%;
    gap: 10px 2.6315789474%;
    margin-bottom: 0;
  }
}
.FX8_Layout .section01 .gallerySection .gallery01 li {
  width: 24.2741935484%;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 .gallerySection .gallery01 li {
    width: 48.6842105263%;
  }
}
.FX8_Layout .section01 .gallerySection .gallery01 li:nth-child(1), .FX8_Layout .section01 .gallerySection .gallery01 li:nth-child(2) {
  width: 49.5161290323%;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 .gallerySection .gallery01 li:nth-child(1), .FX8_Layout .section01 .gallerySection .gallery01 li:nth-child(2) {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .FX8_Layout .section01 .gallerySection .gallery01 li a:hover img {
    opacity: 0.75;
  }
}
.FX8_Layout .section01 .gallerySection .tx01 {
  text-align: right;
  color: #aaa;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-feature-settings: "palt";
  font-size: 13px;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 .gallerySection .tx01 {
    font-size: 8.5px;
  }
}
.FX8_Layout .section01 > .inner02 {
  width: 742px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 > .inner02 {
    width: 100%;
    padding: 0 10px;
  }
}
.FX8_Layout .section01 > .inner02 .tx02 {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-feature-settings: "palt";
  font-size: 17px;
  margin-right: -1.5em;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .section01 > .inner02 .tx02 {
    font-size: 12px;
    line-height: 1.85;
    margin-right: 0;
  }
}
.FX8_Layout .section01 > .inner02 .tx02 + .tx02 {
  margin-top: 1.5em;
}
.FX8_Layout .lineupSection {
  padding: 10px 0 45px;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .lineupSection {
    padding: 10px 15px 45px;
  }
}
.FX8_Layout .lineupSection > .inner01 {
  width: 720px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .lineupSection > .inner01 {
    width: 100%;
  }
}
.FX8_Layout .lineupSection > .inner01 .ti01 {
  width: 720px;
  margin: 0 auto 30px;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .lineupSection > .inner01 .ti01 {
    width: 100%;
    padding-bottom: 9px;
    margin: 0 auto 19px;
  }
}
.FX8_Layout .lineupSection > .inner01 .ti01 img {
  width: 664px;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .lineupSection > .inner01 .ti01 img {
    width: 100%;
  }
}
.FX8_Layout .lineupSection > .inner01 .ti01::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  height: 2px;
  width: 100%;
  background: linear-gradient(to right, #ffff87 0%, #ffff8b 26%, #eebf00 46%, #e7c936 60%, #ffffb5 71%, #ffcb1a 81%, #e7be00 100%);
}
.FX8_Layout .lineupSection .lineupList01 {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 20px 2.7777777778%;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .lineupSection .lineupList01 {
    width: 100%;
    gap: 15px 0;
  }
}
.FX8_Layout .lineupSection .lineupList01 li {
  width: 48.6111111111%;
  position: relative;
  padding: 2px;
  background: linear-gradient(to right, #ffff87 0%, #ffff8b 26%, #eebf00 46%, #e7c936 60%, #ffffb5 71%, #ffcb1a 81%, #e7be00 100%);
}
.FX8_Layout .lineupSection .lineupList01 li > .inner01 {
  background: linear-gradient(to right, #141414 0%, #323232 50%, #141414 100%);
}
.FX8_Layout .lineupSection .lineupList01 li > .inner01 > .inner02 {
  padding: 0 14px 15px;
}
@media screen and (min-width: 768px) {
  .FX8_Layout .lineupSection .lineupList01 li:hover {
    cursor: pointer;
    background: linear-gradient(to right, #ffff93 0%, #ffff97 26%, #f0c51a 46%, #e9ce4a 60%, #ffffbc 71%, #ffd031 81%, #e9c51a 100%);
  }
  .FX8_Layout .lineupSection .lineupList01 li:hover > .inner01 {
    background: linear-gradient(to right, #2c2c2c 0%, #474747 50%, #2c2c2c 100%);
  }
  .FX8_Layout .lineupSection .lineupList01 li:hover > .inner01 img {
    opacity: 0.8;
  }
  .FX8_Layout .lineupSection .lineupList01 li:hover > .inner01 .btn01 a {
    background: linear-gradient(to right, #3b7dd1 0%, #3464c5 100%);
  }
}
@media screen and (max-width: 767px) {
  .FX8_Layout .lineupSection .lineupList01 li {
    width: 100%;
  }
}
.FX8_Layout .lineupSection .lineupList01 li .img01 {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .lineupSection .lineupList01 li .img01 {
    margin-bottom: 5px;
  }
}
.FX8_Layout .lineupSection .lineupList01 li .tx01 {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-feature-settings: "palt";
  font-size: 21px;
  line-height: 1.375;
  margin-bottom: 0.3em;
  word-break: break-word;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .lineupSection .lineupList01 li .tx01 {
    font-size: 5.25vw;
    margin-bottom: 0.25em;
  }
}
.FX8_Layout .lineupSection .lineupList01 li .tx02 {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-feature-settings: "palt";
  font-size: 15px;
  line-height: 1.4;
  margin-bottom: 1em;
  word-break: break-word;
}
@media screen and (max-width: 767px) {
  .FX8_Layout .lineupSection .lineupList01 li .tx02 {
    font-size: 3vw;
    line-height: 1.6;
    margin-bottom: 1.0em;
  }
}

.btn01 {
  display: table;
  text-align: center;
  position: relative;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .btn01 {
    width: 100%;
  }
}
.btn01.type02 {
  width: 720px;
}
@media screen and (max-width: 767px) {
  .btn01.type02 {
    width: 100%;
  }
}
.btn01.type02 a {
  padding: 0.95em;
}
@media screen and (max-width: 767px) {
  .btn01.type02 a {
    font-size: 15px;
  }
}
.btn01.type02 a::before {
  content: '';
  position: absolute;
  right: 32px;
  top: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #ffffff transparent transparent transparent;
  border-width: 12px 7px 0px 7px;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .btn01.type02 a::before {
    right: 22px;
    border-width: 9.6px 5.6px 0px 5.6px;
  }
}
.btn01.type02 a:hover {
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .btn01.type02 a:hover {
    background: linear-gradient(to right, #3b7dd1 0%, #3464c5 100%);
  }
}
.btn01 a {
  display: block;
  padding: 0.9em;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-feature-settings: "palt";
  font-size: 20px;
  line-height: 1.25;
  border-radius: 5px;
  background: linear-gradient(to right, #256ecc 0%, #1d53bf 100%);
  position: relative;
  cursor: pointer;
}
.btn01 a:hover {
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .btn01 a {
    font-size: 4.5vw;
    padding: 1em 1.5em;
  }
}
.btn01 a span {
  position: relative;
}
