@charset "utf-8";
/* CSS Document */



/* ==============================================
font
============================================== */

@font-face {
font-family: "NotoSansCJKjp";
font-style: normal;
font-weight: 300;
src: url('../font/NotoSansCJKjp-DemiLight.woff2') format('woff2');
}
@font-face {
font-family: "NotoSansCJKjp";
font-style: normal;
font-weight: 500;
src: url('../font/NotoSansCJKjp-Medium.woff2') format('woff2');
}
@font-face {
font-family: "NotoSansCJKjp";
font-style: normal;
font-weight: 600;
src: url('../font/NotoSansCJKjp-Bold.woff2') format('woff2');
}

@font-face {
font-family: "BahnsChrift";
font-style: normal;
font-weight: 300;
src: url('../font/BahnsChrift.woff2') format('woff2');
}



/* ==============================================
header
============================================== */
.benesse-header__inner{
    width: 1060px;
    margin: auto;
}

header .inner{
    width: 1060px;
    margin: auto;
    position: relative;
}

.l-header .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.header_logo{
    width: 150px;
}
.header_logo a{
    margin: 0!important;
}
.logo_cat{
    width: 150px;
}
.l-header .inner .header_nav {
    display: inherit;
}

.l-header .inner .header_nav .gnav {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.header_nav .gnav a {
    margin: 0;
    padding: 0 8px;
}

header nav ul li a{
    display: block;
    font-family: "NotoSansCJKjp";
    font-weight: 300;
    font-size: 12px!important;
    /*padding: 0!important;*/
    /*margin: 0 0 0 28px!important;*/
}

header .menu{
    font-family: "NotoSansCJKjp";
    font-weight: 300;
    font-size: 10px;
    line-height: 10px;
    cursor: pointer;
}
header .menu a{
    width: 44px;
    height: 44px;
    position: fixed;
    top: 15px;
    right: 13px;
    background: url(/share/renewal_design/img/cmn_icn_open.png) top right no-repeat;
    background-size: 44px auto;
    z-index: 9999;
}
.all_top header .menu a{
    top: 60px;
}
header .menu.on a{
    top: 0;
    right: 13px;
    background: url(/share/renewal_design/img/cmn_icn_close.png) top right no-repeat;
    background-size: 44px auto;
}

header #menu{
    position: fixed;
    top: 0;
    height: 100%;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    overflow-y: scroll;
    right : -150%;
    z-index: 9998;
    background: #f5f5f5;
    width: 100%;
    border-left: solid 1px #e6e6e6;
    padding: 0 0 35px 0;
}
header #menu.active{
    right : 0px;
}

header #menu .search_area{
    padding: 44px 30px 74px 30px;
    margin: 0;
    width: 100%;
    background: none!important;
}
header #menu .search_area #q{
    -webkit-appearance: none;
    font-family: "NotoSansCJKjp";
    font-weight: 300;
    font-size: 16px;
    line-height: 16px;
    border-radius: 4px 0 0 4px;
    padding: 9px 0 13px 2%;
    width: 90%;
    background: #FFF;
}
header #menu .search_area input:last-child{
    font-family: "NotoSansCJKjp";
    font-weight: 300;
    font-size: 0;
    line-height: 0;
    letter-spacing: 10px;
    display: block;
    background: #fff500 url(/share/renewal_design/img/cmn_icn_search.png) center no-repeat;
    background-size: 19.5px auto;
    border-radius: 0 4px 4px 0;
    width: 10%;
    height: 46px;
}

header #menu #tab{
    margin: 0 30px;
    border-bottom: none;
}
header #menu #tab li{
    float: left;
    width: 50%;
    text-align: center;
    border-bottom: 1px solid #fff500;
}
header #menu #tab li a{
    font-family: "NotoSansCJKjp";
    font-weight: 500;
    font-size: 16px;
    line-height: 16px;
    letter-spacing: 1px;
    background: #fff;
    display: block;
    padding: 15px 0 18px 0;
}
header #menu #tab li.select a{
    background: #fff500;
}

