@charset "UTF-8";
/* #####################################################
 * style.css
 * ################################################## */

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, p, blockquote, th, td, form, fieldset, legend {
	margin: 0;
	padding: 0;
}

article, aside, details, figcaption, figure, footer, header, menu, nav, section {
	display: block;
	margin: 0;
	padding: 0;
}

body {
	line-height: 1;
}

div {
	outline: none;
}

h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	line-height: 1.2;
}

ol, ul {
	list-style: none;
}

table {
	font-size: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}

caption, th, td {
	font-weight: normal;
	text-align: left;
	vertical-align: top;
}

fieldset {
	border: none;
}

input, textarea, select, label {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 0;
	padding-bottom: 0;
	font-size: 100%;
	font-family: inherit;
	vertical-align: middle;
}

label {
	cursor: pointer;
}

textarea {
	overflow: auto;
}

img {
	border: none;
	vertical-align: bottom;
}

object {
	vertical-align: middle;
	outline: none;
}

em, strong {
	font-style: normal;
	font-weight: bold;
}

small {
	font-size: 100%;
}

abbr, acronym {
	border: none;
	font-variant: normal;
}

q:before, q:after {
	content: " ";
}

address, caption, cite, code, dfn, var {
	font-style: normal;
	font-weight: normal;
}

code, pre {
	font-family: monospace;
}

sup {
	vertical-align: text-top;
}

sub {
	vertical-align: text-bottom;
}

*, *:before, *:after {
	word-break: normal;
	box-sizing: border-box;
}

html, body {
	height: 100%;
	min-height: 100%;
}

