@charset "utf-8";
/******************************************************************
Theme Name: Hummingbird Child
Description: Hummingbird Child Theme
Template: hummingbird
Author: ジャパンプリント
Version: 1.2.5
Text Domain:  hummingbird-child

--------------------------------
hummingbirdテーマの子テーマです。hummingbirdテーマに加える修正は全て当テーマ内で行います。
******************************************************************/

/*
スタイル変更例

[親テーマの記述]
.top-post-list .post-list .eyecatch .cat-name{
    position:absolute;
    top:0;
    right:0;
    background:#e55937;
    color:#fff;
    font-size:0.8em;
    font-weight:bold;
    padding:0.1em 0.5em;
    min-width:8em;
    opacity: .9;
    filter: alpha(opacity=90);
    -ms-filter: "alpha(opacity=90)";
}

[上記親テーマのrightを打ち消してleftにする]
.top-post-list .post-list .eyecatch .cat-name {
    right: auto;
    left: 0;
}

[注意]
色指定は管理画面のテーマのカスタマイズの設定が優先されるので、CSSで指定しても反映されないものがある。
.top-post-list .post-list .eyecatch .cat-name {
    color: #ff000; <- これは反映されない
}

*/
#wp-admin-bar-updates {
    display: none;
}

.text-center {
    text-align: center;
}

.slider-main {
    margin-bottom: 10px;
}
@media only screen and (min-width: 768px) {
    .slider-main {
        display: block;
    }
}
@media only screen and (max-width: 767px) {
    .slider-main {
        display: none;
    }
}

.slider-main .item {
    display: -webkit-flex;/* safari（PC）*/
    display: flex;
    width: 100%;
    justify-content: space-between;
}
.slider-main .item .flex-left {
    flex-basis: auto;
    flex-basis: 60%;
    background-color: #000;
}
.slider-main .item .flex-left .eyecatch {
    max-height: 250px;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}
.slider-main .item .flex-left .eyecatch img {
    /*position: absolute;*/
    left: -100%;
    right: -100%;
    top: -100%;
    bottom: -100%;
    margin: auto;
    width: 100%;
    height: auto;
}
.slider-main .item .flex-right {
    flex-basis: 40%;
    color: #fff;
    background-color: #00a0d2;
    padding: 10px;
}
.slider-main .item .flex-right .title {
    margin-top: 0;
}
.slider-main .item .flex-right .title a {
    color: #fff;
    text-decoration: underline;
}
.slider-main .item .flex-right .category {
    font-size: small;
}
.slider-main .item .flex-right .readmore {
    background-color: #fff;
    color: #00a0d2;
    text-decoration: none;
    padding: 0 5px;
}

@media only screen and (min-width: 768px) {
    .slider-main .item:not(:first-child) {
        display: none;
    }
}



.bx-wrapper {
    margin-left: 0;
    margin-right: auto;
}

/* ----- organization style ----- */
.organization .item .attachment .thumbnail::after {
    bottom: 0;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}
.organization .item .attachment .thumbnail {
    bottom: 0;
    left: 0;
    opacity: 1;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    transition: opacity 0.1s ease 0s;
}
.organization .item .attachment::before {
    content: "";
    display: block;
    padding-top: 100%;
}
.organization .item .attachment {
    background: #eee none repeat scroll 0 0;
    position: relative;
}
.organization .item .attachment .thumbnail .centered {
    height: 100%;
    transform: translate(50%, 50%);
}
.organization .item .attachment .thumbnail .centered img {
    transform: translate(-50%, -50%);
}
.organization .item .attachment .yakushoku {
    display: inline-block;
    background-color: #1D73BD;
    color: #fff;
    padding: 5px;
    position: absolute;
    bottom: 0;
    z-index: 2;
}

