@charset "utf-8";
/* ----------------------------------------------
        基本CSS
-------------------------------------------------*/

* {
    margin:0;
    padding:0;
    font-family:Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
    color: #333;
    line-height: 1;
    box-sizing: border-box;
}

body {
    text-align:center;
    background-color: #FFFFFF;
    font-size:14px;
}

img,a img {
    border:none;
    vertical-align: top;
    max-width: 100%;
    height: auto;
}

a:link,a:visited,a:active,a:hover {
    color:#006699;
}

ul,li {
    list-style-type:none;
}
div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
    margin:0;
    padding:0;
}
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}
a:hover img {
    filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}
.clear {
    clear: both;
}


/* ----------------------------------------------
        ヘッダー部分
-------------------------------------------------*/

#header{
    background: url(../img/head_bg.png) 0 bottom repeat-x;
    border-top: 4px solid #000;
    padding: 0 0 4px;
}
#header_inner {
    width: 980px;
    margin: 0 auto;
}
#header_inner:after {
    content: "";
    display: block;
    clear: both;
}
.headerL {
    float: left;
    padding-top: 5px;
}
.headerL a {
    margin-top: 2px;
    margin-left: 6px;
    display: block;
}
.headerR {
    float: right;
    text-align: right;
    padding-top: 16px;
}
.headerR h1 {
    font-size: 10px;
    color: #666666;
    font-weight: normal;
    margin-right: 6px;
}
.news {
    height: 18px;
    width: 500px;
    background-image: url(../img/news_box.gif);
    background-repeat: no-repeat;
    margin-top: 25px;
    margin-right: 6px;
    text-align: right;
}
.news marquee {
    font-size: 10px;
    font-weight: normal;
    color: #000000;
    margin-right: 6px;
    margin-left: 74px;
    padding-top: 5px;
    display: block;
}


/* ----------------------------------------------
        左ナビゲーション部分
-------------------------------------------------*/
#Lnavi {
    float: left;
    width: 200px;
}
#Lnavi h2 {
    font-size: 12px;
    font-weight: bold;
    height: 18px;
    background-image: url(../img/navi_h2_bg.gif);
    background-repeat: no-repeat;
    padding-top: 3px;
    padding-left: 23px;
    margin-bottom: 15px;
    margin-left: 5px;
    line-height: 100%;
}
#Lnavi h2 a:link,#Lnavi h2 a:visited,#Lnavi h2 a:active,#Lnavi h2 a:hover {
    color:#FFFFFF;
}
.navi_box {
    background-image: url(../img/navi_bg.gif);
    background-repeat: repeat-y;
    width: 200px;
    margin-bottom: 22px;
}
.navi_top {
    padding-bottom: 10px;
}
.navi_box ul {
    margin-left: 16px;
    padding-bottom: 8px;
}
.navi_box li {
    background-image: url(../img/navi_li_bg.gif);
    background-repeat: no-repeat;
    font-size: 12px;
    margin-bottom: 10px;
    padding-left: 13px;
    line-height: 100%;
}
.navi_box li a {
    text-decoration: none;
}
.navi_bottom {
    height: 17px;
    width: 200px;
    background-image: url(../img/navi_bottom_bg.gif);
    background-repeat: no-repeat;
}

#Lnavi .ad {
    width: 200px;
    margin-bottom: 20px;
    text-align: center;
}


