html {
  background: #ffffff;
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, Osaka, "MS PGothic", arial, helvetica, sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  position: relative;
}
body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  margin: 0;
  width: 100%;
  position: relative;
  z-index: 1;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
.movie iframe,
.movie object,
.movie embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#mystery_tower {
  position: relative;
  z-index: 1;
  overflow: hidden;
  margin: 0 auto 0 auto;
  padding: 0 0 0 0;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #mystery_tower {
    padding: 0 0 0 0;
  }
} /*====================*/

/*-----------------------------------------------------------
	base setting
-----------------------------------------------------------*/
p {
  margin: 0 0 0 0;
}

a {
  text-decoration: underline;
  color: #000000;
  word-break: break-all;
}
a:hover {
  text-decoration: none;
}
a:focus {
  outline: none;
}

.pc {
  display: block !important;
}
.sp {
  display: none !important;
}

.fade {
  transition: opacity 0.3s cubic-bezier(0, 0.72, 0.62, 1);
}

.fade:hover {
  opacity: 0.8;
}
/*===================sp=*/
@media screen and (max-width: 860px) {
  .pc {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
  .fade:hover {
    opacity: 1;
  }
} /*====================*/

/*-----------------------------------------------------------
	text setting
-----------------------------------------------------------*/

h2 img,
h3 img,
h4 img,
.img img {
  pointer-events: none !important;
}

.flt {
  text-decoration: line-through;
}

.fcR {
  color: #e62a05;
}
.fcG {
  color: #a4a4a4;
}
.fcB {
  color: #abebef;
}
.fcY {
  color: #ffa282;
}

.note {
  color: #315b6d;
  font-size: 12px;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  .note {
    font-size: 2.4vw;
  }
} /*====================*/

/*-----------------------------------------------------------
	mv setting
-----------------------------------------------------------*/
#main {
  width: 100%;
  margin: 0 auto 0 auto;
  padding: 0 0 0 0;
  position: relative;
  z-index: 1;
}

#main .mainWrap {
  width: 100%;
  margin: 0 auto 0 auto;
  line-height: 0;
  z-index: 2;
  position: relative;
}

#main .bg p {
  padding-top: 86.7%;
  background: url(../img/mv_bg.png) no-repeat center bottom;
  background-size: 100% auto;
}
.inner #main .bg p {
  padding-top: 39.8%;
  background: url(../img/mv_bg.png) no-repeat center bottom;
  background-size: 100% auto;
}

#main .mv {
  width: 100%;
  height: 100%;
  margin: 0 auto 0 auto;
  position: absolute;
  top: 0;
  left: 0;
  line-height: 0;
  z-index: 3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-line-pack: justify;
  align-content: space-between;
}
#main .mv .mvtop {
  width: 52.8%;
  margin: 10% auto 0 auto;
  display: block;
  position: relative;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.inner #main .mv .mvtop {
  width: 52.8%;
  margin: 0 auto 0 auto;
}
#main .txt01 {
  width: 12.08%;
}
#main .txt02 {
  width: 20.08%;
  margin-top: 1.625%;
}

#main .mv .mvbtm {
  width: 100%;
  display: block;
  position: relative;
}

#main .tit {
  width: 46.76%;
  margin: 0 auto 0 auto;
  z-index: 2;
}
.inner #main .tit {
  width: 35.92%;
  margin: 0 auto 0 auto;
  z-index: 2;
}
#main .catchy {
  width: 61.53%;
  margin: 0.4% auto 2% auto;
  z-index: 2;
}

#main .logo {
  width: 8.9%;
  position: absolute;
  left: 3%;
  top: 30px;
}
#main .logo2 {
  width: 8.9%;
  position: absolute;
  right: 2%;
  top: 30px;
}

.event .eventwari {
  width: 100%;
  margin: auto 0;
  text-align: center;
  padding: 20px 0 0 0;
  background-color: #000000;
}
.event .eventwari img {
  max-width: 600px;
  width: 90%;
}
.event .eventwari p {
  font-weight: 14px;
  font-weight: bold;
  padding: 5px;
  color: white !important;
}
.event .eventwari a {
  color: white !important;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #main .mv .mainBox {
    width: 100%;
    display: block;
    position: relative;
  }
  #main .bg p {
    padding-top: 148%;
    background: url(../img/sp/mv_bg.png) no-repeat center bottom;
    background-size: 100% auto;
  }
  .inner #main .bg p {
    padding-top: 50%;
    background: url(../img/sp/mv_bg_in.png) no-repeat center bottom;
    background-size: 100% auto;
  }

  #main .mv {
    width: 100%;
    height: 100%;
    margin: 0 auto 0 auto;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 0;
    z-index: 3;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-line-pack: justify;
    align-content: space-between;
  }
  #main .mv .mvtop {
    width: 92%;
    margin: 17.5% auto 0 auto;
    display: block;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  #main .txt01 {
    width: 12.08%;
    margin-right: 1%;
  }
  #main .txt02 {
    width: 20.08%;
    margin-top: 1%;
  }

  #main .mv .mvbtm {
    width: 100%;
    display: block;
    position: relative;
  }

  #main .tit {
    width: 81.2%;
    margin: 0 auto 0 auto;
    z-index: 2;
  }
  .inner #main .tit {
    width: 60%;
    padding: 0 0 0 0;
    margin: 0 auto 0 auto;
    z-index: 2;
  }
  #main .catchy {
    width: 108%;
    margin: 0% 0 1% -4%;
    z-index: 2;
  }

  #main .logo {
    width: 15%;
    position: absolute;
    left: 3%;
    top: 10px;
  }
  #main .logo2 {
    width: 13%;
    position: absolute;
    right: 2%;
    top: 10px;
  }
} /*====================*/

/*-----------------------------------------------------------
	header setting
-----------------------------------------------------------*/
.head {
  background: #000000;
  height: auto;
}
#header {
  width: 100%;
  position: relative;
  margin: 0 0 0 0;
  top: 130px;
  left: 0;
  z-index: 9;
  display: none;
  position: fixed;
  z-index: 5;
}
#header.fixed {
  position: fixed;
  display: block;
}
.headerWrap {
  width: 100%;
  padding: 0 0 0 0;
  position: relative;
  z-index: 9;
}
#g_navi {
  margin: 0;
  width: 100%;
  height: auto;
  text-align: center;
  z-index: 9;
  padding: 0 0 0 0;
  top: 0;
  position: absolute;
}
#header.fix #g_navi {
  top: 0;
  position: fixed;
}

#g_menu .hdBox {
  width: 15%;
  padding: 0 0 0 0;
  overflow: hidden;
  position: fixed;
  z-index: 9;
  right: 3%;
  top: 0;
}
#g_navi .navi {
  width: 15%;
  padding: 0 0 0 0;
  overflow: hidden;
  position: fixed;
  z-index: 9;
  right: 3%;
  top: 0;
}
/*
		.f #g_navi .navi {
			display: none;
		}
*/
#g_navi #menuBtn {
  width: 100%;
  margin: 10px 0 0 0;
  float: right;
  line-height: 0;
}
#g_navi #menuClose {
  width: 100%;
  margin: 10px 0 0 0;
  float: right;
}

#g_navi .nav {
  width: 80%;
  margin: 5% auto 5% auto;
  font-size: 23px;
  color: #eeeeee;
  overflow: hidden;
}
#g_navi .nav .main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

#g_navi .nav li {
  width: 100%;
  margin: 0 0 5px 0;
  height: auto;
  border-left: none;
  line-height: 0;
  font-weight: 900;

  transition: opacity 0.3s cubic-bezier(0, 0.72, 0.62, 1);
}
#g_navi .nav li.off {
  opacity: 0.7;
}

#g_navi .nav li a {
  height: auto !important;
  display: block;
  line-height: 1;
}
#g_navi .nav li.txt {
  font-size: 6vw;
  padding: 10px 0 0 0;
  color: #e2007f;
}
#g_navi .nav li p {
  line-height: 1;
  padding: 3% 0 3% 0;
}

#g_menu {
  position: absolute;
  width: 100%;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  z-index: 1000;
  display: none;
  top: 0;
  bottom: 0;
}
#g_navi .navBox {
  background: rgba(255, 255, 255, 0.95);
  background-size: 20% auto;
  background-position: 5% 10px;
  width: 100%;
  margin: 0 auto 0 auto;
  overflow: hidden;
  padding: 0 0 200vw 0;
}
#g_navi .nav .sub ul {
  width: 90%;

  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;

  padding: 6% 3% 3.5% 3%;
  margin: 10px auto 30px auto;
  line-height: 0;
  bottom: 0;
  left: 0;
  background: url(../img/sp/nav_sub_bg_l.png) no-repeat center top;
  background-size: 100% 100%;
}

#g_navi .nav li:hover,
#g_navi .nav li.off:hover,
#g_navi .nav li.off,
#g_navi .nav li.navtit:hover {
  opacity: 1 !important;
  filter: alpha(opacity=100) !important;
  -ms-filter: "alpha(opacity=100)" !important;
  -moz-opacity: 1 !important;
  -khtml-opacity: 1 !important;
}

