@charset "UTF-8";
html {
  font-size: 62.5%;
}
body {
  font-size: 12px;
  font-size: 1.2rem;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
  color: #333333;
  line-height: 150%;
  margin: 0 auto;
  padding: 0;
  background-color: #FFFFFF;
  -webkit-text-size-adjust: 100%;
}
a {
  color: #ff0000;
  -webkit-transition: all 300ms linear;
  -moz-transition: all 300ms linear;
  -o-transition: all 300ms linear;
  -ms-transition: all 300ms linear;
  transition: all 300ms linear;
  text-decoration: none;
}
a:hover {
  color: #009ee9;
  -webkit-transition: all 300ms linear;
  -moz-transition: all 300ms linear;
  -o-transition: all 300ms linear;
  -ms-transition: all 300ms linear;
  transition: all 300ms linear;
}
a img {
  -moz-opacity: 1.00;
  opacity: 1.00;
  -webkit-transition: all 300ms linear;
  -moz-transition: all 300ms linear;
  -o-transition: all 300ms linear;
  -ms-transition: all 300ms linear;
  transition: all 300ms linear;
}
a:hover img {
  -moz-opacity: 0.75;
  opacity: 0.75;
  -webkit-transition: all 300ms linear;
  -moz-transition: all 300ms linear;
  -o-transition: all 300ms linear;
  -ms-transition: all 300ms linear;
  transition: all 300ms linear;
}
.textRed {
  color: #e70808;
}
.copyrightText {
  width: 870px;
  margin: 8px auto;
  font-size: 10px;
  font-size: 1.0rem;
  color: #000;
}
.copyrightMark {
  font-family: "Times New Roman", "Times";
}
#wrapper {
  min-width: 980px;
  background: #FFFFFF;
  background-size: auto;
}
#wrapperIn {
  width: 100%;
  overflow: hidden;
  text-align: center;
}
article {
  width: 100%;
}
/* SNS */
.snsBlockOut {
  width: 1000px;
  margin: 0 auto;
  position: relative;
  z-index: 99;
}
.snsBlock {
  height: 30px;
  margin: 10px auto 0;
  position: absolute;
  top: 0;
  right: 0;
}
.snsFb {
  height: 20px;
  padding-left: 3px;
  display: table-cell;
  vertical-align: top;
}
.snsTwitter {
  width: 75px;
  height: 20px;
  padding-left: 4px;
  display: table-cell;
  vertical-align: top;
}
.snsLine {
  width: 88px;
  height: 20px;
  padding-left: 4px;
  display: table-cell;
  vertical-align: top;
}
/*header*/
#headerWrapper {
  background-image: url(../images/bgHeader.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  position: relative;
  z-index: 1;
}
#header {
  width: 100%;
  max-width: 1024px;
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
  position: relative;
}
#header .main img {
  width: 800px;
  height: 880px;
}
#header .dl {
  text-align: center;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  bottom: 10px;
}
#header .inquiry {
  text-align: center;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  bottom: 18px;
}
.bg {
  margin: auto;
}
.bg:before {
  content: "";
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 100vh;
  background: url("../images/secBg.jpg") top center;
  background-size: cover;
}
section h1.header {
  width: 100%;
  height: 140px;
  text-align: center;
  background-image: url("../images/sec01Header.png");
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
  z-index: 10;
}
section#sec01.fixed:after {
  position: fixed;
}
section#sec01, section#sec02, section#sec03, section#sec04 {
  text-align: left;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.75;
  position: relative;
  overflow: hidden;
}
section .main {
  width: 1024px;
  margin: 0 auto;
  padding: 0;
  background-position: center top;
  background-repeat: no-repeat;
  clear: both;
  position: relative;
}
.secWrapper {
  position: relative;
  overflow: hidden;
}
/*#sec01*/
section#sec01 .main {
  text-align: center;
}
/*#sec02*/
section#sec02 h1.header {
  background-image: url("../images/sec02Header.png");
}
section#sec02 .main {
  width: 1000px;
  margin: 0 auto;
  padding: 0;
  background-position: center top;
  background-repeat: no-repeat;
  clear: both;
  text-align: center;
}
section#sec02 .main .ticket {
  width: 1000px;
  margin: 0 auto;
}
section#sec02 .main > img:first-child {
  margin-bottom: 0;
}
section#sec02 .main .textRed {
  padding-bottom: 1em;
}
section#sec02 .main .ticket {
  margin-top: 0.4em;
}
/*#sec03*/
section#sec03 h1.header {
  background-image: url("../images/sec03Header.png");
	height:170px;
}
section#sec03 .sec03bg {
  background: url(../images/sec03bg_body.png) top center repeat-y;
  position: relative;
  text-align: center;
}
section#sec03 .sec03bg:before {
  content: "";
  display: block;
  position: absolute;
  top: -28px;
  left: 0;
  right: 0;
  width: 880px;
  height: 28px;
  margin: auto;
  background: url(../images/sec03bg_header.png) top center repeat-y;
}
section#sec03 p {
  padding: 1em 1em 0;
  text-align: justify;
}
section#sec03 p:first-child {
  padding-top: 0;
}
section#sec03 .main {
  padding: 0 1em;
}
section#sec03 .main ul {
  margin-bottom: 1em;
  padding: 1em 1em 0;
  text-align: justify;
}
section#sec03 .main ul li {
  text-indent: -1em;
  padding-left: 1em;
}
section#sec03 .ticket {
  text-align: center;
  overflow: hidden;
  margin-bottom: 1.8em;
}
section#sec03 .ticket img:first-child {
  float: left;
}
section#sec03 .ticket img:last-child {
  float: right;
}
section#sec03 .sub {
  width: 764px;
  position: relative;
  margin: auto;
}
section#sec03 .sub div {
  text-align: center;
  position: relative;
  margin: 1em auto 0;
}
section#sec03 {
  position: relative;
  text-align: justify;
  text-justify: inter-ideograph;
}
/*#sec04*/
section#sec04 h1.header {
  background-image: url("../images/sec04Header.png");
  margin-top: 1.8em;
  margin-bottom: 1.0em;
}
section#sec04 .movieButton {
  margin: 44px 0;
}
/*#sec05*/
section#sec05 {
  width: 100%;
  background-color: #e6e6e6;
	text-align: justify;
	text-justify: inter-ideograph;
  position: relative;
  margin-top: 2em;
}
section#sec05 .main {
  width: 900px;
  padding-top: 20px;
  color: #000;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
