@charset "UTF-8";

/* Web Font */
/*
@font-face {
  font-family: "title";
  src: url("common/fonts/font.eot?") format('eot'),
       url("common/fonts/font.woff") format('woff');
  src: url('common/fonts/font.ttf') format("truetype")\9;
}
*/

/*
	HTML5 Reset :: style.css
	----------------------------------------------------------
	We have learned much from/been inspired by/taken code where offered from:
	Eric Meyer					:: http://meyerweb.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com
-------------------------------------------------------------------------------*/
html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video, details, summary {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}									
article, aside, figure, footer, header, hgroup, nav, section, details, summary {display: block;}
ul {list-style: none;}
blockquote, q {quotes: none;}
blockquote:before, 
blockquote:after, 
q:before, 
q:after {content: ''; content: none;}
a {margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent;}
del {text-decoration: line-through;}
abbr[title], dfn[title] {border-bottom: 1px dotted #000; cursor: help;}
table {border-collapse: collapse; border-spacing: 0;}
th {font-weight: bold; vertical-align: bottom;}
td {font-weight: normal; vertical-align: top;}
hr {display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0;}
input, select {vertical-align: middle;}
pre {
	white-space: pre; /* CSS2 */
	white-space: pre-wrap; /* CSS 2.1 */
	white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
	word-wrap: break-word; /* IE */
}
input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom;}
select, input, textarea {font: 99% sans-serif;}
table {font-size: inherit; font: 100%;}
small {font-size: 85%;}
strong {font-weight: bold;}
td, td img {vertical-align: top;} 
sub, sup {font-size: 75%; line-height: 0; position: relative;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}
pre, code, kbd, samp {font-family: monospace, sans-serif;}
.clickable,
label, 
input[type=button], 
input[type=submit], 
button {cursor: pointer;}
button, input, select, textarea {margin: 0;}
button {width: auto; overflow: visible;}
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }  
.clearfix:after { clear: both; }  
.clearfix { zoom: 1; }




/* Product Style
-------------------------------------------------------------------------------*/
* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;  }
.chromeframe {position: absolute; top: 0;}

/* Android4.4未満対応 */
* {background-color: rgba(255,255,255,0.01); }