/* ----------------------------------------------
        メイン部分
-------------------------------------------------*/
#wrapper {
    text-align: left;
    width: 980px;
    margin: 0 auto;
    padding-top: 20px;
}
#wrapper:after {
    content: "";
    display: block;
    clear: both;
}
#container {
    float: right;
    width: 760px;
}
#main {

}
.rankbox_top {
    height: 40px;
    width: 500px;
    background-image: url(../img/rankbox_top_bg.gif);
    background-repeat: no-repeat;
}
.rankbox_top p {
    margin-left: 43px;
    color: #CCCCCC;
    font-size: 12px;
}
.rankbox_top b {
    font-weight: bold;
    color: #FFFFFF;
    font-size: 32px;
    font-family: Arial, Helvetica, sans-serif;
}
.rank {
    color: #FFFFFF;
    font-size: 14px;
}
.red {
    color: #FF0033;
}
.rankbox_main {
    width: 500px;
    background-image: url(../img/rankbox_bg.gif);
    background-repeat: repeat-y;
}
.rankboxL {
    width: 218px;
    float: left;
}
.rankboxL h3 {
    margin-bottom: 13px;
    margin-left: 12px;
    padding-top: 11px;
    font-size: 16px;
}
.rankboxL .category {
    margin-bottom: 6px;
    margin-left: 10px;
}
.rankboxL .site_img {
    margin-left: 10px;
    margin-bottom: 8px;
}
.rankboxL p {
    margin-left: 13px;
    font-size: 16px;
    color: #999999;
    margin-bottom: 10px;
}
.rankboxL .gray {
    font-size: 10px;
    color: #333333;
}
.rankboxL p b {
    font-size: 14px;
    font-weight: bold;
}
.rankboxL .ken11 {
    font-size: 11px;
}
.rankboxR {
    float: left;
    width: 268px;
}
.rankboxR li {
    background-repeat: no-repeat;
    padding-top: 2px;
    padding-left: 60px;
    height: 21px;
    font-size: 10px;
    color: #666666;
}
.rankboxR .data01 {
    background-image: url(../img/data01.gif);
}
.rankboxR .data02 {
    background-image: url(../img/data02.gif);
}
.rankboxR .data03 {
    background-image: url(../img/data03.gif);
}
.rankboxR .data04 {
    background-image: url(../img/data04.gif);
}
.rankboxR ul {
    margin-top: 16px;
    margin-bottom: 10px;
}
.review h4 {
    margin-bottom: 8px;
}
.review p {
    font-size: 10px;
    line-height: 130%;
    color: #666666;
    margin-right: 5px;
    margin-left: 5px;
}
.review .more {
    text-align: right;
    margin-right: 6px;
    font-size: 10px;
    margin-bottom: 10px;
    margin-top: 6px;
}
.ranlbox_bottom {
    height: 10px;
    width: 500px;
    background-image: url(../img/rankbox_bottom_bg.gif);
    background-repeat: no-repeat;
    font-size: 1px;
}
.rankbox {
    margin-bottom: 4px;
}
.pan {
    font-size: 10px;
    color: #999999;
    margin-bottom: 40px;
    margin-left: 2px;
}
.cnt h2 {
    font-size: 26px;
    font-weight: normal;
    line-height: 100%;
    color: #222;
    margin-bottom: 20px;
}
.cnt h2 span {
    font-size: 16px;
    margin-left: 10px;
}


/* ----------------------------------------------
        右ナビゲーション部分
-------------------------------------------------*/
#Rnavi {
    float: right;
    width: 160px;
}
.over18 {
    margin-top: 7px;
    margin-bottom: 14px;
}
.sub_cnt {
    width: 160px;
    background-image: url(../img/subcnt_bg.gif);
    background-repeat: repeat-y;
    border-top-width: 1px;
    border-bottom-width: 1px;
    border-top-style: solid;
    border-bottom-style: solid;
    border-top-color: #BAC7D0;
    border-bottom-color: #BAC7D0;
    margin-bottom: 14px;
}
.sub_cnt h3 {
    margin-top: 8px;
    margin-left: 7px;
    margin-bottom: 14px;
}
.sub_cnt p {
    font-size: 10px;
    line-height: 130%;
    color: #666666;
    margin-right: 10px;
    margin-left: 9px;
}
.sub_cnt .more {
    text-align: right;
    margin-right: 11px;
    margin-top: 4px;
    font-size: 10px;
    margin-bottom: 12px;
}
.exp_bnr {
    margin-bottom: 14px;
}
.sub_cnt ul {
    margin-left: 8px;
    margin-bottom: 12px;
}
.sub_cnt li {
    margin-bottom: 8px;
    font-size: 10px;
}


/* ----------------------------------------------
        フッター部分
-------------------------------------------------*/

