@charset "utf-8";
.scroll-hint-icon-wrap {
    position: absolute;
    top: 15%;
    left: 0;
    width: 100%;
	height: auto;
    max-height: 100%;
    pointer-events: none;
    z-index: 1;
}
.scroll-hint-icon{
	height: auto;
}
.scroll-hint-text {
	font-family: "YuGothic", "游ゴシック", "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro", "Meiryo","メイリオ",sans-serif;
	font-size: 0.8em;
	font-weight: 700;
}

/*アニメーション フェード*/
.animation{
    animation: fadezoom infinite;
    animation-duration: 40s;
    animation-delay: 0s;
    animation-fill-mode: forwards infinite;
    animation-iteration-count: infinite;
    -webkit-animation-name: fadezoom;
    animation-name: fadezoom;
    -webkit-animation-duration: 40s;
    animation-duration:40s;
    -webkit-animation-timing-function: cubic-bezier(0,0,.58,1);
    animation-timing-function: cubic-bezier(0,0,.58,1);	

}
@keyframes fadezoom {
  0% {
    transform: scale(1.4);
  }
  100% {
    transform: scale(1);
  }
}

/*アニメーション 横*/
.animation2{
    animation: slide 15s -15s linear infinite;
	animation-direction:alternate;	

}
@keyframes slide {
	0%{ 
	transform: translate(50px, 0);
	}
	100%{ transform: translate(-50px, 0)}
}

#loading{
	position: fixed;
	width: 100%;
	height: 100%;
	background: #fff;
	z-index: 100;
	/* display: none; */
	overflow: hidden;
}

#loading .active {
	z-index:1;
	display:none;
}

#loading .loadingbox {
	font-family: 'Noto Serif JP', serif;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 100%;
	text-align: center;
	height: 100%;
	bottom: 0;
	z-index: 100;

}
#loading .loadingbox.blur {
	opacity: 1;
}
#loading .loadingbox.hide {
background: none;

}

#loading .loadingbox img.pcc {
	width:100%;
  opacity: 1;
  -moz-transition: -moz-transform 0.5s linear;
  -webkit-transition: -webkit-transform 0.5s linear;
  -o-transition: -o-transform 0.5s linear;
  -ms-transition: -ms-transform 0.5s linear;
  transition: transform 0.5s linear;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;	
}
#loading .loadingbox img.npc {
	display: none !important;
}
      
#loaderbg {
	position: fixed;
	z-index: 0;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
 }
#loaderbg:before{
	content:"";
	line-height: 1;
	position: fixed;
	z-index: 0;
	left: 0;
  transform: scale(0, 1);
  transform-origin: right top;
	display: block;
	width: 100%;
	height: 100%;
	margin: auto;
	transition: .5s;
	background: none;

}
#loaderbg:before{
	left: 0;
  transform-origin: left top;
  transform: scale(1, 1);	
	background: rgba(255,255,255,0.3);	
}

 
.loaded #loaderbg:before{
    width: 0;
    -webkit-transform: translateX(-1%);
    -ms-transform: translateX(-1%);
    transform: translateX(-1%);
}

/*徐々にぼかしでフェードアウト*/
.sblur {
  -webkit-animation-name: sblur;
  animation-name: sblur;
  transition: .8s;	
	opacity: 0;
}


@-webkit-keyframes sblur {
  from {
    opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }

  to {
    opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }
}
@keyframes sblur {
  from {
    opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }

  to {
      opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }
}



/*inview*/
.blur {
  opacity: 0;
  -moz-transition: -moz-transform 0.5s linear;
  -webkit-transition: -webkit-transform 0.5s linear;
  -o-transition: -o-transform 0.5s linear;
  -ms-transition: -ms-transform 0.5s linear;
  transition: transform 0.5s linear;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
.img-blur {
  -webkit-animation-name: imageBlur;
  animation-name: imageBlur;
 /* opacity: 1;*/
  transition: .8s;
}

@-webkit-keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }

  to {
    opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}
@keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }

  to {
      opacity: 1;

    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}

/*++++++++++++
movie
++++++++++++*/
/*スクロール*/
.scroll {
	cursor: pointer;
	position: absolute;
	width: 200px;
	bottom: 0;
	margin: auto;
	right: 0;
	overflow: hidden;
	z-index: 10;
	left: 0;
}
.scroll a:before{
	-moz-animation-name: anime1;
	-moz-animation-duration: 2s;
	-moz-animation-timing-function: ease;
	-moz-animation-iteration-count: infinite;
	-webkit-animation-name: anime1;
	-webkit-animation-duration: 2s;
	-webkit-animation-timing-function: ease;
	-webkit-animation-iteration-count: infinite;
	-o-animation-name: anime1;
	-o-animation-duration: 2s;
	-o-animation-timing-function: ease;
	-o-animation-iteration-count: infinite;
	-ms-animation-name: anime1;
	-ms-animation-duration: 2s;
	-ms-animation-timing-function: ease;
	-ms-animation-iteration-count: infinite;
	content:"";
	position: absolute;
	top: 0;
	height: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 1px;
	text-align: center;
	z-index: 100;
	display: block;
	overflow: hidden;
}

.scroll a {
	position: relative;
	margin: 35px auto 0;
	display: block;
	text-align: center;
	cursor: pointer;
	height: 50px;
	overflow: hidden;
	z-index: 100;
	cursor: pointer;
}

.scroll span {
	display: block;
	position: absolute;
	z-index: 10;
	color: #fff;
	top: 0;
	letter-spacing: 1px;
	left: 0;
	font-family: 'Noto Serif JP', serif;
	text-align: center;
	font-size: 0.8em;
	width: 100%;
	/* display: block; */
	vertical-align: middle;
	text-align: center;
}

@-moz-keyframes anime1 {
0% {width: 1px; height: 0; background-color: none;}
100% {width: 1px; height: 120px; background-color: #fff;}
}

@-webkit-keyframes anime1 {
0% {width: 1px; height: 0; background-color: none;}
100% {width: 1px; height: 120px; background-color: #fff;}
}

@-o-keyframes anime1 {
0% {width: 1px; height: 0; background-color: none;}
100% {width: 1px; height: 120px; background-color: #fff;}
}

@-ms-keyframes anime1 {
0% {width: 1px; height: 0; background-color:none;}
100% {width: 1px; height: 120px; background-color: #fff;}
}


section#movie {
	/* overflow: hidden; */
	position: relative;
	padding: 0;
	margin: 0;
	height: 950px;
	/* z-index: 0; */
	width: 100%;
}
i-amphtml-sizer{
	padding-top: 54.5% !important;
}
#myVideo{
	height: 100vh;
}
.topdemo section#movie .overlay {
	 background: rgb(0 0 0 / 30%);
}
section#movie .overlay{
	z-index: 1;
	/* background: rgb(0 0 0 / 5%); */
	background-size: 3px;
	background: none;
}

