@charset "utf-8";

/* 共通リセット */
ol,ul,li,dl,dt,dd {
	list-style: none;
	margin: 0;
	padding: 0;
}
 
a {
	outline: none;
	text-decoration: none;
}

a:link {
	color: #0099ff;
	text-decoration: none;
}

a:visited {
	color: #0099ff;
	text-decoration: none;
}

a:hover {
	color: #0099ff;
	text-decoration: underline;
}

a:active {
	color: #0099ff;
	text-decoration: underline;
}

body {
	background-color: #fafafa;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, sans-serif;
}

img {
	border: none;
	vertical-align: bottom;
}

/* Clearfix */
#contents:before,
#contents:after,
ul.article_list > li a:before,
ul.article_list > li a:after,
#pr li a:after,
#sp li a:after {
	clear: both;
	content: "";
	display: block;
	height: 0;
	visibility: hidden;
}

.cf:before,
.cf:after {
	content: "";
	display: table;
}

.cf:after { clear: both; }

#contents {
	border-left: 1px solid #cccccc;
	border-right: 1px solid #cccccc;
	margin: 0 auto;
	width: 1000px;
}

#contents > header {
	padding: 15px 0;
}

#contents_left {
	float: left;
	margin: 10px 0 0 15px;
	width: 655px;
}

#contents_right {
	float: right;
	margin: 10px 15px 0 0;
	width: 300px;
}

/* トップバナー */
#banner_top .adcloud_frame div {
	margin: 0 auto !important;
}

/* 電アケロゴ */
#logo {
	float: left;
	margin: 0 0 0 15px;
}

/* 記事検索 */
.search {
	border: 1px solid #cccccc;
	border-radius: 5px;
	float: right;
	margin: 0 15px 0 0;
}

/* 検索ボタン デザインリセット */
.search .search_text {
	background-color: transparent;
	border: none;
	border-right: none;
	border-radius: 5px 0 0 5px;
	box-sizing: border-box;
	color: #303030;
	font-size: 20px;
	float: left;
	margin: 0;
	outline: none;
	padding: 8px;
	width: 70%;
}

.search .search_button {
	background-color: #e60012;
	border-radius: 0 5px 5px 0;
	border: none;
	box-sizing: border-box;
	color: #ffffff;
	font-size: 20px;
	float: right;
	margin: 0;
	outline: none;
	padding: 8px;
	width: 30%;
}

.search .search_button:hover {
	background-color: #e60012;
	padding: 9px 7px 7px 9px;
}

.search .search_button:active {
	box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5) inset;
}

/* RSS */
/* Twitter */
.link_rss,
.link_twitter {
	font-size: 52px;
	float: right;
	height: 52px;
	line-height: 1em;
	margin: 0 15px 0 0;
	width: 45px;
}

.link_rss span,
.link_twitter span {
	display: none;
}

/* RSS */
.link_rss .fa {
	color: #ee2020;
}

/* Twitter */
.link_twitter .fa {
	color: #55acee;
}

/* 記事検索 */
.search {
	width: 50%;
}

/* ナビゲーション */
nav.arcade_navigation {
	box-shadow: 0 1px 2px 0 #b0b0b0;
	box-sizing: border-box;
	color: #ffffff;
	position: relative;
	text-align: center;
}

nav.arcade_navigation ul {
	background-color: #7d0000;
	box-sizing: border-box;
	border-left: 1px solid #590000;
	border-top: 1px solid #590000;
}

nav.arcade_navigation ul li {
	float: left;
	font-size: 20px;
	list-style: none;
	padding: 0;
	width: 15%;
}

nav.arcade_navigation ul li.nav_feature,
nav.arcade_navigation ul li.nav_special {
	width: 12.5%;
}

nav.arcade_navigation ul li.arcade_navigation_feature,
nav.arcade_navigation ul li.arcade_navigation_review,
nav.arcade_navigation ul li.arcade_navigation_ranking {
	width: 16%;
}

nav.arcade_navigation ul li a {
	border-bottom: 1px solid #590000;
	border-right: 1px solid #590000;
	color: #ffffff;
	cursor: pointer;
	display: block;
	font-weight: bold;
	padding: 10px 0;
	text-decoration: none;
}

/* メニュー内・カテゴリ展開時 */
nav.arcade_navigation {
	clear: both;
}

nav.arcade_navigation ul.category_menu {
	background-color: #dddddd;
	border: none;
	box-shadow: 0 1px 2px 0 #b0b0b0;
	display: none;
	position: absolute;
	right: 0;
	width: 100%;
	z-index: 10000;
}

nav.arcade_navigation ul.category_menu {
	margin: 0;
	padding: 0;
	width: 310px;
}

nav.arcade_navigation ul.category_menu li {
	background-color: #dddddd;
	float: none;
	font-size: 14px;
	width: 100%;
}

nav.arcade_navigation ul.category_menu li a {
	border: 1px solid #999999;
	border-top: none;
	display: block;
	color: #666666;
}

nav.arcade_navigation ul li:hover { background-color: #590000; }

nav.arcade_navigation ul.category_menu li:hover,
nav.arcade_navigation ul.category_menu li a:hover {
	background-color: #999999;
	color: #ffffff;
}

/* パンくず */
#path {
	color: #606060;
	font-size: 14px;
	line-height: 1.4em;
	margin: 10px 0 0;
	padding: 0 15px;
}

