/*clearfix*/

.cf:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}

.cf {
    clear: both;
    display: inline-block;
}

* html .cf {
    height: 1%;
}

.cf {
    display: block;
}


/*clearfix End*/


/*同時提供 準速*/

@media screen and (max-width: 599px) {
    .module--site-information,
    .module--tv-news,
    .module--just-in {
        padding-left: 16px;
        padding-right: 16px;
    }
}

@media screen and (min-width: 600px) {
    .module--site-information,
    .module--tv-news,
    .module--just-in {
        width: 960px!important;
        margin: 0 auto;
    }
}


/*文字関連*/

.textRight {
    text-align: right!important;
}

.textCenter {
    text-align: center!important;
}


/*マージン関連*/

.bottom_0 {
    margin-bottom: 0!important;
}

.paddingBottom_0 {
    padding-bottom: 0!important;
}


/*#content-inner section {
    margin-bottom: 40px;
}*/


/*PC・SP非表示*/

@media screen and (max-width: 599px) {
    .spHide {
        display: none;
    }
}

@media screen and (min-width: 600px) {
    .pcHide {
        display: none;
    }
}


/*画面幅*/

@media screen and (min-width: 600px) {
    .w640 {
        width: 640px!important;
        margin: 0 auto;
        float: none!important;
    }
    .w960 {
        width: 960px!important;
        margin: 0 auto;
        float: none!important;
    }
}


/*タイトル*/

.titleBanner,
.bannerTitle {
    margin-bottom: 40px;
}

.module--detail .titleBanner .content--detail-title {
    padding-bottom: 0;
}

.bannerTitle .content--detail-title {
    background-color: #0a457f;
    color: #fff;
    font-weight: bold;
}

.bannerTitle.btBlue .content--detail-title {
    background-color: #0087d2;
}

.bannerTitle.btBeige .content--detail-title {
    background-color: #beaa5a;
}

.bannerTitle.btGreeen .content--detail-title {
    background-color: #64cd46;
}

.bannerTitle.btEgreeen .content--detail-title {
    background-color: #5aaab9;
}

.bannerTitle.btPurple .content--detail-title {
    background-color: #be6ec8;
}

.bannerTitle.btRed .content--detail-title {
    background-color: #f55050;
}

.bannerTitle.btOgange .content--detail-title {
    background-color: #ff6a00;
}

.bannerTitle time {
    margin: 10px 0 0;
    text-align: right;
    display: block;
}

@media screen and (max-width: 599px) {
    .headerBnr {
        margin-bottom: 15px;
    }
    .bannerTitle .content--detail-title {
        min-height: 80px;
        padding: 10px 0;
    }
    .bannerTitle .caption span {
        position: relative;
        display: block;
        width: 120px;
        font-size: 14px;
        line-height: 26px;
        text-align: right;
        font-weight: bold;
        color: #fff;
        padding-right: 14px;
        background-color: #666;
    }
    .bannerTitle .caption span:before {
        content: '';
        position: absolute;
        right: -18px;
        top: 0;
        display: block;
        width: 0;
        height: 0;
        border-top: 26px solid #666;
        border-left: 0 solid transparent;
        border-right: 18px solid transparent;
        border-bottom: 0 solid transparent;
    }
    .bannerTitle h1.content--title {
        padding: 10px 10px 0;
        margin-bottom: 0;
        font-size: 26px;
    }
}

@media print,
screen and (min-width: 600px) {
    .bannerTitle .content--detail-title {
        position: relative;
        min-height: 90px;
        padding: 20px 0;
    }
    .bannerTitle .caption {
        position: absolute;
        left: 0;
        top: 50%;
    }
    .bannerTitle .caption span {
        position: relative;
        display: block;
        width: 144px;
        font-size: 18px;
        line-height: 32px;
        text-align: right;
        font-weight: bold;
        color: #fff;
        margin-top: -16px;
        padding-right: 14px;
        background-color: #666;
    }
    .bannerTitle .caption span:before {
        content: '';
        position: absolute;
        right: -18px;
        top: 0;
        display: block;
        width: 0;
        height: 0;
        border-top: 32px solid #666;
        border-left: 0 solid transparent;
        border-right: 18px solid transparent;
        border-bottom: 0 solid transparent;
    }
    .bannerTitle h1.content--title {
        font-size: 40px;
        line-height: 1.2;
        padding-left: 190px;
        margin-bottom: 0;
    }
    .bannerTitle figure {
        width: 640px;
        margin: 0 auto;
    }
}


/*見出し*/

h2.ttlBlue,
h2.ttlBeige,
h2.ttlGreen,
h2.ttlEgreeen,
h2.ttlPurple,
h2.ttlRed,
h2.ttlOgange {
    padding: 12px 15px!important;
}


/*h3 {
    font-size: 160%!important;
}*/

h3.ttlBlue,
h3.ttlBeige,
h3.ttlGreen,
h3.ttlEgreeen,
h3.ttlPurple,
h3.ttlRed,
h3.ttlOgange {
    padding: 0 15px!important;
    border-left: 11px solid #2d8c3c;
}

h4 {
    font-size: 140%!important;
    margin-bottom: 16px!important;
}

h5 {
    font-weight: bold;
    margin-bottom: 16px;
}

.ttlBlue {
    border-left: 11px solid #0087d2!important;
}

.ttlBeige {
    border-left: 11px solid #beaa5a!important;
}

.ttlGreen {
    border-left: 11px solid #64cd46!important;
}

.ttlEgreeen {
    border-left: 11px solid #5aaab9!important;
}

.ttlPurple {
    border-left: 11px solid #be6ec8!important;
}

.ttlRed {
    border-left: 11px solid #f55050!important;
}

.ttlOgange {
    border-left: 11px solid #ff6a00!important;
}


/*タグ調整*/

.tagUrl .module--header {
    display: none;
}

.tagUrl.noImg dt {
    display: none;
}


/*アコーディオン*/

.slideToggle .bodyToggle:hover p {
    cursor: pointer;
    color: #888;
}

.slideToggle {
    margin-bottom: 40px;
}

.slideToggle .bodyToggle {
    padding-bottom: 20px;
}

.slideToggle .button {
    position: relative;
}


/*.slideToggle .button span:before {
    content: "▼";
    position: absolute;
    left: 8px;
    top: 36%;
    font-size: 10px;
    margin: auto 0;
    padding-right: 8px;
    font-weight: normal;
    color: #888;
}

.slideToggle .activeToggle span:before {
    content: "▲";
}*/

.slideToggle h4 {
    margin-bottom: 8px!important;
}

.slideToggle h4:hover {
    cursor: pointer;
    color: #888;
}

.slideToggle h4:before {
    content: "▼";
    position: absolute;
    font-weight: normal;
    left: 15px;
}

.slideToggle h4 + .image_center {
    padding: 8px;
}

.slideToggle h4 + .image_center p:last-child {
    margin-bottom: 8px!important;
}

.slideToggle .active:before {
    content: "▲";
}


/*.slideToggle .activeToggle {
    display: none;
}*/


/*動画*/

.content--thumb.tmpl_video {
    width: 640px;
    margin: 0 auto;
}

.content--thumb.tmpl_video.is_top,
.content--thumb.tmpl_video.is_middle {
    margin-bottom: 16px!important;
}

.content--thumb.tmpl_video.is_bottom {
    margin-bottom: 40px!important;
}
