@charset "utf-8";
/* CSS Document */
@media screen and (max-width:1350px){
header .slider-top .slick-slide img{ width: 900px; }
header .slider-top .slick-arrow.slick-next { left: 935px; /*width: 30px; height: 30px;*/ }
header .slider-top .slick-arrow.slick-prev { right: 935px; /*width: 30px; height: 30px;*/ }
}
@media screen and (max-width:1050px){
header .slider-top .slick-slide img{ width: 700px; }
header .slider-top .slick-arrow.slick-next { right: 20px; left: inherit; width: 30px; height: 30px; }
header .slider-top .slick-arrow.slick-prev { left: 20px; right: inherit; width: 30px; height: 30px; }
header .search_area{
    bottom: -20px;
    height: auto;
}
header .search_area input[type='text'],
header .search_area input[type='submit'] { height: 55px;}

.top_conts01 .topics_btn ul li a,
.top_conts02 .book_sch .topics_btn ul li a { font-size: 12px; }




@media screen and (max-width:1180px){
header .right_clmn nav > ul > li a { padding: 28px 10px; }
}

@media screen and (max-width:1000px){
header .right_clmn{display: none;}
header #sp_btn{
    display: block;
    background: url(../images/common/sp_btn.png) no-repeat center;
    background-size: 60%;
    width: 50px;
    height: 50px;
    float: right;
    cursor: pointer;
}
header #sp_btn.actv{
    background: url(../images/common/sp_btn02.png) no-repeat center;
    background-size: 60%;
}
header .head_bar .logo_area {
    max-width: 200px;
    width: 200px;
    padding: 15px 0 0 10px;
}

.sp_nav{
    display: none;
    position: fixed;
    top: 50px;
    right: -300px;
    -webkit-overflow-scrolling: touch;
    overflow-y: scroll;
    overflow-x: scroll;
    height: 100%;
    width: 100%;
    opacity: 1;
    -webkit-transition: 0.4s;
       -moz-transition: 0.4s;
         -o-transition: 0.4s;
        -ms-transition: 0.4s;
            transition: 0.4s;
    z-index: 10000;
    width: 83%;
    max-width: 350px;
    background: #fff;
}
.sp_nav nav{
    padding: 10px;
}

.sp_nav .hover_btn{
    margin-bottom: 10px;
}
.sp_nav .hover_btn > a{
    border: 1px solid #ccc;
    display: block;
}
.sp_nav .layer01 { padding-bottom: 100px; }
.sp_nav .layer01 > li{
    margin-bottom: 10px;
    border-bottom: 1px solid #ddd;
    overflow: hidden;
}
.sp_nav .layer01 > li:nth-child(4){ border-bottom: none; margin-bottom: 40px; }
.sp_nav .layer01 > li:last-child{border-bottom: none;}
.sp_nav .layer01 > li > a{
    display: block;
    text-align: left;
    padding: 5px 35px 5px 10px;
    position: relative;
    font-size: 15px;
    font-weight: bold;
}
.sp_nav .layer01 > li > a::after{
    position: absolute;
    content: " ";
    top: -6px;
    right: 15px;
    bottom: 0;
    margin: auto;
    display: block;
    width: 7px;
    height: 7px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transition: 0.4s;
       -moz-transition: 0.4s;
         -o-transition: 0.4s;
        -ms-transition: 0.4s;
            transition: 0.4s;
}
.sp_nav .layer01 > li > a.actv::after{
    -webkit-transform: rotate(-50deg);
    -moz-transform: rotate(-50deg);
    -ms-transform: rotate(-50deg);
    transform: rotate(-50deg);
    top: 1px;
}
.sp_nav .layer01 > li > a::before{
    position: absolute;
    content: " ";
    top: -2px;
    right: 9px;
    bottom: 0;
    margin: auto;
    display: block;
    width: 20px;
    height: 20px;
    background: #001365;
}

.sp_nav .layer02 > li{
    margin-bottom: 5px;
}
.sp_nav .layer02 > li > a {
    font-size: 14px;
    text-align: left;
    display: block;
    padding: 2px 10px 2px 30px;
    position: relative;
    font-weight: bold;
}
.sp_nav .layer02 > li > a::after{
    position: absolute;
    content: " ";
    top: 0;
    left: 12px;
    bottom: 0;
    margin: auto;
    display: block;
    width: 8px;
    height: 1px;
    background: #000;
}
.sp_nav .layer03 {
    background: #f5f5f5;
    border-radius: 3px;
    margin: 0 0 15px 10px;
    padding: 10px 0;
}
.sp_nav .layer03 > li{
    margin-bottom: 5px;
}
.sp_nav .layer03 > li:last-child{ margin-bottom: 0; }
.sp_nav .layer03 > li > a {
    font-size: 14px;
    text-align: left;
    display: block;
    padding: 2px 10px 2px 20px;
    position: relative;
    line-height: 25px;
}
.sp_nav input[type="text"] {
    border-radius: 5px 0 0 5px;
    height: 40px;
    font-size: 17px;
    padding-left: 35px;
    border: 1px solid #ddd;
    background: url(../images/common/icon_search02.png) no-repeat left 10px center #fff;
    background-size: 17px;
    width: 77%;
    float: left;
}
.sp_nav input[type="submit"]{
    -webkit-appearance: none;
    float: right;
    width: 23%;
    border-radius: 0 5px 5px 0;
    height: 40px;
    border: none;
    background: #000f7d;
    color: #fff;
    font-size: 11px;
    line-height: 12px;
    padding: 0;
}


.sp_nav .layer01 > li:nth-child(4) > a::before,
.sp_nav .layer01 > li:nth-child(4) > a::after{display: none;}

.sp_nav a:link{ opacity: 1; }

.clear_btn{
    background: rgba(0,0,0,0.7);
    z-index: 1000;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50px;
    left: 0;
}


.layer02{display: none;}
.clear_btn.actv{display: block;}
.sp_nav.actv{ display: block; }
.sp_nav.actv02{ right: 0; }
body.actv{  position: fixed;
  width: 100%;
  height: 100%;}

.scroll_area{
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-x: scroll;
}


}