/* 選択時の色 */
::-moz-selection{background: #E2007E; color: #fff; text-shadow: none;}
::selection {background: #E2007E; color: #fff; text-shadow: none;} 

body {
	font-size: 13px;
	font-family: "Lucida Grande", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, Verdana, sans-serif;
	background: #111 url(../img/pre-bg.png) no-repeat center bottom;
	background-size: contain;
	background-attachment: fixed;
	line-height: 1.2;
	color: #fff;
}
select, input, textarea {color: #fff; background: #fff;}

a {color: #000;}
a:hover {color: #ff42aa;}
a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
}
/* タップ時の色 */
a:link {-webkit-tap-highlight-color: rgba(255,255,255,0.5);}

.disabled {
	opacity: 0.3;
	-webkit-filter: grayscale(100%); /* モノトーンに変換 webkit */
	-moz-filter: grayscale(100%); /* モノトーンに変換 Firefox */
	filter: grayscale(100%); /* モノトーンに変換 CSS3 */
	filter: progid:DXImageTransform.Microsoft.BasicImage(Opacity=0.3, GrayScale=1); /* モノトーンに変換 IE5.5以降用 */
}
.center {
	text-align: center;
}
.bt,
input[type=submit],
input[type=button] {
	display: inline-block;
	margin: 10px;
	padding: 10px 20px;
	background: #333;
	color: #fff;
	border: 0 none;
	border-radius: 4px;
	line-height: 1.2;
	font-size: 1.1em;
	text-decoration: none;
	-webkit-appearance: none;
}
input[type=button],
input[name=submitBack] {
	background: #666;
}
.bt:hover,
input[type=submit]:hover,
input[type=button]:hover {
	background: #000;
	color: #fff;
}
.pc-br {
	display: block;
	height: 0;
	overflow: hidden;
}
.sp-br {
	display: inline;
	width: 0;
	height: 0;
	overflow: hidden;
}
.social-icon a {
	display: inline-block;
	min-width: 28px;
	padding: 7px;
	line-height: 0;
	background: #fff;
	border-radius: 100px;
	font-size: 14px;
	color: #fff;
	text-align: center;
}
.social-icon-facebook a {
	background: #3B5998;
}
.social-icon-twitter a {
	background: #55ACEE;
}
.social-icon-facebook a:hover,
.social-icon-twitter a:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
}
.pc-view {
	display: block;
}
.sp-view {
	display: none;
}
.home-social {
	text-align: right;
}
.home-social.sp-view {
	margin: 10px 0 0 0;
	text-align: center;
}
.home-social li {
	display: inline-block;
	vertical-align: top;
	margin: 0 0 0 20px;
}
.home-social.sp-view li {
	display: inline-block;
	vertical-align: top;
	margin: 0 20px;
}
.home-social.sp-view iframe {
	-webkit-transform:scale(1.2);
	-moz-transform:scale(1.2);
	transform:scale(1.2);
}



/* header
-------------------------------------------------------------------------------*/



/* main
-------------------------------------------------------------------------------*/
.main {
	display: block;
	width: 1084px;
	max-width: 100%;
	margin: 0 auto;
	padding: 20px 0 0;
	overflow: hidden;
}
.col {
	width: 520px;
	overflow: hidden;
	float: right;
	padding: 20px 0 0 0;
}
.main h1 {
	width: 552px;
	float: left;
	padding: 4px 0 0 0;
}
.col1 {
	width: 300px;
	float: left;
}
.col2 {
	width: 200px;
	float: right;
}

#schedule,
#news,
#twitter,
#staff,
#musik-producer {
	margin: 0 0 15px;
	border: 5px solid #4A4A4A;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
	color: #222;
}
#schedule {
	padding: 10px 0;
	text-align: center;
	border-color: #E2007E;
}
#news {
	padding: 10px 0 0 10px;
	border-color: #019843;
}
#news li {
	margin-bottom: 8px;
}
#news ul {
	overflow: auto;
	padding: 0 10px 0 0;
}
#news dt {
	margin: 0 0 3px;
	font-family: Helvetica, sans-serif;
	font-size: 18px;
	color: #019843;
}
#twitter {
	border-color: #01A0EB;
}
#staff {
	padding: 10px 10px 0;
	border-color: #930784;
	line-height: 1.4;
}
#musik-producer {
	height: 322px;
	padding: 10px;
	border-color: #E7020C;
	text-align: center;
}
#pv,
.pv {
	margin: 0 0 15px;
	text-align: center;
	overflow: hidden;
	border-radius: 10px;
	background: #FF353E;
}
#pv a,
.pv a {
	display: block;
	overflow: hidden;
	line-height: 0;
}
#pv a i {
	margin-left: 10px;
}
#pv li {
	margin-top: 2px;
}
#pv li:first-child {
	margin-top: 0;
}
#news h2,
#staff h2 {
	margin: -13px 0 10px 0;
	line-height: 0;
}
#staff dl {
	margin-bottom: 16px;
	line-height: 1.2;
}
#staff dt {
	margin-bottom: 2px;
	font-size: 12px;
	color: #930784;
}
#staff dd {
	margin: 0 0 8px 0;
	font-size: 16px;
	letter-spacing: -0.5px;
}
#staff dd li {
	display: inline-block;
	margin: 0 0.6em 0 0;
}
#staff .other {
	text-align: right;
}


#musik-producer h2 {
	margin: -13px 0 20px -11px;
	line-height: 0;
	text-align: left;
}


#story,
#character,
#dcomment,
#special {
	width: 940px;
	margin: 30px auto;
}
#story h2,
#character h2,
#dcomment h2,
#special h2 {
	margin: 0 0 -5px;
	text-align: left;
	line-height: 0;
}
#story .detail,
#character .detail,
#dcomment .detail,
#special .detail {
	overflow: hidden;
	border-radius: 20px;
	text-align: center;
	background: #fff;
	color: #222;
}
#story .detail {
	padding: 20px 0;
	line-height: 1.8;
	font-size: 18px;
	font-weight: bold;
	border: 5px solid #E2007E;
}
#character .detail {
	padding: 20px 0 0;
	line-height: 0;
	border: 5px solid #EB5417;
}
#dcomment .detail {
	padding: 20px 0;
	line-height: 1.8;
	font-size: 18px;
	font-weight: bold;
	border: 5px solid #C206AF;
}
#special .detail {
	padding: 0;
	line-height: 1.8;
	font-size: 18px;
	font-weight: bold;
	border: 5px solid #F5A623;
}
#special a {
	display: block;
}
#special .banner {
	line-height: 0;
}
#character figure {
	height: 477px;
	overflow: hidden;
}
#character .detail-character {
	display: inline-block;
	margin: 0 10px 10px;
}
#character .detail-character figure {
	height: auto;
	overflow: hidden;
	padding: 0 20px;
}
.detail-character-frame {
	text-align: center;
}
#character h2.center {
	text-align: center;
}
#character h2 {
	margin: 0 0 20px;
}
.character-thumb-list {
	margin: 0 auto 0;
	text-align: center;
}
.character-thumb-list li {
	display: inline-block;
	margin: 15px;
}
.character-thumb-list a img {
	transition: transform 0.1s linear;
}
.character-thumb-list a:hover img {
	opacity: 1;
	filter: alpha(opacity=100);
	transform: scale(0.9);
}

