/* =================================
	story CSS
================================= */

/*	character
============================== */

div.bx-wop p.btn-w-close a, div.bx-wop div.bx-wop-btn ul li a {
	display:block;
	text-indent:110%;
	white-space:nowrap;
	overflow:hidden;
	background-image:url(../character/img/btn_wop.svg);
	background-repeat:no-repeat;
}
div.bx-wop p.btn-w-close a {
	cursor:default;
}
div.bx-wop div.bx-wop-btn {
	position:relative;
}
div.bx-wop div.bx-wop-btn ul {
	list-style-type:none;
	position:absolute;
}
div.bx-wop div.bx-wop-btn ul li {
	display:block;
	float:left;
}
@media all and (min-width: 768px) {
div.bx-wop p.btn-w-close a {
	width:720px;
	height:80px;
	background-position:640px -160px;
}
div.bx-wop div.bx-wop-btn {
	width:720px;
	height:80px;
}
div.bx-wop div.bx-wop-btn ul {
	left:560px;
}
div.bx-wop div.bx-wop-btn ul li.btn-w-prev, div.bx-wop div.bx-wop-btn ul li.btn-w-next {
	width:80px;
}
div.bx-wop div.bx-wop-btn ul li a {
	width:76px;
	height:76px;
}
div.bx-wop div.bx-wop-btn ul li.btn-w-next a {
	background-position:0 -80px;
}
div.bx-wop div.bx-wop-btn ul li.btn-w-prev a {
	background-position:left top;
}
div.bx-wop div.bx-wop-btn ul li.btn-w-close a {
	background-position:0 -160px;
}
}
@media all and (max-width: 767px) {
div.bx-wop p.btn-w-close a, div.bx-wop div.bx-wop-btn ul li a {
	background-size:75px 200px;
}
div.bx-wop p.btn-w-close a {
	height:40px;
}
div.bx-wop div.bx-wop-btn {
	margin:0 auto;
	width:154px;
	height:50px;
}
div.bx-wop div.bx-wop-btn ul li:first-child {
	margin-right:6px;
}
div.bx-wop div.bx-wop-btn ul li {
	background-color:#c00;
}
div.bx-wop div.bx-wop-btn ul li a {
	width:74px;
	height:38px;
}
div.bx-wop div.bx-wop-btn ul li.btn-w-next a {
	background-position:0 -160px;
}
div.bx-wop div.bx-wop-btn ul li.btn-w-prev a {
	background-position:0 -120px;
}
}
@media all and (min-width: 480px) and (max-width: 767px) {
div.bx-wop p.btn-w-close a {
	width:460px;
	background-position:420px -80px;
}
}
@media all and (max-width: 479px) {
div.bx-wop p.btn-w-close a {
	width:300px;
	background-position:260px -80px;
}
}






