/*
 Theme Name:   Corporate Standard Child
 Description:  Corporate Standard Child Theme
 Author:       Barbwire Co., Ltd.
 Author URI:   https://barbwire.co.jp/
 Template:     corporate-standard
 Version:      1.4.2
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  barbwire-cc-child
*/
/**
 note:
 Version 1.1 supports the CSS changes for header/footer text widgets in Corporate Standard Theme v.1.2.8,
 so if you use it with Corporate Standard Theme before v.1.2.8, the margins will be affected.
 */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500&family=Noto+Serif+JP:wght@200;400;600;800&display=swap&subset=japanese');
/*--------------------------------------------------------------
# Body
--------------------------------------------------------------*/

body {
    font-family: 'Noto Sans JP', sans-serif;
}

#page {
    overflow-x: hidden;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/

header .site-description-wrap {
    background: none;
}

header.site-header {
    width: 100%;
    z-index: 2;
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/bg_head_01.png) no-repeat;
    background-size: contain;
    background-position: center top;
}

header .site-description {
    color: #17478F;
    font-size: 15px;
    font-weight: initial;
    text-align: center;
}

header .header-content-wrap {
    background: none;
}

header #site-navigation,
header #site-navigation li {
    background: none;
}

header #primary-menu {
    /* background: #000; */
}

header #site-navigation a {
    color: #333;
    font-weight: 500;
    border-left: none;
    text-shadow: rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px, rgb(255, 255, 255) 0px 0px 5px;
}

header ul#global-menu ul.sub-menu {
    width: 200px;
}

header ul#global-menu ul.sub-menu li a {
    width: 200px;
    background: rgba(255, 255, 255, 0.95);
}

header ul#global-menu>li:nth-child(2)>ul.sub-menu,
header ul#global-menu>li:nth-child(2)>ul.sub-menu li a {
    width: 360px;
}

header ul#global-menu>li:nth-child(5)>ul.sub-menu,
header ul#global-menu>li:nth-child(5)>ul.sub-menu li a {
    width: 400px;
}

/*---- スマフォ時の会員専用ボタン ----*/
header ul#global-menu li.menu-item-325 {
    display: none;
}

.company-info .barb_text_banner {
    border-radius: 60px;
}

@media screen and (max-width: 639px) {
    #primary-menu-mb li a {
        color: #333;
    }

    header.site-header {
        height: 108px;
        ;
        background-size: cover;
        background-position: center;
    }

    header ul#global-menu li:last-child {
        display: block;
    }
}

@media screen and (min-width: 640px) {
    body.home header {
        position: absolute;
    }

    header .header-content .company-info {
        align-content: center;
    }

    header .header-content .company-info .textwidget {
        width: 100%;
    }

    header .header-content .company-info .textwidget p {
        width: 100%;
        letter-spacing: 0.06rem;
        margin: 0;
        text-align: right;
    }

    header #global-menu {
        max-width: 1090px;
    }

    header #global-menu li {
        width: auto;
    }
}

@media screen and (max-width: 960px) {
    header .site-description {
        font-size: 13px;
    }

    header .header-content {
        min-height: 60px;
    }

    header #site-navigation li {
        font-size: 14px;
    }
}

@media screen and (max-width: 639px) {
    header .site-branding .site-title {
        width: 72%;
        padding: 10px 0;
    }

    header .site-description {
        font-size: 12px;
        text-align: left;
    }

    header .header-content .company-info {
        padding: 0 12px 0;
        display: none;
    }
}








/*--------------------------------------------------------------
## Primary Navigation
--------------------------------------------------------------*/
@media screen and (max-width: 850px) {
    #site-navigation {
        display: none !important;
    }

    #site-navigation-mb {
        display: block !important;
    }

    header .header-content .company-info {
        display: none;
    }

    .menu-toggle {
        display: block !important;
    }

    header .menu-toggle[aria-controls="primary-menu"] {
        position: absolute;
        top: 6px;
        right: 18px;
        z-index: 10;
        padding: 10px;
        line-height: 1;
        font-weight: bold;
    }

    .site-description-wrap .site-description.pc {
        display: none !important;
        ;
    }

    .site-description-wrap .site-description.mb {
        display: block !important;
    }

    header.site-header .site-description-wrap {
        width: 100%;
        min-height: 47px;
        padding: 10px 90px 10px 10px;
        z-index: 10;
        display: flex;
    }

    header .header-content .site-branding {
        width: 100%;
        display: block;
    }

    header .header-content .site-branding .site-title {
        text-align: center;
    }

}

@media screen and (max-width: 850px) {
    #site-navigation-mb {
        position: fixed;
        top: 0;
        width: 100%;
        height: 100%;
        display: flex;
        z-index: 10;
        left: 0;
        transition-property: transform;
        transition-duration: .5s;
        transform: translateX(-100%);
    }

    #site-navigation-mb .nav-mb-wrap {
        position: relative;
        width: 100%;
        height: 100%;
        overflow-y: auto;
        overscroll-behavior: none;
    }

    #site-navigation-mb.active {
        transform: translateX(0);
    }

    #site-navigation-mb *[class$="-container"] {
        width: 75%;
        height: 100%;
        position: relative;
        z-index: 99;
        background: #fff;
    }

    #site-navigation-mb #primary-menu-mb {
        width: 100%;
        background: #fff;
        z-index: 99;
        position: relative;
    }

    #site-navigation-mb .cover {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        background-color: rgba(0, 0, 0, 0);
        transition-property: background;
        transition-duration: .8s;
        z-index: 11;
    }

    #site-navigation-mb .cover .icon {
        color: #fff;
        display: none;
    }

    #site-navigation-mb .cover.active {
        background: rgba(0, 0, 0, 0.5);
    }

    #primary-menu-mb {
        margin: 0;
        padding: 0;
    }

    #primary-menu-mb ul {
        margin: 0;
        padding: 0;
    }

    #primary-menu-mb li {
        list-style: none;

    }

    #primary-menu-mb li a {
        padding: 2px 10px 0 32px;
        line-height: 37px;
        display: block;
        border-bottom: 1px solid #ccc;
        text-decoration: none;
    }

    #primary-menu-mb li a:before {
        font-family: "Font Awesome 5 Free";
        margin-right: 8px;
        font-weight: 900;
    }

    #primary-menu-mb>li>a:before {
        content: "\f105";
    }

    #primary-menu-mb ul li a {
        padding-left: 52px;
    }

    #primary-menu-mb ul li a:before {
        content: "\f0da";
    }

    #primary-menu-mb ul ul li a {
        padding-left: 72px;
    }

    #primary-menu-mb ul ul li a:before {
        content: "";
    }

}


#primary {
    margin-bottom: 3em;
}

.top #primary {
    margin-bottom: 0 !important;
}

.site-footer {
    margin-top: 0 !important;
}









/*--------------------------------------------------------------
## Archive
--------------------------------------------------------------*/
.entry-meta>*:before {
    color: #D32F2F;

}


/*--------------------------------------------------------------
## TOP
---------------------------------------------------------------*/
body.home .top-content h2,
#main-content #primary .entry-content h2 {
    font-size: 36px;
    font-weight: 700;
    line-height: 1.7;
    margin-top: 70px;
    color: #01599F;
    letter-spacing: .1rem;
    text-align: center;
    border: none;
    background: none;
}

body.home .top-content h2 span.en,
#main-content #primary .entry-content h2 span.en {
    display: block;
    font-size: 18px;
    font-weight: normal;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: normal;
    color: #666;
    margin-top: 10px;
}

/*-------------------------------
  コンテンツ 外枠の波形 設定
--------------------------------*/
.top-club-group,
.rotary-group,
.about-group {
    background: #F0F9FC;
    padding: 1px 0 70px !important;
    margin: 70px 0 70px calc(50% - 50vw);
    /*margin: 70px 0 70px calc(50% - 50vw - (var(--barb-cs-scrollbar_width)/2));*/
    position: relative;
}

.top-club-group:before,
.top-club-group:after,
.top-link-group:before,
.rotary-group:before,
.rotary-group:after,
.about-group:before,
.about-group:after {
    position: absolute;
    content: "";
    background-size: contain;
    width: 100%;
    height: 56px;
}

.top-club-group:before,
.top-link-group:before,
.rotary-group:before,
.about-group:before {
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/bg_wave-up_01.svg) no-repeat;
    background-size: cover;
    top: -56px;
}

.top-club-group:after,
.rotary-group:after {
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/bg_wave-under_01.svg) no-repeat;
    background-size: cover;
    bottom: -56px;
}


/*-------------------------------
  メインビジュアル（下）スライドショー
--------------------------------*/
.osr-c-swiper {
    overflow: hidden;
    margin: 0 calc(50% - 50vw - (var(--barb-cs-scrollbar_width)/2));
    width: 100vw;
    max-width: 100vw !important;
    position: relative;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow-x: hidden;
    background: #E4F0FA;
    padding: 30px 0 !important;
}

.osr-c-swiper .swiper-wrapper {
    transition-timing-function: linear;
}

.osr-c-swiper .swiper-slide img {
    height: auto;
    width: 95%;
}

@media only screen and (max-width:900px) {
    .osr-c-swiper {
        padding: 15px 0 !important;
    }

    .osr-c-swiper .swiper-wrapper .swiper-slide {
        width: 130px !important;
    }

    .osr-c-swiper .swiper-slide img {
        width: 100%;
    }
}


/*-------------------------------
  TOP | メッセージ箇所
--------------------------------*/
.top-msg-group {
    background: #17478F url(/wp-content/themes/barbwire-cc-child/assets/img/bg_top-msg.svg) repeat-x;
    background-size: contain;
}

.top-msg-group p {
    font-size: 32px;
    letter-spacing: .25rem;
    font-weight: 600;
    color: #fff;
    padding: 30px 0;
}

/*-------------------------------
  TOP | お知らせ
--------------------------------*/
.top-info-group {
    position: relative;
}

.top-info-group:before {
    position: absolute;
    content: "";
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/bg_wave-up_02.svg) no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 106px;
    top: 0;
}

.top-info-content {
    max-width: 726px;
    margin: 0 auto;
    padding: 70px 0 0;
}

.top-info-content .barbpack-post-list li {
    border-top: 1px solid #dbdbdb;
    border-bottom: none;
    display: flex;
    padding: 20px 0;
}

.top-info-content .barbpack-post-list li:last-child {
    border-bottom: 1px solid #dbdbdb;
}

.top-info-content .barbpack-post-list .list-date {
    font-size: 16px;
    font-weight: 600;
    color: #01599f;
    flex-shrink: 0;
}

.top-info-content .barbpack-post-list .list-title a {
    font-size: 16px;
    color: #333;
    font-weight: 600;
}

/*-------------------------------
  TOP | 大阪リバーサイドクラブについて
--------------------------------*/
.top-about-group {
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/bg_top-aboutus.jpg) no-repeat;
    background-size: cover;
    height: 100%;
    padding: 1px 0 70px !important;
    margin: 70px 0 70px calc(50% - 50vw - (var(--barb-cs-scrollbar_width)/2));
    position: relative;
}

.top-about-group:before {
    position: absolute;
    content: "";
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/img_flag_01.png) no-repeat;
    background-size: contain;
    width: 104px;
    height: 167px;
    top: -8px;
    left: 30%;
}

.top-about-group .top-about-group-inner {
    padding-left: 15px;
    padding-right: 15px;
    margin-left: 15px;
}

.top-about-group .top-about-group-inner .top-about-btn {
    width: 100%;
    max-width: 1050px;
    margin: auto;
    margin-bottom: 2.5em;
}

.top-about-group .top-about-group-inner .top-about-btn .wp-block-column {
    margin: 0;

}

@media only screen and (max-width:781px) {
    .top-about-group .top-about-group-inner {
        padding: 0;
        margin-left: 0;
    }

    .top-about-group .top-about-group-inner .top-about-btn {
        max-width: 500px;
        gap: 10px;
    }

    .top-link-group .top-link-content {
        padding-left: 15px !important;
    }
}

@media only screen and (max-width:519px) {
    .top-about-group .list_01 li br {
        display: none;
    }
}

.top-about-group .btn-group {
    justify-content: center;
}

.top-about-group .top-about-content {
    background: rgba(255, 255, 255, 0.8);
    max-width: 1050px;
    margin: 0 auto 50px auto;
}

.top-about-group .top-about-content .top-about-inner {
    padding: 50px;
    /* width: 70%; */
    width: 100%;
    max-width: 700px;
    margin: 0 auto;
}