.fs-lightbox-meta {
	display: none;
}
.fs-lightbox,
.fs-lightbox-container {
	background: #EB5417;
}
.fs-lightbox-content {
	border-radius: 4px;
}
.fs-lightbox-mobile .fs-lightbox-container {
	background: #EB5417;
}


/* news
-------------------------------------------------------------------------------*/
.news {
	width: 1080px;
	margin: 60px auto 50px;
}
.news-side {
	float: right;
	width: 240px;
}
.news-side h1 {
	display: inline-block;
	width: 240px;
	padding: 10px 0;
	text-align: center;
	background: #fff;
	border-radius: 10px;
}
.news-side nav {
	margin: 15px 0;
	padding: 15px;
	border: 5px solid #8FC320;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
	color: #222;
}
.news-side .archive-link li {
	margin: 0 0 15px;
	line-height: 1.4;
}
.news-side nav a {
	font-weight: bold;
	text-decoration: none;
}
.news-side nav .bt {
	padding: 10px 15px;
}
.paging {
	text-align: center;
}
.paging li {
	display: inline-block;
}
.news-main {
	float: left;
	width: 800px;
	font-size: 16px;
}
.news-main h1 {
	line-height: 0;
}
.news-main-frame {
	margin: -3px 0 15px;
	padding: 20px;
	border: 5px solid #8FC320;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
	color: #222;
}
.the_post {
	position: relative;
	margin: 0 0 60px;
}
.the_content {
	line-height: 1.8;
}
.the_post h2 {
	margin: 0 0 12px;
	padding: 0 0 0 10px;
	font: bold 24px/1.2 sans-serif;
	text-shadow: 0px 0px 6px #FFFFFF;
	border-left: 7px solid #8FC320;
}
.the_post:before,
.the_post:after {
	position: absolute;
	bottom: -35px;
	content: '\f069';
	margin-left: -12px;
	font-family: FontAwesome;
	font-size: 24px;
	color: #ededed;
}
.the_post:before {
	left: 45%;
}
.the_post:after {
	left: 55%;
}
.the_time {
	margin: 0 0 12px;
	text-align: left;
}
.the_time li {
	display: inline-block;
	margin: 0 5px 0 0;
	vertical-align: middle;
}
.the_date a {
	color: #000;
	font-weight: normal;
	font-size: 20px;
	font-family: 'Open Sans', sans-serif;
	text-decoration: none;
	color: #999;
}
.the_date a:hover {
	color: #999;
}
.the_content figure {
	display: table;
	text-align: center;
	margin-bottom: 20px;
}
.the_content figure img {
	max-width: none;
}
.the_content .figure-right {
	float: right;
	margin: 0 0 20px 20px;
}
.the_content .figure-left {
	float: left;
	margin: 0 20px 20px 0;
}
.the_content .figure-center {
	margin-left: auto;
	margin-right: auto;
}
.the_content figcaption {
	font-size: 0.9em;
	color: #777;
}
.the_content p {
	margin: 1em 0;
}
.news .bt {
	background: #8FC320;
}
.news .bt:hover {
	background: #666;
}
.link-home {
	text-align: center;
	font-weight: bold;
}



/* popup
-------------------------------------------------------------------------------*/
#popup {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.75);
}
#popup-close {
	position: absolute;
	width: 100%;
	z-index: 20;
	padding: 20px;
	text-align: right;
}
.popup-close {
	/* padding: 30px 20px 20px; */
	position: absolute;
	width: 100%;
	bottom: 30px;
	left: 0;
	text-align: center;
}
#popup-close img,
.popup-close img {
	cursor: pointer;
}
#popup-detail {
	position: relative;
	width: 100%;
	height: 100%;
}
.popup-detail-inner {
	position: relative;
	display: table;
	width: 100%;
	height: 100%;
}
.popup-detail-text {
	display: table-cell;
	padding: 30px 15px 100px;
	vertical-align: middle;
	text-align: center;
}
.popup-detail-text img {
	max-width: 100%;
	max-height: 100%;
}
.popup-broadcast-list {
	margin: 15px 0 0 0;
}
.popup-broadcast-list li {
	display: inline-block;
	margin: 5px;
}
.popup-broadcast-list a {
	display: inline-block;
	min-width: 200px;
	padding: 7px;
	background: #ffea00;
	border-radius: 5px;
	font-size: 15px;
	font-weight: bold;
	text-decoration: none;
}
.popup-broadcast-list a:before {
	content: '\f061';
	margin-right: 5px;
	font-family: FontAwesome;
}
.popup-note {
	margin: 5px 0 0 0;
	font-size: 12px;
}


