/*	.title
============================== */
.low .title a {
   display: block;
   background-image: url(../img/lower_header.jpg);
}
@media all and (min-width: 768px) {
   .low .title a {
      width: 960px;
      height: 125px;
      margin: 0 auto;
      text-indent:100%; white-space:nowrap; overflow:hidden;
   }
}
@media all and (max-width: 767px) {
   .low .title {
   }
   .low .title a {
		display: block;
		background-size:cover;
		height:0;
		/* 縦÷横 */
		padding-top:13.0208333333333%;
	}
   .low .title a span {
		display: block;
		position:absolute;
		left:0;
		top:0;
		width:100%;
      text-indent:100%; white-space:nowrap; overflow:hidden;
	}
}













/*	lower article.outer
============================== */
article.outer {
   background-image: url(../img/bg_ptn02.jpg);
   border: 2px solid #000;
   box-sizing: border-box;
}
@media all and (min-width: 768px) {
   article.outer {
      width: 960px;
      margin: 0 auto 16px;
      /* border-radius: 10px; */
      padding: 0 15px;
   }
}
@media all and (max-width: 767px) {
   article.outer {
      width: 100%;
      /* border-radius: 5px; */
      padding: 10px;
      margin-bottom: 20px;
   }
}
/*	lower h1
============================== */
h1 {
   background-repeat: no-repeat;
   text-indent:200%; white-space:nowrap; overflow:hidden;
}
@media all and (min-width: 768px) {
   h1 {
      width: 960px;
      margin: 0 -15px 15px;
   }
}
@media all and (max-width: 767px) {
   h1 {
      margin: -6px -10px 10px -10px;
      display: block;
      background-size:cover;
      height:0;
   	/* 縦÷横 */
      padding-top: 21.652719665272%;
      position: relative;
   }
   h1 span {
   	display: block;
   	position:absolute;
   	left:0;
   	top:0;
   	width:100%;
   	height: 100%;
   }
}
/*	lower article.outer inner
============================== */
div.atcl_inner {
   background-color: #fff;
}
@media all and (min-width: 768px) {
   div.atcl_inner {
      padding: 30px;
      margin-bottom:  20px;
      box-shadow: 3px 3px 8px 0px rgba(0,0,0,0.1);
   }
}
@media all and (max-width: 767px) {
   div.atcl_inner {
      padding: 15px 0;
      margin-top: -20px;
   }
}
/*	lower footer menu
============================== */
div.ft_menu nav ul li a.lazy-done {
	-webkit-animation: fadeIn 500ms;
	animation: fadeIn 500ms;
}
div.ft_menu nav ul li a {
	position: relative;
	background-color: #fff;
}



div.ft_menu nav ul li a {
	display: inline-block;
	/* border-radius:10px 10px 10px 10px; */
	box-sizing: border-box;
}