.top-about-group .top-about-content .top-about-inner h3 {
    color: #01599F;
    font-size: 20px;
    font-family: 'Noto Serif JP';
    letter-spacing: .05rem;
    text-align: center;
    padding: 0 45px;
    position: relative;
    width: auto;
    max-width: 240px;
    margin: 0 auto 30px auto;
}

.top-about-group .top-about-content .top-about-inner h3:before,
.top-about-group .top-about-content .top-about-inner h3:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 15px;
    height: 1px;
    background-color: #707070;
    transform: inherit;
}

.top-about-group .top-about-content .top-about-inner h3:before {
    left: 0;
}

.top-about-group .top-about-content .top-about-inner h3:after {
    right: 0;
}

.top-about-group .top-about-content .top-about-inner ul {
    font-family: 'Noto Serif JP';
}

.top-about-group .top-about-content .top-about-inner ul li:first-child {
    margin-bottom: 15px;
}

.top-about-group .btn_admission-info .wp-block-button {
    width: calc(18.2% - var(--wp--style--block-gap, .5em)*.75);
}

.top-about-group .btn_admission-info .wp-block-button a {
    position: relative;
}

.top-about-group .btn_admission-info .wp-block-button a:before {
    position: absolute;
    content: "";
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/ico_admission-info_01.png) no-repeat;
    background-size: contain;
    width: 24px;
    height: 20px;
    top: 18px;
    left: 15%;
}

@media only screen and (max-width:900px) {
    .top-about-group .btn_admission-info .wp-block-button {
        width: calc(35% - var(--wp--style--block-gap, .5em)*.75);
    }
}

@media only screen and (min-width:900px) and (max-width:12990px) {
    #main-content .top-about-group:before {
        left: 20%;
    }
}

@media only screen and (min-width:640px) {
    #main-content .top-content .top-about-group .btn-group {
        flex-wrap: nowrap !important;
    }
}

.top-circle-btn .wp-block-column {
    margin: 0 !important;
}

@media only screen and (min-width:520px) {
    .top-circle-btn {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        width: 100%;
        max-width: 580px !important;
        margin: auto;
    }
}

@media only screen and (max-width:639px) {
    .top-circle-btn {
        gap: 20px;
    }
}

@media only screen and (max-width:519px) {
    .top-circle-btn {
        width: 100%;
        max-width: 300px !important;
        gap: 10px;
        margin: auto;
        padding-left: 10px;
        padding-right: 10px;
    }
}

/*-------------------------------
  TOP | 最近のクラブ行事と活動
--------------------------------*/
.top-club-group .top-club-content {
    max-width: 1560px;
    width: 100%;
    margin: 0 auto;
    padding-left: 30px;
    padding-right: 30px;
}

.top-club-group .top-club-content .entry-content {
    padding: 0 22px 22px !important;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
}

.top-club-group .top-club-content .entry-content .entry-meta {
    font-size: 15px;
    letter-spacing: .05rem;
    margin: 15px 0 0;
    width: 100%;
}

.top-club-group .top-club-content .entry-content .entry-meta>:before {
    display: none;
}

.top-club-group .top-club-content .entry-content h3.list-title {
    /*order: 2;*/
    margin: 5px 0 15px !important;
}

.top-club-group .top-club-content .entry-content h3.list-title a {
    color: #17478F !important;
    text-decoration: none !important;
    font-size: 20px !important;
    line-height: 1.7;
    letter-spacing: .05rem;
}

.top-club-group .top-club-content .barbpack-post-list li {
    background: #fff;
}

.top-club-group .top-club-content .barbpack-post-list li img {
    object-fit: cover;
    height: 195px;
}

.top-club-group .top-club-content .barbpack-post-list .list-excerpt {
    /*order: 3;*/
}

.top-club-group .top-club-content .barbpack-post-list .list-excerpt p {
    line-height: 1.7 !important;
    color: #333;
}

.top-club-group .top-club-content .barbpack-post-list .view_detail {
    /*order: 4;*/
    float: right;
}

.top-club-group .top-club-content .barbpack-post-list .view_detail a {
    color: #17478F;
    text-decoration: none;
    font-weight: 600;
}

.top-club-group .top-club-content .barbpack-post-list .view_detail:before {
    display: none;
}

.top-content .btn_01>div.wp-block-button {
    width: 100% !important;
    max-width: 360px !important;
}

.top-content .btn_01>div.is-style-fill {
    width: 100% !important;
    max-width: 250px !important;
}

@media only screen and (max-width:1200px) {
    /* .top-club-group .top-club-content ul.barbpack-post-list{
        gap: 0;
    } */

}

@media only screen and (max-width:900px) {
    .top-club-group .top-club-content {
        padding-left: 0;
        padding-right: 0;
    }

    .top-club-group .top-club-content ul.barbpack-post-list {
        gap: 20px;
    }

}

@media only screen and (max-width:639px) {
    .barbpack-post-list-6 li {
        /* margin-bottom: 40px; */
    }

    .barbpack-post-list-6 li:not(:first-child) article {
        padding-top: 0;
        margin-top: 0;
    }

    .barbpack-post-list-6 li article {
        padding-bottom: 0;
        margin-bottom: 0;
    }

    .top-club-group .top-club-content .entry-content {
        padding: 10px !important;
    }

    .top-club-group .top-club-content ul.barbpack-post-list {
        gap: 30px;
    }
}

/*-------------------------------
  TOP | 各リンク先
--------------------------------*/
.top-link-group {
    background: #F0F9FC;
    padding: 1px 0 70px !important;
    margin: 50px 0 0 calc(50% - 50vw - (var(--barb-cs-scrollbar_width)/2));
    position: relative;
}

.top-link-group .top-link-content {
    max-width: 1000px;
    padding: 70px 15px 20px 30px;
    margin: 0 auto;
}

.top-link-group .top-link-content .wp-block-column,
.top-link-group .top-link-content .wp-block-column>.wp-block-image {
    margin: 0 !important;
}

@media only screen and (min-width:740px) {
    .top-link-group .top-link-content .external-links {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
    }

    .top-link-group .mb-btn {
        display: none;
    }
}

@media only screen and (max-width:739px) {
    .top-link-group .pc-btn {
        display: none;
    }

    .top-link-group .top-link-content {
        max-width: 600px;
    }
}

@media only screen and (max-width:639px) {
    .top-link-group .top-link-content .wp-block-columns img {
        margin-bottom: 1.5em;
    }

}

/*-------------------------------
  TOP | 例会のご案内
--------------------------------*/
.top-regular-mtg-group {
    padding: 1px 20px 70px !important;
}

.top-regular-mtg-group .notes_01 {
    color: #868564;
    font-size: 18px;
    padding-left: 1em;
    text-indent: -1em;
}

/*---- ブロックエディタ内のtable ---*/
.top-regular-mtg-group table {
    border: none;
}

.top-regular-mtg-group .wp-block-table td {
    border-top: 1px solid #c1c1c1;
    border-bottom: 1px solid #c1c1c1;
    border-left: none;
    border-right: none;
    padding: 20px;
}

.top-regular-mtg-group .top-make-up {
    margin: auto;
}

.top-regular-mtg-group .top-make-up img {
    margin: auto;
}

@media screen and (max-width: 1000px) {
    .top-regular-mtg-group .top-make-up {
        gap: 1em;
    }

    .top-regular-mtg-group .top-make-up .notes_01 {
        font-size: 17px;
    }
}

@media screen and (max-width: 740px) {
    .top-regular-mtg-group .top-make-up {
        flex-wrap: wrap !important;
        max-width: 600px;
        width: 100%;
    }
}

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

    /*--- TOP | 最近のクラブ行事と活動 ---*/
    .top-club-group .top-club-content .barbpack-post-list {
        gap: 30px;
        flex-wrap: nowrap;
    }
}

@media (max-width:1199px) and (min-width: 640px) {

    /*--- TOP | 最近のクラブ行事と活動 ---*/
    .top-club-group .top-club-content .barbpack-post-list {
        gap: 20px;
        flex-wrap: nowrap;
    }

}

@media screen and (min-width: 640px) {
    #main-content {
        max-width: 1180px;
        /* margin: 0px auto 60px; */
        margin: 0px auto 0px;
    }

    /*--- TOP | お知らせ ---*/
    .top-info-content .barbpack-post-list .list-title {
        margin: 0 0 0 35px;
    }

    #main-content .top-content .top-regular-mtg-group .top-make-up {
        /* flex-wrap :nowrap !important; */
    }

}

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

    /*--- コンテンツ 外枠の波形 設定 ---*/
    .top-club-group:before,
    .top-link-group:before {
        background-size: contain;
        top: -1%;
    }

    /*--- TOP | メッセージ箇所 ---*/
    .top-msg-group p {
        font-size: 24px;
        padding: 20px 0;
    }

    /*--- TOP | お知らせ ---*/
    .top-info-group:before {
        background-size: auto;
        background-position: center top;
        width: 100%;
        height: 100%;
    }

    .top-info-content {
        max-width: 90%;
    }

    /*--- TOP | 大阪リバーサイドクラブについて ---*/
    .top-about-group:before {
        left: 10%;
    }

    .top-about-group .top-about-content {
        max-width: 90%;
    }

    .top-about-group .top-about-content .top-about-inner {
        padding: 30px;
        width: auto;
    }
}

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

    /*--- コンテンツ 外枠の波形 設定 ---*/
    .top-club-group:before,
    .top-link-group:before,
    .top-club-group:after,
    .top-link-group:after {
        display: none;
        /*background-size: auto;
        background-position: center;
        top: -54px;*/
    }

    .swiper-slide img {
        margin-top: 0;
    }

    #main-content {
        padding: 0;
    }

    .page:not(.home) #main-content,
    .post-type-archive-club-reports main#primary {
        padding: 60px 0 0;
    }

    body.home .top-content h2,
    body.page h2,
    .post-type-archive-club-reports h2,
    .post-type-archive-activity-reports h2 {
        font-size: 26px !important;
    }

    body.home .top-content h2 span.en,
    .post-type-archive-club-reports h2 span.en,
    .post-type-archive-activity-reports h2 span.en {
        font-size: 14px;
    }

    .page:not(.home) h3 {
        font-size: 22px !important;
    }

    .top-content .wp-block-buttons>.wp-block-button.wp-block-button__width-25 {
        width: calc(96% - var(--wp--style--block-gap, .5em)*.75);
    }

    /*--- TOP | メッセージ箇所 ---*/
    .top-msg-group {
        background-size: cover;
        background-position: center top;
    }

    .top-msg-group p {
        font-size: 18px;
        padding: 0;
    }

    /*--- TOP | お知らせ ---*/
    .top-info-group:before {
        background-position: center bottom;
        height: 70px;
    }

    /*--- TOP | 大阪リバーサイドクラブについて ---*/
    .top-about-group {
        padding: 70px 15px 70px !important;
    }

    .top-about-group:before {
        width: 52px;
        height: 88px;
    }

    .top-about-group .top-about-content {
        max-width: initial;
        margin: 0 auto 2em auto;
    }

    .top-about-group .top-about-content .top-about-inner h3 {
        width: auto;
        margin: 0 auto 15px;
    }

    .top-about-group .top-about-content .top-about-inner ul {
        margin: 0;
    }

    .top-about-group .btn-group {
        gap: 0;
    }

    /*--- TOP | ボタンエリア ---*/
    .top-button-group {
        gap: initial;
        margin-bottom: 60px;
    }

    .top-button-group figure img {
        width: 65% !important;
    }

    .wp-block-image figure.alignleft img,
    .wp-block-image figure.alignright img {
        margin: 0 auto;
    }

    /*--- TOP | 活動報告 ---*/
    .top-club-group {
        padding: 70px 15px 70px !important;
    }

    /*--- TOP | 例会のご案内 ---*/
    .top-regular-mtg-group {
        padding: 70px 15px 0 !important;
    }

    .top-regular-mtg-group iframe {
        height: 320px !important;
    }

    /*--- TOP | 各種リンク先 ---*/
    .top-link-group .wp-block-columns {
        margin-bottom: 0;
    }

    .top-link-group .wp-block-columns {
        gap: initial;
    }
}

@media only screen and (min-width:640px) {
    #main-content .top-content .top-link-group .top-about-links {
        flex-wrap: nowrap !important;
    }

    #main-content .top-content .top-button-group {
        flex-wrap: nowrap !important;
    }

}


/*--------------------------------------------------------------
## Content
--------------------------------------------------------------*/
h2,
h3 {
    color: #01599F;
}

.page h2,
.post h2 {
    margin-bottom: 70px;
}

.page:not(.home) #page h3,
.single h3 {
    border-left: none !important;
    border-bottom: none;
    border-top: none;
}

