﻿@import url(./default_body.css);
@import url(./topFreearea_map.css);

a:hover {
    top: initial;
    left: initial;
}

.wrapper1100 {
    max-width: 1100px;
    margin: 0px auto;
}

/* 横スクロールバー禁止 */
html, body {
    overflow-x: hidden;
}

/* TOP画面外枠 */
#container {
    width: 100%;
    margin: 0px auto;
    margin-top: 0px;
    font-size: 90%;
    padding: 0px;
}

/* メイン */
.mainBlock {
    max-width: 1100px;
    margin: 0px auto 0px auto;
    padding: 0px 0px 0px;
}

/*アニメーション*/

/*フェードインスクロールイン*/
.fadein.scrollin {
    opacity: 1;
    transform: translate(0, 0);
}

.fadein {
    opacity: 0;
    transform: translate(0, 50px);
    transition: all 800ms;
}

/*フェードインズームイン*/
.zoomin.scrollin {
    opacity: 1;
    transform: scale(1);
}

.zoomin {
    opacity: 0;
    transform: scale(0.8);
    transition: all 2000ms;
}

#struct {
    margin-left: auto;
    margin-right: auto;
}

img.imgFromText {
    max-height: 126px !important;
    max-width: 90px !important;
}

* html img.imgFromText {
    height: 126px !important;
    width: 90px !important;
}

/*:::::::::::::::::::::::::
 * 枠組
 *::::::::::::::::::::::::*/
#area_annai {
    display: flex;
    flex-direction: row;
    padding-top: 50px;
}

#jyuuyou_Area {
    margin-top: 40px;
    margin-bottom: 45px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    border-radius: 5px;
}

#banSlide_chuo {
    width: 100%;
    margin: 40px auto 0px auto;
}

#btn_area {
    padding-top: 70px;
    padding-bottom: 50px;
}

/*:::::::::::::::::::::::::
 * 特集コンテンツ / 案内
 *::::::::::::::::::::::::*/

.annai_list {
    width: 100%;
    padding: 20px;
}

.title_image {
    margin-top: 25px;
    text-align: center;
}

.annai_shousai {
    margin-top: 20px;
    padding-bottom: 15px;
    text-align: center;
}

    .annai_shousai p {
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        font-size: 1.9em;
        font-weight: 500;
    }

.syousai_list {
    padding: 15px 15px 15px 15px;
    line-height: 33px;
}

    .syousai_list ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .syousai_list li {
        background: url('../images/chuo/Icon ion-ios-arrow-right.png') no-repeat 0px 17px;
        padding: 8px 20px 5px;
        font-size: 1.2em;
        font-weight: 500;
    }

.sns_btn_wrap {
    margin: auto;
    max-width: 330px;
}

.sns_btn_wrap a {
    text-decoration: none !important;    
}

.sns_btn {
    height: 80px;
    border-radius: 5px;
    margin-top: 25px;
    margin-left: 15px;
    text-align: center;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    font-size: 1.6em;
    font-weight: bold;
    gap: 15px;
}

.clear {
    clear: both;
}

.flash {
    width: 700px;
    height: 600px;
}

    .flash img {
        display: none; /* 読み込みされただけの画像は非表示 */
    }

    .flash li img {
        width: 100%;
    }


@media screen and (max-width:1024px) {
    #area_annai {
        padding-top: 0px;
        flex-direction: column;
    }

    .annai_list {
        width: auto;
    }

    .titleimg {
        margin-top: 0px;
    }

    .syousai_list ul {
        display: flex;
        justify-content: space-between;
    }

    .flash {
        width: 100%;
        height: 100%;
    }
}

@media screen and (max-width: 820px) {
    .syousai_list ul {
        display: block;
    }
}

@media screen and (max-width: 600px) {

    .annai_list {
        padding: 20px;
    }

    .syousai_list ul {
        line-height: 33px;
    }

    .syousai_list a {
        font-size: 1.1em;
    }
}

@media screen and (max-width: 410px) {
    .layouttype6 .bx-wrapper .bx-viewport img, .layouttype7 .bx-wrapper .bx-viewport img {
        height: auto !important;
        aspect-ratio: 410 / 340 !important;
    }
}

/***************************/
/* 各スライダーの再生・停止ボタン */
/***************************/

#ban_slide_set_chuo .slick_toggle_wrap {
    width: 70%;
    margin: 0px auto;
    padding: 0px;
    position: relative;
    height: 20px;
}

.slick_toggle_wrap {
    width: 100%;
    margin: 0px auto;
    padding: 0px;
    position: relative;
    height: 20px
}

    .slick_toggle_wrap span {
        position: absolute;
        right: 5px;
        bottom: 20px;
        border: solid 1px;
        padding: 0px 0px 0px 0px;
        height: 19px;
    }

.slick_toggle {
    width: 20px;
    font-size: 0.9em;
    padding: 1px;
    border: none;
    text-align: center;
    vertical-align: middle;
    display: inline;
    cursor: pointer;
    cursor: hand;
}

