@charset "UTF-8";
/* CSS Document */

/*--- body -------------------------------------------------------------------------------------------------------------*/

body {
	background: #fff;
	color:#333;
	font-family: "游ゴシック体", "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	font-size:16px;
	line-height:1;
	min-width: 1130px;
	text-align:left;
	height:100%;
	width: 100%;
}
body.spWrap { min-width:inherit !important;}
body.comic{
	background-color:#f1f1f1;
}

/* IE7 hack */
*:first-child+html body {
font-size:small;
		}

/* IE6 hack */
*html body {
	font-size:small;
}

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

.hover{
		-webkit-transition: 0.5s ;
		transition: 0.5s ;
}

.hover:hover{
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
	-khtml-opacity: 0.8;
    -moz-opacity: 0.8;
}

a:link { color: #2972bf; text-decoration:underline; }
a:visited { color: #2972bf; text-decoration:underline; }
a:hover { color: #2972bf; text-decoration:none; }
a:active { color: #2972bf;text-decoration:underline; }

/*--- /body -------------------------------------------------------------------------------------------------------------*/

/*--clearfix-------------------------------------------------------------------------------------------*/

header:after,
.header-sns:after,
.intro-table-area:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

/*--/clearfix-------------------------------------------------------------------------------------------*/


/*--------------------header--------------------*/

header {
	margin: 20px auto;
	width: 1120px;
}

h1 { float: left;position:relative;	z-index:3;}

h1 img { width: 100px;}

header .fr{
	float: right;
	margin-right: 20px;
	position:relative;
	z-index:3;
}
header .fr h2{
	padding-bottom:10px;
}
.header-sns {
	float: right;
	margin-right: 20px;
	position:relative;
	z-index:3;
}

.header-sns li img {
	vertical-align: top;
	width: 26px;
}
/*
.header-sns li:after {
	background: #e72420;
	content: "";
	display: block;
	height: 30px;
	left: -100%;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
	-webkit-transition: .3s;
	-moz-transition: .3s;
	-ms-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}

.header-sns li:before {
	background: #999;
	content: "";
	display: block;
	height: 30px;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -2;
	-webkit-transition: .3s;
	-moz-transition: .3s;
	-ms-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}*/

.header-sns li {
	float: left;
	overflow: hidden;
	position: relative;
	width: 26px;
}

.header-sns li:hover:after { left: 0;}

.sns-tw { margin: 0 10px 0 10px;}

footer{
	clear:both;
	border-top:1px solid #928e8d;
	margin:0 auto;
	padding:20px 20px;
}
footer h2{
	float:left;
	position:relative;
	z-index:3;
}
footer p.copy{
	/*float:right;*/
	text-align:center;
	font-size:12px;
}
footer .innerCont{
	width:1120px;
	margin:0 auto;
	text-align:center;
}
footer li{
	display:inline-block;
	border-left:1px solid #333;
	line-height:1.2;
	padding:0 10px;
	margin-bottom:20px;
}
footer li:first-child{
	border:none;
}
footer li a {
	position: relative;
	display: inline-block;
	transition: .3s;
	text-decoration:none !important;
	color:#333 !important;
	font-size:12px;
}
footer li a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	width: 0;
	height: 1px;
	background-color: #333;
	transition: .3s;
}
footer li a:hover::after {
	width: 100%;
}

#pagetop{
	clear:both;
	text-align:right;
	margin-top:30px;
	position:relative;
	z-index:3;
}
#pc{ display:none; overflow:hidden; padding-bottom:20px;}

/*--------------------
			contents (PC)
---------------------*/
#pc #mv{
	/*background-size:cover;*/
	text-align:center;
	margin-bottom:40px;
}
#pc #mv a{
	display: block;
	padding:13px 0;
	background:url(../images/ttl_bg.jpg) repeat-x center center;
	transition: 0.7s all;
}
#pc #mv a:hover{
	opacity: 0.7;
}
#pc .lead{ margin-bottom:40px;}

#pc #bnrList{
	width:980px;
	overflow:hidden;
	margin:0 auto 35px;
}
#pc #bnrList li{
	float:left;
	margin-bottom: 10px;
	width: 313px;
	margin-left: 20px;
}
#pc #bnrList li img{
	width: 100%;
	height: auto;
}
#pc #bnrList li:first-child{margin-left: 0;}
/*#pc #bnrList li:first-child,#pc #bnrList li:nth-child(3){margin-right:35px;}*/
#pc #bnrList li a{ transition: .3s;}
#pc #bnrList li a:hover{ opacity:0.7;}

