@chaeset "utf-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	color:#55a3cf;
	font-family: 'Noto Serif JP', serif;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

/* ここから */
body {
  margin: 0;
  padding: 0;
  background-image:url("./images/background.jpg");
  background-size:cover;
  color: #333333;
  font-size: 18px;
  line-height:1.6; 
  font-family: 'Noto Sans JP', sans-serif;
  box-sizing: border-box;
}

p,h1,h2,h3,h4,h5,h6 {
  margin: 0;
}
ul li {
	list-style:none;
}

img {
  vertical-align: bottom;
}

a:hover {
  opacity: 0.8;
}
a { text-decoration:none; }

/* レイアウト */
.container { width:1170px; margin:0 auto; }
.clear { clear:both; }
.png-sp {display: none;}
.png-tab { display: none; }
section { padding:50px 0; }
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}
h2 {
  font-size: 32px;
  font-weight: 900;
  margin-bottom:-30px;
  font-family: 'Inter', sans-serif;
  padding-bottom: 10px;
}
#h2{text-align:center;}
p {
  line-height: 35px;
}
.container{padding:50px 0;}
.sm{font-size:80%;}
.lg{font-size:110%;}

/* header */
header img { width: 100%;}
header div{width:1170px;margin:0 auto;}

/* menu */
#menu {
	background-image:url("./images/menu_bg.png");
    background-size:cover;
	background-position: center;
    padding:100px 0;
}
#menu ul {
	width: 1170px;
    margin: 0 auto;
	}
#menu ul li {
	display: inline-block;
    margin-right: 15px;
    vertical-align: middle;
}
#menu ul li img{width:100%;}
#pdflink {display:block;width:50%;margin:20px auto;background-color:#55A3CF;color:#fff;padding:10px;text-align:center;border-radius:5px;border:1px solid #fff;font-weight:800;}
#emergency {display:block;width:50%;margin:20px auto;background-color:#fdd35c;color:#fff;padding:10px;text-align:center;border-radius:5px;border:1px solid #fff;font-weight:800;}
#twitcas {display:block;width:50%;margin:20px auto;background-color:#4db56a;color:#fff;padding:10px;text-align:center;border-radius:5px;border:1px solid #fff;font-weight:800;}
#shoplink {display:block;width:50%;margin:20px auto;background-color:#72BED5;color:#fff;padding:10px;text-align:center;border-radius:5px;border:1px solid #fff;font-weight:800;}

/* info */
#info{width:1170px;margin:0 auto;}
#info > div {
	display:inline-block;
	width:45%;
	margin:2%;
	vertical-align:top;
}
#info > div > div{
	border:1px solid #95c5ea;
	height:330px;
	padding:10px;
	overflow-y:scroll;
}
#info #news li {margin-bottom:10px;}

/* story */
#story {
	text-align:center;
}
#story > div > p {
	line-height: 50px;
    width: 700px;
	margin: 0 auto;
}


/* schedule */
#schedule {
	text-align:center;
	font-family: 'Noto Serif JP', serif;
}
#schedule .container div:first-of-type{
	width:80%;
	display:inline-block;
}
#schedule .container div:last-child{
	width:20%;
	display:inline-block;
}
#schedule .schedule_date{text-align:center;line-height:1.5;margin-bottom:20px;font-weight:bold;}
#schedule .schedule_place{text-align:center;line-height:1.3;font-weight:bold;}
	
/* cast */
#cast table {margin:30px auto 0 auto;}
#cast table th {width:45%;padding:10px;text-align:right;line-height:1;}
#cast table th .sm{font-size:60%;}
#cast table td:first-of-type {width:1%;;text-align:center;}
#cast table td:last-child {width:45%;padding:10px;text-align:left;}
#cast > div:first-of-type {
  text-align: center;
}
#cast > div > div {
  text-align: center;
}
#cast > div > p {
  text-align: center;
  margin-bottom: 60px;
}

/* staff */
#staff {text-align:center;}
#staff p {text-align:center;margin-top:30px;}
#staff table {margin:0px auto 0 auto;}
#staff table th {width:45%;padding:10px;text-align:right;}
#staff table td:first-of-type {width:1%;text-align:center;}
#staff table td:last-child {width:45%;padding:10px;text-align:left;}

/* contact */
#contact {  }


/* ticket */
#ticket { }
#ticket > div {
  text-align: center;
}
#ticket #ticket_date{
	text-align:center;
	font-weight:bold;
	font-family: 'Noto Serif JP', serif;
}
#ticket > div > a {
  padding: 20px 10px;
  display:block;
  background-color:#00B0F0;
  color: #ffffff;
  font-weight:800;
  border:4px solid #ffffff;
  font-size:130%;
}
#ticket #attention {
	text-align:left;
	font-size:70%;
}
#ticket #attention h3 { font-size:120%;font-weight:bold;margin-bottom:10px; }
#ticket #attention p{ line-height:2; }