section#movie amp-video{
	overflow: hidden;

	vertical-align: bottom;
}
section#movie ul {
	height: 100%;
}
section#movie ul li {
	transform: scale(1.20);
	position: relative;
	/* height: 630px; */
}

section#movie ul li img {
	height: auto;
}

.main{
	font-family: 'Noto Serif JP', serif;
	position:absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 1000px;
	text-align: center;
	height: 60%;
	bottom: 0;
	z-index: 0;
	/*
	-moz-transition: -moz-transform 0.5s linear;
	-webkit-transition: -webkit-transform 0.5s linear;
	-o-transition: -o-transform 0.5s linear;
	-ms-transition: -ms-transform 0.5s linear;
	transition: transform 0.5s linear;
	-webkit-animation-duration: 1.5s;
	animation-duration: 1.5s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	*/
}

/*ロード後、ビジュアルに表示*/

.fadeblur {
  filter: blur(15px);
animation: fadeblur 1s linear forwards;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	z-index: 1;
}
.main.show figure.mlogo{
	background: url("../images/common/logo_b.png") no-repeat !important;
	background-size: 100% !important;
}

.main.show b,
.main.show em {
	color:#111;
	text-shadow: none;
	opacity: 1;
}
@keyframes fadeblur {
  0% {
	
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }
    100%{
	-webkit-filter: blur(0px);
	-moz-filter: blur(0px);
	-ms-filter: blur(0px);
	-o-filter: blur(0px);
	filter: blur(0px);	
  }
}
/**/
section#movie .main em,
section#movie .main b {
	color:#fff;
}

section#movie .main figure {
	transition: unset;
	background: url("../images/common/logo.png" ) no-repeat !important;
	background-size: 100% !important;
}
section#movie .main b {
	text-shadow: none;
}


.main figure.mlogo {
	background: url("../images/common/logo_b.png" ) no-repeat !important;
	width: 205px;
	height: 500px;
	background-size: contain;
	margin: 0 auto 50px;
	transition: .3s;
}

.main img {
	width: 150px;
	margin: 0 auto 20px;
}

.main em {
	/* opacity: 0; */
	display:block;
	color: #111;
	letter-spacing: 3px;
	font-size: 0.6em;
	margin: 0 0 10px;
	transition: unset;
}

.main b{
	/* opacity: 0; */
	color: #111;
	font-size: 1.8em;
	letter-spacing: 8px;
	font-weight: 500;
	display: block;
	transition: unset;	
	text-shadow: 0 1px 5px rgb(0 0 0 / 50%);
}

.main p {
	opacity:0;
}
/*on時*/
.main.on {
	z-index: 1;
	position:relative;
}

.main.active figure {
background: url("../images/common/logo.png") no-repeat !important;
}
.main.active  {
	z-index: 1000;
	opacity: 1;
}

.main.on figure.mlogo {
	background: url("../images/common/logo_b.png") no-repeat !important;
	background-size: 100% !important;
	transition: .3s ease-out 0s;
}

.main.on b,
.main.on em {
	color: #111 !important;
	transition:.3s;
	text-shadow: none;
	opacity: 1;
}

.main.on p {
	margin: 40px auto 0;
	opacity:1;
	max-width: 100%;
	/* text-align: left; */
	font-size: 1em;
	line-height: 2.5;
	font-weight: 100;
}

.main.active b,
.main.active em {
	opacity:1;
	text-shadow: none;
	color: #fff;
}

section#movie ul li {
	height:auto;
}

/*++++++++++++
about
++++++++++++*/
section#about {
	height: 900px;
	padding: 100px 0 200px;
}
section#about .main {
	position: relative;
}

/*++++++++++++
timetable
++++++++++++*/
section#timetable {
	padding: 100px 0;
	/* background: #f7f7f7; */
}

section#timetable .timetablebox {
	flex-wrap: wrap;
	/* align-items: center; */
	background: #fff;
	padding: 70px 30px 45px;
	margin: -1px auto 0;
	border: 1px solid #c31315;
	/* border-bottom: none; */
	box-sizing: border-box;
	box-shadow: 0 0 0 rgb(0 0 0 / 10%);
}

section .datetab {
	/* width: 18%; */
	/* border-right: 1px solid #eee; */
	/* padding: 50px 0; */
	max-width: 1000px;
	margin: 0 auto 0;
}

section .datetab a{
	display: block;
	padding: 40px 0;
	width: 32%;
	background: #fff;
	color: #c31315;
	/* border-radius: 5px 5px 0 0; */
	font-size: 1.2em;
	letter-spacing: 2px;
	border: 1px solid #c31315;
	display: block;
	padding: 18px 50px 17px;
	letter-spacing: 1px;
	box-sizing: border-box;
	text-align: center;
	font-weight: 500;
	transition:.3s;
}
section .datetab a:hover {
	background: #c31315 !important;
	transition:.3s;
	color: #fff;
}
section .datetab a.active {
	background: #c31315 !important;
	color: #fff !important;
	/* border: none; */
	border-bottom: none;
}

section#timetable .timetablebox .flexd {
	justify-content: space-between;
	margin: 0 0 60px;
}

section#timetable .timetablebox .datebox{
	/* width: 25%; */
	/* border-right: 1px solid #eee; */
	box-sizing: border-box;
	/* height: 500px; */
	/* background: #f7f7f7; */
	display: flex;
	align-items: center;
	justify-content: center;
	}

section#timetable .timetablebox .datebox b {
	font-size: 3em;
	font-weight: 500;
	letter-spacing: 3px;
	padding: 0 0 10px;
	text-align: center;
	font-family: YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

section#timetable .timetablebox .time-content{
	display: none;
}
section#timetable .timetablebox .time-content.active{
	display: block;
animation-name: fade-in1;
    animation-duration: .5s;
    animation-timing-function: ease-out;		
}

section#timetable .timetablebox .time-content ul {
	display: flex;
	justify-content: space-between;
	/* flex-wrap: wrap; */
	/* width: 100%; */
	padding: 0 0 10px;
	justify-content: left;
	align-items: unset;
}
section#timetable .timetablebox .time-content ul li{
	position: relative;
	width: 18%;
	margin: 0 10px 0 0;
}
section#timetable .timetablebox .time-content ul li em {
	max-height: 30px;
	height: 100%;
}
section#timetable .timetablebox .time-content ul li strong {
	color: #c31315;
}

section#timetable .timetablebox .time-content ul li:last-child {
	margin:0;
}

section#timetable .timetablebox .time-content ul li dl{
	/* background: #f7f7f7; */
	border-radius: 5px;
	/* border: 1px solid #ccc; */
	padding: 5px;
	margin: 0 0 20px;
	width: 100%;
	box-sizing: border-box;
	position: relative;
}

section#timetable .timetablebox .time-content ul li dl:last-child {
	margin:0;
}
section#timetable .timetablebox .time-content .schedule {
	position:relative;
	overflow: hidden;
}
section#timetable .timetablebox .time-content .schedule:before {
	content:"";
	background: #ccc;
	position: absolute;
	left: 13px;
	width: 1px;
	height: 75%;
	top: 0;
	z-index: 1;
	bottom: 0;
	margin: auto;
}

