navbarNavAltMarkup@charset "utf-8" ;

body {
	font-family:'M PLUS 1p', sans-serif;
	margin:0;
	padding:0;
	background-color:#000
}


/*============
nav
=============*/
nav {
  display: block;
  position: fixed;
  top: 0;
  left: -300px;
  bottom: 0;
  width: 300px;
  background: #ffffff;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: .5s;
  z-index: 3;
}
.open nav {
  left: 0;
}
nav .inner {
  padding: 25px;
}
nav .inner ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav .inner ul li {
  position: relative;
  margin: 0;
  border-bottom: 1px solid #333;
}
nav .inner ul li a {
  display: block;
  color: #333;
  font-size: 14px;
  padding: 1em;
  text-decoration: none;
  transition-duration: 0.2s;
}
nav .inner ul li a:hover {
  background: #e4e4e4;
}

.logotop{
	position:relative;
	top:5px;
	left:0px;	
}

.colored{
	background-color:#EAF6FB;
	border-style:solid;
	border-color:#707070;
	padding: 20px 2px;
		
}
footer{
	width:100%;
	background-color: #000000;
	color: #FFFFFF;
	padding: 30px 0;
		
}
.yokonarabi{
display:flex;
width:100%;
}

.yokonarabi>div{
width:calc(100% / 3);/* 3等分 */
text-align:center;
padding:5px;/* 必要に応じて */
}

.yokonarabi>div>img{
max-width:100%;
height:auto;
} 





@media screen and (max-width: 767px) {
  nav {
    left: -240px;
    width: 240px;
  }
}
/*============
@keyframes
=============*/
@keyframes equalizer01 {
  0% {
    width: 70%;
  }
  10% {
    width: 50%;
  }
  20% {
    width: 100%;
  }
  30% {
    width: 10%;
  }
  40% {
    width: 50%;
  }
  50% {
    width: 70%;
  }
  60% {
    width: 50%;
  }
  70% {
    width: 10%;
  }
  80% {
    width: 100%;
  }
  90% {
    width: 10%;
  }
  100% {
    width: 70%;
  }
}
@keyframes equalizer02 {
  0% {
    width: 30%;
  }
  10% {
    width: 20%;
  }
  20% {
    width: 40%;
  }
  30% {
    width: 10%;
  }
  40% {
    width: 20%;
  }
  50% {
    width: 30%;
  }
  60% {
    width: 20%;
  }
  70% {
    width: 10%;
  }
  80% {
    width: 40%;
  }
  90% {
    width: 10%;
  }
  100% {
    width: 30%;
  }
}
/*============
.toggle_btn
=============*/
.toggle_btn {
  display: block;
  position: fixed;
  top: 30px;
  left: 30px;
  width: 60px;
  height: 30px;
  transform: translate(0, 0);
  transition: all .5s;
  cursor: pointer;
  z-index: 3;
}
.open .toggle_btn {
  left: 330px;
}
.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 30px;
  height: 2px;
  background-color: #666;
  transition: all .5s;
}
.toggle_btn span:nth-child(1) {
  top: 5px;
  width: 60px;
  animation: equalizer01 7000ms infinite;
}
.toggle_btn span:nth-child(2) {
  top: 15px;
  width: 30px;
  animation: equalizer02 5000ms infinite;
  animation-delay: 0.33s;
}
.toggle_btn span:nth-child(3) {
  top: 25px;
  width: 20px;
  animation: equalizer02 5000ms infinite;
}
.open .toggle_btn span {
  background-color: #fff;
  width: 30px;
}
.open .toggle_btn span:nth-child(1) {
  transform: translate(0, 10px) rotate(-45deg);
  animation: unset;
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
  animation: unset;
}
.open .toggle_btn span:nth-child(3) {
  transform: translate(0, -10px) rotate(45deg);
  animation: unset;
}
@media screen and (max-width: 767px) {
  .open .toggle_btn {
    left: 260px;
  }
}
/*============
#mask
=============*/
#mask {
  display: none;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .8;
  z-index: 2;
  cursor: pointer;
  transition: all .5s;
}












/*スタート*/
.start {
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 9000;
}
.start p {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: none;
	z-index: 9999;
	width: 280px;
}

img {
  max-width: 100%;
  width: auto;
}
iframe {
  width: 100%;
}
.shere-facebook iframe {
  width: 61px;
}

h2 {
  font-size: 2rem;
  letter-spacing: 0.05em;
}
h3 {
  font-size: 1.4rem;
}

hr {
 height: 3px;
 background-color:#FF0000;
 width: 50%;
 border:none;
 }


/*メニューバー*/

/*ヘッダー*/



/*css画像の上に文字*/

.toptext {
  font-size: 1.6rem;
}
.wrapper {
  position:relative;
  display:inline-block;
}

.label {
  position:absolute;
  color:white;
  background:#FF21AE;
  padding:5px 10px;    
}
.label-left-top{
  left:0px;
  top:0px;
}
.label-right-top{
  right:0px;
  top:0px;
}
.label-left-bottom{
  left:0px;
  bottom:10px;
}
.label-right-bottom{
  right:0px;
  bottom:0px;
}

.label-center{
  position:absolute;
  left:50%;
  top:50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);  
}

.label2 {
  position:absolute;
  color:white;
  background:#000000;
  padding:5px 10px;    
}
.label2-left-top{
  left:0px;
  top:0px;
}
.label2-right-top{
  right:0px;
  top:0px;
}
.label2-left-bottom{
  left:0px;
  bottom:0px;
}
.label2-right-bottom{
  right:0px;
  bottom:0px;
}

