@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@600;700&display=swap');

/** *********************** **/

/*
SB
B

font-family: "Shippori Mincho", serif;
  font-weight: 600;
  font-style: normal;

font-family: "Shippori Mincho", serif;
  font-weight: 700;
  font-style: normal;
*/

/** *********************** **/

.sp_view {
  display: none;
}

img {
  width: 100%;
  height: auto;
}

/** *********************** **/

.clearfix {
  display: block;
}

.clearfix:before ,
.clearfix:after {
  display: block;
  clear: both;
  content: " ";
}

/** *********************** **/

.loader {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 999;
  background-color: #fff;
}

.loader::after {
  width: 100px;
  height: 100px;
  border: 5px solid rgba(189, 148, 85, 1);
  border-top: 5px solid rgba(189, 148, 85, .2);
  border-right: 5px solid rgba(189, 148, 85, .2);
  border-radius: 50%;
  content: " ";
  -webkit-animation: loader .5s linear infinite;
          animation: loader .5s linear infinite;
}

@-webkit-keyframes loader {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes loader {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}

/** *********************** **/

html {
  overflow-x: hidden;
}

body {
  position: relative;
  background-color: #fff;
  color: #000;
  font-weight: 600;
  font-family: 'Shippori Mincho', serif;
  -webkit-font-smoothing: antialiased;
}

/** *********************** **/

header {
  width: 100%;
  height: 84.76vw;
  background-image: url("../pc_img/mv/img.jpg?r=20250605");
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
}

.head {
  position: relative;
  width: 100%;
  height: 84.76vw;
}

.head h1 {
  position: absolute;
  top: 58.846vw;
  right: 0;
  left: 0;
  width: 43.92vw;
  margin-inline: auto;
}

/*.head div {
  position: absolute;
  top: 73.615vw;
  right: 0;
  left: 0;
  width: 19.15vw;
  margin-inline: auto;
}*/

#to1stAnniv {
  position: sticky;
  top: min( 16.23931623931624vw, 190px ); /* 190/11.7 */
  left: 100%;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
       -o-transform: translateX(100%);
          transform: translateX(100%);
  width: min( 6.837606837606838vw, 80px ); /* 80/11.7 */
  aspect-ratio: 1 / 4;
}

header[style*="visibility"] #to1stAnniv {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
       -o-transform: translateX(0);
          transform: translateX(0);
}

#to1stAnniv a {
  display: block;
  -webkit-transition: all .3s ease;
       -o-transition: all .3s ease;
          transition: all .3s ease;
}

#to1stAnniv a:hover {
  opacity: .95;
}


/** *********************** **/

.cnt_01_wrap {
  position: relative;
  width: 100%;
  /*height: 587px;*/
  padding-block: min( 27.35042735042735vw, 320px )
                 min( 10.08547008547009vw, 118px ); /* 320/11.7 118/11.7 */
  background-image: url("../pc_img/cnt_01/bg.jpg?r=20250509");
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
}

.cnt_01 h2 {
  position: absolute;
  top: max( -1.709401709401709vw, -20px ); /* 20/11.7 */
  right: 0;
  left: 0;
  width: min( 22.22222222222222vw, 260px ); /* 260/11.7 */
  margin-inline: auto;
}

.cnt_01 p {
  font-weight: 700;
  font-size: 22px;
  line-height: 1.5454545; /* 34/22 */
  text-align: center;
  text-shadow: 0 0 4px rgba(255, 255, 255, .2),
               0 0 4px rgba(255, 255, 255, .2),
               0 0 4px rgba(255, 255, 255, .2);
}

.cnt_01 p + p {
  margin-top: 1.5625em; /* 25/16 */
  font-weight: 600;
  font-size: 16px; /* 16/22 */
  line-height: 1.75;
  text-shadow: 0 0 2px rgba(255, 255, 255, .2),
               0 0 2px rgba(255, 255, 255, .2),
               0 0 2px rgba(255, 255, 255, .2);
}

/** *********************** **/

.cnt_02_wrap {
  width: 100%;
  background-color: #000;
}

.cnt_02 {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  overflow: hidden;
}