section#timetable .timetablebox .time-content ul li dt{
	display: flex;
	align-items: center;
	justify-content: left;
	position: relative;
}

section#timetable .timetablebox .time-content ul li dt b{
	font-weight: 500;
	margin: 0 20px 0 30px;
	font-size: 1.1em;
	height: 20px;
	line-height:1.1;
}

section#timetable .timetablebox .time-content ul li dt p{
	font-size: 1em;
	font-weight: 500;
	display: none;
}


section#timetable .timetablebox .time-content ul li dl.end {
	/* background: #111; */
	/* border: 1px solid #f7f7f7; */
}

section#timetable .timetablebox .time-content ul li dl.end dt,
section#timetable .timetablebox .time-content ul li dl.end dt p {
	/* color:#fff; */
}


section#timetable .timetablebox .time-content ul dt:before{
	content:"";
	background: #fff;
	position: absolute;
	width: 15px;
	height: 15px;
	border-radius: 100%;
	left: 0;
	border: 1px solid #ccc;
	box-sizing: border-box;
	z-index: 0;
}
section#timetable .timetablebox .time-content ul dt:after{
	content:"";
	background: #ccc;
	position: absolute;
	width: 9px;
	height: 9px;
	border-radius: 100%;
	left: 3px;
	margin: auto;
	box-sizing: border-box;
}

/*start*/
section#timetable .timetablebox .time-content ul li.start {
	width: 160px;
	margin: 98px 10px 0 0;
}
section#timetable .timetablebox .time-content ul li.start dl {
	background: none;
	padding: 6.5px 12px;
	border: none;
}
section#timetable .timetablebox .time-content ul li.start dt b{
	margin:0;
	line-height: 1.5;
	display: none;
}

section#timetable .timetablebox .time-content ul li.start dt p {
	line-height: 1.25;
	display:block;
	color: #c31315;
}
section#timetable .timetablebox .time-content ul li.start .schedule:before,
section#timetable .timetablebox .time-content ul li.start dt:before,
section#timetable .timetablebox .time-content ul li.start dt:after{
	display:none;
}

section#timetable .timetablebox .time-content .hosoku {
	padding: 20px 0;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
	margin: 20px 0 50px;
}

section#timetable .timetablebox .time-content .hosoku em {
	display:block;
	font-weight: 500;
	padding: 0 0 5px;
	letter-spacing: 0;
}

section#timetable .timetablebox .time-content .hosoku em:last-child {
	padding:0;
}

/*++++++++++++
kanranken
++++++++++++*/
section#kanranken {
	padding:0;
}

section#kanranken .button3 {
	max-width: 318px;
}

section#kanranken .datetab {
	max-width: 1000px;
	margin: 0 auto 20px;
	/* float: right; */
	width: 100%;
}

section#kanranken .datetab a {
	border:none;
	background: #f7f7f7;
}
section#kanranken .inner {
	max-width:1400px;
	padding: 0 40px 70px;
	margin: 0 auto 100px;
	box-sizing: border-box;
	border-left: 1px solid #c31315;
	border-right: 1px solid #c31315;
	border-bottom: 1px solid #c31315;
}

section#kanranken .kanran-content {
	display:none;
	clear: both;
	margin: 0 auto 50px;
}
section#kanranken .kanran-content.active {
	display:block;
}


/*観覧券*/
section#kanranken .kanranken {
	align-items: center;
}

section#kanranken .kanranken .kanran_ttl {
	width: 27%;
	text-align: center;
}

section#kanranken .kanranken .kanran_ttl .button3 {
	margin: auto;
}

section#kanranken .kanranken .kanrankenbox {
	width: 1000px;
	margin: auto;
}
section#kanranken .kanranken .kanrankenbox ol{
	border: none;
	margin: 0;
	display:flex;
	padding: 0;
}

section#kanranken .kanranken .kanrankenbox ol li{
	border: 1px solid #ccc;
	width: 100% !important;
	padding: 0;
	/* height: 200px; */
	box-sizing: border-box;
	/* background: #f7f7f7; */
	margin: 0 !important;
	border-right: none;
}

section#kanranken .kanranken .kanrankenbox ol li:last-child{
	margin: 0 !important;
	border: 1px solid #ccc;
}

section#kanranken .kanranken .kanrankenbox ol li dl {
	padding: 15px;
}

section#kanranken .kanranken .kanrankenbox ol li dd {
	padding: 4px 0 0 20px;
}

section#kanranken .kanranken .kanrankenbox ol li dd p {
	font-size: 0.9em;
	line-height: 2;
}
section#kanranken .kanranken .kanrankenbox ol li dd p b {
	font-weight:normal;
}

section#kanranken .kanranken .kanrankenbox ol li h6 {
    background: #f7f7f7;
    padding: 10px;
    border-bottom: 1px solid #ccc;
    font-size: 1em;
    border-left: none;
    text-align: center;
    letter-spacing: 1px;
    margin: 0;
}

section#kanranken .kanranken .kanrankenbox ol li h6:before {
	display:none;
}

/*++++++++++++
access
++++++++++++*/
section#access {
	/* background: #212121; */
	max-width: 1400px;
	width: 100%;
	margin: auto;
	padding: 0 0 50px;
	overflow: hidden;
	/* background: #fff; */
}

section#access figure {
	position:relative;
	/* width: 1200px; */
	margin: auto;
}

section#access .accessbox {
    background: #fff;
    position: absolute;
    /* display: none; */
    /* right: 0; */
    z-index: 1000;
    border: 1px solid #ccc;
    width: 28%;
    /* margin: auto; */
    /* height: 78%; */
    box-sizing: border-box;
    left: 0;
    bottom: 4%;
    padding: 30px 30px;
}

section#access .accessbox h3,
section#access .accessbox p {
    color:#fff;
    text-align: center;
}

section#access ul {
    /* border-top: 1px solid #666; */
    overflow: hidden;
}
section#access li {
    border-bottom: 1px solid #666;
}
section#access li:last-child {
	border:none;
}

section#access li a{
    /* color: #fff; */
    padding: 18px 5px;
    display: block;
    background: url(../images/common/arrow.png) center right 2% no-repeat;
    background-size: 12px;
    transition: .3s;
}

section#access li a:hover {
}

section#access li b{
    display: block;
    font-size: 1.2em;
    font-weight: normal;
    letter-spacing: 2px;
}

section#access li em{
    font-size: 0.8em;
    color: #999;
    letter-spacing: 1px;
}

section#access ul.accesstab {
	border: none;
}

section#access ul.accesstab li{
	position: absolute;
	height: 95px;
	border: none;
}

section#access ul.accesstab li a {
	border: none;
	/* background: rgba(0,0,0,0.7); */
	/* background: #8a7557; */
	background: #c31315;
	/* width: 100px; */
	padding: 10px 20px;
	border-radius: 5px;
	color: #fff;
	text-align: center;
	/* border: 1px solid #fff; */
	letter-spacing: 3px;
	font-size: 1.1em;
}

