@charset "UTF-8";

/* (C) KADOKAWA CORPORATION 2017 */

html{
	font-size: 62.5%;/* 16px x 0.625 = 10px(=1rem) */
	font-family: 游ゴシック体, 'Yu Gothic','ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-weight: 400; /* normal */
	min-height: 100%;
	position: relative;
	-webkit-text-size-adjust: 100%;
	word-break: break-all;
	overflow-x:hidden;
	overflow-y:auto;
}

body {
	font-size: 1.4rem;/* 14px */
	background: #fff url('../images/bg.png') repeat 0 0;
	color: #000;
}

@media (min-width: 721px) {
	.sp{display: none !important;}
}
@media (max-width: 720px) {
	.sp{display: block;}
	.noneSp{display: none;}
}

a{
	color: #ff679d;
	text-decoration: underline;
	transition: .3s ease-in-out;
}

a:hover{
	text-decoration: none;
}

.entry-btn-attention a,
.entry-btn a,
.sp-navMenu a,
#header a,
#footer a,
a.btn,
.module-index-link{
	text-decoration: none;
}

.entry-btn-attention a:hover,
.entry-btn a:hover,
#header a:hover,
#footer a:hover,
a.btn:hover,
.module-index-link:hover{
	opacity: 0.6;
}

/* button ======================================== */

.comment-list input[type="submit"],
.comment-form input[type="submit"],
.entry-btn-attention a,
.entry-btn a,
.btn,
.module-index-link{
	position: relative;
	display: inline-block;
	background: #ff679d url('../images/bt_bg.png') repeat 0 0;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	line-height: 100%;
	border-radius: 2px;
	padding: 0.8em;
	cursor: pointer;
}

.entry-btn-attention a{
	background-color: #ff9c00;
}

.bt-anRight,
.module-index-link{
	padding-right: 1.8em;
}

.bt-anRight::after,
.module-index-link::after{
	content: "\e90f";
	font-family: 'beans' !important;
	position: absolute;
	right: 1.5em;
	top: 50%;
	font-weight: normal;
	font-size: 70%;
	color: #f6ff00;
	margin-top: -0.7em;
	transition: all 0.3s ease 0s;
}

.bt-anRight:hover::after,
.module-index-link:hover::after{
	right: 0.5em;
}

.bt-trial{
	border: 1px solid #ff669c;
	background: #fff;
	color: #000;
	padding-right: 3em;
	padding-left: 4em;
	display: block;
	font-size: 1.3rem;
	font-size: calc(9px + 0.3vw);
}

.bt-trial:hover{
	background: #fff0f6;
}

.bt-trial::before,
.bt-trial::after{
	font-family: 'beans' !important;
	position: absolute;
	font-weight: normal;
	color: #ff669c;
	transition: all 0.3s ease 0s;
}

.bt-trial::before{
	content: "\e901";
	left: 0.5em;
	top: 50%;
	font-size: 200%;
	margin-top: -0.3em;
}

.bt-trial::after{
	content: "\e90f";
	right: 1.5em;
	top: 50%;
	font-size: 70%;
	margin-top: -0.7em;
}
.bt-trial:hover::after{
	right: 0.5em;
}

@media (max-width: 1030px){
	.bt-trial{
		padding-right: 1em;
		padding-left: 2.8em;
	}
	.bt-trial::before{
		left: 0.3em;
	}
	.bt-trial::after{
		right: 0.5em;
	}
}

@media only screen and (max-width: 720px) {
	.bt-trial br{
		display: none;
	}
}




.bt-bl{	background: #00ccef;}
.bt-or{	background: #ff9c00;}
.bt-pk{	background: #ff679d;}
.bt-mg{	background: #fe0086;}

.bt-bl,
.bt-or,
.bt-pk,
.bt-mg{
	display: block;
	box-shadow:0px 0px 0px 2px rgba(255,255,255,0.3) inset,0px 2px 1px 0px rgba(0,0,0,0.2);
	font-size: 1.8rem;
	border-radius: 4px;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	margin: 5px auto;
}

.bt-Lsize{	font-size: 3.2rem; padding-top: 0.8em;padding-bottom: 0.8em;}

@media (max-width: 700px){
	.bt-Lsize{	font-size: 1.6rem; padding-top: 1em;padding-bottom: 1em;}
}


/* banner ======================================== */
.bnr,
.bnrExt{
	line-height: 0;

}

.bnr a{
	display: inline-block;
	line-height: 0;
	overflow: hidden; _zoom: 1;
	box-shadow: 0 0 0 1px #f2d3e2 inset;
	transition: all 0.3s ease 0s;
}
.bnr a:hover{
	box-shadow: 0 0 0 5px rgba(255, 103, 157, 0.6) inset;
}
.bnr a img{
	max-width: 100%;
	height: auto;
	z-index: -1;
	position: relative;
}
.bnr a:hover img{
	opacity: 0.6;
}

.bnrExt a{
	display: inline-block;
	line-height: 0;
	overflow: hidden; _zoom: 1;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0) inset;
	transition: all 0.3s ease 0s;
}
.bnrExt a:hover{
	box-shadow: 0 0 0 1px rgba(153, 208, 238, 0.8) inset;
}
.bnrExt a img{
	max-width: 100%;
	height: auto;
	z-index: -1;
	position: relative;
}
.bnrExt a:hover img{
	opacity: 0.6;
}

.bnr .title{
	display: block;
	line-height: 130%;
	margin: 10px 0;
}

/* search ======================================== */
.search-form{
	overflow: hidden;
	border-radius: 3px;
	height: 32px;
	width: 100%;
	background: #f4f5f5;
	border: 1px solid #fff;
}
.search-form input.search-form-input,
.search-form .btn-search{
	border:none;
	border-radius: 0;
	height: 30px;
	box-sizing: border-box;
}
.search-form input.search-form-input{
	background: #fff;
	box-shadow: none;
	width: 100%;
	padding: 0 10px;
    border: 1px solid #ccc;
}
.search-form .btn-search{
	background: #ff679d url('../images/bt_bg.png') repeat 0 0;
	color: #fff;
	transition: .3s ease-in-out;
	padding: 0;
}

.search-form .btn-search img{
	width: 17px;
	height: auto;
	margin: 7px;
}

.search-form .btn-search:hover{
	background-color: #fba8c5;
}
.acms-icon-search::before {
	content: none;
}

.sp-nav .search-form{
	height: 52px;
	width: 100%;
	background: #fff;
	border: 1px solid #ff80b9;
}


.sp-nav .search-form input.search-form-input,
.sp-nav .search-form .btn-search{
	height: 50px;
}

.sp-nav .search-form .btn-search img{
	width: 30px;
	height: auto;
	margin: 7px 13px;
}


.search-results{}

.search-results li{
	border-bottom: 1px dotted #9ad1f0;
	margin:0;
}

.search-results li a{
	text-decoration: none;
	color: #333;
	line-height: 1.3em;
	display: block;
	padding:20px 10px;
	overflow: hidden; _zoom: 1;
}

.search-results li a:hover{
	background-color: rgba(242, 211, 226, 0.5);
}



.search-results li .search-results_tmb{
	float: left;
	margin: 0 20px 0 0;
}
.search-results li .search-results_tmb figure{
	width: 90px;
}

.search-results li .search-results_tmb figure img{
	border:1px solid #f2d3e2;
	width: 100%;
	height: auto;
}


.search-results li .search-results_data{
	overflow: hidden; _zoom: 1;
}

.search-results li .search-results_data p{
	margin: 10px 0;
	font-size: 1.3rem;
}

.search-results li .search-results_data .cate{
	margin: 0 0 10px;
	padding: 3px 10px;
	display: inline-block;
	background: #ff679d url("../images/bt_bg.png") repeat scroll 0 0;
	color: #fff;
	border-radius: 3px;
	line-height: 100%;
	font-size: 1.2rem;
}

.search-results li .search-results_data .ttl{
	font-size: 1.6rem;
	font-weight: bold;
	color: #000;
}


/* layout ======================================== */
.default-wrap,
.acms-container{
	margin: 0 auto;
	max-width: 1250px;
	padding: 0 10px;
	position: relative;
}

.acms-container{
	margin-top: 5px;
	margin-bottom: 100px;
}

.acms-grid{
	margin: 0;
	width: 100%;
	overflow: hidden;
}

#main{
	float: left;
	width: 100%;
	margin-right: -290px;
	padding-right: 290px;
}

#sub{
	float: right;
	width: 270px;
}

.module-section{
	display: block;
	position: relative;
}

.module-section .module-index-link{
	margin: 0 0 0 auto;
	font-size: 1.6rem;
	display: block;
	width: 160px;
}

@media (max-width: 720px) {
	.module-section .module-index-link{
		width: 100%;
	}

	.default-wrap,
	.acms-container{
		padding: 0 20px;
	}
	.acms-container{
			margin-top: 0;
		}

	.acms-grid{
		overflow: visible;
	}
	#main{
		float: none;
		clear: both;
		margin-right: 0;
		padding-right: 0;
	}
	#sub{
		float: none;
		clear: both;
		width: 100%;
	}
}