.cnt_02::after {
  opacity: .4;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 2;
  background-color: rgba(0, 0, 0, 1);
  content: " ";
}

 .cnt_02 video {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.cnt_02_btn {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 30;
  width: min( 11.28205128205128vw, 132px ); /* 132/11.7 */
  aspect-ratio: 1 / 1;
  margin: auto;
  background-image: url("../pc_img/cnt_02/arrw.png?r=20250509");
  background-position: center center;
  background-size: 100%;
  background-repeat: no-repeat;
}

.cnt_02_btn a {
  display: block;
  padding-top: 100%;
}

/** *********************** **/

.cnt_03_wrap {
  width: 100%;
  background-image: url("../pc_img/cnt_03/bg.jpg?r=20250509");
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  background-color: #783b92;
}

.cnt_03 {
  width: 100%;
  padding-block: min( 6.837606837606838vw, 80px ); /* 80/11.7 */
  text-align: center;
}

.cnt_03 h3 {
  position: relative;
  width: min( 36.75213675213675vw, 430px ); /* 430/11.7 */
  margin-bottom: min( 2.051282051282051vw, 24px ); /* 24/11.7 */
  margin-inline: auto;
}

.cnt_03 h3::before {
  display: block;
  width: 100%;
  aspect-ratio: 430 / 101;
  margin-bottom: min( 1.452991452991453vw, 17px ); /* 17/11.7 */
  margin-inline: auto;
  background-image: url("../pc_img/cnt_03/txt_01.png?r=20250509");
  background-size: 100% auto;
  background-repeat: no-repeat;
  content: " ";
}

.cnt_03 h3 figure {
  width: 81.62790697674419%; /* 351/4.3 */
  margin-inline: auto;
}

.cnt_03 ul {
  display: -webkit-flex;
  display:    -moz-flex;
  display:     -ms-flex;
  display:      -o-flex;
  display:         flex;
  -webkit-flex-wrap: wrap;
     -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
       -o-flex-wrap: wrap;
          flex-wrap: wrap;
  justify-content: flex-start;
  -ms-align-items: flex-start;
      align-items: flex-start;
  gap: min( 1.452991452991453vw, 17px ) min( 2.564102564102564vw, 30px ); /* 17/11.7 30/11.7 */
  width: min( 79.48717948717949vw, 930px ); /* 930/11.7 */
  margin-inline: auto;
}

.cnt_03 li {
  flex-basis: calc( ( 100% - min( 2.564102564102564vw, 30px ) ) / 2 );
}

.cnt_03 li a ,
.cnt_03 li span {
  display: block;
  /*position: relative;
  width: 488px;
  height: 215px;*/
}

.cnt_03 li a {
  background-position: center center;
  background-size: 100% auto;
  background-repeat: no-repeat;
  transition: all .3s ease;
}

.cnt_03 li:nth-of-type(1) a {
  background-image: url("../pc_img/cnt_03/bnr_01_on.png?r=20250514");
}

.cnt_03 li:nth-of-type(2) a {
  background-image: url("../pc_img/cnt_03/bnr_02_on.png?r=20250514");
}

.cnt_03 li:nth-of-type(3) a {
  background-image: url("../pc_img/cnt_03/bnr_03_on.png?r=20250520");
}

.cnt_03 li:nth-of-type(4) a {
  background-image: url("../pc_img/cnt_03/bnr_04_on.png?r=20250520");
}

.cnt_03 li:nth-of-type(5) a {
  background-image: url("../pc_img/cnt_03/bnr_05_on.png?r=20250520");
}

.cnt_03 li:nth-of-type(6) a {
  background-image: url("../pc_img/cnt_03/bnr_06_on.png?r=20250602");
}

.cnt_03 li:nth-of-type(7) a {
  background-image: url("../pc_img/cnt_03/bnr_07_on.png?r=20250602");
}

.cnt_03 li:nth-of-type(8) a {
  background-image: url("../pc_img/cnt_03/bnr_08_on.png?r=20250605");
}

.cnt_03 li:nth-of-type(9) a {
  background-image: url("../pc_img/cnt_03/bnr_09_on.png?r=20250605");
}

.cnt_03 li:nth-of-type(10) a {
  background-image: url("../pc_img/cnt_03/bnr_10_on.png?r=20250605");
}

.cnt_03 li a img {
  opacity: 1;
  transition: all 1s ease;
}

.cnt_03 li a:hover img {
  opacity: 0;
}

#cboxOverlay {
  opacity: 1 !important;
  background: none !important;
  background-color: rgba(0, 0, 0, .85) !important;
}