#contents.pc{ line-height:1.8; width:50%;}
#contents.pc{
	width:auto;
	margin:30px auto 0;
	/*display:none;*/
	text-align:center;
}

#contents.pc .innerCont{
	width: 1120px;
	margin:0 auto;
}

#contents.pc .ttlWrap{
	display:inline-block;
	border:5px solid #333;
	padding:15px 80px;
	margin-bottom:50px;
}

#contents.pc h2{
	text-align:center;
	font-size:36px;
	font-weight:bold;
	letter-spacing:0.1em;
	margin-bottom:-20px;
}
#contents.pc h3{
	text-align:center;
	font-size:20px;
	font-weight:bold;
}
#contents.pc h3 span{
	display:inline-block;
	margin-left:20px;
	font-size:32px;
}
#contents.pc h3 + hr{
	border:0;
	border-top:1px solid #d8d8d8;
	width:200px;
	margin:50px auto 0; 
}
#contents.pc .comicWrap{
	background-color:#f1f1f1;
	border-bottom:1px solid #928e8d;
	overflow:hidden;
	padding:40px 0 0px;
	margin-bottom:35px;
}
#contents.pc .comic_block01{
	width:890px;
	height:632px;
	padding:0px;
	margin:20px auto 0;
	background-color:#f1f1f1;
	position:relative;
	text-align:left;
}

#contents.pc #magazine{
	width:995px;
	margin:0 auto;
	height:632px;
	
}

#contents.pc .comic_list_ov{
	width:1120px;
	margin:30px auto 0;	
	overflow-x:hidden;
}

#contents.pc .comic_list_ov_inner{
	width:1100px;
	margin:0px auto 0;	
	
}

#contents.pc .pc .comic_list li{
	float:left;
	margin-right:40px;
	padding-bottom:35px;
	background-color:#fff;
	min-height:360px;
}

#contents.pc .next_page {
   display:block;
   width:40px;
   height:40px;
   position:absolute;
   right:-60px;
   top:50%;
   margin-top:-20px;
	 background-color:#7A7A7A;
	 border-radius:20px;
	 overflow:hidden;
	 z-index:999;
}

#contents.pc .next_page:after {
	background: url(../images/arrow.png) no-repeat right top/50px auto;
	content: "";
	display: inline-block;
	height: 20px;
	width: 20px;
	margin-top:12px;
	margin-left:10px;
}

#contents.pc .next_page:hover {
	cursor: pointer;
}

#contents.pc .next_page:hover:after {
	animation: skip_arrow .3s ease;
	-moz-animation: skip_arrow .3s ease;
	-webkit-animation: skip_arrow .3s ease;
}

@keyframes skip_arrow {
	0% { background: url(../../common/images/arrow.png) no-repeat right top/50px auto;}
	100% {background: url(../../common/images/arrow.png) no-repeat left top/50px auto;}
}

@-moz-keyframes skip_arrow {
	0% { background: url(../../common/images/arrow.png) no-repeat right top/50px auto;}
	100% {background: url(../../common/images/arrow.png) no-repeat left top/50px auto;}
}

@-webkit-keyframes skip_arrow {
	0% { background: url(../../common/images/arrow.png) no-repeat right top/50px auto;}
	100% {background: url(../../common/images/arrow.png) no-repeat left top/50px auto;}
}

#contents.pc .back_page {
   display:block;
   width:40px;
   height:40px;
   position:absolute;
   left:-60px;
    top:50%;
   margin-top:-20px;
   background-color:#7A7A7A;
	 border-radius:20px;
	 overflow:hidden;
	 z-index:999;
}

#contents.pc .back_page:after {
	background: url(../images/arrow2.png) no-repeat left top/50px auto;
	content: "";
	display: inline-block;
	height: 20px;
	width: 20px;
	margin-top:12px;
	margin-left:10px;
}

#contents.pc .back_page:hover {
	cursor: pointer;
}

#contents.pc .back_page:hover:after {
	animation: skip_arrow2 .3s ease;
	-moz-animation: skip_arrow2 .3s ease;
	-webkit-animation: skip_arrow2 .3s ease;
}

@keyframes skip_arrow2 {
	0% { background: url(../../common/images/arrow2.png) no-repeat left top/50px auto;}
	100% {background: url(../../common/images/arrow2.png) no-repeat right top/50px auto;}
}