/* module-heading ======================================== */

.module-heading{
	color: #333;
	background: transparent url('../images/line.png') repeat-x 0 bottom;
	padding: 10px 0;
	margin: 30px 0 0;
	position:relative;
}

.module-heading i{
	color: #68bde8;
	font-size: 180%;
	margin-right: 0.2em;
	vertical-align: middle;
}

.module-heading:after{
	content: "";
	position:absolute;
	display:block;
	top:0;
	left:0;
	height:100%;
	width:100%;
	background:url('../images/bt_bg.png');
}

.series .module-heading,
.novel .module-heading{
	font-size: 2.4rem;
	font-family: "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	background: transparent url('../images/line_thin.png') repeat-x 0 bottom;
	margin: 0 0 30px;
}



/* header ======================================== */

#header {
	background: #fff;
}

#header .header-logo{
	margin: 25px 0;
	float: left;
}

#header .header-logo h1{
	margin: 0;
}

#header .header-logo h1 a{
	display: inline-block;
	width: 270px;
}

#header .header-logo h1 a img{
	vertical-align: middle;
	width: 100%;
}

#header .header-logo .releaseDate{
	display: inline-block;
	*display: inline; zoom: 1;
	background: #ff679d;
	color: #fff;
	font-size: 1.6rem;
	font-weight: bold;
	border-radius: 20px;
	margin: 0 10px;
	padding: 0 15px;
}

#header .header-logo .releaseDate em{
	color: #f6ff00;
	font-size: 140%;
}


#header .header-nav{
	background: #6cc4f1 url('../images/navi_bg.png') repeat 0 0;
	box-shadow:
		inset 0 2px 0 rgba(255,255,255,0.5),
		inset 0 -2px 1px rgba(255,255,255,0.9);
}

#header .header-nav .navbar ul{
	display: table;
	width:100%;
	text-align:center;
	background: transparent url('../images/navi_line.png') no-repeat left center;
}

#header .header-nav .navbar li{
	display:table-cell;
	vertical-align:middle;
	background: transparent url('../images/navi_line.png') no-repeat right center;
}

#header .header-nav .navbar li a{
	color: #fff;
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 100%;
	display: block;
	padding: 1em 0.5em;
}

#header .header-nav .navbar li a i{
	color: #f7ff0b;
	font-size: 180%;
	margin-right: 0.2em;
	vertical-align: middle;
}

#header .header-search{
	float: right;
	width: 300px;
	margin: 34px 0;
    display: flex;
    flex-wrap: wrap;
}
#header .header-search .headerSearchbox{
    
    flex:1;
}
#header .header-search .searchBtn
{
    flex-basis: 80px;
    padding-left: 10px;
    box-sizing: content-box;
}
#header .header-search .searchBtn a{
    display: block;
    padding: 0.5em;
    line-height: 100%;
    border-radius: 2px;
    border: 1px solid #ff679d;
    background: #fff;
    transition: .3s ease-in-out;
    text-decoration: none;
    color: #000;
    text-align: center;
    box-sizing: border-box;
}
#header .header-search .searchBtn a:hover{
    background: #fff0f6;
    opacity: 0.6;
}
@media screen and (max-width: 600px){
    #header .header-search{
        display: block;
    }
    #header .header-search .searchBtn
    {
        flex-basis: 80px;
        padding-left: 0;
        box-sizing: content-box;
        margin-top: 10px;
    }
}

/* topicpath ======================================== */
.topicpath{
	background: #d9ebf5;
	font-size: 1.2rem;
}

.topicpath-list{
	padding: 7px 10px;
}

.topicpath-item{
	display: inline-block;
}

.topicpath-item:before{
	content: "＞";
	margin: 0 0.3em;
}

.topicpath-item:first-child:before{
	content : none ;
}

.topicpath-item a{
	font-weight: bold;
}



/* main ======================================== */

/* headline/news === */
.headline{
	display: table;
	margin: 0 0 10px;
	width: 100%;
}

.headline .evenrow{
	background: transparent url('../images/headline_bg.png') no-repeat center center;
}

.headline .headline-item{
	display: table-row;
	text-decoration: none;
	line-height: 1.5em;
	font-size: 1.4rem;
	overflow: hidden; _zoom: 1;

}

.headline .headline-item .headline-dat,
.headline .headline-item .headline-label,
.headline .headline-item .headline-title{
	display: table-cell;
	padding: 15px 10px;
	box-sizing: border-box;
}

.headline .headline-item .headline-dat{
	min-width: 8em;
}

.headline .headline-item .headline-label,
.entryInfo .acms-label{
	background: #ffb156 url('../images/bt_bg.png') repeat 0 0;
	border-radius: 3px;
	color: #fff;
	font-size: 1.3rem;
	line-height: 100%;
	padding: 3px;
	text-align: center;
	vertical-align: middle;
	display: inline-block;
	min-width: 6em;
	transition: .3s ease-in-out;
}

.headline .headline-item .headline-label a{
	color: #fff;
	text-decoration: none;
}

.headline .headline-item .headline-label:hover,
.entryInfo .acms-label:hover{ opacity: 0.6; }

.entryInfo .acms-label{vertical-align: baseline;}

.headline .headline-item a.headline-title{
	margin: 0 10px;
	text-decoration: none;
	color: #000;
}

.headline .headline-item a.headline-title:hover{
	color: #ff679d;
}

@media (max-width: 720px) {
	.headline .evenrow{
		background: transparent url('../images/headline_bg_sp.png') no-repeat right center;
	}
	.headline,
	.headline .headline-item,
	.headline .headline-item a.headline-title{
		display: block;
	}
	.headline .headline-item{
		padding: 10px;
	}
	.headline .headline-item .headline-dat,
	.headline .headline-item .headline-label{
		display: inline-block;
	}
	.headline .headline-item .headline-dat{
		padding: 0;
	}
	.headline .headline-item a.headline-title{
		display: block;
		margin: 10px 0 0;
		padding: 0;
	}
}

/* booklist === */
.booklist{
    /*display: flex;
 flex-wrap: wrap;*/
	overflow: hidden; _zoom: 1;
	margin: 15px -10px 0;
}
ul.booklist li{
    float: left;
    width: 25%;
    padding:0 10px 20px !important;
}

@media screen and (max-width: 600px){
    ul.booklist li{
        float: left;
        width: 50%;
        padding:0 10px 20px !important;
    }
}

ul.booklist li.acms-col-12{
    clear: none;
}
.booklist::before {
 display: none;
}
.booklist li{list-style: none;}

.book{
	float: left;
	width: 25%;
	padding:0 10px 20px !important;
}

@media screen and (max-width: 600px){
	.book{ width: 50%; }
}