/*	pc
============================== */
@media all and (min-width: 768px) {
	div.ft_menu {
		/* padding: 30px; */
		position: relative;
		margin-bottom: 15px;
		width: 980px;
		margin:  0 auto 20px;
      height: 280px;
	}
	div.ft_menu nav ul li a {
		overflow: hidden;
		text-indent: 110%;
		white-space: nowrap;
		float: left;
		margin-right: 10px;
		margin-bottom: 10px;
		box-shadow:0px 0px 10px 3px rgba(0,0,0,0.1);
		background-repeat: no-repeat;
		background-position: center;
		position: absolute;
	}

	div.ft_menu nav ul li.intro a,
	div.ft_menu nav ul li.original a,
	div.ft_menu nav ul li.cast a,
	div.ft_menu nav ul li.staff a {
		padding: 5px;
		background-size: 135%;
	}
	div.ft_menu nav ul li.intro a span,
	div.ft_menu nav ul li.original a span,
	div.ft_menu nav ul li.cast a span,
	div.ft_menu nav ul li.staff a  span {
		display: block;
		width: 100%;
		height: 100%;
		border: 1px solid #fff;
		box-sizing: border-box;
	}

	div.ft_menu nav ul li.s_btn a {
		width: 140px;
		height: 115px;
	}
	div.ft_menu nav ul li.l_btn a {
		width: 485px;
		height: 120px;
	}
	div.ft_menu nav ul li.b_btn a {
		width: 485px;
		height: 120px;
	}
	div.ft_menu nav ul li.m_btn a {
		width: 237px;
		height: 120px;
	}
	div.ft_menu nav ul li:nth-child(3) a,
	div.ft_menu nav ul li:nth-child(5) a,
	div.ft_menu nav ul li:nth-child(8) a,
	div.ft_menu nav ul li:nth-child(11) a,
	div.ft_menu nav ul li:nth-child(14) a,
	div.ft_menu nav ul li:nth-child(17) a {
		margin-right: 0;
	}
	/*div.ft_menu nav ul li.invite {
		margin: 0 auto;
		width:  472px;
	}*/
   div.ft_menu nav ul li.report a {
       left: 494px;
       top: 0;
   }
   div.ft_menu nav ul li.message a {
       right: 0;
       top: 0;
   }
div.ft_menu nav ul li.interview a {
    left: 0;
    top: 130px;
}
div.ft_menu nav ul li.talk a {
    left: 495px;
    top: 130px;
}
}
/*	smp
============================== */
@media all and (max-width: 767px) {
	div.ft_menu nav ul li.intro a span,
	div.ft_menu nav ul li.original a span,
	div.ft_menu nav ul li.cast a span,
	div.ft_menu nav ul li.staff a span {
		padding: 5px;
		box-sizing: border-box;
	}
	div.ft_menu nav ul li.intro a > span > b,
	div.ft_menu nav ul li.original a > span > b,
	div.ft_menu nav ul li.cast a > span > b,
	div.ft_menu nav ul li.staff a > span > b {
		display: block;
		width: 100%;
		height: 100%;
		border: 1px solid #fff;
		box-sizing: border-box;
	}
	div.ft_menu {
		padding: 0 10px;
		margin-bottom: 15px;
	}
	div.ft_menu nav ul li {
		float: left;
		margin-bottom: 2%;
	}
	div.ft_menu nav ul li a {
		box-shadow:0px 1px 3px 1px #a3a3a3;
	}
	div.ft_menu nav ul li a span {
		overflow: hidden;
		text-indent: 110%;
		white-space: nowrap;
	}
	div.ft_menu nav ul li.s_btn,
	div.ft_menu nav ul li.m_btn {
		width: 49%
	}
	div.ft_menu nav ul li.intro,
	div.ft_menu nav ul li.cast,
	div.ft_menu nav ul li.report {
		margin-right: 2%;
	}
	div.ft_menu nav ul li.l_btn,
	div.ft_menu nav ul li.b_btn {
		width: 100%
	}
	div.ft_menu nav ul li.s_btn a {
		display: block;
		background-size: 100%;
		background-position: center;
		background-repeat:  no-repeat;
		height:0;
		/* 縦÷横 */
		padding-top: 56.1643835616438%;
		position: relative;
	}
	div.ft_menu nav ul li.s_btn a span {
		display: block;
		position:absolute;
		left:0;
		top:0;
		width:100%;
		height: 100%;
	}
	div.ft_menu nav ul li.l_btn a {
		display: block;
		background-size:cover;
		height:0;
		/* 縦÷横 */
		padding-top: 24.7422680412371%;
		position: relative;
	}
	div.ft_menu nav ul li.l_btn a span {
		display: block;
		position:absolute;
		left:0;
		top:0;
		width:100%;
		height: 100%;
	}
	div.ft_menu nav ul li.m_btn a {
		display: block;
		background-size:cover;
		height:0;
		/* 縦÷横 */
		padding-top: 50.6329113924051%;
		position: relative;
	}
	div.ft_menu nav ul li.m_btn a span {
		display: block;
		position:absolute;
		left:0;
		top:0;
		width:100%;
		height: 100%;
	}
	div.ft_menu nav ul li.b_btn a {
		display: block;
		background-size:cover;
		height:0;
		/* 縦÷横 */
		padding-top: 24.7422680412371%;
		position: relative;
	}
	div.ft_menu nav ul li.b_btn a span {
		display: block;
		position:absolute;
		left:0;
		top:0;
		width:100%;
		height: 100%;
	}
}