/*===================sp=*/
@media (min-width: 960px) {
  .head {
    position: relative;
    height: 130px;
  }
  .inner .head {
    background: none;
  }

  #header.fixed,
  #header.fixed.pre {
    position: fixed;
    top: 0;
    left: 0;
    margin-top: 0;
    transform: translateX(0%) translateY(0%);
  }

  #g_navi #menuBtn,
  #g_navi #menuClose,
  #g_navi .navi,
  #g_menu .hdBox {
    display: none;
  }

  #header {
    width: 100%;
    position: absolute;
    margin: 20px 0 20px 0;
    z-index: 9;
    display: block;
    top: 0;
    background: none;
    transition: transform 0.3s cubic-bezier(0, 0.72, 0.62, 1);
  }
  #header.pre {
    transform: translateX(0%) translateY(-200%);
  }
  .headerWrap {
    width: 100%;
    background: none;
    padding: 0 0 0 0;
    margin: 0 auto 0 auto;
    position: absolute;
    z-index: 9999;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    bottom: 0;
    margin: 0 auto 0 auto;
  }

  #g_navi {
    width: 68%;
    max-width: 800px;
    background: none;
    padding: 0 0 0 0;
    position: relative;
    top: 0;
  }

  #g_menu {
    padding: 0 0 0 0;
    width: 100%;
    background: none;
    position: relative;
    display: block !important;
    top: 0;
  }

  #g_navi .navBox {
    width: 100%;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    overflow: visible;
    border: none;
    background: none;
    position: relative;
  }
  #g_navi .nav {
    width: auto;
    border: none;
    margin: 0 0 0 0;
    overflow: visible;
  }

  #g_navi .nav .main,
  #g_navi .nav .share {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  #g_navi .nav .main {
    width: 100%;
    position: relative;
  }
  #g_navi .nav li {
    margin: 0 0 0 0;
  }
  #g_navi .nav li a {
    line-height: 0;
  }
  #g_navi .nav .share {
    display: none;
  }
  #g_navi .nav .share li {
    width: 30%;
    margin: 0 0 0 0;
  }

  #g_navi li:hover,
  #g_navi .nav li:hover {
    opacity: 0.5 !important;
    filter: alpha(opacity=50) !important;
    -ms-filter: "alpha(opacity=50)" !important;
    -moz-opacity: 0.5 !important;
    -khtml-opacity: 0.5 !important;
  }

  #g_navi li.nav_event:hover,
  #g_navi .nav li.nav_event:hover {
    opacity: 1 !important;
    filter: alpha(opacity=100) !important;
    -ms-filter: "alpha(opacity=100)" !important;
    -moz-opacity: 1 !important;
    -khtml-opacity: 1 !important;
  }

  #g_navi .nav .nav_ticket {
    width: 19.75%;
  }
  #g_navi .nav .nav_howto {
    width: 19.75%;
  }
  #g_navi .nav .nav_goods {
    width: 18.75%;
  }
  #g_navi .nav .nav_special {
    width: 19.75%;
  }
  #g_navi .nav .nav_faq {
    width: 19.75%;
  }
  #g_navi .share {
    display: none;
  }

  .fixed .headerWrap {
    bottom: auto;
    top: 0;
    margin-top: 0;
  }
  .fixed #g_navi .navBox {
    overflow: visible;
    padding: 10px 0 10px 0;
  }
  .fixed #g_navi .navBox:after {
    display: none;
  }
  .fixed #g_navi .nav {
    width: 80%;
    margin: 0 auto 0 auto;
    padding-bottom: 0;
  }
  .fixed #g_navi .nav:after {
    content: "";
    position: absolute;
    top: 0;
    left: -500%;
    width: 1000%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    z-index: -1;
  }
  .fixed #g_navi .sub {
    top: 80%;
    padding-top: 1%;
  }
  .fixed #g_navi .sub ul {
    width: 35%;
    padding: 25px 3% 15px 3%;
    line-height: 0;
    background: url(../img/nav_sub_bg.png) no-repeat center top;
    background-size: 100% 100%;
  }

  .fixed #g_navi .share {
    width: 13%;
    margin: 0 0 0 1%;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .fixed #g_navi .share li {
    width: 27%;
  }

  #g_navi .nav .nav_top {
    display: none;
  }
} /*====================*/

/*===================sp=*/
@media screen and (max-width: 860px) {
  #g_navi .nav .sub {
    display: block !important;
  }

  #g_navi .nav li.nav_top {
    width: 70%;
    margin: 0 auto 30px auto;
  }

  #g_navi .nav .nav_ticket img,
  #g_navi .nav .nav_howto img,
  #g_navi .nav .nav_special img,
  #g_navi .nav .nav_faq img,
  #g_navi .nav .nav_goods img {
    display: none;
  }
  #g_navi .nav .nav_ticket a,
  #g_navi .nav .nav_howto a,
  #g_navi .nav .nav_special a,
  #g_navi .nav .nav_faq a,
  #g_navi .nav .nav_goods a {
    width: 100%;
    background: red;
    padding-top: 46.6%;
  }

  #g_navi .nav .nav_ticket a {
    background: url(../img/sp/nav_ticket.svg) no-repeat center top;
    background-size: 100% auto;
  }
  #g_navi .nav .nav_howto a {
    background: url(../img/sp/nav_howto.svg) no-repeat center top;
    background-size: 100% auto;
  }
  #g_navi .nav .nav_special a {
    background: url(../img/sp/nav_special.svg) no-repeat center top;
    background-size: 100% auto;
  }
  #g_navi .nav .nav_faq a {
    background: url(../img/sp/nav_faq.svg) no-repeat center top;
    background-size: 100% auto;
  }
  #g_navi .nav .nav_goods a {
    background: url(../img/sp/nav_goods.svg) no-repeat center top;
    background-size: 100% auto;
  }

  #g_navi .nav .nav_ticket {
    width: 50%;
    margin: 0 auto 15px auto;
  }
  #g_navi .nav .nav_howto {
    width: 50%;
    margin: 0 auto 15px auto;
  }
  #g_navi .nav .nav_special {
    width: 50%;
    margin: 0 auto 15px auto;
  }
  #g_navi .nav .nav_faq {
    width: 50%;
    margin: 0 auto 15px auto;
  }
  #g_navi .nav .nav_goods {
    width: 50%;
    margin: 0 auto 15px auto;
  }

  /*
	.f {
		width: 96%;
		margin-right: 4%;
	}
	.f:after {
		content: "";
		width: 4%;
		display: block;
		background: #ffffff;
		position: absolute;
		right: -4%;
		top: 0;
		padding-top: 1000%;
		
	}
	.f #header {
		width: 96%;
	}
*/
} /*====================*/

/*-----------------------------------------------------------
	#content setting
-----------------------------------------------------------*/
#content {
  width: 100%;
  margin: 0 auto 0 auto;
  padding: 0 0 0 0;
  z-index: -1;
  position: relative;
  font-size: 16px;
  line-height: 1.8;
  color: #000000;
  z-index: 0;
}
.contentWrap {
  width: 100%;
  margin: 0 auto 0 auto;
  position: relative;
}
.contentBox {
  max-width: 800px;
  margin: 0 auto 0 auto;
  padding: 0 0 0 0;
  position: relative;
  z-index: 12;
}

.wpbg01 {
  width: 100%;
  position: relative;
  background: #000000;
  /*
			background: #000000 url(../img/bg01.svg) no-repeat center bottom;
			background-size: 100% auto;
*/
}
.wpbg01:after {
  content: "";
  width: 100%;
  padding-top: 6.4%;
  background: url(../img/bg01.svg) no-repeat center top;
  background-size: 100% auto;
  display: block;
  z-index: 2;
  position: relative;
}
.wpbg01:before {
  content: "";
  width: 100%;
  padding-top: 3%;
  background: #ffffff;
  display: block;
  z-index: 0;
  position: absolute;
  bottom: 0;
  left: 0;
}
.wpbg02 {
  background: #ffffff;
  background: #ffffff url(../img/bg02.png) no-repeat center top;
  background-size: 100% auto;
  position: relative;
}
.wpbg02:before {
  content: "";
  width: 100%;
  padding-top: 50%;
  background: rgb(255, 255, 255);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 80%, rgba(255, 255, 255, 1) 100%);
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}
.wpbg03 {
  max-width: 800px;
  margin: 0 auto 0 auto;
  padding: 0 0 0 0;
  position: relative;
  background: #8acae5 url(../img/bg03.png) no-repeat center top;
  background-size: 100% auto;
  overflow: hidden;
}
.wpbg03:after {
  content: "";
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  position: absolute;
  background: url(../img/bg03_b.png) no-repeat center bottom;
  background-size: 100% auto;
}
.wpbg04 {
  padding: 50px 0 0 0;
  background: yellow;
  background: #ffffff url(../img/bg04.png) no-repeat center bottom;
  background-size: 100% auto;
  position: relative;
}
.wpbg04:after {
  content: "";
  width: 100%;
  padding-top: 41%;
  background: blue;
  display: block;
  background: url(../img/bg04_b.svg) no-repeat center bottom;
  background-size: auto 95%;
}
.wpbg04:before {
  content: "";
  width: 100%;
  padding-top: 50%;
  background: rgb(255, 255, 255);
  background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.wpbg05 {
  width: 100%;
  max-width: 800px;
  margin: 0 auto 0 auto;

  background: url(../img/bg05.png) repeat;
}
.wpbg06 {
  margin: -5% auto 0 auto;
  padding: 0 0 0 0;
  padding: 8% 0 10% 0;
  /* 			padding: 100px 0 120px 0; */
  /*
			background: url(../img/bg06.svg) no-repeat center top;
			background-size: 145% auto;
*/
  position: relative;
}
.wpbg06:before {
  content: "";
  width: 157%;
  height: 100%;
  background: url(../img/bg06.svg) no-repeat center top;
  background-size: 100% auto;
  position: absolute;
  top: 0;
  left: -25%;
}
.wpbg06:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  background: #000000;
  top: 0;
  left: 0;
  z-index: -1;
}

#content h2 {
  width: 100%;
  margin: 0 auto 0 auto;
  text-align: center;
}
#content h2 img {
  width: 100%;
}

#content h3 {
  width: 100%;
  margin: 0 auto 0 auto;
  text-align: center;
}
#content h3 img {
  width: 100%;
}

.movie {
  margin: 0 auto 0 auto;
  position: relative;
  padding-bottom: 56.5%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.movie iframe,
.movie object,
.movie embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.navArea {
  display: none;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #content {
    padding: 0 0 0 0;
    font-size: 3.4vw;
  }

  .contentWrap {
    width: 100%;
    max-width: 960px;
    margin: 0 auto 0 auto;
    padding: 0 0 0 0;
    position: relative;
  }
  .contentBox {
    width: 100%;
    margin: 0 auto 0 auto;
    padding: 0 0 0 0;
  }

  .wpbg01 {
    margin-bottom: 3%;
  }
  .wpbg04:after {
    content: "";
    width: 100%;
    padding-top: 41%;
    background: blue;
    display: block;
    background: url(../img/bg04_b.svg) no-repeat center bottom;
    background-size: auto 95%;
  }
  .wpbg05 {
    width: 94%;
    max-width: 800px;
    margin: 0 auto 0 auto;
    background: url(../img/bg05.png) repeat;
    background-size: 15% auto;
  }

  #content h2 {
    width: 100%;
    margin: 0 auto 0 auto;
    text-align: center;
  }
  #content h2 img {
    width: 140%;
    margin: 0 0 0 -20%;
  }
} /*====================*/

/*-----------------------------------------------------------
	#invitation setting
-----------------------------------------------------------*/
#invitation {
  margin: 0 auto 0 auto;
  padding: 50px 0 30px 0;
  text-align: center;
}
#invitation .bnr {
  width: 82.5%;
  margin: 0 auto 0 auto;
  position: relative;
}
#invitation .bnr:before {
  content: "";
  position: absolute;
  left: -40px;
  top: -40px;
  width: 90px;
  height: 100%;
  background: url(../img/icon_profit.svg) no-repeat right top;
  background-size: 100% auto;
}
#invitation .bnr.icon_invitation:before {
  content: "";
  position: absolute;
  left: -60px;
  top: -40px;
  width: 120px;
  height: 100%;
  background: url(../img/bnr_invitation_icon.png) no-repeat right top;
  background-size: 100% auto;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #invitation {
    margin: 0 auto 0 auto;
    padding: 12% 0 30px 0;
    text-align: center;
    position: relative;
    z-index: 2;
  }
  #invitation .bnr {
    width: 80%;
    margin: 0 auto 0 auto;
    position: relative;
    line-height: 0;
  }
  #invitation .bnr a {
    background: #f59703;
    display: block;
    padding: 2% 0 2% 0;
  }
  #invitation .bnr:before {
    content: "";
    position: absolute;
    left: -10%;
    top: -50%;
    width: 18%;
    height: 100%;
    background: url(../img/icon_profit.svg) no-repeat right top;
    background-size: 100% auto;
    z-index: 2;
  }
  #invitation .bnr.icon_invitation a {
    background: #f59703;
    display: block;
    padding: 0 0 0 0;
  }
  #invitation .bnr.icon_invitation:before {
    content: "";
    position: absolute;
    left: -10%;
    top: -40%;
    width: 22%;
    height: 120%;
    background: url(../img/bnr_invitation_icon.png) no-repeat right top;
    background-size: 100% auto;
  }
} /*====================*/