.book a.bookcover{
	display: block;
	line-height: 0;
	overflow: hidden; _zoom: 1;
	box-shadow: 0 0 0 1px #f2d3e2 inset;
	position: relative;
}
.cover-wrap
{
    position: relative;
    overflow: hidden;
}
.book a.bookcover .badge-wrap .bookcover__badge
{
    position: absolute;
    bottom: 1em;
    right: -4em;
    padding: 10px 0;
    -moz-transform: rotate(-25deg);
    -webkit-transform: rotate(-25deg);
    transform: rotate(-25deg);
    box-sizing: border-box;
    width: 15em;
    text-align: center;
    display: block;
    -moz-box-shadow: 0px 0px 4px rgba(50, 50, 50, 0.7);
    -webkit-box-shadow: 0px 0px 4px rgba(50, 50, 50, 0.7);
    box-shadow: 0px 0px 4px rgba(50, 50, 50, 0.7);
    border: 1px solid #fff;
}
.cover-wrap .badge-wrap .bookcover__badge
{
    position: absolute;
    bottom: 1em;
    right: -5em;
    padding: 10px 0;
    -moz-transform: rotate(-25deg);
    -webkit-transform: rotate(-25deg);
    transform: rotate(-25deg);
    box-sizing: border-box;
    width: 18em;
    text-align: center;
    display: block;
    -moz-box-shadow: 0px 0px 4px rgba(50, 50, 50, 0.7);
    -webkit-box-shadow: 0px 0px 4px rgba(50, 50, 50, 0.7);
    box-shadow: 0px 0px 4px rgba(50, 50, 50, 0.7);
    border: 1px solid #fff;
}
@media screen and (max-width: 1000px){
    .book a.bookcover .badge-wrap .bookcover__badge,
    .cover-wrap .badge-wrap .bookcover__badge
    {
        font-size: 0.8em;
    }
}

.book a.bookcover:hover{
	box-shadow: 0 0 0 5px rgba(255, 103, 157, 0.6) inset;
}

.book a.bookcover img{
	width: 100%;
	height: auto;
	z-index: -1;
	position: relative;
}

.book a.bookcover:hover img{
	opacity: 0.6;
}

.book .bookttl{
	font-size: 1.4rem;
	margin: 0.5em 0;
	line-height: 130%;
 text-align: left;
}
.book .bookttl span
{
		background: #008ac8;
	color: #fff;
	font-size: 0.7em;
	padding: 0.3em;
	margin-right: 0.5em;
	vertical-align: middle;
	box-sizing: border-box;
	line-height: 1;
	margin-top: -0.3em;
	display: inline-block;
	border-radius: 5px;
}


/* serieslist === */
.serieslist{
	overflow: hidden; _zoom: 1;
	margin: 15px -10px 20px;
}
.serlist li{list-style: none;}

.ser{
	float: left;
	width: 33.333%;
	padding:0 10px 20px;
}

@media screen and (max-width: 900px){
	.serieslist{margin: 15px -10px 0;}
	.ser{padding:0 10px 20px;}
}

@media screen and (max-width: 720px){
	.ser{ width: 50%; }
}


.ser a.sertmb{
	display: block;
	line-height: 0;
	overflow: hidden; _zoom: 1;
	box-shadow: 0 0 0 1px #f2d3e2 inset;
}

.ser a.sertmb:hover{
	box-shadow: 0 0 0 5px rgba(255, 103, 157, 0.6) inset;
}

.ser a.sertmb img{
	width: 100%;
	height: auto;
	z-index: -1;
	position: relative;
}

.ser a.sertmb:hover img{
	opacity: 0.6;
}

.ser .serttl{
	font-size: 1.4rem;
	margin: 0.5em 0;
	line-height: 120%;
	text-indent: -0.5em;
}

.ser .serttl span::before,
.ser .serttl span::after{
	font-size: 80%;
	letter-spacing:-0.2em;
	color: #444;
}

.ser .serttl span::before{
	content: "「";
	padding-right: 0.4em;
}
.ser .serttl span::after{
	content: "」シリーズ";
	padding-left: 0.4em;
}
.ser .serttl span.label-tankoubon{
    color: #fff;
    background: #008ac8;
    margin-left: 0.5em;
    font-size: 80%;
    border-radius: 5px;
    padding: 0.2em 0.5em;
}
.ser .serttl span.label-tankoubon::before,
.ser .serttl span.label-tankoubon::after{
    content: "";
}
h1.entry-title span.label-tankoubon{
    color: #fff;
    background: #008ac8;
    margin-right: 0.5em;
    font-size: 0.8em;
    border-radius: 5px;
    padding: 0.2em 0.5em;
    
}


/* characterlist === */
.characterlist{
	overflow: hidden; _zoom: 1;
	margin: 15px -20px 0;
}
.characterlist li{list-style: none;}

.chara{
	float: left;
	width: 16.6%;
	padding:0 20px 20px;
	font-size: 1.4rem;
	line-height: 130%;
}

@media screen and (max-width: 1000px){
	.characterlist{margin: 15px -10px 0;}
	.chara{padding:0 10px 20px;}
}

@media screen and (max-width: 900px){
	.chara{ width: 33.3%;}
}



.chara .charatmb{
	display: block;
	line-height: 0;
	overflow: hidden; _zoom: 1;
	box-shadow: 0 0 0 1px #ddd inset;
}

.chara .charatmb img{
	width: 100%;
	height: auto;
	z-index: -1;
	position: relative;
}

.chara p{
	margin: 10px 0;
}

.chara .charattl{
	font-weight: bold;
	margin: 0.5em 0;
}



/* mainBnr === */
.mainBnr-2col{
	overflow: hidden; _zoom: 1;
	margin: 15px -15px 0;
}

.mainBnr-2col > li{
	float: left;
	width: 50%;
	padding:0 15px 20px;
}


.mainBnr-ext{
	overflow: hidden; _zoom: 1;
	margin: 15px -5px 0;
}

.mainBnr-ext > li{
	float: left;
	width: 20%;
	padding:0 5px 20px;
}

@media screen and (max-width: 1000px){
	.mainBnr-ext{
		margin: 15px -5px 0;
	}
	.mainBnr-ext > li{
		width: 33%;
		padding:0 5px 10px;
	}
}

@media screen and (max-width: 900px){
	.mainBnr-2col{
		margin: 15px -5px 10px;
	}

	.mainBnr-2col > li{
		padding:0 5px 10px;
	}
}

@media screen and (max-width: 500px){
	.mainBnr-ext > li{
		width: 50%;
	}
}

@media screen and (max-width: 720px){
	.sp-1col > li{
		width: 100%;
		padding-bottom: 15px;
	}
}

/* toppage === */

.tag-cloud{
	margin: 10px -5px;
	overflow: hidden; _zoom: 1;
}

.tag-cloud li{
	display: inline-block;
	font-size: 1.4rem;
	vertical-align: baseline;
	margin: 0 5px;
    line-height: 1.7;
}