/* ----- organization large style ----- */
.organization.large {
    margin-bottom: 1rem;
}
@media only screen and (min-width: 768px) {
    .organization.large .item {
        display: -webkit-flex;/* safari（PC）*/
        display: flex;
    }
    .organization.large .item .attachment {
        width: 24%;
        height: 24%;
    }
    .organization.large .item .body {
        width: 76%;
        padding: 0 1em;
    }
    .organization.large .item .body .name {
        font-size: 1.2rem;
    }
    .organization.large .item .body .description {
        font-size: .9rem;
    }
}
@media only screen and (max-width: 767px) {
    .organization.large .item {
        display: block;
    }
    .organization.large .item .attachment {
        width: 49%;
        height: 49%;
    }
    .organization.large .item .body {
        width: 100%;
        padding: 0;
    }
    .organization.large .item .body .name {
        font-size: .9rem;
    }
    .organization.large .item .body .description {
        font-size: .8rem;
    }
}
.organization.large .item .body .name {
    font-weight: bold;
}
.organization.large .item .body .description p {
    margin: 0;
}

/* ----- organization small style ----- */
.organization.small {
    margin-bottom: 30px;
    display: -webkit-flex;/* safari（PC）*/
    display: flex;
    -webkit-flex-wrap: wrap;/* safari（PC）*/
    flex-wrap: wrap;
}
.organization .item {
    margin: 0 1% 0 0;
    padding-bottom: 20px;
}
@media only screen and (min-width: 768px) {
    .organization.small .item {
        width: 24%;
    }
}
@media only screen and (max-width: 767px) {
    .organization.small .item {
        width: 49%;
    }
}
.organization.small .item .name {
    font-size: .9rem;
}



/* ---- 都道府県名表示 ----- */
.pref {
    display: inline-block;
    color: #fff;
    background-color: #ccc;
    padding: 1px 5px;
    margin: 0 5px 0 0;
    font-size: .8em;
}
.pref-blue {
    background-color: #1D73BD;
}
.pref-green {
    background-color: #A6CA50;
}

/* ---- ヘッダー ---- */
.header {
  background: #ffffff!important;
  color: #1d73bd!important;
}
.header #logo .no-icon {
    margin-bottom: -20px;
    display: inline-block;
}
.header #inner-header .sub-menu {
    width: 410px;
    float: right;
    position: relative;
    text-align: right;
    z-index: 1;
}
.header #inner-header .sub-menu a {
    display: inline-block;
    text-decoration: none;
}
.header #inner-header .sub-menu .bnr_hq_wrap {
    margin-right: 5px;
}

#footer .nav > li > a {
    color: #BAB4B0;
}

/* 768px以上ではグローバルナビゲーションの一部項目（入会案内など）を表示しない */
@media only screen and (min-width: 768px) {
    .nav > li.hide-pc > a {
        display: none;
    }
}
/* フッター内のナビでは一部項目（入会案内など）を常に表示させない */
#footer .nav > li.hide-pc > a {
    display: none;
}

/* 768px以下ではヘッダー右上のサブメニューは表示しない */
@media only screen and (max-width: 768px) {
    .header #inner-header .sub-menu {
        display: none;
    }

    .header #inner-header .sub-menu li a {
        color: #fff;
        text-align: left;
        padding-left: 15em;
    }
}

@media only screen and (min-width: 768px) {
  #inner-header {
    padding-top:10px;
}
  #logo .img {
    margin-bottom: 0;
  }
#logo img {
    max-height: 53px;
}
#g_nav {
    float: none; 
    clear: both;
    display: block;
    width: 100%;
  /*background: #1d73bd;*/
    margin-top: 5px;
    position: relative;
}
  #g_nav .nav {
    display: block;
    width: 100%;
  }
  #g_nav .nav > li {
    float: left;
/*    position: static;*/
    position: relative;
    font-size: 16px;
    width: 16.66%;
    vertical-align: middle;
    border-right: 1px solid #ffffff;
  }
    #g_nav .nav > li:last-child {
    /*width: 15%;*/
  }
#g_nav .nav {
    border-left: 1px solid #ffffff;
    max-width: 1100px;
    width: 100%;
    margin: 0 auto;
}


  
  #g_nav .nav > li a {
    /*color: #ffffff;*/
    padding: 15px 0;
  } 
  #g_nav .nav > li a:hover {
/*
    color: #6eaaff;
    opacity: .5;
*/
  }
}

