@charset"UTF-8";

/*----------------------リセットCSS----------------------*/

/*
Copyright (c) 2009, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 3.0.0
build: 1549
*/
html{
    color:#000;background:#FFF;
}
div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{
    margin:0;padding:0;
}
table{
    border-collapse:collapse;border-spacing:0;
}
fieldset,img{ border:0; }
address,caption,cite,code,dfn,em,strong,th,var{
    font-style:normal;font-weight:normal;
}
li { list-style:none; } caption,th{ text-align:left; }
h1,h2,h3,h4,h5,h6{
    font-size:100%;font-weight:normal;line-height: 1em;
}
q:before,q:after{ content:''; }
abbr,acronym{ border:0;font-variant:normal; }
sup{ vertical-align:text-top; }
sub{ vertical-align:text-bottom; }
input,textarea,select{ font-family:inherit;font-size:inherit;font-weight:inherit; }
input,textarea,select{ *font-size:100%; }
legend{ color:#000; }

/*----------------------基本----------------------*/
a {
	outline: none;
	overflow: auto;
}

a:link, a:active, a:visited {
	border: none;
	text-decoration: none;
	margin: 0;
	color: #0f7;
}

a:hover {
	border: none;
	text-decoration: none;
	margin: 0;
	color: #f07;
}

html,body {
	font-size: medium;
	color: #bbb;
	text-shadow: 2px 2px 3px #000;
	width: 100%;
	height: auto;
	margin:0;
	padding:0;
	font-family:'メイリオ','Meiryo','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','sans-serif';
	background-color: #111;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #151515), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #151515),color-stop(.75, #151515), color-stop(.75, transparent),to(transparent));

	-webkit-background-size: 8px 8px;
}

wrapper {
	display: block;
	position: relative;
	float: left;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

h1 {	/* 作品名 */
	font-size: 250%;
	font-weight:bold;
	color: #eee;
	line-height: 1.2em;
}

ruby, rt { 
	text-indent: 0; 
}
ruby > rt {
	font-size: xx-small;
	color: #555;
	text-align: start;
}
rt {
	line-height: normal;
	-webkit-text-emphasis: none;
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	h1 {
		font-size: 150%;
	}
}
@media screen and (min-width: 1280px){
	h1 {
	font-size: 350%;
	}
}
.en{	/* 英語の作品名のフォント指定 */
	font-size: 400%;
	color: #fff;
	line-height: 1.2em;
	font-family:'impact','Meiryo','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','sans-serif';
}

hr {
	border: 0;
	height: 1px;
	width: 100%;
	margin: 1em 0;
	padding: 0;
	background: #333333; /* Old browsers */
	background: -moz-linear-gradient(left,  #000000 0%, #666666 40%, #666666 60%, #000000 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(0%,#000000), color-stop(40%,#666666), color-stop(60%,#666666), color-stop(100%,#000000)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left,  #000000 0%,#666666 40%,#666666 60%,#000000 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left,  #000000 0%,#666666 40%,#666666 60%,#000000 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(left,  #000000 0%,#666666 40%,#666666 60%,#000000 100%); /* IE10+ */
	background: linear-gradient(to right,  #000000 0%,#666666 40%,#666666 60%,#000000 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#333333', endColorstr='#333333',GradientType=1 ); /* IE6-9 */

}

/*----------------------ナビゲーション----------------------*/
.belt {
	display: block;
	position: relative;
	float: left;
	width: 100%;
	/* max-width:1920px; */
	height: 32px;
	margin: 0;
	padding: 0;
	font-size: 16px;
	
	background: #333333; /* Old browsers */
	background: -moz-linear-gradient(top,  #333333 0%, #222222 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#333333), color-stop(100%,#222222)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #444 0%,#222222 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #333333 0%,#222222 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #333333 0%,#222222 100%); /* IE10+ */
	background: linear-gradient(to bottom,  #333333 0%,#222222 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#333333', endColorstr='#222222',GradientType=0 ); /* IE6-9 */
}

.date{
	display: block;
	position: relative;
	float: left;
	width: 20%;
	height: 32px;
	margin: 0;
	padding: 0;
	color: #999;
	font-size: 16px;
	line-height: 32px;
	text-align: center;
	border-top: 1px solid #555;
	border-bottom: 1px solid #111;
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	.date{
		width: 40%;
	}
}

.date_f{
	display: block;
	position: relative;
	float: left;
	width: 20%;
	height: 32px;
	margin: 0;
	padding: 0;
	color: #999;
	font-size: 12px;
	line-height: 32px;
	text-align: center;
	border-top: 1px solid #555;
	border-bottom: 1px solid #111;
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	.date_f{
		width: 40%;
	}
}

a.date_a:link {
	color: #aaa;
}

a.date_a:active {
	color: #aaa;
}

a.date_a:visited {
	color: #aaa;
}

a.date_a:hover {
	color: #f07;
}

.new {
	display: block;
	position: relative;
	float: left;
	width: 0;
	height: 32px;
	width: 40%;	
	margin: 0;
	padding: 0;
	text-align: right;
	border-top: 1px solid #555;
	border-bottom: 1px solid #111;
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	.new{
		width: 30%;	
	}
}


.new:hover{
	background: #111; /* Old browsers */
	background: -moz-linear-gradient(top,  #111111 0%, #111111 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#111111), color-stop(100%,#222222)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #111111 0%,#222222 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #111111 0%,#222222 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #111111 0%,#222222 100%); /* IE10+ */
	background: linear-gradient(to bottom,  #111111 0%,#222222 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#111111', endColorstr='#222222',GradientType=0 ); /* IE6-9 */
}

.old {
	display: block;
	position: relative;
	float: left;
	width: 0;
	height: 32px;
	width: 40%;	
	margin: 0;
	padding: 0;
	text-align: left;
	border-top: 1px solid #555;
	border-bottom: 1px solid #111;
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	.old{
		width: 30%;	
	}
}

.old:hover{
	background: #111; /* Old browsers */
	background: -moz-linear-gradient(top,  #111111 0%, #111111 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#111111), color-stop(100%,#222222)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #111111 0%,#222222 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #111111 0%,#222222 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #111111 0%,#222222 100%); /* IE10+ */
	background: linear-gradient(to bottom,  #111111 0%,#222222 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#111111', endColorstr='#222222',GradientType=0 ); /* IE6-9 */
}

.icon {
	display: block;
	float: left;
	width: 0;
	height: 32px;
	width: 32px;	
	margin: 0;
	padding: 0;
}

/*----------------------コンテンツ----------------------*/
.centered {
  position: relative;
  overflow: hidden;
}

.centered ul {
  position: relative;
  left: 50%;
  float: left;
}

.centered ul li {
  position: relative;
  left: -50%;
  float: left;
}

.landscape {
	display: block;
	position: relative;
	float: left;
	width: 100%;
	/* max-width:1920px; */
	margin:0 auto;
	height: auto;
	padding: 0;
	line-height: 0;
	background-color: #000;
}

.sacrifice{
	background-color: #fff;
}


.landscape img {
	width:100%;
}

.unlandscape {
	display: block;
	position: relative;
	float: left;
	width: 100%;
	height: auto;
	/* max-width:1920px; */
	margin:0 auto;
	padding: 0;
	line-height: 0;
	background-color: #000;
}

.unlandscape img {
	width:100%;
	max-width: 500px;
}

.portrait img {
	width:50%;
	max-width: 50%;
	margin: 0 25%;
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	.portrait img {
		width:100%;
		max-width: 100%;
		margin: 0;
	}
}

.vertical img {
	width:34%;
	max-width: 34%;
	margin: 0 33%;
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	.vertical img {
		width:60%;
		max-width: 60%;
		margin: 0 20%;
	}
}

.square img {
	width:70%;
	max-width: 70%;
	margin: 0 15%;
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	.square img {
		width:100%;
		max-width: 100%;
		margin: 0;
	}
}

.sketchfab{
		width:100%;
		max-width: 100%;
		margin:0%;
}

@media screen and (min-width: 640px) and (max-width: 1279px) {
	.sketchfab{
		width:95%;
		max-width: 95%;
		margin:0 5 0 0%;
	}
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	.sketchfab{
		width:90%;
		max-width: 90%;
		margin:0 10 0 0%;
	}
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	.character img {
		width:70%;
		max-width: 70%;
		margin: 0 15%;
	}
}

.caption {
	display: block;
	position: relative;
	float: left;
	width: 90%;
	/* max-width:1920px; */
	height: auto;
	margin: 0 auto; 
	padding: 1em 5% 2em;
	background: #000000; /* Old browsers */
	background: -moz-linear-gradient(top,  #000000 0%, #111 10%, #222222 50%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#000000), color-stop(10%,#111), color-stop(50%,#222222)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #000000 0%,#111 10%,#222222 50%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #000000 0%,#111 10%,#222222 50%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #000000 0%,#111 10%,#222222 50%); /* IE10+ */
	background: linear-gradient(to bottom,  #000000 0%,#111 10%,#222222 50%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#222222',GradientType=0 ); /* IE6-9 */
	
}

@media screen and (min-width: 1280px){
	.caption {
		width: 70%;
		padding: 1em 15% 5em;
	}
}

@media screen and (min-width: 1280px){
	div.caption.small-width-img{		/* PBBS,縦長の絵などの場合，窓広げたときにキャプションのテキストをセンター揃えにする */
		width: 60%;						/* このときキャプションの最後に必ず<br>付けて，レコメンドのボックス位置の影響をなくすこと。 */
		padding: 1em 20% 2em;
		text-align: center;
	}
}

.caption small {		/* 旧 h1作品名のルビ 18/18/15以降rubyで対応 */
	font-size: xx-small;
	letter-spacing: 0.8em;
	color: #555;
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	.caption small {
		padding: 0;
		letter-spacing: 0em;
	}
}

@media screen and (min-width: 1280px){
	.caption small {
		letter-spacing: 1.6em;
	}
}

.caption p{		/* キャプション本文 */
	margin-top: 1.2em;
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	.caption p {
		margin-top: 0.6em;
	}
}

@media screen and (min-width: 1280px){
	.caption p {
		margin-top: 1.2em;
	}
}

.recommend {		/* 関連イラスト */
	display: block;
	position: relative;
	float: right;
	width: 30em;
	height: 64px;
	margin: 1em 0 0 0; 
	padding: 0;
	clear:right;
}

@media screen and (min-width: 0px) and (max-width: 639px) {
	.recommend {
		width: 100%;
	}
}

@media screen and (min-width: 1280px){
	.recommend {
		width: 35em;
	}
}

.recommend_img {
	display: block;
	position: relative;
	float: right;
	width: 64px;
	height: 64px;
	margin: 0; 
	padding: 0;
}

.recommend2 {
	display: block;
	position: relative;
	float: right;
	width: 70%;
	height: 32px;
	margin: 0; 
	padding: 0;
	text-align: right;
}

.recommend_type {
	display: block;
	position: relative;
	float: right;
	width: 100%;
	height: 32px;
	margin: 0; 
	padding: 0;
	font-family: "Times New Roman",serif;
	font-style : italic;
	border-bottom: 1px solid;
	text-align: left;
}

.recommend_type p{
	position: absolute;
    bottom: 0;
}

.recommend_title {
	display: block;
	position: relative;
	float: right;
	width: 100%;
	height: 32px;
	margin: 0; 
	padding: 0 0.5em 0 0;
	font-size: x-small;
	text-align: right;
}

a.recommend_a:link {
	border: none;
	text-decoration: none;
	margin: 0;
	color: #888;
}

a.recommend_a:active {
	border: none;
	text-decoration: none;
	margin: 0;
	color: #888;
}

a.recommend_a:visited {
	border: none;
	text-decoration: none;
	margin: 0;
	color: #888;
}

a.recommend_a:hover {
	border: none;
	text-decoration: none;
	margin: 0;
	color: #f07;
}

/*----------------------メモ----------------------*/
/* max-width:1920px;のコメントアウト解除すると.captionのwidthが揃わなくなる */