@charset "shift_jis";
@import url("./css/tables.css");
@import url("./css/commonstyles.css");
@import url("./css/textstyles.css");
/*
==================================================
スタイルの初期化
==================================================
*/
*{
	margin: 0;
	padding: 0;
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption {
	background: transparent;
	border: 0;
	font-size: 100%;
	outline: 0;
	vertical-align: baseline;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
body { line-height: 1; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
div, p, h1, h2, h3, h4, h5, h6 {
	_zoom: 1;
	display: block;
	text-align: left;
}
img {
	border: 0;
}
@media screen and (max-width: 899px) {
	img {
		font-size: 0;
		height: auto;
		line-height: 0;
		max-width: 100%;
		vertical-align: top;
	}
}
@media screen and (max-width: 640px) {
	img {
		float: none !important;
	}
}
:focus { outline: 0; }
ins { text-decoration: none; }
del { text-decoration: line-through; }
table {
	border-collapse: collapse;
	border-spacing: 0;
}
input, select {
	vertical-align: middle;
}
/*
==================================================
基本スタイル
==================================================
*/
body {
	background-color: #fff;
	color: #2e2e2e;
	font-family: 'メイリオ', Helvetica, 'Hiragino Kaku Gothic Pro', sans-serif;
	font-size: 14px;
	line-height: 180%;
	text-align: center;
	letter-spacing: -0.001em;		/* iOS4でのテキストの隙間への対応 */
	-webkit-text-size-adjust: 100%;		/* 文字サイズの自動調整機能のキャンセル */
}
h1, h2, h3, h4, h5, h6, .title, dt {
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Verdana,'ＭＳ Ｐゴシック',sans-serif;
	font-weight: 700;
}
.clear {
	clear: both;
	font-size: 1px;
	line-height: 0;
}
/* リスト
==================================================
*/
ul {
	padding: 10px 0;
}
ul li {
	background-image: url(img/li.png);
	background-position: 5px 10px;
	background-repeat: no-repeat;
	padding: 2px 0 2px 22px;
	position: relative;
}
@media all and (-webkit-min-device-pixel-ratio: 1.5) {
	 ul li {
		  background-image: url(img/li@2x.png);
		  -webkit-background-size: 8px 10px;
		  background-size: 8px 10px;
	 }
}
ol {
	list-style-type: decimal;
	padding: 10px 0 10px 25px;
}
/* リンク
==================================================
*/
a { color: #035099; }
a:hover {
	color: #035099;
	text-decoration: none;
}
a:hover img {
	background: none !important;
}
a img { background: none !important; }
#main a:hover, #menu a:hover, #rmenu a:hover, #pagetop a:hover {
	left: 1px;
	position: relative;
	top: 1px;
}
@media screen and (max-width: 640px) {
	#main a:hover, #menu a:hover, #rmenu a:hover, #pagetop a:hover {
		left: 0;
		top: 0;
	}
}
/*
==================================================
全体
==================================================
*/
/* レイアウト
==================================================
*/
#wrapper {
	overflow: hidden;
	position: relative;
	text-align: center;
}
#wrapper .inner {
	overflow: hidden;
	position: relative;
	text-align: left;
}
#contents {
	margin: 0 auto;
	padding: 15px 0 75px;
	position: relative;
	text-align: center;
	width: 900px;
}
#layoutbox{
}
#siteNavi {
	font-size: 12px;
	margin-bottom: 10px;
	padding: 0 5px;
}
@media screen and (max-width: 899px) {
	#contents {
		overflow: hidden;
		padding-left: 10px;
		padding-right: 10px;
		width: auto;
	}
}
@media screen and (max-width: 640px) {
	#wrapper .inner {
		overflow: visible;
	}
	#contents {
		padding: 10px 10px 0;
	}
	#siteNavi {
		margin-bottom: 5px;
		padding: 0;
	}
}
/* ページ上部へ戻る
==================================================
*/
#pagetop {
	bottom: 8px;
	clear: both;
	position: absolute;
	right: 0;
	z-index: 5;
}
#pagetop a {
	background-image: url(img/pagetop_button.png);
	background-position: left top;
	background-repeat: no-repeat;
	display: block;
	height: 28px;
	overflow: hidden;
	text-indent: 200%;
	white-space: nowrap;
	width: 148px;
}
@media screen and (max-width: 899px) {
	#pagetop {
		right: 10px;
	}
	#pagetop a {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e5e8ed), color-stop(100%,#d0d6dd));
		background: linear-gradient(to bottom, #e5e8ed 0%,#d0d6dd 100%);
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		color: #324154;
		font-size: 11px;
		line-height: 28px;
		padding: 0 10px 0 30px;
		position: relative;
		text-decoration: none;
		text-indent: 0;
		white-space: normal;
		width: auto;
	}
	#pagetop a:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(77%,#ededed), color-stop(100%,#ffffff));
		background: linear-gradient(to bottom, #ffffff 0%,#ededed 77%,#ffffff 100%);
		-webkit-border-radius: 7px;
		-moz-border-radius: 7px;
		border-radius: 7px;
		content: "";
		height: 14px;
		left: 10px;
		margin-top: -7px;
		position: absolute;
		top: 50%;
		width: 14px;
	}
	#pagetop a:after {
		border-bottom: 6px solid #5c687c;
		border-left: 3px solid transparent;
		border-right: 3px solid transparent;
		border-top: 0 solid transparent;
		content: "";
		display: block;
		left: 14px;
		margin-top: -3px;
		position: absolute;
		top: 50%;
	}
}
@media screen and (max-width: 640px) {
	#pagetop {
		background-color: #fafafa;
		margin: 0 -10px;
		padding: 10px;
		position: static;
	}
	#pagetop a {
		font-size: 14px;
		height: auto;
		line-height: normal;
		padding: 15px 0;
		text-align: center;
	}
	#pagetop a:before {
		left: 50%;
		margin-left: -85px;
	}
	#pagetop a:after {
		left: 50%;
		margin-left: -81px;
	}
}
/* 検索ボックス
==================================================
*/
#searchbox {
	background-image: url(img/search_input.gif);
	background-position: left top;
	background-repeat: no-repeat;
	font-size: 12px;
	height: 26px;
	left: 50%;
	margin-left: 227px;
	position: absolute;
	text-align: left;
	width: 223px;
	z-index: 1;
	top:27px;
}
#searchbox form {
	margin: 0;
	padding: 0;
	position: relative;
}
#searchbox input {
	background-color: transparent;
	background-image: url(img/searchbutton.gif);
	background-position: left top;
	background-repeat: no-repeat;
	border: none;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	cursor: pointer;
	height: 26px;
	left: 177px;
	overflow: hidden;
	position: absolute;
	text-indent: 200%;
	top: 0;
	white-space: nowrap;
	width: 46px;
	-webkit-appearance: none;
}
#searchbox .skwd {
	background-image: none;
	cursor: auto;
	height: 26px;
	left: 5px;
	line-height: 26px;
	text-indent: 0;
	width: 164px;
}
@media screen and (max-width: 899px) {
	#searchbox {
		background: none repeat scroll 0 0 transparent;
		left: auto;
		margin-left: 0;
		right: 10px;
		width: 24.7777777778%;
	}
	#searchbox input {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#585858), color-stop(50%,#434343), color-stop(50%,#363636), color-stop(100%,#575757));
		background: linear-gradient(to bottom, #585858 0%,#434343 50%,#363636 50%,#575757 100%);
		border-bottom: 2px solid #444444;
		border-left: 2px solid #383838;
		border-right: 2px solid #383838;
		border-top: 2px solid #adadad;
		color: #fff;
		height: 26px;
		left: auto;
		line-height: 26px;
		right: 0;
		text-align: center;
		text-indent: 0;
		text-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
		white-space: normal;
		width: 22.4215246637%;
		-webkit-appearance: none;
	}
	#searchbox .skwd {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f8f8f8), color-stop(100%,#ffffff));
		background: linear-gradient(to bottom, #f8f8f8 0%,#ffffff 100%);
		border: 1px solid #d2d2d2;
		color: #2e2e2e;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		left: 0;
		padding: 0 5px;
		right: auto;
		text-align: left;
		text-shadow: none;
		width: 76.2331838565%;
	}
}
@media screen and (max-width: 640px) {
	#searchbox {
		bottom: -56px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		height: auto;
		left: 0;
		overflow: hidden;
		padding: 0 10px;
		right: auto;
		text-align: left;
		top: auto;
		width: 100%;
	}
	#searchbox input {
		float: left;
		font-size: 14px;
		height: 36px;
		line-height: 36px;
		position: static;
		width: 20%;
	}
	#searchbox .skwd {
		height: 36px;
		line-height: 36px;
		width: 80%;
	}
}
/* 回り込み・回り込み解除
==================================================
*/
.txt-img {
}
.txt-img img{
	margin: 0 8px 8px 8px;
}
.center {
	margin-bottom: 5px;
	margin-top: 5px;
	text-align: center;
}
.float-l { float: left;}
.float-r { float: right;}
.float-l img,
.float-r img {
	margin-bottom: 20px;
}
.float-l img { 
	margin-right: 20px;
}
.float-r img {
	margin-left: 20px;
}
.clear, .FloatEnd {
	clear: both;
	font-size: 1px;
	height: 0;
	line-height: 0;
}
/* (スマホ用)画像の中央揃え処理 */
@media screen and (max-width: 640px) {
	.txt-img{
		padding: 0 10px;
		text-align: center !important;
	}
	.txt-img,.txt-img img{
		float:none !important;
	}
	.float-l p,.float-l{
		text-align:center;
		float:none;
	}
}
/*
==================================================
トップ部分
==================================================
*/
/* トップ
==================================================
*/
#top {
	background-image: url(img/top_bg.gif);
	background-position: left top;
	background-repeat: repeat;
	position: relative;
	text-align: center;
	z-index: 1;
}
#top h1 {
	background-image: url(img/h1_bg.gif);
	background-position: left top;
	background-repeat: repeat-x;
	padding: 3px 0;
}
#top h1 span {
	color: #fff;
	display: block;
	font-size: 12px;
	left: 50%;
	line-height: 1.8;
	min-height: 24px;  
	height: auto !important;  
	height: 24px;
	margin-left: -450px;
	position: relative;
	text-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
	width: 600px;
}
#top .inner {
	overflow: visible;
	position: relative;
}
#top h2 {
	background-color: #fff;
	background-image: url(img/top_inner_bg.gif);
	background-position: left bottom;
	background-repeat: repeat-x;
	border-bottom: 5px solid #4d5c73;
	-webkit-box-shadow: 0 0 3px rgba(51, 51, 51, 0.6);
	-moz-box-shadow: 0 0 3px rgba(51, 51, 51, 0.6);
	box-shadow: 0 0 3px rgba(51, 51, 51, 0.6);
	padding: 25px 0;
	position: relative;
	text-align: left;
}
#top h2 span {
	display: block;
	left: 50%;
	margin-left: -450px;
	position: relative;
	width: 600px;
}
#top h2 a {
	color: #324154;
	font-size: 22px;
	line-height: 1.4;
	text-decoration: none;
}
#top h2 a img {
	vertical-align: middle;
}
@media screen and (max-width: 899px) {
	#top h1,
	#top h2 {
		padding-left: 10px;
		padding-right: 10px;
	}
	#top h2 {
		background: none repeat scroll 0 0 #fff;
		z-index: 0;
	}
	#top h2:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e5e5e5), color-stop(100%,#fafafa));
		background: linear-gradient(to bottom, #e5e5e5 0%,#fafafa 100%);
		border-top: 1px solid #dddddd;
		bottom: 0;
		content: "";
		height: 4px;
		left: 0;
		position: absolute;
		right: 0;
	}
	#top h2:after {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#efefef));
		background: linear-gradient(to bottom, #ffffff 0%,#efefef 100%);
		border-bottom: 1px solid #fff;
		bottom: 5px;
		content: "";
		height: 40px;
		left: 0;
		position: absolute;
		right: 0;
		z-index: -1;
	}
	#top h1 span,
	#top h2 span {
		left: auto;
		margin-left: 0;
		width: 66.6666666667%;
	}
}
@media screen and (max-width: 640px) {
	#top {
		background: none repeat scroll 0 0 #3c4c63;
		position: static;
	}
	#top h1 {
		background: none, -webkit-gradient(linear, left top, left bottom, color-stop(0%,#1e2e44), color-stop(100%,#3c4c63));
		background: none, linear-gradient(to bottom, #1e2e44 0%,#3c4c63 100%);
	}
	#top h1,
	#top h2 {
		padding-right: 90px;
	}
	#top h1 span,
	#top h2 span {
		width: auto;
	}
	#top .inner {
		position: static;
	}
}
/* ヘッダー
==================================================
*/
#headerbox {
	background-image: url(img/headerbox_bg.gif);
	background-position: center top;
	background-repeat: repeat;
	padding: 15px 0;
	position: relative;
	text-align: center;
	z-index: -1;
}
#header {
	-webkit-box-shadow: 0 2px 3px rgba(179, 179, 179, 0.7);
	-moz-box-shadow: 0 2px 3px rgba(179, 179, 179, 0.7);
	box-shadow: 0 2px 3px rgba(179, 179, 179, 0.7);
	margin: 0 auto;
	position: relative;
	text-align: left;
	width: 900px;
}
@media screen and (max-width: 899px) {
	#headerbox {
		padding-left: 10px;
		padding-right: 10px;
	}
	#header {
		height: auto;
		width: auto;
	}
}
@media screen and (max-width: 640px) {
	#headerbox {
		padding: 10px;
	}
}