.tag-cloud .tag-cloud-item1 a{	color: #ff679d;}
.tag-cloud .tag-cloud-item2 a{	color: #3cc8f7;}
.tag-cloud .tag-cloud-item3 a{	color: #ff9c00;}
.tag-cloud .tag-cloud-item4 a{	color: #58ca39;}
.tag-cloud .tag-cloud-item5 a{	font-size: 1.6rem; color: #ff679d;}
.tag-cloud .tag-cloud-item6 a{	font-size: 1.6rem; color: #3cc8f7;}
.tag-cloud .tag-cloud-item7 a{	font-size: 1.6rem; color: #ff9c00;}
.tag-cloud .tag-cloud-item8 a{	font-size: 1.6rem; color: #58ca39;}
.tag-cloud .tag-cloud-item9 a{	font-size: 2.0rem; color: #ff679d;}
.tag-cloud .tag-cloud-item10 a{	font-size: 2.0rem; color: #3cc8f7;}
.tag-cloud .tag-cloud-item11 a{	font-size: 2.0rem; color: #ff9c00;}
.tag-cloud .tag-cloud-item12 a{	font-size: 2.0rem; color: #58ca39;}
.tag-cloud .tag-cloud-item13 a{	font-size: 2.4rem; font-weight: bold; color: #ff679d;}
.tag-cloud .tag-cloud-item14 a{	font-size: 2.4rem; font-weight: bold; color: #3cc8f7;}
.tag-cloud .tag-cloud-item15 a{	font-size: 2.4rem; font-weight: bold; color: #ff9c00;}
.tag-cloud .tag-cloud-item16 a{	font-size: 2.4rem; font-weight: bold; color: #58ca39;}

.tabs{
	margin: 0 auto;
}

.tabs ul.tab{
	margin: 10px 0 15px;
    display: table;
    width: 100%;
}

.tabs ul.tab li{
	border: 1px solid transparent;
	margin-bottom: -2px;
	color: #fff;
	font-weight: bold;
	padding: 0;
	cursor: pointer;
	transition: .2s ease-in-out;
    display: table-cell;
    border-bottom: 1px solid rgba(255, 103, 157, 0.6);
}

.tabs ul.tab li:hover{
	opacity: 0.6;
}

.tabs ul.tab li span{
	display: block;
	font-size: 1.6rem;
	text-align: center;
	padding: 6px;
	background: #ff679d url('../images/bt_bg.png') repeat 0 0;
	border-radius: 2px;
    line-height: 1.5;
}

.tabs ul.tab li.chose{
	background: #fff url('../images/bg.png') repeat 0 0;
	color: #333;
	border: 1px solid rgba(255, 103, 157, 0.6);
	border-bottom: none;
	opacity: 1;
}

.tabs ul.tab li.chose span{
	background: none;
}

.tabs .hide{
	display: none;
}

@media (max-width: 720px) {
	.tabs ul.tab{ display: none; }
}


.linkNovel{
	display: table;
	table-layout:fixed;
	width: 100%;
	margin: 1em auto;
}

.linkNovel a{
	display: table-cell;
	padding: 0 10px;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
}


/* page-title === */
.page-title-wrapper{
	margin: 20px 0;
}

.page-title{
	color: #333;
	font-size: 3.6rem;
	font-weight: bold;
	font-family: "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	background: transparent url('../images/line.png') repeat-x 0 bottom;
	padding: 0 0 10px;
	margin: 20px 0;
	position:relative;
}
.page-title.prize{
    margin-top: 40px;
}

.page-title i{
	color: #68bde8;
	font-size: 150%;
	margin-right: 0.2em;
	vertical-align: middle;
}

.page-title:after{
	content: "";
	position:absolute;
	display:block;
	top:0;
	left:0;
	height:100%;
	width:100%;
	background:url('../images/bt_bg.png');
}

@media (max-width: 720px) {
	.page-title{ font-size: 2.6rem; }
}

.page-title-banner{
	text-align: center;
	line-height: 0;
}

.page-title-banner img{
	max-width: 100%;
}

/* entry === */
.entry{
	font-size: 1.6rem;
	border-bottom: #9ad1f0 2px solid;
	margin: 20px 0 50px;
	padding-bottom: 20px;
}

.series,
.novel{ border: none; }

.entry img{
	max-width: 100%;
}

.acms-page-header{
	border:none;
	background: transparent url('../images/line_thin.png') repeat-x 0 bottom;
	margin: 0 0 20px;
}
.entryInfo{
	margin: 0;
}

.entry-title{
	color: #333;
	font-size: 2.4rem;
	padding: 0 0 10px;
	margin: 0;
}

.entry-image{
	margin: 10px auto;
}

.entry-image img{
	display: block;
	margin: 0 auto;
}

.entry-title a:hover{
	text-decoration: underline;
}

.entry-column h2,
.entry-column h3,
.entry-column h4{
	margin-top: 0;
}

.entry-column h2 {
	border-bottom: 1px dotted #9ad1f0;
	font-size: 1.8rem;
	padding: 0 0 10px;
}

.entry-column h3 {
	color: #ff679d;
	font-size: 1.6rem;
}

.entry-column h4 {
	font-size: 1.6rem;
}

.entry-column hr{
	display: block;
	height: 0;
	margin: 1em 0;
	padding: 0;
	border: 0;
	border-top: 1px dotted #9ad1f0;
}


.entry-column ul,
.entry-column ol {
	margin: 0 0 25px;
	padding: 0 0 0 2em;
}
.entry-column ul li,
.entry-column ol li {
	line-height: 1.5;
	margin: 0 0 5px;
}

.entry-column ul li{
	list-style: disc;
}

.entry-column ol li{
	list-style: decimal;
}

.entry-column table {
	margin: 0 0 20px;
	width: 100%;
	background: #fff;
	border: 1px solid #dfdfdf;
}

.entry-column table.table-history {
	table-layout: fixed;
}

.entry-column tr, .entry-column tr{
	border-bottom: 1px solid #dfdfdf;
}

.entry-column td, .entry-column th {
	border-top: 1px solid #dfdfdf;
	display: table-cell;
	font-size: 16px;
	padding: 15px 20px;
	text-align: left;
}

.entry-column .acms-table-responsive {
	margin-bottom: 30px;
}
.entry-column .acms-table-responsive td, .entry-column .acms-table-responsive th {
	display: table-cell;
	white-space: nowrap;
}
.entry-column .acms-table-responsive table {
	margin: 0;
}
.entry-column th {
	background: #f5f5f5 none repeat scroll 0 0;
}
.entry-column table.table-history tr {
	background: #fff none repeat scroll 0 0;
}
.entry-column table.table-history td, .entry-column table.table-history th {
	display: block;
}
.entry-column table.table-history th {
	padding: 10px;
}
.entry-column table.table-history td {
	padding: 10px 0;
}
.entry-column table.table-history .table-history-img {
	background: #fff none repeat scroll 0 0;
	display: block;
	padding: 0 10px 10px;
}

.acms-entry blockquote {
	border-left: 5px solid #9ad1f0;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	background: rgba(255, 255, 255, 0.6);
	margin: 0 0 20px;
	padding: 10px 20px;
	font-family: "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
}

.acms-entry .entry-container, .acms-entry dl, .acms-entry h2, .acms-entry h3, .acms-entry h4, .acms-entry h5, .acms-entry h6, .acms-entry p {
	margin-left: 0;
	margin-right: 0;
}

/* entry series === */

.series h2{
	color: #333;
	background: transparent url('../images/line_thin.png') repeat-x 0 bottom;
	padding: 10px 0;
	position:relative;
	font-size: 2.4rem;
	font-family: "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	margin: 30px 0 20px;
}

.series h2 i{
	color: #68bde8;
	font-size: 180%;
	margin-right: 0.2em;
	vertical-align: middle;
}

.series h2:after{
	content: "";
	position:absolute;
	display:block;
	top:0;
	left:0;
	height:100%;
	width:100%;
	background:url('../images/bt_bg.png');
}


/* entry novel === */

.novel-header{
	padding: 10px 0;
}
.novel-data{
    font-size: 1.6rem;
    line-height: 1.6;
}
@media (max-width: 720px){
    .novel-data{
        margin-top: 20px;
    }
}
.novel-header .novel-catch,
.novel-data .novel-catch{
	font-size: 1.6rem;
	font-family: "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	line-height: 120%;
	margin: 0;
}

.novel-header .novel-title{
	margin: 0.5em 0;
	font-size: 2.8rem;
	line-height: 120%;
}
.novel-header .novel-title span
{
    background: #008AC8;
	color: #fff;
	font-size: 0.7em;
	padding: 0.2em;
	margin-right: 0.5em;
	vertical-align: middle;
	box-sizing: border-box;
	line-height: 1;
	margin-top: -0.3em;
	display: inline-block;
	border-radius: 5px;
}

.novel-header .novel-auther li,
.novel-data .novel-auther li,
.novel-footer .novel-tag li{
	display: inline-block;
	margin: 3px 0;
}

.novel-header .novel-auther li:before,
.novel-data .novel-auther li:before{
	content: "／";
	color: #ccc;
	margin: 0 0.3em;
}

.novel-header .novel-auther li:first-child:before,
.novel-data .novel-auther li:first-child:before{
	content : none ;
}

.novel-header .novel-auther a,
.novel-data .novel-auther a,
.novel-footer .novel-tag a{
	display: inline-block;
	background: rgba(242, 211, 226, 0.5);
	box-shadow: 0 0 0 1px #f2d3e2 inset;
	border-radius: 3px;
	color: #000;
	text-decoration: none;
	padding: 1px 1rem;
	font-size: 1.4rem;
	margin: 0 2px;
}


.novel-header .novel-auther a:hover,
.novel-footer .novel-tag a:hover{
	background: rgba(255, 255, 255, 0.8);
	box-shadow: 0 0 0 3px rgba(255, 103, 157, 0.6) inset;
	opacity: 0.7;
}


.novel-header .novel-auther span,
.novel-data .novel-auther span{
	font-size: 70%;
}

@media (max-width: 900px){
	.novel-header .novel-auther .novel-auther_series{ display: block; }
	.novel-header .novel-auther li.novel-auther_series:before{ content : none ; }
}

.novel-body{
	margin: 20px 0;
}

.novel-body .cover{
	margin-bottom: 1rem;
	text-align: center;
 max-width: 425px;
}

@media (min-width: 721px){
	.novel-body{
	display: table;
	width: 100%;
	}
	.novel-body .cover,
	.novel-body .data{
		display: table-cell;
		vertical-align: top;
	}
	.novel-body .cover{
	width: 45%;
	padding-right: 20px;
	}
    .novel-body.newbook-list .cover{
        width: 30%;
        padding-right: 20px;
    }

}

.novel-body .cover img{
	box-shadow: 0 12px 10px -6px rgba(0,0,0,0.2);
}

.novel-body .novel-data p:first-child{
	margin-top: 0;
}
.novel-data h2{
    line-height: 1.5;
}
.novel-data h2 span{
    background: #008AC8;
    color: #fff;
    font-size: 0.7em;
    padding: 0.3em;
    margin-right: 0.5em;
    vertical-align: middle;
    box-sizing: border-box;
    line-height: 1;
    margin-top: -0.3em;
    display: inline-block;
    border-radius: 5px;
}

.novel-data dl,
.novel-data dt,
.novel-data dd{
	margin: 0;
	padding: 0;
	display: inline-block;
	font-size: 1.3rem;
	color: #888;
}

.novel-data dt:after{
	content: "：" ;
}

.novel-body .novel-data_detail{
	margin: 10px 0;
	border-top: 1px dotted #ccc;
	border-bottom: 1px dotted #ccc;
}

.novel-body .novel-data_detail dl{
	display: block;
	margin: 5px 0;
}


.novel-body .novel-data_detail dl.novel-data_price dd{
	color: #000;
	font-size: 2.0rem;
	font-weight: bold;
}

.novel-body .trial{
	margin: 20px auto;
	text-align: center;
}

.novel-body .trial .bt-trial{
	display: inline-block;
	font-size: 1.2rem;
	padding-left: 1em;
	padding-right: 1.5em;
	margin:3px 1px;
}

.novel-body .trial .bt-trial::before {
	content: none;
}

.novel-body .trial .bt-trial::after {
    content: "";
    font-size: 70%;
    margin-top: -0.6em;
    right: 1em;
    top: 50%;
}

.novel-body .trial .bt-trial:hover::after{
	    right: 0.3em;
}

.novel-store{
	background: #ccc;
	border-radius: 6px;
    margin: 20px 0 20px 0;
	padding:0 5px;
    width: 100%;
}

.novel-store h2{
	color: #fff;
	text-align: center;
	font-size: 1.8rem;
	margin: 10px 0 0;
}

.novel-store ul.novel-store_bnr{
	display: flex;
 justify-content: center;
	margin: 10px auto;
}
.novel-store ul.novel-store_bnr li{
	padding: 3px;
	text-align: center;
}
.novel-store ul.novel-store_bnr img{
 max-width: 100%;
}

.novel-store ul.novel-store_bnr a:hover{
	opacity: 0.6;
}

@media (max-width: 950px){
	.novel-store ul.novel-store_bnr,
	.novel-store ul.novel-store_bnr li{
		display: block;
	}
}


.comment-form form{
	background: #fff;
	border: 3px solid rgba(204, 204, 204, 0.5);
	border-radius: 3px;
	margin: 20px auto;
}

.comment-form table,
.comment-form tr,
.comment-form td,
.comment-form th{
	border: none;
}

.comment-form td,
.comment-form th{
	border-bottom: 1px dotted #ddd;
	text-align: left;
	padding: 10px;
}
.comment-form table{
	width: 100%;
}

.comment-form th{
	color: #777;
}

.comment-form th span.base-required-label{
	font-size: 70%;
	color: #e85568;
}

.comment-form td textarea{
	width: 100%;
}

.comment-form input[type="submit"] {
	margin:10px auto;
	display: block;
	border:none;
	transition: .3s ease-in-out;
}

.comment-form input[type="submit"]:hover{
	opacity: 0.6;
}

.comment-form .acms-alert{
	margin: 20px;
}

.comment-list ol{
	background: #fff;
	border: 1px solid rgba(204, 204, 204, 0.5);
	border-radius: 3px;
	margin: 10px auto;
	width: 100%;
	display: table;
}

.comment-list ol li{
	display: table-cell;
	padding: 10px 20px;
}

.comment-list ol li.comment-list_edit{
	width: 50px;
	vertical-align: bottom;
	text-align: right;
	padding-top: 0;
}

.comment-list ol li.comment-list_edit input[type="submit"]{
	margin:0 0 10px auto;
	display: inline-block;
	border:none;
	background-color: #999;
	transition: .3s ease-in-out;
}

.comment-list ol li.comment-list_edit input[type="submit"]:hover{
	opacity: 0.6;
}

.comment-list ol li p{
	margin: 5px 0;
}

.comment-list ol li .comment-list-title{
	font-weight: bold;
}

.comment-list ol li .comment-list-text{
	padding-left: 3em;
}

.comment-list ol li .comment-list-info{
	font-size: 1.2rem;
	color: #ccc;
	text-align: right;
}

@media (max-width: 720px){
	.comment-form table,
	.comment-form tbody,
	.comment-form tr,
	.comment-form td,
	.comment-form th,
	.comment-list ol,
	.comment-list ol li,
	.comment-list ol li.comment-list_edit{
		display: block;
		width: 100%;
	}
	.comment-form th{
		border-bottom: none;
	}
}


/* pager === */

.pager{
	margin: 40px 0;
	padding: 0;
	text-align: center;
}

.pager li{
	display: inline-block;
	margin: 5px;
}

.pager li a,
.pager li.cur span{
	display: block;
	padding: 10px 15px;
	font-size: 1.7rem;
	line-height: 100%;
	border-radius: 2px;
	border: 1px solid #ff679d;
	background: #fff url('../images/bt_bg.png') repeat 0 0;
	transition: .3s ease-in-out;
}

.pager a{
	text-decoration: none;
	color: #000;
}

.pager a:hover{
	background: #fff0f6;
	opacity: 0.6;
}

.pager li.cur span{
	background: #99d1ee url('../images/bt_bg.png') repeat 0 0;
	border: 1px solid #99d1ee;
	color: #fff;
	font-weight: bold;
}

.pager .prev a,
.pager .next a{
	position: relative;
	display: inline-block;
	background: #ff679d url('../images/bt_bg.png') repeat 0 0;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	line-height: 100%;
	border-radius: 2px;
	padding: 10px;
	cursor: pointer;
}

.pager .prev a:hover,
.pager .next a:hover{
	opacity: 0.6;
}

.pager .prev a{	padding-left: 1.3em;}
.pager .next a{	padding-right: 1.3em;}

.pager .prev a::after,
.pager .next a::after{
	font-family: 'beans' !important;
	position: absolute;
	top: 50%;
	font-weight: normal;
	font-size: 50%;
	color: #f6ff00;
	margin-top: -0.8em;
	transition: all 0.3s ease 0s;
}

.pager .prev a::after{
	left: 1em;
	content: "\e904";
}
.pager .next a::after{
	right: 1em;
	content: "\e90f";
}

.pager .prev a:hover::after{	left: 0.5em;}
.pager .next a:hover::after{	right: 0.5em;}

.serial-nav{ margin: 20px 0 50px; }
.serial-nav .serial-nav-item{ display: block; }
.serial-nav .serial-nav-item-prev{ float: left; }
.serial-nav .serial-nav-item-next{ float:right; }
.serial-nav a{ color: #555; text-decoration: none; }
.serial-nav a:hover{ color: #ff679d; }


/* award === */

.linkAward{
	display: table;
	table-layout:fixed;
	width: 100%;
	text-align: center;
	margin: 20px auto;
}

.linkAward li{
	display: table-cell;
	padding: 0 5px;
}

.linkAward li:first-child{ padding-left: 0; }
.linkAward li:last-child{ padding-right: 0; }

.linkAward li a{
	display: block;
	background: #fff;
	border: 1px solid #ff679f;
	border-radius: 2px;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 110%;
	color: #333;
	text-decoration: none;
	position: relative;
	padding: 1em 5px;
	padding-right: 1.5em;
}

.linkAward a:hover{
	background: #fff0f6;
	opacity: 0.6;
}

.linkAward a::after{
	content: "\e903";
	font-family: 'beans' !important;
	position: absolute;
	font-weight: normal;
	color: #ff669c;
	transition: all 0.3s ease 0s;
	right: 1em;
	top: 50%;
	font-size: 70%;
	margin-top: -0.5em;
}

.linkAward a:hover::after{	margin-top: -0.2em;}
.linkAward li a span{ display: inline-block; margin: 0 2px;}

@media (max-width: 720px){
	.linkAward{ margin: 10px 0; }
	.linkAward li{ padding: 0 2px; }
	.linkAward li a{
		padding-right: 1em;
		font-size: 1.4rem;
	}
	.linkAward a::after{ content: "\e90f"; right: 0.5em;}
	.linkAward a:hover::after{
		margin-top: -0.5em;
		right: 0.3em;
	}
}


/* sub ======================================== */

#sub .module-heading{
 margin-top: 15px;
}

#sub .module-heading i{
	font-size: 150%;
}

.subBnr-toku{
	margin: 15px auto;
}

.subBnr-toku figure{
	width: 270px;
	height: 190px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
.subBnr-toku figure:after{
	position: absolute;
	border: solid 1px #fff;
	content: "";
	display: block;
	width: 266px;
	height: 184px;
	left: 0;
	top: 0;
	margin: 2px;
	opacity: 0.6;
}

.subBnr-toku a:hover figure::after{
	border: solid 1px #f7ff0b;
	opacity: 1;
}

.subBnr-toku figure figcaption{
	position: absolute;
	left: 0;
	bottom: 0;
	padding: 15px;
	display: block;
	width: 100%;
}
.subBnr-toku a:hover figure figcaption span::after{
	right: 0.5em;
}

#sub .bnr{
	margin: 15px auto;
	text-align: center;
}



/* share ======================================== */

.c-list-sns{
	text-align: center;
}
.c-list-sns__item {
	display: inline-block;
	margin: 0 5px 20px 5px;
	vertical-align: top;
}
.c-list-sns__link {
	display: block;
	width: 40px;
	height: 40px;
	background-repeat: no-repeat;
	background-size: 100%;
	text-indent: -9999px
}
.c-list-sns__link.-twitter {
	background-image: url(/themes/beans/images/icon-twitter.svg)
}
.c-list-sns__link.-facebook {
	background-image: url(/themes/beans/images/icon-facebook.svg)
}
.c-list-sns__link.-line {
	background-image: url(/themes/beans/images/icon-line.svg)
}
.c-list-row {
	display: -ms-inline-flexbox;
	display: inline-flex;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none
}

/* footer ======================================== */

#footer{
	background: #99d1ee url('../images/navi_bg.png') repeat 0 0;
	color: #fff;
	font-size: 1.2rem;
}

.foot-wrapper.-sp {
 padding-bottom: 120px;
}

#footer a{
	color: #fff;
}

#footer .acms-grid{
	width: 100%;
	display:table;
	margin: 20px auto;
}

#footer .footer-nav,
#footer .copyright,
#footer .kadokawa{
	display: table-cell;
	vertical-align: middle;
}

#footer .footer-nav{
	text-align: left;
}

#footer .kadokawa{
	text-align: right;
	font-size: 2.1rem;
}

#footer .footer-nav-list {
	margin: 1em -1em;
}

#footer .footer-nav-list li{
	border-left: 1px solid #fff;
	padding: 0 1em;
	line-height: 100%;
	display: inline-block;
}

#footer .footer-nav-list li:first-child{	border-left: none;}
.page-top{	margin: 0;}

.page-top-btn {
	background: #ff679d url('../images/btPagetop_bg.png') repeat 0 0;
	display: block;
	opacity: 0;
	overflow: hidden;
	position: fixed;
	bottom: 0;
	right: 20px;
	transform: translateZ(0px);
	transition: opacity 0.2s ease-out 0s;
	white-space: nowrap;
	width: 58px;
	height: 58px;
	z-index: 1000;
	border-radius: 3px;
	text-align: center;
	font-size: 1.2rem;
	font-weight: bold;
	padding-top: 30px;
	margin-bottom: 20px;
}

.page-top-btn::before{
	content: "\e912";
	font-family: 'beans' !important;
	position: absolute;
	top: 6px;
	font-weight: normal;
	font-size: 200%;
	color: #f6ff00;
	transition: all 0.3s ease 0s;
}

.page-top-btn:hover::before{	top: 0;}
.no-js .page-top-btn {	opacity: 0.6;}
.page-top-btn-appear {	opacity: 0.9;}
.page-top-btn-appear:hover{	opacity: 1;}

@media (max-width: 720px) {
	#footer .acms-grid{
		display:block;
		margin: 0 auto;
	}
	#footer .footer-nav,
	#footer .copyright,
	#footer .kadokawa{
		display: block;
		margin: 10px auto;
		text-align: center;
	}
}

/* slick-slider ======================================== */

.slider{
	overflow: hidden;
	max-height: 370px;
	padding-bottom: 7px;
	margin: 15px auto;
}

.js-slider{
	background: #f4f3cc url('../images/navi_bg.png') repeat 0 0;
	border: 1px solid #fff;
	border-bottom: none;
	position: relative;
	padding: 17px 0 40px;
}

.js-slider::after {
	height: 10px;
	content: "";
	position: absolute;
	left: 0;
	bottom: -8px;
	width: 100%;
	background: transparent url('../images/zigzag.png') repeat-x 0 0;
}

.slick-slide {
	background: #fff;
}
.slick-slide a img{
	width: 100%;
	transition: .3s ease-in-out;
	opacity: 0.5;
}

.slick-current a img{	opacity: 1;}
.slick-current a:hover img{	opacity: 0.6;}

.slick-prev, .slick-next {
	background: rgba(255, 103, 157, 0.8);
	border: medium none;
	color: #f7ff0b;
	cursor: pointer;
	display: block;
	font-size: 2.0rem;
	font-weight: normal;
	height: 60px;
	line-height: 0;
	margin-top: -40px;
	outline: medium none;
	padding: 0;
	position: absolute;
	top: 50%;
	width: 50px;
	z-index: 5000;
}

.slick-prev {
	left: 0;
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
}
.slick-next {
	right: 0;
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
}

.slick-dots {
	bottom: 10px;
	display: block;
	list-style: outside none none;
	padding: 0;
	position: absolute;
	text-align: center;
	width: 100%;
}
.slick-dots li {
	cursor: pointer;
	display: inline-block;
	height: 20px;
	margin: 0 5px;
	padding: 0;
	position: relative;
	width: 10px;
}
.slick-dots li button {
	background: transparent none repeat scroll 0 0;
	border: 0 none;
	color: transparent;
	cursor: pointer;
	display: block;
	font-size: 0;
	height: 15px;
	line-height: 0;
	outline: medium none;
	padding: 5px;
	width: 10px;
}
.slick-dots li button:hover, .slick-dots li button:focus {
	outline: medium none;
}

.slick-dots li button::before {
	color: #ff679d;
	content: "\e905";
	font-family: 'beans' !important;
	font-size: 0.8rem;
	height: 20px;
	left: 0;
	line-height: 20px;
	opacity: 0.8;
	position: absolute;
	text-align: center;
	top: 0;
	width: 10px;
}
.slick-dots li button {
	background: transparent none repeat scroll 0 0;
	border: 0 none;
	color: transparent;
	cursor: pointer;
	display: block;
	font-size: 0;
	height: 20px;
	line-height: 0;
	outline: medium none;
	padding: 5px;
	width: 20px;
}

.slick-dots li.slick-active button::before {
	color: #6cc4f1;
	font-size: 1.1rem;
}

@media (max-width: 720px) {
	.slider{
		overflow: hidden;
		/*max-height: 300px;*/
		padding-bottom: 7px;
		margin: 0 -20px 0;
	}
	.js-slider{
		padding-top: 0;
	}
	.slick-prev, .slick-next{
		height: 40px;
		width: 30px;
		font-size: 1.5rem;
	}
}

@media (max-width: 500px){
	.slick-prev, .slick-next{
		height: 30px;
		width: 20px;
		font-size: 1.0rem;
	}
}


/* OPEN / CLOSE BTNS ======================================== */
.navbar-toggle{
	background: transparent;
	border:none;
	padding: 0;
}

.menu-btn,
.search-btn{
	position: absolute;
	display: inline;
}
.menu-btn:hover,
.search-btn:hover {
	opacity: 0.6;
}

.menu-btn {
	top: 20px;
	left: 20px;
}

.search-btn {
	top: 20px;
	right: 20px;
	background: #ff679d url('../images/bt_bg.png') repeat 0 0;
	border-radius: 3px;
	width: 50px;
	height: 50px;
	overflow: hidden;
	text-align: center;
	vertical-align: middle;
}

.menu-btn span,
.search-btn span {
	width: 50px;
	height: 50px;
	display: block;
	text-decoration: none;
	position: relative;overflow:hidden;
}

.menu-btn span img,
.search-btn span img{
	position: absolute;
}

.menu-btn span img{
	width: auto;
	height: 100%;
	top:0;
	left: 0;
}

.search-btn span img{
	width: 30px;
	height: auto;
	top:10px;
	left: 10px;
}

.js-hiraku-offcanvas-open{
	display: block !important;
}

.js-hiraku-offcanvas-active .js-hiraku-offcanvas-sidebar{
	background: #fafae0;
}

.js-hiraku-offcanvas-close-btn{
	width: 50px ; height: 50px;
	clip:auto;
	background: #ff679d url('../images/btPagetop_bg.png') repeat 0 0;
	color: #f6ff00;
	font-size: 3.0rem;
	border-radius: 3px;
	padding: 10px;
	line-height: 100%;
}

#js-hiraku-offcanvas-0 .js-hiraku-offcanvas-close-btn{top:20px;right: 20px;}
#js-hiraku-offcanvas-1 .js-hiraku-offcanvas-close-btn{top:20px;left: 20px;}

#header .js-hiraku-offcanvas-open .header-nav{
	background: none;
	box-shadow: none;
	margin-bottom: 20px;
}

#header .js-hiraku-offcanvas-open  .header-nav .navbar{
	padding: 0 10px;
}

#header .js-hiraku-offcanvas-open  .header-nav .navbar ul{
	display: block;
	background: none;
	text-align: left;
}

#header .js-hiraku-offcanvas-open .header-nav .navbar ul li{
	background: transparent url("../images/line_thin.png") repeat-x 0 bottom;
	display: block;
}

#header .js-hiraku-offcanvas-open .header-nav .navbar li a {
	display: block;
	line-height: 100%;
	color: #333;
	padding: 0.8em 0;
}
#header .js-hiraku-offcanvas-open .header-nav .navbar li a i {
	color: #68bde8;
	font-size: 200%;
}