.slick_toggl .stop {
    display: block;
    width: 20px;
    z-index: 10;
}

.slick_toggle .play {
    display: none;
    width: 0px;
    z-index: 0;
}

.slick_toggle.paused .stop {
    display: none !important;
    width: 0px !important;
    z-index: 0 !important;
}

.slick_toggle.paused .play {
    display: block !important;
    width: auto;
    z-index: 10 !important;
}

/* スライド停止ボタン調整 */
.bx-controls-auto .bx-controls-auto-item {
    width: 15px !important;
    height: 12px !important;
}

@media screen and (min-width:1466px) {

}


@media screen and (max-width:1110px) {

    #banSlide {
        max-width: 310px !important;
    }
}

@media screen and (max-width: 500px) {

    #banSlide {
        max-width: 240px !important;
    }

    .slick-initialized .slick-slide {
        max-width: 220px;
    }
}

/*:::::::::::::::::::::::::
 * 重要なお知らせ
 *::::::::::::::::::::::::*/
    #jyuuyou_Area .titleimg {
        padding: 20px 25px;
        position: relative;
        margin-right: 20px;
    }

        #jyuuyou_Area .titleimg::after {
            content: '';
            position: absolute;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
            height: 90%;
            width: 1px;
        }

        #jyuuyou_Area .titleimg h3 {
            font-size: 1.75em;
            white-space: nowrap;
            margin: 0;
        }

    #jyuuyou_Area .info {
        padding: 0px;
        width: auto;
        max-width: 780px;
    }

    #jyuuyou_Area .jyuuyou_info ul {
        list-style: none;
        padding: 0;
        margin-top: 15px;
        margin-bottom: 15px;
        margin-left: 15px;
    }

        #jyuuyou_Area .jyuuyou_info ul li {
            padding: 3px 0;
        }

    #jyuuyou_Area .jyuuyou_info article {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 35px;
    }

    #jyuuyou_Area .koushinDay {
        font-size: 1.05em;
    }

    #jyuuyou_Area .newTtl {
        font-size: 1.2em;
    }

@media screen and (max-width:1110px) {

    #jyuuyou_Area {
        margin-left: 30px;
        margin-right: 30px;
    }
}

@media screen and (max-width:500px) {
    #jyuuyou_Area .titleimg {
        width: 100%;
        padding: 20px 25px;
        text-align: center;
    }

        #jyuuyou_Area .titleimg::after {
            content: '';
            position: absolute;
            left: 10px;
            top: 95%;
            bottom: 0;
            width: 100%;
            height: 2px;
            transform: none;
        }

    #jyuuyou_Area .info {
        padding: 0px 5px 5px 10px;
        width: 100%;
    }

    #jyuuyou_Area .jyuuyou_info article {
        display: flex;
        flex-direction: column;
        align-items: start;
        padding-bottom: 10px;
        gap: 0;
    }
}

 /*:::::::::::::::::::::::::
 * トピックス
 *::::::::::::::::::::::::*/

    #topics .triangle_top {
        width: 85%;
        margin: auto;
        height: 60px;
        clip-path: polygon(0 100%, 50% 0, 100% 100%);
    }

    #topics .topics_cont_title {
        text-align: center;
        padding-bottom: 20px;
    }

        #topics .topics_cont_title h4 {
            margin: 0;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 10px;
        }

        #topics .topics_cont_title img {
            max-width: 300px;
        }

        #topics .topics_cont_title h4 span {
            text-align: center;
            font-size: 1.8em;
            font-weight: bold;
            color: gray;
        }

        #topics .topics_cont_title span {
            padding: 2px 8px;
            text-align: center;
            font-size: 1em;
        }