/* トップメニュー
==================================================
*/
#topmenubtn {
	display: none;
}
#topmenubox {
	text-align: center;
}
#topmenu {
	background-color: #e9eaec;
	background-image: url(img/topmenu_bg.gif);
	background-position: center bottom;
	background-repeat: repeat-x;
	-webkit-box-shadow: 0 1px 3px rgba(217, 217, 217, 0.9);
	-moz-box-shadow: 0 1px 3px rgba(217, 217, 217, 0.9);
	box-shadow: 0 1px 3px rgba(217, 217, 217, 0.9);
	padding: 8px 0;
	position: relative;
	text-align: center;
}
#topmenu ul {
	background-image: url(img/topmenu_li.gif);
	background-position: left top;
	background-repeat: repeat-y;
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Verdana,'ＭＳ Ｐゴシック',sans-serif;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	width: 900px;
	*margin: 0;
}
#topmenu li {
	background-image: url(img/topmenu_li.gif);
	background-position: right top;
	background-repeat: repeat-y;
	float: left;
	margin-bottom: -32767px;
	overflow: hidden;
	padding: 0 0 32767px 0;
	position: static;
	text-align: center;
	width: 180px;
}
#topmenu li a {
	color: #4c4c4c;
	font-size: 14px;
	text-decoration: none;
}
#topmenu li a:hover {
	text-decoration: underline;
}
@media screen and (max-width: 899px) {
	#topmenu {
		background: none repeat scroll 0 0 #e9eaec;
		padding-left: 10px;
		padding-right: 10px;
	}
	#topmenu:before {
		background-color: #fff;
		border-bottom: 2px solid #dcdcdc;
		bottom: 0;
		content: "";
		height: 1px;
		left: 0;
		position: absolute;
		right: 0;
	}
	#topmenu ul {
		background: none repeat scroll 0 0 transparent;
		display: table;
		margin: 0;
		table-layout: fixed;
		width: 100%;
	}
	#topmenu li {
		background: none repeat scroll 0 0 transparent;
		display: table-cell;
		float: none;
		margin: 0;
		padding: 0;
		width: auto;
	}
	#topmenu li a {
		display: block;
		position: relative;
	}
	#topmenu li a:before {
		background-color: #d7d8d9;
		bottom: 0;
		content: "";
		position: absolute;
		right: 0;
		top: 0;
		width: 1px;
	}
	#topmenu li:first-child a:after {
		background-color: #d7d8d9;
		bottom: 0;
		content: "";
		left: 0;
		position: absolute;
		top: 0;
		width: 1px;
	}
}
@media screen and (max-width: 640px) {
	#topmenubtn {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#eeeeee));
		background: linear-gradient(to bottom, #ffffff 0%,#eeeeee 100%);
		border: 1px solid #fff;
		-webkit-border-bottom-left-radius: 3px;
		-webkit-border-bottom-right-radius: 3px;
		-webkit-border-top-left-radius: 0;
		-webkit-border-top-right-radius: 0;
		-moz-border-radius: 0 0 3px 3px;
		border-radius: 0 0 3px 3px;
		-webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.15);
		-moz-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.15);
		box-shadow: 0 2px 3px rgba(0, 0, 0, 0.15);
		color: #324154;
		cursor: pointer;
		font-size: 11px;
		height: 56px;
		line-height: 26px;
		position: absolute;
		right: 10px;
		text-align: center;
		top: 0;
		width: 60px;
	}
	.topmenubtnOn {
		display: block !important;
	}
	#topmenubtn:before {
		border-bottom: 3px solid #324154;
		border-top: 3px solid #324154;
		bottom: 10px;
		content: "";
		height: 5px;
		left: 14px;
		position: absolute;
		width: 32px;
	}
	#topmenubtn:after {
		border-top: 3px solid #324154;
		bottom: 26px;
		content: "";
		height: 0;
		left: 14px;
		position: absolute;
		width: 32px;
	}
	#topmenubox {
		background-color: #21324a;
		display: none;
		overflow: hidden;
		padding: 10px;
		position: relative;
		z-index: 0;
	}
	#topmenubox:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#3c4c63), color-stop(100%,#21324a));
		background: linear-gradient(to bottom, #3c4c63 0%,#21324a 100%);
		content: "";
		height: 120px;
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
		z-index: -1;
	}
	#topmenubox:after {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#323f52), color-stop(100%,#3b4b62));
		background: linear-gradient(to bottom, #323f52 0%,#3b4b62 100%);
		content: "";
		height: 5px;
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
	}
	.menuon {
		display: block !important;
	}
	#topmenu {
		background: none repeat scroll 0 0 transparent;
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
		padding: 0 0 10px 0;
		z-index: auto;
	}
	#topmenu:before {
		background-color: transparent;
		border-bottom: none;
		bottom: auto;
		content: "";
		height: auto;
		left: auto;
		position: static;
		right: auto;
	}
	#topmenu ul {
		display: block;
	}
	#topmenu li {
		border-bottom: 1px solid #192639;
		border-top: 1px solid #3d4c61;
		display: block;
	}
	#topmenu li:first-child {
		border-top: none;
	}
	#topmenu li:last-child {
		border-bottom: none;
	}
	#topmenu li a {
		color: #fff;
		padding: 8px 10px 8px 30px;
		text-align: left;
	}
	#topmenu li a:before {
		background-color: transparent;
		border-bottom: 3px solid transparent;
		border-left: 3px solid #fff;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		bottom: auto;
		left: 14px;
		position: absolute;
		right: auto;
		top: 17px;
		width: auto;
	}
	#topmenu li:first-child a:after {
		background-color: transparent;
		bottom: auto;
		content: "";
		left: auto;
		position: static;
		top: auto;
		width: auto;
	}
}

/* トップサブメニュー
==================================================
*/
#topsubmenu {
	font-size: 0;
	height: 22px;
	left: 50%;
	letter-spacing: -.40em;
	line-height: 0;
	margin-left: 224px;
	position: absolute;
	text-align: right;
	top: 0;
	width: 226px;
	z-index: 2;
}
#topsubmenu span {
	display: inline-block;
	height: 22px;
	letter-spacing: normal;
	line-height: normal;
	margin-left: 3px;
	width: 110px;
	*display: inline;
	*zoom: 1;
}
#topsubmenu span a {
	background-position: left top;
	background-repeat: no-repeat;
	display: block;
	height: 22px;
	overflow: hidden;
	text-indent: 200%;
	white-space: nowrap;
	width: 110px;
}
#topsubmenu span#rssbtn a {
	background-image: url(img/rss_button.gif);
}
#topsubmenu span#sitemapbtn a {
	background-image: url(img/sitemap_button.gif);
}
@media screen and (max-width: 899px) {
	#topsubmenu {
		height: auto;
		left: auto;
		margin-left: 0;
		right: 10px;
		width: auto;
	}
	#topsubmenu span {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#eeeeee));
		background: linear-gradient(to bottom, #ffffff 0%,#eeeeee 100%);
		border-bottom: 1px solid #fff;
		border-left: 1px solid #fff;
		border-right: 1px solid #fff;
		-webkit-border-bottom-left-radius: 3px;
		-webkit-border-bottom-right-radius: 3px;
		-webkit-border-top-left-radius: 0;
		-webkit-border-top-right-radius: 0;
		-moz-border-radius: 0 0 3px 3px;
		border-radius: 0 0 3px 3px;
		-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15) inset;
		-moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15) inset;
		box-shadow: 0 0 5px rgba(0, 0, 0, 0.15) inset;
		height: auto;
		width: auto;
	}
	#topsubmenu span a {
		color: #2e2e2e;
		font-size: 11px;
		height: auto;
		padding: 2px 15px 2px 25px;
		position: relative;
		text-decoration: none;
		text-indent: 0;
		white-space: normal;
		width: auto;
	}
	#topsubmenu span a:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#3c4c63), color-stop(100%,#1e2e44));
		background: linear-gradient(to bottom, #3c4c63 0%,#1e2e44 100%);
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		border-radius: 5px;
		content: "";
		height: 10px;
		left: 10px;
		margin-top: -6px;
		position: absolute;
		top: 50%;
		width: 10px;
	}
	#topsubmenu span a:after {
		border-bottom: none;
		border-left: none;
		border-right: 1px solid #ffffff;
		border-top: 1px solid #ffffff;
		content: "";
		height: 3px;
		left: 12px;
		margin-top: -3px;
		position: absolute;
		top: 50%;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		width: 3px;
	}
	#topsubmenu span#rssbtn a,
	#topsubmenu span#sitemapbtn a {
		background-image: none;
	}
}
@media screen and (max-width: 640px) {
	#topsubmenu {
		position: static;
		right: auto;
		top: auto;
	}
	#topsubmenu span {
		background: none repeat scroll 0 0 transparent;
		border-bottom: none;
		border-left: 1px solid #3d4c61;
		border-right: 1px solid #3d4c61;
		border-top: 1px solid #3d4c61;
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		border-radius: 0;
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
		display: block;
		float: none;
		margin-left: 0;
	}
	#topsubmenu span:last-child {
		border-bottom: 1px solid #3d4c61;
	}
	#topsubmenu span a {
		background-color: #25364e;
		color: #fff;
		font-size: 14px;
		padding: 10px;
		text-align: center;
	}
	#topsubmenu span a:before {
		background: none repeat scroll 0 0 transparent;
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		border-radius: 0;
		height: auto;
		left: auto;
		margin-top: 0;
		position: static;
		top: auto;
		width: auto;
	}
	#topsubmenu span a:after {
		border-bottom: none;
		border-left: none;
		border-right: none;
		border-top: none;
		height: auto;
		left: auto;
		margin-top: 0;
		position: static;
		top: auto;
		-webkit-transform: none;
		transform: none;
		width: auto;
	}
}