/*-----------------------------------------------------------
	#news setting
-----------------------------------------------------------*/
#news {
  margin: 0 auto 0 auto;
}

#news .newsBox {
  width: 100%;
  margin: 0 auto 0 auto;
}
#news .info {
  width: 80%;
  margin: 20px auto 20px auto;
  padding: 20px;
  box-sizing: border-box;
  border: 3px solid #000000;
  font-size: 16px;
  line-height: 1.6;
}
	#news .info span {
		font-weight: bold;
	}
		#news .info span.note {
			font-weight: normal;
			color: #000000;
		}
#news .list {
  width: 80%;
  margin: 0 auto 0 auto;
  padding: 20px 0 20px 0;
  height: 7em;
  overflow-y: scroll;
}
#news .list li {
  width: auto;
  font-size: 20px;
  font-weight: 600;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
}
#news .list li .date {
  width: 35%;
  padding: 5px 0 5px 0;
}
#news .list li .txt {
  padding: 5px 0 5px 0;
  width: 75%;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #news {
    margin-top: 8%;
  }
  #news h3 {
    position: absolute;
    top: -5%;
    left: 0;
  }
  #news h3 img {
    width: 158%;
    margin-left: -29%;
  }
  #news .newsBox {
    margin: 0 auto 0 auto;
  }
  #news .list {
    width: 90%;
    margin: 0 auto 0 auto;
    padding: 5% 0 5% 0;
    height: 7em;
    overflow-y: scroll;
  }
  #news .list li {
    font-size: 3.4vw;
    margin-bottom: 7px;
    display: block;
  }
  #news .list li .date {
    width: 100%;
    padding: 0 0 0 0;
  }
  #news .list li .txt {
    width: 100%;
    padding: 0 0 0 0;
  }
  
#news .info {
  width: 90%;
  margin: 20px auto 20px auto;
  padding: 15px;
  font-size: 3.4vw;
}
	#news .info span {
		font-weight: bold;
	}
		#news .info span.note {
			font-weight: normal;
			color: #000000;
			font-size: 3vw
		}
} /*====================*/

/*-----------------------------------------------------------
	#countermeasure setting
-----------------------------------------------------------*/
#countermeasure {
  margin: 50px auto 0 auto;
}
.countermeasureBox {
  width: 82.5%;
  margin: 0 auto 0 auto;
  background: url(../img/bg05.png) repeat;
  padding: 20px 5% 30px 5%;
}
#countermeasure .tit {
  font-size: 20px;
  color: #c9151e;
  font-weight: 700;
}
#countermeasure .txt {
  margin: 10px auto 0 auto;
  font-size: 14px;
  color: #000000;
  font-weight: 500;
}
#countermeasure .adBox {
  margin: 0 0 0 0;
}
#countermeasure .adBtn {
  background: #ca6603;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  margin: 10px auto 0 auto;
  padding: 5px 0 5px 0;
}
#countermeasure .adopBox {
  padding: 10px 5% 30px 5%;
  background: #cc6600;
  text-align: left;
  font-size: 13px;
  font-weight: 500;
  color: #ffffff;
}
.adBtn:before,
.adBtn:after {
  display: none;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #countermeasure {
    margin: 5% auto 0 auto;
  }
  .countermeasureBox {
    width: 90%;
    margin: 0 auto 0 auto;
    background: url(../img/bg05.png) repeat;
    background-size: 15% auto;
    padding: 30px 5% 30px 5%;
  }
  #countermeasure .tit {
    font-size: 3.8vw;
    color: #c9151e;
    font-weight: 700;
  }
  #countermeasure .txt {
    margin: 10px auto 0 auto;
    font-size: 3.4vw;
    color: #000000;
    font-weight: 500;
  }
  #countermeasure .adBox {
    margin: 10px 0 0 0;
  }
  #countermeasure .adBtn {
    font-size: 3vw;
    margin: 15px auto 0 auto;
    padding: 10px 3% 10px 3%;
  }
  #countermeasure .adopBox {
    padding: 10px 5% 20px 5%;
    font-size: 3vw;
  }
} /*====================*/

/*-----------------------------------------------------------
	#photo setting
-----------------------------------------------------------*/
#photo {
  width: 100%;
  position: relative;
  z-index: 2;
  margin: 70px 0 50px 0;
  overflow: hidden;
  max-height: 160px;
}
#photo img {
  max-height: 160px;
  min-height: 160px;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #photo {
    width: 100%;
    position: relative;
    z-index: 2;
    margin: 30px 0 30px 0;
  }
  #photo img {
    max-height: 120px;
    min-height: 120px;
  }
} /*====================*/

/*-----------------------------------------------------------
	#highlight setting
-----------------------------------------------------------*/
#highlight {
  width: 100%;
  margin: 0 auto 0 auto;
  padding: 0 0 30px 0;
}
	#highlight .bnr {
		width: 70%;
		max-width: 500px;
		margin: 0 auto;
		line-height: 0;
	}

/*-----------------------------------------------------------
	#point setting
-----------------------------------------------------------*/
#point {
  width: 92.5%;
  margin: 0 auto 0 auto;
  padding: 60px 0 0 0;
}
#point .pointBox {
  /* 		width: 83%; */
  width: 70%;
  margin: 30px auto 0 auto;
  padding: 0 0 0 0;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
#point .pointBox li {
  /* 			width: 24%; */
  width: 30%;
  margin: 0 1.5% 20px 1.5%;
  text-align: center;
  position: relative;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-line-pack: start;
  align-content: flex-start;
}
#point .pointBox li .img {
  width: 95%;
  margin: 0 auto 0 auto;
  line-height: 0;
  position: relative;
}
#point .pointBox li .img .popbtn03 {
  position: absolute;
  left: 29%;
  top: 30%;
  width: 45%;
  padding-top: 30%;
}
#point .pointBox li .txt {
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  color: #ffffff;
  line-height: 1.4;
  width: 100%;
  margin: 10px auto 0 auto;
  text-shadow: 0 0 5px rgba(26, 92, 225, 0.8);
}
#point .pointBox li .txt span {
  font-size: 10px;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #point {
    width: 90%;
    margin: 0 auto 0 auto;
    padding: 40px 0 0 0;
  }

  #point .pointBox {
    /* 		width: 80%; */
    width: 100%;
    margin: 30px auto 0 auto;
    padding: 0 0 0 0;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  #point .pointBox li {
    width: 40%;
    margin-bottom: 15px;
  }
  #point .pointBox li .img {
    width: 70%;
    margin: 0 auto 0 auto;
    line-height: 0;
  }
  #point .pointBox li .txt {
    font-size: 3.2vw;
    width: 100%;
    margin: 10px auto 0 auto;
  }
  #point .pointBox li .txt span {
    font-size: 3vw;
  }
} /*====================*/

/*-----------------------------------------------------------
	#intro setting
-----------------------------------------------------------*/
#intro {
  width: 92.5%;
  margin: 25px auto 0 auto;
  text-align: center;
}

#intro .txt {
  line-height: 0;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #intro {
    width: 100%;
    margin: 30px auto 0 auto;
    text-align: center;
  }

  #intro .txt {
    width: 118%;
    margin-left: -9%;
    line-height: 0;
  }
} /*====================*/

/*-----------------------------------------------------------
	#ticket setting
-----------------------------------------------------------*/
#ticket {
  width: 92.5%;
  margin: 50px auto 0 auto;
  padding: 35px 0 0 0;
  border-top: 2px solid #ffffff;
}

#ticket #schedule .adWrap {
  width: 100%;
  margin: 30px auto 0 auto;
}
#ticket #schedule .adBox {
  position: relative;
}
#ticket #schedule .icon:before {
  content: "";
  position: absolute;
  right: -30px;
  top: -20px;
  width: 90px;
  height: 100%;
  background: url(../img/icon_add.png) no-repeat right top;
  background-size: 100% auto;
  z-index: 10;
}

#schedule .place {
  color: #000000;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 800;
  margin: 10px 0 0 0;
}
#schedule .date {
  color: #000000;
  font-size: 16px;
  font-weight: 600;
  margin: 0 0 8px 0;
}
#schedule .scheduleBox .date {
  font-size: 0.9vw;
  margin: 0 0 0 0;
}
#schedule .no_events {
  font-size: 16px;
}
#schedule .note {
  color: #000000;
  font-size: 12px;
  font-weight: 600;
  text-align: left;
}

#schedule .scheduledBox {
  width: 86%;
  margin: 0 auto 0 auto;
  padding: 0 0 30px 0;
  color: #000000;
}

#schedule .scheduledBox .mapBox {
}
#schedule .scheduledBox .maptxt {
  margin: 18px auto 0 auto;
  text-align: left;
  line-height: 1.3;
  font-size: 12px;
}
#schedule .scheduledBox .maptxt a {
  color: #000000;
}

#schedule .scheduledBox .tictit,
#schedule .scheduledBox .tictit {
  color: #000000;
  font-size: 18px;
  text-align: center;
  font-weight: 800;
}

#schedule .scheduledBox .tictit_n span.note {
line-height: 1.4;
display: block;
text-align: center;
margin-bottom: 10px;
}

.ticketbuyWrap,
.ticketbuyWrap2,
.ticketlistWrap,
.ticketsaleWrap,
.ticketbuyWrap3 {
  margin: 0 auto 20px auto;
  padding: 30px 0 20px 0;
  border-top: 2px solid #000000;
}
.ticketbuyWrap,
.ticketbuyWrap2,
.ticketbuyWrap3 {
  padding-bottom: 0;
  margin-bottom: 0;
}
.ticketnotice {
  width: 100%;
  margin: 0 auto 20px auto;
  border: 3px solid #c9151e;
}
.ticketnotice .txt {
  width: 94%;
  margin: 0 auto 0 auto;
  padding: 15px 0 15px 0;
  color: #c9151e;
  text-align: left;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
}
.ticketnotice .btn {
}
#ticket .bnr.early {
  width: 80%;
  margin: 60px auto 40px auto;
  position: relative;
}
#ticket .bnr.early:before {
  content: "";
  position: absolute;
  left: -40px;
  top: -40px;
  width: 80px;
  height: 100%;
  background: url(../img/icon_profit.svg) no-repeat right top;
  background-size: 100% auto;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #ticket .bnr.early {
    width: 90%;
    margin: 0 auto 40px auto;
    position: relative;
    line-height: 0;
  }
  #ticket .bnr.early a {
    background: #f59703;
    display: block;
    padding: 2% 0 2% 0;
  }
  #ticket .bnr.early:before {
    content: "";
    position: absolute;
    left: -8%;
    top: -23%;
    width: 16%;
    height: 100%;
    background: url(../img/icon_profit.svg) no-repeat right top;
    background-size: 100% auto;
    z-index: 2;
  }