ul.sp-navMenu li .tmb{
	display: inline-block;
	width: 50px;
	height: 50px;
	overflow: hidden;
	text-align: center;
	vertical-align: middle;
	margin-right: 0.5em;
}

ul.sp-navMenu li .tmb img{
	width: 50px;
	height: 50px;
	object-fit: cover;
}

#header .js-hiraku-offcanvas-open .header-search{
	background: transparent url('../images/line_thin.png') repeat-x 0 bottom;
	margin: 10px ;
	padding:10px 5px 25px;
	float: none;
	width: auto;
}

#header .js-hiraku-offcanvas-open .header-search .search-form{
	border: 1px solid #ff80b9;
	background: #fff;
	height: 50px;
}

#header .js-hiraku-offcanvas-open .header-search .search-form input.search-form-input, #header .js-hiraku-offcanvas-open .header-search .search-form .btn-search{
	height: 50px;
}

#header .js-hiraku-offcanvas-open .header-search .search-form .btn-search img{
	width: 30px;
}

#header .js-hiraku-offcanvas-open .sp-keyword{
	margin:0 10px;
}

#header .js-hiraku-offcanvas-open .sp-keyword .tag-cloud li{
	margin: 10px;
}

#header .js-hiraku-offcanvas-open .sp-keyword .tag-cloud a{
	font-size: 2.0rem;
	font-weight: bold;
}