section#access ul.accesstab li .line {
	position: absolute;
	background: #c31315;
	height: 30px;
	width: 2px;
	left: 0;
	right: 0;
	margin: auto;
}

section#access ul.accesstab li:nth-child(1){
	right: 12%;
	top: 0;
}

section#access ul.accesstab li:nth-child(2){
	top: 53%;
	left: 31%;
}

section#access ul.accesstab li:nth-child(3){
	right: 5%;
	bottom: 6%;
}

section#access ul.accesstab li:nth-child(4){
	left: 56%;
	top: 50%;
}

section#access ul.accesstab li .cercle {
    width: 40px;
    height: 40px;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: #fffdeb69;
    border-radius: 100%;
}

section#access ul.accesstab li .cercle {
}


section#access ul.accesstab li .cercle:after {
    content:"";
    width: 100%;
    height: 100%;
    background: rgba(195,19,21,0.4);
    border-radius: 100%;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    animation:Circle 2s ease-out infinite normal;
}




@keyframes Circle{
    0%{
        transform:scale(1);
        opacity:0
    }
    40%{
        transform:scale(1);
        opacity:1
    }
    to{
        transform:scale(1.5);
        opacity:0
    }
}

.tabbox {
	display: none;
}

.venoframe, .vbox-inline {
	max-width: 700px;
	text-align: center;
	padding: 0 !important;
	/* background: #151414 !important; */
	box-shadow: none;
	overflow: hidden;
	/* border: 1px solid #ccc; */
}

.vbox-inline h5 {
	/* color:#fff; */
	text-align: left;
	/* margin: 0 20px; */
}

.vbox-inline p{
	/* color: #fff; */
	text-align: left;
	font-size: 0.9em;
	line-height: 2;
	/* margin: 0 20px 50px; */
}

/*++++++++++++
route
++++++++++++*/
section#route{padding: 80px 0;}

section#route {background: #fff;}

section#route li {
	/* border: 1px solid #222; */
	width: 100%;
	margin: 0 5% 0 0;
	/* padding: 40px; */
	/* text-align: center; */
}

section#route li:last-child {margin: 0;}

section#route li h6 {
    /* border: 1px solid #222; */
    padding: 10px;
    /* background: #eee; */
}

section#route li h6:before {
	display:none;
}

section#route li b {
	font-weight: 500;
	font-size: 1.1em;
	letter-spacing: 2px;
	display: block;
}

section#route li dl {
    border-top: 1px solid #ccc;
    padding: 20px 0;
    align-items: center;
    justify-content: space-between;
}

section#route li dl:last-child {
	 border-bottom: 1px solid #ccc;
	 /* border-top: none; */
}

section#route li dt {
	width:30%;
}

section#route li dt p {
    letter-spacing: 1px;
    /* font-size: 1.1em; */
}

section#route li dd {
	width: 70%;
	padding: 0 10px;
}
section#route li dd p {
	line-height:1.6;
	color: #666;
}

section#route li dd a.button_pdf {
	max-width: 230px;
	float: right;
}


/*++++++++++++
contents
++++++++++++*/
section#contents {padding: 0;}
section#contents .inner {
	max-width: 100%;
}

section#contents .inner ul {
	/* flex-wrap: wrap; */
}

section#contents .inner li {
    width: 100%;
}

section#contents li a {
	overflow: hidden;
	position: relative;
	display: block;

}
section#contents li a figure {
	margin: 0;
	height: 300px;
}
section#contents li a h6 {
	transition: 0.8s;	
}
section#contents li a:hover h6 {
	opacity:0;
	transition: 0.8s;		
}
section#contents li a:hover .overlay {
	background:none;
	transition:0.8s;
}

section#contents h6{
	color: #fff;
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	top: 0;
	bottom: 0;
	background: none;
	writing-mode: vertical-lr;
	margin: auto;
	left: 0;
	border: none;
	z-index: 9 !important;
	padding: 0;
	right: 0;
	font-weight: 100;
	font-size: 1.5em;
	letter-spacing: 10px;
}
section#contents h6:before {
	display:none;
}
/*ノートPC等*/
@media screen and (max-width: 1699px) {
#loading .loadingbox img {
	height:800px;
	width: 100%;
}	
#loading .loadingbox img.pcc,
#loading .loadingbox img.tbl,
#loading .loadingbox img.tblt,
#loading .loadingbox img.sp,
#loading .loadingbox img.spt	{
	display: none !important;
}	
#loading .loadingbox img.npc {
	display: block !important;
}		
/*++++++++++++
movie
++++++++++++*/
/*headnews*/
#headnews {
}

#headnews h6 {
}

#headnews dl{
}

#headnews dt{
}

section#movie {height: auto;}


.main{width: auto;height: 70%;}
.main figure.mlogo {
	width: 155px;
	height: 390px;
	background-size: 100% !important;
}	

.main img {
	width: 150px;
	margin: 0 auto 20px;
}


/*++++++++++++
about
++++++++++++*/
section#about {
	/* height: 700px; */
}


/*++++++++++++
access
++++++++++++*/
section#access {
	height:auto;
}
section#access figure {width: 75%;}
section#access ul.accesstab li:nth-child(1){
	right: 9%;
	top: 0;
}

section#access ul.accesstab li:nth-child(2){
	top: 50%;
	left: 31%;
}

section#access ul.accesstab li:nth-child(3){
}

section#access ul.accesstab li:nth-child(4){
	left: 52%;
	top: 50%;
}

section#access .accessbox {
    left: 3%;
    bottom: 0;
}
section#access ul {
	margin: 0 0 30px;
}	
section#access li a {
	padding: 10px 5px;
}
section#access li b {
	font-size: 1em;
}
/*++++++++++++
route
++++++++++++*/


section#route li dl:last-child {
	 border-bottom: 1px solid #ccc;

	 /* border-top: none; */
}

section#route li dt {
	width:30%;
}

/*++++++++++++
contents
++++++++++++*/
section#contents li a h6 {letter-spacing: 5px;}
section#contents li a:hover h6 {
}
section#contents li a:hover .overlay {
	background:none;
	transition:0.8s;
}
/*++++++++++++
timetable
++++++++++++*/

section#timetable .timetablebox .flexd {
	justify-content: space-between;
	margin: 0 0 60px;
}

section#timetable .timetablebox .datebox{
	/* width: 25%; */
	/* border-right: 1px solid #eee; */
	box-sizing: border-box;
	/* height: 500px; */
	/* background: #f7f7f7; */
	display: flex;
	align-items: center;
	justify-content: center;
	}

section#timetable .timetablebox .datebox b {
	font-size: 3em;
	font-weight: 500;
	letter-spacing: 3px;
	padding: 0 0 10px;
	text-align: center;
	font-family: YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