#schedule .scheduledBox .tictit.tictit_n {
  line-height: 1.4;
  margin-bottom: 10px;
}
#schedule .scheduledBox .tictit_n span.note {
text-align: left;
margin-top: 10px;
}


} /*====================*/

#ticket .ticketsaleBox {
  font-size: 16px;
}
#ticket .ticketsaleBox .txtBox {
  margin: 20px auto 0 auto;
}
#ticket .ticketsaleBox .tit {
  font-weight: 700;
}
#ticket .ticketsaleBox .txt {
  font-weight: 600;
}
#ticket .ticketsaleBox .tit.c02 {
  color: #0671ff;
}
.ticketlistBox {
  position: relative;
  padding-top: 4%;
  margin-bottom: 7%;
}
.ticketlistBox .tit {
  position: absolute;
  left: -5%;
  top: -1%;
  width: 32%;
}
.ticketlistBox .btn {
  text-align: right;
  margin: 0 0 2% 0;
  color: #c9151e;
  font-weight: 800;
}
.ticketlistBox .btn p {
  display: inline-block;
  cursor: pointer;
  text-decoration: underline;
}
.ticketlistBox .btn a {
}
#ticket table {
  margin: 0 auto 20px auto;
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border-right: 3px solid #0671ff;
  border-bottom: 3px solid #0671ff;
}
#ticket table tbody {
}
#ticket table tr {
}
#ticket table th,
#ticket table td {
  text-align: center;
  vertical-align: middle;
  background: #ffd9d7;
  /* 	padding: 18px 0 18px 0; */
  padding: 0.5em 0 0.5em 0;
  font-size: 16px;
  line-height: 1.2;
  color: rgba(0, 99, 225, 0.9);
  border-top: 3px solid #0671ff;
  border-left: 3px solid #0671ff;
  font-weight: normal;
}
#ticket table th span,
#ticket table td span {
  font-size: 12px;
}
#ticket table .txt {
  width: 25%;
}
#ticket table th.cl,
#ticket table td.cl {
  background: #f6fa01;
  border: none;
}
#ticket table .w01 {
  width: 10%;
}
#ticket table .w02 {
  width: 14%;
}

#ticket table .c01 {
  background: #c3ddff;
  font-weight: 600;
}
#ticket table .c02 {
  background: #ffffff;
  font-weight: 600;
}
#ticket table .c03 {
  background: #ffc6be;
  color: #e00000;
  font-weight: 600;
  line-height: 1.4;
}
#ticket table .c04 {
  background: #ffe8e5;
  font-weight: 600;
}

#ticket table .l01 {
  border-left: 3px solid #0671ff;
}
#ticket table thead th,
#ticket .ticketBox li table .txt {
  color: rgba(0, 99, 225, 0.9);
  font-size: 16px;
}
#ticket table th.f02,
#ticket table td.f02 {
  color: rgba(0, 99, 225, 0.9);
  font-size: 16px;
  font-weight: 600;
  padding-top: 15px;
}

#ticket .tbtn {
margin: 20px auto;
}
	#ticket .tbtn a {
		display: block;
		text-decoration: none;
		background: #2e77df;
		color: #ffffff;
		font-weight: 800;
		border: solid 3px #2e77df ;
		padding: 8px 15px;
		font-size: 16px;
	}
.ticketinfoBox {
  border: 3px solid rgba(0, 99, 225, 0.9);
  background: #ffffff;
  box-sizing: border-box;
  padding: 20px 20px 15px 20px;
  margin-bottom: 30px;
}
	.ticketinfoBox .txt {
		text-align: left;
		margin-bottom: 10px;
		font-size: 14px;
		font-weight: 600;
		line-height: 1.6;
	}
	.ticketinfoBox .btn {
		display: block;
		text-align: left;
		  margin: 0 0 5px 0;
		  color: #c9151e;
		  font-weight: 800;
	}
	.ticketinfoBox .btn p {
	  display: block;
	  cursor: pointer;
	  text-decoration: underline;
	}
	.ticketinfoBox .btn a {
	}
	
.ticketnoteBox {
	
}
	#schedule .scheduledBox .ticketnoteBox .adnote {
		background: #c6cd0b;
		position: relative;
		font-size: 16px;
		padding: 10px 0 8px 0;
	}
		.ticketnoteBox .adnote:after {
			content: "";
			width: 10px;
			height:100%;
			right: 20px;
			top: 0;
			position: absolute;
			display: block;
			background: url(../img/arrow_01_b.svg) no-repeat center center;
			background-size: 100% auto;
			-webkit-transform: rotate(-180deg);
			-moz-transform: rotate(-180deg);
			filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
		}
		.ticketnoteBox.op .adnote:after {
			-webkit-transform: rotate(180deg);
			-moz-transform: rotate(180deg);
			filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
		}
		.ticketnoteBox .note {
			display: none;
			background: #ffffff;
			border: 3px solid #c6cd0b;
			border-top: none;
			padding: 20px;
		}
		.ticketnoteBox.op .note {
			display: block;
		}

#ticket .u22Box {
	width: 100%;
	margin: 20px auto 0 auto;
	padding: 20px;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: rgba(255, 255, 255, 0.7);
}
	#ticket .u22Box .logo {
		width: 40%;
		max-width: 176px;
		margin-right: 5%;
		flex: 0 0 auto;
		line-height: 0;
	}
	#ticket .u22Box .txt {
		width: 100%;
		font-weight: 700;
		font-size: 16px;
		line-height: 1.6;
		letter-spacing: 0.05em;
		color: #000000;
		text-align: left;
	}
		#ticket .u22Box .txt a {
			color: #000000;
			text-decoration: underline;
		}
		#ticket .u22Box .txt a:hover {
			text-decoration: none;
		}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #ticket {
    width: 90%;
    margin: 40px auto 0 auto;
    padding: 30px 0 0 0;
    border-top: 2px solid #ffffff;
  }
  .ticketlistBox .tit {
    position: absolute;
    left: -4%;
    top: -3%;
    width: 38%;
  }
  .ticketlistBox .tit.tit_n {
	  top: 0;
  }
  #ticket .ticketlistBox .btn {
    text-align: right;
    margin: 0 0 3% 0;
    color: #c9151e;
    font-weight: 800;
    font-size: 2.4vw;
    line-height: 1.2
  }
  .ticketnotice {
    width: 100%;
    margin: 0 auto 25px auto;
    border: 3px solid #c9151e;
  }
  .ticketnotice .txt {
    width: 90%;
    margin: 0 auto 0 auto;
    padding: 15px 0 15px 0;
    color: #c9151e;
    text-align: left;
    font-size: 3vw;
    font-weight: 600;
    line-height: 1.5;
  }

  #ticket .bnr {
    margin-bottom: 30px;
  }
  #schedule .note {
    color: #000000;
    font-size: 3vw;
    font-weight: 600;
    text-align: left;

  }
  #ticket table {
    margin: 0 auto 30px auto;
    width: 100%;
    border-right: 2px solid #0671ff;
    border-bottom: 2px solid #0671ff;
  }
#ticket table .w01 {
  width: 11%;
}
#ticket table .w02 {
  width: 14%;
}
  #ticket table th,
  #ticket table td {
    text-align: center;
    vertical-align: middle;
    font-size: 2.8vw;
    line-height: 1.2;
    border-top: 2px solid #0671ff;
    border-left: 2px solid #0671ff;
  }
  #ticket table th span,
  #ticket table td span {
    font-size: 2.6vw;
  }
  #ticket table .c01 span {
    font-size: 2.6vw;
  }
  #ticket table .txt {
    width: 28%;
  }
  #ticket table th.cl,
  #ticket table td.cl {
    border: none;
  }
  #ticket table .l01 {
    border-left: 3px solid #0671ff;
  }
  #ticket table thead th,
  #ticket table thead td {
    padding: 5px 0 5px 0;
  }
  #ticket table thead th,
  #ticket .ticketBox li table .txt {
    font-size: 2.8vw;
  }
  #ticket table th.f02,
  #ticket table td.f02 {
    font-size: 3.6vw;
  }

  #ticket .ticketsaleBox {
    font-size: 3.4vw;
  }
  #ticket .ticketsaleBox .txtBox {
    margin: 20px auto 0 auto;
  }
  #ticket .ticketsaleBox .tit {
    font-weight: 700;
  }
  #ticket .ticketsaleBox .txt {
    font-weight: 600;
  }
  #ticket .ticketsaleBox .tit.c02 {
    color: #0671ff;
  }
  
#ticket .tbtn {
}
	#ticket .tbtn a {
		font-size: 3vw;
	}
  
} /*====================*/

/*===================sp=*/
@media screen and (max-width: 860px) {
  #schedule .place {
    font-size: 4.4vw;
    font-weight: bold;
  }
  #schedule .date {
    color: #000000;
    font-size: 3.4vw;
    font-weight: bold;
  }
  #schedule .scheduleBox .date {
    font-size: 2.4vw;
  }
  #schedule .no_events {
    font-size: 2.4vw;
  }
  #schedule .scheduledBox {
    width: 90%;
    margin: 0 auto 0 auto;
    padding: 0 0 30px 0;
    color: #000000;
  }

  #schedule .scheduledBox .maptxt {
    margin: 18px auto 0 auto;
    text-align: left;
    line-height: 1.4;
    font-size: 3.4vw;
  }
  #schedule .scheduledBox .maptxt a {
    text-decoration: underline;
  }
  #schedule .ticketbuyBox {
    padding: 16px 0 0 0;
  }
  #schedule .ticketbuyBox .tit,
  #schedule .ticketbuyBox2 .tit {
    font-size: 4.4vw;
  }

  #schedule .scheduledBox .creditBox {
    margin: 20px auto 0 auto;
    text-align: left;
    line-height: 1.3;
    font-size: 3.4vw;
  }
  .mapBox iframe {
    height: 150px;
  }

  #ticket #schedule .icon:before {
    content: "";
    position: absolute;
    right: -20px;
    top: -20px;
    width: 60px;
    height: 100%;
    background: url(../img/icon_add.png) no-repeat right top;
    background-size: 100% auto;
  }
  
.ticketinfoBox {
  padding: 15px 15px 10px 15px;
  margin-bottom: 20px;
}
	.ticketinfoBox .txt {
		margin-bottom: 10px;
		font-size: 3.4vw;
	}
	.ticketinfoBox .btn {
	  margin: 0 0 5px 0;
	}
	