@media screen and (max-width:780px){
body {
	margin: 0;
	padding: 0;
	background:#ffffff;
	color: #020202;
	font-family: 'Noto Sans Japanese', serif;
	font-size: 16px;
	line-height: 150%;
	text-align: center;
	width: 100%;
	min-width: auto;
	height: 100%;
}
.sn{display:none;}
.pn{display: block;}


/*=============================
	common setting
===============================*/
input,textarea,select{border-radius: 0; border: 1px solid #ccc;}
/* header
-------------------------*/
.page_ttl h2 span { font-size: 23px; letter-spacing: 3px;}
.page_ttl h2 {
    font-size: 12px;
    padding: 25px 0;
    line-height: 25px;
    letter-spacing: 3px;
}

/* footer
-------------------------*/
.list_area > li > a:link:link {
    opacity: 1;
}
footer .ft_logo { margin-bottom: 0px; }
footer .ft_logo img,
footer .ft_logo a{
    display: block;
    width: 100%;
    max-width: 200px;
}
footer .ft_nav .inner1000{padding: 0; }
footer .ft_logo .inner1000{padding: 0 15px; }
footer .list_area {
    display: block;
    width: 100%;
    padding: 0;
}
footer .list_area01 {
    width: 100%;
    padding-left: 0;
}
footer .list_area > li {
    /*border-bottom: 1px solid #ccc;*/
    float: none;
    width: 100%;
}

footer .list_area01 .list_area_in > li { float: none; width: 100%; }
footer .list_area01 .list_area_in > li:nth-child(3),
footer .list_area01 .list_area_in > li:nth-child(4),
footer .list_area01 .list_area_in > li:nth-child(5){display: block;}
footer .list_area01 .list_area_in { float: none; width: 100%; padding-bottom: 15px; }
footer .list_area_in > li > a,
footer .list_area > li > a {
    display: block;
    font-size: 15px;
    font-weight: bold;
    position: relative;
    border-bottom: 1px solid #ccc;
    padding-left: 0;
    width: 100%;
    line-height: 25px;
    margin-bottom: 0;
    padding: 10px 30px 10px 15px;
}

footer .list_area_in > li > a.pn{ display: block; }
footer .list_area_in > li > a.sn{ display: none; }
footer .list_area_in > li > a::after,
footer .list_area > li > a::after {
    position: absolute;
    content: " ";
    top: 0;
    right: 10px;
    left: inherit;
    bottom: 0;
    margin: auto;
    display: block;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    border-top: 1px solid #001365;
    border-right: 1px solid #001365;
        -webkit-transition: 0.4s;
       -moz-transition: 0.4s;
         -o-transition: 0.4s;
        -ms-transition: 0.4s;
            transition: 0.4s;
}
footer .list_area03.list_area > li:nth-child(1) > a,
footer .list_area03.list_area > li:nth-child(2) > a,
footer .list_area03.list_area > li:nth-child(3) > a {
    border-bottom: none;
}
footer .list_area_in > li > a{ color: #000f7d; }
footer .list_area_in > li > a::after{ display: none; }
footer .list_area_in > li > a::before {
    position: absolute;
    content: " ";
    top: 0;
    right: 10px;
    left: inherit;
    bottom: 0;
    margin: auto;
    display: block;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    border-top: 1px solid #001365;
    border-right: 1px solid #001365;
    -webkit-transition: 0.4s;
    -moz-transition: 0.4s;
    -o-transition: 0.4s;
    -ms-transition: 0.4s;
    transition: 0.4s;
}
footer .list_area_in > li > a.rank_link { color: #000; }
footer .list_area_in > li > a.rank_link::before{
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
footer .list_area_in > li > a.actv::before,
footer .list_area_in > li > a.actv::after,
footer .list_area > li > a.actv::after {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
footer .list_area_in_ano > li > a{color: #000; font-weight: 400;}
footer .list_area_in_ano > li > a::before{
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
footer .list_area_in02{ display: none; }
footer .list_area_in02 > li > a {
    display: block;
    font-size: 15px;
    font-weight: 400;
    position: relative;
    border-bottom: 1px solid #ccc;
    padding-left: 0;
    width: 100%;
    line-height: 25px;
    margin-bottom: 0;
    padding: 10px 30px 10px 15px;
}
footer .list_area_in02 > li > a::before{
    position: absolute;
    content: " ";
    top: 0;
    right: 10px;
    left: inherit;
    bottom: 0;
    margin: auto;
    display: block;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 1px solid #001365;
    border-right: 1px solid #001365;
    -webkit-transition: 0.4s;
    -moz-transition: 0.4s;
    -o-transition: 0.4s;
    -ms-transition: 0.4s;
    transition: 0.4s;  
}

footer .list_area03 { padding: 10px 15px; }
footer .list_area03.list_area > li:nth-child(1),
footer .list_area03.list_area > li:nth-child(2),
footer .list_area03.list_area > li:nth-child(3),
footer .list_area03.list_area > li:nth-child(4),
footer .list_area03.list_area > li:nth-child(5),
footer .list_area03.list_area > li:nth-child(6) {
    border-bottom: none;
    display: inline-block;
    vertical-align: top;
    margin: 0;
    padding: 5px 0;
    width: auto;
}
footer .list_area03.list_area > li:nth-child(1) > a::after,
footer .list_area03.list_area > li:nth-child(2) > a::after,
footer .list_area03.list_area > li:nth-child(3) > a::after,
footer .list_area03.list_area > li:nth-child(4) > a::after,
footer .list_area03.list_area > li:nth-child(5) > a::after,
footer .list_area03.list_area > li:nth-child(6) > a::after {
    display: none;
}
footer .list_area03.list_area > li:nth-child(1) > a,
footer .list_area03.list_area > li:nth-child(2) > a,
footer .list_area03.list_area > li:nth-child(3) > a,
footer .list_area03.list_area > li:nth-child(4) > a,
footer .list_area03.list_area > li:nth-child(5) > a,
footer .list_area03.list_area > li:nth-child(6) > a {
    font-weight: 400;
    font-size: 11px;
    padding: 3px 10px 3px 3px;
    margin: 0;
    line-height: 15px;
    border-right: 1px solid #ccc;
}
footer .list_area03.list_area > li:nth-child(6) > a{border-right: none;}
footer .list_area03.list_area > li:nth-child(7){
    border-bottom: none;
    text-align: center;
    padding-top: 0;
    margin-top: 0;
}
footer .list_area03.list_area > li:nth-child(7)::after{display: none;}

.list_area_in{
    display: none;
}

/* bread crumbs
-------------------------*/	
.bread{ padding: 2px 10px }
.bread .bread_crumb li a{
    font-size: 11px;
    padding-right: 15px;
    }
.bread .bread_crumb li a:last-child{
    padding-right: 22px;
    }
	
/* parts
-------------------------*/
.ttl01 {
    font-size: 18px;
    line-height: 25px;
    text-align: left;
    background: #000f7d;
    color: #fff;
    padding: 5px 10px;
    position: relative;
    font-weight: 400;
}
.ttl01::after { top: -5px; height: 2px; }
header .ttl01 { margin-top: 20px; }
.ttl01.ttl01_detail{ margin-top: 20px; }
.ttl02 {
    font-size: 16px;
    line-height: 25px;
    padding-left: 20px;
}
.ttl02::after {
    top: 5px;
    width: 15px;
    height: 15px;
}
.ttl03 {
    font-size: 16px;
    line-height: 25px;
}
.ttl04 {
    font-size: 15px;
    line-height: 25px;
    padding-left: 15px;
}
.ttl04::after {
    top: 7px;
    width: 10px;
    height: 10px;
}
.ttl05 {
    letter-spacing: 5px;
    font-size: 12px;
    line-height: 22px;
}
.ttl05 span {
    color: #000f7d;
    font-size: 22px;
}
.ttl06 { padding-bottom: 7px; }
.ttl06 span {
    border-left: 3px solid #000f7d;
    font-size: 16px;
    line-height: 25px;
    padding-left: 10px;
}

/*  WPページャー
--------------------------------*/
.wp-pagenavi a, .wp-pagenavi span {
    padding: 6px 8px;
    margin: 0 1px;
    font-size: 10px;
}

/*テキストと画像のレイアウト*/
.w_clmn01 li {
    float: none;
    width: 100%;
}
.w_clmn01 li:last-child {
    font-size: 13px;
    line-height: 22px;
    width: 100%;
    float: none;
    margin-top: 10px;
}
.w_clmn02 li {
    float: none;
    width: 100%;
    font-size: 13px;
    line-height: 22px;
}
.w_clmn02 li:last-child {
    width: 100%;
    float: none;
    margin-top: 10px;
}
.w_clmn03 li {
    font-size: 13px;
    line-height: 21px;
}
.w_clmn04 li {
    float: left;
    width: 32%;
    margin-right: 2%;
    font-size: 10px;
    line-height: 17px;
}
.sin_clmn p {
    font-size: 13px;
    line-height: 21px;
    margin-top: 10px;
}

/*ボタンのパターン*/
.btn01 a { padding: 10px 10px; }
.btn02 a { padding: 10px 10px; }
.btn03 a { padding: 10px 10px; }
.btn04 a { padding: 10px 10px; }
.btn05 a { font-size: 15px; padding: 15px 10px; }
.btn06 a { font-size: 13px; padding: 10px 15px; }
.btn06 a span { padding-right: 15px; }
.btn07 a { font-size: 13px; padding: 10px 15px; }
.btn07 a span { padding-right: 15px; }

/*ファイルのリスト*/
.pdf_link a { font-size: 13px; line-height: 21px; }
.exls_link a { font-size: 13px; line-height: 21px; }
.word_link a { font-size: 13px; line-height: 21px; }

/*書籍リンク*/
.book_list li { width: 49%; margin: 0 2% 20px 0; }
.book_list li:nth-child(2n) { margin-right: 0; }
.book_list .book_fr { padding: 5px 15px; height: 180px; }
.book_list .book_ttl { font-size: 14px; line-height: 21px; }
.book_list .book_fr { padding: 5px 5px; height: 160px; }
.book_list .book_author.book_price,
.book_list .book_author { font-size: 11px; line-height: 17px; padding-left: 37px; }
.book_list .book_author::after { font-size: 11px; }
/*QA*/
.qa_area .question::before { width: 37px; }
.qa_area .question::after {
	font-size: 23px;
    height: 23px;
    width: 37px;
}
.qa_area .question {
    padding: 10px 25px 10px 50px;
    font-size: 13px;
    line-height: 21px;
    background: url(../images/common/icon_plus.png) no-repeat right 10px center #f0f3f8;
    background-size: 15px;
}
.qa_area .question.actv { background: url(../images/common/icon_minus.png) no-repeat right 10px center #f0f3f8; background-size: 15px; }
.qa_area .answer::before {
    width: 37px;
    font-size: 23px;
    padding: 0;
    text-align: center;
}
.qa_area .answer {
    padding: 0 10px 0 50px;
    font-size: 13px;
    line-height: 21px;
}


/*=============================
    TOP-pade setting
===============================*/

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

header .slider-top.sn{ display: none; }
header .slider-top-sp.pn{ display: block; }
header .slider-top-sp .slick-slide img { height: auto; width: 100%; }
header .search_area {
    position: inherit;
    left: 0;
    right: 0;
    bottom: 0;
    height: auto;
    max-width: 100%;
    background: #001365;
    padding: 15px 10px;
    border-radius: 0;
    overflow: hidden;
    -webkit-transform: inherit;
    -moz-transform: inherit;
    -ms-transform: inherit;
    -o-transform: inherit;
    transform: inherit;
}
header .search_area input[type='text'] {
    -webkit-appearance: none;
    width: 77%;
    border-radius: 5px 0 0 5px;
    height: 40px;
    font-size: 16px;
    padding-left: 30px;
    padding-top: 0;
    background: url(../images/common/icon_search02.png) no-repeat left 7px center #fff;
    background-size: 18px;
}
header .search_area input[type='submit'] {
    -webkit-appearance: none;
    width: 23%;
    border-radius: 0 3px 3px 0;
    height: 40px;
    background: #eeeeee;
    color: #000;
    font-size: 12px;
    padding: 0;
}
header .search_area input::placeholder{
    font-size: 16px;
    line-height: 22px;
}

/*  top_conts01
-------------------------*/
.top_conts01 {
    margin-top: 30px;
    margin-bottom: 10px;
    padding-bottom: 0;
    background: none;
}
.top_conts01 .ttl05 {
    padding-top: 0;
    background: none;
    margin-bottom: 20px;
}
.top_conts01 .topics_btn {
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-y: scroll;
    overflow-x: scroll;
    background: #f0f3f8;
    border-bottom: 2px solid #000f7d;
}
.top_conts01 .topics_btn ul {
    width: 535px;
    padding: 5px;
    text-align: left;
}
.top_conts01 .topics_btn ul li:last-child,
.top_conts01 .topics_btn ul li{
    display: inline-block;
    float: none;
    vertical-align: middle;
    width: auto;
    text-align: center;
}
.top_conts01 .topics_btn ul li a {
    border: none;
    background: none;
    display: inline-block;
    padding: 3px 15px;
    vertical-align: middle;
    border-radius: 15px;
    font-size: 12px;
}
.top_conts01 .topics_btn ul .fade_btn.active01 { background: #000f7d; }
.top_conts01 .topics_btn ul li:last-child a{ border-right: none; }
.top_conts01 .fade_area { min-height: 100px; padding: 15px 10px; background: #fff; }
.top_conts01 .topic_list li {
    float: none;
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
    border-bottom: 1px solid #ccc;
    padding-bottom: 15px;
}
.top_conts01 .topic_list li a{overflow: hidden;}
.top_conts01 .topic_list .img_bg {
    margin-bottom: 0;
    box-shadow: none;
    float: left;
    width: 100px;
}
.top_conts01 .topic_list .right{
    float: right;
    width: calc(100% - 110px);
}
/*  top_conts02
------------------------*/
.top_conts02 { padding: 25px 0 35px 0; }
.top_conts02 .ttl05 {
    line-height: 25px;
    position: inherit;
    top: 0;
    left: 0;
    text-align: center;
    padding: 0 10px;
}
.top_conts02 .new_magaz {
    max-width: 100%;
    margin: 30px 10px 65px 10px;
    padding-bottom: 30px;
}
.top_conts02 .new_magaz h4 {
    margin-top: -20px;
    margin-bottom: 25px;
    text-align: center;
}
.top_conts02 .new_magaz h4 span {
    font-size: 16px;
    padding: 3px 5px;
    margin-right: 7px;
}
.top_conts02 .new_magaz h4 b { padding: 10px; }
.top_conts02 .new_magaz h4 b span:last-child{ margin-right: 0; }
.top_conts02 .new_magaz .right,
.top_conts02 .new_magaz .left {
    float: none;
    width: 100%;
}
.top_conts02 .new_magaz .left{ margin-bottom: 15px; }
.top_conts02 .new_magaz .w_clmn { max-width: 300px; display: block; margin: 0 auto; }
.top_conts02 .new_magaz .left.w_clmn{ border-bottom: 4px double #000; margin-bottom: 25px; padding-bottom: 25px; }
.top_conts02 .new_magaz .w_clmn .img_clmn { width: 100px;}
.top_conts02 .new_magaz .w_clmn .txt_list { width: calc(100% - 110px); }
.top_conts02 .new_magaz .w_clmn .detail,
.top_conts02 .new_magaz .w_clmn .subscribe { display: inline-block; width: 47%; max-width: 100px; margin-bottom: 0; }
.top_conts02 .new_magaz .detail{margin-right: 3%;}
.top_conts02 .new_magaz .w_clmn .detail a,
.top_conts02 .new_magaz .w_clmn .subscribe a{ width: 100%; font-size: 12px; padding: 6px 3px; }
.top_conts02 .new_magaz .w_clmn .ttl {
    font-size: 20px;
    line-height: 25px;
    margin-bottom: 5px;
}
.top_conts02 .new_magaz .w_clmn .ttl a { vertical-align: inherit; }
.top_conts02 .new_magaz .w_clmn .about {
    font-size: 13px;
    line-height: 21px;
    margin-bottom: 5px;
}
.top_conts02 .new_magaz .w_clmn .price { font-size: 16px; margin-bottom: 5px; }
.top_conts02 .book_sch h4 b { font-size: 33px; }
.top_conts02 .book_sch h4 {
    padding: 0 35px;
    font-size: 15px;
    margin-bottom: 20px;
    background: url(../images/common/icon_thr.png) no-repeat left center,
 url(../images/common/icon_thr.png) no-repeat right center;
    background-size: 17px;
}
.top_conts02 .book_sch .topics_btn {
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-y: scroll;
    overflow-x: scroll;
    background: #fff;
    border-bottom: 2px solid #000f7d;
}
.top_conts02 .book_sch .topics_btn ul {
    width: 700px;
    padding: 5px;
    text-align: left;
}
.top_conts02 .book_sch .topics_btn ul li:last-child,
.top_conts02 .book_sch .topics_btn ul li{
    display: inline-block;
    float: none;
    vertical-align: middle;
    width: auto;
    text-align: center;
}
.top_conts02 .book_sch .topics_btn ul li a {
    border: none;
    background: none;
    display: inline-block;
    padding: 3px 12px;
    vertical-align: middle;
    border-radius: 15px;
    font-size: 12px;
}

.top_conts02 .book_sch .topics_btn ul .fade_btn02.active01 { background: #000f7d; }
.top_conts02 .book_sch .topics_btn ul li:last-child a{ border-right: none; }
.top_conts02 .book_sch .fade_area02 { min-height: 100px; padding: 15px 10px 0 10px; background: none; }
.top_conts02 .book_sch .topic_list{ padding: 0; }
.top_conts02 .book_sch #fade_area05_a .topic_list li,
.top_conts02 .book_sch .topic_list li:nth-child(8n),
.top_conts02 .book_sch .topic_list li {
    width: 31%;
    margin-right: 0;
    border-bottom: none;
    padding-bottom: 15px;
    margin: 0 3.5% 15px 0;
    display: block;
    float: left;
}
.top_conts02 .book_sch #fade_area05_a .topic_list li:nth-child(3n),
.top_conts02 .book_sch .topic_list li:nth-child(3n){margin-right: 0;}
.top_conts02 .book_sch .topic_list li a{overflow: hidden;}
.top_conts02 .book_sch .topic_list .img_bg {
    margin-bottom: 0;
    box-shadow: none;
    float: left;
    width: 100%;
}
.top_conts02 .book_sch .topic_list .right{
    float: right;
    width: calc(100% - 110px);
}
.top_conts02 .book_sch #fade_area07_a .topic_list li a{ overflow: inherit;}
.top_conts02 .book_sch #fade_area07_a .topic_list li{ width: 25%;}
.top_conts02 .book_sch #fade_area07_a .topic_list li:nth-child(1){ width: 40%; }
.top_conts02 .book_sch #fade_area07_a .topic_list li:nth-child(1) a::after{
    content: "1";
    font-family: 'Cabin', sans-serif;
    color: #fff;
    font-size: 17px;
    font-style: italic;
    position: absolute;
    top: -14px;
    left: -12px;
    background: url(../images/common/icon_crown.png) no-repeat center;
    width: 46px;
    height: 32px;
    font-weight: bold;
    line-height: 49px;
    text-align: center;
    padding-right: 4px;
    background-size: cover;
}
.top_conts02 .book_sch #fade_area07_a .topic_list li:nth-child(3) a::after,
.top_conts02 .book_sch #fade_area07_a .topic_list li:nth-child(2) a::after{
    position: absolute;
    top: 0;
    left: 0;
    font-style: italic;
    padding: 0px 3px 0 0;
    color: #fff;
    width: 24px;
    height: 40px;
    font-size: 16px;
}
/*  top_conts03
------------------------*/
.top_conts03 { padding: 35px 10px; background: none; }
.top_conts03 .top_bnr_list li:nth-child(1),
.top_conts03 .top_bnr_list li:nth-child(2) {
    width: 100%;
    margin: 0 0 2% 0;
}
.top_bnr_list li:nth-child(2),
.top_bnr_list li:nth-child(3n+5),
.top_bnr_list li {
    display: block;
    float: left;
    width: 49%;
    margin: 0 2% 2% 0;
}
.top_bnr_list li:nth-child(2n+4){
    margin-right: 0;
}

/*  top_conts04
------------------------*/
.top_conts04 { background: #f2f3f8; padding: 30px 10px 50px 10px; }
.top_conts04 .ttl05{ font-size: 12px; letter-spacing: 2px; line-height: 23px; }
.top_conts04 .ttl05 span { font-size: 20px; letter-spacing: 2px; }
.top_conts04 .timeline { margin-bottom: 30px; }
.top_conts04 .timeline li { float: none; width: 100%; }
.top_conts04 .timeline li:last-child { float: none; margin-top: 10px; }

.top_conts04 .sns_btn li {
    display: inline-block;
    width: 73px;
    margin: 0 5px;
}
.top_conts04 .sns_btn li a{ border-radius: 5px; padding: 3px 0;}
.top_conts04 .sns_btn li a span{
    padding-top: 30px;
    display: block;
    font-size: 15px;
}
.top_conts04 .sns_btn li:nth-child(1) a span {
    background: url(../images/common/icon_tw01.png) no-repeat center top;
    padding-left: 0;
}
.top_conts04 .sns_btn li:nth-child(2) a span {
    background: url(../images/common/icon_fb01.png) no-repeat center top;
    padding-left: 0;
}
.top_conts04 .sns_btn li:nth-child(3) a span {
    background: url(../images/common/icon_yt01.png) no-repeat center top;
    padding-left: 0;
}

/*=============================
    detail_book-pade setting
===============================*/
header.mb15{
	margin-bottom: 15px;
}

.detail_book01{
	margin: 15px 0 30px 0;
    padding: 0;
}
.detail_book01 .left,
.detail_book01 .right{
	float: none;
	width: 100%;
	padding: 10px;
}
.detail_book01 .left .thum,
.detail_book01 .left .details{
	float: none;
}
.detail_book01 .left .details{
	width: 100%;
}
.detail_book01 .left .thum{
	width: 45%;
	margin: 0 auto 30px;
}
.detail_book01 .left .details dl{
	padding-bottom: 0; 
    margin-bottom: 0;
    position: relative;
}
.detail_book01 .left .details dl:first-of-type{
	border-top: solid 1px #efefef;
}
.detail_book01 .left .details dl dt,
.detail_book01 .left .details dl dd{
	vertical-align: top;
}
.detail_book01 .left .details dl dt{
	font-size: 13px;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    margin: 0;
}
.detail_book01 .left .details dl dd{
	font-size: 13px;
    padding-left: 110px;
    width: 100%;
}
.detail_book01 .left .details .price b{
	font-size: 1.2em
}
.detail_book01 .left .btn08{
	max-width: 230px;
	margin: 30px auto;
}
.detail_book01 .left .btn08 a{
	font-size: 14px;
	border-radius: 4px;
}
.detail_book01 .left .btn08 a span{
	padding: 5px 18px 5px 30px;
}
.detail_book01 .right{
	width: calc(100% - 20px);
	margin: 0px 10px;
	padding: 20px 20px 8px;
}
.detail_book01 .right .huki{
	font-size: 14px;
}
.detail_book01 .right .huki:before{
	bottom: -11px;
	margin-left: -4px;
	border: 3px solid transparent;
    border-top: 8px solid #FFF;
}
.detail_book01 .right .huki:after{
	bottom: -13px;
 	margin-left: -4px;
	border: 3px solid transparent;
    border-top: 8px solid #f3632a;
}
.detail_book01 .right ul li{
	margin: 0 4% 7% 0;
}
.detail_book01 .left .details .btn_w {
    max-width: 100%;
    margin-top: 15px;
}
.detail_book01 .details .btn_tei a { padding: 10px 10px; font-size: 14px; }
.detail_book01 .details .btn_den a { font-size: 14px; padding: 10px 10px;}
.detail_book01 .details .btn_den span {
    background: url(../images/common/icon_tuch.png) no-repeat left center;
    padding: 10px 10px 10px 28px;
    background-size: 21px;
}
.detail_book01 .right.right_wt .right_ttl { font-size: 16px; margin-bottom: 5px; }

.detail_book01 .left .details .gekkan_ttl img.sio { margin: 0 auto;}
.detail_book01 .left .details .gekkan_ttl .pumpkin{　font-size: 35px;　}
.detail_book01 .left .details .gekkan_ttl {
    margin-bottom: 10px;
    text-align: center;
}
.detail_book02{
	padding: 0 10px;
}

.detail_book02 .tab_area{
	border: none;
	margin-bottom: 15px;
	padding: 0;
}
.detail_book02 .tab_area ul li{
	width: 49%;
	border: none;
	margin-bottom: 10px;
    vertical-align: top;
}
.detail_book02 .tab_area ul li:last-child{
	border-right: none;
}
.detail_book02 .tab_area ul li a{
	font-size: 13px; 
	padding: 10px;
	border: solid 1px #ccc;
}
.detail_book02 .tab_area ul li a::after{
	right: 10px;
	left: unset;
    bottom: 45%;
}
.detail_book02 .blue_bg{
	padding: 25px 15px;
}
.detail_book02 .white_bg{
	padding: 15px 10px;
	margin-bottom: 25px;
}
.detail_book02 .white_bg:last-of-type{
	margin-bottom: 0;
}

.detail_book02 .ttl02{
	margin-bottom: 10px; 
}
.detail_book02 #tab02 .left,
.detail_book02 #tab02 .right,
.detail_book02 #tab03 .left,
.detail_book02 #tab03 .right{
	float: none;
}
.detail_book02 #tab02 .left,
.detail_book02 #tab03 .left{
	width: 100%;
}
.detail_book02 #tab03 .right{
	width: 33%;
}
.detail_book02 #tab_a, .detail_book02 #tab_a .ttl03 { margin-bottom: 5px;}
.detail_book02 #tab_a .btn05 { margin: 15px auto 0 auto; }
.detail_book02 #tab_a .about_txt { font-size: 14px; }
.detail_book02 .in_table{
	padding: 0; 
}
.detail_book02 .in_table .table01{
	border-top: none;
}
.detail_book02 .in_table .table01 caption{
	font-size: 13px; 
	margin-bottom: 10px;
}
.detail_book02 .in_table .table01,
.detail_book02 .in_table .table01 tbody,
.detail_book02 .in_table .table01 caption,
.detail_book02 .in_table .table01 tr,
.detail_book02 .in_table .table01 td:nth-child(1),
.detail_book02 .in_table .table01 td:nth-child(2){
	display: block;
	width: 100%;
	font-size: 13px;
}
.detail_book02 .in_table .table01 tr{
	margin-bottom: 20px;
}
.detail_book02 .in_table .table01 td:nth-child(1),
.detail_book02 .in_table .table01 td:nth-child(2){
	padding: 0;
}
.detail_book02 .in_tabl .table01 .sex label{
	font-size: 13px; 
}
.detail_book02 .in_table .policy_txt{ padding: 0 0 20px 0; }
.detail_book02 .table01 input[type="text"], 
.detail_book02 .table01 input[type="email"],
.detail_book02 .table01 select{
	margin-bottom: 8px;
}
.detail_book02 .table01 .opinion textarea{
	height: 200px;
}
.detail_book02 .table01 .know textarea,
.detail_book02 .table01 .impression textarea{
	height: 120px;
}
.detail_book02 .policy{
	font-size: 12px;
	line-height: 2;
	margin-bottom: 50px;
}
.detail_book02 input[type="submit"]{
	margin-bottom: 20px;
	font-size: 13px;
}
.detail_book03 .ttl04{
	margin-bottom: 0;
}
.detail_book03 .genre dl{
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: dotted 1px #ccc;
}
.detail_book03 .genre dl:first-of-type{
	border-top: dotted 1px #ccc;
}
.detail_book03 .genre dl dt{
	font-size: 11px;
	vertical-align: top;
}
.detail_book03 .genre dl dd{
	font-size: 12px;
	vertical-align: top;
}
/*=============================
    authors-pade setting
===============================*/
    .authors { background: #f0f3f8; padding: 30px 15px; }
    .authors .white_bg { padding: 25px 15px; }
    .authors .initials {
    width: 47%;
    margin-right: 2%;
    margin-bottom: 30px;
    }
    .authors .initial_list {
    padding: 0 10px;
    margin-bottom: 25px;
    }
    .authors .initial_list li {
    display: inline-block;
    width: 18%;
    margin: 5px 0;
    }
    .authors .initial_list li a {
    font-size: 15px;
    line-height: 20px;
    padding: 0 5px 0 0;
    }
    .authors .initial_list li:nth-child(5) a{border-right: none;}
    .authors .authors_in .initials:nth-child(2n){margin-right: 0; }
    .authors .initials h3 { font-size: 17px; margin-bottom: 10px; }
    
/*=============================
    detail_author-pade setting
===============================*/
.detail_author { background: #f0f3f8; padding: 30px 15px; }
.detail_author .white_bg { padding: 25px 15px 40px 15px; }
.detail_author .ttl01 span{ font-size: 13px; display: block; }
.detail_author .ttl01 { margin-bottom: 15px; }
.detail_author .prof_pic { margin: 0 15px 10px 0; }
.detail_author .detail_txt { font-size: 13px; line-height: 20px; }
.detail_author02 { margin-top: 25px; }
.detail_author02 .ttl04 { margin-bottom: 15px; }
.detail_author02 .book_list { margin-bottom: 30px; width: 800px; }
.detail_author02 .book_list li {
    float: left;
    width: 24%;
    margin: 0 1.3% 0 0;
    text-align: left;
}
.detail_author02 .book_list li:last-child{ margin: 0 0 0 0; }

/*=============================
    company-pade setting
===============================*/
    .company01 { margin-top: 30px; }
    .company01 .index_list li:nth-child(3n),
    .company01 .index_list li { width: 49%; margin: 0 2% 20px 0; }
    .company01 .index_list li:nth-child(2n){ margin-right: 0; }
    .company01 .index_list li a { padding: 10px 10px 35px 10px; }
    .company01 .index_list li .cap {
        font-size: 14px;
        line-height: 20px;
        padding-bottom: 5px;
        margin-bottom: 5px;
    }
    .company01 .index_list li .subtxt { font-size: 12px; line-height: 20px; }
    .company01 .index_list li .bt_cap {
        bottom: 5px;
        right: 10px;
        font-size: 12px;
        padding-right: 10px;
        line-height: 25px;
    }




/*=============================
    topics-pade setting
===============================*/
.topics_arcv{margin-top: 35px;}
.topics_arcv .topics_btn {
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-y: scroll;
    overflow-x: scroll;
    background: none;
    background: #f0f3f8;
    border-bottom: 2px solid #000f7d;
    margin-bottom: 20px;
    margin-top: 0;
    padding: 0;
}
.topics_arcv .topics_btn ul {
    min-width: 570px;
    padding: 10px 5px;
    text-align: left;
    width: 100%;
}
.topics_arcv .topics_btn ul li:last-child,
.topics_arcv .topics_btn ul li{
    display: inline-block;
    float: none;
    vertical-align: middle;
    width: auto;
    text-align: center;
}
.topics_arcv .topics_btn ul li a {
    border: none;
    background: none;
    display: inline-block;
    padding: 3px 15px;
    vertical-align: middle;
    border-radius: 15px;
    font-size: 12px;
}
.topics_arcv .topics_btn ul .fade_btn.active01 { background: #000f7d; }
.topics_arcv .topics_btn ul li:last-child a{ border-right: none; }
.topics_arcv .fade_area { min-height: 100px; padding: 15px 10px 35px 10px; background: #fff; }
.topics_arcv .topic_list{ margin-bottom: 30px; }
.topics_arcv .topic_list li {
    float: none;
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
    border-bottom: 1px solid #ccc;
    padding-bottom: 15px;
}
.topics_arcv .topic_list li a{overflow: hidden;}
.topics_arcv .topic_list li .date{font-size: 12px;}
.topics_arcv .topic_list .img_bg {
    margin: 0 10px 5px 0;
    float: left;
    width: 100px;
}
.topics_arcv .topic_list .right{
    float: none;
    width: 100%;
}
.topics_arcv .topic_list li a{ padding: 5px 10px 0 10px; }
.topics_arcv .topic_list li a::after { display: none; }
.topics_arcv .en_ttl {
    font-size: 16px;
    margin-top: 0;
    margin-bottom: 15px;
}
.topics_arcv .topic_list li .ttl {
    font-size: 16px;
    line-height: 25px;
    margin: 5px 0;
}
.topics_arcv .topic_list li .detail_txt { font-size: 13px; line-height: 20px; }
.topics_arcv .topic_list li .cate {
    padding: 0px 4px;
    line-height: 18px;
    font-size: 11px;
    min-width: auto;
    display: inline-block;
    margin-left: 0;
}

/*=============================
    detail_topics-pade setting
===============================*/
    .detail_topics { margin-top: 30px;}
    .detail_topics .d_ttl {
    font-size: 18px;
    line-height: 25px;
    padding: 5px 0 10px 0;
    margin-bottom: 15px;
    }
.detail_topics .d_conts p{ font-size:14px; line-height: 25px; }
.detail_topics .cate{
    font-size: 12px;
    min-width: auto;
    padding: 0 10px;
}
.detail_topics .date { font-size: 12px; margin-right: 15px; }
.detail_topics02 { padding: 20px 10px; }
.detail_topics02 .ttl04 { margin-bottom: 10px; }
.detail_topics02 .topic_list{
    width: 800px;
}
/*=============================
    search-pade setting
===============================*/
.search01 { background: #f0f3f8; padding: 30px 15px; }
.search01 .white_bg { padding: 25px 15px 40px 15px; }
.search01 .count { font-size: 12px; margin: 0px 0 0 0; }
.search01 .serch input[type='text'] {
    width: calc(100% - 50px);
    height: 35px;
    font-size: 16px;
    padding-left: 32px;
    background: url(../images/common/icon_search02.png) no-repeat left 10px center #fff;
    background-size: 15px;
}
.search01 .serch input[type='submit'] {
    width: 50px;
    height: 35px;
    padding: 0;
    font-size: 13px;
    line-height: 7px;
}
.search01 .serch input[type='text']::placeholder{
    font-size: 14px;
    line-height: 22px;
    font-weight: normal;
    font-family: 'Noto Sans Japanese', serif;
}
.search01 .book_list { margin: 31px 0 30px 0; }
.search01 .book_list li {
    float: left;
    width: 48%;
    margin: 0 4% 4% 0;
    text-align: left;
}
.search01 .book_list li:nth-child(2),
.search01 .book_list li:nth-child(5n + 4),
.search01 .book_list li:nth-child(5n + 2) { margin-right: 0; }
/*=============================
    order-pade setting
===============================*/
.order01 { margin: 30px 0 40px 0; }
.order .ttl01 { margin-bottom: 10px; }
.order01 .ttl04 { font-size: 13px; line-height: 20px; margin-bottom: 5px; }
.order01 .ttl04::after { top: 5px; }
.order01 .od_price li {
    float: none;
    width: 100%;
    padding: 10px;
}
.order01 .od_price { margin: 20px 0; }
.order01 .od_price li:last-child { float: none; margin-top: 15px; }
.order01 .od_price li p:nth-child(1) {
    background: #f0f3f8;
    padding: 5px 10px;
    font-size: 12px;
    margin-bottom: 5px;
}
.order01 .od_price li p:nth-child(1) span { font-size: 17px; color: #000f7d; margin-right: 5px; }
.order01 .od_price li p:nth-child(3),
.order01 .od_price li p:nth-child(2) { font-size: 13px; line-height: 20px; }
.order01 .od_price li p:nth-child(3) span, .order01 .od_price li p:nth-child(2) span {
    font-size: 15px;
    margin-left: 0;
    display: inline-block;
    padding: 0 5px;
}
.order01_in .od_list {
    border: 10px solid #f0f3f8;
    padding: 10px 10px 0 10px;
    margin: 5px 0;
}
.order01_in .od_list li { display: block; width: 100%; }
.order01_in .od_list li p:nth-child(1)::after{display: none;}
.order01_in .od_list li p:nth-child(1) {
    font-size: 20px;
    line-height: 25px;
    padding: 3px 5px;
    margin-bottom: 15px;
}
.order01_in .od_list li p:nth-child(2) {
    font-size: 13px;
    font-weight: bold;
    text-align: left;
    background: url(../images/order/step01.jpg) no-repeat center top;
    background-size: 90px;
    padding: 75px 0 20px 0;
    line-height: 20px;
    text-align: center;
}
.order01_in .od_list li:nth-child(2) p:nth-child(2) {
    background: url(../images/order/step02.jpg) no-repeat center top;
    background-size: 105px;
}
.order01_in .od_list li:nth-child(3) p:nth-child(2) {
    background: url(../images/order/step03.jpg) no-repeat center top;
    background-size: 220px;
}
.order01_in .about_txt { font-size: 12px; line-height: 20px; }
.order02 { margin-bottom: 50px; }
.order02 .table_caption {
    font-size: 13px;
    line-height: 25px;
    margin-bottom: 20px;
}

/*=============================
    contact-pade setting
===============================*/
.contact01 { margin: 30px 0 15px 0; }
.contact01 .inner1000 { padding: 10px; }
.contact01 .white_bg { padding: 10px; }
.contact01 h3 {
    font-size: 14px;
    padding: 10px 5px;
    letter-spacing: 0;
    margin-bottom: 10px;
}
.contact01 .tell a {
    padding: 10px 0 10px 31px;
    background: url(../images/common/icon_tel.png) no-repeat center left;
    background-size: 26px;
    font-size: 20px;
}
.contact01 .tell { margin-bottom: 0px; }
.contact01 .about { font-size: 13px; line-height: 21px; }
.contact02 { margin-bottom: 50px; }
.contact02 .table_caption { font-size: 13px; line-height: 25px; margin-bottom: 20px; }
.contact_table { margin-bottom: 10px; }
.contact_table td:first-child {
    font-size: 14px;
    display: block;
    width: 100%;
    font-weight: bold;
    padding: 15px 0 5px 0;
}
.contact_table td:last-child {
    font-size: 14px;
    display: block;
    padding: 0 0 20px 0;
}
.contact_table .requ::after{display: none;}
.contact_table .requ_txt{
    display: inline-block;
    margin-left: 15px;
    color: #fff;
    background: #dd1414;
    border-radius: 3px;
    font-size: 12px;
    padding: 0 8px;
    text-align: center;
    line-height: 20px;
    font-weight: 400;
}
.contact_table .zp01,
.contact_table .zp03,
.contact_table .zp04 { margin-bottom: 10px; }
.contact_table .zp02::after,
.contact_table .zp01::after,
.contact_table .zp03::after,
.contact_table .zp04::after{font-size: 13px;}
input.submit,
input.reset{ margin: 10px 0; font-size: 15px; padding: 11px 5px; }
.contact_table .zp02,
.contact_table .zp01,
.contact_table .zp03,
.contact_table .zp04 {padding-left: 65px; }
.contact_table input[type="tel"]::placeholder,
.contact_table input[type="email"]::placeholder,
.contact_table input[type="text"]::placeholder,
.contact_table textarea::placeholder{ font-size: 13px; }
.contact_table select { font-size: 13px; padding: 5px 5px 5px 10px; height: 35px; }
.contact_table label{ font-size: 13px; }
.btns p {
    display: inline-block;
    width: 100%;
    margin: 0;
}
.reset a { padding: 10px 10px;}
/*=============================
    ranking-pade setting
===============================*/
.ranking01 { padding: 30px 10px; }
.ranking01 .white_bg {
    padding: 25px 10px 40px 10px;
}
.ranking01 .rank01 {
    padding: 30px 10px 10px 10px;
    border-bottom: 3px solid #000f7d;
    margin: 0 auto 30px auto;
    max-width: 100%;
    background: none;
}
.ranking01 .rank01 .left {
    float: none;
    width: 100%;
    max-width: 300px;
    padding: 15px;
    margin: 0 auto 10px auto;
}
.ranking01 .rank01 .right { float: none; width: 100%; }
.ranking01 .rank01 a .left::after {
    font-size: 20px;
    top: -23px;
    left: -16px;
    background: url(../images/common/icon_crown.png) no-repeat center;
    background-size: cover;
    width: 50px;
    height: 33px;
    line-height: 48px;
    padding-right: 7px;
}
.ranking01 .rank01 .right .book_ttl {
    font-size: 18px;
    margin-bottom: 5px;
    line-height: 25px;
}
.ranking01 .rank01 .right .book_author { font-size: 13px; line-height: 20px; padding-left: 45px; }
.ranking01 .rank01 .right .book_author::after { font-size: 13px; }
.ranking01 .rank01 .right .book_cete {
    font-size: 12px;
    margin: 5px 0;
    line-height: 20px;
}
.ranking01 .rank01 .right .book_about { font-size: 13px; line-height: 21px; }
.ranking01 .rank02{ background: none; border-bottom: 3px solid #000f7d; margin-bottom: 15px; }
.ranking01 .rank02 .book_list {
    padding: 0px 0px 10px 0px;
    width: 100%;
    margin: 0 auto;
    min-width: 400px;
}
.ranking01 .rank02 .book_list .book_ttl{
    font-size: 14px;
    margin-bottom: 5px;
    line-height: 20px;
}
.ranking01 .rank02 .book_list .book_fr { padding: 10px; }
.ranking01 .rank02 .book_author {
    font-size: 11px;
    line-height: 15px;
    padding-left: 35px;
    color: #000;
}
.ranking01 .rank02 .book_cete,
.ranking01 .rank02 .book_author::after { font-size: 11px; }
.ranking01 .rank02 .book_list li a::before {
    padding: 2px 5px 0 0;
    width: 27px;
    height: 38px;
    font-size: 20px;
    background: url(../images/common/icon_crown02.png) no-repeat center;
    background-size: cover;
}
.ranking01 .rank02 .book_list li:last-child a::before {
    background: url(../images/common/icon_crown03.png) no-repeat center;
    background-size: cover;
}
.ranking01 .rank03 .book_list li {
    width: 48%;
    margin: 0 4% 30px 0;
}
.ranking01 .rank03 .book_list li a::after { font-size: 23px; }
.ranking01 .rank03 .book_list .book_ttl { margin-bottom: 5px; }
.ranking01 .rank03 .book_list{ width: 1350px; padding-top: 15px;}
.ranking01 .rank03 .book_list li:nth-child(4n),
.ranking01 .rank03 .book_list li {
    width: 13%;
    margin: 0 1% 0 0;
}
.ranking01 .btn01{ margin-top: 30px; }


/*=============================
    sitemap-pade setting
===============================*/
.sitemap { overflow: hidden; padding: 25px 10px 50px 10px; text-align: center; }
.sitemap .sitemap_clmn{
    float: none;
    display: inline-block;
    max-width: 300px;
    width: 100%;
    vertical-align: top;
    margin: 0 1% 25px 1%;
    text-align: left;
}
.sitemap .sitemap_clmn .ttl04 { margin-bottom: 5px; }
.sitemap .sitemap_clmn .site_map_list a{ font-size: 13px; }
.site_map_list.h_auto { min-height: auto!important; }
/*=============================
    policy-pade setting
===============================*/
.policy{ padding: 25px 10px 50px 10px;}
.policy .ttl01{ margin-bottom: 20px; }
.policy .ttl03{ margin-bottom: 5px; }
.policy .policy_txt{
    margin-bottom: 20px;
}
.policy .policy_txt p{ font-size: 14px; line-height: 25px; margin-bottom: 5px; }
.policy p.about_txt{
    font-size: 14px;
    margin-bottom: 15px;
}

/*=============================
    channel-pade setting
===============================*/
.channel .w_clmn01 iframe { height: 140px; }
.channel .ttl02 { margin-bottom: 15px; }
.channel.channel02 .w_clmn01 { padding-bottom: 20px; margin-bottom: 25px; }


/*=============================
    goods-pade setting
===============================*/
.goods .w_clmn01 li { width: 100%; max-width: 300px; margin: 0 auto 20px auto; }
.goods .w_clmn01 li:last-child { width: 100%; max-width: 100%; margin: 0; }
.goods01 .w_clmn01 { margin-bottom: 25px; padding-bottom: 25px; }
.goods .ttl01 { margin-bottom: 20px; }
.goods .ttl02 { margin-bottom: 15px; }
.goods .btn05{ text-align: center; margin: 0 auto; }
.goods .btn05 a { padding: 10px 10px; }
.goods .sub_ttl02 { font-size: 14px; margin-bottom: 10px; }
.goods .sub_ttl03 { font-size: 14px; margin-bottom: 10px; }
.goods .slide_area { margin-bottom: 25px; }

/*=============================
    bookshop-pade setting
===============================*/
.bookshop { text-align: left; padding: 25px 10px 40px 10px; }
.bookshop .ttl01{ margin-bottom: 15px; }
.bookshop .ttl02{ margin-bottom: 15px; }
.bookshop .sub_txt{ font-size: 13px; line-height: 20px; }
.bookshop .book_in { margin-top: 20px; }
.bookshop .book_in .book_in_list{ text-align: center; }
.bookshop .book_in .book_in_list li{
    max-width: 300px;
    width: 98%;
    margin: 0 1% 15px 1%;
}
.bookshop .book_in .book_in_list li img{ margin-bottom: 5px;  }
.bookshop .book_in .book_in_list li a{ font-size: 13px; line-height: 20px; }
.bookshop .book_in .book_in_list li a span{ font-size: 12px; }

/*=============================
    advertising-pade setting
===============================*/
.advertising { padding: 25px 10px 25px 10px; }
.advertising p { font-size: 13px; line-height: 20px; }
.advertising .ttl01{ margin-bottom: 15px; }
.advertising .ttl04{ margin-bottom: 5px; }
.advertising .advertising_in .w_clmn01 li:first-child { float: left; width: 35%; }
.advertising .advertising_in .w_clmn01 li:last-child { float: right; margin-top: 0; width: 60%; }
.advertising .advertising_in .sin_clmn span{ font-size: 13px; }
.advertising .advertising_in { margin-top: 15px; padding-bottom: 15px; }
.advertising .btn_area { margin-top: 20px; }
.advertising .w_clmn04 li { width: 49%; margin-right: 2%; }
.advertising .w_clmn04 li:nth-child(2n){ margin-right: 0; }
.advertising .w_clmn04 li figcaption { margin-top: 2px; margin-bottom: 10px; font-size: 13px; }

/*=============================
    buy-pade setting
===============================*/
.buy{ padding: 25px 10px 25px 10px; }
.buy .ttl01{ margin-bottom: 15px; }
.buy .ttl03{ margin-bottom: 5px; }
.buy .tel_btn{ margin: 10px 0; }
.buy p{ font-size: 13px; line-height: 20px; }
.buy .w_clmn02 { margin: 15px 0; }
.buy .w_clmn02 li:last-child { width: 100%; max-width: 200px; margin: 0 auto; }
.buy .steps .ttl04{ margin-bottom: 0px; }
.buy .steps p{ margin-bottom: 10px; }
.buy .steps p.bt_txt{ color: #ff0000; font-size: 12px; line-height: 20px; }

/*=============================
    access-pade setting
===============================*/
.access{ padding: 25px 10px 25px 10px; }
.access .ttl01{ margin-bottom: 15px; }
.access .w_clmn01 iframe{ height: 150px; }

/*=============================
    company-pade setting
===============================*/
.company{ padding: 25px 10px 25px 10px; }
.company .ttl01{ margin-bottom: 15px; }
.company_table{ border: none;}
.company_table tr{ border-bottom: none; }
.company_table td:nth-child(1){
    font-size: 14px;
    padding: 10px;
    display: block;
    text-align: left;
    width: 100%;
}
.company_table td:nth-child(2){
    padding: 10px 10px 20px 10px;
    font-size: 13px;
    line-height: 20px;
    display: block;
}

/*=============================
    faq-pade setting
===============================*/
.faq{ padding: 25px 10px 25px 10px;}
.faq .ttl02{ margin-bottom: 15px; }



/*=============================
    404-pade setting
===============================*/
.not_found { padding: 25px 0; }
.not_found .white_bg { padding: 10px; width: 93%; }
.not_found h3.ttl02 { margin-bottom: 10px; }
.not_found p { font-size: 13px; line-height: 21px; }



}　/*media query 絞め*/