section#timetable .timetablebox .time-content{
	display: none;
}


section#timetable .timetablebox .time-content ul li dl:last-child {
	margin:0;
}


section#timetable .timetablebox .time-content ul li dt p{
	font-size: 1em;
	font-weight: 500;
	display: none;
}


/*start*/

section#timetable .timetablebox .time-content ul li.start dl {padding: 7px 12px;}
section#timetable .timetablebox .time-content ul li.start dt b{
}

section#timetable .timetablebox .time-content ul li.start .schedule:before,
section#timetable .timetablebox .time-content ul li.start dt:before,
section#timetable .timetablebox .time-content ul li.start dt:after{
	display:none;
}


section#kanranken .inner {
	max-width:90%;
}	



}

@media screen and (max-width: 1299px) {
#loading .loadingbox img.pcc,
#loading .loadingbox img.tbl,
#loading .loadingbox img.npc,
#loading .loadingbox img.sp,
#loading .loadingbox img.spt	{
	display: none !important;
}	
#loading .loadingbox img.tblt {
	display: block !important;
}	

.main{height: 65%;}

.main figure.mlogo {width: 130px;height: 330px;margin: 0 auto 20px;background-size: 100% !important;}

.main img {
	width: 150px;
	margin: 0 auto 20px;
}

.main em {
}

.main b{
	font-size: 1.7em;
}

.main p {
}
/*on時*/
.main.on {
}

.main.on figure.mlogo {background-size: 100% !important;}

.main.on b,
.main.on em {
}

.main.on p {}
section#movie {
	height: 663px;
}
/*++++++++++++
about
++++++++++++*/
section#about {
    padding: 100px 0 0;
    height: 800px;
}




/*++++++++++++
access
++++++++++++*/
section#access {height: auto;padding: 0 0 50px;}

section#access figure {width: 100%;}
section#access .accessbox {padding: 20px;}
	section#access .accessbox ul {
}

section#access .accessbox h3,
section#access .accessbox p {font-size: 0.9em;letter-spacing: 1px;}

section#access ul.accesstab li{
}

section#access ul.accesstab li a {
	padding: 10px;
	font-size: 1em;
}

section#access ul.accesstab li .line {
	width: 1px;
}
section#access ul {
	margin:0;
}
section#access ul.accesstab li:nth-child(1){
    top: -2%;
    right: 12%;
}

section#access ul.accesstab li:nth-child(2){left: 32%;top: 50%;}

section#access ul.accesstab li:nth-child(3){}

section#access ul.accesstab li:nth-child(4){left: 55%;top: 49%;}

section#access ul.accesstab li .cercle {
}

section#access ul.accesstab li .cercle {
}


section#access ul.accesstab li .cercle:after {
}




.tabbox {
}

.venoframe, .vbox-inline {
	height: 85vh;
}

.vbox-next {right: 8%;}

.vbox-prev {
	left: 8%;
}
.vbox-inline h5 {
}

.vbox-inline p{
}

/*++++++++++++
route
++++++++++++*/

section#route li:last-child {margin: 0;}


section#route li dl:last-child {
	 border-bottom: 1px solid #ccc;
	 /* border-top: none; */
}

section#route li dt p {
    font-size: 1em;
    letter-spacing: 0;
}

section#route li dd a.button_pdf {
	max-width: 200px;
}


/*++++++++++++
contents
++++++++++++*/
section#contents {padding: 0;}
section#contents .inner {
	max-width: 100%;
}

section#contents .inner ul {
	/* flex-wrap: wrap; */
}

section#contents .inner li {
    width: 100%;
}

section#contents li a {
}
/*++++++++++++
timetable
++++++++++++*/

section .datetab {
	max-width: 90%;
	display: flex;
}


section .datetab a.active {
}

section#timetable .timetablebox .flexd {
	justify-content: space-between;
	margin: 0 0 60px;
}

section#timetable .timetablebox .datebox{
	/* width: 25%; */
	/* border-right: 1px solid #eee; */
	box-sizing: border-box;
	/* height: 500px; */
	/* background: #f7f7f7; */
	display: flex;
	align-items: center;
	justify-content: center;
	}

section#timetable .timetablebox .datebox b {
	font-size: 3em;
	font-weight: 500;
	letter-spacing: 3px;
	padding: 0 0 10px;
	text-align: center;
	font-family: YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

section#timetable .timetablebox .time-content{
	display: none;
}

section#timetable .timetablebox .time-content ul li:last-child {
}


section#timetable .timetablebox .time-content .schedule:before {left: 13px;}

section#timetable .timetablebox .time-content ul li dt b{font-size: 1em;}

section#timetable .timetablebox .time-content ul li dt p{
	font-size: 1em;
	font-weight: 500;
	display: none;
}


/*start*/

section#timetable .timetablebox .time-content ul li.start dt b{
}

section#timetable .timetablebox .time-content ul li.start .schedule:before,
section#timetable .timetablebox .time-content ul li.start dt:before,
section#timetable .timetablebox .time-content ul li.start dt:after{
	display:none;
}

/*観覧券*/
section#kanranken .kanranken .kanran_ttl {
	width: 25%;
	text-align: center;
}

section#kanranken .kanranken .kanrankenbox {
	width: 95%;
}


section#kanranken .kanranken .kanrankenbox ol li:last-child{
	margin: 0 !important;
	border: 1px solid #ccc;
}

section#kanranken .kanranken .kanrankenbox ol li dd {
	padding: 4px 0 0 20px;
}

section#kanranken .kanranken .kanrankenbox ol li dd p {
	font-size: 0.9em;
	line-height: 2;
}

}

/*タブレット*/
@media screen and (max-width: 1023px) {
#loading .loadingbox img.pcc,
#loading .loadingbox img.npc,
#loading .loadingbox img.tbl,
#loading .loadingbox img.sp,
#loading .loadingbox img.spt	{
	display: none !important;
}	
#loading .loadingbox img.tblt {
	display: block !important;
}		
/*++++++++++++
movie
++++++++++++*/
/*headnews*/
#headnews {
}

#headnews h6 {
	font-size: 0.7em;
	letter-spacing: 2px;
	margin: 0 0 8px;
}

#headnews dl{
	display: flex;
	align-items: center;
}

#headnews dt{
	font-size: 0.75em;
	letter-spacing: 1px;
	margin: 0 20px 0 0;
}

#headnews dd a{
	font-size: 0.8em;
}

section#movie {
}

section#movie .overlay{
}

section#movie amp-video{
}
	section#movie .amp p {
		display: none;
	}	

.main{width: auto;height: auto;}

.main figure.mlogo {
    background-size: 100% !important;
    width: 100px;
    height: 300px;
    margin: 50px auto 0;
}

.main img {
	width: 150px;
	margin: 0 auto 20px;
}

.main em {
    letter-spacing: 1px;
    width: 95%;
    margin: 0 auto 10px;
}

.main b{font-size: 1.4em;}

.main p {
}
/*on時*/
.main.on {
	position:relative;
	max-width: 90%;
}