div.bx-wop {
	text-align:left;
	position:absolute;
	left:50%;
	z-index:5200;
}
div.bx-w-chara {
	border-color:#fff;
}
div.bx-w-chara p.chr-photo {
	background-repeat:no-repeat;
}
div.bx-w-chara div.chr-scrl-box p {
	text-shadow:1px 1px 3px #ccc;
	/* word-break:break-all; */
}
div.bx-w-chara p.chr-head b span {
	visibility:hidden;
}
@media print {
div.bx-w-chara p.chr-photo, div.bx-w-chara p.chr-photo img {
	display:none;
	}
}
@media all and (min-width: 768px) {
div.bx-wop {
	width:720px;
	margin-left:-360px;
}
div.bx-w-chara {
	position:relative;
	width:720px;
	height:440px;
	/* border-width:10px;
	box-sizing:border-box; */
	background-image:url(../character/img/bg_pc.png);
	background-position:left top;
	background-repeat:no-repeat;
	background-color:#ebd3c0;
}
div.bx-w-chara p.chr-head {
	position:absolute;
	font-size:2px;
	text-indent:-9999px;
	width:390px;
	height:80px;
	left:305px;
	top:50px;
	background-image:url(../character/img/h1.png?2);
	background-repeat:no-repeat;
}
div.wop-kyoko p.chr-head {background-position:left top;}
div.wop-tada p.chr-head {background-position:0 -80px;}
div.wop-madoka p.chr-head {background-position:0 -160px;}
div.wop-asahi p.chr-head {background-position:0 -240px;}
div.wop-hayato p.chr-head {background-position:0 -320px;}
div.wop-ayaka p.chr-head {background-position:0 -400px;}
div.wop-sasaki p.chr-head {background-position:0 -480px;}
div.wop-sachie p.chr-head {background-position:0 -560px;}
div.wop-hayashi p.chr-head {background-position:0 -640px;}
div.wop-kamiyama p.chr-head {background-position:0 -720px;}
div.wop-wakisaka p.chr-head {background-position:0 -800px;}
div.wop-soichiro p.chr-head {background-position:0 -880px;}
div.wop-nanbara p.chr-head {background-position:0 -960px;}
div.wop-aki p.chr-head {background-position:0 -1040px;}

div.bx-w-chara p.chr-photo {
	background-position:right bottom;
}
div.bx-w-chara p.chr-photo {
	position:absolute;
	left:43px;
	top:50px;
	background-size:cover;
}
div.bx-w-chara p.chr-photo, div.bx-w-chara p.chr-photo img {
	width:240px;
	height:340px;
}
div.bx-w-chara div.chr-scrl-box {
	position:absolute;
	left:315px;
	top:150px;
	width:363px;
	height:240px;
	overflow:auto;
}
div.bx-w-chara div.chr-scrl-box p {
	font-size:87.5%;
	background-image:url(../character/img/line36.png);
	padding:0 15px 0 10px;
	line-height:36px;
}
}
@media all and (max-width: 767px) {
div.bx-w-chara {
	border-style:solid;
	margin-bottom:6px;
	background-image:url(../img/cmn_bg.png);
	padding-top:12px;
	background-position:center center;
	background-color:#eeeff1;
}
div.bx-w-chara p.chr-head {
	background-size:cover;
	background-image:url(../character/img/bg_smp_h1.png);
}
div.bx-w-chara p.chr-head b,
div.bx-w-chara p.chr-head b span {
	display:block;
}
div.bx-w-chara p.chr-head b {
	position:relative;
	height:0;
	background-image:url(../character/img/h1.png?2);
	background-repeat:no-repeat;
	padding-top:20.5128205128205%;
}
div.bx-w-chara p.chr-head b span {
	position: absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
div.bx-w-chara p.chr-photo {
	background-position:left top;
	background-size:cover;
	background-clip:content-box;
	border:5px solid #fff;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
div.bx-w-chara p.chr-photo, div.bx-w-chara p.chr-photo img {
	width:216px;
	height:306px;
}
div.bx-w-chara div.chr-scrl-box p {
	font-size:87.5%;
	background-image:url(../character/img/line30.png);
	padding:0 6px;
	line-height:30px;
	background-color:hsla(0,0%,100%,0.75);
}
}
@media all and (min-width: 480px) and (max-width: 767px) {
div.bx-wop {
	width:460px;
	margin-left:-230px;
}
div.bx-w-chara {
	border-width:5px;
}
div.bx-w-chara:after {
	content:"";
	clear:both;
	display:block;
}
div.bx-w-chara p.chr-head b {
	background-size:450px 92px;
	background-size:450px 1288px;
}
div.wop-kyoko p.chr-head b {background-position:left top;}
div.wop-tada p.chr-head b {background-position:0 -92px;}
div.wop-madoka p.chr-head b {background-position:0 -184px;}
div.wop-asahi p.chr-head b {background-position:0 -276px;}
div.wop-hayato p.chr-head b {background-position:0 -368px;}
div.wop-ayaka p.chr-head b {background-position:0 -460px;}
div.wop-sasaki p.chr-head b {background-position:0 -552px;}
div.wop-sachie p.chr-head b {background-position:0 -644px;}
div.wop-hayashi p.chr-head b {background-position:0 -736px;}
div.wop-kamiyama p.chr-head b {background-position:0 -828px;}
div.wop-wakisaka p.chr-head b {background-position:0 -920px;}
div.wop-soichiro p.chr-head b {background-position:0 -1012px;}
div.wop-nanbara p.chr-head b {background-position:0 -1104px;}
div.wop-aki p.chr-head b {background-position:0 -1196px;}

div.bx-w-chara p.chr-photo {
	float:left;
	margin:0 15px 15px 15px;
}
div.bx-w-chara div.chr-scrl-box {
	padding:0 15px 15px;
}
}
@media all and (max-width: 479px) {
div.bx-wop {
	width:300px;
	margin-left:-150px;
}
div.bx-w-chara p.chr-head b {
	background-size:294px 60px;
	background-size:294px 840px;
}
div.wop-kyoko p.chr-head b {background-position:left top;}
div.wop-tada p.chr-head b {background-position:0 -60px;}
div.wop-madoka p.chr-head b {background-position:0 -120px;}
div.wop-asahi p.chr-head b {background-position:0 -180px;}
div.wop-hayato p.chr-head b {background-position:0 -240px;}
div.wop-ayaka p.chr-head b {background-position:0 -300px;}
div.wop-sasaki p.chr-head b {background-position:0 -360px;}
div.wop-sachie p.chr-head b {background-position:0 -420px;}
div.wop-hayashi p.chr-head b {background-position:0 -480px;}
div.wop-kamiyama p.chr-head b {background-position:0 -540px;}
div.wop-wakisaka p.chr-head b {background-position:0 -600px;}
div.wop-soichiro p.chr-head b {background-position:0 -660px;}
div.wop-nanbara p.chr-head b {background-position:0 -720px;}
div.wop-aki p.chr-head b {background-position:0 -780px;}

div.bx-w-chara p.chr-photo {
	margin:0 auto 15px;
}
div.bx-w-chara {
	border-width:5px;
}
div.bx-w-chara div.chr-scrl-box {
	padding:10px;
	background-color:hsla(0,0%,100%,0.75);
}
}

main div.board article {
	background-color:hsla(0,0%,100%,0.5);
}
main div.board article header {
	background-image:url(../img/header_story2.jpg);
	background-position:center center;
	color:#fff;
}
main div.board article header h2, div.board article header p {
	line-height:1.25;
}
main div.board article header h2 {
	background-image: -webkit-gradient(linear, center top, center bottom, from(hsla(0,0%,0%,0.25)), to(hsla(0,0%,0%,0.75)));
	background-image: linear-gradient(hsla(0,0%,0%,0.25), hsla(0,0%,0%,0.75));
	text-shadow:1px 1px 3px #000;
}
main div.board article header p {
	font-size:500%;
	background-color:hsla(0,100%,34%,0.8);
	font-family:'Fjalla One', 'sans serif';
	font-weight:normal;
}
main div.board article header p {
	text-align:right;
}
main div.board article h3 {
	text-align:center;
	color:#c00;
	line-height:1.75;
	padding-bottom:0.5em;
	margin-bottom:1.25em;
	border-bottom:1px solid #c00;
}

main div.board article div.inner p a {
	font-weight:bold;
	color:#c22047;
}
@media all and (min-width: 768px) {
main div.board article:not(:last-child) {
	margin-bottom:36px;
}
main div.board article header {
	-webkit-box-shadow:0 10px 0 0 hsla(0,0%,0%,0.07);
	box-shadow:0 10px 0 0 hsla(0,0%,0%,0.07);
	margin-bottom:40px;
}
main div.board article header h2 {
	font-size:125%;
	padding:12px 30px 12px;
}
main div.board article header p {
	font-size:112.5%;
	padding:8px 30px;
}
main div.board article div.inner {
	padding:0 36px 36px;
}
main div.board article.guest div.inner {
	padding:0 36px 6px;
}
main div.board article h3 {
	font-size:112.5%;
}

}
@media all and (max-width: 767px) {
main div.board article:not(:last-child) {
	margin-bottom:30px;
}
main div.board article header {
	background-size:cover;
	-webkit-box-shadow:0 7px 0 0 hsla(0,0%,0%,0.07);
	box-shadow:0 7px 0 0 hsla(0,0%,0%,0.07);
	margin-bottom:20px;
}
main div.board article header h2 {
	font-size:112.5%;
	padding:6px 12px 6px;
}
main div.board article header p {
	font-size:100%;
	padding:4px 12px;
}
main div.board article div.inner {
	padding:0 10px 20px;
}
main div.board article.guest div.inner {
	padding:0 10px 5px;
}
}

/* =================================
	guest CSS
================================= */

/*	article
============================== */

main div.board div.ach-pdg {
	padding-top:10px;
	margin-top:-10px;
}
main div.board article.guest div.inner ul {
	list-style-type:none;
	width:100%;
}
main div.board article.guest div.inner ul li {
	width:50%;
	float:left;
}
main div.board article.guest div.inner ul li > span,
main div.board article.guest div.inner ul li > span > span,
main div.board article.guest div.inner ul li img {
	display:block;
}
main div.board article.guest div.inner ul li > span > span.txt {
	text-align:center;
	line-height:1.25;
	background-image:-moz-linear-gradient(transparent 50%, #fde5e3 50%);
	background-image:-webkit-gradient(linear, left top, left bottom, from(transparent),color-stop(0.5,transparent),color-stop(0.5,#fde5e3),to(#fde5e3));
	background-image:-ms-linear-gradient(transparent 50%, #fde5e3 50%);
	background-image:linear-gradient(transparent 50%, #fde5e3 50%);
}
main div.board article.guest div.inner ul li > span > span.txt b {
	color:#c22047;
}
main div.board article.guest div.inner ul li:nth-child(odd) {
	clear:both;
}
main div.board article.guest div.inner ul li > span > span.thumb {
	position:relative;
	height:0;
	background-size:cover;
	padding-top:62.75%;
	margin-bottom:0.5em;
}
main div.board article.guest div.inner ul li > span > span.lazy-done {
	-webkit-animation: fadeIn 700ms;
	animation: fadeIn 700ms;
}
main div.board article.guest div.inner ul li > span > span.thumb img {
	position: absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
main div.board article.guest div.inner ul li > span > span.thumb img {
}
@media all and (min-width: 768px) {
main div.board article.guest div.inner ul li {
	margin-bottom:30px;
}
main div.board article.guest div.inner ul li:nth-child(odd) > span {
	margin-right:20px;
}
main div.board article.guest div.inner ul li:nth-child(even) > span {
	margin-left:20px;
}
main div.board article.guest div.inner ul li > span > span.txt {
	font-size:112.5%;
}
main div.board article.guest div.inner ul li > span > span.thumb img {
	-webkit-box-shadow:0 0 0 6px hsla(0,0%,100%,0.4) inset;
	box-shadow:0 0 0 6px hsla(0,0%,100%,0.4) inset;
}
}
@media all and (max-width: 767px) {
main div.board article.guest div.inner ul li {
	margin-bottom:15px;
}
main div.board article.guest div.inner ul li:nth-child(odd) > span {
	margin-right:6px;
}
main div.board article.guest div.inner ul li:nth-child(even) > span {
	margin-left:6px;
}
main div.board article.guest div.inner ul li > span > span.txt {
	font-size:3vw;
}
main div.board article.guest div.inner ul li > span > span.thumb img {
	-webkit-box-shadow:0 0 0 3px hsla(0,0%,100%,0.4) inset;
	box-shadow:0 0 0 3px hsla(0,0%,100%,0.4) inset;
}
}



/* =================================
	drama gallery CSS
================================= */

ul.lightbox-gallery:after {
	content:"";
	display:block;
	clear:both;
}
ul.lightbox-gallery li {
	float:left;
}
ul.lightbox-gallery li > span, ul.lightbox-gallery li > span > a, ul.lightbox-gallery li > span > a img {
	display:block;
}
ul.lightbox-gallery li > span {
	background-repeat:no-repeat;
	background-position:left top;
}
ul.lightbox-gallery li > span.lazy-done {
	-webkit-animation: fadeIn 500ms;
	animation: fadeIn 500ms;
	background-color:#aa1e14;
	border:1px solid #aa1e14;
}
ul.lightbox-gallery li:nth-child(4n-3) {
	clear:both;
}
@media all and (min-width: 768px) {
ul.lightbox-gallery {
	/* margin-bottom:30px; */
}
ul.lightbox-gallery li {
	margin-right:8px;
	margin-bottom:8px;
}
ul.lightbox-gallery li:nth-child(4n) {
	margin-right:0;
}
ul.lightbox-gallery li > span > a img {
	width:180px;
	height:110px;
}
ul.lightbox-gallery li > span.lazy-done > a:hover {
	background-color:#fff;
	opacity:0.3;
}
}
@media all and (max-width: 767px) {
ul.lightbox-gallery {
	/* margin-bottom:15px; */
}
ul.lightbox-gallery li {
	width:25%;
	margin-bottom:4px;
}
ul.lightbox-gallery li:nth-child(4n-3) > span {
	margin-right:3px;
}
ul.lightbox-gallery li:nth-child(4n-2) > span {
	margin-left:1px;
	margin-right:2px;
}
ul.lightbox-gallery li:nth-child(4n-1) > span {
	margin-left:2px;
	margin-right:1px;
}
ul.lightbox-gallery li:nth-child(4n) > span {
	margin-left:3px;
}
ul.lightbox-gallery li > span {
	-webkit-background-clip:content-box;
	background-clip:content-box;
	-webkit-background-size:cover;
	background-size:cover;
}
ul.lightbox-gallery li > span > a {
	position:relative;
	height:0;
	padding-top:61%;
}
ul.lightbox-gallery li > span > a img {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
}


/*	backnumber
============================== */
div.menu-bn {
	padding-bottom:12px;
}
div.menu-bn nav h2 {
	text-align:center;
	display:block;
	line-height:1.25;
}
div.menu-bn nav h2:before {
	content:"BACK NUMBER";
	display:block;
	font-family:'Fjalla One', 'sans serif';
	font-weight:normal;
	color:#e61519;
}
div.menu-bn nav h2 span {
	display:block;
}
div.menu-bn nav > h2 > span {
	background-repeat:no-repeat;
	background-position:center top;
}
@media all and (min-width: 768px) {
div.menu-bn nav h2 {
	margin-bottom:20px;
}
div.menu-bn nav h2:before {
	font-size:200%;
}
div.menu-bn nav h2 span {
	font-size:87.5%;
}
}
@media all and (max-width: 767px) {
div.menu-bn nav h2 {
	margin-bottom:12px;
}
div.menu-bn nav h2:before {
	font-size:150%;
}
div.menu-bn nav h2 span {
	font-size:83%;
}
}



div.slider-bn {
	position:relative;
}
div.slider-bn div.outer {
	margin:0 30px;
	overflow:hidden;
}
div.slider-bn div.outer ul {
	list-style-type:none;
}
div.slider-bn div.outer ul {
	/*display:table;*/
	-webkit-transform: translateZ(0);
}
div.slider-bn div.outer ul:after {
	content:"";display:block;clear:both;
}
div.slider-bn div.outer ul.inner li {
	/*display:table-cell;*/
	float:left;
}
div.slider-bn div.outer ul.inner li:not(:last-child) a {
	margin-right:8px;
}
div.slider-bn div.outer ul.inner li > a,
div.slider-bn div.outer ul.inner li > a > span,
div.slider-bn div.outer ul.inner li > a > span > img,
div.slider-bn div.outer ul.inner li > a > time {
	display:block;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
div.slider-bn div.outer ul.inner li > a,
div.slider-bn div.outer ul.inner li > a > span {
	position:relative;
}
div.slider-bn div.outer ul.inner li > a > span b {
	background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), color-stop(0.5, transparent), color-stop(0.5, hsla(6,100%,80%,0.25)), to(hsla(6,100%,80%,0.25)));
	background-image: linear-gradient(transparent 50%, hsla(6,100%,80%,0.25) 50%);
}
div.slider-bn div.outer ul.inner li > a {
	text-decoration:none;
	background-color:hsla(0,0%,100%,1);
	background-position:center bottom;
	background-size:contain;
	background-repeat:no-repeat;
	padding-bottom:1.5em;
}
div.slider-bn div.outer ul.inner li > a > span.txt,
div.slider-bn div.outer ul.inner li > a > dl,
div.slider-bn div.outer ul.inner li > a > time {
	padding:0.5em;
}
div.slider-bn div.outer ul.inner li > a > dl dt,
div.slider-bn div.outer ul.inner li > a > dl dd,
div.slider-bn div.outer ul.inner li > a > span.txt {
	font-size:87.5%;
	line-height:1.5;
	color:#333;
}
div.slider-bn div.outer ul.inner li > a > span.thumb {
	background-position:center top;
	background-size:cover;
}
div.slider-bn div.outer ul.inner li > a > span.lazy-done {
	-webkit-animation: fadeIn 700ms;
	animation: fadeIn 700ms;
}
div.slider-bn div.outer ul.inner li > a > time {
	position:absolute;
	right:0;
	bottom:0;
	font-size:75%;
}
@media all and (min-width: 768px) {
div.slider-bn div.outer ul.inner li > a,
div.slider-bn div.outer ul.inner li > a > span.thumb,
div.slider-bn div.outer ul.inner li > a > span > img {
	width:190px;
}
div.slider-bn div.outer ul.inner li > a > span > img {
	height:122px;
}
}
@media all and (max-width: 767px) {
div.slider-bn div.outer ul.inner li > a,
div.slider-bn div.outer ul.inner li > a > span.thumb,
div.slider-bn div.outer ul.inner li > a > span > img {
	width:160px;
}
div.slider-bn div.outer ul.inner li > a > span > img {
	height:103px;
}
}

/*	arrow
============================== */
div.slider-bn ul.ctrl li {
	position:absolute;
	top:50%;
	margin-top:-17px;
}
div.slider-bn ul.ctrl li.ctrl-lef {
	left:0;
}
div.slider-bn ul.ctrl li.ctrl-rig {
	right:0;
}
div.slider-bn ul.ctrl li a {
	display:block;
	width:24px;
	height:34px;
	background-image:url(../img/arrow40.svg?1);
	background-repeat:no-repeat;
	background-size:136px 34px;
	text-indent:110%;white-space:nowrap;overflow:hidden;
	background-color:hsla(355,100%,45%,1);
}
div.slider-bn ul.ctrl li.ctrl-lef a {
	background-position:-5px 0;
}
div.slider-bn ul.ctrl li.ctrl-rig a {
	background-position:-39px 0;
}
div.slider-bn ul.ctrl li a.hidebtn {
	opacity:0.25;
	cursor:default;
}
@media all and (min-width: 768px) {
div.slider-bn {
	margin:0 50px 50px;
}
div.slider-bn ul.ctrl li.ctrl-lef a:not(.hidebtn):hover {
	background-position:-7px 0;
}
div.slider-bn ul.ctrl li.ctrl-rig a:not(.hidebtn):hover {
	background-position:-37px 0;
}
}
@media all and (max-width: 767px) {
}



@media all and (min-width: 768px) {
.story04 div#guest ul li:last-child,
.story03 div#guest ul li:last-child {
	margin-left:198px;
}
}
@media all and (max-width: 767px) {
.story04 div#guest ul li:last-child,
.story03 div#guest ul li:last-child {
	margin-left:25%;
}
}