@charset "UTF-8";
/*jquery検索*/
#hako {
    height: 42px;
    border: solid 1px #ddd;
    width: 100%;
    font-size: 14px;
    background-color: inherit;
    text-align: left;
    padding: 0px 47px 0 20px;
    border-radius: 25px;
    background:#FFF;
}
#button {
    font-size: 18px;
    border: none;
    padding: 10px 10px;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translate(0,-50%);
    background: none;
}
#button:hover {cursor: pointer;}
#hako:hover{box-shadow: inset 0px 0px 3px 0px #5555;}
#hako:focus {
    outline: 0;
    background-color: #fff;
    box-shadow: inset 0px 0px 3px 0px #5555;
}
#search-box {
    font-size: 24px;
    width: 80%;
    margin: 0 auto;
    position: relative;
}
.search-box{
    position: relative;
    margin: 1em auto 40px 0!important;
    width:100%!important;
    max-width:15em!important;
}
@media all and (-ms-high-contrast: none) {
  /* ここに書く */
#search-box {
    width: 50%;
}
}

/*余白設定*/
.ml-05 {
    margin-left: -0.5em;
}

.ml00 {
    margin-left: 0
}

.ml05 {
    margin-left: .5em
}

.ml10 {
    margin-left: 1em
}

.ml15 {
    margin-left: 1.5em
}

.ml20 {
    margin-left: 2em
}

.ml25 {
    margin-left: 2.5em
}

.ml30 {
    margin-left: 3em
}

.ml35 {
    margin-left: 3.5em
}

.ml40 {
    margin-left: 4em
}

.ml45 {
    margin-left: 4.5em
}
.ml50 {
    margin-left: 5em
}
.mlfull {
    margin-left: auto
}

.mr00 {
    margin-right: 0 !important;
}

.mr05 {
    margin-right: .5em
}

.mr10 {
    margin-right: 1em
}

.mr15 {
    margin-right: 1.5em
}

.mr20 {
    margin-right: 2em
}

.mr25 {
    margin-right: 2.5em
}

.mr30 {
    margin-right: 3em!important;
}

.mr35 {
    margin-right: 3.5em
}

.mr40 {
    margin-right: 4em
}

.mr45 {
    margin-right: 4.5em
}

.mr50 {
    margin-right: 5em
}
.mrfull {
    margin-right: auto
}

.mb00 {
    margin-bottom: 0
}

.mb05 {
    margin-bottom: .5em
}

.mb10 {
    margin-bottom: 1em
}

.mb15 {
    margin-bottom: 1.5em
}

.mb20 {
    margin-bottom: 2em
}

.mb25 {
    margin-bottom: 2.5em
}

.mb30 {
    margin-bottom: 3em
}

.mb35 {
    margin-bottom: 3.5em
}

.mb40 {
    margin-bottom: 4em
}

.mb45 {
    margin-bottom: 4.5em
}

.mb50 {
    margin-bottom: 5em
}
.mbfull {
    margin-bottom: auto
}

.mt-50 {
    margin-top: -5em
}

.mt-10 {
    margin-top: -1em
}

.mt-05 {
    margin-top: -.5em
}

.mt00 {
    margin-top: 0
}

.mt05 {
    margin-top: .5em
}

.mt10 {
    margin-top: 1em
}

.mt15 {
    margin-top: 1.5em
}

.mt20 {
    margin-top: 2em
}

.mt25 {
    margin-top: 2.5em
}

.mt30 {
    margin-top: 3em
}

.mt35 {
    margin-top: 3.5em
}

.mt40 {
    margin-top: 4em
}

.mt45 {
    margin-top: 4.5em
}

.mt50 {
    margin-top: 5em
}
.mtfull {
    margin-top: auto
}

.fs10 {
    font-size: 10px;
}

.fs11 {
    font-size: 0.8em;
}

.fs12 {
    font-size: 0.85em;
}

.fs13 {
    font-size: 0.9em;
}

.fs14 {
    font-size: 14px;
    font-size: 1em;
}

.fs15 {
    font-size: 15px;
    font-size: 1.072em;
}

.fs16 {
    font-size: 16px;
    font-size: 1.143em;
}

.fs18 {
    font-size: 17px;
}

.fs18 {
    font-size: 18px;
}

.fs19 {
    font-size: 19px;
}

.fs20 {
    font-size: 20px;
}