.main.on figure.mlogo {
}

.main.on b,
.main.on em {
}

.main.on p {
    max-width: 85%;
}

/*++++++++++++
about
++++++++++++*/
section#about {}



/*++++++++++++
access
++++++++++++*/
section#access {
	height: auto;
}

section#access .accessbox {position: relative;width: 60%;margin: auto;}

section#access .accessbox h3,
section#access .accessbox p {font-size: 0.8em;}


section#access li a:hover {
}

section#access li b{
    font-size: 1em;
}

section#access li em{
    font-size: 0.7em;
}

section#access ul.accesstab {
}

section#access ul.accesstab li{
	height: 75px;
}

section#access ul.accesstab li a {
	font-size: 0.9em;
	width: auto;
	padding: 5px 10px;
	letter-spacing: 0;
}

section#access ul.accesstab li .line {
	height: 30px;
	width: 1px;
}

section#access ul.accesstab li:nth-child(1){top: -5%;right: 10%;}

section#access ul.accesstab li:nth-child(2){left: 32%;top: 48%;}

section#access ul.accesstab li:nth-child(3){right: 5%;}

section#access ul.accesstab li:nth-child(4){
	top: 48%;
	left: 53%;
}

section#access ul.accesstab li .cercle {
    width: 40px;
    height: 40px;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: #fffdeb69;
    border-radius: 100%;
}

section#access ul.accesstab li .cercle {width: 30px;height: 30px;}


section#access ul.accesstab li .cercle:after {
}




.tabbox {
}

.venoframe, .vbox-inline {
	max-width: 700px;
	text-align: center;
	padding: 30px !important;
	/* background: #151414 !important; */
	box-shadow: none;
	overflow: hidden;
}

.vbox-inline h5 {
}


.vbox-inline p{
}

/*++++++++++++
route
++++++++++++*/
section#route{padding: 80px 0;}

section#route ul {display: block;}

section#route li {margin: 0 0 50px;}

section#route li:last-child {margin: 0;}

section#route li h6 {
}

section#route li b {font-size: 1em;}

section#route li dl:last-child {
	 border-bottom: 1px solid #ccc;
	 /* border-top: none; */
}

section#route li dd {
	width: 70%;
}

section#route li dd a.button_pdf {
}


/*++++++++++++
contents
++++++++++++*/
section#contents {padding: 0;}
section#contents .inner {
	max-width: 100%;
}

section#contents .inner ul {
	flex-wrap: wrap;
}

section#contents .inner li {
    width: 33%;
}

section#contents li a {
}
section#contents li a figure {
	height:auto;
}	

section#contents h6{font-size: 1em;letter-spacing: 0;}
/*++++++++++++
timetable
++++++++++++*/
section#timetable .inner {
	max-width:100%;
}	
section#timetable .timetablebox {padding: 30px 30px 40px;border-bottom: 1px solid #eee;margin: -1px auto 0;border-left: none;border-right: none;}


section .datetab a{
	font-size: 0.9em;
	padding: 18px 30px 17px;
}

section#timetable .timetablebox .flexd {
	justify-content: space-between;
	margin: 0 0 60px;
}

section#timetable .timetablebox .datebox{
	/* width: 25%; */
	/* border-right: 1px solid #eee; */
	box-sizing: border-box;
	/* height: 500px; */
	/* background: #f7f7f7; */
	display: flex;
	align-items: center;
	justify-content: center;
	}

section#timetable .timetablebox .datebox b {
	font-size: 3em;
	font-weight: 500;
	letter-spacing: 3px;
	padding: 0 0 10px;
	text-align: center;
	font-family: YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

section#timetable .timetablebox .time-content{
}

section#timetable .timetablebox .time-content ul li{width: 14%;}
section#timetable .timetablebox .time-content ul li strong {
	font-size: 1em;
	letter-spacing: 0;
}
section#timetable .timetablebox .time-content ul li:last-child {
}

section#timetable .timetablebox .time-content .schedule {
}
section#timetable .timetablebox .time-content .schedule:before {left: 12px;}

section#timetable .timetablebox .time-content ul li dt p{
	font-size: 0.9em;
}




/*start*/
section#timetable .timetablebox .time-content ul li.start {
	width: 150px;
	margin: 60px 10px 0 0;
}
section#timetable .timetablebox .time-content ul li.start dl {padding: 11px 0;margin: 0 0 10px;}
section#timetable .timetablebox .time-content ul li.start dt b{
}

section#timetable .timetablebox .time-content ul li.start dt p {
}
section#timetable .timetablebox .time-content ul li.start .schedule:before,
section#timetable .timetablebox .time-content ul li.start dt:before,
section#timetable .timetablebox .time-content ul li.start dt:after{
	display:none;
}

/*観覧券*/
section#kanranken .kanranken {
	display: block;
}

section#kanranken .kanranken .kanran_ttl {
	width: auto;
	margin: 0 auto 50px;
}

section#kanranken .kanranken .kanrankenbox {
	width: auto;
}
section#kanranken .kanranken .kanrankenbox ol li:last-child{
	margin: 0 !important;
	border: 1px solid #ccc;
}

section#kanranken .kanranken .kanrankenbox ol li dd {
	padding: 4px 0 0 20px;
}

section#kanranken .kanranken .kanrankenbox ol li dd p {
	font-size: 0.9em;
	line-height: 2;
}
section#kanranken .inner {
	padding: 30px 0;
	border-top: none;
	border: none;
}	
}

/*スマホ横*/
@media screen and (max-width: 767px) {
		
/*++++++++++++
movie
++++++++++++*/

section#movie amp-video{width: 100%;height: 863px;}

.main{height: 70%;width: 100%;}

.main figure.mlogo {width: 130px;height: 330px;background-size: 100% !important;margin: 0 auto 20px;}

.main img {
	width: 150px;
	margin: 0 auto 20px;
}

.main b{font-size: 1.2em;letter-spacing: 5px;max-width: 90%;margin: auto;}

.main p {
	opacity:0;
}
/*on時*/
.main.on {
}

.main.on figure.mlogo {background-size: 100% !important;}


.main.on p {max-width: 90%;}

/*++++++++++++
about
++++++++++++*/
section#about {height: auto;padding: 0 0 50px;}




/*++++++++++++
access
++++++++++++*/
section#access {padding: 0 0 80px;}


section#access ul {
}

section#access ul.accesstab li:nth-child(1){right: 10%;top: -7%;}

section#access ul.accesstab li:nth-child(2){top: 45%;left: 31%;}

section#access ul.accesstab li:nth-child(3){right: 2%;bottom: 6%;}

section#access ul.accesstab li:nth-child(4){
	left: 51%;
	top: 44%;
}

section#access ul.accesstab li .cercle {
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: #fffdeb69;
    border-radius: 100%;
}


section#access ul.accesstab li .cercle:after {width: 80%;height: 80%;}