/*	pics main
============================== */
figure.cmn-pic-main p span {
	background-color:#fff;
}
figure.cmn-pic-main p span,
figure.cmn-pic-main p span img {
	display: block;
   margin: 0 auto;
}
figure.cmn-pic-main p span.lazy-done {
	-webkit-animation: fadeIn 500ms;
	animation: fadeIn 500ms;
}
figure.cmn-pic-main p span {
    background-size: cover;
    box-shadow: 5px 5px 15px 0px rgba(0,0,0,0.2);
    position: relative;
}
@media all and (min-width: 768px) {
   figure.cmn-pic-main p span {
      border: 7px solid #fff;
      /* box-sizing:  border-box; */
      margin-bottom: 30px;
   }
   div.inner figure.cmn-pic-main:not(:last-child) {
   	margin-bottom:30px;
   }
}
@media all and (max-width: 767px) {
   figure.cmn-pic-main p {
   	padding:7px;
   }
   figure.cmn-pic-main p span {
      box-sizing: content-box;
      outline: 5px solid #fff;
      position:relative;
      height:0;
      background-repeat:no-repeat;
      background-size:cover;
      /*padding-top:66.4285714%;*/
      margin-bottom: 10px;
   }
   figure.cmn-pic-main p span img {
   	position: absolute;
   	left:0;
   	top:0;
   	width:100%;
   	height:100%;
   }
   div.inner figure.cmn-pic-main:not(:last-child) {
   	margin-bottom:27px;
   }
}
/*	text lines
============================== */
div.inner cite {
	color:#ea337b;
	font-style:normal;
	font-weight:bold;
}
article p.lines {
	background-position:left bottom;
	background-repeat:repeat;
	text-align: justify;
	text-justify: inter-ideograph; /* IE のみ、こちらも必要 */
	padding: 0.75em;
}
@media all and (min-width: 768px) {
   article p.lines {
   	font-size: 91%;
   	line-height: 26px;
   }
   article p.lines:not(:last-child) {
   	margin-bottom:10px;
   }
}
@media all and (max-width: 767px) {
   article p.lines {
   	/* font-size:83%; */
   	line-height:24px;
   }
   article p.lines:not(:last-child) {
   	margin-bottom:0.5em;
   }
}