@media screen and (max-width: 999px) {
    .fs10 {
        font-size: 10px;
    }

    .fs11 {
        font-size: 11px;
        font-size: 0.8em;
    }

    .fs12 {
        font-size: 12px;
        font-size: 0.87em;
    }

    .fs13 {
        font-size: 13px;
        font-size: 0.9em;
    }

    .fs14 {
        font-size: 14px;
        font-size: 1em;
    }

    .fs15 {
        font-size: 15px;
        font-size: 1.072em;
    }

    .fs16 {
        font-size: 16px;
        font-size: 1.143em;
    }

    .fs18 {
        font-size: 17px;
    }

    .fs18 {
        font-size: 18px;
    }

    .fs19 {
        font-size: 19px;
    }

    .fs20 {
        font-size: 20px;
    }
}


.w10{
    max-width:10%!important;
    width:10%!important;
}
.w15{
    max-width:15%!important;
    width:15%!important;
}
.w18{
    max-width:18%!important;
    width:18%!important;
}
.w20{
    max-width:20%!important;
    width:20%!important;
}
.w22{
    max-width:22%!important;
    width:22%!important;
}
.w25{
    max-width:25%!important;
    width:25%!important;
}
.w30{
    max-width:30%!important;
    width:30%!important;
}
.w35{
    max-width:35%!important;
    width:35%!important;
}
.w40{
    max-width:40%!important;
    width:40%!important;
}
.w50{
    max-width:50%!important;
    width:50%!important;
}
.w60{
    max-width:60%!important;
    width:60%!important;
}
.w65{
    max-width:65%!important;
    width:65%!important;
}
.w70{
    max-width:70%!important;
    width:70%!important;
}
.w75{
    max-width:75%!important;
    width:75%!important;
}
.w78{
    max-width:78%!important;
    width:78%!important;
}
.w80{
    max-width:80%!important;
    width:80%!important;
}
.w82{
    max-width:82%!important;
    width:82%!important;
}
.w85{
    max-width:85%!important;
    width:85%!important;
}
.w90{
    max-width:90%!important;
    width:90%!important;
}

@media (max-width: 768px) {
    .flex .w10,
    .flex .w18,
    .flex .w20,
    .flex .w30,
    .flex .w40,
    .flex .w46,
    .flex .w50,
    .flex .w54,
    .flex .w60,
    .flex .w65,
    .flex .w70,
    .flex .w80,
    .flex .w90{
        max-width: 100%!important;
        width: 100%;
    }
    .right picture,
    .right img{
        margin-left:auto;
        margin-right:auto;
        display: block;
    }
    #business .flex .w18{width:auto!important;}
    #business .flex .w82{width:100%!important;max-width:100%!important;}

}

/*フォントサイズ変更　レイアウト*/
#header_wrap #toolbox{
    min-width:500px;
    width:500px;
    background:#EFEFEF;
    float:right;
    padding:15px;
    border-radius: 0 0 4px 4px;
    display:flex;
    justify-content: center;
}
@media (max-width: 768px){
     #header_wrap
 #toolbox{
       display:none;
     }
}
@media (max-width: 425px){
    #header_wrap #toolbox{zoom:0.8}
}
dl.textSize{
    display:flex;
    justify-content: center;
    align-items: center;
    margin:0;
}

/*フォントサイズ変更*/
dl.textSize dt{ font-size: 10px; white-space: nowrap;}
dl.textSize dd{
    padding: 10px 13px;
    display: inline-block;
    border-radius: 5px;
    text-align: center;
    font-size: 14px;
    font-weight:bold;
    background: #ccc;
    cursor: pointer;
    min-width: 5em;
    text-align: center;
}
dl.textSize dd.textDefault:hover{
	filter: brightness(1.1);
	transition:0.3s;
}
dl.textSize dd.textLarge:hover{
	filter: brightness(1.1);
	transition:0.3s;
}