/*++++++++++++
route
++++++++++++*/
section#route{padding: 80px 0;}
section#route li:last-child {margin: 0;}

section#route li dl:last-child {
	 border-bottom: 1px solid #ccc;
	 /* border-top: none; */
}
section#route li dt {width: 100%;margin: 0 0 10px;text-align: left;}

section#route li dt p {
    letter-spacing: 1px;
    font-size: 1.1em;
}

section#route li dd {
	width: auto;
}

section#route li dd a.button_pdf {
	max-width: 230px;
	float: right;
}
	


/*++++++++++++
contents
++++++++++++*/
section#contents {padding: 0;}
section#contents .inner li {
	width: auto;
}
section#contents li a figure {
	height: 150px;
}	

section#contents .inner ul {display: block;}

ection#contents li a {
	overflow: hidden;
	position: relative;
	display: block;

}
section#contents li a:hover .overlay {
	background:none;
	transition:0.8s;

}


section#contents h6{font-size: 1.3em;writing-mode: inherit;}
/*++++++++++++
timetable
++++++++++++*/
section#timetable {
	padding: 50px 0;
	overflow: hidden;
}

section#timetable .inner {
	max-width:100%;
}

section .datetab a{
    padding: 12px;
}

section .datetab a.active {
}

section#timetable .timetablebox .flexd {
	justify-content: space-between;
	margin: 0 0 60px;
}

section#timetable .timetablebox .datebox{
	/* width: 25%; */
	/* border-right: 1px solid #eee; */
	box-sizing: border-box;
	/* height: 500px; */
	/* background: #f7f7f7; */
	display: flex;
	align-items: center;
	justify-content: center;
	}

section#timetable .timetablebox .datebox b {
	font-size: 3em;
	font-weight: 500;
	letter-spacing: 3px;
	padding: 0 0 10px;
	text-align: center;
	font-family: YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

section#timetable .timetablebox .time-content ul li{
    width: 21%;
}

section#timetable .timetablebox .time-content ul li:last-child {
}


section#timetable .timetablebox .time-content ul li dt b{font-size: 0.9em;margin: 0 10px 0 20px;}

section#timetable .timetablebox .time-content ul li dt p{
	font-size: 1em;
	font-weight: 500;
	display: none;
}


section#timetable .timetablebox .time-content ul dt:before{
}
section#timetable .timetablebox .time-content ul dt:after{
	content:"";
	background: #ccc;
	position: absolute;
	width: 9px;
	height: 9px;
	border-radius: 100%;
	left: 3px;
	margin: auto;
	box-sizing: border-box;
}

/*start*/
section#timetable .timetablebox .time-content ul li.start {margin: 92px 10px 0 0;}
section#timetable .timetablebox .time-content ul li.start dl {padding: 10px 0;margin: 0 0 10px;}
section#timetable .timetablebox .time-content ul li.start dt b{
	margin:0;
	line-height: 1.5;
	display: none;
	width: 100px;
}

section#timetable .timetablebox .time-content ul li.start dt p {
}
section#timetable .timetablebox .time-content ul li.start .schedule:before,
section#timetable .timetablebox .time-content ul li.start dt:before,
section#timetable .timetablebox .time-content ul li.start dt:after{
	display:none;
}
	

/*観覧券*/
section#kanranken .inner {max-width: 100%;padding: 0 20px 50px;margin: 0;}
	
section#kanranken .kanranken .kanrankenbox ol li:last-child{
	margin: 0 !important;
	border: 1px solid #ccc;
}
section#kanranken .kanranken .kanrankenbox ol li dd {
	padding: 4px 0 0 20px;
}

section#kanranken .kanranken .kanrankenbox ol li dd p {
	font-size: 0.9em;
	line-height: 2;
}

section#kanranken .kanranken .kanrankenbox ol li h6 {font-size: 0.9em;border-left: none;}
}

/*スマホ縦*/
@media screen and (max-width: 480px) {
#loading .loadingbox img.pcc,
#loading .loadingbox img.npc,
#loading .loadingbox img.tbl,
#loading .loadingbox img.tblt,
#loading .loadingbox img.sp	{
	display: none !important;
}	
#loading .loadingbox img.spt {
	display: block !important;
}			
/*++++++++++++
movie
++++++++++++*/
.scroll {
}
.scroll a:before{
	-moz-animation-name: anime1;
	-moz-animation-duration: 2s;
	-moz-animation-timing-function: ease;
	-moz-animation-iteration-count: infinite;
	-webkit-animation-name: anime1;
	-webkit-animation-duration: 2s;
	-webkit-animation-timing-function: ease;
	-webkit-animation-iteration-count: infinite;
	-o-animation-name: anime1;
	-o-animation-duration: 2s;
	-o-animation-timing-function: ease;
	-o-animation-iteration-count: infinite;
	-ms-animation-name: anime1;
	-ms-animation-duration: 2s;
	-ms-animation-timing-function: ease;
	-ms-animation-iteration-count: infinite;
	content:"";
	position: absolute;
	top: 0;
	height: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 1px;
	text-align: center;
	z-index: 100;
	display: block;
	overflow: hidden;
}

.scroll a {
	height: 25px;
	margin: 25px auto 0;
}

.scroll span {
	font-size: 0.7em;
}
	
/*headnews*/
#headnews {left: 0;width: 90%;margin: auto;right: 0;}

#headnews h6 {
	margin: 0 0 15px;
}

#headnews dl{
	display: block;
}

#headnews dt{font-size: 0.6em;color: #999;}

#headnews dd a{
	font-size: 0.7em;
}

section#movie {height: auto;}
section#movie ul li {
	height:630px;
}
section#movie .overlay{
}

section#movie amp-video{
    height: 690px;
}

.main{padding: 0;box-sizing: border-box;}

.main figure.mlogo {width: 130px;height: 330px;margin: 0 auto 20px;background-size: 100% !important;}

.main img {
	width: 150px;
	margin: 0 auto 20px;
}

.main em {letter-spacing: 2px;}

.main b{line-height: 2;}

.main p {
	opacity:0;
}
/*on時*/
.main.on {
	position:relative;
	padding: 0;
}

.main.on figure.mlogo {
	background: url("../images/common/logo_b.png") no-repeat;
	background-size: 100% !important;
	transition: .3s ease-out 0s;
}

.main.on b,
.main.on em {
	color:#111;
	transition:.3s;
}

.main.on p {max-width: 100%;text-align: left;letter-spacing: 0;margin: 20px auto 0;line-height: 2;font-size: 0.9em;}

/*++++++++++++
about
++++++++++++*/
section#about {
	/* height: 1500px; */
	padding: 100px 0 0;
	height: 950px;
	background: #fff;
	margin: 0;
}





/*++++++++++++
access
++++++++++++*/
section#access {padding: 0 0 20px;}
section#access .mb3 {
	margin: 0 0 30px;
}
section#access .accessbox {width: 90%;padding: 0;border: none;left: 0;}

section#access ul {margin: 0 0 10px;}
section#access li {
    border-bottom: 1px solid #666;
}