body.page:not(.home) #main-content h3 {
    border: 0;
    padding: 0 0 5px 0;
    font-size: 26px;
    letter-spacing: 0.15rem;
}

body.page:not(.home) #main-content h3.sub-ttl {
    color: #333;
    font-size: 24px;
    padding-left: 20px;
    border-left: 4px solid #01599F !important;
    border-bottom: 0 !important;
}

ul,
ul li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.page_navi a {
    color: #fff;
    background: #333;
}

.wp-block-group .wp-block-columns .wp-block-column h3 {
    margin-top: 0;
}

.category header.site-header {
    margin-bottom: 50px;
}

/*---- 固定ページ | 上部の見出し（h2） ---*/
body.page header.entry-header h2,
body.category h2.page-title,
.post-type-archive-weekly-reports header.entry-header h2,
.post-type-archive-activity-reports header.entry-header h2,
.post-type-archive-club-reports header.entry-header h2 {
    font-size: 36px;
    font-weight: 700;
    letter-spacing: .15rem;
    max-width: 1180px;
    margin: 15px auto;
    position: relative;
    padding: 0 0 0 40px;
    text-shadow: 0 0 10px #fff;
    z-index: 1;
}

body.page header.entry-header,
.post-type-archive-weekly-reports header.entry-header,
.post-type-archive-activity-reports header.entry-header,
.post-type-archive-club-reports header.entry-header {
    margin: 20px 20px 60px calc(50% - 50vw - (var(--barb-cs-scrollbar_width)/2));
    width: 100vw;
    max-width: 100vw !important;
    min-height: 280px;
    position: relative;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: hidden;
    padding: 80px 0;
    background: rgb(244, 252, 255);
    background: linear-gradient(90deg, rgba(244, 252, 255, 1) 22%, rgba(173, 224, 245, 1) 100%);
    position: relative;
}

.about header.entry-header:after {
    position: absolute;
    content: "";
    top: -10px;
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/about/bg_main-visual.png) no-repeat;
    background-size: contain;
    background-position-x: right;
    width: 100%;
    height: 580px;
}

.rotary header.entry-header:after {
    position: absolute;
    content: "";
    top: -50%;
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/rotary/bg_main-visual.png) no-repeat;
    background-size: contain;
    background-position-x: right;
    width: 100%;
    height: 580px;
}

.position header.entry-header:after {
    position: absolute;
    content: "";
    top: -50%;
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/position/bg_main-visual.png) no-repeat;
    background-size: contain;
    background-position-x: right;
    width: 100%;
    height: 580px;
}

.schedule header.entry-header:after {
    position: absolute;
    content: "";
    top: -50%;
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/schedule/bg_main-visual.png) no-repeat;
    background-size: contain;
    background-position-x: right;
    width: 100%;
    height: 580px;
}

.post-type-archive-club-reports header.entry-header:after {
    position: absolute;
    content: "";
    top: -50%;
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/report/bg_main-visual.png) no-repeat;
    background-size: contain;
    background-position-x: right;
    width: 100%;
    height: 580px;
}

.contact header.entry-header:after {
    position: absolute;
    content: "";
    top: -50%;
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/contact/bg_main-visual.png) no-repeat;
    background-size: contain;
    background-position-x: right;
    width: 100%;
    height: 580px;
}

body.page header.entry-header h2:after,
.members-only header.entry-header h2:after,
.post-type-archive-club-reports header.entry-header h2:after,
.post-type-archive-weekly-reports header.entry-header h2:after,
.post-type-archive-activity-reports header.entry-header h2:after {
    position: absolute;
    color: #222222;
    font-size: 18px;
    font-weight: normal;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: normal;
    bottom: -40px;
    left: 0;
}

.about header.entry-header h2:after {
    content: "About our club";
}

.rotary header.entry-header h2:after {
    content: "About Rotary Club";
}

.position header.entry-header h2:after {
    content: "Director/Officer/Committee";
}

.schedule header.entry-header h2:after {
    content: "Schedule";
}

.post-type-archive-club-reports header.entry-header h2:after {
    content: "Club events and Activity reports";
}

.contact header.entry-header h2:after {
    content: "Contact";
}

.thanks header.entry-header h2:after {
    content: "Thanks";
}

.members-only header.entry-header h2:after {
    content: "Members Only";
}

.sitemap header.entry-header h2:after {
    content: "Sitemap";
}

.privacy-policy header.entry-header h2:after {
    content: "Privacy policy";
}

.past-activity-list header.entry-header h2:after {
    content: "List of past Activities";
}

.post-type-archive-weekly-reports header.entry-header h2:after {
    content: "Weekly report list";
}

.post-type-archive-activity-reports header.entry-header h2:after {
    content: "Activity report list";
}

.about header.entry-header {
    margin: 20px 20px 0 calc(50% - 50vw - (var(--barb-cs-scrollbar_width)/2)) !important;
}

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

    body.page header.entry-header h2:after,
    .members-only header.entry-header h2:after,
    .post-type-archive-club-reports header.entry-header h2:after,
    .post-type-archive-weekly-reports header.entry-header h2:after,
    .post-type-archive-activity-reports header.entry-header h2:after {
        padding: 0 0 0 40px;
    }
}

/*---- リンク ----*/
a:hover {
    opacity: 0.75;
    transition: 1s;
}

.external-link_01 a:after {
    font-family: "Font Awesome 5 Free";
    content: "\f35d";
    font-weight: 700;
    margin-left: 5px;
}

/*---- ボタン ----*/
.btn_01 a {
    position: relative;
}

.btn_01 a:after {
    position: absolute;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-weight: 600;
    right: 30px;
    top: 14px;
}

.page_navi .back a {
    display: inline-block;
    padding: 18px 28px;
    text-decoration: none;
    font-size: 16px;
    line-height: 100%;
    margin: 0 4px 4px 0;
    border-radius: 30px;
}

.page_navi a {
    color: #fff;
    background: #0a78b3;
}

@media only screen and (max-width:900px) {
    .page_navi {
        margin: 20px 0 50px 0 !important;
    }

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

@media only screen and (max-width:639px) {
    .top-info-group .btn_01 .wp-block-button {
        width: calc(80% - var(--wp--style--block-gap, .5em)*.75) !important;
    }
}

/*---- リスト ----*/
.list_01 li {
    position: relative;
    list-style: none;
    margin-left: 20px;
}

.list_01 li:before {
    position: absolute;
    content: "";
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/ico_diamond_01.svg) no-repeat;
    width: 12px;
    height: 12px;
    z-index: 2;
    top: 10px;
    left: -20px;
}

.list_02 li {
    position: relative;
    list-style: none;
    margin-left: 20px;
}

.list_02 li:before {
    content: "●";
    font-size: 7px;
    margin-right: 15px;
    color: #01599f;
}

/*---- フォント ----*/
.mincho {
    font-family: 'Noto Serif JP', sans-serif;
}

.font-14 {
    display: block;
    font-size: 14px;
    line-height: 1.7;
    padding-bottom: 13px;
}

/* ---- 線 ----*/
.bdr-btm_01 {
    border-bottom: 1px solid #17478F !important;
}

/*---- 枠 ----*/
.frame_01 {
    border: 1px solid #DBDBDB;
    padding: 20px;
}

/*---- ページ送り ----*/
.nav-links {
    display: block;
}

.nav-links>span,
.nav-links>a {
    font-size: 14px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}



.archive-navigation>.current {
    border: 1px solid #0a78b3;
    background: #fff;
    color: #0a78b3;
}

.nav-links a {
    color: #fff;
    background: #0a78b3;
}

.barbpack-post-list {
    position: relative;
}

/*-- 全幅時に画像sizeを管理画面側から制御できないので --*/
.img-resize img {
    width: 50%;
    margin: 0 auto;
}

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

    body.page header.entry-header,
    .about header.entry-header {
        margin: 0 0 0 0 calc(50% - 50vw - (var(--barb-cs-scrollbar_width)/2)) !important;
    }

    body.page header.entry-header h2 {
        padding-left: 30px;
    }

    body.page header.entry-header h2:after {
        padding-left: 30px;
    }

    .rotary header.entry-header:after,
    .about header.entry-header:after,
    .page header.entry-header:after {
        top: -10%;
        background-position-x: initial;
        width: 60%;
        right: 0;
    }
}

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

    h2,
    h3 {
        border-left: none;
    }

    .page #main-content #primary h2,
    .post #main-content #primary.entry-content>* h2 {
        z-index: 1;
    }

    body.page header.entry-header h2:after {
        padding-left: 15px;
    }

    body.page header.entry-header,
    .post-type-archive-club-reports header.entry-header,
    .post-type-archive-activity-reports header.entry-header,
    .post-type-archive-weekly-reports header.entry-header {
        min-height: 140px;
        z-index: -1;
    }

    .rotary header.entry-header:after,
    .about header.entry-header:after,
    .page header.entry-header:after,
    .post-type-archive-club-reports header.entry-header:after {
        width: 100%;
        background-position-x: 150px;
    }

    .page:not(.home) .alignfull,
    .post-type-archive-club-reports .alignfull {
        margin: 0 auto;
        width: 100%;
    }

    #main-content #primary>article>.entry-content {
        margin: 0 auto 50px auto;
    }

    .privacy-policy #main-content #primary .entry-content {
        padding: 0 15px;
    }
}


/*--------------------------------------------------------------
  年間プログラム
--------------------------------------------------------------*/
/* .schedule figure.wp-block-table table td {
    font-size: 13px;
    line-height: 1.7;
}

.schedule figure.wp-block-table table tr.head {
    background: #eee;
}

.schedule .s1 {
    font-weight: bold;
    text-decoration: none;
}

.schedule .s2 {
    color: black;
    font-weight: bold;
    text-decoration: none;
}

.schedule .s3 {
    color: black;
    font-weight: normal;
    text-decoration: none;
}

.schedule .s4 {
    color: black;
    font-weight: normal;
    text-decoration: none;
}

.schedule .s5 {
    color: black;
    font-weight: bold;
    text-decoration: none;
} */

.schedule object.wp-block-file__embed {
    margin-bottom: 32px !important;
}

.schedule .wp-block-file {
    text-align: center;
}

#wp-block-file--media-7ae3913c-3422-4269-bf3a-cd235935c715 {
    font-size: 18px;
    line-height: 1.2;
    margin: 0 auto;
    background: rgb(203, 15, 15);
    border-radius: 5px;
    display: block;
    padding: 12px 32px 18px;
    max-width: fit-content;
    font-weight: 700;
    color: #FFF;
    margin-top: 16px;
    text-decoration: none;
}

#wp-block-file--media-7ae3913c-3422-4269-bf3a-cd235935c715::before {
    font-family: 'Font Awesome 5 Free';
    content: "\f1c1";
    font-weight: 900;
    color: #FFF;
    margin-right: .25em;
    font-size: 1.5em;
}

#wp-block-file--media-7ae3913c-3422-4269-bf3a-cd235935c715 span {
    font-size: 14px;
}

@media only screen and (min-width:640px) {
    .entry-content .sp {
        display: none;
    }
}

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


    .schedule .wp-block-file .pc {
        display: none;
    }

    .schedule .entry-content p.pdf_link,
    .schedule-pdf p.pdf_link {
        text-align: center;
    }

    .schedule .entry-content p.pdf_link>a::before,
    .schedule-pdf p.pdf_link>a::before {
        font-family: 'Font Awesome 5 Free';
        content: "\f1c1";
        font-weight: 900;
        color: #FFF;
        margin-right: .5em;
        font-size: 1.5em;
        top: 3px;
        position: relative;
    }


    .schedule .schedule-group-wrap {
        padding: 30px 15px 30px;
    }

    .schedule .entry-content p.pdf_link>a,
    .schedule-pdf p.pdf_link>a {
        display: inline-block;
        background-color: rgb(203, 15, 15);
        border-radius: 20px;
        padding: 12px 32px 18px;
        font-size: 20px;
        text-decoration: none;
        color: #FFF;
        font-weight: 600;
        line-height: 1.2;
        max-width: calc(100% - 2rem);
    }

    .schedule .entry-content p.pdf_link>a>span,
    .schedule-pdf p.pdf_link>a>span {
        font-size: 14px;
        font-weight: 400;
    }

    .schedule .entry-content .annual-program_img {
        height: 100%;
        margin-bottom: 30px;
        max-width: 1150px;
        width: 100%;
        padding: 0;

    }

    .schedule #page .entry-content .annual-program_img .js-scrollable {
        margin-bottom: 0;
        position: relative;
        overflow: auto;
        padding: 0 0 30px 0.5rem;
        width: 1150px;
    }

    .schedule #page .entry-content .annual-program_img .js-scrollable img {
        width: 100%;
        height: auto;
        max-width: unset;
    }

    .schedule #page .scroll-hint-icon {
        top: calc(0.5% + 15px);
    }
}