section#sec05 .main .block {
  padding-bottom: 30px;
}
section#sec05 .main .block h1 {
  padding-bottom: .5em;
  text-align: center;
}
section#sec05 .main .block:nth-child(odd) {
  /*width: 390px;*/
  margin: auto;
}
section#sec05 .main .block:nth-child(even) {
  width: 510px;
}
section#sec05 .main .block h2 {
  font-size: 1.7rem;
  line-height: 1.75;
}
section#sec05 .main .block p {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.75;
}
section#sec05 .attentionBlock {
  background-color: #3d3e3f;
  padding-top: 2em;
}
section#sec05 .attentionBlock p {
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.75;
  width: 900px;
  margin: 0 auto;
	overflow: hidden;
}
section#sec05 .attentionBlock p.address {
/*	text-indent: 1em;*/
	padding-left: 2em;
	padding-right: 0;
}
section#sec05 .attentionBlock p.copyright {
  text-align: right;
  font-size: 1.2rem;
  margin-top: 1em;
}
/*#goBack*/
#goBack {
  position: fixed;
  bottom: 40px;
  right: 15px;
  z-index: 99;
}
#goBack a {
  background: #d70000;
  color: #fff;
  text-decoration: none;
  width: 50px;
  padding: 15px 0;
  text-align: center;
  display: block;
  border-radius: 5px;
}
#goBack a:hover {
  background: #E60013;
  text-decoration: none;
  color: #fff;
}
/*footer*/
#includeFooter {
  position: relative;
}
.movieButton {
  text-align: center;
}
/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8;
  filter: alpha(opacity=80);
}
.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
}
.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box;
}
.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  z-index: 1045;
}
button.mfp-close {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  z-index: 1046;
  box-shadow: none;
  touch-action: manipulation;
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #fff;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
button::-moz-focus-inner {
  padding: 0;
  border: 0;
}
button.mfp-close:hover, button.mfp-close:focus {
  opacity: 1;
}
.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}
.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 1200px;
}
.mfp-iframe-holder .mfp-close {
  top: -40px;
}
.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}
.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
  outline: none;
}

#wrapper {
  padding-top: 48px;
}
@media screen and (min-width: 801px) and (max-width: 1280px) {
  #wrapper {
    padding-top: 3.8vw;
  }
}
@media screen and (max-width: 800px) {
  #wrapper {
    padding-top: 15vw;
	width: 96%;
  }
}