/*
==================================================
メインコンテンツ
==================================================
*/
/* 記事領域
==================================================
*/
#main {
	background-color: #fff;
	-webkit-box-shadow: 0 1px 3px rgba(153, 153, 153, 0.65);
	-moz-box-shadow: 0 1px 3px rgba(153, 153, 153, 0.65);
	box-shadow: 0 1px 3px rgba(153, 153, 153, 0.65);
	float: right;
	position: relative;
	width: 660px;
}
#main .inner {
	border: 1px solid #F5F5F5;
	margin: 1px;
	padding: 8px;
	position: relative;
}
#main .text, #text1, #text2, #text3, #text4, #text5, #text6, #text7, #text8, #text9, #text10, #space1, #space2 {
	margin-bottom: 15px;
	overflow: hidden;
	padding: 5px;
	position: relative;
}
@media screen and (max-width: 899px) {
	#main {
		width: 73.3333333333%;
	}
}
@media screen and (max-width: 640px) {
	#main {
		float: none;
		margin-bottom: 20px;
		position: static;
		width: 100%;
	}
	#main .inner {
		padding: 5px;
	}
	#main .text, #text1, #text2, #text3, #text4, #text5, #text6, #text7, #text8, #text9, #text10, #space1, #space2 {
		margin-bottom: 10px;
	}
}