/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
footer#colophon {
    background: #17478F;
}

footer#colophon {
    color: #fff;
}

footer#colophon:not(.home) {
    /* margin-top: 120px; */
    /* margin-top: -80px; */
}

footer .footer-nav .menu {
    column-count: 2;
}

footer#colophon a {
    text-decoration: none;
    color: #fff;
}

footer .footer-content #return_top {
    color: #000;
}

footer .footer-content .company-info .contact-group {
    display: flex;
    justify-content: space-around;
    margin-bottom: 1.5em;
}

footer .footer-content .company-info .contact-group a {
    display: block;
    border-radius: 60px;
    font-size: 16px;
    text-align: center;
    width: 220px;
    background-color: #fff;
    color: #17478f !important;
    padding: 15px 0;
    margin-bottom: 3px;
}

footer .footer-content .company-info .barb_text_banner a {
    display: block;
    border-radius: 60px;
    width: 220px;
    background: none !important;
    color: #fff !important;
    border: 1px solid #fff;
    padding: 8px 0;
    margin-top: 25px;
}

.sub-menu li a {
    padding-left: 15px;
}

.sub-menu li a:before {
    content: '−';
    margin-right: 15px;
}

#copyright {
    background: #206CCF;
    position: relative;
}

#copyright:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 50px;
    z-index: 2;
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/bg_foot_01.png) no-repeat;
    background-size: cover;
    top: -50px;
    background-position: center top;
}

@media screen and (max-width: 860px) {
    .company-info .barb_text_banner {
        max-width: unset;
        display: flex;
        justify-content: center;
    }
}

@media screen and (max-width: 639px) {
    footer .footer-content .site-title {
        display: block;
    }

    footer .footer-content {
        display: flex;
        flex-wrap: wrap;
        flex-direction: column-reverse
    }

    footer .site-branding .site-title {
        width: 90%;
    }

    footer .footer-nav {
        display: block;
    }

    footer .footer-nav .menu {
        column-count: initial;
    }

    footer .footer-nav .menu a {
        border-bottom: none;
    }

    footer .footer-nav ul {
        text-align: left;
    }

    footer .footer-nav ul.sub-menu {
        margin: 0;
        padding: 0;
    }

    footer .footer-content .company-info p {
        margin: .5em auto;
    }

    .footer-content .company-info .textwidget {
        margin-top: 1.5em;
    }

    footer .footer-content .company-info .contact-group,
    footer .footer-content .company-info .contact-group a {
        display: block;
    }

    footer .footer-content .company-info .contact-group a {
        margin: 0 auto;
    }

    footer .footer-content .company-info .barb_text_banner {
        width: 100%;
        max-width: 220px;
    }

    footer .footer-content .company-info .barb_text_banner a {
        margin: 0 auto 50px auto;
        padding: 20px 0;
    }

    #copyright:before {
        background-size: cover;
        top: -30px;
        left: 0;
        background-position: top;
    }

    footer .footer-nav {
        padding-top: 20px !important;
    }

    footer .footer-info {
        margin-top: 0 !important;
    }

    footer .footer-content p.footer-add {
        margin-top: 1.25em !important;
    }
}

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

    footer .footer-content .company-info {
        margin: 0;
        display: block;
    }

    footer .footer-content .company-info p:first-child {
        margin: 15px 0 0;
    }

    footer .footer-content .company-info .textwidget p {
        width: 100%;
        letter-spacing: 0.06rem;
        margin: 0;
        text-align: right;
    }

    #footer-menu li.menu-item:nth-child(4) {
        margin-bottom: 10px;
    }

    #footer-menu a {
        display: inline-block;
        border-bottom: none;
        margin: 0 0 10px 0;
    }

    #footer-menu ul li a {
        margin-left: 0;
    }

    footer .footer-nav .footer-menu-wrap {
        flex-basis: 100%;
    }

    footer .footer-content {
        padding: 40px 20px 150px;
        width: 100%;
        max-width: 1180px;
        margin: 0 auto;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
    }

    footer .footer-info {
        width: 100%;
        max-width: 470px;
    }

    footer .footer-content .footer-add br {
        display: none;
    }

}


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

    footer .footer-nav .footer-menu-wrap {
        padding-left: 0;
        width: 100%;
        max-width: 700px;
    }

    footer .footer-content {
        flex-wrap: wrap;
    }

    footer .footer-content .footer-nav {
        order: 1
    }

    footer .footer-info {
        max-width: none;
        text-align: center;
        order: 2;
        margin-top: 40px;
    }

    footer .footer-content .company-info .contact-group {
        justify-content: center;
    }

    footer .footer-content .site-branding {
        justify-content: center;
    }

    footer .login-group {
        justify-content: center !important;
    }

    .company-info .barb_text_banner.on_logout {
        height: unset;
    }

    .company-info .barb_text_banner.on_logout a {
        margin-top: 0;
    }

    footer .footer-nav {
        padding-top: 40px;
        width: 100%;
    }

    #footer-menu a {
        margin-bottom: 5px;
    }
}



/*--------------------------------------------------------------
# Table
--------------------------------------------------------------*/
table {
    width: 100%;
    border-collapse: inherit;
    border-spacing: 0;
    border: 1px solid #c1c1c1;
}

.left-th table th,
.left-th table td {
    border: 0;
    border-right: 1px solid #c1c1c1;
    border-bottom: 1px solid #c1c1c1;
    padding: 10px;
}

.left-th table th {
    width: 30%;
    background: #eee;
    font-weight: bold;
}

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

    /* レスポンシブテーブルの装飾 */
    .is-style-tbl_responsive table {
        border: 0;
    }

    .is-style-tbl_responsive table th {
        border-width: 0 0 2px 0;
        border-style: dotted;
        border-color: #333;
        padding: 5px 0;
        font-weight: bold;
        background: #fff;
        text-align: left;
    }

    .is-style-tbl_responsive table th:before {
        content: "\f00c";
        color: #333;
        padding: 0 5px 0 0;
        font-family: 'Font Awesome 5 Free';
    }

    .is-style-tbl_responsive table td {
        border: 0;
    }
}


/*--------------------------------------------------------------
# クラブ行事と活動報告
--------------------------------------------------------------*/
.report .entry-content {
    padding: 0 22px 22px !important;
    overflow: hidden;
    flex-wrap: wrap;
}

.post-type-archive-club-reports .more-link {
    font-size: 16px;
}

.home .entry-content .more-link,
.post-type-archive-club-reports .more-link {
    width: 100%;
    text-align: right;
}

.home .entry-content .more-link a,
.post-type-archive-club-reports .more-link a {
    color: #17478F;
    text-decoration: none;
    text-align: right;
    font-weight: 600;
}

.home .entry-content .more-link a:after,
.post-type-archive-club-reports .more-link a:after {
    font-family: "Font Awesome 5 Free";
    content: '\f138';
    font-weight: 900;
    margin-left: 8px;
}

.home article,
.post-type-archive-club-reports article {
    border-bottom: none !important;
}

.home .posted-on,
.post-type-archive-club-reports .posted-on {
    color: #81A3D5;
    text-decoration: none;
    font-size: 16px;
    font-weight: 600;
}

.home .entry-content .entry-meta,
.post-type-archive-club-reports .entry-content .entry-meta {
    margin: 15px 0 0;
}

.home .entry-meta .posted-on:before,
.post-type-archive-club-reports .entry-meta .posted-on:before {
    display: none;
}

.home .entry-content h3 {
    font-size: 18px;
    margin: 5px 0;
    line-height: 1.5;
}

.post-type-archive-club-reports .entry-content h3 {
    font-size: 20px;
    margin: 8px 0 0 0;
    text-align: left;
    line-height: 1.5;
}

.home .entry-content h3 a,
.post-type-archive-club-reports .entry-content h3 a {
    color: #17478F;
    text-decoration: none;
}

.home .implementation-content,
.post-type-archive-club-reports .implementation-content {
    color: #666;
    font-size: 15px;
    line-height: 1.7;
}

.home .implementation-content p,
.post-type-archive-club-reports .implementation-content p {
    margin-top: 0;
}

.home .entry-content .barbpack-post-list2,
.post-type-archive-club-reports .entry-content .barbpack-post-list2 {
    margin: 20px auto 0 auto;
    justify-content: space-between;
}

.report .entry-content .columns-2 a.wp-block-read-more {
    color: #17478F;
    font-weight: 600;
    width: 100%;
    text-align: right;
}

.post-type-archive-club-reports article {
    padding: 15px 15px 40px;
}

/*--- top表示 ---*/
.home .entries {
    /*margin: 0 calc(50% - 50vw - (var(--barb-cs-scrollbar_width)/2));
    width: 100vw;
    max-width: 100vw!important;*/
    position: relative;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow-x: visible;
}

@media screen and (min-width: 640px) and (max-width: 1250px) {
    /*body.page header.entry-header,
    .post-type-archive-weekly-reports header.entry-header,
    .post-type-archive-activity-reports header.entry-header,
    .post-type-archive-club-reports header.entry-header {
        margin-left: 10px !important;
    }*/
}

@media screen and (min-width: 640px) {
    .home .entries ul.barbpack-post-list {
        display: flex;
        flex-wrap: nowrap;
        max-width: 1480px;
        margin: 0 auto;
    }

    .home .entries ul.barbpack-post-list li {
        width: 100%;
        flex-basis: initial;
    }

    .home .barbpack-post-list-6 li article img,
    .post-type-archive-club-reports .barbpack-post-list-6 li article img {
        width: 550px;
        object-fit: cover;
        border: 1px solid #dbdbdb;
    }

    .home .barbpack-post-list-6 li article img {
        height: 196px;
    }

    .post-type-archive-club-reports .barbpack-post-list-6 li article img {
        height: 320px;
    }
}

@media screen and (max-width: 900px) {
    .home .entries ul.barbpack-post-list {
        flex-wrap: wrap;
        justify-content: center;
    }

    .home .entries ul.barbpack-post-list li {
        width: 45%;
    }
}

@media screen and (max-width: 639px) {
    .home .entries ul.barbpack-post-list li {
        width: 100%;
    }

    .post-type-archive-club-reports header.entry-header {
        margin: 0 auto 40px auto !important;
    }

    .post-type-archive-club-reports header.entry-header h2,
    .post-type-archive-club-reports header.entry-header h2:after {
        margin: 0 0 15px;
        padding: 0 15px 5px;
        line-height: 1.3;
    }

    .post-type-archive-club-reports header.entry-header:after {
        background-position-x: 170px;
        top: 0;
        z-index: -1;
    }

    .post-type-archive-club-reports #main-content {
        margin-left: 0;
        margin-right: 0;
    }

    .post-type-archive-club-reports .barbpack-post-list img {
        border: 1px solid #dbdbdb;
        object-fit: cover;
        min-width: 360px;
        height: 220px;
    }
}


/*--------------------------------------------------------------
# 当クラブについて
--------------------------------------------------------------*/
/*--- 背景色＋装飾（なし） --*/
.about-group-wrap {
    padding: 1px 0 70px;
}

.about-group .about-content,
.about-group-wrap .about-content {
    max-width: 1180px;
    margin: 0 auto;
}

.about-group .about-content h3 {
    display: flex;
    align-items: center;
    padding: 0 0 15px 0 !important;
    margin-bottom: 40px;
}

.about-group .about-content span.sttl {
    background: #01599F;
    color: #fff;
    font-size: 16px;
    font-weight: 800;
    display: inline-block;
    padding: 5px 20px;
    letter-spacing: normal;
    border-radius: 60px;
    margin-right: 20px;
}

.about .nav a {
    padding: calc(0.3em + 2px) calc(1.5em + 2px);
}

.about .nav a:after {
    font-family: "Font Awesome 5 Free";
    content: '\f107';
    font-weight: 900;
    margin-left: 20px;
    color: #01599F;
}

.president-msg-group .about-content {
    max-width: 1325px;
    margin: 0 auto;
}

.president-msg-group .about-content .is-layout-flow:last-child p:first-child {
    margin-bottom: 15px;
}

.president-msg-group .about-content .is-layout-flow:last-child {
    position: relative;
}

/* .president-msg-group .about-content .is-layout-flow:last-child:after {
    position: absolute;
    display: block;
    content: "";
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/about/img_year-theme.png) no-repeat;
    background-size: contain;
    background-position: right;
    width: 50%;
    bottom: 0;
    right: 0;
    padding: 10%;
} */

/* 46期用 -------------------------- */