dl.textSize dd.textDefault{
    color:#FFF;
    border-radius:255px 0 0 255px;
    margin-left:1em;
    background: linear-gradient(#6CC5CE, #589FA6);
    /*transition:0.3s;*/
}
dl.textSize dd.textLarge{
    color:#FFF;
    border-radius:0 255px 255px 0;
    margin-right:1em;
    background: linear-gradient(#6CC5CE, #589FA6);
    /*transition:0.3s;*/
    white-space:nowrap;
}
dl.textSize dd.textDefault.on{
    background: linear-gradient(#6d6c6c, #1F1F1F);
    transition:0.3s
}
dl.textSize dd.textLarge.on{
    background: linear-gradient(#464646, #1F1F1F);
    transition:0.3s
}


/*Google検索*/
#___gcse_0{
    display:flex;
    justify-content: center;
    align-items: center;
    border-radius: 255px;
    /*border: solid 2px #EEE;
    box-shadow: -1px -1px 3px #CCC;*/
    background: #FFF;
    width: calc(100% - 246px);
    padding: 0 10px;
}
#___gcse_0 .gsc-control-searchbox-only,
#___gcse_0 .gsc-control-cse {
    background:none!important;
    border:none!important;
    padding:0!important;
    width: 100%;
}
#___gcse_0 form.gsc-search-box {
    font-size: 13px;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0px!important;
    margin-left: 0;
    width: 100%;
}


#___gcse_0 table.gsc-search-box td.gsc-input {
    padding-right: 0px;
}
#___gcse_0 .gsc-search-button-v2 {
    font-size: 0;
    padding: 6px 27px;
    width: auto;
    vertical-align: middle;
    border: 1px solid #666;
    border-radius: 2px;
    border-color: #3079ed;
    background-color: #4d90fe;
    background-image: linear-gradient(top, #4d90fe, #4787ed);
    margin-left: 0px;
}
#___gcse_0 table.gsc-search-box{
    margin:0;
}
#___gcse_0 .gsc-input-box {
    border: none!important;
    background: #fff;
}
#___gcse_0 .gsc-search-button-v2{
    padding: 0;
    background:none;
    border:none;
}
.gsc-search-button-v2 svg {
    fill: #4B4B4E!important;
}

.gsc-control-cse{
    padding-left:0!important;
    padding-right:0!important;
}

.gsc-input{
    height:auto!important;
}
.gsib_a {
    /*padding: 1px 9px 4px 9px!important;*/
}

/*横向き*/
@media screen and (orientation: landscape) {
    header {
        position: relative;
    }
}
@media (max-width: 999px){
    footer .footer_menu {
        font-size: 13px;
    }
}
@media (max-width: 999px){
    footer .footer_menu {
        font-size: 13px;
    }
}
@media (max-width: 920px){
    footer .footer_menu {
        font-size: 12px;
    }
}
@media (max-width: 860px){
    footer .footer_menu {
        font-size: 11px;
    }
}

#search_result small{
 color:#006426;
}


/*newsモジュール JS*/
.newsList1 .category,
.newsList2 .category,
.newsList3 .category{
    color: #FFF;
    background: #3c763d;
    border-radius: 5px;
    padding: 0.25em;
    display: inline-block;
    min-width: 8em;
    font-weight: normal;
    text-align: center;
    margin-right: 1em;
    font-size:10px;
    vertical-align: text-bottom;
}
.newsList1 .date,
.newsList2 .date,
.newsList3 .date{
    position: absolute;
    right: 0;
}
.newsList1 a:hover .date,
.newsList2 a:hover .date,
.newsList3 a:hover .date{
    color:#333;
}
.newsList1,
.newsList2,
.newsList3 {
    margin: 0;
    padding: 0;
}

.newsList1 li,
.newsList2 li,
.newsList3 li {
    list-style: none;
    margin: 0;
    padding: 1.661em 0;
    border-bottom:dotted 1px #DDD;
    position:relative;
}

.newsList1 {
    /*max-height:270px;*/
    margin-bottom: 0;
    padding-right:1em;
    white-space: nowrap;
    /*overflow: hidden;*/
    /*overflow-y: scroll;*/
}

.newsList1 li {
    width: 100%;
}

.newsList1 a {
    width: 100%;
    display:inline-flex;
    max-width: calc(100% - 12em);
    white-space: break-spaces;
    /*overflow: hidden;*/
    /*text-overflow: ellipsis;*/
}
.newsList1 #no_data{
	color:#000000;
}

.newsList2 {
    margin-bottom: 0;
    padding-right:1em;
    white-space: nowrap;
    margin-bottom: 2em;
}

.newsList2 li {
    width: 100%;
}

.newsList2 a {
    width: 100%;
    display:inline-flex;
    max-width: calc(100% - 12em);
    white-space: break-spaces;
    /*overflow: hidden;*/
    /*text-overflow: ellipsis;*/
    /*font-weight: bold;*/
}
.newsList2 #no_data{
    color:#FFF;
}

.newsList3 h3 {
    color: #FFFFFF;
    background: #146e9a;
    font-weight: bold;
    font-size: 1.2em;
    padding: 0.5em;
}