.ticketnoteBox {
	
}
	#schedule .scheduledBox .ticketnoteBox .adnote {
		font-size: 16px;
		padding: 10px 0 8px 0;
	}
		.ticketnoteBox .note {
			padding: 15px;
		}
		.ticketnoteBox.op .note {
			display: block;
		}
		
		#ticket .u22Box {
			padding: 18px 10px 20px 10px;
			display: block;
		}
			#ticket .u22Box .logo {
				width: 38.67%;
				max-width: 38.67%;
				margin: 0 auto 10px auto;
			}
			#ticket .u22Box .txt {
				width: 90%;
				margin: 0 auto;
				font-size: 3.4vw;
			}
			
} /*====================*/

/*----------------------------------tab setting----------*/
.tabWrap {
  width: 100%;
  height: auto;
}

input[type="submit"] {
  -webkit-appearance: none;
  border-radius: 0;
}

.tabbtn {
  width: auto;
  font-size: 20px;
  /* 		transition: all 0.2s ease; */
}
input[name="tabbtn"] {
  display: none !important;
}

.tabBox {
  width: 100%;
  background: #ffffff;
  display: none;
}
#area01:checked ~ #area01Box,
#area02:checked ~ #area02Box,
#area03:checked ~ #area03Box,
#area04:checked ~ #area04Box {
  display: block;
}
.tabWrap input:checked + .tabbtn {
  background: #000000;
  color: #ffffff;
}

/*----------------------------------adWrap setting----------*/
.adWrap {
  text-align: center;
}
.adWrap .adBox {
  margin: 0 0 20px 0;
  background: #f6fa01;
}

.adWrap .adBtn {
  cursor: pointer;
  padding: 10px;
  position: relative;
}

.adWrap .adopBox {
  display: none;
  padding: 10px 0;
  position: relative;
}
.adWrap .arrow {
  position: relative;
  cursor: pointer;
  background: #c6cd0b;
  padding: 5px 0 5px 0;
}
.adWrap .arrow p {
  -webkit-transform: rotate(-180deg);
  -moz-transform: rotate(-180deg);
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  background: url(../img/arrow_01_b.svg) no-repeat center center;
  background-size: 15px auto;
  padding-top: 20px;
}

.adWrap .arrow.op {
  -webkit-transform: rotate(-180deg);
  -moz-transform: rotate(-180deg);
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
}

.adWrap .adBox.tyB {
  margin: 0 0 30px 0;
  background: none;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  overflow: hidden;
}

.adWrap .adBox.tyB .adBtn {
  width: 20em;
  cursor: pointer;
  padding: 10px;
  color: #ffffff;
  font-size: 20px;
  margin: 0 auto 0 auto;

  padding: 15px 0 15px 0;

  font-weight: bold;
  border-radius: 0px;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  background: #0671ff url(../img/arrow_02_w.svg) no-repeat;
  background-size: 5% auto;
  background-position-x: 95%;
  background-position-y: center;
}
.adWrap .adBox.tyB .adBtn:before,
.adWrap .adBox.tyB .adBtn:after {
  display: none;
}
.adWrap .adBox.tyB .adBtn.op {
  background: #0671ff url(../img/arrow_03_w.svg) no-repeat;
  background-size: 5% auto;
  background-position-x: 95%;
  background-position-y: center;
}
.adWrap .adBox.tyB .adBtn p {
  margin-right: 2em;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  .adWrap {
    text-align: center;
  }
  .adWrap .adBox {
    margin: 0 0 20px 0;
  }
  .adWrap .adBtn {
    cursor: pointer;
    padding: 4px;
  }
  .adWrap .adopBox {
    display: none;
    padding: 10px 0;
    position: relative;
  }
  .adWrap .arrow {
    cursor: pointer;
    padding: 2px 0 2px 0;
  }

  #ticket .btnbox {
    margin: 20px auto 0 auto;
  }
  #ticket .btn {
    width: 100%;
    max-width: 100%;
    margin-top: 10px;
    margin-bottom: 0;
  }

  .adWrap .adBox.tyB .adBtn {
    width: 20em;
    cursor: pointer;
    padding: 10px;
    color: #ffffff;
    font-size: 3.4vw;
    margin: 0 auto 0 auto;
    padding: 10px 0 10px 0;
    background: #0671ff url(../img/arrow_02_w.svg) no-repeat;
    background-size: 5% auto;
    background-position-x: 95%;
    background-position-y: center;
  }
} /*====================*/

/*-----------------------------------------------------------
	#event setting
-----------------------------------------------------------*/

#schedule #ticket_api .contentBox {
  width: 100%;
  padding: 0 0 0 0;
}

#schedule #ticket_api .date {
  color: #000000;
}

#schedule #ticket_api {
  color: #000000;
  margin-bottom: 30px;
}

#ticket .ticketWrap .detailsBox .details h4 .sp {
  display: block !important;
}
.ticketWrap .detailsBox .details a.scrap {
  position: relative !important;
  display: block;
  text-align: right;
  margin-top: 10px;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  .ticketWrap .detailsBox .details a.scrap {
    position: relative !important;
    display: block;
    text-align: right;
    margin-top: 0;
  }
} /*====================*/

/*-----------------------------------------------------------
	#privilege setting
-----------------------------------------------------------*/
#privilege {
  width: 92.5%;
  /* 	margin: 50px auto 0 auto; */
  margin: 80px auto 0 auto;
}
#privilege .txtBox .txt {
  width: 100%;
  margin: 20px auto 25px auto;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 600;
  color: #ffffff;
  text-shadow: 0 0 5px rgba(26, 92, 225, 0.8);
  text-align: center;
}
#privilege .txtBox .bnr {
  width: 65%;
  margin: 0 auto 50px auto;
}
#privilege h3 {
  width: 85%;
  margin: 50px auto 0 auto;
}
#privilege .privilegecardBox {
  width: 90%;
  margin: 30px auto 30px auto;
  padding: 30px 0 30px 0;
  background: rgba(255, 255, 255, 0.5);
  z-index: 2;
  position: relative;
}
#privilege .privilegecardBox h4 {
  width: 100%;
  margin: 0 0 0 -0%;
  z-index: 2;
  position: relative;
}
#privilege .privilegecardBox .txt {
  width: 95%;
  margin: 15px auto 0 auto;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 600;
  text-align: center;
  z-index: 2;
  position: relative;
}
#privilege .privilegecardBox:before {
  content: "";
  position: absolute;
  left: -25px;
  top: -20px;
  width: 100px;
  padding-top: 100%;
  background: url(../img/privilege_icon.svg) no-repeat right top;
  background-size: 100% auto;
}
#privilege .privilegecardBox:after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 50%;
  margin: -18% 0 0 -25%;
  padding-top: 67%;
  background: url(../img/privilege_img.svg) no-repeat center top;
  background-size: 100% auto;
  z-index: 0;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #privilege {
    width: 100%;
    margin: 50px auto 0 auto;
  }
  #privilege .txtBox .txt {
    width: 100%;
    margin: 15px auto 25px auto;
    font-size: 3.4vw;
    line-height: 1.8;
  }
  #privilege .txtBox .bnr {
    width: 74%;
    margin: 0 auto 40px auto;
  }
  #privilege h3 {
    width: 120%;
    margin: 40px 0 0 -10%;
  }
  #privilege .privilegecardBox h4 {
    width: 130%;
    margin: 0 0 0 -15%;
    z-index: 2;
    position: relative;
  }
  #privilege .privilegecardBox {
    width: 90%;
    margin: 30px auto 30px auto;
    padding: 20px 0 20px 0;
    background: rgba(255, 255, 255, 0.5);
    position: relative;
  }
  #privilege .privilegecardBox .txt {
    width: 90%;
    margin: 15px auto 0 auto;
    font-size: 3.4vw;
    line-height: 1.8;
    font-weight: 700;
    text-align: center;
  }
  #privilege .privilegecardBox:before {
    content: "";
    position: absolute;
    left: -5%;
    top: -20px;
    width: 20%;
    padding-top: 100%;
    background: url(../img/privilege_icon.svg) no-repeat right top;
    background-size: 100% auto;
  }
  #privilege .privilegecardBox:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 55%;
    margin: -18% 0 0 -27%;
    padding-top: 67%;
    background: url(../img/privilege_img.svg) no-repeat center top;
    background-size: 100% auto;
    z-index: 0;
  }
} /*====================*/

/*-----------------------------------------------------------
	#map setting
-----------------------------------------------------------*/
#map {
  width: 92.5%;
  margin: 50px auto 0 auto;
  padding: 0 0 0 0;
  border-top: 2px solid #ffffff;
}
#map h2 {
  width: 100%;
  position: absolute;
  right: 0;
  left: 0;
  top: 5.4%;
}
#map .mapBox {
  width: 108.5%;
  margin: 0 0 0 -4.25%;
}
#map .mapBox .map {
  width: 100%;
}
#map .mapBox .mappop {
  display: none;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #map {
    width: 90%;
    margin: 40px auto 0 auto;
    padding: 0 0 0 0;
    border-top: 2px solid #ffffff;
  }
  #map h2 {
    width: 100%;
    position: absolute;
    right: 0;
    left: 0;
    top: 3%;
  }
  #map .mapBox {
    width: 112%;
    margin: 0 0 0 -6%;
  }
  #map .mapBox .map {
    width: 100%;
  }
  #map .mapBox .mapdetails {
    display: none;
  }
  #map .mapBox .mapdetails {
    width: 112%;
    position: absolute;
    top: 17.3%;
  }
  #map .mapBox .mappop {
    display: block;
  }
  #map .mapBox .btn {
    width: 15%;
    position: absolute;
    right: -0.5%;
    top: 8.5%;
  }
  #map .mapBox .popcbtnc04 {
    width: 15%;
    position: absolute;
    right: -0.5%;
    top: 8.5%;
    display: none;
  }
} /*====================*/

/*-----------------------------------------------------------
	#prologue setting
-----------------------------------------------------------*/
#prologue {
  width: 92.5%;
  /* 	margin: 50px auto 0 auto; */
  margin: 0 auto 0 auto;
  padding: 35px 0 20px 0;
  /* 	border-top: 2px solid #ffffff; */
}
#prologue .txtBox {
  width: 100%;
  margin: 20px auto 0 auto;
}
#prologue .txtBox .txt {
  width: 100%;
  margin: 0 auto 25px auto;
  font-size: 18px;
  line-height: 1.5;
  font-weight: 700;
  color: #ffffff;
  text-shadow: 0 0 5px rgba(26, 92, 225, 0.8);
  text-align: center;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #prologue {
    width: 90%;
    /* 	margin: 40px auto 0 auto; */
    padding: 30px 0 20px 0;
    /* 	border-top: 2px solid #ffffff; */
  }
  #prologue .txtBox {
    width: 100%;
    margin: 10px auto 0 auto;
  }
  #prologue .txtBox .txt {
    width: 100%;
    margin: 0 auto 20px auto;
    font-size: 3.4vw;
    line-height: 1.8;
  }
} /*====================*/