@-moz-keyframes skip_arrow2 {
	0% { background: url(../../common/images/arrow2.png) no-repeat left top/50px auto;}
	100% {background: url(../../common/images/arrow2.png) no-repeat right top/50px auto;}
}

@-webkit-keyframes skip_arrow2 {
	0% { background: url(../../common/images/arrow2.png) no-repeat left top/50px auto;}
	100% {background: url(../../common/images/arrow2.png) no-repeat right top/50px auto;}
}

#contents.pc .btnTop{
	margin:45px 0 25px;
	
}
#contents.pc .btnTop span{
	background: -webkit-gradient(linear, left top, right top, color-stop(1.00, #F1F1F1), color-stop(0.78, #fff), color-stop(0.16, #fff), color-stop(0.00, #f1f1f1));
background: -webkit-linear-gradient(left, #f1f1f1 0%, #fff 16%, #fff 78%, #F1F1F1 100%);
background: -moz-linear-gradient(left, #f1f1f1 0%, #fff 16%, #fff 78%, #F1F1F1 100%);
background: -o-linear-gradient(left, #f1f1f1 0%, #fff 16%, #fff 78%, #F1F1F1 100%);
background: -ms-linear-gradient(left, #f1f1f1 0%, #fff 16%, #fff 78%, #F1F1F1 100%);
background: linear-gradient(to right, #f1f1f1 0%, #fff 16%, #fff 78%, #F1F1F1 100%);
border-bottom: 1px solid #ddd;
	padding: 10px 100px;
	display: inline-block;
}

#contents.pc .btnTop a {
	position: relative;
	display: inline-block;
	transition: .3s;
	text-decoration:none !important;
	color:#333 !important;
	font-size:18px;
}
#contents.pc .btnTop a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	width: 0;
	height: 1px;
	background-color: #333;
	transition: .3s;
}
#contents.pc .btnTop a:hover::after {
	width: 100%;
}
#contents.pc .btnTop a.mr{
	margin-right: 60px;
	position: relative;
}
#contents.pc .btnTop a.mr:before{
	border-left: 1px solid #666;
	content: '';
	height: 16px;
	width: 1px;
	position: absolute;
	top: 50%;
	right: -32px;
	margin-top: -8px;
}

#contents.pc .btnTop a.ml{
	margin-left: 60px;
	position: relative;
}
#contents.pc .btnTop a.ml:before{
	border-left: 1px solid #666;
	content: '';
	height: 16px;
	width: 1px;
	position: absolute;
	top: 50%;
	left: -32px;
	margin-top: -8px;
}

/*--------------------
			スマホ
--------------------*/

/*--------------------header--------------------*/
#sp{ display:none;}
#sp header {
	margin: 20px auto;
	width: 100% !important;
	padding:0 5%;
	box-sizing:border-box;
}

#sp h1 { float: left;}

#sp h1 img { width: 100px;}

#sp header .fr{
	float: right;
	margin-right: 0;
	position:relative;
	z-index:3;
}
#sp header .fr h2{
	padding-bottom:10px;
	width:180px;
}
#sp header .fr h2 img{ width:100%; height:auto;}

#sp .header-sns {
	float: right;
	margin-right:0;
	margin-top:-5px;
}

#sp .header-sns li img {
	vertical-align: top;
	width: 30px;
}


#sp .header-sns li {
	float: left;
	overflow: hidden;
	position: relative;
	width: 30px;
}

#sp .header-sns li:hover:after { left: 0;}

#sp .sns-tw { margin: 0 10px 0 10px;}

#sp #mv{
	text-align:center;
	margin-bottom:20px;
}
#sp #mv a{
	background:url(../images/ttl_bg.jpg) no-repeat center center;
	background-size:cover;
	padding:13px 0;
	display: block;
}
#sp #mv img{ width:270px; height:auto;}

#sp .lead{ margin-bottom:20px; padding:0 5%; line-height:1.6;}

#sp #bnrList{
	overflow:hidden;
	margin:0 auto 10px;
	border-top:1px solid #928e8d;
	border-bottom:1px solid #928e8d;
	padding:10px 2% 0px;
}
#sp #bnrList li{ margin-bottom:10px;}
#sp #bnrList li img{ width:100%; height:auto;}

#contents.sp{ text-align:center;}
#contents.sp .ttlWrap{
	display:inline-block;
	border:3px solid #333;
	padding:15px 20px 15px;
	margin-bottom:20px;
	margin-top:20px;
	width:260px;
	box-sizing:border-box;
}
#contents.sp .ttlWrap img{ width:100% !important; height:auto;}