.newsList3 h3 .my_svg2 {
    width: 20px;
    margin-bottom: -0.1em;
    margin-right: 0.5em;
    height: 1em;
}

.newsList3 h3 .my_svg2 g {
    color: #ffF000 !important;
    fill: #ffF000 !important;
}

.newsList3 div > a:hover {
    text-decoration: none;
}

.newsList3 a:hover h3 {
    color: #ffff88;
}

.newsList3 p {
    color: #666;
    margin: 0;
    padding: 0.5em;
    font-size: 1em;
    border-bottom: dotted 1px #CCC;
}

.newsList3 p:last-child {
    border-bottom: none;
}

.newsList3 span {
    margin-right: 1%;
    font-weight: bold;
}

.newsList3 div {
    margin: 0 2% 4% 2%;
    border-radius: 5px;
    border: solid 2px #146e9a;
    background: rgba(255, 255, 255, 1.0);
}

.newsList3 p a:hover {
    color: #FFF !important;
}

.newsList3 p a:hover {
    color: #000 !important;
}

@media screen and (max-width: 768px) {
    .newsList1,
    .newsList2,
    .newsList3{
      display:flex;
      flex-direction: column;
      padding-right: 0;
    }
    .newsList1 a,
    .newsList2 a,
    .newsList3 a{
      display:block;
      width:100%;
      font-size:120%;
    }
    .newsList1 .date,
    .newsList2 .date,
    .newsList3 .date{
        float:none;
        display:block;
        font-size:10px;
        color:#aaa;
    }
    .newsList1 li,
    .newsList2 li,
    .newsList3 li{
        display: flex;
        flex-wrap:wrap;
    }
    .newsList1 a,
    .newsList2 a,
    .newsList3 a{
        order:1;
        width:100%;
        max-width:100%;
    }
    #search .newsList2 a{
        order: 0;
    }
    .newsList1 .date,
    .newsList2 .date,
    .newsList3 .date{
        order:2;
        margin-right:1em;
        position: relative;
    }
    .newsList1 .category,
    .newsList2 .category,
    .newsList3 .category{
        order:3;
        color: #aaa;
        background: none;
        padding: 0;
        display: inline-block;
        min-width: auto;
        text-align: left;
        margin-right: 1em;
        font-size: 10px;
    }
}
/*news detail*/
#news.detail .content_title{
    margin: 0 0 1.5em;
    padding-bottom: 20px;
    border-bottom:solid 2px #f8d72c;
    position: relative;
}
#news.detail .content_title::before{
    content: "";
    position: absolute;
    border-bottom:solid 2px #3c763d;
    top: 0px;
    bottom: -10px;
    left: 0px;
    right: 0px;
}

/*ページ送り*/

.navigation {
    margin: 2rem 0px;
    clear: both;
}

.navigation_wrap {
    overflow: hidden;
    position: relative;
    margin-bottom: 1.5rem;
}

.navigation {
    float: left;
    position: relative;
    -js-display: flex;
    display: flex;
    justify-content: center;
}

.navigation:before {
    -js-display: flex;
    display: flex;
    justify-content: center;
}

.navigation span,
.navigation a {
    background: #f8d83f;
    color: #101f12;
    font-size: 17px;
    text-align: center;
    font-weight: bold;
    min-width: 42px;
    min-height: 40px;
    display: inline-block;
    border-radius: 5px;
    margin-right: 15px;
    padding: 10px;
    float: left;
    position: relative;
}

.navigation a:hover {
    background: #3e7740;
    text-decoration: none;
    color:#FFF;
}

.navigation span.on {
    background: #3e7740;
    color: #FFF;
}

.navigation a[title="next page"],
.navigation a[title="previous page"],
.navigation a[title="last page"],
.navigation a[title="first page"] {
    padding-left: 15px;
    padding-right: 15px;
}

.page_numbers {
    padding: 1em 0;
    font-size: 1em;
    margin-bottom: 30px;
    color: #440300;
    width: 100%;
}

.date_title{
    font-weight: 600;
    margin: 0;
    padding: 0.5em 0.75em;
    color: #101f12;
    background-color: #f8d83f;
    line-height: 1.4;
    width:100%;
    display:inline-block;
    border-radius:2px;
}

@media screen and (max-width: 498px) {
    .page_numbers {
        top: 1.5em !important;
        position: relative !important;
        display: block !important;
    }
}