#colorbox {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: auto !important;
  /*padding-top: 10.66vw;*/
}

#cboxWrapper {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;
  z-index: 9999;
  width: 100% !important;
  height: 100% !important;
  margin: auto !important;
  padding: 0 !important;
  overflow: hidden !important;
}

#cboxContent {
  display: block;
  opacity: 1 !important;
  float: none !important;
  width: 100% !important;
  height: 100% !important;
  margin-inline: auto !important;
  background-image: none !important;
  background-color: rgba(0, 0, 0, 0) !important;
}

#cboxLoadedContent {
  width: 100% !important;
  height: 100vh !important;
  overflow: auto !important;
}

#cboxTopLeft,
#cboxTopRight,
#cboxTopCenter,
#cboxBottomLeft,
#cboxBottomCenter,
#cboxBottomRight,
#cboxMiddleLeft,
#cboxMiddleRight {
  display: none;
  opacity: 1 !important;
  background-image: none !important;
  background-color: #262626 !important;
}

#cboxClose {
  position: absolute;
  top: min( 2.991452991452991vw, 35px ) !important; /* 35/11.7 */
  bottom: auto;
  width: min( 6.495726495726496vw, 76px ); /* 76/11.7 */
  height: min( 6.495726495726496vw, 76px );
  background: none;
  background-image: url("../pc_img/modal/close.png?r=20250509");
  background-position: center center;
  background-size: 100% auto;
  background-repeat: no-repeat;
  text-indent: -9999px;
}
@media screen and (min-width:1033px) {
  #cboxClose {
    right: calc( ( 100% - 962px ) / 2 );
  }
}
@media screen and (max-width:1032px) {
  #cboxClose {
    right: 35px;
  }
}

.modal_cnt {
  width: 100% !important;
  height: 100% !important;
  padding-block: min( 12.82051282051282vw, 150px )
                 min( 8.547008547008547vw, 100px ) !important; /* 150/11.7 100/11.7 */
  padding-inline: 35px !important;
  overflow: auto !important;
  color: #fff;
  font-size: clamp( 24px, 2.51937984496124vw, 26px ); /* 26/10.32 */
}

.modal_cnt h3 {
  max-width: 962px;
  background-image: url("../pc_img/modal/title_bg.png?r=20250509");
  background-position: bottom center;
  background-size: 100% auto;
  background-repeat: no-repeat;
  margin-bottom: 1.538461538461538em; /* 40/26 */
  margin-inline: auto;
  padding-bottom: 1em;
  /*padding-inline: 35px; */
  font-weight: 700;
  line-height: 1.4;
  text-align: start;
}

.modal_cnt figure {
  max-width: 500px;
  margin-bottom: 1.538461538461538em; /* 40/26 */
  margin-inline: auto;
}

.modal_cnt p {
  max-width: 880px;
  margin-bottom: 2.5em; /* 40/16 */
  margin-inline: auto;
  /*padding-inline: 10px;*/
  font-size: .6153846153846154em; /* 16/26 */
  line-height: 1.625;
}

.modal_cnt h4 {
  max-width: 880px;
  margin-bottom: 1.153846153846154em; /* 30/26 */
  margin-inline: auto;
  padding-bottom: 1.153846153846154em; /* 30/26 */
  /*padding-inline: 10px;*/
  border-bottom: 1px solid #bd9455;
  color: #bd9455;
  font-weight: 700;
  /*font-size: 27px;*/
  line-height: 1;
}

.modal_cnt dl {
  max-width: 880px;
  margin-inline: auto;
  /*padding-inline: 10px;*/
  font-size: .7692307692307692em; /* 20/26 */
}

.modal_cnt dt {
  margin-bottom: .4em; /* 8/20 */
  color: #bd9455;
  font-weight: 700;
  line-height: 1.5;
}

.modal_cnt dd {
  font-size: .8em; /* 16/20 */
  line-height: 1.625;
}

.modal_cnt dl + dl {
  margin-top: .7692307692307692em; /* 20/26 */
}

