.footer a, .footer b, .footer body, .footer center, .footer dd, .footer div, .footer dl, .footer dt, footer, .footer form,
.footer h1, .footer h2, .footer h3, .footer h4, .footer h5, .footer h6, .footer html, .footer iframe, .footer label, .footer legend, .footer li, .footer nav, .footer ol, .footer p, .footer pre,
.footer section, .footer small, .footer span, .footer strong, .footer sub, .footer summary, .footer sup, .footer table, .footer tbody, .footer td, .footer tfoot, .footer th, .footer thead,
.footer tr, .footer tt, .footer ul { font-family:'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'Meiryo', 'メイリオ', 'Osaka', 'MS Gothic', 'arial', 'helvetica', sans-serif; }

i.fa { font: FontAwesome; }

/* 新規登録ボタン */
.btn.btn_register {
	display:inline-block;
	position:relative;
	min-width:186px;
	min-height:40px;
	margin:50px auto;
	padding:0px 20px 0 45px;
	line-height:40px;
	text-align:center;
	background:#FFE651;
	color:#55605f;
	border:2px solid #A5AFAE;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
	-moz-box-shadow:	inset 2px 2px 0 #FFF;
	-webkit-box-shadow: inset 2px 2px 0 #FFF;
	box-shadow:		 inset 2px 2px 0 #FFF;
	-webkit-appearance: none;
	box-sizing: border-box;
}
.btn.btn_register:hover {
	color:#55605f;
	opacity: 0.8;
	filter: alpha(opacity=80); /* For IE8 and earlier */
}
.btn.btn_register:active {
	opacity: 0.8;
	filter: alpha(opacity=80); /* For IE8 and earlier */
	-moz-box-shadow: inset 2px 2px 0 rgba(0, 0, 0, 0.5);
	-webkit-box-shadow: inset 2px 2px 0 rgba(0, 0, 0, 0.5);
	box-shadow: inset 2px 2px 0 rgba(0, 0, 0, 0.5);
}
.btn.btn_register img {
	position:absolute;
	top:0;
	bottom:0;
	left:20px;
	width:18px;
	margin:auto;
}

/* フッター */
.footer {
	opacity: 1 !important;
  filter: alpha(opacity=100); /* For IE8 and earlier */
  display: block !important;
	color: #56605F;
	background: #fff !important;
	padding: 0 !important;
	margin: 0!important;
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	height:auto;
	min-height: 50px;
	background:#fff;
	text-align:center;
	border-top:1px solid #A9B2B1;
	z-index:1;
	font-family:'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'Meiryo', 'メイリオ', 'Osaka', 'MS Gothic', 'arial', 'helvetica', sans-serif !important;
}
.footer a:link, .footer a:hover, .footer a:active, .footer a:visited, .footer a {
	background:none !important;
	border: none !important;
	border-top: none !important;
	border-bottom: none !important;
	border-left: none !important;
	border-right: none !important;
	position: relative !important;
	top: auto !important; right: auto !important; left: auto !important; bottom: auto !important;
}
.footer span {
	color: inherit !important;
}
.footer ul li {
	margin:0;
	padding:0;
	box-shadow: none;
	text-shadow: none;
	letter-spacing: normal;
	background: none;
	border: none;
	border-top: none;
	border-bottom: none;
	border-right: none;
	border-left: none;
	display: block;
	font-style: normal;
}
.footer_access { /* アクセス計測 */
	position:absolute;
	bottom:5pxc;
	left:5px;
	line-height:0;
	font-size:0;
}
.footer a:link, .footer a:visited, .footer a {
	color:#56605F;
	text-shadow: none;
	letter-spacing: normal;
}
.footer a:hover {
	text-decoration: underline;
}
.footer #logo {
	display:block;
	height:25px;
	width:100%;
	color:#56605F;
	overflow: hidden;
}
.footer #logo img {
	height:20px;
	vertical-align:middle;
	margin:0 10px 0 0;
}
.footer #logo span {
	line-height:30px;
	font-size:11px;
	letter-spacing: 0.05em;
}
.footer .footer_login {
	display:inline-block;
	position:absolute;
	top:0;
	right:20px;
	height:100%;
	text-align:right;
}
.footer .footer_login a {
	color:#56605F;
	line-height:30px;
}
.footer small {
	color: #A9B2B1 !important;
	font-size:10px !important;
	letter-spacing: 0.1em;
	line-height: 15px !important;
}
.footer small .helvetica {
  font-size: 115%;
  font-family: 'Helvetica' !important;
}

