@charset "utf-8";

/*=====================================

	layout - レイアウト定義

=====================================*/

/*#####################################
	element
#####################################*/

* {
	box-sizing: border-box;
}

html {
	overflow-y: scroll;
}

body {
	color: #333;
	background-color: #fff;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 14px;
	text-align: center;
	-webkit-tap-highlight-color: rgba(0,0,0,.3);
}

h1,h2,h3,h4,h5,h6,p,blockquote,ol,ul,dl,dd,pre,table,fieldset,address,details,figure {
	margin: 24px 0;
	text-align: left;
}

h1,h2,h3,h4,h5,h6 {
	line-height: 1.25;
}

p,blockquote,ol,ul,dl,pre,th,td {
	line-height: 1.75;
}

table {
	width: 100%;
	table-layout: fixed;
}

table p,
table h1,
table h2,
table h3,
table h4,
table h5,
table h6,
table ul,
table dl {
	margin-top: 0;
}

table p:last-child {
	margin-bottom: 0;
}

th,td {
	vertical-align: top;
	line-height: 1.25;
	padding: 0 8px 16px;
}

a {
	color: #0043ff;
	text-decoration: underline;
	transition: all .2s linear;
	-webkit-transition: all .2s linear;
}

a:visited {
	color: #0043ff;
}

a:hover {
	text-decoration: none;
}

a:hover img {
	opacity: .6;
}

img {
	vertical-align: bottom;
	transition: opacity .2s linear;
	-webkit-transition: opacity .2s linear;
}

blockquote {
	background-color: #f0f0f0;
	padding: 16px;
	margin-bottom: 24px;
	font-size: 12px;
	clear: both;
}

blockquote h1,
blockquote h2,
blockquote h3,
blockquote h4,
blockquote h5,
blockquote h6,
blockquote ul,
blockquote p {
	margin: 0 0 12px;
}

blockquote :last-child {
	margin-bottom: 0;
}

/*#####################################
	global class
#####################################*/

.inner {
	position: relative;
	width: 1008px;
	margin: 0 auto;
}

/*-------------------------------------
	youtube
-------------------------------------*/

.video,
.youtube {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	padding-top: 30px;
	position: relative;
	z-index: 1;
}

.video iframe,
.youtube iframe {
	height: 100%;
	left: 0;
	top: 0;
	width: 100%;
	position: absolute;
	z-index: 1;
}

/*-------------------------------------
	button
-------------------------------------*/