#contents.sp h2{
	text-align:center;
	font-size:24px;
	font-weight:bold;
	letter-spacing:0.1em;
	padding-top:0px;
}
#contents.sp h2 span{
	display:block;
	font-size:36px;
	letter-spacing:0.3em;
	margin:5px 0 20px;
}
#contents.sp h3{
	text-align:center;
	font-size:16px;
	font-weight:bold;
}
#contents.sp h3 span{
	display:block;
	margin-top:5px;
	font-size:26px;
}
#contents.sp h3 + hr{
	border:0;
	border-top:1px solid #d8d8d8;
	width:130px;
	margin:30px auto 10px; 
}

#contents.sp .next_page {
   display:block;
   width:40px;
   height:40px;
   position:absolute;
   right:10px;
   top:50%;
   margin-top:-20px;
	 background-color:#7A7A7A;
	 border-radius:20px;
	 overflow:hidden;
	 z-index:999;
}
#contents.sp .next_page.next_page1{
	top:10px;
	right:50%;
	margin-top:0;
	margin-right:-60px;
}
#contents.sp .next_page.next_page2{
	top:auto;
	bottom:10px;
	right:50%;
	margin-top:0;
	margin-right:-60px;
}

#contents.sp .next_page:after {
	background: url(../images/arrow.png) no-repeat right top/50px auto;
	content: "";
	display: inline-block;
	height: 20px;
	width: 20px;
	margin-top:12px;
	margin-left:10px;
}

#contents.sp .back_page {
   display:block;
   width:40px;
   height:40px;
   position:absolute;
   left:10px;
    top:50%;
   margin-top:-20px;
   background-color:#7A7A7A;
	 border-radius:20px;
	 overflow:hidden;
	 z-index:999;
}
#contents.sp .back_page.back_page1{
	top:10px;
	left:50%;
	margin-top:0;
	margin-left:-60px;
}
#contents.sp .back_page.back_page2{
	top:auto;
	bottom:10px;
	left:50%;
	margin-top:0;
	margin-left:-60px;
}

#contents.sp .back_page:after {
	background: url(../images/arrow2.png) no-repeat left top/50px auto;
	content: "";
	display: inline-block;
	height: 20px;
	width: 20px;
	margin-top:12px;
	margin-left:10px;
}

#contents.sp .magazineWrap{
	width:280px;
	overflow:hidden;
	margin:0 auto;
	position:relative;
}
body.comic #contents.sp{
	margin-top:-15px;
}
#contents.sp #magazine{
	width:560px;
	margin:0 auto;
	height:397px;
}
#contents.sp.ver3 #magazine{ width:320px;}
#contents.sp #magazine img{ width:280px !important;}

#contents.sp .comic_block01.ver2 .magazineWrap{
	width:320px;
	overflow:hidden;
	margin:0 auto;
	position:relative;
}
#contents.sp .comic_block01.ver2 #magazine{
	width:640px;
	margin:0 auto;
	height:454px;
}
#contents.sp .comic_block01.ver2 #magazine img{ width:320px !important;}
#sp .comic_block01{
	width:100% !important;
	height:auto;
	padding:40px 0 40px 0px;
	margin:20px auto 0;
	background:#FFF;
	position:relative;
	background-color:#f1f1f1;
	text-align:left;
}
#sp .comic_block01.link{ padding:40px 0 !important;}

#sp .comic_block01.ver2{
	padding:60px 0 60px;
}

#sp .comic_block01 img{
	width:50% !important;
	height:auto ;
}
#sp .comic_block01 .page20,#sp .comic_block01 .pageLast{ position:relative;}
#sp .comic_block01 .page20 a,#sp .comic_block01 .pageLast a{
	display:block;
	width:150px;
	height:13px;
	position:absolute;
	top:165px;
	left:28px;
}
#sp .comic_block01.ver2 .page20 a,#sp .comic_block01.ver2 .pageLast a{
	display:block;
	width:160px;
	height:13px;
	position:absolute;
	top:190px;
	left:28px;
}
#sp .comic_block01.ver2 .pageLast_vol4 a{
	display:block;
	width:155px;
	height:13px;
	position:absolute;
	top:175px;
	left:32px;
}
#sp .comic_block01.ver2 .pageLast_vol5 a{
	display:block;
	position:absolute;
	/*background-color: #000;*/
}
#sp .comic_block01.ver2 .pageLast_vol5 a.link1{
	width:115px;
	height:10px;
	top:235px;
	left:32px;
}
#sp .comic_block01.ver2 .pageLast_vol5 a.link2{
	width:130px;
	height:10px;
	top:235px;
	left:170px;
}
#sp .comic_block01.ver2 .pageLast_vol5 a.link3{
	width:155px;
	height:13px;
	top:390px;
	left:32px;
}
#sp .comic_list_ov{
	width:100%;
	margin:15px auto 0;	
	overflow-x:hidden;
}