/*-----------------------------------------------------------
	#cm setting
-----------------------------------------------------------*/
#cm {
  margin: -10px auto 15px auto;
  padding-top: 75px;
}

#cm .movieBox {
  width: 75%;
  margin: 30px auto 0 auto;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #cm {
    margin: 40px auto 0 auto;
    padding: 0;
  }

  #cm .movieBox {
    width: 82%;
    margin: 30px auto 0 auto;
  }
} /*====================*/

/*-----------------------------------------------------------
	#howto setting
-----------------------------------------------------------*/
#howto {
  margin: 0 0 0 0;
}

#howto .howtoBox {
  width: 100%;
  /* 		margin-top: 50px; */
  position: relative;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;

  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
#howto .howtoBox li {
  width: 44.75%;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  position: relative;
}
#howto .howtoBox li:before {
  content: "";
  width: 100%;
  padding-top: 100%;
  display: block;
  position: relative;
  top: 0;
  left: 0;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  z-index: -1;
}
#howto .howtoBox li.howto00:before {
  background: rgba(255, 255, 255, 0.9);
  border: rgba(202, 20, 29, 0.9) solid 3px;
}
#howto .howtoBox li.howto01:before {
  background: rgba(232, 57, 26, 0.9);
}
#howto .howtoBox li.howto02:before {
  background: rgba(31, 79, 161, 0.9);
}
#howto .howtoBox li.howto03:before {
  background: rgba(151, 93, 163, 0.9);
}
#howto .howtoBox li.howto04:before {
  background: rgba(126, 191, 79, 0.9);
}
#howto .howtoBox li.howto05:before {
  background: rgba(20, 157, 202, 0.9);
}

#howto .howtoBox li:after {
  content: "";
  width: 100%;
  position: absolute;
}
#howto .howtoBox li.howto00:after {
  width: 27%;
  padding-top: 14.1%;
  top: 60%;
  left: -15.5%;
  background: url(../img/howto_00_arrow.png) no-repeat left top;
  background-size: 100% auto;
}
#howto .howtoBox li.howto01:after {
  width: 46.92%;
  padding-top: 29.74%;
  top: 77.37%;
  right: -43.43%;
  background: url(../img/howto_01_arrow.png) no-repeat left top;
  background-size: 100% auto;
}
#howto .howtoBox li.howto02:after {
  width: 41.34%;
  padding-top: 19.27%;
  top: 59.77%;
  left: -43.57%;
  background: url(../img/howto_02_arrow.png) no-repeat left top;
  background-size: 100% auto;
}
#howto .howtoBox li.howto03:after {
  width: 66.06%;
  padding-top: 35.75%;
  top: 74.02%;
  right: -66.2%;
  background: url(../img/howto_03_arrow.png) no-repeat left top;
  background-size: 100% auto;
}
#howto .howtoBox li.howto04:after {
  width: 65.08%;
  padding-top: 22.2%;
  top: 56.28%;
  left: -68.57%;
  background: url(../img/howto_04_arrow.png) no-repeat left top;
  background-size: 100% auto;
}
#howto .howtoBox li.howto05:after {
}

#howto .howtoBox li.howto00 {
  margin: 0 3.875% 0 0;
}
#howto .howtoBox li.howto00 .txtBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-line-pack: center;
  align-content: center;
}

#howto .howtoBox li.howto00 h3 {
  width: 59.49%;
  margin: 0 auto 0 auto;
  line-height: 0;
}

#howto .howtoBox li.howto01 {
  margin: 11.5% 0 0 -1.875%;
}
#howto .howtoBox li.howto02 {
  margin: -7.375% -4.375% 0 0;
}
#howto .howtoBox li.howto03 {
  margin: 5% 0 0 -6.5%;
}
#howto .howtoBox li.howto04 {
  margin: -7.625% -11.25% 0 0;
}
#howto .howtoBox li.howto05 {
  margin: 5.875% 0 0 -10.75%;
}

#howto .howtoBox li div.howtoItem {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

#howto .howtoBox li .txtBox {
  width: 100%;
  height: 100%;
  margin: 0 0 0 0;
}
#howto .howtoBox li .txtBox .no {
  width: 100%;
  margin: 0 0 0 0;
  padding: 10% 0 0 0;
}
#howto .howtoBox li.howto01 .txtBox .no {
  padding-top: 4%;
}
#howto .howtoBox li .txtBox .tit {
  width: 100%;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.27;
  text-align: center;
  color: #ffffff;
}
#howto .howtoBox li .img {
  width: 100%;
  margin: 5% 0 0 0;
  line-height: 0;
}

#howto .howtoBox li .txtBox .txt {
  width: 100%;
  font-size: 14px;
  line-height: 1.42;
  font-weight: 600;
  text-align: center;
  color: #ffffff;
  margin: 5% 0 0 0;
  letter-spacing: -0.05em;
}
#howto .howtoBox li .txtBox .txt span {
  font-size: 11px;
  vertical-align: super;
}
#howto .howtoBox li .txtBox .txt a {
  color: #f5dd36;
}

#howto .howtoBox li.howto05 .btn {
  width: 58.65%;
  position: absolute;
  top: 43%;
  left: -28%;
  line-height: 0;
  cursor: pointer;
}

/*===================sp=*/
@media screen and (max-width: 1200px) {
  #howto .howtoBox {
    width: 100%;
    margin: 0 auto 0 auto;
  }

  #howto .howtoBox li.howto05 .btn {
    width: 58.65%;
    position: absolute;
    top: 50%;
    left: auto;
    right: -30%;
    line-height: 0;
    cursor: pointer;
  }
} /*====================*/

/*===================sp=*/
@media screen and (max-width: 860px) {
  #howto {
    margin: 0 0 0 0;
  }

  #howto .howtoBox {
    width: 100%;
    margin: 0 0 0 0;
  }
  #howto .howtoBox li {
    width: 80%;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    position: relative;
  }
  #howto .howtoBox li.howto00 {
    width: 40%;
  }
  #howto .howtoBox li:before {
    content: "";
    width: 100%;
    padding-top: 100%;
    display: block;
    position: relative;
    top: 0;
    left: 0;
    border-radius: 100%;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    z-index: -1;
  }

  #howto .howtoBox li:after {
    content: "";
    width: 100%;
    position: absolute;
  }
  #howto .howtoBox li.howto00:after {
    width: 22%;
    padding-top: 34%;
    top: 84%;
    left: 12%;
    background: url(../img/sp/howto_arrow_b.png) no-repeat left top;
    background-size: 100% auto;
  }
  #howto .howtoBox li.howto01:after {
    width: 12%;
    padding-top: 18%;
    top: 95%;
    right: 50%;
    background: url(../img/sp/howto_arrow_a.png) no-repeat left top;
    background-size: 100% auto;
  }
  #howto .howtoBox li.howto02:after {
    width: 12%;
    padding-top: 18%;
    top: 95%;
    left: 50%;
    background: url(../img/sp/howto_arrow_b.png) no-repeat left top;
    background-size: 100% auto;
  }
  #howto .howtoBox li.howto03:after {
    width: 12%;
    padding-top: 18%;
    top: 95%;
    right: 50%;
    background: url(../img/sp/howto_arrow_a.png) no-repeat left top;
    background-size: 100% auto;
  }
  #howto .howtoBox li.howto04:after {
    width: 12%;
    padding-top: 18%;
    top: 95%;
    left: 50%;
    background: url(../img/sp/howto_arrow_b.png) no-repeat left top;
    background-size: 100% auto;
  }
  #howto .howtoBox li.howto05:after {
  }

  #howto .howtoBox li.howto00 {
    margin: 0 3.875% 0 0;
  }
  #howto .howtoBox li.howto00 .txtBox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
  }

  #howto .howtoBox li.howto00 h3 {
    width: 80%;
    margin: 0 auto 0 auto;
    line-height: 0;
  }

  #howto .howtoBox li.howto01 {
    margin: -3% 17% 0 0;
  }
  #howto .howtoBox li.howto02 {
    margin: 4% 3% 0 0;
  }
  #howto .howtoBox li.howto03 {
    margin: 4% 17% 0 0;
  }
  #howto .howtoBox li.howto04 {
    margin: 4% 3% 0 0;
  }
  #howto .howtoBox li.howto05 {
    margin: 4% 17% 0 0;
  }

  #howto .howtoBox li div.howtoItem {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
  }

  #howto .howtoBox li .txtBox {
    width: 100%;
    height: 100%;
    margin: 0 0 0 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
  }
  #howto .howtoBox li .txtBox .no {
    width: 84%;
    margin: 0 auto 0 auto;
    padding: 0 0 0 0;
  }
  #howto .howtoBox li.howto01 .txtBox .no {
    margin-top: -12%;
  }
  #howto .howtoBox li .txtBox .tit {
    width: 100%;
    font-size: 3.8vw;
    font-weight: 800;
    line-height: 1.27;
    text-align: center;
    color: #ffffff;
  }
  #howto .howtoBox li .img {
    width: 100%;
    margin: 5% 0 0 0;
    line-height: 0;
  }

  #howto .howtoBox li .txtBox .txt {
    font-size: 3.2vw;
    margin: 5% 0 0 0;
  }
  #howto .howtoBox li .txtBox .txt span {
    font-size: 11px;
    vertical-align: super;
  }
  #howto .howtoBox li .txtBox .txt a {
    color: #f5dd36;
  }

  #howto .howtoBox li.howto05 .btn {
    width: 44%;
    position: absolute;
    top: 43%;
    left: auto;
    right: -15%;
    line-height: 0;
    cursor: pointer;
  }
} /*====================*/

/*-----------------------------------------------------------
	#goods setting
-----------------------------------------------------------*/
#goods {
  width: 92.5%;
  margin: 50px auto 0 auto;
  padding: 30px 0 0 0;
}
#goods .goodsBox {
  width: 100%;
  margin: 30px auto 50px auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
#goods .goodsBox .img {
  width: 35%;
}
#goods .goodsBox .txtBox {
  width: 65%;
  line-height: 1.4;
}
#goods .goodsBox .tit {
  font-size: 18px;
  font-weight: 800;
}
#goods .goodsBox .price {
  font-size: 15px;
  font-weight: 600;
  margin-top: 20px;
}
#goods .goodsBox .txt {
  font-size: 15px;
  font-weight: 600;
  margin-top: 20px;
}
#goods .goodsBox .txt .note {
  font-size: 13px;
  font-weight: 400;
  margin-top: 20px;
  opacity: .9;
  color: #000000;
}