/* contact */
#contact > div {text-align: center;}
#contact table:nth-of-type(1) {margin:30px auto 0 auto;}
#contact table:nth-of-type(2) {margin:0px auto 0 auto;}
#contact table:nth-of-type(3) {margin:0px auto 0 auto;}
#contact table th {width:40%;padding:10px 0;text-align:right;}
#contact table td {width:45%;padding:10px 5px;text-align:left;}
#contact #logo_mac {margin:20px 0 10px 0;}


/* twitter_link */
#twitter_link {
	position:fixed;
	bottom:10px;
	right:0px;
	width:90px;
	z-index:9999999999999;
}


/* footer */
footer {
  background-color: #1f181d;
  color: #ffffff;
  font-size: 50%;
  text-align: center;
  padding: 10px;
}
footer a {
	color:#FFFFFF;
	text-decoration:underline;
}

/* streaming */
#streaming{width:600px;}
#streaming h1 {text-align:center;font-size:2rem;font-weight:bold;}
#streaming h2 {text-align:center;font-family:'Noto Serif JP', serif;margin-top:40px;}
#streaming h3 {text-align:center;margin:30px 0 20px 0;font-size:1.5rem;font-weight:bold;}
#streaming p{margin:15px 0;text-align:center;}

/* dvd */
#dvd{width:450px;}
#dvd h1 {text-align:center;font-size:1.1rem;font-weight:bold;}
#dvd h2 {text-align:center;font-family:'Noto Serif JP', serif;margin-top:40px;font-size:1.2rem;}
#dvd h3 {text-align:center;margin:30px 0 20px 0;font-size:1.5rem;font-weight:bold;}
#dvd p{margin:15px 0;text-align:center;}

/* goods */
#goods img {width:100%;}

@media screen and (max-width:767px) {
  /* 画面サイズが 767px以下の場合に適用 */
  
	body {
		font-size:14px;
		line-height: 30px;
	}
	.container { width:100%;padding:30px 0;}
	section { padding:50px 0; }
	.png { display: none; }
	.png-sp { display: block; width: 100%; }
	.png-tab { display: none; }
	.space { display: none;}
	.h2 img {width:95%;}
	header div{width:100%;}
	
	/* menu */
	#menu{padding:10px 0 10px 0;}
	#menu ul {display:block;width:100%;padding: 10px 0;text-align: center;}
	#menu ul li {margin-right:4px;padding:10px 0;}
	#menu ul li:last-child{margin-right:0px;}
	#pdflink { width:90%;font-size:80%; }
	#emergency { width:90%;font-size:100%; }
	#twitcas { width:90%;font-size:100%; }
	#shoplink { width:90%;font-size:100%; }
	
	/* info */
	#info {width:auto;padding-top:0px;}
	#info > div {display: block;width: 90%;margin: 5%;}
	#twitter {width: 100%;}
	#twitter #twitter-widget-0 {height: 300px !important;}
	
	/* story */
	#story {padding-top:10px;padding-bottom:10px;}
	#story > div > p {width:100%;line-height: 2;font-size: 84%;}

	/* schedule */
	#schedule img{width:95%;}

	/* cast */
	#cast table {width:100% !important;margin:0 auto;}

	/* ticket */
	#ticket {padding-top: 20px;}
	#ticket a{width:85%;margin:0 auto; }
	#ticket #attention { margin:20px 2%; }
	#ticket a img{width:100%;}
	
	/* footer */
	footer {width:98%;padding:1%;}
	
	/* streaming */
	#streaming{width:95%;margin:0 auto;}
	#streaming p{line-height:2;}
	#streaming h1{line-height:1.3;}
	#streaming h2{padding-bottom:20px;line-height:1.3;}
	
	/* dvd */
	#dvd{width:86%;margin:0 auto;}
	#dvd p{line-height:2;}
	#dvd h1{line-height:1.3;}
	#dvd h2{padding-bottom:20px;line-height:1.3;}

}

@media screen and (max-width: 1024px) and (min-width:768px) {
	.container,.png { width:100%; }
	.png-tab { display: block;}
	.space { display: none;}
	header div{width:100%;}
	
	/* menu */
	#menu ul {width:100%;}
	#menu ul li {width:13%;margin-right:10px;}
	#menu ul li:last-child{margin-right:0px;}
	#menu ul li img{width:100%;}

	/* info */
	#info {width:100%;}
	
	/* ticket */
	#ticket #attention { width:95%;margin:20px 2%; }

}