@media screen and (max-width:500px) {
    #topics .triangle_top {
        width: 100%;
        margin: auto;
        height: 50px;
        clip-path: polygon(0 100%, 50% 0, 100% 100%);
    }
}

 /*:::::::::::::::::::::::::
 * 記事スライダー
 *::::::::::::::::::::::::*/
    #ban_slide_set_chuo {
        padding: 0px 0px 0px;
        z-index: -2;
        position: relative;
    }


        /* 記事スライダーの画像 */
        #ban_slide_set_chuo img {
            margin: 0px auto;
            width: 250px !important;
            height: 160px;
            object-fit: cover;
            padding: 0px 5px;
            object-position: top;
        }

    #banSlide #ban_slide_set_chuo li {
        margin: 0px 15px 20px;
        box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
        border-radius: 5px;
        padding: 0px 10px 0px 10px;
        height: 360px;
    }

    #ban_slide_set_chuo article slick-slide slick-cloned slick-active {
        max-height: 350px;
    }

    #ban_slide_set_chuo .slick-dots li {
        box-shadow: unset !important;
        height: unset !important;
        margin: 0px auto !important;
    }

    /* スライダーの前・次ボタンの位置 */
    #ban_slide_set_chuo .slick-prev,
    #ban_slide_set_chuo .slick-next {
        top: 95px !important;
    }

    /* 更新日 */
    #ban_slide_set_chuo .kiji_koushinDay {
        padding: 10px 0px 0px 0px;
        font-size: 1.1em;
        width: 250px;
        text-align: right;
    }

    /* タイトル */
    #ban_slide_set_chuo .kiji_title {
        margin: 0px auto;
        font-size: 1em;
        width: 250px;
        /*padding: 5px 10px;*/
        overflow: hidden;
        text-align: start;
    }

        #ban_slide_set_chuo .kiji_title a {
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 3;
            overflow: hidden;
            line-height: 1.8;
            min-height: 90px;
            font-size: 1.1em;
            word-wrap: break-word;
            word-break: break-all;
        }

    #ban_slide_set_chuo .slick-list {
        overflow: hidden;
    }

    /* 概要文 */
    #ban_slide_set_chuo .kiji_gaiyou {
        margin: 15px 0px 10px 45px;
        font-size: 0.9em;
        width: 280px;
    }

    .slick-track {
        margin-bottom: 10px !important;
    }


    /* Youtubeタグ */
    #ban_slide_set_chuo .youtubeImage {
        max-width: 280px;
    }

        #ban_slide_set_chuo .youtubeImage iframe {
            max-width: 100% !important;
            max-height: 160px !important;
        }

    /*    #ban_slide_set_chuo .slick-dotted.slick-slider {
        padding-left: 38px !important;
        padding-right: 38px !important;
        margin-bottom: 2px !important;
    }
*/

    #ban_slide_set_chuo .slick-prev {
        width: 50px;
        height: 50px;
        left: 0;
        position: absolute;
        z-index: 9;
    }

        #ban_slide_set_chuo .slick-prev:before {
            content: '';
            width: 30px;
            height: 30px;
            border-radius: 50%;
            position: absolute;
            top: 50%;
            left: 0;
            margin-top: -15px;
            opacity: 0.4;
        }

        #ban_slide_set_chuo .slick-prev:after {
            content: '';
            width: 0;
            height: 0;
            border: solid 5px transparent;
            border-right: solid 8px #ffffff;
            position: absolute;
            top: 50%;
            left: 5px;
            margin-top: -6px;
        }

    #ban_slide_set_chuo .slick-next {
        width: 50px;
        height: 50px;
        right: 0;
        position: absolute;
        z-index: 9;
    }

        #ban_slide_set_chuo .slick-next:before {
            content: '';
            width: 30px;
            height: 30px;
            border-radius: 50%;
            position: absolute;
            top: 50%;
            right: 0;
            margin-top: -15px;
            opacity: 0.4;
        }

        #ban_slide_set_chuo .slick-next:after {
            content: '';
            width: 0;
            height: 0;
            position: absolute;
            top: 50%;
            right: 5px;
            margin-top: -6px;
        }

    #ban_slide_set_chuo .slick-dots {
        display: block !important;
        bottom: -48px;
        position: absolute;
        height: 33px !important;
        left: 0px;
    }

        #ban_slide_set_chuo .slick-dots li button:before {
            font-family: 'slick';
            font-size: 0.9em;
            line-height: 20px;
            position: absolute;
            top: 0;
            left: 0;
            width: 20px;
            height: 20px;
            content: '•';
            text-align: center;
            opacity: .28;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
        }

        #ban_slide_set_chuo .slick-dots li.slick-active button:before {
            opacity: .98;
        }

    /*記事スライド高さ*/
    .slick-initialized .slick-slide {
        max-width: 260px;
        margin: 10px;
        margin-bottom: 0px;
        height: 295px;
        border-radius: 5px;
    }



    @media screen and (min-width:1025px) {
        #banSlide #ban_slide_set_chuo li img {
        }
    }

    /* タブレット用 */
    @media screen and (max-width:1024px) {
        #banSlide #ban_slide_set_chuo li img {
            width: 100%;
            margin: 0px;
        }
    }

    /* スマホ用 */
    @media screen and (max-width:767px) {
        #banSlide #ban_slide_set_chuo li img {
            width: 100%;
            margin: 0px;
        }

        #ban_slide_set_chuo .slick_toggle_wrap {
            width: 80%;
            top: 8px;
        }
    }

    @media screen and (max-width:380px) {
        #banSlide #ban_slide_set_chuo li img {
            width: 100%;
            margin: 0px;
            height: auto;
        }
    }


/*:::::::::::::::::::::::::
 * スライダーボタン
 *::::::::::::::::::::::::*/
    .slick-prev {
        left: 10px !important;
    }

    .slick-next {
        right: 10px !important;
    }

.slick-dots li button {
    font-size: 1.1em!important;
}


/*:::::::::::::::::::::::::
 * ボタンエリア
 *::::::::::::::::::::::::*/

#btn_area .btn_waku {
    padding-left: 15px;
    padding-right: 15px;
}