/* footer
-------------------------------------------------------------------------------*/
footer {
	padding: 50px 0;
	text-align: center;
	line-height: 1.5;
}
footer a {
	color: #fff;
}
.footer-nhk-link,
.footer-copyright,
.footer-copyright-logo {
	margin: 20px 0;
}
.footer-nhk-link a {
	display: inline-block;
	padding: 8px 20px;
	line-height: 1.2;
	color: #000;
	font-size: 16px;
	font-weight: bold;
	background: #fff;
	border-radius: 5px;
	text-decoration: none;
}
.footer-nhk-link a:hover {
	background: #ff0c81;
	color: #fff;
}
.footer-nhk-link a span {
	text-decoration: underline;
}
.footer-copyright-logo,
.footer-copyright-logo a {
	color: #000;
}
.footer-copyright-logo ul {
	display: inline-table;
	background: rgba(255,255,255,.75);
	font-size: 10px;
	border-radius: 5px;
}
.footer-copyright-logo ul li {
	display: table-cell;
	vertical-align: middle;
	padding: 5px;
}
.footer-copyright-logo ul li.notice-pc {
	display: table-cell;
}
.footer-copyright-logo ul li.notice-sp {
	display: none;
}



/* Print styles
-------------------------------------------------------------------------------*/
@media print {

}


/* Media queries
-------------------------------------------------------------------------------*/
@media screen and (max-width: 1084px) {

.main {
	padding: 0 20px;
}
.main h1 {
	width: 460px;
	padding: 20px 0 0 0;
}
.main h1 img {
	max-width: 100%;
	height: auto;
}
.col {
	padding: 20px 0 0 0;
}
.news {
	width: auto;
	margin: 20px 20px 50px;
}
.news-side,
.news-main {
	float: none;
	width: auto;
}
.news-side {
	text-align: center;
}
.news-side h1 {
	margin: 0 0 10px;
}
.news aside {
	display: none;
}
.news img {
	max-width: 100%;
	height: auto;
}
	
}

@media screen and (max-width: 1000px) {

.pc-br {
	display: inline;
}
.main h1 {
	width: 100%;
	float: none;
	text-align: center;	
}
.col {
	float: none;
	margin: 0 auto;
}
#story,
#character,
#dcomment,
#special {
	width: auto;
	padding: 0 20px;
}
#character figure {
	height: auto;
	padding: 20px 20px 0;
}
#character img,
#dcomment img,
#special img {
	max-width: 100%;
	height: auto;
}
#story .detail,
#dcomment .detail {
	padding: 20px;
	text-align: left;
}

}

@media screen and (max-width: 900px) {
#character .detail-character {
	display: block;
	margin: 0 0 10px;
}
#character h2.center {
	text-align: left;
}
}

@media screen and (max-width: 600px)  {

.main {
	margin: 0;
}
.col {
	width: 100%;
}
.col1,
.col2 {
	float: none;
	width: 100%;
}
#news,
#twitter {
	height: auto;
}
#story h2,
#character h2,
#dcomment h2 {
	margin: 0 0 -3px;
}
#story h2 img,
#character h2 img,
#dcomment h2 img {
	width: auto;
	height: 40px;
}
#story .detail {
	font-size: 14px;
}
#story .detail,
#character .detail {
	border-radius: 10px;
}
#character .detail {
	padding: 0;
}
#character figure {
	padding: 0 10px;
}
.pc-view {
	display: none;
}
.sp-view {
	display: block;
}
#character .detail.sp-view {
	margin: 0 0 10px;
}
.news-side h1 {
	display: block;
	width: auto;
}
#character h2 {
	margin: 0 0 20px;
}
.character-thumb-list img {
	width: 200px;
	height: 200px;
}

}

@media screen and (max-width: 480px)  {

#schedule {
	padding: 10px;
}
#schedule img,
#pv img {
	max-width: 100%;
	height: auto;
}
#story h2 img,
#character h2 img,
#dcomment h2 img {
	width: auto;
	height: 33px;
}
.news {
	margin: 10px 10px 50px;
}
.news-main-frame {
	padding: 12px;
}
.the_post h2 {
	padding: 0;
	border-left: 0 none;
}
.character-thumb-list img {
	width: 140px;
	height: 140px;
}
.popup-close img {
	max-width: 120px;
	height: auto;
}
.sp-br {
	display: block;
	width: auto;
	height: 0;
	overflow: hidden;
}
.footer-copyright-logo ul li {
	display: inline-block;
}
.footer-copyright-logo ul li.notice-pc {
	display: none;
}
.footer-copyright-logo ul li.notice-sp {
	display: block;
	padding: 0 10px 10px;
}
.footer-nhk-link a {
	font-size: 14px;
}

}

@media screen and (max-width: 380px)  {
.character-thumb-list img {
	width: 100px;
	height: 100px;
}
}

@media screen and (max-width: 320px)  {
.character-thumb-list img {
	width: 100px;
	height: 100px;
}
.popup-broadcast-list a {
	padding: 5px;
}
}