.button a,
a.button,
input[name="submit"].button {
	display: inline-block;
	padding: 12px;
	margin: 0 8px 8px 0;
	line-height: 1;
	color: #fff;
	text-shadow: #b44e11 0 0 3px;
	font-weight: bold;
	font-size: 14px;
	text-decoration: none;
	white-space: nowrap;
	border: none;
	border-bottom: 2px #7f390f solid;
	letter-spacing: 0.05em;
	background: #ffae2d;
	background: -moz-linear-gradient(top,  #ffae2d 0%, #fb6f1d 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffae2d), color-stop(100%,#fb6f1d));
	background: -webkit-linear-gradient(top,  #ffae2d 0%,#fb6f1d 100%);
	background: -o-linear-gradient(top,  #ffae2d 0%,#fb6f1d 100%);
	background: -ms-linear-gradient(top,  #ffae2d 0%,#fb6f1d 100%);
	background: linear-gradient(to bottom,  #ffae2d 0%,#fb6f1d 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffae2d', endColorstr='#fb6f1d',GradientType=0 );
}

.button a:hover,
a.button:hover,
input[name="submit"].button:hover {
	opacity: .6;
}

.button-small a,
a.button-small {
	display: inline-block;
	padding: 12px;
	margin: 0 8px 8px 0;
	line-height: 1;
	color: #255AF0;
	background-color: #DFE7FF;
	font-weight: bold;
	font-size: 14px;
	text-decoration: none;
	white-space: nowrap;
	border: 1px #c3d1f9 solid;
}

.button-small a:hover,
a.button-small:hover {
	color: #fff;
	background-color: #4B75EC;
}

/*-------------------------------------
	WordPress
-------------------------------------*/

.insL,
.alignleft {
	float: left;
	margin: 0 16px 16px 0;
}

.insR,
.alignright {
	float: right;
	margin: 0 0 16px 16px;
}

.aligncenter {
	text-align: center;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.entry-container {
	clear: both;
	margin-bottom: 24px;
}

.old-ie .entry-container {
	height: 1%;
}

.entry-container:after {
	content: ""; 
	display: block; 
	clear: both;
}

.entry-content {
	text-align: left;
}

.entry-content:after {
	content: "";
	display: block;
	clear: both;
}

.entry-content {
}

.entry-content ul {
	list-style-type: none;
	padding: 0;
}

.entry-content li {
	padding-left: 24px;
	margin-bottom: 4px;
	background-image: url(img/li.png);
	background-position: 0 4px;
	background-repeat: no-repeat;
}

.pager {
	clear: both;
	font-size: 0;
	text-align: center;
	vertical-align: middle;
	margin-bottom: 24px;
	padding: 0;
}

.pager span.disable,
.pager span.current,
.pager strong,
.pager a {
	display: inline-block;
	line-height: 1;
	font-size: 14px;
	font-weight: bold;
	vertical-align: bottom;
	padding: 12px;
	text-decoration: none;
	margin: 0 2px 4px;
}

.ie6 .pager span.disable,
.ie6 .pager span.current,
.ie6 .pager strong,
.ie6 .pager a,
.ie7 .pager span.disable,
.ie7 .pager span.current,
.ie7 .pager strong,
.ie7 .pager a {
	display: inline;
	height: 1%;
}

.pager a:hover {
	opacity: .6;
}

.pager strong,
.pager span.current {
	color: #f16c1c;
	background-color: #FFF7D3;
	border-bottom: #f16c1c 2px solid;
}

.highlight-area {
	margin-bottom: 24px;
	padding: 16px;
	border: #f16c1c 1px solid;
}

/*#####################################
	container
#####################################*/

.container {
}

/*#####################################
	header
#####################################*/

.header {
	background-color: #fff;
	height: 232px;
}

.header h1 {
	position: absolute;
	margin: 0;
	left: 8px;
	top: 8px;
}

.header h1 a:hover img {
	opacity: 1;
}

.header .desc {
	margin: 0;
	position: absolute;
	left: 288px;
	top: 8px;
}

/*#####################################
	header-balloon
#####################################*/

.header-balloon {
	position: absolute;
	width: 472px;
	height: 144px;
	left: 528px;
	top: 8px;
}

.header-balloon .char {
	transition: all .2s linear;
	-webkit-transition: all .2s linear;
}

.header-balloon .icon {
	position: absolute;
	top: 0;
	left: 0;
}

.header-balloon .text {
	display: table;
	position: absolute;
	width: 376px;
	height: 96px;
	top: 24px;
	margin: 0;
	right: 0;
	background-image: url(img/balloon.png);
	background-repeat: no-repeat;
	background-position: left top;
}

.header-balloon .text a {
	display: table-cell;
	vertical-align: middle;
	padding: 24px 24px 24px 44px;
	text-decoration: none;
	font-size: 14px;
	color: #000;
	line-height: 1.5;
	font-weight: bold;
}

.header-balloon .text a[href]:hover {
	color: #f16c1c;
}

.header-balloon .enable {
	opacity: 1;
}

.header-balloon .disable {
	opacity: 0;
	display: none;
}


/*#####################################
	menu
#####################################*/

.header-menu {
	position: absolute;
	width: 100%;
	height: 56px;
	top: 160px;
	left: 0;
	margin: 0;
	padding: 0;
	display: table;
	z-index: 101;
}

.header .inner {
	width: auto;
	max-width: 1008px;
}

.header-menu li {
	position: relative;
	display: table-cell;
	width: 116px;
}

.header-menu li:after {
	content: "";
	display: block;
	height: 40px;
	position: absolute;
	width: 1px;
	right: 0;
	top: 8px;
	border-right: #f7a979 1px solid;
}

.header-menu li.tv:after {
	content: none;
}
/*
.header-menu li:nth-last-child(2):before,
.header-menu li:nth-last-child(1):before {
	display: none;
}
*/

.header-menu a {
	position: relative;
	display: block;
	height: 56px;
	color: #FFF;
	background-color: #f16c1c;
	background-repeat: no-repeat;
	background-position: center;
	border: #f16c1c 4px solid;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
	line-height: 16px;
	padding-top: 16px;
}
.header-menu li.comicbushi {
	vertical-align: top;
}
.header-menu li.comicbushi a {
	padding-top: 8px;
}
.header-menu a:hover {
	background-color: #b44e11;
}

.header-menu li.current a,
.header-menu li.current-menu-item > a,
.header-menu li.current-page-ancestor > a,
.header-menu li.parentsLink > a,
body.comics .header-menu li.comics > a,
body.form .header-menu li.form > a,
/*.header-menu li.current_page_parent > a,*/
.header-menu li.current-page-parent > a {
	background-color: #b44e11;
}

.header-menu li.disable a,
.header-menu li.disable a:hover {
	background-color: #f16c1c;
	cursor: default;
}

.header-menu li.disable:after {
	content: "";
	position: absolute;
	display: block;
	width: 100px;
	height: 40px;
	background-image: url(img/menu_disable.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	color: #999;
	margin: auto;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
}

.header-menu li a[title]:after {
	display: inline-block;
	font-size: 12px;
	content: attr(title);
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	position: absolute;
	right: 12px;
	bottom: 1px;
	background-color: #fff;
	width: 72px;
	height: 16px;
	line-height: 16px;
	color: #f16c1c;
	pointer-events : none;
	text-indent: 0;
}

.header-menu li.top {
	display: none;
}

.header-menu li.only_ft {
	display: none;
}

/*
.header-menu li.latest a { background-image: url(img/menu_latest.png); }
.header-menu li.next a   { background-image: url(img/menu_next.png);   }
.header-menu li.comics a { background-image: url(img/menu_comics.png); }
.header-menu li.books a  { background-image: url(img/menu_books.png);  }
.header-menu li.topics a { background-image: url(img/menu_topics.png); }
.header-menu li.form a   { background-image: url(img/menu_form.png);   }
.header-menu li.column a { background-image: url(img/menu_column.png); }
.header-menu li.tv a     { background-image: url(img/menu_tv.png);     }

.header-menu li.nozokimi {
	width: 80px;
}

.header-menu li.nozokimi a {
	position: absolute;
	width: 80px;
	height: 72px;
	top: -8px;
	left: 0;
	border: none;
	background-image: url(img/shiyoko.png);
	background-color: inherit;
	background-size: contain;
}

.header-menu li.nozokimi a:hover {
	background-color: inherit;	
}
*/

/* sub menu */

.header-menu .sub-menu {
	display: none;
	margin: 0 4px;
	padding-left: 0;
}
.header-menu .menu-item-has-children:hover .sub-menu {
	display: block;
}
.header-menu .sub-menu li {
	display: block;
	width: 100%;
}
.header-menu .sub-menu li a {
	line-height: 20px;
	width: 100%;
	padding-top: 8px;
	height: auto;
	min-height: 40px;
}
.header-menu li .sub-menu li:after {
	height: 1px;
	width: calc(100% - 8px);
	border-right: none;
	top: 0;
	left: 4px;
	border-top: #f7a979 1px solid;
}

.header-menu .sub-menu li.current > a,
.header-menu .sub-menu li.current-menu-item > a,
.header-menu .sub-menu li.current-page-ancestor > a,
.header-menu .sub-menu li.parentsLink > a,
.header-menu .sub-menu li.current_page_parent > a {
	background-color: #f16c1c;
	text-decoration: none;
	transition: all .2s linear;
	-webkit-transition: all .2s linear;
}
.header-menu .sub-menu li.current > a:hover,
.header-menu .sub-menu li.current-menu-item > a:hover,
.header-menu .sub-menu li.current-page-ancestor > a:hover,
.header-menu .sub-menu li.parentsLink > a:hover,
.header-menu .sub-menu li.current_page_parent > a:hover {
	background-color: #b44e11;
}

.header-menu li.current .sub-menu a:hover,
.header-menu li.current-menu-item .sub-menu a:hover,
.header-menu li.current-page-ancestor .sub-menu a:hover,
.header-menu li.parentsLink .sub-menu a:hover,
.header-menu li.current_page_parent .sub-menu a:hover {
	background-color: #b44e11;
}

/*
.header-menu li.current .sub-menu li.current a,
.header-menu li.current-menu-item .sub-menu li.current a,
.header-menu li.current-page-ancestor .sub-menu li.current a,
.header-menu li.parentsLink .sub-menu li.current a,
.header-menu li.current_page_parent .sub-menu li.current a {
	background-color: #b44e11;
}
*/


.menu-controller-label,
.menu-controller-checkbox {
	display: none;
}

/*#####################################
	catch
#####################################*/

.catch {
	background-color: #bbb;
	height: 496px;
	min-width: auto;
	max-width: 100%;
}

.catch .inner {
	width: 100%;
	max-width: 1008px;
	z-index: 100;
}

/*#####################################
	box-new
#####################################*/

.box-new {
	font-size: 0;
	width: 992px;
	height: 24px;
	margin-bottom: 8px;
	position: relative;
	left: 8px;
	top: 8px;
	line-height: 24px;
	vertical-align: middle;
	text-align: left;
	background-color: #fff;
	display: table;
	overflow: hidden;
	table-layout: fixed;
}

.box-new .title,
.box-new .date,
.box-new a {
	font-size: 12px;
	display: table-cell;
	height: 24px;
}

.box-new .title {
	width: 52px;
	position: relative;
	padding: 0 8px;
	font-weight: bold;
	color: #fff;
	background-color: #f16c1c;
}

.box-new .title:before {
	content: "";
	display: block;
	position: absolute;
	right: -9px;
	top: 0;
	width: 0;
	height: 0;
	border-top: 24px #f16c1c solid;
	border-bottom: 0 transparent solid;
	border-left: 0 transparent solid;	
	border-right: 10px transparent solid;
}

.box-new .date {
	width: 64px;
	padding-left: 18px;
	font-weight: bold;
}

.box-new a {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	margin: 0 8px;
}

/*#####################################
	top-slide
#####################################*/

.top-slide-wrap {
	position: absolute;
	width: 992px;
	height: 424px;
	left: 8px;
	top: 40px;
	background-color: #fff;
}

.top-slide ul {
	list-style-type: none;
}
.top-slide ul li img {
	max-width: 100%;
}
.top-slide-overlay {
	position: absolute;
	z-index: 10000;
	width: 100%;
	height: 100%;
	display: none;
}

.flex-viewport {
	position: absolute;
	width: 984px;
	height: 416px;
	left: 4px;
	top: 4px;
	overflow: hidden;
}

.flex-viewport ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.flex-control-nav {
	position: absolute;
	width: 992px;
	height: 28px;
	left: 0;
	top: 420px;
	margin: 0;
	padding: 0;
	font-size: 0;
	line-height: 28px;
	list-style-type: none;
	text-align: center;
}

.flex-control-nav li {
	position: relative;
	height: 28px;
	font-size: 12px;
	display: inline-block;
	background-color: #fff;
	vertical-align: bottom;
}

.flex-control-nav li a {
	text-indent: -9999px;
	display: block;
	width: 28px;
	height: 28px;
	background-image: url(img/slide_navi.png);
	background-position: center;
	background-repeat: no-repeat;
}
.flex-control-nav li a:hover,
.flex-control-nav li a.flex-active {
	background-image: url(img/slide_navi_on.png);
	cursor: pointer;
}

.flex-control-nav li:first-child:before {
	content: "";
	display: block;
	position: absolute;
	left: -16px;
	top: 0;
	width: 0;
	height: 0;
	border-top: 28px #fff solid;
	border-bottom: 0 transparent solid;
	border-left: 16px transparent solid;
	border-right: 0 transparent solid;
}

.flex-control-nav li:last-child:before {
	content: "";
	display: block;
	position: absolute;
	right: -16px;
	top: 0;
	width: 0;
	height: 0;
	border-top: 28px #fff solid;
	border-bottom: 0 transparent solid;
	border-left: 0 transparent solid;
	border-right: 16px transparent solid;
}

/*#####################################
	box-tv
#####################################*/

.box-tv {
	position: absolute;
	width: 328px;
	height: 258px;
	left: 672px;
	top: 8px;
	overflow: hidden;
	background-color: #fff;
}

.supplement .box-tv {
	position: relative;
	width: 100%;
	height: 276px;
	left: 0;
	top: 0;
	margin-bottom: 16px;
	box-shadow: rgba(0,0,0,.15) 2px 2px 0;
}

.box-tv .logo {
	position: relative;
	left: 0;
	top: 0;
	max-width: 100%;
	margin: 4px 0;
}

.box-tv .desc {
	position: absolute;
	left: 146px;
	top: 8px;
}

.supplement .box-tv .desc {
	display: none;
}

.box-tv .update,
.box-nikkan .update {
	color: #fff;
	font-weight: bold;
	line-height: 1.25;
	vertical-align: middle;
	background-color: #f16c1c;
	position: absolute;
	width: 48px;
	height: 48px;
	padding: 6px 6px 0 0;
	right: 0;
	top: 0;
	text-align: center;
}

.box-nikkan .update:before,
.box-tv .update:before {
	content: "";
	display: block;
	position: absolute;
	left: -19px;
	top: 0;
	width: 0;
	height: 0;
	border-top: 48px #f16c1c solid;
	border-bottom: 0 transparent solid;
	border-left: 20px transparent solid;
	border-right: 0 transparent solid;	
}

.box-tv .next {
	display: table;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 56px;
	margin: 0;
	background-color: #e3e3e3;
}

.supplement .box-tv .next {
	border: #fff 1px solid;
}

.box-tv .next .text,
.box-tv .next .btn {
	display: table-cell;
	vertical-align: middle;
}

.box-tv .next .text {
	color: #7c7c7c;
	font-weight: bold;
	text-align: center;
	line-height: 1.25;
}

.box-tv.top .next .text br {
	display: none;
}

.supplement .box-tv .next .text {
	font-size: 12px;
}

.box-tv .next .btn {
	width: 184px;
	padding-right: 8px;
	text-align: right;
}

/*#####################################
	box-nikkan
#####################################*/

.box-nikkan {
	position: absolute;
	width: 328px;
	height: 152px;
	left: 672px;
	top: 352px;
	overflow: hidden;
	background-color: #fff;
	padding: 56px 8px 0;
}

.supplement .box-nikkan {
	position: relative;
	width: 100%;
	height: 200px;
	left: 0;
	top: 0;
	margin-bottom: 16px;
	box-shadow: rgba(0,0,0,.15) 2px 2px 0;
}

.box-nikkan .logo {
	position: absolute;
	left: 0;
	top: 0;
}

.box-nikkan .desc {
	position: absolute;
	left: 144px;
	top: 8px;
}

.supplement .box-nikkan .desc {
	display: none;
}

.box-nikkan .entry img {
	margin-right: 8px;
}

.box-nikkan .entry a.img {
	margin-right: 8px;
	float: left;
	width: 88px;
	height: 88px;
	display: block;
	overflow: hidden;
	position: relative;
}

.box-nikkan .entry a.img img {
	position: absolute;
	width: 150%;
	height: auto;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -30%);
	-moz-transform: translate(-50%, -30%);
	-ms-transform: translate(-50%, -30%);
	-o-transform: translate(-50%, -30%);
	transform: translate(-50%, -30%);
}

.box-nikkan .entry h3 {
	font-size: 12px;
	padding-top: 4px;
	margin: 0;
}

.box-nikkan .entry h3 a {
	color: #000;
	text-decoration: none;
}

.box-nikkan .entry h3 a:hover {
	text-decoration: underline;
}

.box-nikkan .btn {
	position: absolute;
	right: 0;
	bottom: 8px;
}

.box-column-banner {
	position: absolute;
	width: 328px;
	height: 152px;
	left: 672px;
	top: 274px;
	overflow: hidden;
	background-color: #fff;
	padding: 0;
}
.box-column-banner img {
	max-width: 100%;
}

/*#####################################
	main
#####################################*/

.main {
	padding: 16px 0;
	background-color: #e3e3e3;
	min-width: auto;
	max-width: 100%;
}

.main .inner {
	width: 100%;
	max-width: 1008px;
	margin: 0 auto;
}

.old-ie .main {
	height: 1%;
}

.main:after {
	content: ""; 
	display: block; 
	clear: both;
}

/*#####################################
	contents
#####################################*/

.contents {
	width: 100%;
	max-width: 1008px;
	padding-right: 16px;
	padding-left: 16px;
	overflow: hidden;
}


.contents-banner {
	font-size: 0;
	padding: 0;
	margin: 0 0 16px;
	list-style-type: none;
	text-align: center;
}

.contents-banner li {
	font-size: 12px;
	display: inline-block;
	margin: 0 4px 8px;
}

.contents-banner img {
	width: 240px;
	height: auto;
}
/*
.contents-banner {
	padding: 0;
	margin: 0 0 16px;
	list-style-type: none;
}

.contents-banner li {
	font-size: 12px;
	line-height: 1.5;
	padding-bottom: 8px;
}

.contents-banner li:last-child {
	margin-bottom: 0;
}
*/

.contents-box {
	width: 100%;
	padding: 24px;
	background-color: #fff;
	box-shadow: rgba(0,0,0,.15) 2px 2px 0;
	clear: both;
}

.contents-box > :last-child {
	margin-bottom: 0;
}

.top .contents .contents-box {
	margin-bottom: 24px;
}

.contents h1,
.contents h2,
.contents h3,
.contents h4,
.contents h5,
.contents h6 {
	clear: both;
}


.contents h2 {
	position: relative;
	color: #fff;
	background-color: #f16c1c;
	line-height: 1.25;
	margin: -24px -24px 24px;
	padding: 8px 208px 8px 48px;
	background-image: url(img/h2.png);
	background-position: 12px center;
	background-repeat: no-repeat;
	text-shadow: #7f390f 2px 2px 0;
}

.contents h2 .view-all {
	position: absolute;
	display: block;
	right: 14px;
	top: 6px;
	text-align: right;
}

.contents h2:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	border-top: 0 transparent solid;
	border-bottom: 16px transparent solid;
	border-left: 24px #e3e3e3 solid;
	border-right: 0 transparent solid;	
}

.contents h2:after {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 0;
	height: 0;
	border-top: 0 transparent solid;
	border-bottom: 16px #fff solid;
	border-left: 24px transparent solid;
	border-right: 0 transparent solid;	
}

.contents h3 {
	position: relative;
	color: #000;
	text-shadow: #fff 1px 1px 0;
	font-weight: bold;
	font-size: 16px;
	padding: 8px 16px;
	line-height: 1.25;
	border-bottom: #f16c1c 2px solid;
	background: #ffca79;
	background: -moz-linear-gradient(top,  #ffca79 0%, #fff8be 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffca79), color-stop(100%,#fff8be));
	background: -webkit-linear-gradient(top,  #ffca79 0%,#fff8be 100%);
	background: -o-linear-gradient(top,  #ffca79 0%,#fff8be 100%);
	background: -ms-linear-gradient(top,  #ffca79 0%,#fff8be 100%);
	background: linear-gradient(to bottom,  #ffca79 0%,#fff8be 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffca79', endColorstr='#fff8be',GradientType=0 );
}

.contents h4 {
	position: relative;
	color: #f16c1c;
	font-size: 16px;
	padding: 2px 4px;
	line-height: 1;
	font-size: 14px;
	border-bottom: #ccc 2px solid;
}

.contents h4:after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 200px;
	height: 2px;
	background-color: #f16c1c;
}

.contents h5 {
}

.contents h6 {
}

/*#####################################
	breadcrumbs
#####################################*/

.breadcrumbs {
	font-size: 12px;
	text-align: left;
	line-height: 1.25;
	margin-bottom: 16px;
}

.breadcrumbs a {
	color: #000;
}

/*#####################################
	news-list
#####################################*/

.news-list {
	font-size: 13px;
	margin: -24px !important;
	padding: 0;
	list-style-type: none;
}

.news-list a {
	display: table;
	width: 100%;
	color: #000;
	min-height: 48px;
	text-decoration: none;
	border-bottom: #c6c6c6 1px solid;
	padding: 4px;
	line-height: 1.25;
}

.news-list a.view-all {
	color: #666;
	min-height: 28px;
	line-height: 28px;
	text-align: center;
	background-color: #f0f0f0;
	font-weight: bold;
}

.news-list a:hover {
	background-color: #f0f0f0;
}

.news-list a.view-all:hover {
	background-color: #ddd;
}

.news-list a .date,
.news-list a .category-container,
.news-list a .title {
	display: table-cell;
	vertical-align: middle;
}

.news-list a .date {
	width: 112px;
	text-align: center;
	font-weight: bold;
}

.news-list a .category-container {
	width: 88px;
	text-align: center;
}

.news-list a .title {
	width: 528px;
	padding-left: 8px;
	text-align: left;
}

.category-container {
	display: inline-block;
	font-size: 0;
}

.category-label {
	display: inline-block;
	text-align: center;
	width: 90px;
	color: #fff;
	font-size: 12px;
	line-height: 1.5;
	vertical-align: middle;
	text-shadow: rgba(0,0,0,.5) 0 0 2px;
	margin: 0 1px 1px 0;
}

.category-label.limited  { background-color: #C50000 ;}
.category-label.trial    { background-color: #283D9E ;}
.category-label.pickup   { background-color: #1485FF ;}
.category-label.events   { background-color: #26882F ;}
.category-label.books    { background-color: #FF9600 ;}
.category-label.tv       { background-color: #EDAA10 ;}
.category-label.information { background-color: #283D9E ;}
.category-label.campaign { background-color: #F00066 ;}
.category-label.press { background-color: #C50000 ;}
.category-label { background-color: #999999 ;}

/*#####################################
	supplement
#####################################*/

.supplement {
	width: 100%;
	padding-right: 16px;
	padding-left: 16px;
}

.supplement-inner {
	width: 100%;
}

.supplement ul {
    margin: 0 0 16px;
}


/*-------------------------------------
	supplement-banner
-------------------------------------*/

.supplement-banner {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.supplement-banner li {
	margin-bottom: 8px;
	text-align: center;
}

/*-------------------------------------
	twitter-widget-container
-------------------------------------*/

.twitter-widget-container {
	width: 100%;
	max-width: 640px;
	margin: 0 auto;
}

.twitter-widget-container .pc {
	height: 315px;
	background-color: #fff;
	box-shadow: rgba(0,0,0,.15) 2px 2px 0;
}

.twitter-widget-container .sm {
	display: none;
}

/*#####################################
	footer
#####################################*/

.footer {
	clear: both;
	color: #fff;
	background-color: #444;
	padding: 24px 0 48px;
	min-width: auto;
	width: 100%;
}

.footer .inner {
	width: 100%;
	max-width: 1008px;
}

/*-------------------------------------
	footer-banner
-------------------------------------*/

.footer-banner {
	font-size: 0;
	padding: 0 80px 0 88px;
	margin: 0 0 24px;
	list-style-type: none;
	text-align: center;
}

.footer-banner li {
	font-size: 12px;
	display: inline-block;
	margin: 0 8px 8px 0;
}

.footer-banner img {
	width: 200px;
	height: 60px;
}

/*-------------------------------------
	footer-menu
-------------------------------------*/

.footer-menu {
	text-align: center;
	list-style: none;
	margin: 0 0 24px;
	padding: 0;
	font-size: 0;
}

.footer-menu li {
	padding: 0;
	font-size: 14px;
	display: inline-block;
	border-right: #525252 1px solid;
}
.footer-menu li br {
	display: none;
}
.footer-menu li.only_hd {
	display: none;
}

.footer-menu li:last-child {
	border-right: none;
}

.footer-menu a {
	color: #fff;
	text-decoration: none;
	line-height: 2;
	padding: 4px 8px;
}

.footer-menu a:hover {
	background-color: #666;
}

/*-------------------------------------
	copyright
-------------------------------------*/

.copyright {
	font-size: 10px;
	text-align: center;
}

/*#####################################
	pagetop
#####################################*/

.pagetop {
	position: fixed;
	bottom: 0;
	right: 0;
	opacity: 0;
	margin: 0;
	visibility: hidden;
	filter: alpha(opacity=0);
	-webkit-transform: scale(.5);
	-moz-transform: scale(.5);
	-ms-transform: scale(.5);
	-o-transform: scale(.5);
	transform: scale(.5);
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
	z-index: 101;
}

.pagetop.show {
	opacity: 1;
	visibility: visible;
	filter: alpha(opacity=70);
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
}

.pagetop:hover {
	cursor: pointer;
	opacity: 1;
	filter: alpha(opacity=100);
}

/*#####################################
	social-buttons
#####################################*/

.social-buttons {
	font-size: 0;
	padding: 0;
	list-style-type: none;
	margin: 0 0 24px;
	min-width: 100px;
	text-align: center;
    pointer-events: none;
}

.social-buttons li {
	margin: 0 10px 10px 0;
	padding: 0;
	display: inline-block;
	font-size: 12px;
	height: 20px;
	overflow: hidden;
	text-align: left;
	vertical-align: bottom;
	line-height: 1;
    pointer-events: auto;
}

.ie6 .social-buttons li,
.ie7 .social-buttons li {
	display: inline;
}

.social-buttons li.twitter {
	/* width: 76px; */
	margin-right: 4px;
}
.social-buttons li.sns-x {
	/* width: 76px; */
	margin-right: 4px;
}

.social-buttons li.sns-x a {
	color: #FFF;
	font-size: 0;
	background-image: url(img/share-x.svg);
	width: 100px;
	height: 20px;
	background-position: center center;
	display: block;
	background-size: auto;
	background-repeat: no-repeat;
}

.social-buttons li.facebook {
	/* width: 92px; */
	margin-right: 0;
}

.contents .social-buttons {
	position: relative;
	margin: -56px -8px 16px 0;
	text-align: right;
}

.contents .column-date ~ .social-buttons {
	margin: -22px 144px 24px auto;
}