/* =================================
	STORY CSS
================================= */

@media all and (max-width: 767px) {
.pic-main {
	margin:0 0 20px;
}
.pic-main span.lazy-done {
	-webkit-box-shadow:none;
	box-shadow:none;
}
.yt-playlist {
	margin-bottom:20px;
}
}



/*	Youtube
============================== */
@media all and (min-width: 768px) {
div.mov-outer {
	margin:0 100px 40px;
	-webkit-box-shadow:8px 8px 0 0 #ffb200;
	box-shadow:8px 8px 0 0 #ffb200;
}
}
@media all and (max-width: 767px) {
}


/*	.inner
============================== */
main > article > div.inner {
}
@media all and (min-width: 768px) {
main > article div.wrap div.contents > div.inner {
	padding:0 24px 40px;
}
.gallery main > article div.wrap div.contents > div.inner {
	padding:20px 78px 40px 78px;
}
}
@media all and (max-width: 767px) {
main > article div.wrap div.contents > div.inner {
	padding:0 12px 20px;
}
.gallery main > article div.wrap div.contents > div.inner {
	padding-top:12px;
}
}


/*	h2
============================== */
div.header-h2 {
	background-color:#00ff78;
	background-image:url(../img/cmn_bg_yellow.png);
	background-repeat:repeat;
	background-position:left top;
	background-size:cover;
	position:relative;
}
div.header-h2 h2, div.header-h2 p {
	line-height:1.5;
}
div.header-h2 h2 {
	float:left;
	text-shadow:1px 1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px -1px 0 #fff;
}
div.header-h2 p {
	position:absolute;
	right:0;
	bottom:0;
}
div.header-h2 h2 {
	background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), color-stop(0.5, transparent), color-stop(0.5, hsla(193,95%,48%,0.75)), to(hsla(193,95%,48%,0.75)));
	background-image: linear-gradient(transparent 50%, hsla(193,95%,48%,0.75) 50%);
}
div.header-h2 p span {
	color:#fff;
	background-color:hsla(0,0%,0%,0.8);
}
@media all and (min-width: 768px) {
div.header-h2 {
	padding:16px 24px;
	margin-bottom:40px;
}
div.header-h2 h2 {
	font-size:175%;
	margin-left:-24px;
	padding:0 48px 0 24px;
}
div.header-h2 p {
	bottom:-10px;
}
div.header-h2 p span {
	padding:12px 24px;
}
}
@media all and (max-width: 767px) {
div.header-h2 {
	padding:4px 12px 8px;
}
div.header-h2 h2 {
	font-size:150%;
	margin-left:-12px;
	padding:0 24px 0 12px;
}
div.header-h2 p {
	font-size:83%;
	bottom:4px;
}
div.header-h2 p span {
	padding:6px 12px;
}
}


/*	h3
============================== */
main > article div.contents div.inner h3 {
	line-height:1.25;
	margin-bottom:1.5em;
	padding:0.5em 0.75em 0.7em;
	color:#00ccd4;
	border-bottom:2px solid #00ccd4;
	/* background-color:hsla(147,100%,50%,0.5); */
	text-shadow:1px 1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px -1px 0 #fff;
}
@media all and (min-width: 768px) {
main > article div.contents div.inner h3 {
	font-size:112.5%;
}
}
@media all and (max-width: 767px) {
main > article div.contents div.inner h3 {
	font-size:100%;
}
}




