@charset "UTF-8";

#page_header {
    padding-top: 60px;
}
.page-title {
    /* padding: 10% 1rem; */
    padding: 1rem;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 77%;
}
.title-box h1 {
    color: #fff;
    margin: 0;
    font-size: 25px;
}
.title-box h1 span {
    font-size: 16px;
    display: block;
    line-height: 1.8;
    font-family: 游明朝;
    font-weight: normal;
}
.bread {
    margin-top: 10px;
}
.bread span {
    padding: 0 3px;
}
.bread span a {
    text-decoration: none;
    color: #000;
}
#page-content {
    padding: 2rem 0 4rem;
}
#page-content h2 {
    text-align: left;
    margin-bottom: 1rem;
}
#page-content h2.ttl,.page-id-263 #page-content h2{
    border-bottom: 3px solid #6666cc;
    padding-bottom: 5px;
}
#page-content h2:not(:first-child) {
    margin-top: 3rem;
}
.page #page-content h3 {
    font-weight: bold;
    margin-top: 2rem;
    font-size: 20px;
}
@media screen and (min-width:760px) {
    .page-title {
        background-size: cover;
        padding: 2rem 0;
    }
    .title-box h1 {
        font-size: 30px;
    }
    .title-box h1 span {
        font-size: 18px;
    }
}
@media screen and (min-width:1200px) {
#page_header {
    padding-top: 70px;
}
.page-title {
    padding: 5% 0
}
.title-box h1 {
    font-size: 50px;
}
.title-box h1 span {
    font-size: 25px;
}
#page-content h2 {
    font-size: 24px;
}
/* #page-content h2.ttl,.page-id-263 #page-content h2{
    font-size: 30px;
} */
#page-content {
    padding: 4rem 0 6rem;
}
#page-content .contents li {
    /* line-height: 1.8; */
    margin-bottom: 5px;
}
.page #page-content h3 {
    /* font-size: 24px; */
    margin-top: 3rem;
}
.page-id-158 #page-content h2:not(:first-child) {
    margin-top: 5rem;
}
.page-id-158 td.pl {
    padding-left: 18% !important;
}
}
@media screen and (min-width:1400px) {
    /* .title-box h1 {
        font-size: 60px;
    }
    .title-box h1 span {
        font-size: 35px;
    } */
    .page-title {
        background-size: cover;
        padding: 3rem 0;
    }
    #page-content{
        padding: 4rem 0 8rem;
    }
    .single-news p.tag {
        font-size: 15px !important;
        width: 160px;
        margin-left: 1rem !important;
        padding: 3px 0;
    }
    .page-id-46 .page-title {
        background-position: 0 -3rem;
    }
}
@media screen and (min-width:1600px) {
    /* .title-box h1 {
        font-size: 77px;
    }
    .title-box h1 span {
        font-size: 40px;
    } */
    /* .page-title {
        padding: 5.8% 0;
    } */
    body:not(.home) .container{
        max-width: 1400px;
    }
}
/* table */
.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr th,
.wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr td {
    border-color: #999999;
    vertical-align: top;
    background-color: transparent;
}
th {
     background-color: #f2f2f2 !important;
}
@media screen and (min-width:1200px) {
    .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr th,
    .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr td {
        padding: 1rem;
    }
    td.pl {
        padding-left: 4.5% !important;
    }
}

/* dl */
dt {
    font-weight: 500;
}
@media screen and (min-width:760px) {
    .dl-flex {
        flex-wrap: wrap;
    }
    .dl-flex dt {
        width: 15%;
    }
    .dl-flex dd {
        width: 85%;
    }
}
@media screen and (min-width:1200px) {
    .dl-flex dt {
        width: 10%;
    }
    .dl-flex dd {
        width: 90%;
    }
}