/*全体の調整*/
@media only screen and (min-width:640px) {
    .about #main-content { 
        width: 100%;
        margin: 0 1rem;
        max-width: none;
    }
}

/*会長あいさつ*/
.about .president-msg-group .president-msg {
    margin: 0 1rem;
}
.about .president-msg-group .president-msg .wp-block-columns {
    max-width: 1325px;
    margin: 0 auto 2rem;
}

/*テーマカラーの設定*/
.about #main-content #primary .entry-content .president-msg-group h2,
.about .president-msg-group .romaji {
    color: #719568;  
}

.about .president-msg-group .about-content {
    padding: 0;
}
.about .president-msg-group strong {
    font-size: 1.1rem;
}
.about .president-msg-group .about-content .is-layout-flow:last-child {
    padding-bottom: 0;
}
.about .president-msg-group ol {
    margin-left: 0;
    margin-bottom: 1rem;
    padding-left: 1.5rem;
    font-weight: bold;
}
.about .president-msg-group ol li {
    margin-bottom: .5rem;
}

.about .president-msg-group .about-content .is-layout-flow:last-child.msg-txt:after {
    position: absolute;
    display: block;
    content: "";
    background: url(/wp-content/uploads/2025/06/img_year-theme_46th.png) no-repeat;
    background-size: contain;
    background-position: right;
    max-width: 498px;
    width: 70%;
    bottom: 0;
    right: 0;
    padding: 10%;
}
@media only screen and (max-width:781px) {
    .about .president-msg-group .president-msg .wp-block-columns {
        margin-bottom: 0;
    }
}
@media only screen and (min-width:640px) {
    .about .president-msg-group .president-msg {
        margin-bottom: 3rem;
    }
    .about .president-msg-group .about-content .is-layout-flow:last-child p:last-child {
        margin-bottom: 3rem;
    }
}

/*ロゴ*/
.about .ri-logo {
    padding: 0 2rem;
    text-align: center;
}
.about .ri-logo img {
    max-width: 430px;
    width: 100%;
}

/*⼤阪リバーサイドロータリークラブ クラブビジョン*/
.about .about-sec .lower-about-group h2 {
     text-shadow : 
       2px  2px 1px #ffffffdb,
      -2px  2px 1px #ffffffdb,
       2px -2px 1px #ffffffdb,
      -2px -2px 1px #ffffffdb,
       2px  0px 1px #ffffffdb,
       0px  2px 1px #ffffffdb,
      -2px  0px 1px #ffffffdb,
       0px -2px 1px #ffffffdb;
}
.about .about-sec .about-group {
    margin-bottom: 0;
}

/*クラブ概要*/
@media only screen and (min-width:640px) {
    .about .about-sec .out-about-table {
        padding: 0 1rem;
    }
}
@media only screen and (max-width:639px) {
    .about .about-sec {
        padding: 1rem;
        margin: 0 auto;
    }
}

/* 45期用 */
#post-10 {
    width: 100%;
}
/* .about #main-content #primary .entry-content .president-msg-group h2 {
    color: #8E6C4B;
}

.president-msg-group .about-content .is-layout-flow:last-child.msg-txt:after {
    position: absolute;
    display: block;
    content: "";
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/about/img_year-theme_45th.png) no-repeat;
    background-size: contain;
    background-position: right;
    max-width: 498px;
    width: 70%;
    bottom: 0;
    right: 0;
    padding: 10%;
} */

.about .president-msg-group {
    position: relative;
}

.about .president-msg-group:before {
    position: absolute;
    content: "";
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/bg_wave-up_02.svg) no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 106px;
    top: -70px;
}

.about .president-msg-group h2 {
    padding-top: 80px;
}

.about .about-table {
    max-width: 1040px;
    margin: 0 auto;
}

.about .about-table td {
    padding: 0 15px;
    border-bottom: 1px solid #c1c1c1;
}

.about .about-table td:last-child {
    border-bottom: 0;
}

.about .about-table tr:nth-child(odd) td {
    background: #1768A8;
    color: #fff;
    font-weight: 700;
    padding: 15px;
}

.about .about-table .flex {
    display: flex;
}

.about .about-table .flex.beside dl {
    width: 14%;
    margin-top: 25px;
    text-align: center;
    border: 1px solid #ccc;
}

.about .about-table .flex.beside dl dt {
    padding: 10px;
    border-bottom: 1px solid #ccc;
    background: #f7f7f7;
}

.about .about-table .flex.beside dl dd {
    padding: 10px;
    margin: 0 1.5em 0.5em !important;
}

.about .about-table .vertical dl {
    display: flex;
    align-items: stretch;
    border: 1px solid #ccc;
    border-bottom: none;
    margin: 0;
}

.about .about-table .vertical dl:last-child {
    margin-bottom: 30px;
    border-bottom: 1px solid #ccc;
}

.about .about-table .vertical dl dt {
    width: 20%;
    padding: 10px;
    background: #f7f7f7;
}

.about .about-table .vertical dl dd {
    width: 80%;
    padding: 0;
    margin: 0.5em 1.5em 0.5em !important;
}

.about .admission-wrap {
    position: relative;
}

.about .admission-wrap .rotary-ttl {
    position: absolute;
    width: 100%;
    max-width: 1130px;
}

.about .admission-wrap .sttl {
    color: #01599F;
    font-size: 22px !important;
    font-family: 'Noto Serif JP';
    letter-spacing: .05rem;
    text-align: center;
    padding: 0 45px;
    position: relative;
    width: 60%;
    margin: 0 auto 30px auto;
}

.about .admission-wrap .sttl:before,
.about .admission-wrap .sttl:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 15px;
    height: 1px;
    background-color: #707070;
    transform: inherit;
}

.about .admission-wrap .sttl:before {
    left: 0;
}

.about .admission-wrap .sttl:after {
    right: 0;
}

.about .admission-info {
    max-width: 1280px;
    background: #fff;
    padding: 100px 50px 20px;
    margin: 300px auto 0 auto;
}

.about .rotary-policies-group {
    margin: 70px 0;
}

.rotary-policies-group .rotary-policies-inner {
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center !important;
}

.rotary-policies-group .rotary-policies-inner :is(ul, ol) {
    font-size: 20px;
    font-weight: 600;
    line-height: 2.5;
    padding: 0;
    max-width: 368px;
    margin: 0 auto;
}

.rotary-policies-group:last-of-type .rotary-policies-inner ol li {
    line-height: 1.5;
    margin-bottom: 1em;
}

.about .rotary-policies-group .rotary-policies-inner ul li:before {
    top: 20px;
    left: -30px;
}

.about .rotary-policies-group .rotary-policies-inner.club-theme {
    padding: 70px 35px;
}

.about .rotary-policies-group .rotary-policies-inner.club-theme .wp-block-column:last-child {
    border-left: 1px solid #c2c2c2;
    padding-left: 50px;
}

.about .entry-content .wp-block-image {
    margin-bottom: 0 !important;
}

@media only screen and (max-width:639px) {
    .rotary-policies-group .rotary-policies-inner :is(ul, ol) {
        width: 90%;
    }

    .about .rotary-policies-group .rotary-policies-inner ol {
        margin-bottom: 20px;
    }

    .rotary-policies-group .rotary-policies-inner li {
        margin-left: 20px;
        font-size: 18px;
        line-height: 1.8;
    }

}



/*---- クラブビジョン ----*/
.lower-about-group {
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/bg_top-aboutus.jpg) no-repeat;
    background-size: cover;
    height: 100%;
    padding: 1px 0 70px !important;
    margin: -70px 0 70px calc(50% - 50vw - (var(--barb-cs-scrollbar_width)/2));
    position: relative;
    overflow: hidden;
}

.lower-about-group:before {
    position: absolute;
    content: "";
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/img_flag_01.png) no-repeat;
    background-size: contain;
    width: 104px;
    height: 167px;
    top: -8px;
    left: 20%;
}

.lower-about-group .btn-group {
    justify-content: center;
}

.lower-about-group .lower-about-content {
    background: rgba(255, 255, 255, 0.8);
    max-width: 1050px;
    margin: 0 auto 50px auto;
    padding: 70px 0;
}

.lower-about-group .lower-about-content .ttl-center {
    text-align: center;
}

.lower-about-group .lower-about-content h3 {
    color: #01599F;
    font-size: 20px;
    font-family: 'Noto Serif JP';
    letter-spacing: .05rem;
    text-align: center;
    padding: 0 45px !important;
    position: relative;
    display: inline-block;
    margin: 0 auto 30px auto;
    position: relative;
    border-bottom: none;
}

.lower-about-group .lower-about-content h3:before,
.lower-about-group .lower-about-content h3:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 15px;
    height: 1px;
    background-color: #707070;
    transform: inherit;
}

.lower-about-group .lower-about-content h3:before {
    left: 0;
}

.lower-about-group .lower-about-content h3:after {
    right: 0;
}

.lower-about-group .lower-about-content .lower-about-inner {
    padding: 0 0 50px;
    width: 70%;
    margin: 0 auto;
}

.lower-about-group .lower-about-content .lower-about-inner ul,
.lower-about-group .lower-about-content .lower-about-inner ol {
    margin: 0;
    padding: 0;
    font-family: 'Noto Serif JP';
}

.lower-about-group .lower-about-content .lower-about-inner ul.list_01 li,
.lower-about-group .lower-about-content .lower-about-inner ol li {
    font-weight: 600;
    font-size: 18px;
}

.lower-about-group .lower-about-content .lower-about-inner:not(:last-child) ul li:first-child {
    margin-bottom: 15px;
}

.lower-about-group .btn_admission-info .wp-block-button {
    width: calc(18.2% - var(--wp--style--block-gap, .5em)*.75);
}

.lower-about-group .btn_admission-info .wp-block-button a {
    position: relative;
}

.lower-about-group .btn_admission-info .wp-block-button a:before {
    position: absolute;
    content: "";
    background: url(/wp-content/themes/barbwire-cc-child/assets/img/ico_admission-info_01.png) no-repeat;
    background-size: contain;
    width: 24px;
    height: 20px;
    top: 18px;
    left: 15%;
}

/*--- クラブ概要 --*/
.about .about-merit table,
.about .about-merit table td {
    border: none;
}

.about .about-merit table tr {
    border-bottom: 1px solid #d1d1d1;
    line-height: 2.5;
}

.about .about-merit table tr td:first-child {
    font-family: 'Montserrat', sans-serif;
    color: #01599F;
    font-size: 18px;
    font-weight: bold;
    white-space: nowrap;
}

/*---- お問合せ先 ----*/
.about .about-contact-group {
    /*background: url(/wp-content/themes/barbwire-cc-child/assets/img/about/bg_foot_01.jpg) no-repeat;
    background-size: cover;*/
    height: 100%;
    margin: 70px 0 0 calc(50% - 50vw - (var(--barb-cs-scrollbar_width)/2));
    position: relative;
    overflow: hidden;
}

.about .contact-content {
    /*background: rgba(255,255,255,0.8);
    margin: 120px auto 60px auto;
    padding: 70px 0;
    justify-content: center;
    text-align: center;*/
    background: rgba(255, 255, 255, 0.8);
    margin: 0 auto 50px;
    padding: 0;
    justify-content: center;
    text-align: center;
}

.img-resize_80 {
    width: 80%;
}

@media only screen and (max-width:1180px) {
    .about .president-msg-group .about-content .is-layout-flow:last-child {
        padding-bottom: 15%;
    }
}