#footer {
    margin-top: 37px;
    padding-top: 15px;
    padding-bottom: 10px;
    border-top: 3px solid #ddd;
}
#footer_inner {
    width: 980px;
    text-align: left;
    margin: 0 auto;
}
.footer_navi {
    margin-left: 15px;
    font-size: 12px;
    color: #333333;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #ddd;
}
.footer_navi a {
    font-weight: bold;
    text-decoration: none;
}
#footer ul {
    margin-left: 14px;
    margin-bottom: 17px;
}
#footer li {
    font-size: 10px;
    color: #333333;
    margin-bottom: 5px;
}
.copyright {
    margin-left: 13px;
    color: #000000;
    font-size: 11px;
}
.cnt02 h2 {
    background: #111;
    font-size: 14px;
    font-weight: bold;
    color: #FFFFFF;
    padding: 10px 20px;
}
.page_top {
    text-align: right;
    font-size: 10px;
    margin-top: 24px;
    margin-right: 12px;
    font-weight: bold;
}



/* ----------------------------------------------
        TOP
-------------------------------------------------*/
.key {
    margin-bottom: 30px;
}
.TOP h2 {
    margin-bottom: 30px;
    font-size: 24px;
    font-weight: normal;
    color: #222;
    border-bottom: 1px solid #eee;
    padding-bottom: 15px;
}
.TOP h2:first-letter {
    color: #c00;
}
.TOP h2:nth-child(n+1) {
    margin-top: 30px;
}
.topbox {
    margin-right: -20px;
    margin-bottom: 50px;
}
.topbox:after {
    content: "";
    display: block;
    clear: both;
}
.topbox li {
    float: left;
    margin-right: 20px;
    width: 240px;
    margin-bottom: 20px;
}
.topbox h3 {
    font-size: 14px;
    font-weight: bold;
    margin: 5px 0 3px;
}
.topbox h3 a {
    color: #FF4CA5;
    text-decoration: none;
}
.topbox h3 a:hover {
    text-decoration: underline;
}
.topbox div img {
    max-width: 100%;
    height: auto;
    border: 1px solid #ddd;
    box-sizing: border-box;
}
.cate a {
    display: block;
    font-size: 10px;
    background: #000;
    color: #fff;
    display: inline-block;
    padding: 4px 10px;
    border-radius: 5px;
    text-decoration: none;
}
.cate a:hover {
    opacity: 0.7;
}
.cate1 a {background-color: #FF4CA5;}
.cate2 a {background-color: #43A8BA;}
.cate3 a {background-color: #0F7760;}
.cate4 a {background-color: #000;}


.categorybox {

}
.categorybox:after {
    content: "";
    display: block;
    clear: both;
}
.categorybox li {
    width: 370px;
    float: left;
    margin-bottom: 30px;
}
.categorybox li:nth-child(odd){
    margin-right: 20px;
}
.categorybox li .img {
    text-align: center;
    margin-bottom: 20px;
}
.categorybox li h3 {
    margin: 10px 0 10px;
    font-size: 18px;
}
.categorybox li .body {
    background: #eee;
    padding: 10px;
}
.categorybox li .body p {
    color: #333;
    font-size: 12px;
    line-height: 1.5;
}
.categorybox li .spec {
    margin-bottom: 10px;
}
.categorybox li .spec:after {
    content: "";
    display: block;
    clear: both;
}
.categorybox li .spec dl {
    float: left;
    width: 50%;
}
.categorybox li .spec dl:after {
    content: "";
    display: block;
    clear: both;
}
.categorybox li .spec dl dt {
    background: #c93434;
    color: #fff;
    float: left;
    padding: 0 5px;
    font-weight: bold;
    font-size: 14px;
    line-height: 20px;
    margin-right: 10px;
}
.categorybox li .spec dl dd {
    float: left;
    font-size: 14px;
    line-height: 20px;
}


/* ----------------------------------------------
        記事一覧
-------------------------------------------------*/
.article_list {
    overflow: hidden;
}
.article_list .article_box {
    float: left;
    width: 370px;
    margin-right: 20px;
    margin-bottom: 30px;
}
.article_list .article_box:nth-of-type(even) {
    margin-right: 0;
}
.article_list .article_box:nth-of-type(odd) {
    clear: left;
}
.article_list .article_box .article_list_title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 5px;
    line-height: 1.4;
    margin-bottom: 10px;
}
.article_list .article_box .article_list_title a {
    color: #FF4CA5;
    text-decoration: none;
}
.article_list .article_box dl {

}
.article_list .article_box dl dt {
    float: left;
    width: 170px;
}
.article_list .article_box dl dd {
    margin-left: 180px;
}
.article_list .article_box dl dd .article_sub {
    overflow: hidden;
    margin: 10px 0;
}
.article_list .article_box dl dd .cate {
    float: left;
}
.article_list .article_box dl dd .cate .cate {
    font-size: 10px;
    background: #000;
    color: #fff;
    display: inline-block;
    padding: 0 10px;
    line-height: 16px;
    border-radius: 5px;
    text-decoration: none;
    margin: 0 2px 2px 0;
}
.article_list .article_box dl dd .date {
    float: right;
    font-size: 10px;
    color: #666;
    line-height: 16px;
}
.article_list .article_box dl dd p {
    font-size: 12px;
    line-height: 1.4;
    color: #666;
}
.more {
    text-align: right;
}


/* ----------------------------------------------
        記事詳細
-------------------------------------------------*/
.article-single {

}
.article-single h2 {
    font-size: 28px;
    font-weight: bold;
    line-height: 1.4;
}
.article-single .article_sub {
    overflow: hidden;
    margin: 10px 0 30px;
}
.article-single .article_sub .cate {
    float: left;
}
.article-single .article_sub .cate a {
    font-size: 12px;
    background: #000;
    color: #fff;
    display: inline-block;
    padding: 0 10px;
    line-height: 20px;
    border-radius: 5px;
    text-decoration: none;
}
.article-single .article_sub .date {
    float: left;
    font-size: 12px;
    color: #666;
    line-height: 20px;
    margin-left: 20px;
}
.article-single .article_sub .author {
    float: right;
}
.article-single .article_sub .author img {
    vertical-align: middle;
    margin-right: 5px;
}
.article-single .social_btn {
    overflow: hidden;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding: 10px 10px 5px;
    margin-bottom: 30px;
}
.article-single .social_btn li {
    float: left;
    margin-right: 10px;
}
.article-single .single_image {
    margin-bottom: 30px;
}
.article-single .single_body {
    margin-bottom: 30px;
}
.article-single .single_body h3 {
    font-size: 24px;
    background: #eee;
    font-weight: bold;
    padding: 10px 15px;
    margin: 30px 0 30px;
}
.article-single .single_body h4 {
    font-size: 20px;
    font-weight: bold;
    margin: 30px 0 25px;
    padding: 0 0 10px 10px;
    border-bottom: 2px solid #FF4CA5;
}
.article-single .single_body h4 a {
    text-decoration: none;
}
.article-single .single_body p {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 1.5em
}
.article-single .single_body p img {
    display: block;
    margin: 0 auto;
}
.article-single table {
    width: 100%;
    border-top: 1px solid #dddddd;
    border-left: 1px solid #dddddd;
    margin-bottom: 20px;
}
.article-single table th, .article-single table td {
    padding: 15px;
    text-align: left;
    vertical-align: middle;
    border-bottom: 1px solid #dddddd;
    border-right: 1px solid #dddddd;
}
.article-single table > thead > tr > th {
    background: #f0f0f0;
    font-weight: normal;
}
.article-single table> tbody > tr > th {
    background: #f0f0f0;
    font-weight: bold;
    width: 300px;
}
.single_body .wp-block-image {
    margin-bottom: 20px;
}
.recomend_chat {
    border: 3px solid #eee;
    padding: 20px;
    margin-bottom: 30px;
}
.recomend_chat h3 {
    font-size: 18px;
    margin-bottom: 20px;
}
.recomend_chat dl {
    overflow: hidden;
}
.recomend_chat dl dt {
    float: left;
}
.recomend_chat dl dd {
    margin-left: 260px;
}
.recomend_chat dl dd h4 {
    font-size: 16px;
    margin-bottom: 5px;
}
.recomend_chat dl dd .cate {
    margin-bottom: 10px;
}
.recomend_chat dl dd p {
    font-size: 14px;
    line-height: 1.6;
}
.recomend {
    margin: 60px 0;
}
.recomend h3 {
    font-size: 20px;
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
    margin-bottom: 15px;
}

/* 目次 */
.toc_list {
    font-size: 16px;
}
#toc_container .toc_list li {
    line-height: 1.3;
    margin-bottom: 5px;
}
#toc_container .toc_list li:last-child {
    margin-bottom: 0;
}
#toc_container .toc_list ul {
    margin-top: 5px;
}