#btn_area .goku_btn {
    border-radius: 5px;
    padding: 15px 20px;
    max-width: 900px;
    height: 60px;
    align-content: center;
    margin: auto;
}

    #btn_area .goku_btn div {
        display: flex;
        justify-content: space-around;
        flex-wrap: wrap;
        gap: 30px;
        padding: 0;
        margin: 0;
    }

    #btn_area .goku_btn p {
        padding: 0;
        margin: 0;
        position: relative;
        line-height: 33px;
    }

    #btn_area .goku_btn .fa-circle-chevron-right {
        margin-right: 5px;
    }

    #btn_area .goku_btn a {
        font-size: 1.7em;
        display: inline-flex;
        align-items: center;
        position: relative;
        padding-left: 20px;
        vertical-align: -webkit-baseline-middle;
    }

/*:::::::::::::::::::::::::
 * バナーエリア
 *::::::::::::::::::::::::*/

.ban {
    border: 1px solid #cccccc;
}

.r_menu {
    margin-bottom: 7px;
}

    .r_menu .banTitle {
        font-size: 0.9em;
        height: 24px;
        line-height: 24px;
        text-align: center;
    }

    .r_menu .banImg {
        height: 55px;
        padding: 8px 10px 5px 35px;
        margin: 0px auto;
        text-align: center;
    }

#textbannerArea {
    margin: 15px auto 25px;
}

    #textbannerArea ul li {
        float: left;
        padding: 15px 15px 15px 25px;
        margin: 0px 8px;
        border-radius: 5px;
    }


#oneBanArea {
    margin: 0px auto;
    padding-left: 5px;
}


#kanrenbanArea {
    max-width: 100%;
    margin: 0px auto;
    padding: 0px 0px;
}

.kanrenban {
    padding: 0px 0px;
    margin: 0px auto;
}


#kanrenbanBox {
    max-width: 100%;
    margin: 0px auto 15px;
    padding: 0px 0px 15px 0px;
}

#koukokubanBox {
    max-width: 100%;
    margin: 0px auto 15px;
    padding: 0px 0px 15px 0px;
}


#koukoku_banArea {
    margin: 0px;
    padding: 60px 0px;
}

    #koukoku_banArea h4 span {
        padding: 4px 8px;
        font-weight: bold;
    }

#bannerArea h4 span {
    border-left: 5px solid #009799;
    padding: 4px 8px;
    font-weight: bold;
    margin-right: 50px;
}

ul.bannaiyo {
    padding: 0px 0px 0px 0px;
    margin: 0px;
}

#kanrenban div#kanrenbanHeader, #kanrenban div#koukokubanHeader {
    margin: 5px 0px 5px 0px;
    padding: 15px 10px 0px;
}

#kanrenbanHeader h4 {
    border-left: 5px solid #006837;
    margin: 0 auto 10px;
    padding: 3px 30px 3px 10px;
    font-size: 1.1em;
}

#koukokubanHeader h4 {
    border-left: 5px solid #79c06e;
    margin: 0 auto 10px;
    padding: 3px 30px 3px 10px;
    font-size: 1.1em;
}



#kanrenbanHeader p {
    background: url("../images/top1/ya_green.png") no-repeat 0 center;
    margin: 0 auto 10px;
    padding: 3px 30px 3px 10px;
    float: right;
}

#koukokubanHeader span {
    margin: 0 0 0 10px;
    padding: 0px;
    font-size: 0.9em;
}

#adinfo {
    width: 100%;
    margin: 15px auto;
}

#adinfoBox {
    width: 100%;
    margin: 0px auto 15px;
    padding: 0px 0px 15px 0px;
}

#banArea {
    margin: 0px;
    padding: 0px;
}

ul.bannaiyo {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin: 0px auto 0px auto;
    justify-content: space-around;
}

#adinfo div#addinfoHeader {
    margin: 5px 0px 15px 0px;
    padding: 5px 10px 5px;
}

#addinfoHeader h4 {
    margin: 0 auto 10px;
    padding: 3px 30px 3px 10px;
    font-size: 1.1em;
}

#addinfoHeader p {
    background: url("../images/top1/ya_green.png") no-repeat 0 center;
    margin: 0 auto 10px;
    padding: 3px 30px 3px 10px;
    float: right;
}

/* 2016/09/15 アクセシビリティ対応 <div><p>→<ul><li>*/
p.imgBan,
li.imgBan {
    display: inline-block;
    vertical-align: middle;
    margin: 10px 10px 5px 5px;
    float: left;
    padding: 15px 0px;
}

    /* 2016/09/15 アクセシビリティ対応 <div><p>→<ul><li>*/
    p.imgBan img,
    li.imgBan img {
        display: block;
    }

/* 2016/09/15 アクセシビリティ対応 <div><p>→<ul><li>*/
p.textBan,
li.textBan {
    display: inline-block;
    vertical-align: middle;
    margin: 5px;
}
    /* 2016/09/15 アクセシビリティ対応 <div><p>→<ul><li>*/
    p.textBan span,
    li.textBan span {
        display: table;
        border: solid 1px #CCCCCC;
        width: 188px;
        height: 52px;
        box-sizing: border-box;
        line-height: 1.1em;
        text-align: center;
        overflow: hidden;
    }
        /* 2016/09/15 アクセシビリティ対応 <div><p>→<ul><li>*/
        p.textBan span a,
        li.textBan span a {
            display: table-cell;
            vertical-align: middle;
            text-align: center;
            text-decoration: none;
        }