@media only screen and (max-width:639px) {
    .about-group-wrap {
        padding: 0 15px 70px;
        margin-bottom: 50px;
    }

    .about .nav {
        padding: 0 15px;
        justify-content: left !important;
    }

    .about .nav a {
        font-size: 16px !important;
        padding: calc(0.25em + 2px) calc(1.2em + 2px);
    }

    .about h2#menu_01 {
        padding-top: 20px !important;
    }

    .about .president-msg-group:before {
        background-size: cover;
        background-position: center bottom;
        height: 70px;
    }

    .about .president-msg-group .about-content {
        padding: 0 15px;
    }

    .about .president-msg-group .about-content .is-layout-flow:last-child {
        padding-bottom: 45%;
    }

    .about .president-msg-group .about-content .is-layout-flow:last-child:after {
        background-size: contain;
        background-position: center;
        width: 100%;
        bottom: 50px;
        padding: 15%;
    }

    .about article .entry-content h2 {
        width: 100% !important;
        left: 0 !important;
    }

    .about-group .about-content h3 {
        display: block;
    }

    .about-group .about-content span.sttl {
        display: block;
        width: 100%;
        max-width: 200px;
        margin-bottom: 15px;
        text-align: center;
    }

    .about .rotary-policies-group {
        padding: 0 15px;
    }

    .about .rotary-policies-group .rotary-policies-inner ul {
        font-size: 18px;
        padding: 0 0 30px 40px;
    }

    .about .rotary-policies-group .rotary-policies-inner.club-theme {
        padding: 0 15px 20px;
        gap: 0;
    }

    .about .rotary-policies-group .rotary-policies-inner.club-theme figure {
        width: 35%;
        margin: 10px auto 0 auto;
    }

    .about .rotary-policies-group .rotary-policies-inner.club-theme .wp-block-column:last-child {
        border-left: none;
        border-top: 1px solid #dbdbdb;
        padding-left: 0;
        margin-top: 15px;
    }

    .lower-about-group {
        margin: 0 auto;
    }

    .lower-about-group:before {
        width: 62px;
        height: 104px;
        top: -10px;
    }

    .lower-about-group .lower-about-content {
        width: 95%;
        padding: 40px 0 20px;
    }

    .lower-about-group .lower-about-content h3 {
        margin-bottom: 0;
    }

    .lower-about-group .lower-about-content .lower-about-inner {
        padding: 25px 15px;
        width: 90%;
    }

    .lower-about-group .lower-about-content .lower-about-inner ul {
        margin: 0;
        padding: 0;
    }

    .lower-about-group .lower-about-content .lower-about-inner ol {
        padding: 25px 20px 0 30px;
    }

    .lower-about-group .lower-about-content .lower-about-inner ol li {
        margin-bottom: 10px;
    }

    .lower-about-group .lower-about-content .lower-about-inner ol li:last-child {
        margin-bottom: 0;
    }

    .about .about-table .flex,
    .about .about-table .vertical dl {
        display: block;
    }

    .about .about-table .flex.beside dl {
        width: 100%;
        margin-top: 0;
    }

    .about .about-table .vertical dl dt {
        width: 100%;
    }

    .about .about-table .vertical dl dd {
        width: 93%;
        padding: 0 0 15px;
        margin: 0.5em 15px 0 !important;
    }

    .about .admission-info {
        padding: 50px 15px 10px;
        margin: 0 auto;
    }

    .about .admission-wrap .sttl {
        padding: 0 25px;
        width: 90%;
        margin: 0 auto;
    }

    .about .about-merit table tr {
        border-bottom: none;
        line-height: 1.7;
    }

    .about .about-merit table tr td {
        display: block;
        width: 100%;
    }

    .about .about-merit table tr td:first-child {
        color: #01599F;
        background: #e9f5ff;
        padding: 10px;
    }

    .about .about-merit table tr td:last-child {
        padding-bottom: 15px;
    }

    .about .about-contact-group {
        background-position-x: 38%;
    }

    .about .contact-content {
        padding: 15px 20px 30px;
        margin: 60px auto 0 auto;
        width: 90%;
    }


    .img-resize img,
    .img-resize_80 {
        width: 100%;
    }
}



/*--------------------------------------------------------------
# ロータリーとは
--------------------------------------------------------------*/
.rotary-group .rotary-content {
    max-width: 1180px;
    margin: 0 auto;
}

.rotary-group .rotary-content p,
.rotary-group-wrap p {
    margin-bottom: 45px;
}

.rotary-group .rotary-content .activity-list {
    background: #fff;
    margin: 0 auto;
    padding: 20px;
    max-width: 410px;
    min-height: 343px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
}

.rotary-group .rotary-content .activity-list.list_02 {
    margin-left: 20px;
    font-weight: 600;
    line-height: 2.5;
}

.rotary-group-wrap .mincho {
    font-weight: 600;
    letter-spacing: .1rem;
}

/*--- 背景色＋装飾（なし） --*/
.rotary-group-wrap {
    padding: 1px 0 70px;
}

.rotary-group-wrap .rotary-content {
    max-width: 1180px;
    margin: 0 auto;
}

.rotary-group-wrap:first-child {
    padding-top: 0;
}

@media only screen and (max-width:639px) {
    .rotary-group-wrap {
        padding: 70px 0;
    }

    .rotary-group .rotary-content,
    .rotary-group-wrap .rotary-content {
        padding: 0 15px;
    }

    .rotary article .entry-content h2 {
        width: 100% !important;
        left: 0 !important;
    }

    .mb_text-l {
        text-align: left;
    }
}


/*--------------------------------------------------------------
# 理事・役員・委員
--------------------------------------------------------------*/
.position .position-content {
    max-width: 1180px;
    margin: 0 auto;
}

.position .member-table_01 {
    max-width: 1040px;
    margin: 0 auto;
}

.position .member-table_01.wp-block-table td {
    border: 1px solid #c1c1c1;
    padding: 15px;
}

.position .member-table_01.wp-block-table td:nth-child(1),
.position .member-table_01.wp-block-table td:nth-child(3) {
    background: #2c639e;
    font-weight: bold;
    width: 18%;
    color: #fff;
}

.position .member-table_02.wp-block-table td,
.position .member-table_03.wp-block-table td,
.position .member-table_04.wp-block-table td {
    border: 1px solid #c1c1c1;
    padding: 15px;
}

.position .member-table_02.wp-block-table tr:nth-child(1) td:nth-child(1),
.position .member-table_02.wp-block-table tr:nth-child(3) td:nth-child(1),
.position .member-table_02.wp-block-table tr:nth-child(5) td:nth-child(1),
.position .member-table_02.wp-block-table tr:nth-child(7) td:nth-child(1),
.position .member-table_02.wp-block-table tr:nth-child(8) td:nth-child(1),
.position .member-table_03.wp-block-table td:nth-child(1),
.position .member-table_04.wp-block-table td.row {
    background: #f7f7f7;
    font-weight: bold;
    width: 25%;
}

.position .member-table_04.wp-block-table tr.sttl {
    background: #2c639e;
    color: #fff;
    text-align: center;
}

.position .member-table_04.wp-block-table td {
    white-space: nowrap;
}

.position .member-table_04.wp-block-table td:last-child {
    white-space: initial;
}

.position .member-table_02 td span,
.position .member-table_04 td span {
    display: inline-block;
}

/*--- 背景色＋装飾（なし） --*/
.position-group-wrap {
    padding: 1px 0 70px;
}

@media only screen and (max-width:639px) {
    .position-group-wrap {
        padding: 1px 15px 70px;
    }

    .position .member-table_04.wp-block-table td {
        display: block;
        text-align: center;
        border: none;
        padding: 0 0 15px;
    }

    .position .member-table_04.wp-block-table td.row {
        width: 100%;
        color: #fff;
        background: #17478f;
        padding-top: 15px;
    }

    .position .member-table_04.wp-block-table td.row::before {
        display: none;
    }

    .position .member-table_04.wp-block-table td:before {
        display: block;
        content: attr(data-label);
        font-weight: bold;
        text-align: center;
        background: #f2f9ff;
        min-height: 40px;
        margin-bottom: 10px;
        padding-top: 5px;
    }

    .member-table_04 .sttl {
        display: none;
    }

    .member-table_04 .mb-bdr-top_01 {
        border-top: 1px solid #3e90d7 !important;
    }

    .member-table_04 .mb-bdr-top_01:before {
        color: #fff;
        background: #3e90d7 !important;
    }
}

@media only screen and (max-width:639px) {
    .position .member-table_01.is-style-tbl_responsive td {
        padding: 10px;
    }
}


/*--------------------------------------------------------------
# クラブ行事と活動報告（非会員コンテンツ）
--------------------------------------------------------------*/
.report-entry {
    margin-bottom: 60px;
}

.report-entry .entry-content {
    margin-bottom: 100px;
}

.report-entry .image-group {
    text-align: center;
}

.report-entry .image-group,
.report-entry .overview {
    flex-basis: 50%;
}

.post-type-archive-club-reports .entries {
    margin: 0 0 70px;
    padding: 0 0 70px;
}

.single-club-reports .entry-content h2 {
    font-size: 30px !important;
    text-align: left !important;
    padding-left: 0 !important;
    font-weight: 600;
}

.single-club-reports header.site-header {
    border-bottom: 1px solid #b8d8e8;
    padding-bottom: 15px;
}

.single-club-reports .date-cat {
    display: flex;
    font-size: 15px;
    color: #666;
    border-top: 1px solid #d1d1d1;
    border-bottom: 1px solid #d1d1d1;
}

.single-club-reports .date-cat p {
    margin: 10px 0 12px;
}

.single-club-reports .date-cat p:first-child {
    margin-right: 10px;
    padding-right: 15px;
    border-right: 1px solid #d1d1d1;
}

.single-club-reports .date-cat p span {
    font-size: 14px;
    color: #16458b;
    padding: 4px 8px;
    margin-right: 8px;
}

.single-club-reports .date-cat p span.date:before,
.single-club-reports .date-cat p span.cat:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 5px;
}

.single-club-reports .date-cat p span.date:before {
    content: '\f073';
}

.single-club-reports .date-cat p span.cat:before {
    content: '\f02b';
}

.single-club-reports .report-entry .content-inner h3 {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: .05em;
    color: #333;
    border-left: 3px solid #17478f !important;
    background: #f7f7f7;
    padding: 10px 0 10px 15px;
    margin-bottom: 20px;
}

.single-club-reports .report-entry .content-inner .event-period {
    font-size: 18px;
    font-weight: 600;
}

.single-club-reports .report-entry .content-inner .event-period span.date {
    background: #d5e1f4;
    color: #01599f;
    padding: 5px 15px;
    margin-right: 20px;
}

.single-club-reports .report-entry .content-inner .event-period span:nth-child(2) {
    margin: 0 20px;
}

.single-club-reports .report-entry .content-inner .up-image {
    text-align: center;
}

.single-club-reports .report-entry .content-inner .up-image img {
    width: 100%;
    max-width: 800px;
}

.single-club-reports .report-entry .free-space {
    margin-top: 80px;
    border-top: 1px solid #dbdbdb;
    padding: 0;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    gap: 20px;
}

.single-club-reports .report-entry .free-space figure {
    margin: initial !important;
    padding-top: 50px;
}

.single-club-reports .report-entry .free-space figcaption {
    text-align: center !important;
    width: 100%;
}

@media only screen and (max-width:639px) {
    .report #primary article .entry-content {
        margin: 0 auto;
    }

    .report .barbpack .entry-content {
        padding: 0 0 22px !important;
    }

    .report #main-content #primary>article>.entry-content {
        margin: 10px auto 50px auto !important;
    }

    .report header.entry-header:after {
        width: 100%;
        background-position-x: 230px;
        background-position-y: -40px;
    }

    .single-club-reports header.site-header {
        border-bottom: none;
    }

    .single-club-reports .entry-content h2 {
        font-size: 26px !important;
        margin-top: 85px !important;
        margin-bottom: 10px !important;
    }

    .single-club-reports header .header-content-wrap {
        background: none;
        padding-bottom: 10px;
        border-bottom: 1px solid #b8d8e8;
    }

    .single-club-reports .report-entry .content-inner .event-period span:nth-child(2) {
        display: block;
    }

    .single-club-reports .report-entry .free-space {
        justify-content: center;
    }
}


/*--------------------------------------------------------------
# お問合せ
--------------------------------------------------------------*/
.contact .notes_01 {
    display: inline-block;
    border: 1px solid #01599f;
    border-radius: 6px;
    padding: 10px 20px;
    font-size: 15px;
}

.contact .notes_01 p {
    margin-bottom: 0;
    text-indent: -1.6em;
    padding-left: 1.2em;
}

.contact .notes_01 p:before {
    color: #01599f;
    content: "※";
    margin-right: 8px;
}

.contact .induction-txt {
    font-size: 18px;
    font-weight: 600;
    text-align: center;
}

.contact .make-up-group {
    background: #fcf8f0;
    padding: 10px 15px;
    margin: 20px auto 0 auto;
}

.contact .make-up-group .row .column:last-child {
    background: #fff;
}

.contact .note_01,
.thanks .note_01 {
    background: #f3faff;
    padding: 25px;
}

.contact .note_01 ul,
.thanks .note_01 ul {
    margin: 0;
    padding: 0 0 0 18px;
}

.wpcf7 input,
.wpcf7 textarea {
    font-family: "Arial", "Helvetica Neue", Helvetica, Arial, "Yu Gothic Medium", "Ã¦Â¸Â¸Ã£â€šÂ´Ã£â€šÂ·Ã£Æ’Æ’Ã£â€šÂ¯ Medium", "Ã¦Â¸Â¸Ã£â€šÂ´Ã£â€šÂ·Ã£Æ’Æ’Ã£â€šÂ¯Ã¤Â½â€œ", "YuGothic", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Meiryo", "Ã£Æ’Â¡Ã£â€šÂ¤Ã£Æ’ÂªÃ£â€šÂª", "Ã¯Â¼Â­Ã¯Â¼Â³ Ã£â€šÂ´Ã£â€šÂ·Ã£Æ’Æ’Ã£â€šÂ¯", sans-serif;
    max-width: 100%;
}

