@charset "utf-8";
#st-ns_ContentsWrapAll * {
  text-decoration: none !important;
}
.st-ns_ContentsWrapAll {
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  width: 100%;
  margin-top: -20px;
  font-size: 16px;
  color: #000;
  font-feature-settings: "palt";
  letter-spacing: 1.3px;
  line-height: 1.6;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  animation: fadeIn 1s ease 0s 1 normal;-webkit-animation: fadeIn 1s ease 0s 1 normal;
}
@keyframes fadeIn {0% {opacity: 0}100% {opacity: 1}}
@-webkit-keyframes fadeIn {0% {opacity: 0}100% {opacity: 1}
}
#wrapper {
	overflow: hidden !important;
	min-width: auto !important;
}
#mainContent {
  padding: 0 !important;
  margin-bottom: 0 !important;
}
.st-ns_ContentsWrapAll .st-ns_flex {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    justify-content: space-between;
}

.st-ns_ContentsWrapAll a {
  text-decoration: none;
  transition: 0.3s;
  display: block;
  color: #222;
}
.st-ns_ContentsWrapAll a img {
}
.st-ns_ContentsWrapAll a:hover img {
  opacity: 1;
}
.st-ns_ContentsWrapAll img {
  width: 100%;
  height: auto;
  display: block;
}
.st-ns_ContentsWrapAll a {
}
.st-ns_ContentsWrapAll a:before,
.st-ns_ContentsWrapAll a:after {
  position: absolute;
  content: "";
  display: block;
}
.st-ns_commonSize {
  max-width: 1160px;
  width: 100%;
  margin: 0 auto;
  padding: 0 80px;
  display: block;
  box-sizing: border-box;
}
.contents_wrap h1 {
  margin: 0;
  padding: 0;
  border: none;
}
.st-ns_ContentsWrapAll h2 {
  margin: 0;
  padding: 0;
  border-bottom: none;
  font-weight: 900;
  color: #fff;
}
.st-ns_ContentsWrapAll h3 {
  margin: 0;
  padding: 0;
  border-bottom: none;
  background: rgba(255, 255, 255, 0);
  line-height: 1.3;
  font-weight: 700;
  color: #fff;
}
.SP,
.SP a,
img.SP {
  display: none;
}
/*common_start*/
/*accordion_start*/
.invisible.st-ns_acoBt__txt,
.st-ns_acoBt__txt {
  display: none;
  padding-bottom: 20px;
}
.st-ns_acoBt_parent {
  position: relative;
  padding-bottom: 48px;
}
.st-ns_acoBt {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 60px;
  transition: 0.3s;
}
.on.st-ns_acoBt {
  bottom: 0;
  transition: 0.3s;
}
.st-ns_acoBt:before,
.st-ns_acoBt:after {
  position: absolute;
  display: block;
  content: "";
}
.st-ns_acoBt:before {
  width: 100%;
  height: 60px;
  bottom: 20px;
  left: 0;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1) 100%);
}
.st-ns_acoBt:after {
  width: 15px;
  height: 15px;
  bottom: 20px;
  left: 50%;
  border-top: 2px solid;
  border-right: 2px solid;
  transform: rotate(135deg) translate(0, 50%);
  transition: 0.3s;
  border-color: #bfbfbf;
}
.on.st-ns_acoBt:before {
  display: none;
}
.on.st-ns_acoBt:after {
  transform: rotate(-45deg) translate(0, -50%);
  transition: 0.3s;
  bottom: 25px;
}

h2.st-ns_commonTitleH2 {
  padding-top: 80px;
  text-align: center;
  font-size: 50px;
  margin-bottom: 40px;
  line-height: 1.3;

}
h2.st-ns_commonTitleH2 .txtIm {
  display: block;
  max-width: 300px;
  margin: 0 auto;
}
h3.st-ns_commonTitleH3 {
  font-size: 24px;
  text-align: center;
  margin: 0 auto 30px;
  width: 485px;
  padding-top: 60px;
}
.st-ns_areaH2 {
  padding-bottom: 120px;
}
.st-ns_areaH3 {
}
.st-ns_ContentsWrapAll {
}
.st-ns_areaMiddle {
}
/*hover_start*/
.st-ns_ContentsWrapAll a,
.st-ns_ContentsWrapAll a img,
.st-ns_ticket__bt .NS_general_7ticket {
  transition: 0.3s;
  opacity: 1;
}
.st-ns_ContentsWrapAll a:hover,
.st-ns_ticket__bt .NS_general_7ticket:hover {
  transform: translate(10px, 0px);
  transition: 0.3s;
}
.st-ns_ticket__bt .NS_general_7ticket a:hover {
  transform: translate(0px, 0px);
}
.st-ns_ContentsWrapAll .st-ns_anc a:hover {
  transform: translate(0px, 10px);
  transition: 0.3s;
}
/*hover_end*/
/*breadcrumb_start*/