.modal_cnt ul {
  width: clamp( 320px, 41.27906976744186vw, 426px ); /* 426/10.32 */
  margin-top: 3.076923076923077em; /* 80/26 */
  margin-inline: auto;
}

.modal_cnt li + li {
  margin-top: .69230769230769230em; /* 18/26 */
}

.modal-open ,
html:has( body.modal-open ) {
  overflow-y: hidden;
}

/** *********************** **/

.cnt_04_wrap {
  width: 100%;
  padding-block: min( 6.666666666666667vw, 78px ); /* 78/11.7 */
  background-image: url("../pc_img/cnt_04/bg.jpg?r=20250509");
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
}

.cnt_04 {
  width: min( 41.11111111111111vw, 481px ); /* 481/11.7 */
  margin-inline: auto;
  text-align: center;
}

.cnt_04 a {
  display: block;
  position: relative;
  background-image: url("../pc_img/cnt_04/btn_on.png?r=20250509");
  background-size: 100% auto;
  background-repeat: no-repeat;
  transition: all .3s ease;
}

.cnt_04 a img {
  opacity: 1;
  transition: all 1s ease;
}
.cnt_04 a:hover img {
  opacity: 0;
}

/** *********************** **/

.cnt_05_wrap {
  width: 100%;
  padding-block: min( 1.367521367521368vw, 16px )
                 min( 9.829059829059829vw, 115px ); /* 16/11.7 115/11.7 */
  padding-inline: 20px;
  background-image: url("../pc_img/cnt_05/bg.jpg?r=20250509");
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
}

.cnt_05 {
  position: relative;
  width: 100%;
  text-align: center;
}

.cnt_05 h3 {
  width: min( 53.67521367521368vw, 628px ); /* 628/11.7 */
  margin-bottom: min( 2.393162393162393vw, 28px ); /* 28/11.7 */
  margin-inline: auto;
}

.cnt_05 p {
  font-size: 16px;
  line-height: 2; /* 32/16 */
}

.cnt_05 p:nth-of-type(3) ,
.cnt_05 p:nth-of-type(7) ,
.cnt_05 p:nth-of-type(8) {
  font-weight: 700;
}

.cnt_05 p:nth-of-type(3) ,
.cnt_05 p:nth-of-type(7) {
  color: #8d6322;
  font-size: 18px;
}

.cnt_05 p:nth-of-type(8) {
  font-size: 24px;
  line-height: 1.6; /* 38/24 */
}

.cnt_05 p + p {
  margin-top: min( 3.418803418803419vw, 40px ); /* 40/11.7 */
}

.cnt_05 p + p:nth-of-type(3) ,
.cnt_05 p + p:nth-of-type(7) {
  margin-top: min( 2.991452991452991vw, 35px ); /* 35/11.7 */
}

/** *********************** **/

.cnt_06_wrap {
  width: 100%;
  /*height: 670px;*/
  padding-block: min( 5.982905982905983vw, 70px )
                 min( 6.837606837606838vw, 80px ); /* 70/11.7 80/11.7 */
  background-image: url("../pc_img/cnt_06/bg.jpg?r=20250509");
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
}

.cnt_06 {
  width: min( 89.65811965811966vw, 1049px ); /* 1049/11.7 */
  /*height: 520px;*/
  aspect-ratio: 1049 / 520;
  margin-inline: auto;
  padding-block: min( 4.871794871794872vw, 57px )
                 min( 4.786324786324786vw, 56px ); /* 57/11.7 56/11.7 */
  background-image: url("../pc_img/cnt_06/cnt_bg.png?r=20250509");
  background-size: 100% auto;
  background-repeat: no-repeat;
  text-align: center;
}

.cnt_06 h3 {
  width: 63.58436606291706%; /* 667/10.49 */
  margin-bottom: min( 2.735042735042735vw, 32px ); /* 32/11.7 */
  margin-inline: auto;
}

.cnt_06 div {
  display: inline-block;
  width: 15.44327931363203%; /* 162/10.49 */
  margin-right: 3.336510962821735%; /* 35/10.49 */
  font-size: 0;
  vertical-align: top;
}