#header .js-hiraku-offcanvas-open .module-heading{
	background: transparent url("../images/line_thin.png") repeat-x scroll 0 bottom;
}

/* RESPONSIVE */

@media screen and (min-width: 721px){
	.sp-navBtn,
	.sp-keyword,
	#header .header-nav .navbar ul.sp-navMenu{
		display: none;
	}
}

@media screen and (max-width: 720px) {
	.topicpath,
	#main .keyword{
		display: none;
	}
	#header{
		border-bottom: 6px solid #6cc4f1;
	}
	#header .header-logo{
		width: 100%;
		text-align: center;
		margin: 18px 0 25px;
	}
	#header .header-logo h1 {
		margin: 0 70px;
	}
	#header .header-logo h1 a{
		width: 60%;
	}
	#header .header-logo h1 .releaseDate{
		font-size: 1.4rem;
	}
}

@media screen and (max-width: 600px){

	#header .header-logo h1 a{
		width: 100%;
		max-width: 300px;
	}
	#header .header-logo h1 .releaseDate{
		display: none;
	}

}
/* ニュース */

ul.news-list{
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
}
ul.news-list li
{
    flex-basis: 50%;
    padding: 0 10px 20px 10px;
    box-sizing: border-box;
}
@media screen and (max-width: 800px){
    ul.news-list li
    {
        flex-basis: 100%;
        padding: 0 10px 10px 10px;
        box-sizing: border-box;
    }
}
ul.news-list li a
{
    display: flex;
    text-decoration: none;
    color: #000;
}
ul.news-list li a .media_img-wrap{
    flex-basis: 140px;
}
ul.news-list li a .media-body{
    flex:1;
    padding-left: 10px;
    box-sizing: border-box;
    line-height: 1.5;
}
ul.news-list li a .media-body .headline-label{
    border-radius: 3px;
    color: #fff;
    font-size: 1.3rem;
    line-height: 100%;
    padding: 3px;
    text-align: center;
    vertical-align: middle;
    display: inline-block;
    min-width: 6em;
    transition: .3s ease-in-out;
    background: #ffb156;
}
ul.news-list li a .media-body .media_date{
    margin: 0.5em 0;
    padding-bottom: 0.5em;
    border-bottom: 2px dotted #ccc;
}
ul.news-list li a .media-body .headline-dat{
    color: #000;
}