header #menu .tab{
    margin: 0 30px;
    background: #fff;
    border-top: none;
}
header #menu .tab.hide{
    display: none;
}
header #menu .tab h2{
    border-top: solid 1px #f5f5f5;
    position: relative;
}
header #menu .tab h2:first-child{
    border-top: none;
}
header #menu .tab h2 a{
    font-family: "NotoSansCJKjp";
    font-weight: 500;
    font-size: 16px;
    line-height: 16px;
    letter-spacing: 1px;
    display: block;
    padding: 15px 0 18px 15px;
}
header #menu .tab h2 a:after{
    content: " ";
    display: block;
    width: 8px;
    height: 12px;
    background: url(/share/renewal_design/img/art_arw_gray.png) no-repeat;
    background-size: 8px auto;
    position: absolute;
    top: 17px;
    right: 17px;
}
header #menu .tab ul{
    padding: 0 15px 15px 15px;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
header #menu .tab ul li{
    float: left;
    width: 25%;
    border-right: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
    position: relative;
    background: #f5f5f5;
}
header #menu .tab ul li a{
    font-family: "NotoSansCJKjp";
    font-weight: 300;
    font-size: 14px;
    line-height: 16px;
    display: block;
    padding: 8px 10px 10px 10px;
}
header #menu .tab ul li a:after{
    content: " ";
    display: none;
    width: 5px;
    height: 10px;
    background: url(/share/renewal_design/img/art_arw_black.png) no-repeat;
    background-size: 5px auto;
    position: absolute;
    top: 12px;
    right: 10px;
}
header #menu ul:after { content:"."; clear:both; height:0; display:block; visibility:hidden; }
* html header #menu ul { display:inline-block; }
*:first-child+html header #menu ul { display:inline-block; }

/* ==============================================
right
============================================== */

.side_magazine_area{
margin: 30px 0 0 0!important;
background: #f5f5f5!important;
position: relative!important;
padding: 230px 0 105px 0!important;
}
.side_magazine_area .side_magazine_txt{
float: none!important;
width: auto!important;
}
.side_magazine_area .side_magazine_ttl{
display: none!important;
}
.side_magazine_area .side_magazine_p{
font-family: "NotoSansCJKjp"!important;
font-weight: 300!important;
font-size: 14px!important;
line-height: 28px!important;
text-align: center!important;
}
.side_magazine_area .side_magazine_img{
clear: both!important;
float: inherit!important;
position: absolute!important;
top:40px!important;
left: 0!important;
right: 0!important;
margin: auto!important;
}
.side_magazine_area .side_magazine_img img{
width: 140px!important;
-moz-box-shadow: none!important;
-webkit-box-shadow: none!important;
box-shadow: none!important;
}
.side_magazine_area .txt_btn{
font-family: "NotoSansCJKjp"!important;
font-weight: 300!important;
font-size: 16px!important;
line-height: 16px!important;
border: solid 1px #000000!important;
border-radius: 0!important;
padding: 14px 0 18px 0!important;
position: absolute!important;
bottom:-170px!important;
left: -45px!important;
width: 240px!important;
}



.sidenav_ttl_ver1{
background: #fff500!important;
border: 1px solid #e6e6e6!important;
font-family: "NotoSansCJKjp"!important;
font-weight: 500!important;
font-size: 16px!important;
padding: 9px 14px 13px 10px!important;
}
.sidenav_ttl_ver1 a{
font-weight: 300!important;
font-size: 14px!important;
line-height: 14px!important;
padding: 4px 0 0 0!important;
}
.snav{
border-left: 1px solid #e6e6e6!important;
border-right: 1px solid #e6e6e6!important;
}
.snav li a{
font-family: "NotoSansCJKjp"!important;
font-weight: 300!important;
font-size: 14px!important;
line-height: 14px!important;
padding: 14px 0 16px 15px!important;
border-bottom: 1px solid #e6e6e6!important;
}



.side_sns_area{
border: none!important;
margin: 0!important;
padding: 34px 0 50px 0!important;
}
.side_sns_area .sidenav_ttl_ver2 img{
width: 148px!important;
}
.side_sns_area ul{
display: table!important;
margin: auto!important;
padding: 9px 0 0 0!important;
}
.side_sns_area ul li{
float: left!important;
padding: 0 10px!important;
}
.side_sns_area ul li img{
width: 40px!important;
}



aside aside .line-news-banner{
margin: 20px 0!important;
}
aside aside .mb_normal{
margin: 0!important;
}



.bread_area ol li{
font-family: "NotoSansCJKjp"!important;
font-weight: 300!important;
font-size: 12px!important;
line-height: 12px!important;
}



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

footer{
margin: 100px 0 0 0!important;
background: none!important;
}