/* banスライダーのテキストバナー内の別ウィンドウで開くアイコン画像 */
.textBan .textBan_newWinOpn {
    width: 10px;
    height: 9px;
}

/* フローティングバナー */
div#fBanArea {
    width: 100%;
    font-size: 0.9em;
    padding: 5px 0px 0px 0px;
    display: none;
    margin-bottom: 10px;
}

    div#fBanArea div#fBanBox {
        margin: 10px auto;
        position: relative;
    }

@media screen and (min-width:1201px) {
    div#fBanArea div#fBanBox {
        max-width: 1200px;
    }
}

@media screen and (max-width:1200px) {
    div#fBanArea div#fBanBox {
        max-width: 95%;
    }
}

@media screen and (max-width:767px) {
    div#fBanArea div#fBanBox {
        max-width: 98%;
    }
}

#fAdinfoLink {
    float: left;
    margin-left: 50px;
}

.fLinkInfo p {
    float: left;
    font-size: 1.2em;
    font-weight: bold;
    padding: 0px 0px 0px 10px;
    border-left: 5px solid #006837;
    margin: 0px 0px 0px 10px;
}

div#fBanArea.floating {
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 1199;
    margin-bottom: 0px;
}

div#floatOff {
    float: left;
    text-align: center;
    margin-right: 5px;
}

    div#floatOff img {
        cursor: pointer;
    }

#fBanItem {
    margin: 10px auto 0px;
}

@media screen and (min-width:1201px) {
    div#fBanArea div#fBanBox {
        max-width: 1000px;
    }
}

@media screen and (max-width:1200px) {
    div#fBanArea div#fBanBox {
        max-width: 95%;
    }
}

@media screen and (max-width:767px) {
    div#fBanArea div#fBanBox {
        max-width: 98%;
    }

}


/* 2016/09/15 アクセシビリティ対応 <div><p>→<ul><li>*/
p.imgBanfl,
li.imgBanfl {
    display: inline-block;
    vertical-align: middle;
    margin: 0px 7px 10px 0px;
}
    /* 2016/09/15 アクセシビリティ対応 <div><p>→<ul><li>*/
    p.imgBanfl img,
    li.imgBanfl img {
        display: block;
    }

/* 2016/09/15 アクセシビリティ対応 <div><p>→<ul><li>*/
p.textBanfl,
li.textBanfl {
    display: inline-block;
    vertical-align: middle;
    margin: 0px 20px 10px 0px;
}
    /* 2016/09/15 アクセシビリティ対応 <div><p>→<ul><li>*/
    p.textBanfl span,
    li.textBanfl span {
        display: table;
        border: solid 1px #CCCCCC;
        width: 188px;
        height: 52px;
        box-sizing: border-box;
        line-height: 1.1em;
        text-align: center;
        overflow: hidden;
    }
        /* 2016/09/15 アクセシビリティ対応 <div><p>→<ul><li>*/
        p.textBanfl span a,
        li.textBanfl span a {
            display: table-cell;
            vertical-align: middle;
            text-align: center;
            text-decoration: none;
        }

/*:::::::::::::::::::::::::
 * snsボタン
 *::::::::::::::::::::::::*/
.snsbutton {
    float: left;
    margin: 25px auto 85px;
}

    .snsbutton li {
        z-index: 101;
        float: left;
    }

#snsbutton_twitter {
    margin-right: 15px;
}

#snsbutton_facebook {
    margin-right: 10px;
}

span.forSR {
    position: absolute;
    left: -1000em;
}

.snsmenu {
    max-width: 500px;
    width: 100%;
}

/*:::::::::::::::::::::::::
 * 新着情報ボタン
 *::::::::::::::::::::::::*/

#new_btn {
    position: fixed;
    top: 350px;
    right: calc((100% - 1350px) / 2);
    z-index: 1200;
}

    #new_btn img:hover {
        transform: translateY(3px);
    }

    #new_btn img {
        transition: all 0.1s ease;
    }

@media screen and (max-width: 1300px) {
    #new_btn {
        right: 1rem;
    }
}

@media screen and (max-width: 1024px) {
    .new_info_page .btn_pagetop {
        position: fixed;
        bottom: 90px;
        right: 80px;
        z-index: 999;
    }
}


@media screen and (max-width: 600px) {
    .new_info_page .btn_pagetop {
        position: fixed;
        bottom: 25px;
        right: 10px;
        z-index: 999;
    }

        .new_info_page .btn_pagetop img {
            transition: 0.3s;
        }
}

img.imgFromText {
    max-height: 126px !important;
    max-width: 90px !important;
}

* html img.imgFromText {
    height: 126px !important;
    width: 90px !important;
}

/*:::::::::::::::::::::::::
 * フリーエリア用
 *::::::::::::::::::::::::*/