#sp .comic_list_ov_inner{
	width:95%;
	overflow-x:hidden;
	margin:0px auto 0;	

}

#sp .comic_list{
	width:100%;
	margin:15px auto 0;	
}

#sp .comic_list li{
	float:none;
	border:solid 3px #FFF;
	margin-right:0px;
	margin-bottom:10px;
	padding-bottom:10px;
	background:#f7f7f7;	
	box-sizing:border-box;
}

#sp .comic_list li img{
	width:100%;
	height:auto;	
}

#sp .comic_list li:nth-child(3n){
margin-right:0;	
}

#sp .comic_list li a{
display:block;	
text-decoration:none;
}

#sp .comic_list li a span.date{
display:block;
width:90%;
margin:15px auto 0;
font-size:10px;
color:#666666;
}

#sp .comic_list li a span.ttl{
display:block;
width:90%;
margin:5px auto 0;
font-size:12px;
color:#333333;
}

#sp .comic_list li.active{
border:solid 5px #1eb9ee;
background:#e5e5e5;	
}

#sp .comic_list li.active span.date{
color:#666666;
}

#sp .comic_list li.active span.ttl{
color:#1eb9ee;
}

#contents.sp .btnClose{
	position:absolute;
	right:10px;
	top:10px;
	width:40px;
	height:40px;
	z-index:9999;
}
#contents.sp .btnClose a{ display:block; width:40px; height:40px;}
#contents.sp .btnClose img{ width:100% !important; height:auto;}

#contents.sp .btnReturn{
	position:absolute;
	left:10px;
	top:10px;
	width:40px;
	height:40px;
	z-index:9999;
}
#contents.sp .btnReturn a{ display:block; width:40px; height:40px;}
#contents.sp .btnReturn img{ width:100% !important; height:auto;}

#contents.sp .btnNext{
	position:absolute;
	left:10px;
	bottom:10px;
	height:40px;
	z-index:9999;
	background: url(../images/next.png) no-repeat center 0;
	background-size: 40px;
	font-size: 10px;
	white-space: nowrap;
	box-sizing: border-box;
}
#contents.sp .btnNext a{ display:block; padding-top: 30px; height:40px;text-decoration: none; color: #575757 !important;}

#contents.sp .btnPrev{
	position:absolute;
	right:10px;
	bottom:10px;
	height:40px;
	z-index:9999;
	background: url(../images/prev.png) no-repeat center 0;
	background-size: 40px;
	font-size: 10px;
	white-space: nowrap;
	box-sizing: border-box;
}
#contents.sp .btnPrev a{ display:block; padding-top: 30px; height:40px;text-decoration: none; color: #575757 !important;}

#sp footer{
	width:100%;
	margin:0 auto;
	padding:20px 5% 20px;
	overflow:hidden;
	box-sizing:border-box;
	text-align:center;
	border:none;
}
#sp footer h2{
	float:none;
	margin-bottom:15px;
}
#sp footer p.copy{
	clear:both;
	float:none;
	font-size:12px;
	text-align:center !important;
	padding-top:15px;
}
#sp footer li{ margin-bottom:5px; padding:0 5px 0 5px; line-height:1;}
#sp footer li a{ font-size:10px; transition:none !important;}
#sp footer li a:hover::after{ width:0 !important;}

#sp footer ul+a {
	position: relative;
	display: inline-block;
	transition: .3s;
	text-decoration:none !important;
	color:#333 !important;
	font-size:10px;
}

#sp .btnPageTop{
	position:fixed;
	bottom:0;
	right:0;
	width:30px;
	display:none;
}
#sp .btnPageTop img{ width:100%; height:auto;}

#sp footer #pagetop2{
	clear:none;
	float:right;
	text-align:right;
	margin-top:-10px;
}

#sp .mt20{ margin-top:10px;}
#sp .mb20{ margin-bottom:10px;}

.pt20{ padding-top:20px;}