/* =================================
   story
================================= */
.story div.title p, .gallery div.title p {
   color: #fff;
   background-color: #461783;
   background-repeat:repeat;
   background-position:left top;
   text-align:right;
}
div.player-outer {
   position:relative;
   height:0;
   /* 9/16×100 */
   padding-top:56.25%;
}
div.player-outer iframe {
   display:block;
   position:absolute;
   left:0;
   top:0;
   width:100%;
   height:100%;
}
@media all and (min-width: 768px) {
.story div.title,
.gallery div.title {
   margin-bottom:25px;
}
.story div.title h2, .story div.title h2 span,
.gallery div.title h2, .gallery div.title h2 span {
   background-image:url(../img/story_h2.jpg?1128);
   background-repeat:no-repeat;
   height:50px;
}
.story div.title h2, .gallery div.title h2 {
   background-position:left top;
   height:50px;
}
.story div.title h2 > span, .gallery div.title h2 > span {
   display:block;
   text-indent:110%;white-space:nowrap;overflow:hidden;
}
.story div.one h2 span, .gallery div.one h2 span {background-position:0 -50px;}
.story div.two h2 span, .gallery div.two h2 span {background-position:0 -100px;}
.story div.three h2 span, .gallery div.three h2 span {background-position:0 -150px;}
.story div.four h2 span, .gallery div.four h2 span {background-position:0 -200px;}
.story div.five h2 span, .gallery div.five h2 span {background-position:0 -250px;}
.story div.six h2 span, .gallery div.six h2 span {background-position:0 -300px;}
.story div.seven h2 span, .gallery div.seven h2 span {background-position:0 -350px;}
.story div.eight h2 span, .gallery div.eight h2 span {background-position:0 -400px;}
.story div.nine h2 span, .gallery div.nine h2 span {background-position:0 -450px;}
.story div.ten h2 span, .gallery div.ten h2 span {background-position:0 -500px;}
.story div.eleven h2 span, .gallery div.eleven h2 span {background-position:0 -550px;}
.story div.title p, .gallery div.title p {
   line-height:25px;
   padding: 3px 25px;
   border-radius: 1px;
}

}
@media all and (max-width: 767px) {
.story div.title, .gallery div.title {
   position:relative;
   margin-bottom:15px;
}
.story div.title:before, .gallery div.title:before {
   content:"";
   width:52px;
   height:33px;
   background-image:url(../img/story_h2.jpg?20171121);
   background-repeat:no-repeat;
   position:absolute;
   background-size: 420px 399px;
   left:0;
   top:-13px;
}
.story div.title h2, .gallery div.title h2 {
   padding-left:56px;
   line-height:1.5;
   margin-bottom:0.5em;
}
.story div.title h2 span, .gallery div.title h2 span {
   display:block;
}
.story div.title h2 > span > span:first-child, .gallery div.title h2 > span > span:first-child {
   font-size:112.5%;
   color:#c1262b;
}
.story div.title h2 > span > span:last-child, .gallery div.title h2 > span > span:last-child {
   color:#392424;
}
.story div.title p, .gallery div.title p {
   font-size:87.5%;
   padding:0.25em 0.75em;
   border-radius: 3px;
}

}

/*	kome
============================== */

ul.kome li, ul.kome2 li {
	color:#7b7b7b;
	line-height:1.5;
	margin-bottom:0.2em;
}
div.nuri ul.kome li {
	color:#000;
}
article#books ul.kome li {
	color:#c00;
}
ul.kome li:before, ul.kome2 li:before {
	display:block;
	float:left;
}
ul.kome li:before {
	content:"※";
}
ul.kome2 li:nth-child(1):before {
	content:"※1";
}
ul.kome2 li:nth-child(2):before {
	content:"※2";
}
ul.kome li span, ul.kome2 li span {
	display:block;
}
ul.kome li span {
	padding-left:1.5em;
}
ul.kome2 li span {
	padding-left:2.5em;
}
ul.mgb15em {
	margin-bottom:1.5em;
}
@media all and (min-width: 768px) {
ul.kome2 {
	margin-bottom:20px;
}
ul.kome li, ul.kome2 li {
	font-size:83%;
}
}
@media all and (max-width: 767px) {
ul.kome2 {
	margin-bottom:12px;
}
ul.kome li, ul.kome2 li {
	font-size:75%;
}
}


/*	table
============================== */

table {
	width:auto;
	border-collapse:collapse;
	border-spacing:0;
	padding:0;
   margin: 0 auto;
}
table th, table td {
	vertical-align:top;
	line-height:1.75;
	text-align:left;
	padding-bottom:0.5em;
}
.cast table th, .cast table td {
	vertical-align:bottom;
}
.staff table th, .staff table td {
	padding-bottom:0.75em;
}
.staff table td b {
	color: #bd1634;
}
table th {
	text-align:right;
	font-weight:normal;
	color:#e04866;
	white-space: nowrap;
}
.cast table th {
	width:50%;
}
table td.naka {
	font-family: sans-serif;
	color:#997017;
	text-align:center;
	width:2em;
}
@media all and (min-width: 768px) {
table th, table td {
	font-size:87.5%;
}
}
@media all and (max-width: 767px) {
table th, table td {
	font-size:83%;
}
}