/* 月別ページャー */
.c-pager-month
{
    margin: 0 0 30px 0;

    text-align: center;
}
.c-pager-month__inner
{
    position: relative;

    max-width: 800px;
    margin: 0 auto;
}
.c-pager-month__heading
{
    font-size: 16px;
    line-height: 36px;

    position: relative;
    z-index: 1; 

    display: inline-block;

    margin: 0;

    text-align: center;
}
.c-pager-month__list-wrap
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: none;

    padding: 0 46px;
}
.c-pager-month__list-wrap:before
{
    display: block;

    padding: 8px 10px 0 10px; 

    content: '...';
}
.c-pager-month__list-wrap:after
{
    display: block;

    padding: 8px 10px 0 10px; 

    content: '...';
}
.c-pager-month__list
{
    display: -ms-flexbox;
    display: flex;

    width: 100%; 
    margin: 0;
    padding: 0;

    list-style: none;
}
.c-pager-month__list.-start
{
    -ms-flex-pack: start;
    justify-content: flex-start;
}
.c-pager-month__list.-end
{
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.c-pager-month__list-item
{
    font-size: 16px;
    font-weight: bold;
    line-height: 1; 
    display: -ms-flexbox;
    display: flex;
    padding: 0 5px;
    display: block;
}
.c-pager-month__list-item a{
    display: block;
    padding: 10px 5px;
    line-height: 100%;
    border-radius: 2px;
    border: 1px solid #ff679d;
    background: #fff;
    transition: .3s ease-in-out;
    text-decoration: none;
    color: #000;
}
.c-pager-month__list-item a:hover{
    background: #fff0f6;
    opacity: 0.6;
}
.-disabled{
    border: 1px solid #333;
    background: #fff;
    padding: 10px 5px;
    display: block;
    border-radius: 2px;
}


.c-pager-month__arrow-list
{
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    margin: 0;
    padding: 0; 

    list-style: none;
}
.c-pager-month__arrow-list-item
{
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
}
.c-pager-month__arrow-list-item.-prev .c-pager-month__arrow-btn
{
    left: 0;
}
.c-pager-month__arrow-list-item.-next .c-pager-month__arrow-btn
{
    right: 0;
}
.c-pager-month__arrow-list-item.-prev a,
.c-pager-month__arrow-list-item.-next a{
    display: block;
    padding: 10px 5px;
    line-height: 100%;
    border-radius: 2px;
    border: 1px solid #ff679d;
    background: #fff;
    transition: .3s ease-in-out;
    text-decoration: none;
    color: #000;
}
.c-pager-month__arrow-list-item.-prev a:hover,
.c-pager-month__arrow-list-item.-next a:hover{
    background: #fff0f6;
    opacity: 0.6;
}
.c-pager-month__arrow-list-item .c-pager-month__arrow-btn
{
    position: absolute;
    top: 0;
    bottom: 0;
}
.fa-angle-left:before
{
    content: '<';
}

.fa-angle-right:before
{
    content: '>';
}

@media screen and (min-width: 992px)
{
    .c-pager-month__list-wrap
    {
        display: -ms-flexbox;
        display: flex;
    }
}

/* advanced search */

section#search{

}
section#search input,
section#search button,
section#search select,
section#search textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: none;
    border-radius: 0;
    font: inherit;
    outline: none;
}
section#search textarea {
    resize: vertical;
}
section#search input[type='submit'],
section#search input[type='button'],
section#search label,
section#search button,
section#search select,
section#search textarea{
    cursor: pointer;
}
section#search select::-ms-expand {
    display: none;
}
section#search input[type='submit']
{
    padding: 0.6em 1em;
    line-height: 100%;
    border-radius: 2px;
    border: 1px solid #ff679d;
    background: #fff;
    transition: .3s ease-in-out;
    text-decoration: none;
    color: #000;
    text-align: center;
    box-sizing: border-box;
    margin-left: 1em;
}
section#search input:hover {
    opacity: 0.7;
    cursor: pointer;
}
section#search select
{
    border: 1px solid #ccc;
    background: #fff;
    box-sizing: border-box;
    padding: 0.5em;
}
section#search select.seriesSelect{
    width: 100%;
}
section#search textarea,
section#search input[type='text'],
section#search input[type='search'],
section#search input[type='email'],
section#search input[type='tel']{
    border: 1px solid #ccc;
    box-sizing: border-box;
    padding: 0.5em;
    background: #fff;
}
section#search dl{
    width: 100%;
}
section#search dt{
    float: left;
    color: #008ac8;
    width: 10em;
    font-weight: bold;
    padding: 0.7em 0;
    line-height: 1;
}
section#search dd{
    margin: 0 0 0 10em;
}
.indexSearch .title{
    color: #008ac8;
    font-weight: bold;
}
.indexSearch ul{
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    margin: 0 -5px;
}
.indexSearch ul li{
    flex-basis: 10%;
    padding: 0 5px;
}
.indexSearch ul li a{
    display: block;
    padding: 10px 5px;
    line-height: 100%;
    border-radius: 2px;
    border: 1px solid #ff679d;
    background: #fff;
    transition: .3s ease-in-out;
    text-decoration: none;
    color: #000;
    text-align: center;
    font-size: 1.8rem;
}
.indexSearch ul li a:hover{
    background: #fff0f6;
    opacity: 0.6;
}