.st-ns_breadcrumb {
  background: #fff;
  width: 100%;
  height: calc(1em + (8px * 2));
  border-bottom: 1px solid #e0e0e0;
  padding: 8px;
  box-sizing: border-box;
  line-height: 1.5;
  display: flex;
  white-space: nowrap;
}
ol.st-ns_breadcrumb li {
  position: relative;
  float: left;
  padding-left: 20px;
  font-size: 12px;
}
ol.st-ns_breadcrumb li:before {
  position: absolute;
  content: "";
  display: block;
  top: 38%;
  left: 0.2rem;
  width: 6px;
  height: 6px;
  border-right: solid 1px;
  border-top: solid 1px;
  transform: rotate(45deg) translate(0, -25%);
  color: #000;
}
ol.st-ns_breadcrumb li:first-child:before {
  display: none;
}
ol.st-ns_breadcrumb li:first-child {
  padding-left: 0;
  background: none;
}
ol.st-ns_breadcrumb li,
ol.st-ns_breadcrumb li a {
  color: #000;
}
ol.st-ns_breadcrumb li a:hover {
  transform: translate(0, 0);
}
ol.st-ns_breadcrumb li a {
  text-decoration: none;
}
/*breadcrumb_end*/
/*top_start*/
h1.st-ns_top__im {
  margin: 0;
  padding: 0;
  border: none;
  background: #bababa;
}
h1.st-ns_top__im .st-ns_commonSize {
}
h1.st-ns_top__im .txtIm {
}
/*top_end*/
/*kikan_start*/
.st-ns_kikan {
  background-image: linear-gradient(90deg, #d3000a, #a30008);
  border-bottom: 1px solid #fff;
  padding: 40px 0;
}
.st-ns_kikan img {
  margin: 0 auto;
  width: clamp(80%, 80%, 742px);
}
/*kikan_end*/

.st-ns_areaBottom {
  background: #fff;
  padding: 3px 0 3px;
  text-align: center;
  font-size: 14px;
}


/*contents_end*/
@media screen and (min-width: 641px) and (max-width: 1024px) {
  .SP,
  .SP a,
  img.SP {
    display: block;
  }
  #wrapper {
    min-width: 100%;
  }
  .st-ns_commonSize {
    width: calc(100% - 80px);
    padding: 0;
  }
  
}
@media screen and (max-width: 640px) {
  .st-ns_ContentsWrapAll {
    overflow: hidden;
    box-sizing: border-box;
    margin-top: -25px;
    -webkit-text-size-adjust: 100%;
    font-size: clamp(14px, 3.5vw, 16px);
  }
  .st-ns_ContentsWrapAll img {
    width: 100%;
    display: block;
  }
  .st-ns_commonSize {
    width: 94%;
    padding: 0;
    box-sizing: border-box;
  }
  /*SP_common_start*/
  h2.st-ns_commonTitleH2 {
    box-sizing: border-box;
    padding-top: 12vw;
    font-size: 7.5vw;
    margin-bottom: 5vw;
  }
  h2.st-ns_commonTitleH2 picture {
    max-width: initial;
    height: 8.5vw;
    width: auto;
  }
  h3.st-ns_commonTitleH3 {
    margin-bottom: 5vw;
    padding-top: 10vw;
    font-size: 6vw;
	width: 100%;
  }
  .st-ns_areaH2 {
    padding-bottom: 15vw;
  }
  .SP,
  .SP a,
  img.SP {
    display: block;
  }
  .PC,
  .PC a,
  img.PC {
    display: none;
  }
  /*SP_common_end*/
  /*SP_contents_start*/
  /*SP_breadcrumb_start*/
  .st-ns_breadcrumb {
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%;
    display: flex;
    padding-left: 2vw;
  }
  .st-ns_breadcrumb > * {
    float: initial;
    font-size: 2.8vw;
  }
  ol.st-ns_breadcrumb li:nth-of-type(n + 2) {
    padding-left: 15px;
    background-position: 1vw center;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
  }
  ol.st-ns_breadcrumb li:before {
    top: 50%;
    transform: rotate(45deg) translate(0, -50%);
    left: 0vw;
  }
  .st-ns_breadcrumb > * a {
  }
  /*SP_breadcrumb_end*/
  /*top_start*/
  h1.st-ns_top__im .st-ns_commonSize {
    width: 100%;
  }
  /*SP_top_end*/
  /*SP_kikan_start*/
  .st-ns_kikan {
    padding: 4.5vw 0;
  }
.st-ns_kikan img {
  margin: 0 auto;
  width: 90%;
}
  /*SP_kikan_end*/
  /*hover_start*/
  .st-ns_ContentsWrapAll a:hover,
  .st-ns_ticket__bt .NS_general_7ticket:hover {
    transform: translate(0px, 0px);
  }
  .st-ns_ContentsWrapAll .st-ns_anc a:hover {
    transform: translate(0px, 0px);
    transition: 0.3s;
  }
  /*hover_end*/
.st-ns_areaBottom {
    font-size: 12px;
}
  /*SP_contents_end*/
}
