@charset "utf-8";


.L {
	float:left;
}
.R {
	float:right;
}
a {
	outline:none;
}
a:focus{
	outline:none;
}
*{ box-sizing:border-box;}
html { -webkit-text-size-adjust: 100%; font-size: 62.5%;}

h1 { text-indent: -9999px; line-height:0;}
ul { list-style:none;}

/* =====================================================================
*	TOPページ
* =================================================================== */
body {
	position:relative;
	background-color: #f8ecca;
	color:#000;
	font-size:14px;
	font-size:1.4rem;
}
html, body { font-family: 'M PLUS 1p', sans-serif; font-weight:400;
height: 100%;
min-height: 100%;
}

body > #menu {
  height: auto;
}
body > #wrapper {
  height: auto;
}
body > #wrapper-top {
  height: auto;
 }

body > .bg_subtitle_obi {
  height: auto;
 }
 
 /* =====================================================================
*	loader
* =================================================================== */

#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  z-index: 1000;
  background:#fff;
}
#loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 73px;
  margin-top: -36px;
  margin-left: -100px;
  text-align: center;
  color: #fff;
  z-index: 1002;
}


#loader-bg2 {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  z-index: 1000;
  background:#008cd6;
}



#wrapper { width: 100%;  height:100%; padding: 0; margin:0 auto; position:relative; text-align:center;}
#wrapper p { width: auto; margin:0 auto; padding:0; max-width:1100px; display:block;}


.overlay {
  content: "";
  display: block;
  width: 0;
  height: 0;
  background-color: rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 200;
  opacity: 0;
  transition: opacity .5s;
}
.overlay.open {
  width: 100%;
  height: 100vh;
  opacity: 1;
	position: fixed;
}


.menu-trigger {
  display: inline-block;
  width: 36px;
  height: 28px;
width: 60px;
  height: 60px;
  vertical-align: middle;
  cursor: pointer;
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 1250;
	background: #fff;
	border-radius: 50%;
/*   transform: translateX(0);
  transition: transform .5s;
 */}
/* .menu-trigger.active {
  transform: translateX(-250px);
}
 */.menu-trigger span {
  display: inline-block;
  box-sizing: border-box;
  position: absolute;
  left: 12px;
  width: 36px;
  height: 4px;
  background-color: #202778;
  transition: all .5s;
}
.menu-trigger.active span {
  background-color: #202778;
}
.menu-trigger span:nth-of-type(1) {
  top: 15px;
}
.menu-trigger.active span:nth-of-type(1) {
  transform: translateY(13px) rotate(-45deg);
}
.menu-trigger span:nth-of-type(2) {
  top: 28px;
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 15px;
}
.menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-13px) rotate(45deg);
}

nav {
  width: 250px;
  height: 100vh;
  padding: 100px 0 0 0;
  background-color: rgba(229,0,110,0.9);
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1200;
  transform: translate(250px);
  transition: all .5s;
}
nav.open {
  transform: translateZ(0);
}

nav.smn { display: block; overflow: auto; padding-bottom:2em;  }
nav.smn div { margin: 5px 0;
  color: #fff;
  text-align: center;
  padding: 0 !important;
  width: 100%; display: block;  
}
nav.smn div a { color: #fff; font-size: 1.2em;
  text-align: center;
  padding: 10px 0 !important;
  width: 100%; display: block;  
}
nav.smn div a:hover { opacity:0.9; color:#5adeff;
}