/* 見出し
==================================================
*/
h2, h3, h4, h5, h6 {
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
}
#main h2, #main h3 {
	background-color: #6d7c91;
	background-image: url(img/h3_bg.gif);
	background-position: left bottom;
	background-repeat: repeat-x;
	border: 1px solid #34445d;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	-webkit-box-shadow: 0 1px 3px rgba(128, 128, 128, 0.7);
	-moz-box-shadow: 0 1px 3px rgba(128, 128, 128, 0.7);
	box-shadow: 0 1px 3px rgba(128, 128, 128, 0.7);
	margin-bottom: 10px;
	position: relative;
}
#main h2 span, #main h3 span {
	border-top: 1px solid #9da8b9;
	color: #fff;
	display: block;
	font-size: 18px;
	padding: 10px 15px;
	*zoom: 1;
}
#main .text h3, #text1 h3, #text2 h3, #text3 h3, #text4 h3, #text5 h3, #text6 h3, #text7 h3, #text8 h3, #text9 h3, #text10 h3, #space1 h3, #space2 h3 {
	margin-bottom: 30px;
	top: 20px;
}
#main h4 {
	background-color: #fff;
	background-image: url(img/h4_bg.gif);
	background-position: left bottom;
	background-repeat: repeat-x;
	border: 1px solid #d9d9d9;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	-webkit-box-shadow: 0 1px 3px rgba(242, 242, 242, 0.6);
	-moz-box-shadow: 0 1px 3px rgba(242, 242, 242, 0.6);
	box-shadow: 0 1px 3px rgba(242, 242, 242, 0.6);
	margin-bottom: 30px;
	position: relative;
	top: 20px;
}
#main h4 span {
	background-image: url(img/h4.gif);
	background-position: 8px 7px;
	background-repeat: no-repeat;
	border: 1px solid #fff;
	display: block;
	font-size: 16px;
	padding: 6px 10px 6px 20px;
	*zoom: 1;
}
#main h5 {
	background-image: url(img/h5.gif);
	background-position: left bottom;
	background-repeat: no-repeat;
	font-size: 15px;
	line-height: 1.5;
	margin: 20px auto 10px;
	padding: 0 0 10px;
}
#main h6 {
	background-image: url(img/h6.png);
	background-position: left 6px;
	background-repeat: no-repeat;
	margin: 5px auto;
	padding-left: 24px;
}
@media all and (-webkit-min-device-pixel-ratio: 1.5) {
	#main h6 {
		background-image: url(img/h6@2x.png);
		-webkit-background-size: 14px 12px;
		background-size: 14px 12px;
	}
}
#main .atn02 {
	background-color: #f7f7f7;
	border: 1px solid #ebebeb;
	margin: 20px 0 10px;
	position: relative;
}
#main .atn02 span {
	background-image: url(img/atn_02.gif);
	background-position: 20px 20px;
	background-repeat: no-repeat;
	border-top: 1px solid #fff;
	display: block;
	font-weight: bold;
	padding: 20px 10px 20px 60px;
}
@media screen and (max-width: 899px) {
	#main h2, #main h3 {
		background: none, -webkit-gradient(linear, left top, left bottom, color-stop(0%,#6d7c91), color-stop(50%,#51627a), color-stop(50%,#404f64), color-stop(95%,#4c5a6e), color-stop(100%,#6d7c91));
		background: none, linear-gradient(to bottom, #6d7c91 0%,#51627a 50%,#404f64 50%,#4c5a6e 95%,#6d7c91 100%);
	}
	#main h4 {
		background: none, -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(50%,#fafafa), color-stop(50%,#f0f0f0), color-stop(95%,#f0f0f0), color-stop(100%,#ffffff));
		background: none, linear-gradient(to bottom, #ffffff 0%,#fafafa 50%,#f0f0f0 50%,#f0f0f0 95%,#ffffff 100%);
	}
	#main h4 span {
		background: none repeat scroll 0 0 transparent;
		position: relative;
	}
	#main h4 span:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#828fa3), color-stop(100%,#283851));
		background: linear-gradient(to bottom, #828fa3 0%,#283851 100%);
		content: "";
		height: 22px;
		left: 8px;
		position: absolute;
		top: 7px;
		width: 3px;
	}
	#main h5 {
		background: none repeat scroll 0 0 transparent;
		position: relative;
	}
	#main h5:before {
		background-color: #f0f0f0;
		bottom: 0;
		content: "";
		height: 3px;
		left: 0;
		position: absolute;
		right: 0;
	}
	#main h5:after {
		background-color: #828fa3;
		bottom: 0;
		content: "";
		height: 3px;
		left: 0;
		position: absolute;
		width: 30px;
	}
	#main .atn02 span {
		background: none repeat scroll 0 0 transparent;
	}
	#main .atn02 span:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ba3936), color-stop(100%,#761311));
		background: linear-gradient(to bottom, #ba3936 0%,#761311 100%);
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		border-radius: 2px;
		bottom: 0;
		color: #fff;
		content: "!";
		font-size: 14px;
		height: 20px;
		left: 20px;
		line-height: 20px;
		position: absolute;
		text-align: center;
		top: 22px;
		width: 20px;
	}
}
@media screen and (max-width: 640px) {
	#main h2, #main h3 {
		margin-left: -3px;
		margin-right: -3px;
	}
}
/*
==================================================
サイドメニュー
==================================================
*/
/* メニュー
==================================================
*/
#menu img{
	max-width:100%;
	height:auto;
}
#menu {
	float: left;
	line-height: 1.8;
	width: 220px;
}
#menu .rankbox {
	border-bottom: 1px dashed #E6E6E6;
	font-size: 12px;
	margin-bottom: 10px;
	padding-bottom: 10px;
}
#menu .rankbox img {
	width: 185px;
}
.menubox {
	background-color: #fff;
	-webkit-box-shadow: 0 1px 3px rgba(153, 153, 153, 0.65);
	-moz-box-shadow: 0 1px 3px rgba(153, 153, 153, 0.65);
	box-shadow: 0 1px 3px rgba(153, 153, 153, 0.65);
	margin-bottom: 20px;
	overflow: hidden;
}
.menubox ul,
.menulist ul {
	overflow: hidden;
}
.menubox ul {
	padding: 0;
}
.menulist {
	background-color: #fafafa;
	padding: 2px;
}
.menulist ul {
	background-color: #fff;
	border-left: 1px solid #e1e1e1;
	border-right: 1px solid #e1e1e1;
	border-top: 1px solid #e1e1e1;
}
.menulist li {
	background-color: #fff;
	background-image: url(img/menulist_li_bg.gif);
	background-position: left bottom;
	background-repeat: repeat-x;
	border-bottom: 1px solid #e1e1e1;
	font-size: 0;
	line-height: 0;
	overflow: hidden;
	padding: 0;
	position: relative;
	*zoom: 1;
}
.menulist .l2,
.menulist .l3 {
	background-image: none;
}
.menulist li a {
	background-image: url(img/menu_bg.png);
	background-position: 10px 15px;
	background-repeat: no-repeat;
	color: #616161;
	display: block;
	font-size: 14px;
	line-height: 1.5;
	padding: 10px 10px 10px 30px;
	position: relative;
	text-decoration: none;
}
.menulist li a:hover {
	background-color: #fafafa;
	color: #035099;
	text-decoration: underline;
}
.menulist .l2 a {
	background-image: url(img/menu_bg2.png);
	background-position: 25px 15px;
	font-weight: normal;
	padding-left: 40px;
}
.menulist .l3 a {
	background-image: url(img/menu_bg3.png);
	background-position: 40px 16px;
	font-weight: normal;
	padding-left: 50px;
}
#menu .title, #rmenu .title, #menu h4, #rmenu h4 {
	background-color: #fff;
	background-position: left top;
	background-repeat: repeat-x;
	-webkit-box-shadow: 0 1px 3px rgba(153, 153, 153, 0.65);
	-moz-box-shadow: 0 1px 3px rgba(153, 153, 153, 0.65);
	box-shadow: 0 1px 3px rgba(153, 153, 153, 0.65);
	overflow: hidden;
	padding-top: 4px;
	position: relative;
	text-shadow: none;
	z-index: -1;
}
#menu h4, #rmenu h4 {
	background-image: url(img/menu_h4.gif);
}
#menu .title, #rmenu .title {
	background-image: url(img/menu_title.gif);
}
#menu h4 span, #rmenu h4 span, #menu .title span, #rmenu .title span {
	background-image: url(img/menu_title_bg.gif);
	background-position: left bottom;
	background-repeat: repeat-x;
	display: block;
	font-size: 16px;
	line-height: 1.4;
	padding: 12px 20px;
}
@media all and (-webkit-min-device-pixel-ratio: 1.5) {
	#menu h4 span, #rmenu h4 span, #menu .title span, #rmenu .title span {
		background-image: url(img/menu_title_bg@2x.png);
		-webkit-background-size: 900px 42px;
		background-size: 900px 42px;
	}
}
#menu h4 span, #rmenu h4 span {
	color: #324154;
}
#menu .title span, #rmenu .title span {
	color: #4d4d4d;
}
@media screen and (max-width: 899px) {
	#menu {
		width: 24.4444444444%;
	}
	#menu .rankbox img {
		width: auto;
	}
	#menu h4, #rmenu h4, #menu .title, #rmenu .title {
		background-image: none;
	}
	#menu h4:before, #rmenu h4:before, #menu .title:before, #rmenu .title:before {
		content: "";
		height: 4px;
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
	}
	#menu h4:before, #rmenu h4:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#828fa3), color-stop(100%,#3a4a62));
		background: linear-gradient(to bottom, #828fa3 0%,#3a4a62 100%);
	}
	#menu .title:before, #rmenu .title:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#b2b2b2), color-stop(100%,#7f7f7f));
		background: linear-gradient(to bottom, #b2b2b2 0%,#7f7f7f 100%);
	}
	.menulist li {
		background-image: none;
	}
	.menulist li:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(50%,#ffffff), color-stop(100%,#f7f7f7));
		background: linear-gradient(to bottom, #ffffff 50%,#f7f7f7 100%);
		bottom: 0;
		content: "";
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
	}
	.menulist li a,
	.menulist .l2 a,
	.menulist .l3 a {
		background-image: none;
	}
	.menulist li a:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#828fa3), color-stop(100%,#283851));
		background: linear-gradient(to bottom, #828fa3 0%,#283851 100%);
		-webkit-border-radius: 6px;
		-moz-border-radius: 6px;
		border-radius: 6px;
		content: "";
		height: 12px;
		left: 10px;
		position: absolute;
		top: 15px;
		width: 12px;
	}
	.menulist li a:after {
		border-bottom: 3px solid transparent;
		border-left: 3px solid #fff;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		content: "";
		display: block;
		left: 15px;
		position: absolute;
		top: 18px;
	}
	.menulist .l2 a:before,
	.menulist .l3 a:before {
		background: none;
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		border-radius: 0;
		content: "";
		height: auto;
		left: auto;
		position: static;
		top: 0;
		width: auto;
	}
	.menulist .l2 a:after {
		border-bottom: 2px solid #3e4f68;
		border-left: 2px solid #3e4f68;
		border-right: none;
		border-top: none;
		content: "";
		display: block;
		height: 6px;
		left: 25px;
		position: absolute;
		top: 15px;
		width: 5px;
	}
	.menulist .l3 a:after {
		border-bottom: 3px solid transparent;
		border-left: 3px solid #666666;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		left: 40px;
		top: 16px;
	}
}
@media screen and (max-width: 640px) {
	#menu {
		float: none;
		width: 100%;
	}
	#menu h4 span, #rmenu h4 span, #menu .title span, #rmenu .title span {
		background-image: none;
		position: relative;
	}
	#menu h4 span:before, #rmenu h4 span:before, #menu .title span:before, #rmenu .title span:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fefefe), color-stop(50%,#f7f8f9), color-stop(100%,#ebeced));
		background: linear-gradient(to bottom, #fefefe 0%,#f7f8f9 50%,#ebeced 100%);
		bottom: 0;
		content: "";
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
		z-index: -1;
	}
	.menulist .l2,
	.menulist .l3 {
		display: none;
	}
	.menulist li a {
		padding: 15px 10px 15px 30px;
	}
	.menulist li a:before {
		top: 18px;
	}
	.menulist li a:after {
		top: 21px;
	}
}
/* バナー領域
==================================================
*/
.bannerbox {
	margin-bottom: 10px;
	overflow: hidden;
}
.bannerbox ul {
	padding: 0;
}
.bannerbox li {
	background: none repeat scroll 0 0 transparent;
	margin-bottom: 10px;
	padding: 0;
}
.bannerbox li a {
	font-size: 15px;
}
.bannerbox li a img {
	vertical-align: bottom; 
}
@media screen and (max-width: 640px) {
	.bannerbox li {
		text-align: center;
	}
	.bannerbox li:last-child {
		margin-bottom: 0;
	}
}
/* 最新記事・アーカイブ
==================================================
*/
#menu ul#newEntry, #menu ul#entryarchive, #rmenu ul#newEntry, #rmenu ul#entryarchive {
	margin-bottom: -1px;
	overflow: hidden;
}
ul#newEntry li, ul#entryarchive li {
	background-image: url(img/menu_bg3.png);
	background-position: 12px 18px;
	background-repeat: no-repeat;
	border-bottom: 1px dashed #e6e6e6;
	font-size: 12px;
	line-height: 1.4;
	padding: 14px 10px 14px 25px;
	*zoom: 1;
}
@media screen and (max-width: 899px) {
	#menu ul#newEntry, #menu ul#entryarchive, #rmenu ul#newEntry, #rmenu ul#entryarchive {
		margin-bottom: 0;
	}
	ul#newEntry li, ul#entryarchive li {
		background-image: none;
		position: relative;
	}
	ul#newEntry li:last-child, ul#entryarchive li:last-child {
		border-bottom: none;
	}
	ul#newEntry li:before,
	ul#entryarchive li:before {
		border-bottom: 3px solid transparent;
		border-left: 3px solid #666666;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		content: "";
		display: block;
		left: 12px;
		position: absolute;
		top: 18px;
	}
}
/*
==================================================
フッター
==================================================
*/
#footer {
	background-color: #21324a;
	background-image: url(img/footer_bg.gif);
	background-position: center top;
	background-repeat: repeat-x;
	color: #fff;
	font-size: 12px;
	line-height: 1.8;
	text-align: center;
}
#footer .inner {
	background-color: #192639;
	padding: 18px 0;
	text-align: center;
}
#footer a {
	color: #fff;
}
#footer p {
	margin: 0 auto;
	overflow: hidden;
	text-align: center;
	word-wrap: break-word;
	width: 900px;
}
#footlinkbox {
	font-size: 0;
	letter-spacing: -.40em;
	line-height: 0;
	margin: 0 auto;
	padding-top: 35px;
	position: relative;
	text-align: center;
	width: 900px;
}
#footermenu {
	display: inline-block;
	overflow: hidden;
	padding: 0 10px 20px;
	*display: inline;
	*zoom: 1;
}
#footermenu span {
	display: inline-block;
	margin-bottom: 5px;
	*display: inline;
	*zoom: 1;
}
#footermenu a,
#footer p#footsub a {
	background-image: url(img/footer_menu_bg.png);
	background-position: 6px 6px;
	background-repeat: no-repeat;
	font-size: 12px;
	letter-spacing: normal;
	line-height: 1.4;
	padding: 0 14px;
}
#footer p#footsub {
	font-size: 0;
	letter-spacing: -.40em;
	line-height: 0;
	padding: 0 10px 25px;
	width: auto;
}
#footer p#footsub span {
	display: inline-block;
	overflow: hidden;
	*display: inline;
	*zoom: 1;
}
#footer .desc {
	border-top: 1px solid #192639;
	margin: 0 auto;
	position: relative;
	text-align: center;
	width: 900px;
}
#footer .desc span {
	border-top: 1px solid #3d4c61;
	display: block;
	padding: 18px 10px;
}
@media screen and (max-width: 899px) {
	#footer {
		background-image: none;
		position: relative;
	}
	#footer:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#3c4c63), color-stop(100%,#21324a));
		background: linear-gradient(to bottom, #3c4c63 0%,#21324a 100%);
		content: "";
		height: 120px;
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
	}
	#footer:after {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#323f52), color-stop(100%,#3b4b62));
		background: linear-gradient(to bottom, #323f52 0%,#3b4b62 100%);
		border-top: 4px solid #5d728f;
		content: "";
		height: 5px;
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
	}
	#footlinkbox,
	#footer p,
	#footer .desc {
		width: auto;
	}
	#footer .desc {
		margin: 0 10px;
	}
	#footermenu a,
	#footer p#footsub a {
		background: none repeat scroll 0 0 transparent;
		position: relative;
	}
	#footermenu a:before,
	#footer p#footsub a:before {
		border-bottom: 3px solid transparent;
		border-left: 3px solid #fff;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		content: "";
		display: block;
		left: 6px;
		position: absolute;
		top: 6px;
	}
}
@media screen and (max-width: 640px) {
	#footer p {
		font-size: 10px;
	}
	#footlinkbox {
		padding-top: 15px;
	}
	#footermenu {
		display: block;
		padding: 0 10px 10px;
	}
	#footermenu span {
		border-bottom: 1px solid #192639;
		border-top: 1px solid #3d4c61;
		display: block;
		margin: 0;
	}
	#footermenu span:first-child {
		border-top: none;
	}
	#footermenu span:last-child {
		border-bottom: none;
	}
	#footermenu a {
		display: block;
		font-size: 14px;
		line-height: 180%;
		padding: 8px 10px 8px 30px;
		text-decoration: none;
	}
	#footermenu a:before {
		left: 14px;
		top: 17px;
	}
	#footer p#footsub {
		padding: 0 10px 10px;
	}
	#footer p#footsub span {
		background-color: #25364e;
		border-left: 1px solid #3d4c61;
		border-right: 1px solid #3d4c61;
		border-top: 1px solid #3d4c61;
		display: block;
	}
	#footer p#footsub span:last-child {
		border-bottom: 1px solid #3d4c61;
	}
	#footer p#footsub a {
		display: block;
		font-size: 14px;
		padding: 10px;
		text-align: left;
		text-decoration: none;
	}
	#footer p#footsub a:before {
		border-bottom: none;
		border-left: none;
		border-right: none;
		border-top: none;
		height: auto;
		left: auto;
		margin-top: 0;
		position: static;
		top: auto;
		-webkit-transform: none;
		transform: none;
		width: auto;
	}
	#footer .desc {
		border-top: none;
		margin: 0;
	}
	#footer .desc span {
		border-top: none;
	}
}
/*
==================================================
トップページ
==================================================
*/
#whatsnew {
	background-color: #fff;
	border: 1px solid #d5d5d5;
	-webkit-box-shadow: 0 1px 3px rgba(217, 217, 217, 0.6);
	-moz-box-shadow: 0 1px 3px rgba(217, 217, 217, 0.6);
	box-shadow: 0 1px 3px rgba(217, 217, 217, 0.6);
	overflow: hidden;
	position: relative;
}
#whatsnew .title {
	background-color: #fcfcfc;
	background-image: url(img/whatsnew_title_bg.gif);
	background-position: left top;
	background-repeat: repeat-x;
}
#whatsnew .title span {
	background-image: url(img/whatsnew_title.gif);
	background-position: left bottom;
	background-repeat: repeat-x;
	display: block;
	font-size: 16px;
	line-height: 1.8;
	padding: 6px 20px 10px;
	position: relative;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
}
#whatsnew ul {
	margin-bottom: -1px;
	padding: 0;
}
#whatsnew ul li {
	background-image: url(img/menu_bg3.png);
	background-position: 15px 18px;
	background-repeat: no-repeat;
	border-bottom: 1px dashed #e6e6e6;
	font-size: 12px;
	line-height: 1.6;
	padding: 10px 15px 10px 30px;
	position: relative;
	*zoom: 1;
}
#whatsnew ul li span {
	padding-right: 15px;
}
@media screen and (max-width: 899px) {
	#whatsnew .title {
		background: none, -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(19%,#f8f8f8), color-stop(100%,#fcfcfc));
		background: none, linear-gradient(to bottom, #ffffff 0%,#f8f8f8 19%,#fcfcfc 100%);
	}
	#whatsnew .title span {
		background: none repeat scroll 0 0 transparent;
	}
	#whatsnew .title span:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#b2b2b2), color-stop(100%,#7f7f7f));
		background: linear-gradient(to bottom, #b2b2b2 0%,#7f7f7f 100%);
		bottom: 0;
		content: "";
		height: 4px;
		left: 0;
		position: absolute;
		right: 0;
	}
	#whatsnew ul {
		margin-bottom: 0;
	}
	#whatsnew ul li {
		background: none repeat scroll 0 0 transparent;
	}
	#whatsnew ul li:last-child {
		border-bottom: none;
	}
	#whatsnew ul li:before {
		border-bottom: 3px solid transparent;
		border-left: 3px solid #666666;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		content: "";
		display: block;
		left: 15px;
		position: absolute;
		top: 18px;
	}
}
@media screen and (max-width: 640px) {
	#whatsnew ul li {
		padding: 10px 15px;
	}
	#whatsnew ul li:before {
		border: none;
		content: "";
		left: auto;
		position: static;
		top: auto;
	}
	#whatsnew ul li span {
		display: block;
		padding-right: 0;
	}
}
/*
==================================================
カテゴリーページ
==================================================
*/
#categorylist {
	padding: 5px;
}
#categorylist .catbox {
	background-image: url(img/catbox_bg.gif);
	background-position: left bottom;
	background-repeat: repeat-x;
	border: 1px solid #d9d9d9;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	margin-bottom: 20px;
	overflow: hidden;
	padding-bottom: 20px;
	position: relative;
	_height: 1%;
}
#categorylist .title {
	background-color: #f2f2f2;
	background-image: url(img/category_title_bg.gif);
	background-position: left top;
	background-repeat: repeat-x;
	font-size: 0;
	font-weight: 700;
	letter-spacing: -.40em;
	line-height: 0;
	margin-bottom: 15px;
	overflow: hidden;
	padding: 14px 15px 10px;
}
#categorylist .title a {
	background-image: url(img/category_title.gif);
	background-position: left 5px;
	background-repeat: no-repeat;
	color: #324154;
	display: inline-block;
	font-size: 16px;
	letter-spacing: normal;
	line-height: normal;
	padding: 2px 0 2px 20px;
	*display: inline;
	*zoom: 1;
}
#categorylist .thumb {
	float: left;
	padding-left: 20px;
}
#categorylist .thumb img {
	vertical-align: bottom;
}
#categorylist .body {
	overflow: hidden;
	padding: 0 20px;
}
#categorylist p {
	font-size: 13px;
	line-height: 1.6;
}
#categorylist .more {
	float: right;
	height: 38px;
	margin: 10px 1px 1px 0;
	_height: 1%;
}
#categorylist .more a {
	background-image: url(img/button_more2.png);
	background-position: left top;
	background-repeat: no-repeat;
	display: block;
	height: 38px;
	overflow: hidden;
	text-indent: 200%;
	white-space: nowrap;
	width: 136px;
}
#pagelist {
	margin-bottom: 10px;
	margin-top: 10px;
	padding: 10px;
	text-align: center;
}
#pagelist ul {
	font-size: 0;
	letter-spacing: -.40em;
	line-height: 0;
	padding: 0;
}
#pagelist li {
	background: none repeat scroll 0 0 transparent;
	display: inline-block;
	font-size: 14px;
	letter-spacing: normal;
	line-height: normal;
	margin: 0 5px 10px;
	padding: 0;
	*display: inline;
	*zoom: 1;
}
#pagelist a {
	background-color: #fff;
	background-image: url(img/h4_bg.gif);
	background-position: left center;
	background-repeat: repeat-x;
	border: 1px solid #d9d9d9;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	-webkit-box-shadow: 0 1px 3px rgba(242, 242, 242, 0.7);
	-moz-box-shadow: 0 1px 3px rgba(242, 242, 242, 0.7);
	box-shadow: 0 1px 3px rgba(242, 242, 242, 0.7);
	display: inline-block;
	padding: 8px 15px;
	position: relative;
	text-align: center;
	*display: inline;
	*zoom: 1;
}
@media screen and (max-width: 899px) {
	#categorylist .catbox {
		background: none repeat scroll 0 0 transparent;
		z-index: 0;
	}
	#categorylist .catbox:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#fafafa));
		background: linear-gradient(to bottom, #ffffff 0%,#fafafa 100%);
		bottom: 0;
		content: "";
		height: 26px;
		left: 0;
		position: absolute;
		right: 0;
		z-index: -1;
	}
	#categorylist .title,
	#categorylist .title a {
		background-image: none;
		position: relative;
	}
	#categorylist .title:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#828fa3), color-stop(100%,#3a4a62));
		background: linear-gradient(to bottom, #828fa3 0%,#3a4a62 100%);
		content: "";
		height: 4px;
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
	}
	#categorylist .title a:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(50%,#6d7c91), color-stop(50%,#404f64));
		background: linear-gradient(to bottom, #6d7c91 50%,#404f64 50%);
		content: "";
		height: 18px;
		left: 0;
		position: absolute;
		top: 5px;
		width: 5px;
	}
	#categorylist .more a {
		background: none, -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(50%,#fafafa), color-stop(50%,#f0f0f0), color-stop(95%,#f0f0f0), color-stop(100%,#ffffff));
		background: none, linear-gradient(to bottom, #ffffff 0%,#fafafa 50%,#f0f0f0 50%,#f0f0f0 95%,#ffffff 100%);
		border: 1px solid #d9d9d9;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-box-shadow: 0 1px 3px rgba(242, 242, 242, 0.7);
		-moz-box-shadow: 0 1px 3px rgba(242, 242, 242, 0.7);
		box-shadow: 0 1px 3px rgba(242, 242, 242, 0.7);
		color: #324154;
		font-size: 14px;
		line-height: 38px;
		padding-left: 40px;
		position: relative;
		text-decoration: none;
		text-indent: 0;
		white-space: normal;
	}
	#categorylist .more a:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#828fa3), color-stop(100%,#283851));
		background: linear-gradient(to bottom, #828fa3 0%,#283851 100%);
		-webkit-border-radius: 6px;
		-moz-border-radius: 6px;
		border-radius: 6px;
		content: "";
		height: 12px;
		left: 20px;
		position: absolute;
		top: 12px;
		width: 12px;
	}
	#categorylist .more a:after {
		border-bottom: 3px solid transparent;
		border-left: 3px solid #fff;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		content: "";
		display: block;
		left: 25px;
		position: absolute;
		top: 15px;
	}
	#pagelist a {
		background: none, -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(50%,#fafafa), color-stop(50%,#f0f0f0), color-stop(95%,#f0f0f0), color-stop(100%,#ffffff));
		background: none, linear-gradient(to bottom, #ffffff 0%,#fafafa 50%,#f0f0f0 50%,#f0f0f0 95%,#ffffff 100%);
	}
}
@media screen and (max-width: 640px) {
	#categorylist  {
		padding: 5px 0;
	}
	#categorylist .catbox {
		margin-bottom: 10px;
		padding-bottom: 10px;
	}
	#categorylist .catbox:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(50%,#ffffff), color-stop(100%,#f5f5f5));
		background: linear-gradient(to bottom, #ffffff 50%,#f5f5f5 100%); 
		border: 1px solid #fff;
		height: auto;
		top: 0;
	}
	#categorylist .thumb {
		padding-left: 10px;
	}
	#categorylist .thumb img {
		max-width: 80px;
	}
	#categorylist .title {
		background-color: transparent;
		margin-bottom: 0;
	}
	#categorylist .body {
		padding: 0 10px;
	}
	#categorylist p {
		font-size: 11px;
		line-height: 1.5;
	}
}
/*
==================================================
エントリーページ
==================================================
*/
#entrylist {
	border: 1px solid #e5e5e5;
}
#entrylist h4 {
	background: none repeat scroll 0 0 #efefef; 
	border: 1px solid #fff;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	margin: 0;
	padding: 8px 10px;
	top: 0;
}
#entrylist h4 span {
	background-image: url(img/entry_title.gif);
	background-position: left 2px;
	background-repeat: no-repeat;
	border: none;
	font-size: 14px;
	line-height: 1.8;
	padding: 1px 0 1px 15px;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
}
#entrylist dl {
	overflow: hidden;
	padding: 0 10px;
	position: relative;
	*height: 1%;
}
#entrylist dt {
	border-top: 1px dashed #d1d1d1;
	line-height: 0;
	margin-top: -1px;
	padding: 15px 10px;
	position: relative;
	*height: 1%;
}
#entrylist dt a {
	background-image: url(img/entry_li_bg.png);
	background-position: left 8px;
	background-repeat: no-repeat;
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;
	padding: 1px 0 1px 10px;
	*display: inline;
	*zoom: 1;
}
#entrylist dd {
	font-size: 12px;
	line-height: 1.5;
	margin-top: -10px;
	padding: 0 10px 15px;
}
#relNavigate {
	margin-bottom: 15px;
	padding-bottom: 10px;
	padding-top: 10px;
	text-align: center;
}
#relNavigate a {
	font-size: 14px;
	font-weight: 700;
	margin-left: 5px;
	margin-right: 5px;
}
@media screen and (max-width: 899px) {
	#entrylist h4 span {
		background: none repeat scroll 0 0 transparent;
		position: relative;
	}
	#entrylist h4 span:before {
		background: none, -webkit-gradient(linear, left top, left bottom, color-stop(0%,#b2b2b2), color-stop(100%,#747474));
		background: none, linear-gradient(to bottom, #b2b2b2 0%,#747474 100%);
		content: "";
		height: 22px;
		left: 0;
		position: absolute;
		top: 2px;
		width: 4px;
	}
	#entrylist dt {
		margin-top: 0;
	}
	#entrylist dt:first-child {
		border-top: none;
	}
	#entrylist dt a {
		background-image: none;
		position: relative;
	}
	#entrylist dt a:before {
		border-bottom: 3px solid transparent;
		border-left: 3px solid #324154;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		content: "";
		display: block;
		left: 0;
		position: absolute;
		top: 8px;
	}
	#relNavigate {
		font-size: 0;
		letter-spacing: -.40em;
		line-height: 0;
	}
	#relNavigate a {
		background: none, -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(50%,#fafafa), color-stop(50%,#f0f0f0), color-stop(95%,#f0f0f0), color-stop(100%,#ffffff));
		background: none, linear-gradient(to bottom, #ffffff 0%,#fafafa 50%,#f0f0f0 50%,#f0f0f0 95%,#ffffff 100%);
		border: 1px solid #d9d9d9;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		border-radius: 2px;
		-webkit-box-shadow: 0 1px 3px rgba(242, 242, 242, 0.7);
		-moz-box-shadow: 0 1px 3px rgba(242, 242, 242, 0.7);
		box-shadow: 0 1px 3px rgba(242, 242, 242, 0.7);
		display: inline-block;
		font-size: 14px;
		letter-spacing: normal;
		line-height: normal;
		padding: 7px 10px;
		text-align: center;
	}
}
@media screen and (max-width: 640px) {
	#entrylist h4 span {
		font-size: 16px;
	}
	#entrylist h4 span:before {
		top: 4px;
	}
	#entrylist dl {
		padding: 0;
	}
	#entrylist dd {
		font-size: 11px;
		line-height: 1.4;
	}
}
/*
==================================================
サイトマップページ
==================================================
*/
#sitemaps ul {
	margin: 0;
	padding: 0 5px;
}
#sitemaps li {
	background-image: none;
	font-size: 0;
	letter-spacing: -.40em;
	line-height: 0;
	padding: 0;
}
#sitemaps .l1 {
	margin-top: 10px;
}
#sitemaps .l2 {
	margin-left: 10px;
	margin-top: 5px;
}
#sitemaps .l3 {
	margin-left: 20px;
	margin-top: 5px;
}
#sitemaps li a {
	background-image: url(img/menu_bg.png);
	background-position: left 6px;
	background-repeat: no-repeat;
	display: inline-block;
	letter-spacing: normal;
	line-height: 1.8;
	padding-left: 20px;
	*display: inline;
	*zoom:1;
}
#sitemaps .l1 a {
	font-size: 16px;
	font-weight: 700;
}
#sitemaps .l2 a {
	background-image: url(img/menu_bg2.png);
	background-position: 5px 6px;
	font-size: 14px;
}
#sitemaps .l3 a {
	background-image: url(img/menu_bg3.png);
	background-position: 10px 6px;
	font-size: 12px;
}
@media screen and (max-width: 899px) {
	#sitemaps li a,
	#sitemaps .l1 a,
	#sitemaps .l2 a,
	#sitemaps .l3 a {
		background-image: none;
		position: relative;
	}
	#sitemaps li a:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#828fa3), color-stop(100%,#283851));
		background: linear-gradient(to bottom, #828fa3 0%,#283851 100%);
		-webkit-border-radius: 6px;
		-moz-border-radius: 6px;
		border-radius: 6px;
		content: "";
		height: 12px;
		left: 0;
		position: absolute;
		top: 6px;
		width: 12px;
	}
	#sitemaps li a:after {
		border-bottom: 3px solid transparent;
		border-left: 3px solid #fff;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		content: "";
		display: block;
		left: 5px;
		position: absolute;
		top: 9px;
	}
	#sitemaps .l2 a:before,
	#sitemaps .l3 a:before {
		background: none;
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		border-radius: 0;
		content: "";
		height: auto;
		left: auto;
		position: static;
		top: 0;
		width: auto;
	}
	#sitemaps .l2 a:after {
		border-bottom: 2px solid #3e4f68;
		border-left: 2px solid #3e4f68;
		border-right: none;
		border-top: none;
		content: "";
		display: block;
		height: 6px;
		left: 5px;
		position: absolute;
		top: 6px;
		width: 5px;
	}
	#sitemaps .l3 a:after {
		border-bottom: 3px solid transparent;
		border-left: 3px solid #666666;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		left: 10px;
		top: 6px;
	}	
}
@media screen and (max-width: 640px) {
	#sitemaps ul {
		margin: 0 -5px;
		padding: 0;
	}
	#sitemaps li {
		border-bottom: 1px solid #f5f5f5;
	}
	#sitemaps li,
	#sitemaps .l1,
	#sitemaps .l2,
	#sitemaps .l3 {
		margin-left: 0;
		margin-top: 0;
	}
	#sitemaps .l1:before {
		background: none, -webkit-gradient(linear, left top, left bottom, color-stop(50%,#ffffff), color-stop(100%,#f7f7f7));
		background: none, linear-gradient(to bottom, #ffffff 50%,#f7f7f7 100%);
		bottom: 0;
		content: "";
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
	}
	#sitemaps .l2,
	#sitemaps .l3 {
		background-color: #fcfcfc;
	}
	#sitemaps li a {
		display: block;
		padding: 12px 15px 12px 35px;
		text-decoration: none;
	}
	#sitemaps .l2 a {
		padding: 10px 15px 10px 45px;
	}
	#sitemaps .l3 a {
		padding: 10px 15px 10px 55px;
	}
	#sitemaps li a:before {
		left: 15px;
		top: 18px;
	}
	#sitemaps li a:after {
		left: 20px;
		top: 21px;
	}
	#sitemaps .l2 a:after {
		left: 30px;
		top: 16px;
	}
	#sitemaps .l3 a:after {
		left: 45px;
		top: 16px;
	}
}
/*
==================================================
フリースペース
==================================================
*/
#space1, #space2 { margin-bottom: 10px; }
#space3, #space4, #space5, #space6 {
	line-height: 1.4;
	padding: 10px;
}
.grayline{
	border: 1px solid #CCCCCC;
}
#main .grayline{
	padding:10px;
	margin-bottom:15px;
}
#menu .grayline{
	font-size:90%;
	padding:8px;
	margin-bottom:15px;
}
/*
==================================================
ブログモード
==================================================
*/
.blog {
	border-bottom: 1px dashed #d1d1d1;
	margin-bottom: 15px;
	overflow: hidden;
	padding: 10px 5px;
}
.blog .thumb {
	float: left;
	margin-right: 15px;
}
.blog .thumb img { width: 125px; }
.blog .title {
	font-size: 15px;
	line-height: 1.4;
	margin-bottom: 10px;
}
.blog .title a { color: #2e2e2e; }
.blog .info {
	color: #616161;
	margin-bottom: 10px;
}
.blog .info a { color: #616161; }
.blog .body {
	line-height: 1.5;
	overflow: hidden;
}
.blog .more {
	font-weight: 700;
	margin-bottom: 10px;
	margin-top: 10px;
	text-align: right;
}
@media screen and (max-width: 640px) {
	.blog .thumb {
		float: none;
		margin: 0 0 15px;
		text-align: center;
	}
}
/*
==================================================
サイト内検索
==================================================
*/
#searchresult {
	overflow: hidden;
	padding: 5px;
}
#searchresult dl {
	margin: -5px;
}
#searchresult dt {
	font-size: 15px;
	padding: 5px;
}
#searchresult dd {
	border-bottom: 1px dashed #d1d1d1;
	line-height: 1.5;
	margin: 0 0 10px;
	padding: 0 5px 15px;
}
#searchresult b {
	color: #324154;
}
@media screen and (max-width: 640px) {
	#searchresult dd {
		font-size: 12px;
		line-height: 1.6;
	}
}
/*
==================================================
リンク集
==================================================
*/
#linklist {
	overflow: hidden;
	text-align: left;
}
#linklist dt {
	font-size: 15px;
	padding: 5px;
}
#linklist dd {
	border-bottom: 1px dashed #e6e6e6;
	line-height: 1.5;
	margin: 0 0 10px;
	padding: 0 5px 15px;
}
@media screen and (max-width: 640px) {
	#linklist dd {
		font-size: 12px;
		line-height: 1.6;
	}
}
/*
==================================================
ポイント
==================================================
*/
#main .point1, #main .point2, #main .point3, #main .point4, #main .point5, #main .point6, #main .point7, #main .point8, #main .point9, #main .point10 {
	background-position: left top;
	background-repeat: no-repeat;
	color: #324154;
	font-size: 20px;
	font-weight: 700;
	height: auto;
	line-height: 1.4;
	margin-bottom: 5px;
	margin-top: 15px;
	padding: 5px 0 5px 40px;
	*zoom: 1;
}
#main .point1 { background-image: url(img/point1.png); }
#main .point2 { background-image: url(img/point2.png); }
#main .point3 { background-image: url(img/point3.png); }
#main .point4 { background-image: url(img/point4.png); }
#main .point5 { background-image: url(img/point5.png); }
#main .point6 { background-image: url(img/point6.png); }
#main .point7 { background-image: url(img/point7.png); }
#main .point8 { background-image: url(img/point8.png); }
#main .point9 { background-image: url(img/point9.png); }
#main .point10 { background-image: url(img/point10.png); }
@media all and (-webkit-min-device-pixel-ratio: 1.5) {
	#main .point1 { background-image: url(img/point1@2x.png); }
	#main .point2 { background-image: url(img/point2@2x.png); }
	#main .point3 { background-image: url(img/point3@2x.png); }
	#main .point4 { background-image: url(img/point4@2x.png); }
	#main .point5 { background-image: url(img/point5@2x.png); }
	#main .point6 { background-image: url(img/point6@2x.png); }
	#main .point7 { background-image: url(img/point7@2x.png); }
	#main .point8 { background-image: url(img/point8@2x.png); }
	#main .point9 { background-image: url(img/point9@2x.png); }
	#main .point10 { background-image: url(img/point10@2x.png); }
	#main .point1, #main .point2, #main .point3, #main .point4, #main .point5, #main .point6, #main .point7, #main .point8, #main .point9, #main .point10 {
		-webkit-background-size: 33px 33px;
		background-size: 33px 33px;
	}
}
/*
==================================================
ランキング
==================================================
*/
/* メインコンテンツ用ランキング
==================================================
*/
#main .point1, #main .point2, #main .point3, #main .point4, #main .point5, #main .point6, #main .point7, #main .point8, #main .point9, #main .point10 { border: none; }
#main .rank1, #main .rank2, #main .rank3, #main .rank4, #main .rank5, #main .rank6, #main .rank7, #main .rank8, #main .rank9, #main .rank10 { border: none; height: auto; }
#main .rank {
	background-color: #f2f2f2;
	border: 2px solid #dbdbdb;
	-webkit-box-shadow: 0 1px 3px rgba(217, 217, 217, 0.6);
	-moz-box-shadow: 0 1px 3px rgba(217, 217, 217, 0.6);
	box-shadow: 0 1px 3px rgba(217, 217, 217, 0.6);
	margin-bottom: 20px;
	padding: 3px;
	position: relative;
}
#main .rank-container {
	background-color: #e4e4e4;
	border: 1px solid #fefefe;
	padding: 2px;
}
#main .rank-inner {
	background-color: #fff;
	padding: 17px;
}
#main .rankbox {
	background-image: url(img/rankbox_bg.gif);
	background-position: left top;
	background-repeat: repeat-x;
	padding-top: 20px;
}
#main .rank1,#main .rank2,#main .rank3,#main .rank4,#main .rank5,#main .rank6,#main .rank7,#main .rank8,#main .rank9,#main .rank10{
	background-repeat: no-repeat;
	border: medium none;
	font-size: 26px;
	height: auto;
	line-height: 1.3;
	margin-bottom: 6px;
	margin-top: 6px;
	*zoom: 1;
}
#main .rank1,#main .rank2,#main .rank3{
	background-position: left 6px;
	padding: 22px 0 22px 86px;
}
#main .rank4,#main .rank5,#main .rank6,#main .rank7,#main .rank8,#main .rank9,#main .rank10{
	background-position: 4px 6px;
	padding: 15px 0 15px 72px;
}
#main .rank .rank1,#main .rank .rank2,#main .rank .rank3,#main .rank .rank4,#main .rank .rank5,#main .rank .rank6,#main .rank .rank7,#main .rank .rank8,#main .rank .rank9,#main .rank .rank10{
	margin: 0;
}
#main .rank1 { background-image: url(img/rank1.png); }
#main .rank2 { background-image: url(img/rank2.png); }
#main .rank3 { background-image: url(img/rank3.png); }
#main .rank4 { background-image: url(img/rank4.png); }
#main .rank5 { background-image: url(img/rank5.png); }
#main .rank6 { background-image: url(img/rank6.png); }
#main .rank7 { background-image: url(img/rank7.png); }
#main .rank8 { background-image: url(img/rank8.png); }
#main .rank9 { background-image: url(img/rank9.png); }
#main .rank10 { background-image: url(img/rank10.png); }
@media all and (-webkit-min-device-pixel-ratio: 1.5) {
	#main .rank1 { background-image: url(img/rank1@2x.png); }
	#main .rank2 { background-image: url(img/rank2@2x.png); }
	#main .rank3 { background-image: url(img/rank3@2x.png); }
	#main .rank4 { background-image: url(img/rank4@2x.png); }
	#main .rank5 { background-image: url(img/rank5@2x.png); }
	#main .rank6 { background-image: url(img/rank6@2x.png); }
	#main .rank7 { background-image: url(img/rank7@2x.png); }
	#main .rank8 { background-image: url(img/rank8@2x.png); }
	#main .rank9 { background-image: url(img/rank9@2x.png); }
	#main .rank10 { background-image: url(img/rank10@2x.png); }
	#main .rank1,#main .rank2,#main .rank3 {
		-webkit-background-size: 74px 60px;
		background-size: 74px 60px;
	}
	#main .rank4,#main .rank5,#main .rank6,#main .rank7,#main .rank8,#main .rank9,#main .rank10 {
		-webkit-background-size: 62px 46px;
		background-size: 62px 46px;
	}
}
#main .rankbox .rankbox-inner {
	overflow: hidden;
}
#main .rankbox .feature {
	background-color: #f6f6f6;
	background-image: url(img/feature_title.gif);
	background-position: left 9px;
	background-repeat: no-repeat;
	margin-bottom: 10px;
	overflow: hidden;
	padding: 5px 10px 5px 34px;
}
#main .rankbox .feature span {
	font-weight: 700;
}
#main .rankbox .float-l img, #main .rankbox .float-r img {
	margin: 0 30px 15px 0;
	padding: 0;
	max-width:280px;
	height:auto;
}
#main .rankbox .rankbox-inner p {
	font-size: 12px;
	line-height: 1.6;
	overflow: hidden;
	padding-bottom: 30px;
}
#main .rankbox .rank-table {
	clear: both;
	margin: 0;
	width: 100%;
}
#main .rankbox .rank-table th, #main .rankbox .rank-table td {
	border: 1px solid #d3d3d3;
	padding: 8px 10px;
	text-align: left;
	vertical-align: middle;
}
#main .rankbox .rank-table th {
	background-color: #f6f6f6;
}
#main .rankbox .rank-table td {
	background-color: #fff;
}
#main .rank .comment {
	margin-top: 20px;
}
#main .rank .comment .comment-inner {
	background-color: #f7f7f7;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	-webkit-box-shadow: 0 1px 2px rgba(179, 179, 179, 0.9);
	-moz-box-shadow: 0 1px 2px rgba(179, 179, 179, 0.9);
	box-shadow: 0 1px 2px rgba(179, 179, 179, 0.9);
	padding: 10px 20px;
	position: relative;
}
#main .rank .comment .comment-tit {
	background-image: url(img/comment_bg.gif);
	background-position: left top;
	background-repeat: no-repeat;
	border-bottom: 1px solid #fff;
}
@media all and (-webkit-min-device-pixel-ratio: 1.5) {
	#main .rank .comment .comment-tit {
		background-image: url(img/comment_bg@2x.png);
		-webkit-background-size: 54px 54px;
		background-size: 54px 54px;
	}
}
#main .rank .comment .comment-tit span {
	border-bottom: 1px solid #bcbcbc;
	color: #648ebc;
	display: block;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
	padding: 18px 10px 17px 62px;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
}
#main .rank .comment p {
	font-size: 13px;
	line-height: 1.6;
	padding: 10px 0;
}
#main .rank .more {
	font-size: 0;
	letter-spacing: -.40em;
	padding: 25px 0 10px;
	position: relative;
	text-align: center;
}
#main .rank .more span {
	display: inline-block;
	font-size: 14px;
	height: 64px;
	letter-spacing: normal;
	margin-right: 20px;
	vertical-align: bottom;
	width: 256px;
	*display: inline;
	*zoom:1;
}
#main .rank .more a {
	background-image: url(img/button_more.png);
	background-position: left top;
	background-repeat: no-repeat;
	display: block;
	height: 64px;
	overflow: hidden;
	text-indent: 200%;
	white-space: nowrap;
	width: 256px;
}
#main .rank .more span.official {
	margin-right: 0;
}
#main .rank .more span.official a {
	background-image: url(img/button_official.png);
}
@media screen and (max-width: 899px) {
	#main .rank {
		margin-bottom: 10px;
	}
	#main .rankbox {
		background: none repeat scroll 0 0 transparent;
		position: relative;
	}
	#main .rankbox:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#e2e2e2));
		background: linear-gradient(to bottom, #ffffff 0%,#e2e2e2 100%);
		border-top: 1px solid #f8f8f8;
		content: "";
		height: 4px;
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
	}
	#main .rankbox .feature {
		background-image: none;
		position: relative;
	}
	#main .rankbox .feature:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#b3b3b3), color-stop(100%,#797979));
		background: linear-gradient(to bottom, #b3b3b3 0%,#797979 100%);
		content: "";
		height: 13px;
		left: 0;
		position: absolute;
		top: 9px;
		width: 23px;
	}
	#main .rankbox .feature:after {
		border-bottom: none;
		border-left: none;
		border-right: 1px solid #ffffff;
		border-top: 1px solid #ffffff;
		content: "";
		height: 3px;
		left: 12px;
		position: absolute;
		top: 13px;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		width: 3px;
	}
	#main .rank .more {
		padding: 20px 0 0;
	}
	#main .rank .more span {
		display: block;
		margin: 0 auto 15px;
		width: 70%;
	}
	#main .rank .more span:last-child {
		margin: 0 auto;
	}
	#main .rank .more a {
		background: none repeat scroll 0 0 #ebebec;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		border-radius: 5px;
		color: #fff;
		font-size: 16px;
		line-height: 64px;
		padding-left: 25px;
		position: relative;
		text-decoration: none;
		text-indent: 0;
		text-shadow: 0 2px 3px rgba(0,0,0,0.15);
		white-space: normal;
		width: auto;
		z-index: 0;
	}
	#main .rank .more span.official a {
		background-image: none;
	}
	#main .rank .more a:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#29cdd3), color-stop(50%,#29bfc7), color-stop(50%,#00b3bb), color-stop(95%,#00a5af), color-stop(100%,#29cdd3));
		background: linear-gradient(to bottom, #29cdd3 0%,#29bfc7 50%,#00b3bb 50%,#00a5af 95%,#29cdd3 100%);
		border-top: 2px solid #75e2e8;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		border-radius: 5px;
		bottom: 5px;
		content: "";
		left: 5px;
		position: absolute;
		right: 5px;
		top: 5px;
		z-index: -1;
	}
	#main .rank .more a:after {
		background-image: url(img/button_more_2.png);
		background-position: 15px center;
		background-repeat: no-repeat;
		border: 1px solid #00848c;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		border-radius: 5px;
		bottom: 5px;
		content: "";
		left: 5px;
		position: absolute;
		right: 5px;
		top: 5px;
		z-index: -1;
	}
	#main .rank .more span.official a:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f7bb29), color-stop(50%,#fbad29), color-stop(50%,#fa9c01), color-stop(95%,#ff8c00), color-stop(100%,#f7bb29));
		background: linear-gradient(to bottom, #f7bb29 0%,#fbad29 50%,#fa9c01 50%,#ff8c00 95%,#f7bb29 100%);
		border-top: 2px solid #ffdd99;
	}
	#main .rank .more span.official a:after {
		background-image: url(img/button_official_2.png);
		border: 1px solid #df7b00;
	}
}
@media all and (-webkit-min-device-pixel-ratio: 1.5) {
	#main .rank .more a {
		-webkit-background-size: 25px 28px;
		background-size: 25px 28px;
	}
	#main .rank .more span.official a {
		-webkit-background-size: 25px 28px;
		background-size: 25px 28px;
	}
}
@media screen and (max-width: 640px) {
	#main .rank1, #main .rank2, #main .rank3, #main .rank4, #main .rank5, #main .rank6, #main .rank7, #main .rank8, #main .rank9, #main .rank10 { font-size:20px; }
	#main .rankbox .rankbox-inner .float-l,
	#main .rankbox .rankbox-inner .float-r {
		float: none;
		overflow: hidden;
		padding-bottom: 10px;
		text-align: center;
	}
	#main .rankbox .float-l img, #main .rankbox .float-r img {
		margin: 0 0 10px 0;
	}
	#main .rankbox .rankbox-inner p {
		padding-bottom: 15px;
	}
	#main .rank .comment {
		margin-top: 15px;
	}
	#main .rank .comment .comment-inner {
		padding: 10px;
	}
	#main .rank .more span {
		width: 100%;
	}
}
/* メニュー用ランキング
==================================================
*/
#menu .rank1,#menu .rank2,#menu .rank3,#menu .rank4,#menu .rank5 {
	background-position: left top;
	background-repeat: no-repeat;
	border: medium none;
	font-size: 14px;
	font-weight: 700;
	height: auto;
	line-height: 1.4;
	margin: 0;
}
#menu .rank1,#menu .rank2,#menu .rank3{
	padding: 22px 0 22px 86px;
}
#menu .rank4,#menu .rank5{
	padding: 15px 0 15px 68px;
}
#menu .rank1 { background-image: url(img/rank1.png); }
#menu .rank2 { background-image: url(img/rank2.png); }
#menu .rank3 { background-image: url(img/rank3.png); }
#menu .rank4 { background-image: url(img/rank4.png); }
#menu .rank5 { background-image: url(img/rank5.png); }
@media all and (-webkit-min-device-pixel-ratio: 1.5) {
	#menu .rank1 { background-image: url(img/rank1@2x.png); }
	#menu .rank2 { background-image: url(img/rank2@2x.png); }
	#menu .rank3 { background-image: url(img/rank3@2x.png); }
	#menu .rank4 { background-image: url(img/rank4@2x.png); }
	#menu .rank5 { background-image: url(img/rank5@2x.png); }
	#menu .rank1,#menu .rank2,#menu .rank3 {
		-webkit-background-size: 74px 60px;
		background-size: 74px 60px;
	}
	#menu .rank4,#menu .rank5 {
		-webkit-background-size: 62px 46px;
		background-size: 62px 46px;
	}
}
@media screen and (max-width: 899px) {
	#menu .rank1,#menu .rank2,#menu .rank3,#menu .rank4,#menu .rank5 {
		background-position: center top;
	}
	#menu .rank1,#menu .rank2,#menu .rank3{
		padding: 65px 0 5px 0;
	}
	#menu .rank4,#menu .rank5{
		padding: 51px 0 5px 0;
	}
}
@media screen and (max-width: 640px) {
	#menu .rank1,#menu .rank2,#menu .rank3,#menu .rank4,#menu .rank5 {
		background-position: left top;
	}
	#menu .rank1,#menu .rank2,#menu .rank3{
		padding: 22px 0 22px 86px;
	}
	#menu .rank4,#menu .rank5{
		padding: 15px 0 15px 68px;
	}
}
/*
==================================================
１カラムレイアウト
==================================================
*/
#column1 {
	overflow: hidden;
	text-align: center;
}
#column1 #contents {
	padding-bottom: 50px;
}
#column1 #menu, #column1 #main {
	float: none;
	width: auto;
}
#column1 #main {
	margin-bottom: 30px;
}
#column1 #menu .menulist ul {
	border-bottom: 1px solid #e1e1e1;
}
#column1 #menu .menulist ul, #column1 #menu ul#newEntry, #column1 #menu ul#entryarchive {
	letter-spacing: -0.4em;
	line-height: 0;
	margin: 0;
	padding: 7px;
}
#column1 #menu .menulist li {
	background: none repeat scroll 0 0 transparent;
}
#column1 #menu .menulist li, #column1 #menu ul#newEntry li, #column1 #menu ul#entryarchive li {
	border: none;
	display: inline-block;
	letter-spacing: normal;
	line-height: 1.5;
	overflow: hidden;
	padding: 3px 0;
	*display: inline;
	*zoom: 1;
}
#column1 #menu .menulist li a {
	background-image: url(img/menu_bg3.png);
	background-position: left 6px;
	background-repeat: no-repeat;
	font-weight: 400;
	margin: 0 15px 0 5px;
	padding: 0 0 0 10px;
	text-decoration: underline;
}
#column1 #menu .menulist li a:hover {
	background-color: #fff;
	text-decoration: none;
}
#column1 #menu ul#newEntry li, #column1 #menu ul#entryarchive li {
	background-position: left 10px;
	margin: 0 5px;
	padding: 5px 10px;
}
@media screen and (max-width: 899px) {
	#column1 #menu .menulist li:before {
		background: none;
	}
	#column1 #menu .menulist li a {
		background-image: none;
	}
	#column1 #menu .menulist li a:before {
		background: none;
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		border-radius: 0;
		height: auto;
		left: auto;
		position: static;
		top: auto;
		width: auto;
	}
	#column1 #menu .menulist li a:after {
		border-bottom: 3px solid transparent;
		border-left: 3px solid #666666;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		left: 0;
		top: 6px;
	}
	#column1 #menu .menulist .l2 a:after {
		border-bottom: 3px solid transparent;
		border-left: 3px solid #666666;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		height: auto;
		left: 0;
		top: 6px;
		width: auto;
	}
	#column1 #menu .menulist .l3 a:after {
		left: 0;
		top: 6px;
	}
	#column1 #menu ul#newEntry li:before, #column1 #menu ul#entryarchive li:before {
		left: 0;
		top: 10px;
	}
}
@media screen and (max-width: 640px) {
	#column1 #contents {
		padding-bottom: 0;
	}
	#column1 #main {
		margin-bottom: 20px;
	}
	#column1 #menu .menulist ul {
		border-bottom: none;
	}
	#column1 #menu .menulist ul, #column1 #menu ul#newEntry, #column1 #menu ul#entryarchive {
		padding: 0;
	}
	#column1 #menu .menulist li {
		border-bottom: 1px solid #e1e1e1;
	}
	#column1 #menu .menulist li:before {
		background: none, -webkit-gradient(linear, left top, left bottom, color-stop(50%,#ffffff), color-stop(100%,#f7f7f7));
		background: none, linear-gradient(to bottom, #ffffff 50%,#f7f7f7 100%);
	}
	#column1 #menu .menulist .l2,
	#column1 #menu .menulist .l3 {
		display: none;
	}
	#column1 #menu .menulist li, #column1 #menu ul#newEntry li, #column1 #menu ul#entryarchive li {
		display: block;
		padding: 0;
	}
	#column1 #menu .menulist li a {
		margin: 0;
		padding: 15px 10px 15px 30px;
		text-decoration: none;
	}
	#column1 #menu .menulist li a:hover {
		background-color: #fafafa;
	}
	#column1 #menu .menulist li a:before {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#828fa3), color-stop(100%,#283851));
		background: linear-gradient(to bottom, #828fa3 0%,#283851 100%);
		-webkit-border-radius: 6px;
		-moz-border-radius: 6px;
		border-radius: 6px;
		height: 12px;
		left: 10px;
		position: absolute;
		top: 18px;
		width: 12px;
	}
	#column1 #menu .menulist li a:after {
		border-bottom: 3px solid transparent;
		border-left: 3px solid #fff;
		border-right: 0 solid transparent;
		border-top: 3px solid transparent;
		left: 15px;
		top: 21px;
	}
	#column1 #menu ul#newEntry li, #column1 #menu ul#entryarchive li {
		border-bottom: 1px dashed #e6e6e6;
		line-height: 1.4;
		margin: 0;
		padding: 14px 10px 14px 25px;
	}
	#column1 #menu ul#newEntry li:before, #column1 #menu ul#entryarchive li:before {
		left: 12px;
		top: 18px;
	}
	#column1 #menu ul#newEntry li:last-child, #column1 #menu ul#entryarchive li:last-child {
		border-bottom: medium none;
	}
}
/*
==================================================
２カラムレイアウト
==================================================
*/
#column2 {
	overflow: hidden;
	text-align: center;
}
/*
==================================================
レイアウト切り替え用スタイル(後で削除)
==================================================
*/
#column1 #rmenu, #column2 #rmenu, #column1 #space3, #column1 #space4,#column1 .bannerbox,#column1 #submenu { display: none; }
#headerbox,#header { height: auto !important; }
#header .desc {

}
.topsubmenuOff #top h1 span {
	width: 900px;
}
@media screen and (max-width: 899px) {
	.topsubmenuOff #top h1 span {
		width: 100%;
	}
}
@media screen and (max-width: 640px) {
	.topmenubtnOff #top h1 {
		padding-right: 10px;
	}
}
@media screen and (max-width: 640px) {
	#footer {
		
	}
}
#main .txt-decbox1 h2, #main .txt-decbox1 h3, #main .txt-decbox2 h2, #main .txt-decbox2 h3 {
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	top: 0;
}body{
}
#header{ height: 330px; }
#headerbox {height:330px; }
#header h2 ,#header .title ,#top h2,#top h2 a{
}
#header h2 a, #header h2 a:visited,#header .title a,#top h2 a,#header .title a:visited{}
#header #headertxt {

}
#main{ float: right; }
#column2 #menu,#column3 #menu{ float: left; }
#column3 #rmenu { float: right; }
#column3 #layoutbox { float: left; }
#column3 #main { float: right; }
/*
#wrapper{}
#topmenu{}
#threebox{}
#main{}
#menu{}
#rmenu{}
*/