/* =================================
	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:#fc0;
	border-color:#fc0;
	border-style:solid;
}
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 {
	border-width:3px;
}
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.lazy-done {
	border-width:1px;
}
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%;
}
}




.lbg-ftr > p > span {
	color:#000 !important;
}



/*	backnumber
============================== */
div.menu-bn {
	text-align:left;
}
div.menu-bn nav h2 span {
	display:block;
}
div.menu-bn nav h2 span span {
	text-indent:110%;white-space:nowrap;overflow:hidden;
}
div.menu-bn nav > h2 > span {
	background-image:url(../img/cmn_h2_bnum.png);
	background-repeat:no-repeat;
	background-position:center top;
}
@media all and (min-width: 768px) {
div.menu-bn nav h2 {
	margin-bottom:10px;
}
div.menu-bn nav h2 span span {
	height:100px;
}
}
@media all and (max-width: 767px) {
div.menu-bn nav h2 {
	margin:0 auto;
}
div.menu-bn nav h2 > span {
	position:relative;
	height:0;
	background-repeat:no-repeat;
	background-size:cover;
}
div.menu-bn nav h2 > span span {
	position: absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
}
@media all and (min-width: 480px) and (max-width: 767px) {
div.menu-bn nav h2 {
	width:440px;
}
div.menu-bn nav h2 > span {
	padding-top:23.255839534884%;
}
}
@media all and (min-width: 375px) and (max-width: 479px) {
div.menu-bn nav h2 {
	width:320px;
}
div.menu-bn nav h2 > span {
	padding-top:23.255839534884%;
}
}
@media all and (max-width: 374px) {
div.menu-bn nav h2 {
	width:260px;
}
div.menu-bn nav h2 > span {
	padding-top:23.255839534884%;
}
}



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 {
	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);
	background-repeat:no-repeat;
	background-size:136px 34px;
	text-indent:110%;white-space:nowrap;overflow:hidden;
	background-color:#000;
}
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 ul.ctrl li.ctrl-lef a:not(.hidebtn):hover {
	background-position:-73px 0;
}
div.slider-bn ul.ctrl li.ctrl-rig a:not(.hidebtn):hover {
	background-position:-107px 0;
}
}
@media all and (max-width: 767px) {
}




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