#container .freearea {
    max-width: 1100px;
    margin: 20px auto;
    padding: 8px 8px 18px;
    border-radius: 5px;
}

    #container .freearea h2.title {
        padding: 8px 0 4px 20px;
        margin: 15px 0px;
        font-size: 1.5em;
        font-weight: 500;
    }

    #container .freearea h3.title {
        padding: 12px 10px 10px 20px;
        font-size: 1.3em;
        background-size: 100% 6%;
        background-position: bottom;
        font-weight: 500;
        margin: 0px auto 30px;
    }

    #container .freearea h4.title {
        font-size: 1.1em;
        padding: 3px 0 3px 15px;
        margin: 15px 0px;
        border-radius: 0px;
        font-weight: bold;
    }

/*.freeareaWrap {
    margin: 0px auto;
    padding: 0px;
    width: 99%;
}

.freearea {
    padding: 0px;
    margin-top: 0px;
}

    .freearea.disp_marquee_text {
        background-color: transparent !important;
        margin: 1px auto !important;
    }*/


/*:::::::::::::::::::::::::
 * あなたが最近チェックしたページ
 *::::::::::::::::::::::::*/
div#browsingHistoryArea {
    max-width: 1200px;
    margin: 15px auto 10px;
}

div#browsinghisotry_block ul {
    overflow: hidden;
    padding: 0px 10px;
}

    div#browsinghisotry_block ul li {
        border-top: 1px dotted #cccccc;
        margin-top: -1px;
        padding: 5px 0;
    }

div#browsinghisotry_block .upddate {
    float: left;
    font-size: 0.9em;
    min-width: 130px;
    width: auto;
    padding-left: 5px;
}

#browsingHistoryTop1 .browsinghistory_header {
    padding: 10px 0px 10px 12px;
}

div#browsinghisotry_block .title {
    float: left;
    max-width: 800px;
    text-overflow: ellipsis;
    padding: 0px 5px 0px 10px;
}

div#browsinghisotry_block .del {
}

#browsinghistory_ttl h2 {
    float: left;
    font-size: 1.1em;
    font-weight: bold;
    padding-left: 10px;
    border-left: 5px solid #cccccc;
}

#browsinghistory_rmv {
    float: right;
    padding-right: 5px;
    font-size: 0.9em;
}

/* さがすパネル 検索窓 */
.siteSearchArea .searchver2-input {
    height: 45px !important;
    width: calc(90% - 40px) !important;
    max-width: 500px !important;
}

.bootstrap-scope .input {
    width: calc(100% - 36px);
    min-width: 157px;
    height: 100%;
    border: 1px solid #ccc !important;
    border-radius: 50px !important;
}

.siteSearchArea .svg-inline--fa.fa-w-16 {
    color: #0F98BB !important;
    font-size: 38px !important;
}

#mainSearch02 .input-group-append span::after {
    content: "検索";
    font-weight: 700;
    display: none !important;
}

/*:::::::::::::::::::::::::
 * レスポンシブル用
 *::::::::::::::::::::::::*/


@media screen and (max-width:1100px) {
    /* タブレット用のスタイル記述 */
    img {
        max-width: 100%;
        height: auto;
        width /***/: auto;
    }

    #slidArea {
        width: 100%;
        margin: 0px auto;
        float: none;
    }


    .mainBlock {
        margin: 0px auto 0px;
        padding-top: 5px;
    }


    .kinkyuBlock {
        border: 1px solid #C1272D;
        padding: 0px;
        box-sizing: border-box;
        margin: 0px auto 0px;
        max-width: none;
        float: none;
    }


    /* サイト内検索 */
    #mainSearch02 {
        margin: 10px 10px 0px;
    }

    input.btnSearch02 {
        margin: 0px;
        padding: 0px;
        vertical-align: middle;
    }



    #benri_btn ul li {
        min-width: 150px;
    }

    .boxArea ul li::before {
        padding: 5px 5px;
        line-height: 0em;
    }

    .naiyo ul li {
        margin: 15px 0px;
        float: left;
        min-width: 130px;
    }
}

@media screen and (max-width:1000px) {
}

@media screen and (max-width:980px) {
    /* タブレット用のスタイル記述 */

    ul.kinkyuTxt li p.koshin {
        float: none;
        min-width: 70px;
        margin-left: 10px;
    }

    ul.kinkyuTxt li div.k_naiyo {
        float: left;
        max-width: 100%;
        margin: 0px 0px 10px 10px;
    }
}