section#access li b{font-size: 1em;}

section#access li em{
    font-size: 0.8em;
    color: #999;
    letter-spacing: 1px;
}

section#access ul.accesstab {
}

section#access ul.accesstab li{height: 55px;}

section#access ul.accesstab li a {font-size: 0.7em;width: auto;}

section#access ul.accesstab li .line {height: 20px;}


section#access ul.accesstab li:nth-child(2){top: 43%;left: 29%;}

section#access ul.accesstab li:nth-child(4){top: 42%;left: 46%;}

section#access ul.accesstab li .cercle {
    width: 40px;
    height: 40px;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: #fffdeb69;
    border-radius: 100%;
}

section#access ul.accesstab li .cercle {width: 20px;height: 20px;}


.venoframe, .vbox-inline {
	max-width: 100%;
}
.venoframe, .vbox-inline {
	height:70vh;
	padding: 0 !important;
}
.vbox-next {right: 0;width: 30px;opacity: 0;}

.vbox-prev {
	left: 0;
	width: 30px;
	opacity: 0;
}

.vbox-inline h5 {
}

.vbox-inline p{
	font-size: 0.8em;
	
}

/*++++++++++++
route
++++++++++++*/
section#route{padding: 80px 0;}


section#route li:last-child {margin: 0;}

section#route li h6 {letter-spacing: 1px;}


section#route li dl {padding: 10px 0;}

section#route li dl:last-child {
	 border-bottom: 1px solid #ccc;
	 /* border-top: none; */
}


section#route li dt p {font-size: 1em;}

section#route li dd {
	width: 100%;
	text-align: left !important;
	padding: 0;
}

section#route li dd a.button_pdf {
	max-width: 70%;
	float: none;
	margin: auto;
}


/*++++++++++++

contents
++++++++++++*/
section#contents {padding: 0;}
section#contents .inner {
	max-width: 100%;
}

section#contents .inner ul {
	/* flex-wrap: wrap; */
}

section#contents li a {
	overflow: hidden;
	position: relative;
	display: block;

}

section#contents li a:hover .overlay {
	background:none;
	transition:0.8s;
}

section#contents h6{
    writing-mode: unset;
    font-size: 1em !important;
}
/*++++++++++++
timetable
++++++++++++*/
section#timetable .mb3 {margin: 0 0 30px;}	
section#timetable .inner {max-width: 100%;}

section#timetable .timetablebox {
    box-shadow: none;
    border: none;
    border-top: 1px solid #eee;
    padding: 30px 20px 20px;
    border-bottom: 1px solid #eee;
    margin: auto;
}

section .datetab {display: flex;max-width: 100%;}

section .datetab a{font-size: 0.8em;padding: 10px 4px;letter-spacing: 0;width: 100%;border-left: none;}
section .datetab a:last-child {
	border-right: none;
}
section .datetab a.active {
}

section#timetable .timetablebox .flexd {
	justify-content: space-between;
	margin: 0 0 60px;
}

section#timetable .timetablebox .datebox{
	/* width: 25%; */
	/* border-right: 1px solid #eee; */
	box-sizing: border-box;
	/* height: 500px; */
	/* background: #f7f7f7; */
	display: flex;
	align-items: center;
	justify-content: center;
	}

section#timetable .timetablebox .datebox b {
	font-size: 3em;
	font-weight: 500;
	letter-spacing: 3px;
	padding: 0 0 10px;
	text-align: center;
	font-family: YuMincho, "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

section#timetable .timetablebox .time-content{
	display: none;
}
section#timetable .timetablebox .time-content .hosoku{margin: 10px 0 0;padding: 10px 0;border-bottom: none;}

section#timetable .timetablebox .time-content ul {
	/* flex-wrap: wrap; */
	position: relative;
	overflow-x: scroll;
	padding: 0 100px 0 0;
	max-width: 1000px;
	}
section#timetable .timetablebox .time-content ul li{
	width: 120px;
	margin: 0;
	flex-shrink: 0;
}

section#timetable .timetablebox .time-content ul li:last-child {
	margin:0;
	padding: 0;
}

section#timetable .timetablebox .time-content ul li dl{padding: 5px;}

section#timetable .timetablebox .time-content .schedule {margin: 0 0 20px;}
section#timetable .timetablebox .time-content .schedule:before {left: 10px;height: 80%;}

section#timetable .timetablebox .time-content ul li dt{
}

section#timetable .timetablebox .time-content ul li dt b{
    width: 50px;
}

section#timetable .timetablebox .time-content ul li dt p{
	font-size: 1em;
	font-weight: 500;
	display: none;
}





section#timetable .timetablebox .time-content ul dt:before{
	width: 10px;
	height: 10px;
}
section#timetable .timetablebox .time-content ul dt:after{
	width: 6px;
	height: 6px;
	left: 2px;
}

/*start*/
section#timetable .timetablebox .time-content ul li.start {position: relative;top: 0;/* display: none; */left: 0;width: auto;}
section#timetable .timetablebox .time-content ul li.start dl {width: auto;padding: 0 0 5px 0;margin: 0 0 26px;}
section#timetable .timetablebox .time-content ul li.start dl:last-child {margin: 0 0 10px;}	
section#timetable .timetablebox .time-content ul li.start dt b{
	margin:0;
	line-height: 1.5;
	display: none;
}

section#timetable .timetablebox .time-content ul li.start dt p {font-size: 0.9em;}
section#timetable .timetablebox .time-content ul li.start .schedule:before,
section#timetable .timetablebox .time-content ul li.start dt:before,
section#timetable .timetablebox .time-content ul li.start dt:after{
	display:none;
}

/*観覧券*/
section#kanranken .kanranken {
	align-items: center;
}

section#kanranken .kanranken .kanran_ttl {margin: 0 auto 20px;}

section#kanranken .kanranken .kanran_ttl .button3 {
	
}

section#kanranken .kanranken .kanrankenbox .button3.sp {text-align: center;width: 150px;margin: auto;}
section#kanranken .kanranken .kanrankenbox ol{
	display: block;
}

section#kanranken .kanranken .kanrankenbox ol li{
	border-right: 1px solid #ccc;
	border-bottom: none;
}

section#kanranken .kanranken .kanrankenbox ol li:last-child{
	margin: 0 !important;
	border: 1px solid #ccc;
}

section#kanranken .kanranken .kanrankenbox ol li dl {
	padding: 10px;
}
section#kanranken .kanranken .kanrankenbox ol li dt {
	font-size: 0.9em;
}	

section#kanranken .kanranken .kanrankenbox ol li dd {
	padding: 4px 0 0 20px;
}

section#kanranken .kanranken .kanrankenbox ol li dd p {
	font-size: 0.9em;
	line-height: 2;
}

}

@media screen and (max-width: 360px) {
.main figure.mlogo {width: 100px;height: 250px;}
section#movie amp-video{height: 690px;overflow: hidden;width: 100%;}

}