/*** タグ ***/
.article_tag {
    margin-bottom: 50px;
}
.article_tag h3 {
    margin-bottom: 15px;
}
.tags {
    margin-top: 10px;
}
.tags:after {
    content: "";
    display: block;
    clear: both;
}
.tags li {
    float: left;
    margin-bottom: 5px;
}
.tags li a {
    display: block;
    border-radius: 5px;
    padding: 5px 8px 5px 24px;
    margin: 0 5px 0 0;
    color: #fff;
    font-size: 10px;
    text-decoration: none;
    background: #999 url(/common/img/ico_tag_white.png) 5px center no-repeat;
    background-size: auto 12px;
}

/*** サイド人気記事 ***/
.ranking_box {
    border: 1px solid #ccc;
    border-radius: 10px;
    width: 200px;
    margin-bottom: 22px;
    padding: 10px;
}
.ranking_box .menus {
    margin-bottom: 30px;
}
#Lnavi .ranking_box h2 {
    background: none;
    height: auto;
    padding: 0 0 5px;
    margin: 20px 0 15px;
    font-size: 14px;
    font-weight: bold;
    border-bottom: 1px solid #999;
}
#Lnavi .ranking_box h2:first-child {
    margin-top: 0;
}
#Lnavi .ranking_box .wpp-list li {
    overflow: hidden;
    margin-bottom: 10px;
}
#Lnavi .ranking_box .wpp-list li a {
    float: left;
    width: 50px;
}
#Lnavi .ranking_box .wpp-list li .wpp-post-title {
    font-size: 12px;
    text-decoration: none;
    width: 128px;
}
#Lnavi .menus ul li {
    margin-bottom: 10px;
    line-height: 1.2;
    font-size: 12px;
}
#Lnavi .menus ul li a {
    text-decoration: none;
}
#Lnavi .menus ul li a:hover {
    text-decoration: underline;
}
#Lnavi .ranking_box li .post-date {
    display: block;
    color: #999;
    margin-top: 5px;
    font-size: 11px;
    text-align: right;
}