#logo h1 a,
#logo h1 a:hover {
    color: #000000;
}

#logo .h1.text a,
#logo .h1.text a:hover {
    color: #000000;
}

@media only screen and (max-width: 767px) {
  #inner-header {
    padding-top: 15px;
  }
  

  .nav_btn {
    width: 55px;
    height: 55px;
    padding: 0;
    border: none;
    background: none;
    text-align: center;
    font-size: 1.3em;
    position: absolute;
    top: 0;
    left: 0;
    color: #3fa8f4!important;
    transition-duration: .2s;
}
  .nav_btn:before {

    color: #0E0E0E!important;

}
}
@media only screen and (min-width: 768px) {
.nav li ul.sub-menu {
    display: block;
/*
    background: none;
    max-width: 1100px;
*/
    width: 100%;
    background: #fff;
    margin: 0;
}
  .nav li ul.sub-menu li {
/*    width: 16.66%;*/
    width: 100%;
    border-top: 1px solid #ffffff;
    display: block;
    /*background: #6eaaff;*/
    padding: 0;
    opacity: .75;
  }
  .nav li ul.sub-menu li:hover {
    opacity: 1;
  }
.nav li ul.sub-menu li a, .nav li ul.children li a {
    display: block;
     width: 100%; 
  color: #ffffff!important;
  padding: 6px 0 5px!important;
  text-align: center;
} 
  .nav li ul.sub-menu li a:hover, .nav li ul.children li a:hover{
  color: #ffffff!important;
    opacity: 1;
/*    background: #1D73BD;*/
}
  .nav li ul.sub-menu li ul, .nav li ul.children li ul {
    top: 0;
    left: 100%;
}
  .nav li ul.sub-menu li ul li {
    width: 100%;
    border-top: none;
    border-left: 1px solid #ffffff;
}
}

/* ---- スライドショー ---- */

.slider-main .item .flex-left .eyecatch {
  max-height: 370px;
    height: 370px;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
  background: #fffff;
}
.slider-main .item .flex-left .eyecatch a {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
}
.slider-main .item .flex-left .eyecatch a img {
    position: absolute;
    max-width: inherit;
    width: 600px;
    height: 370px;
}
.slider-main .item .flex-left {
    flex-basis: auto;
    flex-basis: 55%;
     background-color: #ffffff; 
}
.slider-main .item .flex-right {
    flex-basis: 45%;
    color: #fff;
    background-color: #00a0d2;
    padding: 15px;
}


/* トップページ　*/
.article-header h1.h2 {
  text-align: center;
  color: #3fa8f4;
  font-size: 20px;
  border-top: 2px solid #3fa8f4;
  border-bottom: 2px solid #3fa8f4;
  padding: 10px;
  margin-bottom: 20px;
  margin-top: 19px;
}
.article-header h1.h2.zenkoku {
    color: #A6CA50;
    border-top: 2px solid #A6CA50;
    border-bottom: 2px solid #A6CA50;
}

/* 一覧ボタン */
.link_to_all {
    clear: both;
    text-align: center;
}
.link_to_all a {
    width: 150px;
    font-size: 1em;
    font-weight: bold;
    margin: 10px 0;
}

/* フッター */
#footer .footer-nav-item {
    margin-bottom: 10px;
}

.footer-links ul{
    padding:0;
    margin: 0;
}
#footer .nav > li {
    font-weight: normal;
}

#footer .heading {
    font-size: 1em;
}

/* ----- sidebar ----- */
.widget .widgettitle a {
    text-decoration: none;
    color: #FFF !important;
}

/* --- TOPページ（各都道府県連盟 活動・お知らせ） --- */
@media only screen and (min-width: 768px) {
    .post-list-card.column3 .post-list {
        font-size: 13px;
        width: 31%;
        margin: 0 1% 2.5%;
        float: left;
        overflow: hidden;
        height: 413px;
    }
}

.ui-selectmenu-open {
  background-color: #fff;
}
.entry-content ul li:hover {
  cursor: pointer;
  background-color: #d3edfb;
}
.entry-content ul li::before {
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
}