/* contact */
#contact-form {
    padding: 2rem 0;
}
.form-group.row {
    margin-bottom: 1rem;
    margin-right: 0;
    padding-bottom: 1rem;
    margin-left: 0;
}
.sub-group div.col-sm-8 {
    margin-bottom: 10px;
}
span.caution {
    font-size: 12px;
    color: #cc0000;
    padding: 1px;
    vertical-align: middle;
}
/* span.wpcf7-form-control.wpcf7-acceptance {
    display: block;
    text-align: center;
} */
input.submit-btn, .reset-btn input {
    display: block;
    margin-top: 2rem;
    background: #fff;
    color: #000;
    padding: 20px 0;
    width: 300px;
    margin: 2rem auto 0;
    font-size: 18px;
    border: 1px solid #ddd;
}
input.submit-btn {
    background: #6666cc;
    border: 1px solid #6666cc;
    color: #fff;
}
.wpcf7 .wpcf7-submit:disabled {
    opacity: 0.7;
}

span.wpcf7-spinner {
    visibility: hidden;
    width: 0;
    margin: 0;
}
.ml-auto{
    margin-left: auto;
}
.accept input {
    vertical-align: middle;
    width: 25px;
    height: 25px;
}
/* .page-id-88 #contact .container,
.page-id-158 #contact .container{
    display: none;
}
.page-id-88 #contact,
.page-id-158 #contact{
    padding: 2rem 0;
} */
@media screen and (min-width:1200px) {
    #contact-form {
        max-width: 930px;
        margin: 0 auto;
        padding: 4rem 0;
        font-size: 18px;
    }
    input.submit-btn, .reset-btn input {
        margin: 2rem 0 0;
        width: 330px;
    }
    .submit-area {
        max-width: 760px;
        margin: 0 auto;
    }
    .accept input {
        width: 40px;
        height: 40px;
    }

}
.pnavi {
    text-align: center;
    margin: 3rem 0 0;
}
span.pages {
    display: none;
}
.wp-pagenavi a, .wp-pagenavi span {
    background: #ebebfc;
    border: none;
    padding: 5px 10px;
    font-weight: bold;
    color: #6666cc;
    font-size: 18px;
  }
/* single */
.Single-news {
    background: #fff;
    padding: 1rem;
    margin-bottom: 2rem;
}
.Single-news h2.pagetitle {
    font-weight: bold;
    font-size: 22px;
    text-align: center;
}
.single p.date{
    width: fit-content;
}
.single .d-flex.align-items-center a{
    text-decoration: none;
}
.post_thumbnail {
    margin-bottom: 2rem;
}
.entry-pager {
    display: flex;
    justify-content: space-around;
    margin-top: 2rem;
}
.back a, .next a {
    display: block;
    text-decoration: none;
    color: #000!important;
    border: 1px solid #6666cc;
    padding: 10px;
    width: 130px;
    text-align: center;
}
@media screen and (min-width:760px) {
    .Single-news {
        padding: 3rem 2rem 2rem;
    }
}
@media screen and (min-width:1200px) {
    .Single-news h2.pagetitle {
        font-size: 30px;
    }
}

.c-box {
    border: 10px solid #ebebfc;
    padding: 2rem 1rem;
    margin-top: 3rem;
}
.c-box p {
    font-size: 20px;
}
.c-box .link-btn {
    width: 270px;
}

@media screen and (min-width:1200px) {
    .c-box {
        border: 15px solid #ebebfc;
        padding: 4rem 5rem;
        margin-top: 5rem;
    }
    .c-box p {
        font-size: 24px;
    }
    .c-box .link-btn {
        width: 450px;
        padding: 1.5rem;
    }
}
@media screen and (min-width:1600px) {
    .c-box {
        /* border: 20px solid #ebebfc; */
        padding: 4rem 9rem;
        /* margin-top: 7rem; */
    }
    /* .c-box p {
        font-size: 26px;
    } */
}

/* member */

ul.gyo-index {
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}