@media screen and (max-width: 720px){
    section#search dt{
        float: none;
        color: #008ac8;
        width: 100%;
        font-weight: bold;
        padding: 0.7em 0;
        line-height: 1;
    } 
    section#search dd{
        margin: 0;
    }
    .indexSearch ul{
        list-style: none;
        display: flex;
        flex-wrap: wrap;
        margin: 0 -5px;
    }
    .indexSearch ul li{
        flex-basis: 20%;
        padding: 0 5px 10px 5px;
    }
}


/*特設*/

.p-lp-character-intro{
    display: flex;
    flex-wrap: wrap;
}

.p-lp-character-intro__img-wrap{
    flex-basis: 90px;
    box-sizing: border-box;
}

.p-lp-character-intro__body{
    flex:1;
    padding-right: 15px!important;
}

/*トップのスライダーの動画*/
.p-main-visual__iframe {
    width: 533px;
}

.p-main-visual__iframe .embed-responsive {
    position: relative;
    display: block;
    overflow: hidden;
    width: 100%;
    padding: 0;
}

.p-main-visual__iframe .embed-responsive-16by9:before {
    padding-top: 56.25%;
}

.p-main-visual__iframe .embed-responsive:before {
    display: block;
    content: "";
}

.p-main-visual__iframe .embed-responsive .embed-responsive-item, .p-main-visual__iframe .embed-responsive embed, .p-main-visual__iframe .embed-responsive iframe, .p-main-visual__iframe .embed-responsive object, .p-main-visual__iframe .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.p-main-visual__iframe .embed-responsive iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}

@media screen and (max-width: 720px){
    .p-main-visual__iframe {
        width: 72vw;
    }

    .slick-slide img {
        max-width: 100vw;
    }
}


/*電子書籍*/

.p-entry__books-column{
	font-size: 1.6rem;
	line-height: 1.6;
	margin: 20px 0 30px 0;
}

article.novel{
	margin: 20px 0;
	padding-bottom: 0;
}

span.label-ebook {
	background: #ff9900 !important;
	color: #fff !important;
}