/*** 他サイトの紹介 ***/

.intro_site {
    border: 3px solid #eee;
    padding: 20px;
    margin-bottom: 30px;
    overflow: hidden;
}
.intro_site dt {
    float: left;
}
.intro_site dd {
    margin-left: 260px;
}
.article-single .intro_site dd p {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 10px;
}

/*** 広告 ***/
.article-single .ad {
    text-align: center;
    margin: 20px 0;
}
.article-single .ad .ad_list {
    float: left;
    margin-right: 20px;
}

/*** ページネーション ***/
.pager {
    margin-top: 50px;
    text-align: center;
}
.pager a {
    text-decoration: none;
    color: #FF4CA5;
}
.pager a:hover {
    background: #FF4CA5;
    color: #fff;
}
.pager .page-numbers {
    display: inline-block;
    line-height: 32px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    font-size: 16px;
    border: 1px solid #FF4CA5;
    width: 32px;
    height: 32px;
    text-align: center;
    margin: 0 1px;
}
.pager .prev,
.pager .next {

}
.pager .current {
    background: #FF4CA5;
    color: #fff;
}


/* ----------------------------------------------
        フッターリンク
-------------------------------------------------*/
#footer_link {
    margin: 30px 0 0;
    background: #f0f0f0;
    padding: 20px 0;
}
#footer_link_inner {
    width: 980px;
    margin: 0 auto;
    text-align: left;
}
#footer_link_inner:after {
    content: "";
    display: block;
    clear: both;
}
#footer_link .footer_link_h {
    font-size: 16px;
    margin-bottom: 10px;
}
#footer_link dl {
    float: left;
    margin-right: 30px;
}
#footer_link dl:nth-child(3n) {
    margin-right: 0;
}
#footer_link dl dt {
    margin-bottom: 10px;
}
#footer_link a dl dd {
    color: #006699;
}
#footer_link a:hover dl dd {
    color: #FF4CA5;
}


/* ----------------------------------------------
        コンポーネント
-------------------------------------------------*/
/*** list ***/
.list-disc {
    margin: 30px 0;
    background: #f0f0f0;
    padding: 10px;
}
.list-disc li {
    list-style: disc outside;
    font-size: 16px;
    margin: 10px 0 10px 1.5em;
}

/*** Align ***/
.text-right {
    text-align: right;
}
.has-text-align-center {
    text-align: center;
}
