@charset "utf-8";

/**********************************************/
/**/
/**********************************************/

/*リード文*/
.read {
    margin-bottom: 30px;
}

/*更新日*/
.update {
    text-align: right;
    margin-bottom: 10px;
}

/*※*/
.notes {
    margin-top: 20px;
    margin-bottom: 20px;
    font-size: 90%;
}


/*-------------------------------*/
/*ご挨拶*/
/*-------------------------------*/
#greeting {
    background: url("../img/sub-ttl01.png") no-repeat right top;
}
.sign {
    text-align: right;
    font-size: 1.8rem;
    font-weight: bold;
}
#greeting P {
    text-indent: 1em;
}

.photo {
    width: 100%;
    max-width: 250px;
    float: right;
    margin: 0 0 30px 40px;
}
.photo img {
    width: 100%;
    display: block;
}
.photo figcaption {
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
    margin-top: 10px;
}


/*-------------------------------*/
/*組織図*/
/*-------------------------------*/
.chartbox {}
.chartbox figure {
    margin: 0;
}

/*★*/
.scrollBox {
    padding: 20px;
    overflow: auto;
    border: 1px #ddd solid;
}
/* .chart2 {
    width: 100%;
    min-width: 800px;
} */
.chart {
    width: 100%;

    /* min-width: 850px;
    max-width: 850px; */
    display: flex;
    /* flex-wrap: wrap; */
    align-items: flex-start;
    overflow: auto;
}

.chart div {
    flex-shrink: 0;
}
.chart ul {
    
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.chart li {
    /* min-width: 120px; */
    height: 40px;
    background-color: #fff;
    margin: 10px 0;
}
.chart li span {
    display: flex;
    align-items: center;
    text-align: center;
    padding: 5px 10px;
    border: 1px #999 solid;
    display: block;
    background-color: #fff;
}

.chart1 {
    width: 150px;
    padding-right: 30px;
    background:url("../img/back_line.png") no-repeat right center;
}
.chart2 {
    width: 150px;
    padding-right: 30px;
    background:url("../img/back_line.png") no-repeat right center;
}
.chart2 li {
    text-align: center;
}

.chart3 {
    width: 120px;
}
.chart3 li.chart3-1 {
    background:url("../img/back_line2.png") no-repeat left 50px center;
}
.chart4 {
    width: 370px;
}
.chart4 li.chart4-1 {
    background:url("../img/back_line.png") no-repeat left center;
}
.chart4 li.chart4-2 {
    background:url("../img/back_line.png") no-repeat left center;
}

.chart3 {}

.chart4 {
    background:url("../img/back_line3.png") no-repeat left 30px bottom 30px;
}
.chart4 li span {
    text-align: left;    
}
.chart4 li {
    padding-left: 60px;
    background:url("../img/back_line.png") repeat-y left 30px center;
}


/*-------------------------------*/
/*役員*/
/*-------------------------------*/
.tbl-officer {
    width: 100%;
    border: 1px #ddd solid;
    margin-bottom: 10px;
}
.tbl-officer caption {
    text-align: center;
    margin-bottom: 10px;
    font-size: 110%;
    font-weight: bold;
}
.tbl-officer th {
    width: 100px;
    padding: 7px 10px;
    border-right: 1px #ddd solid;
    border-bottom: 1px #ddd solid;
    vertical-align: top;
}
.tbl-officer td {
    padding: 7px 10px 7px 20px;
    border-bottom: 1px #ddd solid;
}
.tbl-officer td.name {
    width: 140px;
}




/*-------------------------------*/
/*情報公開*/
/*-------------------------------*/
.list-doc ul {
    display: flex;
    flex-wrap: wrap;
}
.list-doc li {
    width: calc(100% / 3);
    margin-top: 5px;
    margin-bottom: 5px;
}


/*-------------------------------*/
/*事務局*/
/*-------------------------------*/
.contact {
    padding-left: 20px;
}
.tbl-address {
    margin-bottom: 40px;
}
.tbl-address th {
    width: 100px;
    text-align: left;
    vertical-align: top;
    padding: 5px 10px;
    /*
    border-bottom: 1px #ddd solid;
    padding: 10px;
    */
}
.tbl-address td {
    padding: 5px 10px;
    /*
    border-bottom: 1px #ddd solid;
    padding: 10px;
    */
}


address {
    font-style: normal;
    font-size: 1.8rem;
    margin-bottom: 40px;
}

.tbl-contact {
    width: 100%;
    border: 1px #ddd solid;
    margin-bottom: 10px;
}
.tbl-contact th {
    padding: 5px 10px;
    border: 1px #ddd solid;
    line-height: 140%;
    background-color: #f5f5f5;
}
.tbl-contact td {
    padding: 10px 15px;
    border: 1px #ddd solid;
    line-height: 140%;
}

.tbl-contact th:nth-child(2) {
    width: 350px;
}



/****************************/
/*レスポンシブ*/
/****************************/
@media screen and (max-width: 1280px) {
}

@media screen and (max-width: 980px) {
    .photo {
        max-width: 200px;
        margin: 0 0 30px 30px;
    }
    .photo figcaption {
        font-size: 1.6rem;
    }

    .list-doc li {
        width: calc(100% / 2);
    }
    
}

@media screen and (max-width: 780px) {
    .photo {
        max-width: 250px;
        float: right;
        margin: 0 0 30px 40px;
    }
    .update {
        text-align: left;
    }
}

@media screen and (max-width: 580px) {
    .photo {
        max-width: 250px;
        float: none;
        margin: 40px auto 20px;
    }
    .list-doc ul {
        margin-left: 30px;
        padding-left: 0;
    }
    .list-doc li {
        width: 100%;
    }
    .tbl-officer th {
        display: block;
        width: 100%;
        text-align: left;
        padding: 5px 10px;
        border-width: 0px;
        border-bottom: 1px #ddd solid;
        background-color: #f5f5f5;
    }
    .tbl-officer td {
        display: block;
        padding: 0 10px;
        border-width: 0px;
        line-height: 140%;
    }
    .tbl-officer td.name {
        padding-top: 10px;
    }
    .tbl-officer td.affiliation {
        border-bottom: 1px #ddd dotted;
        padding-left: 20px;
        padding-bottom: 5px;
        font-size: 90%;
    }
    .tbl-officer td.affiliation::before {
        content: "（";
    }
    .tbl-officer td.affiliation::after {
        content: "）";
    }
}

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