div.bx-wop {
	-webkit-animation: fadeIn 700ms;
	animation: fadeIn 700ms;
}
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:#00ff78;
	background-image:-webkit-linear-gradient(top,#b1fd18,#00ff78 80%,#06bbf2);
	background-image:linear-gradient(to bottom,#b1fd18,#00ff78 80%,#06bbf2);
}
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:#10d1dd;
}
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?0);
	background-repeat:no-repeat;
}
div.wop-nagi p.chr-head {background-position:left top;}
div.wop-shinji p.chr-head {background-position:0 -80px;}
div.wop-gon p.chr-head {background-position:0 -160px;}
div.wop-ryoko p.chr-head {background-position:0 -240px;}
div.wop-adachi p.chr-head {background-position:0 -320px;}
div.wop-eguchi p.chr-head {background-position:0 -400px;}
div.wop-oribe p.chr-head {background-position:0 -480px;}
div.wop-ellie p.chr-head {background-position:0 -560px;}
div.wop-ichikawa p.chr-head {background-position:0 -640px;}
div.wop-urara p.chr-head {background-position:0 -720px;}
div.wop-mama p.chr-head {background-position:0 -800px;}
div.wop-an p.chr-head {background-position:0 -880px;}
div.wop-ogura p.chr-head {background-position:0 -960px;}
div.wop-ihara p.chr-head {background-position:0 -1040px;}
div.wop-taka p.chr-head {background-position:0 -1120px;}
div.wop-nori p.chr-head {background-position:0 -1200px;}
div.wop-yu p.chr-head {background-position:0 -1280px;}
div.wop-misuzu p.chr-head {background-position:0 -1360px;}
div.wop-midori p.chr-head {background-position:0 -1440px;}

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:130px;
	width:369px;
	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;
	padding-top:12px;
	background-position:center center;
	background-color:#9fff3f;
}
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 #10d1dd;
	-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 1748px;
}
div.wop-nagi p.chr-head b {background-position:left top;}
div.wop-shinji p.chr-head b {background-position:0 -92px;}
div.wop-gon p.chr-head b {background-position:0 -184px;}
div.wop-ryoko p.chr-head b {background-position:0 -276px;}
div.wop-adachi p.chr-head b {background-position:0 -368px;}
div.wop-eguchi p.chr-head b {background-position:0 -460px;}
div.wop-oribe p.chr-head b {background-position:0 -552px;}
div.wop-ellie p.chr-head b {background-position:0 -644px;}
div.wop-ichikawa p.chr-head b {background-position:0 -736px;}
div.wop-urara p.chr-head b {background-position:0 -828px;}
div.wop-mama p.chr-head b {background-position:0 -920px;}
div.wop-an p.chr-head b {background-position:0 -1012px;}
div.wop-ogura p.chr-head b {background-position:0 -1104px;}
div.wop-ihara p.chr-head b {background-position:0 -1196px;}
div.wop-taka p.chr-head b {background-position:0 -1288px;}
div.wop-nori p.chr-head b {background-position:0 -1380px;}
div.wop-yu p.chr-head b {background-position:0 -1472px;}
div.wop-misuzu p.chr-head b {background-position:0 -1564px;}
div.wop-midori p.chr-head b {background-position:0 -1656px;}

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 1140px;
}
div.wop-nagi p.chr-head b {background-position:left top;}
div.wop-shinji p.chr-head b {background-position:0 -60px;}
div.wop-gon p.chr-head b {background-position:0 -120px;}
div.wop-ryoko p.chr-head b {background-position:0 -180px;}
div.wop-adachi p.chr-head b {background-position:0 -240px;}
div.wop-eguchi p.chr-head b {background-position:0 -300px;}
div.wop-oribe p.chr-head b {background-position:0 -360px;}
div.wop-ellie p.chr-head b {background-position:0 -420px;}
div.wop-ichikawa p.chr-head b {background-position:0 -480px;}
div.wop-urara p.chr-head b {background-position:0 -540px;}
div.wop-mama p.chr-head b {background-position:0 -600px;}
div.wop-an p.chr-head b {background-position:0 -660px;}
div.wop-ogura p.chr-head b {background-position:0 -720px;}
div.wop-ihara p.chr-head b {background-position:0 -780px;}
div.wop-taka p.chr-head b {background-position:0 -840px;}
div.wop-nori p.chr-head b {background-position:0 -900px;}
div.wop-yu p.chr-head b {background-position:0 -960px;}
div.wop-misuzu p.chr-head b {background-position:0 -1020px;}
div.wop-midori p.chr-head b {background-position:0 -1080px;}

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);
}
}


div.wop-nagi p.chr-photo {
	position:relative;
}
div.wop-nagi p.chr-photo:before {
	content:"";
	display:block;
	background-image:url(../character/img/ph_nagi.png);
	background-repeat:no-repeat;
	position:absolute;
}
@media all and (min-width: 768px) {
div.wop-nagi p.chr-photo:before {
	width:170px;
	height:128px;
	left:-28px;
	bottom:-35px;
}
}
@media all and (max-width: 767px) {
div.wop-nagi p.chr-photo:before {
	background-size:cover;
	width:112px;
	height:84px;
}
}
@media all and (min-width: 480px) and (max-width: 767px) {
div.wop-nagi p.chr-photo:before {
	left:-20px;
	bottom:-20px;
}
}
@media all and (max-width: 479px) {
div.wop-nagi p.chr-photo:before {
	left:-42px;
	bottom:-20px;
}
}



@media all and (min-width: 768px) {
div.bx-w-chara:after {
	content:"";
	display:block;
	background-image:url(../character/img/icon_sunflower.png);
	width:103px;
	height:73px;
	position:absolute;
	right:0;
	bottom:0;
}
}
@media all and (max-width: 479px) {
div.chr-scrl-box {
	position:relative;
}
div.chr-scrl-box:before {
	content:"";
	display:block;
	background-image:url(../character/img/icon_sunflower.png);
	background-size:cover;
	background-repeat:no-repeat;
	width:62px;
	height:44px;
	position:absolute;
	right:0;
	top:-44px;
}
}