/*===================sp=*/
@media screen and (max-width: 860px) {
  #goods {
    width: 90%;
    margin: 40px auto 0 auto;
    padding: 30px 0 0 0;
  }
  #goods h3 {
    width: 150%;
    margin: 0 0 0 -25%;
  }
  #goods .goodsBox {
    width: 100%;
    margin: 20px auto 30px auto;
    /* 		display: block; */
  }
  #goods .goodsBox .img {
    width: 35%;
    /* 			margin: 0 auto 20px auto; */
  }
  #goods .goodsBox .img img {
    width: 116%;
    margin-left: -8%;
  }
  #goods .goodsBox .txtBox {
    width: 60%;
    margin-left: 5%;
    line-height: 1.4;
  }
  #goods .goodsBox .tit {
    font-size: 3.6vw;
  }
  #goods .goodsBox .price {
    font-size: 3.2vw;
    margin-top: 10px;
  }
  #goods .goodsBox .txt {
    font-size: 3.2vw;
    margin-top: 10px;
  }
	#goods .goodsBox .txt .note {
	  font-size: 3.0vw;
	  margin-top: 10px;
	}
} /*====================*/

/*-----------------------------------------------------------
	#special setting
-----------------------------------------------------------*/
#special {
  width: 92.5%;
  margin: 50px auto 0 auto;
  padding: 40px 0 0 0;
  border-top: 2px solid #000000;
}
#special .bnrBox {
  width: 81%;
  margin: 30px auto 0 auto;
}
#special .bnr {
  line-height: 0;
  margin: 0 auto 15px auto;
  cursor: pointer;
}
#special .bnr.cs {
  width: 100%;
  margin: 20px 0 0 0;
}
/*===================sp=*/
@media screen and (max-width: 860px) {
  #special {
    width: 90%;
    margin: 40px auto 0 auto;
    padding: 30px 0 0 0;
    border-top: 2px solid #000000;
  }
  #special h3 {
    width: 150%;
    margin: 0 0 0 -25%;
  }
  #special .bnrBox {
    width: 100%;
    margin: 20px auto 0 auto;
  }
  #special .bnr {
    line-height: 0;
    margin: 0 auto 15px auto;
  }
  #special .bnr.cs {
    width: 100%;
    margin: 15px 0 0 0;
  }
  #special .cs img {
    width: 160%;
    margin: 0 0 0 -30%;
  }
} /*====================*/

/*-----------------------------------------------------------
	#introduction setting
-----------------------------------------------------------*/
#introduction {
  width: 92.5%;
  margin: 50px auto 0 auto;
  padding: 0 0 0 0;
  /* 	border-top: 2px solid #000000; */
}
#introduction .introductionWrap {
  margin: 25px auto 0 auto;
  padding: 0 0 15px 0;
}
#introduction .introductionBox {
  width: 97%;
  margin: 0 0 20px 0;
  padding: 20px 0 0 0;
  background: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  position: relative;
}
#introduction .introductionBox .img {
  width: 19%;
  line-height: 0;
  position: relative;
}
#introduction .introductionBox:before {
  content: "";
  width: 3.5%;
  height: 100%;
  position: absolute;
  top: 10%;
  right: -3.3%;
  background: url(../img/arrow_01_w.svg) no-repeat center bottom;
  background-size: 100% auto;
  display: block;
  -webkit-transform: rotate(-180deg);
  -moz-transform: rotate(-180deg);
}
#introduction .introductionBox .name {
  width: 100%;
  margin: 0 auto 0 auto;
}
#introduction .introductionBox .comm {
  width: 95%;
  padding: 5px 2.5% 20px 2.5%;
  line-height: 1.6;
  font-size: 15px;
  font-weight: 600;
  position: relative;
}

/*
		#introduction .introductionBox.introduction02 .img:before {
			content: "";
			width: 15%;
			height: 100%;
			position: absolute;
			top: 0;
			left: -23%;
			background: url(../img/arrow_01_w.svg) no-repeat center center;
			background-size: 100% auto;
			display: block;
			-webkit-transform: rotate(-180deg);
			-moz-transform: rotate(-180deg);
			filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
		}
	
*/

/*===================sp=*/
@media screen and (max-width: 860px) {
  #introduction {
    margin: 40px auto 0 auto;
    padding: 0 0 10px 0;
    /* 	border-top: 2px solid #000000; */
  }
  #introduction h2 {
    width: 100%;
    margin: 0 auto 0 auto;
  }
  #introduction .contentBox {
    width: 100%;
  }
  #introduction .introductionWrap {
    margin: 20px auto 0 auto;
    padding: 0 0 1px 0;
  }
  #introduction .introductionBox {
  }
  #introduction .introductionBox .name img {
    width: 140%;
    margin: 0 0 0 0.4%;
  }
  #introduction .introductionBox .comm {
    font-size: 3.2vw;
    padding: 5px 2.5% 20px 4%;
  }
} /*====================*/

/*-----------------------------------------------------------
	#about setting
-----------------------------------------------------------*/
#about {
  width: 100%;
  position: relative;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
}

#about .aboutWrap {
  width: 100%;
  margin: 30px auto 0 auto;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#about .aboutWrap .movieBox {
  width: 47%;
  margin: 0 0 0 0;
}
#about .aboutWrap .txtBox {
  width: 47%;
  margin: 0 0 0 0;
  font-weight: normal;
}
#about .aboutWrap .txtBox .txt {
  line-height: 1.9;
  font-size: 14px;
  font-weight: 600;
  color: #ffffff;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #about {
    width: 90%;
    margin: 0 auto 0 auto;
  }
  #about .aboutWrap {
    display: block;
    margin: 20px 0 0 0;
  }
  #about .aboutWrap .movieBox {
    width: 100%;
    margin: 0 0 20px 0;
  }
  #about .aboutWrap .txtBox {
    width: 100%;
    margin: 0 0 0 0;
    font-weight: normal;
  }
  #about .aboutWrap .txtBox .txt {
    line-height: 1.6;
    font-size: 3.4vw;
  }
} /*====================*/

/*-----------------------------------------------------------
	#faq setting
-----------------------------------------------------------*/
#faq {
}

#faq .faqWrap {
  width: 100%;
  padding: 0 0 0 0;
  margin: 50px auto 80px auto;
  text-align: left;
  background: url(../img/bg05.png) repeat;
}

#faq .faqWrap .faqBox {
  width: 100%;
  margin: 0 auto 0 auto;
  padding: 30px 0 0 0;
}
#faq .faqWrap .tit {
  width: 100%;
  margin: 0 auto 10px auto;
  padding: 0 0 0 0;
  font-size: 18px;
  font-weight: 600;
}

#faq .faqWrap ul {
  width: 90%;
  margin: 0 auto 0 auto;
}
#faq .faqWrap ul li {
  width: 100%;
  padding: 0 0 30px 0;
}

#faq .faqWrap ul li .txt {
  font-size: 14px;
}
#faq .faqWrap ul li .q {
  font-size: 14px;
  display: block;
  padding-left: 2em;
  font-weight: 600;
  margin: 0 0 5px 0;
}
#faq .faqWrap ul li .q::before {
  content: "Q：";
  display: block;
  float: left;
  margin-left: -2em;
  width: 2em;
  text-align: center;
  font-weight: 700;
  color: #c9151e;
}
#faq .faqWrap ul li .a {
  font-size: 14px;
  line-height: 1.8;
  font-weight: 300;
  display: block;
  padding-left: 2em;
}
#faq .faqWrap ul li .a::before {
  content: "A：";
  font-size: 14px;
  display: block;
  float: left;
  margin-left: -2em;
  width: 2em;
  text-align: center;
  font-weight: 700;
  color: #1b499d;
}
#faq .faqWrap ul li .n {
  font-size: 14px;
  line-height: 1.8;
  display: block;
  font-weight: 300;
  padding-left: 1.5em;
  margin: 0 0 0 0;
  margin-bottom: 0;
}
#faq .faqWrap ul li .n::before {
  content: "・";
  font-size: 14px;
  font-weight: 300;
  display: block;
  float: left;
  margin-left: -1.5em;
  width: 1em;
  text-align: center;
}
#faq .faqWrap ul li .n:last-child {
  margin-bottom: 0;
}
#faq .faqWrap ul li .nt {
  font-size: 14px;
  line-height: 1.8;
  display: block;
  font-weight: 300;
  padding-left: 1.5em;
  margin: 0 0 0 0;
  margin-bottom: 0;
  color: #444444;
}
#faq .faqWrap ul li .nt::before {
  content: "※";
  font-size: 14px;
  font-weight: 300;
  display: block;
  float: left;
  margin-left: -1.5em;
  width: 1em;
  text-align: center;
}
#faq .faqWrap ul li .nt:last-child {
  margin-bottom: 0;
}
#faq .faqWrap .bnr {
  width: 100%;
  max-width: 250px;
  margin: 0 auto 0 auto;
}
#faq .faqWrap .note {
  font-size: 12px;
  color: #444444;
}
#faq .faqWrap a {
  text-decoration: underline;
}
#faq .faqWrap a:hover {
  text-decoration: none;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #faq .contentBox h3 {
    width: 100%;
  }
  #faq h2 img {
    width: 120%;
    margin: 0 0 0 -10%;
  }
  #faq .faqWrap {
    width: 90%;
    padding: 0 0 0 0;
    margin: 20px auto 40px auto;
    text-align: left;
  }

  #faq .faqWrap .faqBox {
    width: 100%;
    margin: 0 auto 0 auto;
  }
  #faq .faqWrap ul {
    width: 90%;
  }
  #faq .faqWrap ul li {
    width: 100%;
    padding: 0 0 25px 0;
  }
  #faq .faqWrap ul li .tit {
    font-size: 3.8vw;
    margin-bottom: 10px;
  }
  #faq .faqWrap ul li .q {
    font-size: 3.4vw;
    margin: 0 0 2% 0;
  }
  #faq .faqWrap ul li .q::before {
    content: "Q：";
    font-weight: 3.4vw;
  }
  #faq .faqWrap ul li .a {
    font-size: 3.4vw;
  }
  #faq .faqWrap ul li .a::before {
    content: "A：";
    font-size: 3.4vw;
  }
  #faq .faqWrap ul li .n {
    font-size: 3.4vw;
    line-height: 1.8;
  }
  #faq .faqWrap ul li .txt {
    font-size: 3.4vw;
    line-height: 1.8;
  }
  #faq .faqWrap ul li .n::before {
    content: "・";
    font-size: 3.4vw;
  }
  #faq .faqWrap ul li .n:last-child {
    margin-bottom: 0;
  }
  #faq .faqWrap ul li .nt {
    font-size: 3.4vw;
    line-height: 1.8;
  }
  #faq .faqWrap ul li .nt::before {
    content: "※";
    font-size: 3.4vw;
  }
  #faq .faqWrap ul li .nt:last-child {
    margin-bottom: 0;
  }
  #faq .faqWrap .bnr {
    width: 100%;
    max-width: 250px;
    margin: 0 auto 0 auto;
  }
  #faq .faqWrap .note {
    font-size: 3vw;
    color: #444444;
  }
  #faq .faqWrap a {
    text-decoration: underline;
  }
  #faq .faqWrap a:hover {
    text-decoration: none;
  }
} /*====================*/

