@charset "utf-8";

.slider-pro {
    float: left;
    margin-top:5px;
    margin-bottom:20px;
}
.sp-horizontal .sp-previous-arrow {
	left: -20px;
    background-color: #fff;
    border-radius: 20px;
}
.sp-horizontal .sp-next-arrow {
	right: -20px;
    background-color: #fff;
    border-radius: 20px;
}
.fix_banner div {
    margin:20px auto 0;
    display:table;
    border-collapse: separate;
    border-spacing: 5px 0;
}
.fix_banner a {
    display:table-cell;
    width: 33%;
}
.fix_banner a img {
    width:240px;
    margin-bottom:15px;
    border: 1px solid #666;
}
.twitter_window {
    margin-top: 10px;
    float:right;
    width:330px;
    padding:5px;
    border:solid 2px #4ec2dd;
    border-radius: 5px;
}
.sp {
    display:none;
}
h2 {
    font-family: 'Montserrat';
    font-weight: 700;
    font-size: 2.8rem;
    color: #49bee0;
    letter-spacing: 0;
    line-height: 1;
}
h2 span {
    font-weight: 900;
    letter-spacing: -0.5px;
}
h2 small {
    font-size: 1.4rem;
    display: inline-block;
    margin-left: 10px;
    top: -4px;
    position: relative;
}
h2:before {
    content: "";
    width: 50px;
    height: 30px;
    background-image: url(img/common/arrow.png);
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    position: relative;
    top: 5px;
    margin-right: 10px;
}

@media screen and (max-width: 768px) {
    section.topbanner {
        margin:0;
    }
    .slider-pro {
        float:none;
        left: 0;
		margin-bottom: 0;
    }
    .sp-horizontal .sp-previous-arrow, .sp-horizontal .sp-next-arrow {
        display: none;
    }
    .fix_banner {
        margin:20px;
    }
    .fix_banner a img {
        width:100%;
    }
    .sp-button {
        width: 10px;
        height: 10px;
    }
    .twitter_window {
        display: none;
    }
    .sp {
        display: block;
    }
    h2:before {
        width: 38px;
        height: 23px;
    }
    h2 span {
        font-size: 22px;
    }
}


/* ニュース */
.news {
    font-size:1.4rem;
    overflow: hidden;
    display: flex;
    margin-bottom:20px;
}
.news a {
	text-decoration:underline;
}
.news h2 {
    width:30%;
    margin-bottom:0;
	margin-top: 0; 
}
.news dl {
    width:70%;
    margin-top:10px;
}
.news dl dt {
    float:left;
    width:20%;
    font-weight: bold;
    margin-bottom: 10px;
}
.news dl dd {
    float:right;
    width:80%;
    margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
    .news {
        display: block;
    }
    .news dl {
        width:100%;
    }
    .news h2 {
        margin-top: 0;
        margin-bottom: 15px;
        width: 100%;
    }
    .news dl dt {
        clear: both;
        width: 100%;
        margin-right: 3%;
    }
    .news dl dd {
        width:100%;
        font-size:1.4rem;
    }
}


/* 新刊情報 */
.newbooks {
    margin-bottom:50px;
}
.newbooks ul {
    overflow: hidden;
    margin:30px 0 0;
    display: block;
}
.newbooks ul li {
    float:left;
    width:32%;
    margin-right:20px;
}
.newbooks ul li:nth-child(3n) {
    margin-right:0;
}
.newbooks ul li img {
    float:left;
    width:150px;
    margin-right:15px;
    box-shadow: 1px 1px 3px #999;
	margin-bottom: 40px;
}
span.series {
    display:inline-block;
    width:160px;
    padding:2px 5px 1px;
    background-color:#5bc7e6;
    color:#ffffff;
    font-size:1.2rem;
    letter-spacing: 0;
}
span.digital {
    background-color:#c4abff;
}
b {
    display:inline-block;
    margin:10px 0;
    font-weight:bold;
    font-size: 1.4rem;
}
b.this_month {
    color:#ff7bac;
}
b.next_month {
    color:#f9a401;
}
cite {
    font-weight:bold;
    font-size: 1.4rem;
	line-height:1.3;
	display:block;
	margin-bottom:3px;
	margin-top: 5px;
}
.newbooks ul li p {
    font-size:1.3rem;
    margin-bottom:10px;
}
.newbooks ul li p.catch {
    height:auto;
}
a.botton {
    float:left;
    display:block;
    width:160px;
    text-align: center;
    padding:5px;
    border:solid 2px #2aa9ce;
    margin-bottom:5px;
    color:#2aa9ce;
    position:relative;
    transition: opacity 0.7s;
}
a.botton:after {
    content:"＞";
    position:absolute;
    right:3px;
    top:7px;
    font-size:1rem;
    font-weight: bold;
}
a.botton:hover {
    text-decoration: none;
    opacity:0.6;
}