.contact { background:#e40071; text-align:center; padding:1em; width:100%; margin:0 auto; font-size:0.9em; color:#fff; }
.contact2 { background:#0067af; text-align:center; padding:1em; width:100%; margin:0 auto; font-size:0.9em; color:#fff; }

.obit { width:100%; margin:0 auto; position:relative; padding:0; text-align: center; border-bottom: 4px solid #fff; border-top: 4px solid #fff; background: #000;  }
.obit img { width: 100%; max-width:1000px; height:auto; margin:0 auto; padding:0;}

.mainv { width:100%;  margin:0 auto; position:relative; padding:0; }
.mainv img { width: 50%; height:auto; margin:0; padding:0;}
.mainv span { width:20%; position: absolute; padding:0; top:4%; left:2%; }
/*.mainv span { width:100%; position: absolute; padding:0; top:0; left:0; }*/

.mainv .tag { width: auto;  margin:0; position: absolute; padding:0; height: auto; top:100px; left:0; background:#E61312; z-index:5; display:inline-block; }
.mainv .tag a { width: auto;  margin:0; padding:1em; height: auto; display:block; font-size:1.5em; color:#fff;}



.pdt40 { padding-top:60px !important; } 
.introtag { width:100%; max-width:1200px; margin:0 auto 20px; position:relative; padding:20px; background-color: #000; color: #fff; font-size: 1.2em; text-align: left; height: auto !important; display: -webkit-flex;
  display: flex; flex-direction: row-reverse;}
.introtag_bg { background-color: #000; }

.tw_area { width: 45%; }
.intro_area { width: 55%; padding:0 0 0 4%; }
.logo3 { text-align: left; display: block; }

@media screen and (max-width: 750px) {
.introtag { display: block; }
.logo3 { text-align: center; }
.tw_area { width: 100%; }
.intro_area { width: 100%; padding:1em 0 0 0; }    
}

.introtag .pici { padding: 0 ; width: 280px; display: block;  }
.introtag .pici img {  width: 100%;  }
.introtag .texi {  width : auto ; -webkit-flex: 1;
  flex: 1; padding: 0 0 0 30px; height: auto; line-height: 1.6em; } 
.introtag .texi span { font-size: 0.8em; padding: 0.2em 0 0.8em; display: block;  }
.introtag .texi p { font-family: 'M PLUS 1p', sans-serif; font-weight:400; margin-bottom:0.7em !important; } 

.introtag .texi2 {  width : auto;  padding: 1em 0 0 0; height: auto; line-height: 1.6em; } 
.introtag .texi2 span { font-size: 0.8em; padding: 0.2em 0 0.8em; display: block;  }
.introtag .texi2 p { font-family: 'M PLUS 1p', sans-serif; font-weight:400; margin-bottom:0.7em !important; } 




.introtag2 { width:100%; max-width:1200px; margin:0 auto 1.5em; position:relative; padding:20px; background-color: #008cd6;  color: #fff; font-size: 1.2em; text-align: left; height: auto !important; display: -webkit-flex;
  display: flex; }
.introtag2 .texi { width : auto ; -webkit-flex: 1;
  flex: 1; padding: 0 20px 0 0; height: auto; line-height: 1.6em; } 
.introtag2 .texi span { font-size: 0.8em; padding: 1em 0 0; display: block;  }

h2.title { font-size:1.1em !important; margin: 0.3em 0 0.6em; display: block; line-height: 1.3em; font-family: 'M PLUS 1p', sans-serif; font-weight:700; }

.timetable { width:100%; text-align:left; background:#fff; max-width:1200px; height:auto; margin:0 auto 30px;  padding:1.5em; }
.timetable p { width:100%; text-align:left; padding:15px; margin: 1.5em 1em 1.5em !important; font-size: 1.1em; }
.timetable p b { font-weight: bold;  }
.timetable h3 { font-size:1.7em; color:#e60012; }
.timetable img, .ticket img { width:100%; max-width:1200px;}
.ticket { width:100%; text-align:center; background:#fff; border-bottom:5px solid #95753a; }


.timetable2 { width:100%; text-align:left; background:#008cd6; max-width:1200px; height:auto; margin:30px auto 30px;  padding:2em; color:#fff; border-radius: 10px; }
.timetable2 p { width:100%; text-align:left; padding:0; margin: 0 0 1.5em !important; font-size: 1.1em; }
.timetable2 b { font-weight: bold; font-size: 1.4em;  }
.timetable2 a { color:#fff; }

.schedule { width:100%; text-align:left; background:#fff; max-width:1200px; height:auto; margin:0 auto ;  padding: 30px 2em 20px; font-family: 'M PLUS 1p', sans-serif; font-weight:400; font-size:1.0em; line-height:1.4em; }
.schedule b {  font-weight:bold; }
.schedule .list { font-family: 'M PLUS 1p', sans-serif; font-weight:400; font-size:1.1em; margin:0 0 2em !important; }
.schedule .list span { display: inline-block; }

.schedule h2.sc { font-size:1.3em; color:#e61874; line-height: 1.2em !important; display: block; border-top: 1px solid #e61874; border-bottom: 1px solid #e61874; padding:0.3em 0; font-family: 'M PLUS 1p', sans-serif; font-weight:500; margin-bottom: 0.5em; }
.schedule h3.sc { font-size:1.1em; color:#666;  line-height: 1.2em !important; margin-bottom: 0.3em; padding: 0;  font-family: 'M PLUS 1p', sans-serif; font-weight:500;}
.schedule .days { font-size:1.2em; color:#333; line-height: 1.2em !important; padding:0.5em 0 1em; font-family: 'M PLUS 1p', sans-serif; font-weight:500; }
.schedule .days_p { font-size:1.3em; color:#333;  line-height: 1.2em !important; padding:0.5em 0 0em; font-family: 'M PLUS 1p', sans-serif; font-weight:500; }
.schedule .tex_p { font-size:1em; color:#333;  line-height: 1.2em !important; padding:0.5em 0 0em; font-family: 'M PLUS 1p', sans-serif; font-weight:400; }
.schedule a { font-family: 'M PLUS 1p', sans-serif; font-weight:400; }
.schedule .pdf { font-size:1.0em; color:#333; font-weight:normal; line-height: 1.2em !important; padding:0em 0 1.2em; font-family: 'M PLUS 1p', sans-serif; font-weight:400; }
.schedule .pdf img { vertical-align: middle; }

.schedule-pic { display: block; margin: 0 0 5em; }

.schedule-pic img { width:100%;}

.introtag .pdf { font-size:1.0em; color:#ffffcc; font-weight:normal; line-height: 1.2em !important; padding:0em 0 1.2em; }
.introtag .pdf a {  color:#ffffcc;  }
.introtag .pdf img { vertical-align: middle; }

.downl { display: inline-block}
.downl a { display: block; line-heiht:1.2em; padding-top: 0.5em; font-family: 'M PLUS 1p', sans-serif; font-weight:400;}
/*.schedule a.shosaibt { display: inline-block; border: 1px solid #e61874; background: #e61874; padding: 0.3em 0.8em; margin: 0.5em 0 3em; font-size: 0.9em; color:#fff; }*/
.schedule a:hover { opacity: 0.7; }

.schedule h2.sc a.shosaibt { display: inline-block; font-size: 0.9em; float: right;  font-family: 'M PLUS 1p', sans-serif; font-weight:400; }

.proomori { background-color: #01a0c8; width:100%; text-align:left;  max-width:1200px; height:auto; margin:0 auto ;}
.prosmt { background-color: #6fba2a; width:100%; text-align:left;  max-width:1200px; height:auto; margin:0 auto ;}


.scrmp { padding-top: 50px; margin-top: -50px !important; }

a.opa:hover  { opacity: 0.6; }

.enquete { text-align: center; padding: 0 0 1.5em; display: block; }

/*作品紹介*/

.block { width:100%; max-width:1200px; margin: 0 auto 15px ; background: #fff; padding: 2.5em 2em 1.5em;}
.block h3.sakuhihn { display: block; border-radius: 4px; height: auto; padding: 0.5em 0.8em 0.5em 1.4em; text-align: left; font-size: 1em !important; font-weight: bold; color:#fff; line-height: 1.1em; background: url("../img/title_bg.png") left center no-repeat; background-size: auto 100% ; margin: 0 0 0.3em; }

.block h3.sakuhihn2 { display: block; border-radius: 4px; height: auto; padding: 0.5em 0.8em 0.5em 1em; text-align: left; font-size: 1em !important; font-weight: bold; color:#fff; line-height: 1.1em; background: #008cd6; background-size: auto 100% ; margin: 0 0 0.3em; }

.block h3.sakuhihn .janru { display: inline-block; border-radius: 2px; height: auto; padding: 0.2em 0.5em; text-align: right; font-size: 1.0em; font-weight: bold; color:#e61773; line-height: 1em; background: #fff; float: right; margin: -0.2em; }


.block .list { margin:0 0 25px 0; padding:0; width:100%; text-align: left; }
.block .list h2 { display:block; font-size:1.8em; padding:0 0 0.2em; color:#000; font-family: 'M PLUS 1p', sans-serif; font-weight:500; margin-bottom:1em; text-align: left; border-bottom: 2px solid #c75381; line-height: 1.1em; }
.bluet { color:#0073b0 !important; }
.block .list h2 span { font-size:0.7em !important; color: #898989; padding:0 0 -0.2em  !important; font-family: 'M PLUS 1p', sans-serif; font-weight:500; float: right; }
.block .list h4 { display:block; padding: 0 0 0.5em 0;  text-align: right;  line-height: 1em; }
.block .list h4 img { width: 40px; height: 40px; }

.pd-t { padding: 0 2em 1.5em !important; line-height: 0 !important; position: relative;}
.ttag { display: inline-block; background: #01a0c8; color:#fff; padding: 0.2em 1em 0.4em; font-size: 1.4em;  border-radius: 0 0 7px 7px; line-height: 1em; margin: 0 0 1.3em 0; height: auto; }
.borderg { border-top:7px solid #01a0c8; }
.ttag2 { display: inline-block; background: #6fba2a; color:#fff; padding: 0.2em 1em 0.4em; font-size: 1.4em;  border-radius: 0 0 7px 7px; line-height: 1em; margin: 0 0 1.3em 0; height: auto; }
.borderg2 { border-top:7px solid #6fba2a; }
.ttag3 { display: inline-block; background: #97894a; color:#fff; padding: 0.2em 1em 0.4em; font-size: 1.4em;  border-radius: 0 0 7px 7px; line-height: 1em; margin: 0 0 1.3em 0; height: auto; }
.borderg3 { border-top:7px solid #97894a; }


.tright { text-align: left; line-height: 1em;}

.section { color:#fff; background: #ed1e79; font-family: 'M PLUS 1p', sans-serif; font-weight:700; line-height:1em; padding:0.7em; text-align: center; margin: 2em auto 0; font-size:1.8em; max-width:1200px; letter-spacing: 5px;}

.section-chu { font-family: 'M PLUS 1p', sans-serif;  line-height:1.2em; padding:0.7em; text-align: center; margin: 0.5em auto 2em; max-width:1200px; }

.texpink { color:#ed1e79; font-family: 'M PLUS 1p', sans-serif; font-weight:500; display: block; padding: 0.5em 0; line-height:1.5em;}

.bnr_area {padding: 0 0 2em; text-align:center; margin: 0 auto;  width:100%; max-width:1100px; }
.bnr_area img { width:50%; max-width:290px; margin:9px; } 

@media screen and (max-width: 750px) {
.ttag { font-size: 0.9em; line-height: 1.1em;}
.ttag2 { font-size: 0.9em; line-height: 1.1em;}
.ttag3 { font-size: 0.9em; line-height: 1.1em;}
.danceicon img { width: auto; height: 40px !important; margin: 5px 0; }
.bnr_area img { width:50%; max-width:300px; margin:5px; } 
	
.schedule { padding: 30px 1em 20px; }
.schedule .list span { display: block; padding-bottom:0.5em; }
}

.joei { background: #e61874; color:#fff; padding: 0.4em 0.6em 0.3em; margin-bottom: 1em; line-height:1em; font-size:1.1em; }

.dance { text-align: right; padding-bottom: 2.5em; }
.dance img { width: 100px; height: auto; margin: 0 5px; vertical-align: middle; }

.danceicon img { width: auto; height: 32px; margin: 5px 0; }

.block .list .joei { font-size:1.3em !important; color: #008cd6; padding:0.2em 0.7em !important; font-weight: bold; border: 1px solid #008cd6; border-radius: 5px; margin-bottom: 0.5em; text-align: left; display: inline-block; line-height: 1.4em; }

.flexbox { width:100%;  margin:0 auto 0; position:relative; font-size: 1.1em; text-align: left; height: auto !important; display: -webkit-flex;
  display: flex; }

.flexbox .photobox { padding: 0 ; width: 40%; display: block; text-align: center; font-family: 'M PLUS 1p', sans-serif; font-weight:400; font-size:0.7em; line-height:0.8em; }
.flexbox .photobox img.large {  width: 100%; padding: 1%; }
.flexbox .photobox img.hori {  width: 60%; padding: 1%; margin: 0 auto; }
.flexbox .photobox span img {  width: 50%;  padding: 1%; }

.flexbox .photoboxs { padding: 0 ; width: 450px; display: block;  }
.flexbox .photoboxs img.large {  width: 100%; padding: 1%;  }

.flexbox .texbox { width : auto ; -webkit-flex: 1;
  flex: 1; padding: 0 20px 0 30px; height: auto; font-family: 'M PLUS 1p', sans-serif; font-weight:400; } 
.flexbox .texbox p { padding: 0; height: auto; line-height: 1.6em; margin:0 0 1.5em !important; font-size: 1.1em; font-family: 'M PLUS 1p', sans-serif; font-weight:400;}
.flexbox .texbox p b { font-family: 'M PLUS 1p', sans-serif; font-weight:700;} 
.flexbox .texbox span { font-size: 0.8em; padding: 1em 0 0; display: block; font-family: 'M PLUS 1p', sans-serif; font-weight:400; }

.texbox strong { font-weight: bold; }

img.floleft { float: left;  width: 110px; padding: 0.3em 0.3em 0.3em 0; }

table.cast { border-top: 1px solid #dcb455; margin-bottom: 0.5em; width: 100%;  font-family: 'M PLUS 1p', sans-serif; font-weight:400;}
table.cast th { white-space: nowrap; vertical-align: top; min-width:3em; padding:0.3em 1em 0.3em 0.3em; border-bottom: 1px solid #dcb455; font-family: 'M PLUS 1p', sans-serif; font-weight:400;}
table.cast td { vertical-align: top; width: 100%; padding: 0.3em; border-bottom: 1px solid #dcb455; font-family: 'M PLUS 1p', sans-serif; font-weight:400; }

#contents { width: 1200px; height: auto; min-height:100%; padding: 0 10px 0 260px; margin:0 auto; text-align: left; position:relative; opacity:0; }




.t_left { text-align: left !important;}



.t_right { text-align:right;}

/* =====================================================================
    NEWS
* =================================================================== */


.t_center { text-align:center !important;}

/* page-top */
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	display:block;
}
#page-top a {
	text-decoration: none;
	width: 80px;
	height:auto;
	padding: 0;
	text-align: center;
	display: block;
	
}

.pconly { display: inline-block; }
.sponly { display:none; }
.dnon { display:none; }
.pd10 { padding:0px 26px 0 0;}
.dvd_logo img { width:100%; max-width:800px;}
.dvd_box img { width:100%; max-width:800px;}
.dvd_box2 img { width:100%;}
.dvd_box3 img { width: auto; height:546px;}

.buy-btn { display:inline-block; padding:0; margin:20px 20px 30px ;}
.buy-btn a { padding:0.6em; margin: 0; background:#fff; border:1px solid #937941; font-size:0.9em; text-decoration:none;}


 
.sns { text-align: center;  display: block; position: relative; max-width: 1200px; margin: 1em auto; padding: 10px ; }
.sns img { width: 50px; height: 50px; margin: 0 10px; } 

.fee { color:#e67f18; font-size: 1.8em; line-height: 1.1em; padding-bottom: 0.4em; font-family: 'M PLUS 1p', sans-serif; font-weight:500; }
.fee2 { margin-bottom: 1em; line-height: 1.5em; font-family: 'M PLUS 1p', sans-serif; font-weight:400; }

@media screen and (max-width: 750px) {
	
html { -webkit-text-size-adjust: 100%; font-size: 100%;}
body {
	position:relative;
	font-size:14px;
	font-size:1.4rem;
}

#wrapper { padding: 0;}


.pconly { display:none !important; }
.sponly { display:inherit; }

.timetable { width:98%; text-align:left; background:#fff; max-width:1100px; height:auto; margin:0 auto 30px;  padding: 10px 0; }


.introtag { display: block; }
.introtag .pici { padding: 0 ; width: auto; display: block; text-align: center; }
.introtag .pici img {  width: 500px;  }
.introtag .texi { width : auto ; -webkit-flex: inherit;
  flex: 1; padding: 20px 20px 20px; height: auto; }


	
/*作品紹介*/
	
	
img.floleft { float: left;  width: 140px; padding: 0.3em 0.3em 0.3em 0; }


	
.block { width:auto;  margin:0 auto 20px;}
.block h3.sakuhihn { display: block; border-radius: 4px; height: auto; padding: 0.5em 0.8em 0.5em 1.0em; text-align: left; font-size: 1em !important; font-weight: bold; color:#fff; line-height: 1.1em; background: url("../img/title_bg.png") left center no-repeat; background-size: auto 100% ; margin: 0 0 0.3em; }

.block h3.sakuhihn .janru { display: inline-block; border-radius: 2px; padding: 0.3em 0.4em; text-align: right; font-size: 0.9em !important; font-weight: bold; color:#e61773; line-height: 0.9em; background: #fff; float: right; margin: -0.2em; height: 100%; }


.block .list { margin:0 0 25px 0; padding:0 0 5px; width:100%;   }
.block .list h2 { display:block; font-size:1.7em; padding:0; font-weight: bold; margin:0em 0 0; text-align: left; line-height: 1.3em;  }
.block .list h2 span { font-size:0.7em !important; color: #898989; padding:0 0 0 0 !important; font-weight: bold; display: block;line-height: 1em; }
.block .list h4 { display:block; font-size:1.2em !important; padding:0 0.5em; color:#00afec; margin-bottom:0; text-align: right; font-weight: bold; line-height: 1.2em; }

.block .eng { display: block; text-align: right; font-size:0.8em; color: #898989; padding:5px 3px 20px 0 !important; font-weight: bold;  line-height: 1.2em; }
	
.flexbox { width:98%;  margin:0 auto 0; position:relative; font-size: 1.1em; text-align: left; height: auto !important; display: -webkit-block;
  display: block; }

.flexbox .photobox { padding: 0 0 15px; width: auto; display: block;  }
.flexbox .photobox img.large {  width: 100%; padding: 1% 0;  }
.flexbox .photobox span img {  width: 50%;  padding: 1% 0.5%; }

.flexbox .photoboxs { padding: 0 ; width: auto; display: block;  }
.flexbox .photoboxs img.large {  width: 100%; padding: 1% 0;  }

.flexbox .texbox { width : auto; -webkit-flex: 1;
  flex: none; padding: 0 10px; height: auto;  } 
.flexbox .texbox p { padding: 0; height: auto; line-height: 1.6em; margin:0 0 1.5em !important; font-size: 1.1em; } 
.flexbox .texbox span { font-size: 0.8em; padding: 1em 0 0; display: block;  }



.sns { text-align: center;  }
}