.label-center{
  position:absolute;
  left:50%;
  top:50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);  
}



/*ここまで　*/

.back{
	background-color:#222831;
}


.mainback{
	margin: 0;
	padding: 0px 0px;
	position: relative;
  	width: 100%;

/*	background: linear-gradient(-45deg, rgba(4, 114, 124, 0.4), rgba(17, 66, 99, 0.6));*/

  	overflow: hidden;

/*	background-image: url("../image/topback.jpg");*/
	background-size:cover;
	background-position:center;
}	
.outline {
  text-align: center;
  color          : #000;            /* 文字の色 */
  text-shadow    : 
       2px  2px 1px #fff,
      -2px  2px 1px #fff,
       2px -2px 1px #fff,
      -2px -2px 1px #fff,
       2px  0px 1px #fff,
       0px  2px 1px #fff,
      -2px  0px 1px #fff,
       0px -2px 1px #fff;        /* 文字の影 */
}


.fz-l {
  font-size: 1.2em;
}
.fz-s {
  font-size: 0.8em;
}
.fw-b {
  font-weight: bold;
}
.bg-main-color {
  background-color: #E51679;
}
.text-main-color {
  color: #ff0000;
}

.header-logo {
  max-width: 50%;
  background-color: #f8f9fa;
  margin:  0 auto;
}

.mv-text {
  color: #FFF;
  font-size: 6.5vw;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin-bottom: 0rem;
  text-align: center;
}

.img-flex-2 {
	margin-bottom: 10px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;

}
.img-flex-3 {
	margin: 10px -5px 10px -50px ;
	padding: 0px;
	display: flex;
}


.clearfix {
  zoom: 1;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;	
}
/*画像と文書を並べて表示時する*/
  .inner {     
	float: left ; /*左側に配置する*/
	}
  .inner p{
	float:right;  /*右側に配置する*/
   }

 /*-- googleカレンダー --*/

.google-calendar1 {
    width: 100%;
    position: relative;
}
.google-calendar1:before {
    content: "";
    display: block;
    padding-top: 65%;
}
.google-calendar1 iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.size1{
	font-size:23px;
	font-family:'Noto Serif JP';
}

 /*-- contentBottom --*/
  #contentBottom {
	height: 50px;
	position: fixed;
	z-index: 999;
    margin: 0rem 5.5rem 5rem 2.5rem;
}
  
  #contentBottom .snsInk .snsLine {
    width: 5.0rem;
    height: 5.0rem;
    border-radius: 3rem;
  }
  #contentBottom .snsInk .snsRadico {
    width: 5.0rem;
    height: 5.0rem;
    border-radius: 3rem;
  }
  #contentBottom .snsInk .snsTwitter {
    width: 5.0rem;
    height: 5.0rem;
    border-radius: 3rem;
  }
  #contentBottom .snsInk .snsInsta {
    width: 5.0rem;
    height: 5.0rem;
    border-radius: 3rem;
  }	

/*timetable*/

caption {
    margin-bottom: 20px;
    font-size: 18px;
    font-weight:bold;
    text-align:left;
}
.timeTable {
    clear: both;
}
.col2of4 {
    width: auto;
    float: left;
    zoom: 1;
}
.tableBox{
    margin: 0 10px;
}
table {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    border-spacing: 0;
    border: none;
}
th,td {
    border: 1px solid #D810A3;
}
th {
    width: 70px;
    font-size:12px;
    color: #fff;
    text-align: center;
    background-color: #D810A3;
    vertical-align: top;
}
td {
    height: 25px;
    padding: 0 10px;
    font-size: 14px;
    text-align: center;
    background: #f3f4ef;
}
.borderNone {
    border-bottom: 1px solid #000000;
}
.tableBox th.just {
    padding-top: 7px;
    box-sizing: border-box;
    font-size: 16px;
    font-weight: bold;
    line-height: 1;
}
.color01{
    background:#222831;
}
.color02 {
    background: #80B7E8;
}
.line2 {
    height: 51px;
}
.line3 {
    height: 30px;
}




/*timetable*/

@-webkit-keyframes modify {
      0% { padding-top: 76px; margin-top: -76px; }
    100% { padding-top: 0; margin-top: 0; }
}
@keyframes  modify {
      0% { padding-top: 76px; margin-top: -76px; }
    100% { padding-top: 0; margin-top: 0; }
}
#info-about:target,
#info-event:target,
#info-performer:target {
    -webkit-animation: modify 0.1s;
    animation: modify 0.1s;
}
@-webkit-keyframes modify-iphone {
      0% { padding-top: 250px; margin-top: -250px; }
    100% { padding-top: 0; margin-top: 0; }
}
@keyframes  modify-iphone {
      0% { padding-top: 250px; margin-top: -250px; }
    100% { padding-top: 0; margin-top: 0; }
}
body.iphone #info-about:target,
body.iphone #info-event:target,
body.iphone #info-performer:target {
    -webkit-animation: modify-iphone 0.1s;
    animation: modify-iphone 0.1s;
}


@media (min-width:500px) {
  .mv-text {
    font-size: 7rem;
  }
}


@media (min-width:767px) {
  a img:hover {
    opacity: 0.7;
    transition: opacity 0.2s;
  }
}



@media (min-width:992px) {
  .main-visual {
    margin: 0 auto;
    max-width: 1140px;
  }
  .lead-block {
    width: 800px;
  }
  .list-block {
    width: 620px;
  }
}

@media (min-width:1140px) {
  .header-inner {
    margin: 0 auto;
    max-width: 1140px;
  }
  .main-visual {
    margin: 0 auto;
    max-width: 1000px;
  }
}