html {
	font-size: 62.5%;
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

body {
	font-size: 1.4rem;
	line-height: 1.7;
}

a:link, a:visited, a:hover, a:active {
	text-decoration: none;
}

/* =====================================================
 * Base
 * ================================================== */

body {
	margin: 0;
	padding: 0;
	font-family: "Montserrat", "Noto Sans Japanese", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	-webkit-print-color-adjust: exact;
}

h1, h2, h3, p, li, th, td, span, figcaption {
	word-break: break-all;
	word-wrap: break-word;
}

a {
	color: #000;
	-webkit-transition: opacity 0.2s ease-in-out, background-color 0.2s ease-in-out;
	transition: opacity 0.2s ease-in-out, background-color 0.2s ease-in-out;
}

a:hover {
	opacity: 0.5;
}

/* =====================================================
 * Module(PC)
 * ================================================== */

/* header ----------------------------- */

header {
	border-bottom: 1px #000 solid;
	background: #fff;
}

header > .inner {
	position: relative;
	width: 960px;
	height: 140px;
	margin: 0 auto;
	/* color: #0078c9; */
}

header > .inner .itemIcon {
	position: absolute;
	top: 20px;
	width: 100px;
	height: 100px;
}

header > .inner .title {
	position: absolute;
	top: 30px;
	left: 118px;
	font-weight: 900;
	font-size: 2.4em;
}

header > .inner .titleTop {
	position: absolute;
	top: 30px;
	font-weight: 900;
	font-size: 3.6rem;
}

@media (max-width: 767px) {
	header > .inner .titleTop {
        position: absolute;
        top: 16px;
        font-weight: 900;
        font-size: 2.6rem;
    }
}

header > .inner .title span {
	display: block;
	margin: 2px 0 0 4px;
	font-weight: 100;
	font-size: 1.2rem;
	line-height: 1;
	/* font-family: "Roboto", sans-serif; */
	color: #8C8C8D;
}

header > .inner .title .itemLogo {
	max-width: 350px;
	max-height: 48px;
	margin: 0 4px 0 0;
}

header > .inner .follow {
	position: absolute;
	top: 92px;
	left: 118px;
	color: #8D8C8D;
	cursor: pointer;
	letter-spacing: 0.1rem;
	font-size: 1.4rem;
	font-weight: bold;
}

.page-top header > .inner .follow {
	top: 96px;
}

header > .inner .follow:after {
	content: " ";
	display: block;
	position: absolute;
	right: -30px;
	bottom: 3px;
	width: 26px;
	height: 18px;
	/* background: url(../img/ico_twFollow_01.png) no-repeat 0 0; */
	background-size: 26px 18px;
	vertical-align: baseline;
}

header > .inner .itemLogoSite {
	position: absolute;
	top: 34px;
	right: 20px;
	width: 148px;
	height: 28px;
}

.page-top header > .inner .itemLogoSite {
	top: 56px;
}

header > .inner .official {
	position: absolute;
	top: 78px;
	right: 20px;
	width: 148px;
	height: 28px;
	border: 1px #000 solid;
	color: #000;
	font-weight: bold;
	font-size: 1.2rem;
	line-height: 28px;
	text-align: center;
}

header > .inner .official .itemLogo {
	display: inline-block;
	width: 76px;
	margin: 0 2px 0 0;
	line-height: 1.2;
	text-align: center;
}

header > .inner .official img {
	display: inline-block;
	max-width: 76px;
	max-height: 16px;
}

header > .inner .spNavButton {
	display: none;
}

/* footer ----------------------------- */

footer {
	padding: 1px 0 18px;
	border-top: 1px #000 solid;
	background: #fff;
}

.page-top footer {
	/* border-top: none; */
	background: fff;
}

footer > .inner {
	width: 980px;
	margin: 0 auto;
}

footer .cookie {
	text-align: center;
    font-size: 8px;
}

/* contents --------------------------- */

main > .inner {
	position: relative;
	z-index: 1;
	width: 780px;
	margin: 0 auto;
	padding: 1px 0 40px;
}

/* main top --------------------------- */

.wrapContents {
	display: table;
	width: 980px;
	margin: 0 auto;
	padding: 0 0 100px;
	table-layout: fixed;
}

.wrapContents .contMain {
	display: table-cell;
	width: 600px;
}

.wrapContents .contSide {
	display: table-cell;
	/* width: 380px; */
	padding: 0 0 0 80px;
}

.wrapContents .contSide h3 {
	margin: 76px 0 0;
	padding: 0 0 10px;
	border-bottom: 1px #000 solid;
	font-size: 2.2rem;
	line-height: 1;
}

.wrapContents .contSide h3:first-of-type {
	margin: 0;
	margin-top: 4rem;
}

.wrapContents .contSide h3 .sup {
	display: block;
	margin: 8px 0 0;
	color: #8D8C8D;
	font-weight: 100;
	font-size: 1.2rem;
	line-height: 1;
}

.spNavMenu {
	display: none;
}

.modListWorks .onair {
	display: none;
}

.modWork .date, .modWorksFeature .date {
	margin: 38px 0 0;
	font-size: 1.6rem;
	line-height: 1;
	font-family: "Noto Sans Japanese", sans-serif;
	/* letter-spacing: 0.2rem; */
	font-weight: bold;
}

.modWork h4, .modWorksFeature h4 {
	position: relative;
	padding: 10px 0 0 48px;
	font-size: 1.8rem;
}

.modWork h4 img, .modWorksFeature h4 img {
	position: absolute;
	top: 0px;
	left: 0;
	width: 36px;
	height: 36px;
}

.modListLinks {
	padding: 0 0 0 48px;
}

.modListLinks li {
	margin: 12px 0 0;
	line-height: 1;
}

.modListLinks li:before {
	content: "・";
}

.modListLinks li a {
	color: #000;
	font-size: 1.4rem;
	line-height: 1;
}

.modWork figure {
	margin: 8px 0 0;
}

.modWork figure img {
	max-width: 100%;
}

.modWork h4 {
	margin: 10px 0 0;
}

.modWorksFeature {
	position: relative;
	margin: 36px 0 0;
	padding: 1px 0 0;
}

.modWorksFeature:before {
	content: " ";
	display: block;
	height: 1px;
	border: none;
	background: #000;
	background: -webkit-linear-gradient(right, #000 0%, #000 25%, transparent 25%, transparent 100%);
	background: linear-gradient(to left, #000 0%, #000 25%, transparent 25%, transparent 100%);
	background-repeat: repeat-x;
	background-position: 1px top;
	background-size: 4px 1px;
}

.modWorksFeature h4 {
	margin: 12px 0 0;
}

.modListOthers li {
	margin: 12px 0 0;
	line-height: 1;
}

.modListOthers li:before {
	content: "・";
}

.modListOthers li a {
	color: #000;
	font-size: 1.4rem;
	line-height: 1;
}

/* main 2nd Common -------------------- */

/* contMain                             */

.modPageTitle {
	overflow: hidden;
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	clip: rect(0 0 0 0);
}

.modListNav {
	margin: 19px 0 0;
	line-height: 1;
	letter-spacing: -0.4em;
}

.modListNav > * {
	letter-spacing: normal;
}

.modListNav li {
	display: inline-block;
	padding: 0 17px 0 19px;
	border-left: 1px #000 solid;
	line-height: 1;
}

.theme-black .modListNav li {
	border-color: #fff;
}

.modListNav li:first-child {
	padding: 0 17px 0 0;
	border: none;
}

.modListNav li a {
	color: #7f7f7f;
}

.theme-black main .modListNav li a {
	color: #999;
}

.modListNav li a.isActive {
	color: #000;
}

.theme-black .modListNav li a.isActive {
	color: #fff;
}

.modListNav li a.isActive:hover {
	opacity: 1;
}

.modListEpisode {
	margin: 10px 0 0;
	padding: 10px 0 0;
	border-top: 1px solid #000;
	font-size: 1.5rem;
	letter-spacing: -0.4em;
}

.modListEpisode > * {
	letter-spacing: normal;
}

.theme-black main .modListEpisode {
	border-color: #fff;
}

.modListEpisode li {
	display: inline-block;
	margin-bottom: 5px;
	border-right: 1px solid #000;
	line-height: 1.2;
}

.theme-black main .modListEpisode li {
	border-color: #fff;
}

.modListEpisode a {
	display: inline-block;
	width: 6em;
	color: #999;
	text-align: center;
}

.theme-black main .modListEpisode a {
	color: #999;
}

.modListEpisode a.isActive {
	color: #000;
}

.theme-black main .modListEpisode a.isActive {
	color: #fff;
}

.theme-black main .modListEpisode a.isActive:hover {
	opacity: 1;
}

.blockToall {
	margin: 180px 0 0;
	text-align: center;
}

.blockPager + .blockToall {
	margin: 100px 0 0;
}

.blockToall a {
	display: inline-block;
	padding: 8px 38px;
	border: 1px #000 solid;
	color: #000;
	line-height: 1;
}

.theme-black .blockToall a {
	border-color: #fff;
}

/* contFooter                           */

.blockFooterSns {
	margin: 30px 0 0;
}

.modListSns {
	letter-spacing: -0.4em;
	text-align: center;
}

.modListSns > * {
	letter-spacing: normal;
}

.modListSns li {
	display: inline-block;
	margin: 0 20px;
}

.modListSns li a {
	display: block;
	overflow: hidden;
	text-indent: 200%;
	white-space: nowrap;
	word-break: keep-all;
	word-wrap: normal;
}

.modListSns li a.twfollow {
	width: 44px;
	height: 30px;
	background: url(../img/ico_twFollow_01.png) no-repeat 0 0;
	background-size: 44px 30px;
}

.page-top .modListSns li a.twfollow {
	background-image: url(../img/ico_twFollow_01.png);
}

.modListSns li a.tw {
	width: 37px;
	height: 30px;
	background: url(../img/ico_tw_01.png) no-repeat 0 0;
	background-size: 37px 30px;
}

.page-top .modListSns li a.tw {
	background-image: url(../img/ico_tw_01.png);
}

.modListSns li a.fb {
	width: 30px;
	height: 30px;
	background: url(../img/ico_fb_01.png) no-repeat 0 0;
	background-size: 30px 30px;
}

.page-top .modListSns li a.fb {
	background-image: url(../img/ico_fb_01.png);
}

.blockFooterBanner {
	margin: 30px 0 0;
}

.modListBanner {
	margin: 0 0 0 -4px;
	letter-spacing: -0.4em;
	text-align: center;
}

.modListBanner > * {
	letter-spacing: normal;
}

.modListBanner li {
	display: inline-block;
	margin: 0 0 0 4px;
}

.modListBanner li img {
	width: 242px;
	height: auto;
}

.blockPagetop {
	margin: 30px auto 0;
	line-height: 0;
	text-align: right;
}

.blockPagetop a {
	display: inline-block;
	overflow: hidden;
	width: 122px;
	height: 18px;
	background: url(../img/ico_totop_01.png) no-repeat 0 0;
	background-size: 122px 18px;
	text-indent: 200%;
	white-space: nowrap;
	word-break: keep-all;
	word-wrap: normal;
}

.page-top .blockPagetop a {
	background-image: url(../img/ico_totop_01.png);
}

/* SP NAV                               */

.blockSpNavFooter {
	display: none;
}

/* main 2nd News ---------------------- */

.modMainvisual {
	margin: 10px 0 0;
	border-top: 1px #000 solid;
}

.theme-black .modMainvisual {
	border-color: #fff;
}

.modListNews {
	margin: 60px 0 0;
}

.modListNews li {
	clear: both;
	margin: 60px 0 0;
	border-left: 1px #000 solid;
}

.theme-black .modListNews li {
	border-color: #fff;
}

.modListNews li a {
	display: block;
	overflow: hidden;
	padding: 0 0 0 25px;
	line-height: 1;
}

.modListNews li a:hover {
	background-color: rgba(0, 0, 0, 0.056);
	opacity: 1;
}

.theme-black .modListNews li a:hover {
	background-color: rgba(66, 66, 66, 0.6);
}

.modListNews .date time {
	color: #8c8c8c;
	line-height: 1;
	font-family: "Noto Sans Japanese", sans-serif;
}

.theme-black .modListNews .date time {
	color: #b4b4b4;
}

.modListNews .unitImage {
	float: left;
	width: 178px;
	margin: 8px 0 0;
}

.modListNews .unitImage img {
	width: 100%;
}

.modListNews .unitText {
	overflow: hidden;
	margin: 8px 0 0;
	padding: 0;
	color: #000;
}

.theme-black .modListNews .unitText {
	color: #fff;
}

.modListNews .unitText h3 {
	max-height: 24px;
	font-size: 1.8rem;
}

.modListNews .unitText .text {
	max-height: 52px;
	margin: 0.4rem 0 0;
	font-size: 1.4rem;
	line-height: 1.8;
}

.modListNews .unitText .readmore {
	margin: 4px 0 0;
	color: #505050;
	font-size: 1.2rem;
	font-family: "Roboto", sans-serif;
}

.theme-black .modListNews .unitText .readmore {
	color: #dcdcdc;
}

.modListNews .unitImage + .unitText {
	padding: 0 0 0 16px;
}

.page-top .modListNews .title {
	position: relative;
	padding: 0 0 0 42px;
	color: #000;
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 1;
}

.page-top .modListNews .title img {
	position: absolute;
	top: 0;
	left: 0;
	width: 36px;
	height: 36px;
}

.page-top .modListNews .date {
	margin: 6px 0 0;
	padding: 0 0 0 42px;
	/* letter-spacing: 0.2rem; */
	font-size: 1.2rem;
}

.page-top .modListNews .unitText h3 {
	max-height: 24px;
	margin-top: 1rem;
}

.blockPager {
	margin: 60px 0 0;
}

.modListPager {
	letter-spacing: -0.4em;
	text-align: center;
}

.modListPager > * {
	letter-spacing: normal;
}

.modListPager .isHidden {
	visibility: hidden;
}

.modListPager li {
	display: inline-block;
	margin: 0 6px;
}

.modListPager li a, .modListPager li span {
	display: block;
	width: 24px;
	height: 24px;
	border: 1px #000 solid;
	background: #fff;
	color: #000;
	font-size: 1.4rem;
	line-height: 22px;
	font-family: "Noto Sans Japanese", sans-serif;
	text-align: center;
	-webkit-transition: none;
	transition: none;
}

.theme-black .modListPager li a, .theme-black
.modListPager li span {
	border-color: #fff;
	background: #000;
}

.modListPager li a.isActive, .modListPager li span.isActive {
	background: #000;
	color: #fff;
	opacity: 1;
}

.theme-black .modListPager li a.isActive, .theme-black
.modListPager li span.isActive {
	background: #fff;
	color: #000;
}

.modListPager li a:hover {
	opacity: 0.5;
}

.modListPager li.prev, .modListPager li.next {
	vertical-align: top;
}

.modListPager li.prev a, .modListPager li.next a {
	display: block;
	width: 112px;
}

.modListPager li.prev a:before, .modListPager li.prev a:after, .modListPager li.next a:before, .modListPager li.next a:after {
	content: " ";
	display: inline-block;
	width: 6px;
	height: 12px;
	background-repeat: no-repeat;
	background-position: 0 50%;
	background-size: 6px 12px;
}

.modListPager li.prev {
	margin: 0 34px 0 0;
}

.modListPager li.prev a:before {
	margin: 0 6px 0 0;
	background-image: url(../img/ico_arrow_prev_01.png);
}

.theme-black .modListPager li.prev a:before {
	background-image: url(../img/ico_arrow_prev_02.png);
}

.modListPager li.next {
	margin: 0 0 0 34px;
}

.modListPager li.next a:after {
	margin: 0 0 0 6px;
	background-image: url(../img/ico_arrow_next_01.png);
}

.theme-black .modListPager li.next a:after {
	background-image: url(../img/ico_arrow_next_02.png);
}

/* main 2nd Article ------------------- */

.modArticle .date {
	margin: 54px 0 0;
	line-height: 1;
	font-family: "Noto Sans Japanese", sans-serif;
}

.modArticle h3 {
	margin: 6px 0 0;
	font-weight: bold;
	font-size: 2.8rem;
	line-height: 1.3;
}

.modArticle .visual {
	margin: 24px 0 0;
}

.modArticle .visual img {
	max-width: 100%;
}

.modWysiwyg h4 {
	margin: 24px 0 0;
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 1.3;
}

.modWysiwyg h5 {
	margin: 24px 0 0;
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1.3;
}

.modWysiwyg p {
	margin: 22px 0 0;
	font-size: 1.4rem;
	line-height: 1.8;
}

.modWysiwyg p img {
	max-width: 100%;
	height: auto;
	margin: 5px 0 0;
}

.modWysiwyg > img {
	max-width: 100%;
	height: auto;
	margin: 22px 0 0;
}

.modWysiwyg a {
	border-bottom: 1px #000 solid;
	color: #000;
	font-size: 1.4rem;
	line-height: 1.8;
}

.modWysiwyg strong {
	font-weight: bold;
}

.modWysiwyg  p .animeThmb {
	width: 33%;
}

.modWysiwyg p img.animeThmb {
	margin: -3px;
}

/* main 2nd Onair --------------------- */

.modOnair h3 {
	margin: 32px 0 0;
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 1;
}

.modOnair h3:first-child {
	margin: 60px 0 0;
}

.modOnair p {
	margin: 12px 0 0;
	font-size: 1.4rem;
	line-height: 1.8;
}

/* main 2nd Goods --------------------- */

.modListGoods {
	margin: 60px 0 0;
}

.modListGoods li {
	overflow: hidden;
	margin: 60px 0 0;
}

.modListGoods li h3 {
	padding: 0 0 0 410px;
	font-size: 1.8rem;
}

.modListGoods li .unitImage {
	float: left;
	width: 370px;
}

.modListGoods li .unitImage img {
	width: 100%;
}

.modListGoods li .unitText {
	overflow: hidden;
	padding: 0 0 0 40px;
}

.modListGoods li .unitText .sub {
	margin: 24px 0 0;
	font-weight: bold;
	font-size: 1.4rem;
	line-height: 1;
}

.modListGoods li .unitText .text {
	margin: 8px 0 0;
	font-size: 1.4rem;
	line-height: 1.8;
}

.modListGoods li .unitText dd.link a {
	display: block;
	margin: 24px 0 0;
	padding: 6px 0;
	border: 1px #000 solid;
	color: #000;
	font-weight: bold;
	font-size: 1.4rem;
	line-height: 1;
	text-align: center;
}

.theme-black .modListGoods li .unitText dd.link a {
	border-color: #fff;
	color: #fff;
}

/* =====================================================
 * Module(SP)
 * ================================================== */

@media (max-width: 767px) {
	body.isFixed {
		overflow: hidden;
	}
	/* header ----------------------------- */

	header {
		border-bottom: 2px #000 solid;
	}

	.page-anime header > .inner {
		height: 76px;
	}
	header > .inner {
		width: 320px;
		height: 60px;
		padding: 0 20px;
	}
	header > .inner .itemIcon {
		top: 10px;
		left: 20px;
		width: 40px;
		height: 40px;
	}
	header > .inner .title {
		top: 17px;
		left: 70px;
		font-size: 1.4rem;
	}
	header > .inner .title span {
		margin: 1px 0 0 2px;
		font-size: 1rem;
	}
	header > .inner .title .itemLogo {
		max-width: 151px;
		max-height: 25px;
		margin: 0 4px 0 0;
	}
	header > .inner .spNavButton {
		display: block;
        display: none;
	}
	header > .inner .itemLogoSite, header > .inner .official, header > .inner .follow {
		display: none;
	}

	.page-anime header .follow {
		display: inline-block;
		position: relative;
		top: 45px;
		left: 50px;
		margin: 0 auto;
		font-size: 12px;
	}

	.page-anime header .follow:after {
		bottom: -1px;
		background-size: 20px 14px;
	}

	.page-anime header .follow:hover {
		opacity: 1;
	}

	.page-anime header .spNavButton {
		display: none;
	}
	header .spNavButton {
		display: block;
		position: absolute;
		top: 16px;
		right: 15px;
		width: 30px;
		height: 30px;
		-webkit-transition: top 0.2s ease-in-out, left 0.2s ease-in-out;
		transition: top 0.2s ease-in-out, left 0.2s ease-in-out;
	}
	header .spNavButton span {
		display: block;
		position: absolute;
		top: 6px;
		left: 0;
		width: 30px;
		height: 2px;
		background: #000;
		-webkit-transition: opacity 0.2s ease-in-out, top 0.2s ease-in-out, left 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
		transition: opacity 0.2s ease-in-out, top 0.2s ease-in-out, left 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
		transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out, top 0.2s ease-in-out, left 0.2s ease-in-out;
		transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out, top 0.2s ease-in-out, left 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
	}
	header .spNavButton span:nth-child(2) {
		top: 14px;
	}
	header .spNavButton span:nth-child(3) {
		top: 22px;
	}
	header .spNavButton.isActive {
		top: 14px;
		right: 16px;
	}
	header .spNavButton.isActive span {
		top: 16px;
		left: 0;
		width: 32px;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	header .spNavButton.isActive span:nth-child(2) {
		opacity: 0;
	}
	header .spNavButton.isActive span:nth-child(3) {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	.page-top header > .inner .itemLogoSite {
		display: block;
		top: 82px;
		left: 20px;
		width: 125px;
		height: 24px;
	}
	/* footer ----------------------------- */

	footer > .inner {
		width: 320px;
		padding: 0 0 20px;
	}
	footer .cookie {
	text-align: center;
	margin-bottom: -2rem;
	font-size: 4%;
	display: block;
	font-size: 10px;
	transform: scale(0.8);
	margin-top: 2rem;
	}
	/* contents --------------------------- */

	main > .inner {
		position: relative;
		z-index: 1;
		width: 320px;
		margin: 0 auto;
		padding: 1px 20px 40px;
	}
	/* main top --------------------------- */

	.wrapContents {
		display: block;
		position: relative;
		width: 100%;
		margin: 83px 0 0;
		padding: 0 20px 100px;
	}

	.wrapContents .contMain {
		display: block;
		width: 100%;
	}

	.wrapContents .contSide {
		display: block;
		width: 100%;
		margin: 90px 0 0;
		padding: 0;
	}

	.wrapContents .contSide h3 {
		margin: 60px 0 0;
		padding: 0 0 8px;
		border-bottom: 1px #000 solid;
		font-size: 1.8rem;
		line-height: 1;
	}

	.wrapContents .contSide h3:first-of-type {
		margin: 0;
		margin-top: 4rem;
	}

	.wrapContents .contSide h3 .sup {
		display: block;
		margin: 6px 0 0;
		color: #8c8c8c;
		font-weight: 300;
		font-size: 1.2rem;
		line-height: 1;
	}

	.spNavMenu {
		display: none;
		position: fixed;
		top: 62px;
		right: 0;
		bottom: 0;
		left: 0;
		padding: 0 20px 40px;
		background: rgba(0, 0, 0, 0.92);
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
	}

	.spNavMenu.isActive {
		display: block;
	}

	.spNavMenu .blockSpSns {
		text-align: center;
	}

	.spNavMenu .follow {
		display: inline-block;
		width: 140px;
		margin: 20px auto 0;
		color: #fff;
		font-weight: 100;
		font-size: 1.4rem;
		line-height: 1;
		text-align: center;
		cursor: pointer;
	}

	.spNavMenu .follow:hover {
		opacity: 1;
	}

	.spNavMenu .follow:after {
		content: " ";
		display: block;
		width: 30px;
		height: 20px;
		margin: 10px auto 0;
		background: url(../img/ico_twFollow_02.png) no-repeat 0 0;
		background-size: 30px 20px;
	}

	.spNavMenu .blockSpWorks {
		margin: 0;
	}

	.spNavMenu .blockSpWorks .blockSide {
		color: #fff;
	}

	.spNavMenu .blockSpWorks .blockSide a {
		color: #fff;
	}

	.spNavMenu .blockSpWorks .blockSide h3, .spNavMenu .blockSpWorks .blockSide figure, .spNavMenu .blockSpWorks .blockSide img, .spNavMenu .blockSpWorks .blockSide .modListLinks, .spNavMenu .blockSpWorks .blockSide .modListOthers {
		display: none;
	}

	.spNavMenu .blockSpWorks .blockSide .modWorksFeature {
		margin: 0;
		border: none;
	}

	.spNavMenu .blockSpWorks .blockSide .modWork, .spNavMenu .blockSpWorks .blockSide .modListWorks li {
		position: relative;
		padding-left: 25px;
	}

	.spNavMenu .blockSpWorks .blockSide .modWork:before, .spNavMenu .blockSpWorks .blockSide .modListWorks li:before {
		content: " ";
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		width: 10px;
		height: 2px;
		margin: -1px 0 0;
		background: #fff;
	}

	.spNavMenu .blockSpWorks .blockSide .modListWorks .onair {
		display: block;
	}

	.spNavMenu .blockSpWorks .blockSide .date {
		font-weight: normal;
		font-size: 1rem;
	}

	.spNavMenu .blockSpWorks .blockSide h4 {
		margin: 0;
		padding: 5px 0 0;
	}

	.spNavMenu .blockSpWorks .blockSide h4 a:hover {
		opacity: 1;
	}

	.spNavMenu .blockSpWorks .blockSide h4 br {
		display: none;
	}

	.spNavMenu .modSpListWorks li {
		display: block;
		position: relative;
		margin: 25px 0 0;
		padding: 0 0 0 25px;
	}

	.spNavMenu .modSpListWorks li:before {
		content: " ";
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		width: 10px;
		height: 2px;
		margin: -1px 0 0;
		background: #fff;
	}

	.spNavMenu .modSpListWorks li a {
		color: #fff;
		line-height: 1;
	}

	.spNavMenu .modSpListWorks li .date {
		font-size: 1.2rem;
		line-height: 1;
		font-family: "Noto Sans Japanese", sans-serif;
	}

	.spNavMenu .modSpListWorks li h3 {
		margin: 8px 0 0;
		font-weight: 500;
		font-size: 1.8rem;
		line-height: 1;
	}

	.modWork h4 {
		font-size: 1.8rem;
	}

	.modWorksFeature .date {
		margin: 30px 0 0;
		font-weight: 600;
	}

	.modWorksFeature h4 {
		position: relative;
		padding: 8px 0 0 48px;
		font-weight: 500;
		font-size: 1.8rem;
	}

	.modListLinks {
		padding: 0 0 0 48px;
	}

	.modListLinks li {
		margin: 12px 0 0;
		line-height: 1;
	}

	.modListLinks li:before {
		content: "・";
	}

	.modListLinks li a {
		color: #000;
		font-size: 1.4rem;
		line-height: 1;
	}

	.modWork figure {
		margin: 8px 0 0;
	}

	.modWork h4 {
		margin: 20px 0 0;
	}

	.modWorksFeature {
		margin: 36px 0 0;
		padding: 1px 0 0;
		border-top: 1px #000 solid;
	}

	.modWorksFeature:before {
		display: none;
	}

	.modWorksFeature h4 {
		margin: 12px 0 0;
	}

	.modListOthers li {
		margin: 12px 0 0;
		line-height: 1;
	}

	.modListOthers li:before {
		content: "・";
	}

	.modListOthers li a {
		color: #000;
		font-size: 1.4rem;
		line-height: 1;
	}
	/* main 2nd Common -------------------- */

	/* contMain                             */

	.modPageTitle {
		overflow: hidden;
		position: absolute;
		width: 1px;
		height: 1px;
		margin: -1px;
		padding: 0;
		border: 0;
		clip: rect(0 0 0 0);
	}

	.modListNav {
		padding: 0 0 8px;
		border-bottom: 1px #000 solid;
		text-align: center;
	}

	.theme-black .modListNav {
		border-color: #fff;
	}

	.modListNav li {
		padding: 0 8px;
	}

	.modListNav li:first-child {
		padding: 0 8px 0 0;
		border: none;
	}

	.modListNav li:last-child {
		padding: 0 0 0 8px;
	}

	.modListNav li a:hover {
		opacity: 1;
	}

	.modListEpisode {
		border-top: 0;
		font-size: 1.3rem;
	}

	.modListEpisode li {
		display: inline-block;
		padding: 0 4px;
	}

	.modListEpisode a {
		width: auto;
	}

	.blockToall {
		margin: 20px 0 0;
	}

	.blockPager + .blockToall {
		margin: 20px 0 0;
	}

	.blockToall a {
		display: block;
		padding: 4px 0;
	}

	.blockToall a:hover {
		opacity: 1;
	}
	/* contFooter                           */

	.blockFooterSns {
		margin: 20px 0 0;
	}

	.modListSns li {
		margin: 0 15px;
	}

	.modListSns li a:hover {
		opacity: 1;
	}

	.blockFooterBanner {
		margin: 35px 0 0;
	}

	.modListBanner {
		margin: 0;
	}

	.modListBanner li {
		display: block;
		margin: 10px 0 0;
	}

	.modListBanner li:first-child {
		margin: 0;
	}

	.modListBanner li a:hover {
		opacity: 1;
	}

	.blockPagetop {
		margin: 40px auto 0;
		padding: 0 10px 0 0;
	}

	.blockPagetop a {
		width: 71px;
		height: 41px;
		background: url(../img/ico_totop_01_sp.png) no-repeat 0 0;
		background-size: 71px 41px;
	}

	.page-top .blockPagetop a {
		background-image: url(../img/ico_totop_01_sp.png);
	}

	.blockPagetop a:hover {
		opacity: 1;
	}
	/* SP NAV                               */

	.blockSpNavFooter {
		display: table;
		width: 100%;
		margin: 90px 0 0;
		table-layout: fixed;
	}

	.blockSpNavFooter .official, .blockSpNavFooter .itemLogoSite {
		display: table-cell;
		vertical-align: middle;
	}

	.blockSpNavFooter .official {
		width: 125px;
		height: 24px;
		border: 1px #000 solid;
		color: #000;
		font-weight: bold;
		font-size: 1.1rem;
		line-height: 24px;
		text-align: center;
	}

	.theme-black .blockSpNavFooter .official {
		border-color: #fff;
		color: #fff;
	}

	.blockSpNavFooter .official .itemLogo {
		display: inline-block;
		width: 60px;
		margin: 0 2px 0 0;
		line-height: 1.2;
		text-align: center;
	}

	.blockSpNavFooter .official img {
		display: inline-block;
		max-width: 60px;
		max-height: 14px;
	}

	.blockSpNavFooter .official:hover {
		opacity: 1;
	}

	.blockSpNavFooter .itemLogoSite {
		text-align: right;
	}

	.blockSpNavFooter .itemLogoSite img {
		width: 125px;
		height: 24px;
	}

	.theme-black .blockSpNavFooter .itemLogoSite img {
		border: 1px solid #fff;
	}
	/* main 2nd News ---------------------- */

	.modMainvisual {
		display: none;
	}

	.modListNews {
		margin: 40px 0 0;
	}

	.modListNews li {
		margin: 40px 0 0;
	}

	.modListNews li a {
		overflow: visible;
		padding: 0 0 0 20px;
	}

	.modListNews li a:hover {
		background: transparent;
	}

	.modListNews .date time {
		font-size: 1.2rem;
	}

	.modListNews .unitImage {
		float: none;
		width: 100%;
		margin: 12px 0 0;
	}

	.modListNews .unitText {
		overflow: visible;
		margin: 10px 0 0;
		padding: 0;
	}

	.modListNews .unitText h3 {
		max-height: 20px;
		font-size: 1.4rem;
	}

	.modListNews .unitText .text {
		max-height: 46px;
		margin: 6px 0 0;
		font-size: 1.2rem;
		line-height: 1.6;
	}

	.modListNews .unitText .readmore {
		margin: 6px 0 0;
	}

	.page-top .modListNews .title {
		padding: 4px 0 0 44px;
		font-size: 1.4rem;
	}

	.page-top .modListNews .date {
		padding: 0 0 0 44px;
		font-size: 1.2rem;
	}

	.page-top .modListNews .unitText h3 {
		max-height: 24px;
	}

	.blockPager {
		margin: 60px 0 0;
	}

	.modListPager {
		position: relative;
	}

	.modListPager li {
		margin: 0 10px;
	}

	.modListPager li a, .modListPager li span {
		width: 29px;
		height: 29px;
		font-size: 1.4rem;
		line-height: 29px;
		font-family: sans-serif;
	}

	.modListPager li a:hover, .modListPager li span:hover {
		background: #fff;
		color: #000;
	}

	.modListPager li a.isActive, .modListPager li span.isActive {
		background: #000;
		color: #fff;
	}

	.modListPager li.prev, .modListPager li.next {
		position: absolute;
		top: 50%;
		vertical-align: middle;
	}

	.modListPager li.prev a, .modListPager li.prev span, .modListPager li.next a, .modListPager li.next span {
		overflow: hidden;
		width: 18px;
		height: 33px;
		border: none;
		text-indent: 200%;
		white-space: nowrap;
		word-break: keep-all;
		word-wrap: normal;
	}

	.modListPager li.prev {
		left: -10px;
		margin: -16px 0 0;
	}

	.modListPager li.prev a {
		background: url(../img/ico_arrow_prev_01.png) no-repeat 0 0;
		background-size: 10px 20px;
		margin-top: 6px;
	}

	.modListPager li.next {
		right: -10px;
		margin: -16px 0 0;
	}

	.modListPager li.next a {
		background: url(../img/ico_arrow_next_01.png) no-repeat 0 0;
		background-size: 10px 20px;
		margin-top: 6px;
	}
	/* main 2nd Article ------------------- */

	.modArticle .date {
		margin: 40px 0 0;
		font-size: 1.2rem;
	}

	.modArticle h3 {
		font-size: 1.4rem;
		line-height: 1.5;
	}

	.modArticle h3 br {
		display: none;
	}

	.modArticle .visual {
		margin: 6px 0 0;
	}

	.modWysiwyg h4 {
		font-size: 1.25rem;
		line-height: 1.8;
	}

	.modWysiwyg h5 {
		font-size: 1.2rem;
		line-height: 1.8;
	}

	.modWysiwyg p {
		margin: 24px 0 0;
		font-size: 1.2rem;
		line-height: 2;
	}

	.modWysiwyg p img {
		margin: 6px 0 0;
	}

	.modWysiwyg > img {
		margin: 24px 0 0;
	}

	.modWysiwyg a {
		font-size: 1.2rem;
		line-height: 2;
	}

	.modWysiwyg img {
		max-width: 100% !important;
		height: auto !important;
	}

    .animeThmb {
		width: 250px;
	}

	/* main 2nd Onair --------------------- */

	.modOnair h3 {
		margin: 26px 0 0;
		font-weight: bold;
		font-size: 1.4rem;
		line-height: 1;
	}

	.modOnair h3:first-child {
		margin: 40px 0 0;
	}

	.modOnair p {
		margin: 6px 0 0;
		font-size: 1.2rem;
		line-height: 1.6;
	}
	/* main 2nd Goods --------------------- */

	.modListGoods {
		margin: 38px 0 0;
	}

	.modListGoods li {
		overflow: visible;
		margin: 38px 0 0;
		padding: 38px 0 0;
		border-top: 1px #000 solid;
	}

	.modListGoods li:first-child {
		padding: 0;
		border: none;
	}

	.modListGoods li h3 {
		padding: 0;
		font-size: 1.4rem;
	}

	.modListGoods li .unitImage {
		float: none;
		width: 100%;
		margin: 12px 0 0;
	}

	.modListGoods li .unitText {
		overflow: visible;
		padding: 0;
	}

	.modListGoods li .unitText .sub {
		margin: 18px 0 0;
		font-size: 1.2rem;
	}

	.modListGoods li .unitText .text {
		margin: 4px 0 0;
		font-size: 1.2rem;
		line-height: 2;
	}

	.modListGoods li .unitText dd.link a {
		display: block;
		margin: 24px 20px 0;
		padding: 6px 0;
		border: 1px #000 solid;
		color: #000;
		font-weight: bold;
		font-size: 1.2rem;
		line-height: 1;
		text-align: center;
	}
}

/* =====================================================
 * Theme
 * ================================================== */

.page-anime main {
	display: block;
	position: relative;
	max-width: 1180px;
	min-width: 960px;
	margin: 0 auto;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: 50% 0;
}

.page-anime main:before {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 0;
	background-color: rgba(255, 255, 255, 0.85);
}

.page-anime.theme-black main {
	background-color: #000;
	color: #fff;
}

.page-anime.theme-black main a {
	color: #fff;
}

.page-anime.theme-black main:before {
	background-color: rgba(0, 0, 0, 0.85);
}

.page-anime.theme-black main .modListEpisode {
	border-color: #fff;
}

.page-anime.theme-black main .modListEpisode li {
	border-color: #fff;
}

.page-anime.theme-black main .modListEpisode a {
	color: #999;
}

.page-anime.theme-black main .modListEpisode a.isActive {
	color: #fff;
}

@media (max-width: 767px) {
	.page-anime main {
		max-width: 320px;
		min-width: 320px;
		background-size: 100% auto;
	}
}