.cnt_06 ul {
  display: -webkit-inline-flex;
  display:    -moz-inline-flex;
  display:     -ms-inline-flex;
  display:      -o-inline-flex;
  display:         inline-flex;
  -webkit-flex-wrap: wrap;
     -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
       -o-flex-wrap: wrap;
          flex-wrap: wrap;
  justify-content: flex-start;
  -ms-align-items: flex-start;
      align-items: flex-start;
  gap: min( 1.025641025641026vw, 12px ) 2.870813397129187%; /* 12/11.7 12/4.18 */
  width: 39.84747378455672%; /* 418/10.49 */
  padding-block: min( .7692307692307692vw, 9px ); /* 9/11.7 */
}

.cnt_06 li:nth-of-type(1) {
  width: 43.30143540669856%; /* 181/4.18 */
}

.cnt_06 li:nth-of-type(2) {
  width: 53.82775119617225%; /* 225/4.18 */
}

.cnt_06 li:nth-of-type(3) {
  flex-basis: 100%;
}

.cnt_06 .official_link {
  position: relative;
  display: block;
  width: 45.85319351763584%; /* 481/10.49 */
  aspect-ratio: 481 / 88;
  margin-top: min( 2.564102564102564vw, 30px ); /* 30/11.7 */
  margin-inline: auto;
  background-image: url("../pc_img/cnt_06/btn_on.png?r=20250509");
  background-size: 100% auto;
  background-repeat: no-repeat;
  transition: all .3s ease;
}

.cnt_06 .official_link img {
  opacity: 1;
  transition: all 1s ease;
}

.cnt_06 .official_link:hover img {
  opacity: 0;
}

/** *********************** **/