/*-----------------------------------------------------------
	#footer setting
-----------------------------------------------------------*/
#footer {
  width: 100%;
  text-align: center;
  margin: 0 auto 0 auto;
  padding: 0 0px 50px 0px;
  position: relative;
  line-height: 1.6;
  color: #e5e5e4;
  background: #000000;
  z-index: 2;
}
.inner #footer {
  padding: 20px 0px 50px 0px;
}
.footerWrap {
  max-width: 960px;
  margin: 0 auto 0 auto;
}

#footer .logoBox {
  width: 90%;
  margin: 40px auto 30px auto;
}
#footer .logoBox .logo {
  width: 40%;
  max-width: 180px;
  margin: 0 auto 20px auto;
  font-size: 22px;
  color: #ffffff;
}

#footer .copyright {
  font-size: 14px;
  font-weight: 600;
  margin: 30px auto 0 auto;
  color: #ffffff;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  #footer {
    width: 100%;
    margin: 0 auto 0 auto;
    padding: 8vw 0 20vw 0;
  }
  .inner #footer {
    padding: 8vw 0 20vw 0;
  }
  .footerWrap {
    width: 90%;
    margin: 0 auto 0 auto;
  }
  #footer .copyright {
    margin-top: 0px;
    font-size: 12px;
  }
  #footer .logoBox {
    width: 80%;
  }
  #footer .logoBox .logo01 {
  }
} /*====================*/

/*----------------------------------#footbnr setting----------*/
.footbnr {
  margin: 0 auto 0 auto;
}
.footbnr .bnr {
  width: 90%;
  max-width: 400px;
  margin: 0 auto 25px auto;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  .footbnr .bnr {
    width: 80%;
  }
} /*====================*/

/*-----------------------------------------------------------
	#share setting
-----------------------------------------------------------*/
#share {
  width: 7%;
  height: 100%;
  margin: 0 auto 0 auto;
  padding: 0 0 0 0;
  position: fixed;
  left: 20px;
  top: 0;
  text-align: right;
  z-index: 2;

  transform: translateX(200%) translateY(0%);
  transition: transform 0.3s cubic-bezier(0, 0.72, 0.62, 1);
}
/*===================sp=*/
@media screen and (max-width: 860px) {
  #share {
    transform: translateX(0%) translateY(300%);
  }
} /*====================*/
#share.in {
  transform: translateX(0%) translateY(0%);
}

#share .contentBox {
  width: 100%;
  height: 100%;
  max-width: 1200px;
  margin: 0 auto 0 auto;
  padding: 0 0 0 0;
  position: relative;
  z-index: 1;

  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#share ul {
  width: 80px;
  margin: 0 auto 0 auto;
  z-index: 10;
}
#share li {
  margin: 0 0 10px 0;
}
#share li div {
  padding-bottom: 100%;
  background: #000000;

  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  overflow: hidden;
  position: relative;
  z-index: 10;

  box-shadow: 2px 5px 8px rgba(102, 102, 102, 0.3);
}
#share li div a {
  display: block;
  width: 100%;
  height: 100%;
}
#share li div {
  line-height: 0;
  font-size: 0;
}

#share li .btn_tw {
  background: #1ea2f2 url(../img/i_tw.svg) no-repeat center center;
  background-size: auto 40%;
}
#share li .btn_tw:hover {
  opacity: 0.7;
}
#share li .btn_fb {
  background: #3b5999 url(../img/i_fb.svg) no-repeat center center;
  background-size: auto 50%;
}
#share li .btn_fb:hover {
  opacity: 0.7;
}
#share li .btn_li {
  background: #00b800 url(../img/i_li.svg) no-repeat center center;
  background-size: auto 50%;
}
#share li .btn_li:hover {
  opacity: 0.7;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  /*
.f #share {
	width: 96%;
}
*/
  #share {
    width: 100%;
    height: auto;
    margin: 0 auto 0 auto;
    padding: 0 0 0 0;
    position: fixed;
    right: 0;
    top: auto;
    bottom: 10px;
    text-align: right;
    z-index: 10;
    display: block;
  }
  #share ul {
    width: 50%;
    height: auto;
    margin: 0 0 0 0;
    z-index: 10;
    position: relative;
    right: 0;
    top: 0;

    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
  }
  #share ul li {
    width: 28%;
    margin: -10% 2% 0 2%;
  }
} /*====================*/

/*----------------------------------#popup setting----------*/

#popupBtn a {
  display: block;
  cursor: pointer;
}
#popupBtn {
  width: 13.46%;
  max-width: 170px;
  position: fixed;
  right: 0;
  bottom: 10px;
  z-index: 100;
  cursor: pointer;
}
#popupBtn img {
  width: 100%;
  border-style: none;
}
#popupBtn p.pchaa {
  width: 90%;
  margin-left: 10%;
  margin-bottom: 10%;
}
#popupBtn p.pbtn {
  position: absolute;
  bottom: 0;
  right: 0;
}
#popupBtn:hover {
  opacity: 0.7;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  /*
.f #popupBtn {
	width: 26%;
	right: 3.6%;
}
*/
  #popupBtn {
    width: 27%;
    right: 0;
    bottom: 10px;
  }
  #popupBtn img {
    width: 100%;
    border-style: none;
  }

  #popupBtn:hover {
    opacity: 1;
  }
} /*====================*/

.popcontent .bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: rgba(255, 255, 255, 0.95);
}
.popcontent {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1500;
  display: none;
  transition: all 0.7s ease;
}

.popcontent .popWrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
  overflow-y: auto;
  overflow-x: hidden;
}

.popcontent .popBox {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: 6px;
  padding-right: 6px;
}
.popcontent .popBox:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.popcontent .popBox .pop {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto 0 auto;
  text-align: left;
  z-index: 1045;
  cursor: auto;
  line-height: 0;
  width: 90%;
  max-width: 600px;
  opacity: 0;
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
  opacity: 1;
}

.popcontent .contentBox {
  width: 100%;
  margin: 0 auto 0 auto;
  padding: 40px 0 40px 0;
  background: url(../img/bg05.png) repeat;
}
.popcontent .contentBox h2 {
  width: 90%;
  margin: 0 auto 0 auto;
}
.popcontent .contentBox .txt {
  width: 90%;
  margin: 20px auto 0 auto;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.8;
}
.popcontent.pop03 .contentBox {
  width: 100%;
  margin: 0 auto 0 auto;
  padding: 20px 0 15px 0;
  background: url(../img/bg05.png) repeat;
}
.popcontent.pop03 .deco {
  width: 133%;
  display: block;
  position: absolute;
  top: 0;
  left: -16.5%;
  z-index: -2;
}
.popcontent.pop03 .deco:before {
  content: "";
  width: 100%;
  padding-top: 21.71%;
  background: url(../img/nazo_de01.png) no-repeat center top;
  background-size: 100% auto;
  margin-top: -16.11%;
  display: block;
}
.popcontent.pop03 .contentBox .txt {
  width: 90%;
  margin: 10px auto 0 auto;
  line-height: 0;
}
.popcontent.pop03 .contentBox .btn {
  width: 50%;
  margin: 30px auto 0 auto;
}
.popcontent .contentBox .txt span {
  color: #c9151e;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  .popcontent.pop03 .deco {
    width: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -2;
  }
  .popcontent.pop03 .deco:before {
    margin-top: -19%;
  }
} /*====================*/

.popcontent.pop05 .contentBox {
  width: 100%;
  margin: 0 auto 40px auto;
  padding: 30px 0 15px 0;
  background: url(../img/bg05.png) repeat;
}
.popcontent.pop05 .contentBox .img {
  width: 86%;
  margin: 30px auto 0 auto;
  line-height: 0;
}
.popcontent.pop05 .contentBox .list {
  width: 86%;
  margin: 0 auto 10px auto;
  line-height: 0;
}
.popcontent.pop05 .contentBox .list li.none {
  width: 100%;
  margin: 0 auto 0 auto;
  padding: 20px 0 20px 0;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  background: none;
}
.popcontent.pop05 .contentBox .list li {
  width: 100%;
  background: url(../img/halloffame_bg.png) no-repeat center top;
  background-size: 100% 100%;
  margin: 15px auto 0 auto;
  padding: 0 0 1em 0;
  text-align: center;
  font-size: 16px;
  line-height: 1;
  font-weight: 600;
}
.popcontent.pop05 .contentBox .list li .name {
  width: 100%;
  margin: 0 auto 0 auto;
  padding-top: 0.3em;
  font-size: 17px;
  font-feature-settings: "palt";
  font-weight: 500;
}
.popcontent.pop05 .contentBox .list li .name:before {
  content: "";
  background: url(../img/halloffame_bg_t.svg) no-repeat center top;
  background-size: 100% 100%;
  width: 89%;
  height: 1em;
  margin: 0.3em auto 0.8em auto;
  display: block;
}

.popcontent.pop05 .contentBox .list li .date {
  width: 89%;
  margin: 1em auto 0 auto;
  font-size: 14px;
  font-weight: 700;
  color: #b59c13;
  background: url(../img/halloffame_bg_b.svg) no-repeat center center;
  background-size: 100% 100%;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  .popcontent.pop05 .contentBox .list li .name {
    font-size: 3vw;
    width: 88%;
    line-height: 1.4;
    word-break: break-all;
  }
  .popcontent.pop05 .contentBox .list li {
    padding-bottom: 0.8em;
  }
  .popcontent.pop05 .contentBox .list li .name:before {
    width: 100%;
    height: 1em;
    margin: 0.3em auto 0.5em auto;
  }
  .popcontent.pop05 .contentBox .list li .date {
    font-size: 2.2vw;
    line-height: 1.2;
  }
} /*====================*/

.popcontent .popcbtn {
  position: absolute;
  top: -10px;
  right: -10px;
  width: 60px;
  z-index: 13;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
  .popcontent .contentBox {
    width: 100%;
    margin: 0 auto 0 auto;
    padding: 15% 0 5% 0;
    background: url(../img/bg05.png) repeat;
    background-size: 15% auto;
  }
  .popcontent .contentBox h2 {
    width: 110%;
    margin: 0 0 0 -5%;
  }
  .popcontent .contentBox h2.h2l {
    width: 100%;
    margin: 0 0 0 0;
  }
  .popcontent .contentBox .txt {
    width: 90%;
    margin: 20px auto 0 auto;
    font-size: 3.4vw;
    font-weight: 600;
    line-height: 1.8;
  }
  .popcontent .contentBox .txt span {
    color: #c9151e;
  }

  .popcontent .popcbtn {
    position: absolute;
    top: -10px;
    right: -9px;
    width: 50px;
  }
} /*====================*/