/* 読者登録 */
.footer_reader {
	display:inline-block;
	position:absolute;
	width:140px;
	top:-30px;
	right:20px;
	font-size:12px;
	background:#fff;
	border:1px solid #A9B2B1;
	border-bottom:none;
	border-radius: 5px 5px 0 0;
}
.footer_reader a {
	display:block;
	margin:0;
	padding:8px;
	color:#78CFC7;
	line-height:1em;
	cursor: pointer;
}
.footer_reader button {
	background:none;
	border:none;
	display:block;
	padding:8px;
	margin:0;
	color:#56605F;
	outline:none;
	line-height:1em;
}
.footer_reader button:hover {
	text-decoration:underline;
}
.footer_reader ul {
	width: 100% !important;
	margin:0 !important;
	padding:0 !important;
	box-shadow: none !important;
	text-shadow: none !important;
	letter-spacing: normal !important;
	background: none !important;
	border: none !important;
	border-top: none !important;
	border-bottom: none !important;
	border-right: none !important;
	border-left: none !important;
}
.footer_reader ul li {
	width: 100% !important;
	margin:0 !important;
	padding:0 !important;
	letter-spacing: normal;
	border-top:1px solid #A9B2B1;
	border-bottom: none !important;
	border-left: none !important;
	border-right: none !important;
	font-style: normal !important;
	font-weight: normal !important;
}
.footer_reader ul li button,
.footer_reader ul li a {
	color:#56605F;
	background:none;
	border:none;
	display:block;
	outline:none;
	line-height: 13px !important;
	font-size: 13px !important;
	font-style: normal !important;
	font-weight: normal !important;
}
.footer_reader ul li button {
	letter-spacing: -1px;
}

/* フッターメニュー */
.footer_wrap {
	position: relative;
	padding: 10px 0 100px !important;
}
.footer .footer_menu {
	margin: 0 auto 5px;
}
.footer .footer_menu ul li {
	display: inline-block;
	border-right: 1px solid;
	color: #8D9391;
}
.footer .footer_menu ul li:last-child {
	border: none;
}
.footer .footer_menu ul li a {
	display: block;
	padding: 0 10px;
	font-size: 12px;
	color: #8D9391;
}
.footer ul.keyword_list {
	width:100%;
	overflow:hidden;
	text-align:center;
	padding: 0 10px;
	box-sizing: border-box;
}
.footer ul.keyword_list li {
	position:relative;
	z-index:1;
	margin:0 1px 10px;
	max-width:90%;
	display:inline-block;
	border:1px solid #78CFC7;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.footer ul.keyword_list li a {
	color:#8E8F91;
	display:block;
	padding:2px 15px 2px 10px;
	font-size: 13px;
	line-height: 1.7em;
}
.footer ul.keyword_list li:after {
	content:"";
	position:absolute;
	z-index:2;
	bottom:-1px;
	right:-1px;
	border-style:solid;
	background:#78CFC7; /* For Opera when also applying a border-radius */
	display:block; width:0; /* Only for Firefox 3.0 damage limitation */
	border-width:5.5px; /* Triggers a 1px 'step' along the diagonal in Safari 5 (and Chrome 10) */
	border-color: transparent #FFF #FFF transparent; /* Avoids the 1px 'step' in webkit. Background colour shows through */
	-webkit-border-top-left-radius:4px;
	-moz-border-radius:4px 0 0 0;
	border-radius:4px 0 0 0;
}

.footer_ad {
	padding-bottom: 10px;
}
.premium .footer_wrap {
	padding-bottom: 10px !important;
}
.premium .footer_ad {
	padding: 0;
}