.wpcf7 .row {
    display: flex;
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: #ccc;
}

.wpcf7 .row:last-child {
    border-width: 1px;
}

.wpcf7 .row .column {
    padding: 30px 20px;
    color: #333;
}

.wpcf7 .row .column label {
    font-weight: bold;
}

.wpcf7 .row .column:first-child {
    flex-basis: 30%;
    background-color: #f7f7f7;
}

.wpcf7 .row .column:last-child {
    flex-basis: 70%;
}

.wpcf7 .row .column .required:before,
.wpcf7 .row .column .optional:before {
    padding: 4px 8px;
    color: #fff;
    font-weight: normal;
    font-size: .7em;
    border-radius: 3px;
    margin-right: 10px;
}

.wpcf7 .row .column .optional:before {
    content: '任意';
    background-color: #474747;
}

.wpcf7 .row .column .required:before {
    content: '必須';
    background-color: #a71c19;
}

.wpcf7-form .wpcf7-submit {
    background: #003b87;
    display: block;
    margin: 20px auto;
    transition: background .5s;
}

.wpcf7-form .wpcf7-submit:hover {
    background: #1565c0;
}

.wpcf7 .acceptance-confirmation {
    margin: 40px 0;
    background: #f7f7f7;
    padding: 10px;
    text-align: center;
}

.wpcf7 .acceptance-confirmation .sttl {
    font-size: 20px;
    font-weight: bold;
}

.wpcf7-list-item {
    display: block;
}

/*----- サンクスページ -----*/
/*--- 背景色＋装飾（なし） --*/
.thanks-group-wrap {
    padding: 1px 0 70px;
}

@media screen and (max-width: 639px) {
    .contact .entry-content {
        padding: 0 15px;
    }

    .contact .induction-txt {
        font-size: 16px;
        padding-top: 20px;
        margin-bottom: 0;
    }

    .thanks-group-wrap {
        padding: 40px 15px 0;
    }

    .wpcf7 .row {
        flex-wrap: wrap;
    }

    .wpcf7 .row .column {
        max-width: 100%;
    }

    .wpcf7 .wpcf7-form .row .column {
        flex-basis: 100%;
        padding: 20px;
    }

    .wpcf7 .wpcf7-form .row .column p {
        margin: 0;
    }
}


/*--------------------------------------------------------------
# 過去の活動の概要一覧（2010〜2020年度）
--------------------------------------------------------------*/
/*--- 背景色＋装飾（なし） --*/
.past-group-wrap {
    padding: 1px 0 70px;
}

.past-group-wrap .past-content img {
    object-fit: cover;
    width: 500px;
    height: 372px;
    object-position: top;
}

.past-activity-overview .exp-text {
    width: 95%;
    font-size: 15px;
    font-weight: 600;
    margin: 0 auto 15px auto;
}

.past-activity-overview table {
    width: 95%;
    margin: 0 auto;
}

.past-activity-overview table tr td {
    padding: 15px;
    border-bottom: 1px solid #c1c1c1;
}

.past-activity-overview table tr td:nth-child(odd) {
    background: #edf7fa;
    color: #01599f;
    font-weight: 700;
    border-right: 1px solid #c1c1c1;
    white-space: nowrap;
    vertical-align: top;
}

.past-activity-overview table tr:last-child td {
    border-bottom: none;
}

@media only screen and (max-width:639px) {
    .past-group-wrap {
        padding: 0 15px 70px;
        margin-bottom: 50px;
    }

    .past-activity-overview table tr td {
        display: block;
        border-bottom: none;
    }

    .past-activity-overview table tr td:nth-child(odd) {
        border-right: none;
    }
}


/*--------------------------------------------------------------
# 活動報告一覧（※会員コンテンツ）
--------------------------------------------------------------*/
.post-type-archive-activity-reports .entry {
    overflow: hidden;
}

.post-type-archive-activity-reports .list-group {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px;
    text-align: center;
    margin: 0 0 50px;
}

.post-type-archive-activity-reports h3.archive {
    font-size: 34px;
    text-align: center;
    letter-spacing: .1em;
    color: #17478f;
    margin-bottom: 70px;
}

.post-type-archive-activity-reports h3.cat-title {
    font-size: 20px;
    color: #fff;
    letter-spacing: .1em;
    background: #16468d;
    padding: 5px 0 5px 20px;
    margin: 0 0 30px;
}

.post-type-archive-weekly-reports select,
.post-type-archive-activity-reports select {
    border: 1px solid #ccc;
    font-size: 14px;
    padding: 5px 8px;
}


.post-type-archive-weekly-reports select {
    margin-bottom: 30px;
}

.post-type-archive-activity-reports .entries ul {
    display: flex;
    flex-direction: column;
    font-size: 16px;
    font-weight: 500;
}

.post-type-archive-activity-reports .category {
    background: #edf7fa;
    padding: 10px;
    margin: 40px auto 70px auto;
}

.post-type-archive-activity-reports .category ul {
    max-width: 1050px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
    margin: 40px auto;
    padding: 0;
}

.post-type-archive-activity-reports main#primary ul,
.post-type-archive-activity-reports main#primary ul li,
.post-type-archive-activity-reports .category ul,
.post-type-archive-activity-reports .category ul li {
    list-style: none;
}

.post-type-archive-activity-reports main#primary ul li a,
.post-type-archive-activity-reports .category ul li a {
    color: #17478f !important;
}

.post-type-archive-activity-reports .category ul li a {
    text-decoration: none;
    font-size: 18px;
    font-weight: 600;
}

.post-type-archive-activity-reports .category ul li a:before {
    font-family: "Font Awesome 5 Free";
    content: '\f107';
    font-weight: 900;
    margin-right: 10px;
}

.post-type-archive-activity-reports main#primary a.btn_dw_01,
.post-type-archive-activity-reports main#primary a.btn_dw_02 {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: .05em;
    display: block;
    padding: 20px 30px;
    border-radius: 50px;
    text-decoration: none;
    margin-bottom: -30px;
}

.post-type-archive-activity-reports main#primary a.btn_dw_01 {
    background: #16468d;
    color: #fff;
}

.post-type-archive-activity-reports main#primary a.btn_dw_02 {
    background: #fff;
    border: 2px solid #16468d;
    color: #16468d;
    ;
}

.post-type-archive-activity-reports main#primary a.btn_dw_01:before {
    font-family: "Font Awesome 5 Free";
    content: '\f019';
    font-weight: 900;
    margin-right: 10px;
}

.post-type-archive-activity-reports main#primary a.btn_dw_02:before {
    font-family: "Font Awesome 5 Free";
    content: '\f019';
    font-weight: 900;
    margin-right: 10px;
}

.post-type-archive-activity-reports main#primary .archive-group {
    width: 29%;
    font-size: 18px;
    font-weight: 600;
    float: left;
    margin: 0 20px 40px 20px;
}

.post-type-archive-activity-reports main#primary .archive-txt {
    margin: 0;
}

.post-type-archive-activity-reports main#primary .select-group {
    display: flex;
    justify-content: space-between;
}

.single-activity-reports header.site-header {
    border-bottom: 1px solid #b8d8e8;
    padding-bottom: 15px;
}

.single-activity-reports .activity-entry h2 {
    font-size: 30px !important;
    text-align: left !important;
    padding-left: 0 !important;
    margin-top: 70px;
    letter-spacing: .1rem;
    margin-left: 10px;
}

.single-activity-reports .activity-entry .date-cat {
    display: flex;
    font-size: 15px;
    color: #666;
    border-top: 1px solid #d1d1d1;
    border-bottom: 1px solid #d1d1d1;
}

.single-activity-reports .activity-entry p:first-child {
    margin-right: 10px;
    padding-right: 15px;
    border-right: 1px solid #d1d1d1;
}

.single-activity-reports .activity-entry .date-cat p span {
    font-size: 14px;
    color: #16458b;
    padding: 4px 8px;
    margin-right: 8px;
}

.single-activity-reports .activity-entry .date-cat p {
    margin: 10px 0 12px;
}

.single-activity-reports .activity-entry .date-cat p:first-child {
    margin-right: 10px;
    padding-right: 15px;
    border-right: 1px solid #d1d1d1;
}

.single-activity-reports .activity-entry .date-cat p span {
    font-size: 14px;
    color: #16458b;
    padding: 4px 8px;
    margin-right: 8px;
}

.single-activity-reports .activity-entry .date-cat p span.date:before,
.single-activity-reports .activity-entry .date-cat p span.cat:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 5px;
}

.single-activity-reports .activity-entry .date-cat p span.date:before {
    content: '\f073';
}

.single-activity-reports .activity-entry .date-cat p span.cat:before {
    content: '\f02b';
}

.single-activity-reports .page_navi:first-of-type {
    display: none;
}

.single-activity-reports div.pdfemb-viewer {
    margin: 0 auto !important;
    overflow: hidden scroll;
    border: solid;
}

.single-activity-reports div.pdfemb-toolbar {
    height: 50px;
    padding: 10px 0 0 10px;
}

@media only screen and (max-width:900px) {
    .post-type-archive-activity-reports header.entry-header {
        padding-left: 30px !important;
    }

    .post-type-archive-activity-reports main#primary .select-group {
        padding: 0 15px;
    }

    .post-type-archive-activity-reports .category {
        max-width: 97%;
    }

    .post-type-archive-activity-reports .entries {
        padding: 0 15px;
    }

    .post-type-archive-activity-reports main#primary .archive-group {
        width: 28%;
        margin: 0 0 20px 30px;
        min-height: 90px;
    }
}

@media only screen and (max-width:639px) {
    .post-type-archive-activity-reports #main-content {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .post-type-archive-activity-reports header.entry-header {
        margin: 60px auto 40px auto;
        padding: 63px 0 70px 15px !important;
    }

    .post-type-archive-activity-reports .list-group {
        display: block;
        padding: 0 15px;
    }

    .post-type-archive-activity-reports main#primary a.btn_dw_01,
    .post-type-archive-activity-reports main#primary a.btn_dw_02 {
        padding: 20px 15px;
        font-size: 17px;
        margin-bottom: 0;
    }

    .post-type-archive-activity-reports .category {
        max-width: 95;
        padding: 10px 20px;
    }

    .post-type-archive-activity-reports .category ul {
        gap: 15px;
        margin: 10px auto;
    }

    .post-type-archive-activity-reports .entries {
        padding: initial;
    }

    .post-type-archive-activity-reports h3.cat-title {
        margin: 0 15px;
    }

    .post-type-archive-activity-reports .entry h3 {
        font-size: 18px;
        padding: 10px 0 10px 20px;
        margin: 25px 15px 15px;
    }

    .post-type-archive-activity-reports h3.archive {
        font-size: 26px;
    }

    .post-type-archive-activity-reports .entries ul {
        display: block;
        gap: 0;
        justify-content: left;
        padding: 0;
        margin: 0 0 0 20px;
    }

    .post-type-archive-activity-reports main#primary .archive-group {
        width: 90%;
        float: none;
        margin: 10px auto;
        min-height: initial;
    }

    .single-activity-reports header.site-header {
        border-bottom: none;
    }

    .single-activity-reports .activity-entry {
        padding: 0 15px;
    }

    .single-activity-reports .activity-entry h2 {
        font-size: 26px !important;
        margin-top: 85px !important;
        margin-bottom: 10px !important;
    }

    .single-activity-reports header .header-content-wrap {
        background: none;
        padding-bottom: 10px;
        border-bottom: 1px solid #b8d8e8;
    }

    .single-activity-reports .activity-entry .date-cat {
        display: block;
    }

    .single-activity-reports .activity-entry .date-cat p:first-child {
        margin-right: 0;
        padding-right: 0;
        padding-bottom: 10px;
        border-right: none;
        border-bottom: 1px dashed #d1d1d1;
    }

    .single-activity-reports .activity-entry .date-cat p {
        margin: 5px 0 8px;
    }

    .single-activity-reports .activity-entry .date-cat p span {
        /*display: block;*/
    }

    .post-type-archive-weekly-reports .select-group {
        margin: 0 15px;
    }
}

/*--------------------------------------------------------------
# 週報一覧（※会員コンテンツ）
--------------------------------------------------------------*/

.post-type-archive-weekly-reports .weekly-reports-list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: left;
    gap: 40px;
    padding: 0 20px;
}