/* 各ページ共通・大枠 */
#contents_left > section,
#contents_right > section {
	background-color: #fafafa;
	border: 1px solid #dadada;
	box-shadow: 0 0 5px 0 #cccccc;
	box-sizing: border-box;
	margin: 0 0 15px;
	width: 100%;
}

#contents_left > section > h2,
#contents_right > section > h2 {
	background-image: url(http://common.dengeki.com/dol/img/dag_border_double.png);
	background-size: 1.5em 100%;
	background-repeat: no-repeat;
	background-position: left bottom;
	border-bottom: 2px solid #7d0000;
	box-shadow: 0 1px 0 0 #dadada;
	color: #7d0000;
	font-size: 1em;
	line-height: 2em;
	margin: 0;
	padding: 0 0 0 1.7em;
}

section > .more {
	font-size: 14px;
	line-height: 1.2em;
	margin: 12px 0;
	padding: 0 15px 0 0;
	text-align: right;
}

section > .more a {
	font-weight: bold;
}

/* 右サイド */
#banner_rectangle .adcloud_frame div {
	margin: 0 auto 15px !important;
}

/********************************/
/* 右サイドコンテンツ・基本 */
/********************************/
#contents_right section > h2 {
	margin: 0 0 5px;
}

#pr li a,
#sp li a {
	border-bottom: 1px dotted #909090;
	display: block;
	padding: 5px 10px;
}

#pr li a:hover,
#sp li a:hover,
#pr li a:active,
#sp li a:active {
	text-decoration: none;
}

#pr li h3,
#sp li h3,
#access_ranking li h3 {
	font-size: 14px;
	font-weight: bold;
	line-height: 1.2em;
	margin: 0 0 5px;
}

.side_contents p {
	font-size: 12px;
	line-height: 1.3em;
	margin: 1px 0 0;
}
.side_contents .thumb {
	border: 1px solid #c0c0c0;
	display: block;
	float: left;
	margin: 0 5px 0 0;
}

.side_contents p.more {
	font-size: 12px;
	line-height: 1.2;
	margin: 8px 0;
	padding: 0 5px;
	text-align: right;
}

/* アクセス数ランキング */
#access_ranking ol li {
	border-bottom: 1px dotted #c0c0c0;
	font-size: 14px;
	line-height: 1.2em;
	padding: 10px;
}

#access_ranking ol li span.rank_num {
	display: block;
	float: left;
	margin: 0 10px 0 0;
}

#access_ranking ol span {
	display: block;
	font-weight: bold;
	font-size: 12px;
	height: 14px;
	line-height: 1.1em;
	padding: 15px 5px;
	text-align: center;
	width: 34px;
}

#access_ranking ol li span.rank_num {
	background-color: #cccccc;
	color: #666666;
}

#access_ranking ol li.rank1 span.rank_num {
	background-color: #cc9900;
	color: #ffffff;
}

#access_ranking ol li.rank2 span.rank_num {
	background-color: #999999;
	color: #ffffff;
}

#access_ranking ol li.rank3 span.rank_num {
	background-color: #996666;
	color: #ffffff;
}

#access_ranking ol li h3 {
	font-weight: normal;
	display: table-cell;
}

#access_ranking .term {
	color: #909090;
	font-size: 12px;
	line-height: 1.4em;
	margin: 8px 0;
	padding: 0;
	text-align: right;
}

/* 共通フッター */
footer {
	border-left: 1px solid #cccccc;
	border-right: 1px solid #cccccc;
	clear: both;
	margin: 0 auto;
	padding: 30px 15px;
	width: 970px;
}

footer ul {
	margin: 20px 0;
	text-align: center;
}

footer ul#footer_menu {
	background-color: #f0f0f0;
	border-radius: 5px;
	padding: 10px;
}

footer li {
	border-right: 1px solid #909090;
	display: inline-block;
	font-size: 12px;
	line-height: 1.2em;
	padding: 0 0.75em;
}

footer li:last-child {
	border-right: none;
}

footer #copyright_corp {
	font-size: 12px;
	line-height: 1.2em;
	margin: 20px 0;
	text-align: center;
}

/* ページトップへ */
#pagetop {
	bottom: 20px;
	position: fixed;
	right: 20px;
}

#pagetop a {
	display: block;
	padding: 30px 10px;
	width: 80px;
	height: 30px;
	background: rgba(125, 0, 0, 0.75) url(http://common.dengeki.com/dol/img/dag_arrow_up.png) center 10px no-repeat;
	background-size: 20%;
}

#pagetop a span {
	display: block;
	color: #ffffff;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}

#pagetop a:hover {
	background-color: #7d0000;
	text-decoration: none;
}

/******************************/
/* 表示切り替え */
/******************************/
#viewMode1 {
	background-color: #f0f0f0;
	border: 1px solid #a0a0a0;
	font-size: 1.8em;
	line-height: 1em;
	margin: 15px auto 75px;
	padding: 15px 0;
	text-align: center;
}

#viewMode1 { width: 90%; }