footer .js-footer_btn_top{
height: 44px!important;
font-size: 0!important;
line-height: 0!important;
background: #f5f5f5 url(/share/renewal_design/img/cmn_arw_top.png) center top 18px no-repeat!important;
background-size: 11px auto!important;
}
footer .js-footer_btn_top:before{
display: none!important;
}



footer .footer_nav{
padding: 24px 0 0 0!important;
}
footer .footer_nav li{
font-size: 14px!important;
line-height: 14px!important;
}
footer .footer_media{
padding: 5px 0 0 0!important;
}
footer .footer_media li{
font-size: 14px!important;
line-height: 14px!important;
}



#benesse-footer .benesse-footer__link{
display: table!important;
margin: auto!important;
float: none!important;
}
#benesse-footer .benesse-footer__link li{
}
#benesse-footer .benesse-footer__link li a{
color: #000000!important;
text-decoration: none!important;
font-family: "NotoSansCJKjp"!important;
font-weight: 300!important;
font-size: 14px!important;
line-height: 14px!important;
}
#benesse-footer .benesse-footer__link li{
margin: 0 10px!important;
}
#benesse-footer .benesse-footer__link li a{
background: none!important;
padding: 0!important;
}



#benesse-footer .benesse-footer__copyright{
text-align: center!important;
padding: 17px 0 50px 0!important;
width: 100%!important;
}

/* ==============================================
others
============================================== */

div .info_list{
    margin: 0px 0px 20px;
    padding: 30px 0px;
}

/* ==============================================
add image size
============================================== */
article .article_detail_item .blockquote_area.image_size_2 {
    text-align: left!important;
}

/* 画像サイズ　デフォルト */
article .article_detail_item .image_size_0 img {
    width: auto;
    height: auto;
}

/* 画像サイズ　中 */
article .article_detail_item .image_size_1 img {
    width: 200px;
    height: auto;
}

/* 画像サイズ　小 */
article .article_detail_item .image_size_2 img {
    width: 100px;
    height: auto;
}

/* 画像リンク */
article .article_detail_item .image_size_3 img {
    max-width: 100%;
    height: auto;
}

.image_size_4 img {
    width: 144px;
    height: 144px;
}

/* ==============================================
add button parts
============================================== */
/* 現状通り（黒） */
.article_detail_item .ad_link_button--style1 {

}

.article_detail_item .ad_link_button--style1:hover {

}

/* 現状通り（青）※グリーンボタンから移行 */
.article_detail_item .ad_link_button--style2 {
    background: #3d95d4;
}

.article_detail_item .ad_link_button--style2:hover {
    background: #4ca1de;
}

/* いぬテーマカラーの若草色 */
.article_detail_item .ad_link_button--style3 {
    background: #cbe758;
    color: #000;
}

.article_detail_item .ad_link_button--style3:hover {
    background: #cbe758;
    opacity: 0.8;
}

/* ねこテーマカラーの黄色 */
.article_detail_item .ad_link_button--style4 {
    background: #fff500;
    color: #000;
}

.article_detail_item .ad_link_button--style4:hover {
    background: #fff500;
    opacity: 0.6;
}

/* Amazonリンクボタン */
.article_detail_item .ad_link_button--style5 {
    background: #ebb62c;
}

.article_detail_item .ad_link_button--style5:hover {
    background: #ebb62c;
    opacity: 0.7;
}

/* 楽天市場リンクボタン */
.article_detail_item .ad_link_button--style6 {
    background: #bf0000;
}

.article_detail_item .ad_link_button--style6:hover {
    background: #bf0000;
    opacity: 0.7;
}

/* 楽天ブックスリンクボタン */
.article_detail_item .ad_link_button--style7 {
    background: #e06f1b;
}

.article_detail_item .ad_link_button--style7:hover {
    background: #e06f1b;
    opacity: 0.7;
}

/* Yahoo!ショッピングリンクボタン */
.article_detail_item .ad_link_button--style8 {
    background: #3682c5;
}

.article_detail_item .ad_link_button--style8:hover {
    background: #3682c5;
    opacity: 0.7;
}

/* 楽天市場価格ナビリンクボタン（ボタン内文言は楽天市場） */
.article_detail_item .ad_link_button--style9 {
    background: #bf0000;
}

.article_detail_item .ad_link_button--style9:hover {
    background: #bf0000;
    opacity: 0.7;
}

.hide {
    display: none;
}