.post-type-archive-weekly-reports h3 {
    font-size: 30px;
    letter-spacing: .1em;
    color: #17478f;
    background: #f7f7f7;
    padding: 10px 20px;
    margin-bottom: 30px;
    border-top: 2px solid;
}

.post-type-archive-weekly-reports .archive-group {
    color: #333;
    width: 29%;
}

.post-type-archive-weekly-reports .archive-group .no-entry {
    font-size: 18px;
    font-weight: 600;
    float: left;
    width: 100%;
}

.post-type-archive-weekly-reports .archive-group ul {
    margin: 0;
    padding: 0;
    list-style: none;
    line-height: 2.0;
}

.post-type-archive-weekly-reports .archive-group ul li:after {
    font-family: "Font Awesome 5 Free";
    content: '\f1c1';
    font-weight: 900;
    margin-left: 5px;
    color: #d64343;
}

.post-type-archive-weekly-reports .archive-group p.archive-txt {
    font-size: 20px;
    font-weight: 600;
    margin: 0;
}

@media screen and (min-width: 640px) {
    .post-type-archive-weekly-reports .entries {
        display: flex;
        align-items: baseline;
        justify-content: end;
        max-width: 900px;
        flex-wrap: wrap;
        margin: 0 auto;
        gap: 40px;
    }
}

@media screen and (max-width: 639px) {
    .post-type-archive-weekly-reports #main-content {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .post-type-archive-weekly-reports header.entry-header {
        margin: 60px auto 40px auto;
        padding: 63px 0 70px 15px !important;
    }

    .post-type-archive-weekly-reports .entry h3 {
        font-size: 18px;
        padding: 10px 0 10px 20px;
        margin: 25px 0 15px;
    }

    .post-type-archive-weekly-reports h3.archive {
        font-size: 26px;
    }

    .post-type-archive-weekly-reports h3 {
        margin: 0 15px 20px;
    }

    .post-type-archive-weekly-reports .weekly-reports-list {
        gap: 10px;
    }

    .post-type-archive-weekly-reports .archive-group {
        width: 100%;
    }
}


/*--------------------------------------------------------------
# 会員専用
--------------------------------------------------------------*/
.members-only .bnr-group {
    margin: 40px 30px;
}

@media only screen and (min-width: 901px) {
    .members-only .bnr-group figure img {
        max-width: 450px;
        margin-right: 0;
    }
}

@media only screen and (min-width: 640px) {
    .members-only #main-content .bnr-group {
        flex-wrap: nowrap !important;
    }
}

/*--------------------------------------------
ModalWindow
---------------------------------------------*/
header .login-group {
    display: flex;
    justify-content: flex-end;
}

footer .login-group {
    display: flex;
    justify-content: flex-start;
}

.login-group .fa-lock:before {
    margin-right: 10px;
}

/*====================================
ログイン/ログアウト
====================================*/
.login_area .login {
    background: #f1f1f1;
    padding: 1.5em;
    width: 90%;
    margin: 1.0em auto;
}

.login_area .login #wpmem_login {
    width: 100%;
}

.login_area .login table td {
    color: #00458a;
    padding-bottom: 18px;
    text-align: left;
    font-weight: bold;
    padding-right: 22px;
}

.login_area .login input {
    padding: 0.5em;
    margin: 0.25em;
    border: 1px solid #8f8f8f;
}

.login_area .login .btn {
    width: 220px;
    height: 50px;
    background-color: #00468c;
    color: #FFF;
    border-radius: 5px;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
}

.logout {
    margin-bottom: 15px;
}

.logout .btn {
    width: 220px;
    height: 50px;
    background-color: #8b0000;
    color: #FFF;
    border-radius: 30px;
    text-align: center;
    font-weight: 600;
    border: none;
    text-decoration: none;
    padding: 10px 40px;
}

.logout .btn:before {
    font-family: "Font Awesome 5 Free";
    content: '\f2f5';
    font-weight: 900;
    margin-right: 10px;
}

/*---- ログイン前のログアウトボタン非表示 --*/
#modal .barb_side_widget {
    margin-bottom: 0;
}

#modal .pc {
    margin-bottom: 15px;
}

@media only screen and (max-width:640px) {
    #modal .logout {
        display: none;
    }

    #modal .barb_side_widget .textwidget {
        padding: 0;
    }
}

/*---- パスワード再設定 ----*/
/*---- ユーザー登録 ----*/
.reset-password header.entry-header,
.register-user header.entry-header {
    font-size: 30px !important;
    text-align: center !important;
    padding: 40px 0 !important;
    margin: 0 0 50px calc(50% - 50vw - (var(--barb-cs-scrollbar_width)/2)) !important;
    font-weight: 600;
    min-height: initial !important;
}

.reset-password header.site-header,
.register-user header.site-header {
    border-bottom: 1px solid #b8d8e8;
    padding-bottom: 15px;
}

#wpmem_pwdchange_form fieldset {
    border: 1px solid silver;
    margin: 0 auto 70px auto;
    padding: 5.5em 2em 2.5em;
    border-radius: 6px;
    max-width: 800px;
    text-align: center;
    position: relative;
}

#wpmem_pwdchange_form legend {
    border: 0;
    position: absolute;
    top: 0;
    left: 0;
    margin: 0 auto;
    background: #edf7fa;
    width: 100%;
    font-size: 18px;
    padding: 0.75em 0 !important;
    font-weight: 600;
    border-radius: 6px 6px 0 0;
}

#wpmem_pwdchange_form fieldset .div_text {
    margin: 15px 0 35px;
}

#wpmem_pwdchange_form fieldset .div_text:first-child {
    border-bottom: 1px dashed #dbdbdb;
}

#wpmem_pwdchange_form .div_text input {
    width: 50%;
}

#wpmem_pwdchange_form input[type=submit] {
    border: 1px solid;
    border-color: #164388;
    border-radius: 40px;
    background: #164388;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.7;
    padding: 0.5em 2em;
}

#wpmem_register_form fieldset {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 350px;
    margin: 0 auto;
    row-gap: 10px;
}

#wpmem_register_form fieldset>* {
    display: block;
}

#wpmem_register_form fieldset>label {
    width: 110px;
    text-align: left;
}

#wpmem_register_form fieldset>div {
    width: 200px;
}

#wpmem_register_form fieldset>.div_text:first-of-type {
    display: none;
}

#wpmem_register_form .button_div,
#wpmem_register_form .req-text {
    width: 100%;
}

#wpmem_register_form .password-note {
    width: 100%;
    text-align: left;
    font-size: .9em;
    line-height: 1.3;
}

#wpmem_register_form .password-note ul {
    padding: 10px 10px 10px 35px;
    border: 1px solid silver;
    border-radius: 5px
}

#wpmem_register_form .password-note ul li {
    list-style: disc;
}

.register-user .entry-content {
    text-align: center;
}

.register_status {
    display: inline-block;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
}

.register_status:before {
    font-family: "Font Awesome 5 Free";
    content: '\f2bd';
    font-weight: 900;
    color: #17478F;
    margin-right: 10px;
}

ul.register_links {
    background: #f3fcfe;
    padding: 40px 40px 20px;
    list-style: none;
    width: 50%;
    margin: 0 auto;
    border-radius: 15px;
    border: 1px solid #9dc7cf;
}

ul.register_links li {
    max-width: 300px;
    font-weight: 600;
    text-align: left;
    margin: 15px auto;
    padding-bottom: 10px;
}

ul.register_links li a {
    text-decoration: none;
    display: block;
    line-height: 2.5;
    padding: 12px 30px;
    border-radius: 30px;
    margin: 0 auto;
    text-align: center;
}

ul.register_links li:first-child a {
    background: #8b0100;
    color: #fff;
}

ul.register_links li:first-child a:before {
    font-family: "Font Awesome 5 Free";
    content: '\f2f5';
    font-weight: 900;
    margin-right: 10px;
}

ul.register_links li:last-child a {
    background: #fff;
    border: 1px solid #17478f;
    color: #17478f;
}

ul.register_links li:last-child a:before {
    font-family: "Font Awesome 5 Free";
    content: '\f47f';
    font-weight: 900;
    margin-right: 10px;
}

#ors-password-meter.weak {
    background: #c02716;
}

#ors-password-meter {
    display: block;
    padding: 0.5em 1.5em;
    font-weight: 600;
    letter-spacing: .5em;
    border-radius: 0;
}

#wpmem_pwdchange_form #ors-password-meter {
    width: 367px;
}

/*--------------------------------------------------------------
# サイトマップ
--------------------------------------------------------------*/
.sitemap-list_01 a {
    display: block;
    padding: 20px;
    position: relative;
    border-bottom: 1px solid #d1d1d1;
    text-decoration: none;
    font-size: 20px;
    font-weight: bold;
    color: #17478F;
}

.sitemap-list_01 a:before {
    font-family: "Font Awesome 5 Free";
    content: '\f138';
    font-weight: 900;
    margin-right: 15px;
}

.sitemap .sub-list_01,
.sitemap .sub-list_01 li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sitemap .sub-list_01 li {
    font-size: 18px;
    font-weight: 500;
    padding-left: 50px;
}

.sitemap .sub-list_01 li a {
    color: #17478F;
    text-decoration: none;
}

.sitemap .sub-list_01 li a:before {
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-weight: 900;
    margin-right: 15px;
}


/*--------------------------------------------------------------
# 投稿一覧・詳細
--------------------------------------------------------------*/
.single-post header.entry-header h2.entry-title {
    font-size: 30px !important;
    text-align: left !important;
    padding-left: 0 !important;
    margin-top: 70px;
    margin-bottom: 0;
    font-weight: 700;
    line-height: 1.7;
}

.single-post header.site-header {
    border-bottom: 1px solid #b8d8e8;
    padding-bottom: 15px;
}

.single-post .entry-meta {
    font-size: 100%;
}

.single-post .entry-meta .posted-on:before,
.category-info .entry-meta .posted-on:before {
    color: #17478f;
    margin-right: 10px;
}

.single .entry-content figure {
    margin: 30px auto;
}

.single .entry-content h2.wp-block-heading {
    font-size: 26px !important;
    text-align: left !important;
    background: #f7f7f7 !important;
    margin-bottom: 20px;
    padding: 10px 20px;
}

.single .entry-content h3.wp-block-heading {
    font-size: 22px !important;
    margin-top: 30px !important;
    padding-left: 0 !important;
    padding-bottom: 15px !important;
    border-bottom: 1px solid #c1d1e8;
}

.single .entry-content h4.wp-block-heading {
    font-size: 20px;
    color: #333 !important;
    margin-top: 30px !important;
    margin-bottom: 15px;
    border-left: 4px solid #01599f;
    padding-left: 20px;
}

.category-info header {
    padding-bottom: 10px;
    border-bottom: 1px solid #b8d8e8;
    margin-bottom: 30px;
}

.category-info h2.page-title {
    margin: 70px !important;
}

.category-info h3.entry-title a {
    text-decoration: none;
    font-size: 18px;
}

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

    .category-info header,
    .single-post header.site-header {
        border-bottom: none;
    }

    .single-post header .header-content-wrap,
    .category-info header .header-content-wrap {
        border-bottom: 1px solid #b8d8e8;
    }

    .category-info h2.page-title {
        margin: 90px 0 50px 0 !important;
    }

    .category-info article {
        padding: 0;
    }

    .single-post .entry-content {
        padding: 0 15px;
    }
}

/*--------------------------------------------------------------
# 過去の活動の概要一覧
--------------------------------------------------------------*/
@media only screen and (min-width:640px) {
    .past-activity-list .entry-content .wp-block-columns {
        flex-wrap: nowrap !important;
    }
}



/*--------------------------------------------------------------
# Related Post
--------------------------------------------------------------*/
#main-content #related_post h3 {
    margin-top: 0;
    border-bottom: 0;
}

/*--------------------------------------------------------------
# Sample Page A
--------------------------------------------------------------*/
figure.img-title {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column-reverse;
}

/*お知らせ*/
.single .entry-content .info-detail-table {
    margin-bottom: 0;
}
.info-detail-table table,
.info-detail-table table tr,
.info-detail-table table td {
    border: none;
    margin-bottom: 0;
}
.info-detail-table table td {
    vertical-align: top;
    padding: 0 0 1rem;
    padding-left: 1em;
    text-indent: -1em;
}
.info-detail-table table td:first-child {
    white-space: nowrap;
    text-align:justify;
    text-align-last:justify;
}
#page .entry-content .center-img figure {
    margin-bottom: 0;
}
.center-img img {
    width: 100%;
    max-width: 600px;

}
@media only screen and (max-width:639px) {
    .info-columns {
        gap: 0;
    }
}