@media screen and (max-width:767px) {
    /* スマートフォン用のスタイル記述 */

    #btn_area {
        padding: 30px 0px;
    }

        #btn_area .goku_btn {
            max-width: 350px;
            margin: 0px auto;
            height: auto;
            padding: 15px 0px 15px 5px;
        }

            #btn_area .goku_btn div {
                gap: 0px;
                justify-content: flex-start;
                margin: 0px 10px 0px 13px;
            }

            #btn_area .goku_btn p {
                margin: 0;
            }

                /* 最後の行（南区のある行）を左揃えにする */
                #btn_area .goku_btn p:nth-last-child(-n+2) {
                    margin-left: 0;
                }

            #btn_area .goku_btn a {
                font-size: 1.5em;
                display: flex;
            }                
            
        #koukoku_banArea {
            padding: 0px 0px 30px 0px;
        }

    .menuitem02 {
        margin: 15px auto 0px;
    }

    #slidArea {
        width: 100%;
        margin: 0px auto;
    }

    #kinkyuArea {
        width: 100%;
        padding: 10px 0px;
    }

    #about_Area {
        width: 100%;
        margin: 0px auto 20px;
    }

    .hinan {
        float: none;
        text-align: left;
        padding: 10px 0px 10px 50px;
        background: url("../images/top1/icon_hinan.png") no-repeat 20px center;
        border-bottom: 1px dotted #ffffff;
    }

    .bousaimail {
        float: none;
        text-align: left;
        padding: 10px 0px 10px 50px;
        background: url("../images/top1/icon_bousai_mail.png") no-repeat 20px center;
    }

    .bousaimap {
        float: none;
        text-align: left;
        padding: 10px 0px 10px 50px;
        background: url("../images/top1/icon_bousai_map.png") no-repeat 20px center;
        border-bottom: 1px dotted #ffffff;
    }

    .bousaiSite {
        padding: 0px;
        vertical-align: middle;
        border-radius: 3px;
        float: none;
        margin: 4px auto 5px;
        padding: 10px 40px 10px 40px;
        font-weight: bold;
        width: 70%;
        text-align: center;
    }

    .serchleft {
        float: none;
        max-width: 100%;
        width: auto;
    }

    input.searchBox02 {
        height: 28px;
        width: 71%;
        margin: 1px 1px 0px 0px;
        vertical-align: middle;
        letter-spacing: normal;
        border: solid 1px #7F7F7F;
    }

    .keywordtitle {
        margin: 10px;
        padding: 5px 5px 5px 5px;
    }

        .keywordtitle span {
            margin: 0px 0px auto 5px;
            padding: 5px 5px 14px 5px;
        }

    .benribox02 {
        width: auto;
    }




    #benri_btn {
        margin: 0px 5px;
    }

    .kanrenban {
        margin: 15px auto;
    }

    div.newTtl {
        float: none;
        width: auto;
        padding: 2px 0px;
    }

    #newTtlTab .selected {
        font-weight: bold;
        padding: 11px 8px 9px;
        margin: 0px;
        cursor: default;
    }

    #newTtlTab h3 {
        float: left;
        padding: 11px 8px 9px;
        margin: 0px 4px 0px 4px;
        text-decoration: none;
        font-size: 0.9em;
        cursor: pointer;
    }

    .info {
        padding: 0px;
    }

        .info p.koushinDay {
            float: none;
            width: 90%;
            font-size: 0.9em;
            text-indent: 0em;
        }

    .infoIchiran {
        float: none;
    }



    .serchright {
        max-width: 320px;
        width: 100%;
        text-align: center;
        margin: 0px auto;
        float: none;
    }

    #life_event {
        margin: 0px auto 0px auto;
        display: inline-flex;
        flex-direction: row;
        width: 100%;
        flex-wrap: wrap;
        justify-content: center;
    }

    .Blockmenu {
        max-width: 1000px;
        margin: 0px auto 0px;
        padding-top: 0px;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .boxArea {
        margin: 10px 0px 15px 10px;
        padding: 0px;
        float: none;
        width: 96%;
    }

    #kohoArea {
        width: auto !important;
        float: none;
        margin: 10px auto;
        padding: 0px;
    }

    #ugokiArea {
        width: auto !important;
        float: none;
        margin: 0px auto;
        padding: 0px;
    }

    .naiyo {
        margin: 0px auto;
        padding: 0px;
    }

    .infoIchiran {
        padding: 3px 2px 2px 33px;
        float: right;
        margin: 10px 0px 2px;
        font-size: 0.9em;
    }

    .btnArea {
        float: none;
        text-align: center;
    }

        .btnArea img {
            text-align: center;
            margin: 0px auto;
        }

    #kanrenbanBox {
        margin: 0px auto;
    }

    ul.bannaiyo {
        padding: 0px 0px 5px 7px;
        margin: 0px auto;
        width: auto;
    }

    p.imgBan, li.imgBan {
        display: inline-block;
        vertical-align: middle;
        margin: 0px 2px 5px 5px;
        float: left;
    }

    #fBanItem {
        text-align: center;
    }

    .newTtl span.termTitle {
        margin: 0px 0px 0px 15px;
    }

    #ugkTxt {
        margin: 0px auto;
    }

    #mainSearch02 {
        margin: 10px 0px;
    }

        #mainSearch02 .searchBox-gcs {
            width: 100% !important;
        }

    h4 {
        padding: 0px 0px 0px 0px;
    }

    #jyuuyou_Area {
    }

        #jyuuyou_Area .jyuuyou_info article {
            display: flex;
            flex-direction: column;
            align-items: start;
            padding-bottom: 10px;
            gap: 0;
        }
}