ul.gyo-index li {
    list-style-type: none;
    padding: 0 18px;
    border-left: 1px solid #ddd;
    margin-bottom: 10px;
}
.m-scroll {
    overflow: scroll;
}
.m-scroll table {
    min-width: 900px;
    font-size: 15px;
}
.m-scroll table th,.m-scroll table td {
    padding: 10px;
    border: 1px solid #999;
}
.m-scroll table th {
    font-weight: 500;
    text-align: center;
}
.m-scroll table tr td:nth-of-type(1),.m-scroll table tr td:nth-of-type(6) {
    text-align: center;
}
.member-list h3 {
    margin-top: 1rem;
}
@media screen and (min-width:760px) {
    ul.gyo-index li:last-child {
        border-right: 1px solid #ddd;
    }
    .post-type-archive-member h3 {
        font-size: 22px;
        margin-top: 2rem;
    }
    .m-scroll {
        overflow: visible;
    }
    .m-scroll table {
        min-width: 100%;
    }
    .m-scroll table th, .m-scroll table td {
        padding: 15px;
    }
    .m-scroll table th:nth-of-type(1) {
        width: 5%;
    }
    .m-scroll table th:nth-of-type(2) {
        width: 35%;
    }
    .m-scroll table th:nth-of-type(3) {
        width: 10%;
    }
    .m-scroll table th:nth-of-type(4) {
        width: 13%;
    }
    .m-scroll table th:nth-of-type(5) {
        width: 25%;
    }
    .m-scroll table th:nth-of-type(6) {
        width: 15%;
    }
    .member-list h3 {
        margin-top: 2rem;
    }
}
@media screen and (min-width:1200px) {
    .m-scroll table {
        font-size: 16px;
    }
    ul.gyo-index li {
        padding: 0 25px;
    }
    /* .page-id-240 h3 {
        font-size: 24px !important;
    } */
}
h2.mt.ttl {
    margin-top: 5rem !important;
}
#page-content h2.ttl2 {
    border-left: 7px solid #6666cc;
    padding-left: 10px;
    margin: 2rem 0 1rem;
}
:where(.wp-block-columns.is-layout-flex) {
    gap: 1em;
}

.tab-list-item a{
    color: #6666cc;
    text-decoration: none;
}
.tab-list-item.active a {
    color: #fff;
}
.archive .tab-list-item{
    padding: 0!important;
}
.archive .tab-list-item a {
    padding: 10px 0;
    display: block;
}
.anchor-link {
    display: flex;
    margin-bottom: 2rem;
}
.anchor-link a {
    display: block;
    padding: 10px;
    margin-right: 2rem;
    color: #000;
    text-decoration: none;
    font-size: 20px;
    font-weight: bold;
    position: relative;
    padding-left: 1.5rem;
}
.anchor-link a::before {
    content: "";
    border-bottom: 3px solid #6666cc;
    border-left: 3px solid #6666cc;
    display: block;
    width: 12px;
    height: 12px;
    position: absolute;
    top: 15px;
    transform: rotate(-45deg);
    left: 3px;
}
@media screen and (min-width:1200px) {
    .archive .tab-list-item a {
        padding: 15px 0;
    }
    /* .anchor-link a {
        font-size: 24px;
    }
    .anchor-link a::before {
        top: 19px;
    } */
    #page-content h2.ttl2{
        font-size: 22px;
    }
    .page-id-240 h3 {
        font-size: 20px !important;
    }
}



h2 {
    font-size: 22px;
}

@media screen and (min-width: 1200px) {
    h2 {
        font-size: 24px;
    }
    #overview .container-fluid img {
        height: 300px;
    }
    #overview .col-sm-6.overviews {
        padding: 2.5rem 5rem;
    }
    #overview .col-sm-6.overviews p {
        font-size: 18px;
    }
    #member {
        padding: 4.5rem 0;
        height: 300px;
    }
    a.info-link {
        width: 400px;
        padding: 18px;
        font-size: 20px;
        margin-bottom: 2rem;
    }
    #contact .row p.mail {
        font-size: 18px;
    }
    #contact .row p.mail::before {
        width: 40px;
        height: 25px;
    }
    .title-box h1 {
        font-size: 36px;
    }
    .title-box h1 span {
        font-size: 22px;
    }
    .page-title {
        padding: 3% 0;
    }
}
@media screen and (min-width:1400px) {
    .title-box h1 {
        font-size: 40px;
    }
    h2 {
        font-size: 28px;
    }
    #overview .container-fluid img {
        height: 350px;
    }
}
@media screen and (min-width: 1600px) {
    #overview .container-fluid img {
        height: 440px;
        object-position: 0 -70px;
    }
    #overview .col-sm-6.overviews {
        padding: 5rem;
    }
    #member {
        padding: 6rem 0;
        height: 400px;
    }
}