@media screen and (max-width: 768px) {
    .newbooks {
        margin-bottom: 30px;
    }
    .newbooks ul {
        margin-left:0;
        margin-bottom: 10px;
        display: block;
    }
    .newbooks ul li {
        width:100%;
        height: 100%;
        margin-right: 10%;
        margin-bottom: 10%;
    }
    .newbooks ul li p {
        font-size:1.5rem;
    }
    .newbooks ul li img {
        width:45%;
        box-sizing: border-box;
		margin-bottom:5px;
        margin-right: 4vw;
    }
    span.series {
        font-size: 1.5rem;
    }
    .newbooks span.series {
        width:45%;
        margin-top: 5px;
    }
    .newbooks b {
        margin: 5px 0;
        font-size: 1.5rem;
    }
    .newbooks a.botton {
        float: left;
        width: 45%;
        padding: 5px 0;
        margin-right: 1%;
    }
    .newbooks a.botton:after {
        content:none;
    }
    cite {
        font-size: 1.5rem;
    }
    
}

/*  Hugピクシブラインナップ  */
.hug ul {
    margin:20px auto;
    display:table;
}
.hug ul li {
    display:table-cell;
    width:200px;
}
.hug ul li img {
    width:150px;
    box-shadow: 1px 1px 3px #999;
}
.pixivcomic {
    float: right;
    display:block;
    margin:0 auto 50px;
    width:400px;
    border: solid 2px #2aa9ce;
    background-image:url(img/common/pixivcomic.png);
    background-repeat: no-repeat;
    background-position: 15% center;
    height:60px;
    line-height: 60px;
    padding-right:5px;
    transition: opacity 0.7s;
}
.pixivcomic:hover {
    text-decoration: none;
    opacity:0.6;
}

@media screen and (max-width: 768px) {
    .hug ul, .hug ul li {
        display: block;
        margin: 0;
    }
    .hug ul {
        margin-left:5px;
        margin-top: 20px;
    }
    .hug ul li {
        float:left;
        width:45%;
        margin-right: 8%;
        margin-bottom: 20px;
    }
    .hug ul li:nth-child(2n) {
        margin-right:0;
    }
    .hug ul li img {
        width:100%;
    }
    .pixivcomic {
        clear: both;
        width: 260px;
        background-position: 10% center;
        background-size: 100%;
        height: 40px;
        line-height: 40px;
    }
}

/*　タイトル一覧 */
.list {
    font-size:1.3rem;
	margin-bottom:50px;
}
.list ul {
    margin-top:30px;
    margin-bottom: 30px;
    overflow: hidden;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}
.list ul li {
    width:140px;
    margin-right:30px;
}
.list ul li img{
    width:140px;
	box-shadow: 1px 1px 3px #999;
}
.list .series {
    display:block;
    width:120px;
    font-size:1.2rem;
    padding:1px 10px;
    margin:3px 0;
}
.list cite {
    font-size:1.4rem;
    font-weight: bold;
}
@media screen and (max-width: 768px) {
    .list {
        margin-bottom:10px;
    }
    .list ul {
        margin-left:0;
        margin-top: 20px;
        margin-bottom: 0;
    }
    .list ul li {
        width:45%;
        margin-right: 10%;
    }
    .list ul li img {
        width:100%;
    }
    .list ul li {
        margin-bottom: 10%;
    }
    .list .series {
        width:95%;
        margin: 3px 0;
        padding: 3px 5px;
    }
    .list ul li:nth-child(2n) {
        margin-right:0;
    }
    .list cite {
        font-size:1.6rem;
    }
}


.twitter {
    text-align: center;
    margin:20px 0;
}
@media screen and (max-width: 768px) {
    .twitter {
        margin: 10px 20px 20px;
    }
    .twitter img {
        width: 80%;
    }
}

.mg10 {
	margin-bottom:10px !important;
}
@media screen and (max-width: 768px) {
	.mg10 {
		margin-bottom:0 !important;
	}
}

/*　もっと見るボタン */
a.more {
    float:right;
    margin:0 auto 30px;
    font-size: 13px;
    color: #49bee0;
    font-weight: bold;
}
a.more:hover {
    text-decoration: underline;
    opacity:0.6;
}
a.more:after {
    top: 10px;
    right: 5px;
}