@media screen and (max-width:400px) {
    /* スマートフォン用のスタイル記述 */

}

/* パーソナライズ */
.personalizeBox {
    margin-bottom: 7px;
    text-align: center;
}

    .personalizeBox .login {
        margin: 10px auto 5px auto;
        text-align: center;
    }

    .personalizeBox ul {
        width: 35%;
        margin: 5px auto;
    }

    .personalizeBox .setsumei {
        padding: 3px 3px 3px 17px;
        background: url("../images/top1/b_01.png") no-repeat 7px center;
        margin: 2px auto;
        text-align: left;
    }

/* wysiwyg */
#mainShosai table.__wys_table {
    width: auto;
}

.__wys_table td {
    border: solid 1px #000000;
    padding: 3px;
}

.__wys_table th {
    background-color: #eeffee;
    border: 1px solid #000000;
    font-weight: bold;
    padding: 3px;
}

/*:::::::::::::::::::::::::
 * 翻訳メニュー
 *::::::::::::::::::::::::*/

#foreignSP {
    display: none;
    width: 99%;
    margin: 3px auto 3px auto;
}

    #foreignSP .plus {
        background: url("../images/top1/btn_plus_white.png") 98% center no-repeat #E49F9A;
        background-size: auto;
        background-size: 14px;
    }

    #foreignSP .minus {
        background: url("../images/top1/btn_minus_white.png") 98% center no-repeat #E49F9A;
        background-size: auto;
        background-size: 14px;
    }

        #foreignSP .plus a,
        #foreignSP .minus a {
            display: block;
            height: 100%;
            padding: 15px 10px 15px 20px;
            text-decoration: none;
            margin: 0px;
            text-align: center;
            font-size: 1.1em;
        }

    #foreignSP .dspMode {
        display: block !important;
        background-color: #E49F9A;
    }

#foreignTitle {
    width: 100%;
    margin: 1px auto;
}

    #foreignTitle a {
        padding: 10px 8px 10px 12px !important;
        color: #333230;
        display: block;
        height: 100%;
    }

#foreignDsp {
    width: 100%;
    margin: 0px auto;
    padding: 2px 0px 6px 0px;
    display: none;
}

    #foreignDsp ul {
        width: 100%;
        margin: 0px auto;
    }

        #foreignDsp ul li {
            padding: 0px;
            width: calc(100% - 10px);
            margin: 2px 0px 0px 4px !important;
            float: left;
            background: url("../images/top1/ya_gray.png") no-repeat 98% center #ffffff;
            background-size: 7px 10px;
            border: 1px solid #333230;
            border-radius: 5px;
        }

            #foreignDsp ul li a {
                width: 70%;
                line-height: 2.4em;
                display: block;
                padding: 0px !important;
                margin-left: 15px !important;
                font-size: 0.9em;
            }


@media screen and (max-width:980px) {
    #foreignSP {
        display: block;
    }
}

@media screen and (max-width:768px) {
}

figure {
    margin: 0;
    padding: 0;
    overflow: hidden;
    position: relative;
    border-radius: 5px;
}

    figure::before {
        position: absolute;
        top: 0;
        left: -75%;
        z-index: 2;
        display: block;
        content: '';
        width: 50%;
        height: 100%;
        background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
        background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
        -webkit-transform: skewX(-25deg);
        transform: skewX(-25deg);
    }

    figure:hover::before {
        -webkit-animation: shine .95s;
        animation: shine .95s;
    }

@-webkit-keyframes shine {
    100% {
        left: 125%;
    }
}

@keyframes shine {
    100% {
        left: 125%;
    }
}

/* サイト背景色・フォントサイズ */
.hMenu {
    float: left; /* 2016/12/22 アクセシビリティ対応 Tab順 right→left*/
    padding: 5px 0px 0px 0px;
    outline: none;
    margin: 5px 10px 0px 0px;
}

    .hMenu a {
        text-decoration: none;
    }

#changeHaikei {
    padding: 5px 5px 5px;
    margin: 5px 0px 0px 0px;
    font-size: 0.9em;
    line-height: 20px;
}

#mainFontSizeSel {
    float: left; /* 2016/12/22 アクセシビリティ対応 Tab順 right→left*/
    font-size: 0.9em;
    padding: 5px 5px 5px;
    outline: none;
    margin: 5px 10px 0px 0px;
    line-height: 20px;
}

    #changeHaikei span, #mainFontSizeSel span, #mainOnsei span {
        display: inline-block;
        vertical-align: middle;
        font-weight: bold;
    }

    #changeHaikei a, #mainFontSizeSel a, #mainOnsei a {
        padding-right: 3px;
        vertical-align: middle;
    }

    #changeHaikei img, #mainFontSizeSel img, #mainOnsei img {
        vertical-align: sub;
    }

.hover-link {
    position: relative;
    text-decoration: none;
    transition: all 0.1s ease;
}

.sink-simple:hover {
    transform: translateY(3px);
}