.cnt_07_wrap {
  width: 100%;
  height: 690px;
  padding-block: 85px 70px;
  background-image: url("../pc_img/cnt_07_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
}

.cnt_07 {
  width: 100%;
  margin-inline: auto;
  text-align: center;
}

.cnt_07 figure {
  width: 690px;
  height: 424px;
  margin-bottom: 32px;
  margin-inline: auto;
}

.cnt_07 a {
  display: block;
  position: relative;
  width: 458px;
  height: 81px;
  margin-inline: auto;
  background-image: url("../pc_img/cnt_07_btn_on.png");
  background-size: 458px 81px;
  background-repeat: no-repeat;
  transition: all .3s ease;
}

.cnt_07 a img {
	opacity: 1;
	transition: all 1s ease;
}

.cnt_07 a:hover img {
	opacity: 0;
}

/** *********************** **/

.cnt_08_wrap {
  width: 100%;
  height: 690px;
  padding-block: 85px 55px;
  background-image: url("../pc_img/cnt_08_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
}

.cnt_08 {
  width: 100%;
  margin-inline: auto;
  text-align: center;
}

.cnt_08 figure {
  width: 690px;
  height: 424px;
  margin-bottom: 30px;
  margin-inline: auto;
}

.cnt_08 a {
  display: block;
  position: relative;
  width: 485px;
  height: 93px;
  margin-inline: auto;
  background-image: url("../pc_img/cnt_08_btn_on.png");
  background-size: 485px 93px;
  background-repeat: no-repeat;
  transition: all 0.3s ease;
}

.cnt_08 a img {
  opacity: 1;
  transition: all 1s ease;
}

.cnt_08 a:hover img {
  opacity: 0;
}

/** *********************** **/

.cnt_09_wrap {
  width: 100%;
  padding-block: 15px 90px;
  background-image: url("../pc_img/cnt_09_bg.jpg");
  background-position: top center;
  background-size: cover;
  background-repeat: no-repeat;
}

.cnt_09 {
  position: relative;
  width: 100%;
  margin-inline: auto;
  text-align: center;
}

.cnt_09 h3 {
  width: 554px;
  margin-inline: auto;
}

.cnt_09 p {
  font-weight: 700;
  font-size: 19px;
  line-height: 35px;
}

.cnt_09 p:nth-of-type(3) ,
.cnt_09 p:nth-of-type(4) ,
.cnt_09 p:nth-of-type(5) ,
.cnt_09 p:nth-of-type(7) {
  font-weight: 400;
  font-size: 17px;
  line-height: 33px;
}

.cnt_09 p:nth-of-type(1) ,
.cnt_09 p:nth-of-type(2) ,
.cnt_09 p:nth-of-type(10) {
  color: #282d44;
}

.cnt_09 p:nth-of-type(6) ,
.cnt_09 p:nth-of-type(8) ,
.cnt_09 p:nth-of-type(9) {
  color: #f05187;
}

.cnt_09 p:nth-of-type(1) {
  margin-top: -35px;
}

.cnt_09 p:nth-of-type(10) {
  font-size: 21px;
  line-height: 40px;
}

.cnt_09 p + p {
  margin-top: 35px;
}

.cnt_09 p + p:nth-of-type(2) {
  margin-top: 40px;
}

.cnt_09 p + p:nth-of-type(3) {
  margin-top: 50px;
}

/** *********************** **/

.cnt_10_wrap {
  width: 100%;
  height: 669px;
  padding-top: 75px;
  background-image: url("../pc_img/cnt_10_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
}

.cnt_10 {
  width: 1054px;
  height: 520px;
  margin-inline: auto;
  padding-top: 54px;
  background-image: url("../pc_img/cnt_10_cnt_bg.png");
  background-size: 1054px auto;
  background-repeat: no-repeat;
  text-align: center;
}

.cnt_10 h3 {
  width: 627px;
  margin-bottom: 32px;
  margin-inline: auto;
}

.cnt_10 div {
  display: inline-block;
  width: 162px;
  margin-right: 35px;
  margin-bottom: 30px;
  vertical-align: top;
}

.cnt_10 ul {
  display: inline-block;
  width: 418px;
  padding-top: 10px;
  font-size: 0;
  vertical-align: top;
}

.cnt_10 li {
  display: inline-block;
  vertical-align: top;
}

.cnt_10 li:nth-of-type(1) {
  width: 181px;
  margin-right: 12px;
}

.cnt_10 li:nth-of-type(2) {
  width: 225px;
}

.cnt_10 li:nth-of-type(3) {
  width: 100%;
  margin-top: 12px;
}

.cnt_10 li:nth-of-type(3) span {
  font-weight: 400;
  font-size: 2.93vw;
}

.cnt_10 .official_link {
  display: block;
  position: relative;
  width: 487px;
  height: 91px;
  margin-inline: auto;
  background-image: url("../pc_img/cnt_10_btn_on.png");
  background-size: 487px 91px;
  background-repeat: no-repeat;
  transition: all .3s ease;
}

.cnt_10 .official_link img {
  opacity: 1;
  transition: all 1s ease;
}

.cnt_10 .official_link:hover img {
  opacity: 0;
}

/** *********************** **/

.cnt_11_wrap {
  width: 100%;
  padding-block: min( 5.982905982905983vw, 70px )
                 min( 7.264957264957265vw, 85px ); /* 70/11.7 85/11.7 */
  background-image: url("../pc_img/cnt_11/bg.jpg?r=20250509");
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
}

.cnt_11_wrap h3 {
  width: min( 25.64102564102564vw, 300px ); /* 300/11.7 */
  margin-bottom: min( 2.905982905982906vw, 34px ); /* 34/11.7 */
  margin-inline: auto;
}

.cnt_11 {
  width: min( 77.94871794871795vw, 912px ); /* 912/11.7 */
  /*height: 414px;*/
  aspect-ratio: 152 / 69;
  margin-inline: auto;
  padding-block: min( 4.358974358974359vw, 51px )
                 min( 3.418803418803419vw, 40px ); /* 51/11.7 40/11.7 */
  background-image: url("../pc_img/cnt_11/cnt_bg.png?r=20250509");
  background-size: 100% auto;
  background-repeat: no-repeat;
  text-align: center;
}

.cnt_11 h4 {
  width: 57.67543859649123%; /* 526/9.12 */
  margin-bottom: min( 2.136752136752137vw, 25px ); /* 25/11.7 */
  margin-inline: auto;
}

.cnt_11 p {
  margin-bottom: 1.136363636363636em; /* 25/22 */
  font-size: min( 1.88034188034188vw, 22px ); /* 22/11.7 */
  line-height: 1.6; /* 36/22 */
  text-align: center;
}

.cnt_11 a {
  display: block;
  position: relative;
  width: 46.71052631578947%; /* 426/9.12 */
  /*height: 88px;*/
  aspect-ratio: 213 / 44;
  margin-inline: auto;
  background-image: url("../pc_img/cnt_11/btn_on.png?r=20250509");
  background-size: 100% auto;
  background-repeat: no-repeat;
  transition: all .3s ease;
}

.cnt_11 a img {
  opacity: 1;
  transition: all 1s ease;
}

.cnt_11 a:hover img {
  opacity: 0;
}

/** *********************** **/

.footer {
  width: 100%;
  background-color: #000;
  padding-block: min( 7.264957264957265vw, 85px ); /* 85/11.7 */
}

.footer .pre_registration {
  width: 1049px;
  margin-bottom: 50px;
  margin-inline: auto;
}

.ftr_sns {
  display: -webkit-flex;
  display:    -moz-flex;
  display:     -ms-flex;
  display:      -o-flex;
  display:         flex;
  justify-content: center;
  -ms-align-items: center;
      align-items: center;
  column-gap: min( 5.128205128205128vw, 60px ); /* 60/11.7 */
  width: min( 89.05982905982906vw, 1042px ); /* 1042/11.7 */
  margin-inline: auto;
  padding-block: min( 4.273504273504274vw, 50px ); /* 50/11.7 */
  background-image: url("../pc_img/common/sns/bg.png?r=20250509");
  background-position: center top;
  background-size: 100% auto;
  background-repeat: no-repeat;
}

.ftr_sns li a {
  display: block;
  background-size: 100% auto;
  background-repeat: no-repeat;
  text-indent: -9876px;
  white-space: nowrap;
}

.ftr_sns li:nth-of-type(1) a {
  width: min( 5.384615384615385vw, 63px ); /* 63/11.7 */
  aspect-ratio: 21 / 17;
  background-image: url("../pc_img/common/sns/x.png?r=20250509");
}

.ftr_sns li:nth-of-type(2) a {
  width: min( 6.752136752136752vw, 79px ); /* 79/11.7 */
  aspect-ratio: 79 / 51;
  background-image: url("../pc_img/common/sns/youtube.png?r=20250509");
}

.ftr_menu {
  display: -webkit-flex;
  display:    -moz-flex;
  display:     -ms-flex;
  display:      -o-flex;
  display:         flex;
  -webkit-flex-wrap: wrap;
     -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
       -o-flex-wrap: wrap;
          flex-wrap: wrap;
  justify-content: flex-start;
  -ms-align-items: center;
      align-items: center;
  gap: min( 1.709401709401709vw, 20px ); /* 20/11.7 */
  width: min( 89.05982905982906vw, 1042px ); /* 1042/11.7 */
  margin-top: min( 4.273504273504274vw, 50px ); /* 50/11.7 */
  margin-inline: auto;
}

.ftr_menu li {
  flex-basis: calc( ( 100% - min( 1.709401709401709vw, 20px ) ) / 2 ); /* 20/11.7 */
  position: relative;
  /*height: 52px;*/
  height: clamp( 42px, 4.444444444444444vw, 52px ); /* 52/11.7 */
  border: 1px solid rgba(255, 255, 255, .3);
}

.ftr_menu li:nth-of-type(1) {
  flex-basis: 100%;
}

.ftr_menu li a {
  display: block;
  position: relative;
  min-height: 100%;
  background-position: center center;
  background-size: clamp( 117px, 12.47863247863248vw, 146px ) auto; /* 146/11.7 */
  background-repeat: no-repeat;
  text-indent: -9876px;
  white-space: nowrap;
  transition: all 1s ease;
}

.ftr_menu li a:hover {
  background-color: rgba(79, 79, 79, .3);
}

.ftr_menu li:nth-of-type(1) a:link,
.ftr_menu li:nth-of-type(1) a:visited,
.ftr_menu li:nth-of-type(1) a:active,
.ftr_menu li:nth-of-type(1) a:hover {
  background-image: url("../pc_img/common/ftr_menu/top.png?r=20250509");
}

.ftr_menu li:nth-of-type(2) a:link,
.ftr_menu li:nth-of-type(2) a:visited,
.ftr_menu li:nth-of-type(2) a:active,
.ftr_menu li:nth-of-type(2) a:hover {
  background-image: url("../pc_img/common/ftr_menu/news.png?r=20250509");
}

.ftr_menu li:nth-of-type(3) a:link,
.ftr_menu li:nth-of-type(3) a:visited,
.ftr_menu li:nth-of-type(3) a:active,
.ftr_menu li:nth-of-type(3) a:hover{
  background-image: url("../pc_img/common/ftr_menu/characters.png?r=20250509");
}

.ftr_menu li:nth-of-type(4) a:link,
.ftr_menu li:nth-of-type(4) a:visited,
.ftr_menu li:nth-of-type(4) a:active,
.ftr_menu li:nth-of-type(4) a:hover {
  background-image: url("../pc_img/common/ftr_menu/story.png?r=20250509");
}

.ftr_menu li:nth-of-type(5) a:link,
.ftr_menu li:nth-of-type(5) a:visited,
.ftr_menu li:nth-of-type(5) a:active,
.ftr_menu li:nth-of-type(5) a:hover {
  background-image: url("../pc_img/common/ftr_menu/movie.png?r=20250509");
}

.ftr_menu li:nth-of-type(6) a:link,
.ftr_menu li:nth-of-type(6) a:visited,
.ftr_menu li:nth-of-type(6) a:active,
.ftr_menu li:nth-of-type(6) a:hover {
  background-image: url("../pc_img/common/ftr_menu/system.png?r=20250509");
}

.ftr_menu li a::before ,
.ftr_menu li a::after {
  position: absolute;
  background-repeat: no-repeat;
  content: " ";
}

.ftr_menu li a::before {
  top: -2px;
  right: -2px;
  left: -2px;
  bottom: -2px;
  --x-gradient: linear-gradient(  90deg, #bd9455     0 min( 1.282051282051282vw, 15px ),
                                         transparent 0 calc( 100% - min( 1.282051282051282vw, 15px ) ),
                                         #bd9455     calc( 100% - min( 1.282051282051282vw, 15px ) ) 100% ); /* 15/11.7 */
  --y-gradient: linear-gradient( 180deg, #bd9455     0 min( 1.282051282051282vw, 15px ),
                                         transparent 0 calc( 100% - min( 1.282051282051282vw, 15px ) ),
                                         #bd9455     calc( 100% - min( 1.282051282051282vw, 15px ) ) 100% );
  background-image: var(--x-gradient),
                    var(--y-gradient),
                    var(--x-gradient),
                    var(--y-gradient);
  background-position: top,
                       right,
                       bottom,
                       left;
  background-size: 100% 2px,
                   2px 100%,
                   100% 2px,
                   2px 100%;
}

.ftr_menu li a::after {
  top: 50%;
  right: min( 1.709401709401709vw, 20px ); /* 20/11.7 */
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
       -o-transform: translateY(-50%);
          transform: translateY(-50%);
  width: clamp( 25px, 2.64957264957265vw, 31px ); /* 31/11.7 */
  aspect-ratio: 31 / 8;
  background-image: url("../pc_img/common/arrw.svg?r=20250509");
  background-size: 100% auto;
}

.ftr_bnr {
  width: 1042px;
  margin-bottom: 45px;
  margin-inline: auto;
}

.ftr_bnr li {
  display: inline-block;
  width: 335px;
  height: 123px;
  margin-right: 18px;
  vertical-align: top;
  transition: all 1s ease;
}

.ftr_bnr li:nth-of-type(3) {
  margin-right: 0;
}

.ftr_bnr li span {
  display: none;
}

.ftr_bnr li a {
	display: block;
  position: relative;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-size: 335px auto;
  background-repeat: no-repeat;
}

.ftr_bnr li:nth-of-type(1) a {
  background-image: url("../pc_img/common/link_01_on.png");
}

.ftr_bnr li:nth-of-type(2) a {
  background-image: url("../pc_img/common/link_02_on.png");
}

.ftr_bnr li:nth-of-type(3) a {
  background-image: url("../pc_img/common/link_03_on.png");
}

.ftr_bnr li a::after {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 10px 10px;
  border-color: transparent transparent #bd9455 transparent;
  content: " ";
}

.ftr_bnr li a img {
  opacity: 1;
  transition: all 1s ease;
}

.ftr_bnr li a:hover img {
  opacity: 0;
}

.footer small {
  display: block;
  margin-top: min( 3.418803418803419vw, 40px ); /* 40/11.7 */
  color: #fff;
  font-weight: 400;
  font-size: 13px;
  line-height: 1;
  text-align: center;
}


