@charset "UTF-8";
/* CSS Document */
/* message
-----------------------------------------------*/
.message .main {
  border-radius: 10px;
  overflow: hidden;
  height: 415px;
  background: url("../img/about/message/img-main-01.jpg")no-repeat;
  padding: 50px 70px;
  position: relative;
  background-size: cover;
  background-position: right;
}
.message .main h2, .message .main h3 {
  font-size: 24px;
  line-height: 1.5;
  color: #333;
  background-color: unset;
  border: none;
  margin: 0;
  padding: 0;
}
.message .main h2::before {
  display: none;
}
.message .main h3 {
  position: absolute;
  bottom: 50px;
  left: 70px;
}
.message .detail p {
  margin-top: 40px;
}
@media only screen and (max-width:767px) {
  .message .main {
    height: auto;
    min-height: 270px;
    background: url("../img/about/message/img-main-01-sp.jpg")no-repeat;
    padding: 20px;
    background-position: bottom right;
    background-size: cover;
  }
  .message .main h2, .message .main h3 {
    font-size: 18px;
  }
  .message .main p {
    font-size: 14px;
    margin-top: 5px;
    padding-right: 80px;
  }
  .message .main p br {
    display: none;
  }
  .message .main h3 {
    position: static;
    margin-top: 40px;
  }
  .message .detail p {
    margin-top: 20px;
    font-size: 14px;
  }
}
/* message-old
-----------------------------------------------*/
.message-old p + h2{
  margin-top: 40px!important;
}
.message-old p + h4 {
  margin-top: 60px;
}
.message-old h5 {
  font-size: 16px;
  font-weight: normal;
  padding: 10px 0;
}
@media only screen and (max-width:767px) {}
/* teikan
-----------------------------------------------*/
#content.teikan {
  width: 100%;
}
.teikan h2 {
  margin-bottom: 60px;
}
.teikan a.pdf::after {
  right: -6px;
}
@media only screen and (max-width:767px) {
  .teikan h2 {
    margin-bottom: 20px;
  }
}

/* membership
-----------------------------------------------*/
#membership h5 {
  color: #0978B7;
  font-size: 20px;
  font-weight: bold;
  position: relative;
  padding-left: 10px;
  margin: 20px 0;
}
#membership h5::before {
  content: "";
  background-color: #0978B7;
  height: 30px;
  width: 4px;
  position: absolute;
  left: 0;
  bottom: 0;
}

@media only screen and (max-width:767px) {
  #membership h5 {
    font-size: 18px;
  }
  
}
/* membership
-----------------------------------------------*/
#price h5 {
  font-size: 16px;
  font-weight: normal;
}
#price h5 + p {
  padding-left: 1em;
}
/* organization
-----------------------------------------------*/
#member-list table {
  margin-top: 0;
}
#member-list .riji table {
  width: 100%;
  table-layout: fixed;
}
#member-list .col2 {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}
#member-list .col2 table {
  width: 50%;
}
#member-list .riji tr th:first-child, #member-list .riji tr td:first-child {
  width: 15%;
}
#member-list .riji tr th:nth-child(2), #member-list .riji tr td:nth-child(2) {}
#member-list tr td.table-note {
  width: 300px;
  background-color: #fff;
  text-align: right;
  padding: 0;
}
#member-list td, #member-list th {}
#committee .col2 {
  display: flex;
  flex-wrap: wrap;
}
#committee .col2 li {
  width: 46%;
}
#committee .col2 li:nth-child(2n) {
  width: 54%;
}
#committee li .pdf {
  color: #0978B7;
}
@media only screen and (max-width:767px) {
  #member-list .col2 {
    flex-direction: column;
    gap: 20px;
  }
  #member-list .col2 table {
    width: 100%;
  }
  #committee .col2 {
    flex-direction: column;
  }
  #committee .col2 li {
    width: 100%;
  }
  #committee .col2 li:nth-child(2n) {
    width: 100%;
  }
}
/* budget
-----------------------------------------------*/
.budget ul {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  gap: 30px 40px;
}
.budget ul li a.pdf {
  color: #0978B7 !important;
}
.budget .get-reader {
  margin-top: 60px !important;
}
@media only screen and (max-width:767px) {
  .budget ul {
    gap: 20px 20px;
  }
}
/* district
-----------------------------------------------*/
ul.district {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 20px;
}
ul.district li {
  width: calc(50% - 10px);
  padding-right: 20px;
}
#content ul.district li h5 {
  margin-top: 0;
}
ul.district li table {
  margin-top: 0;
  margin-left: 20px;
}
ul.district li table tr {
  background-color: #fff;
  vertical-align: top;
}
ul.district li table th, ul.district li table td {
  padding: 0;
  /*display: block;*/
}
ul.district li table th {
  width: 75px;
  font-weight: normal;
}
#conference ul.district li table th {
  width: 50px;
}
ul.region-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
ul.region-list li {
  font-size: 18px;
}
ul.region-list li a {
  position: relative;
  padding-right: 17px;
}
ul.region-list li:last-child a {
  padding-right: 0;
}
ul.region-list li a::after {
  content: "|";
  font-size: 18px;
  position: absolute;
  right: 3px;
  bottom: -5px;
}
ul.region-list li:last-child a::after {
  content: none;
}
#content ul.region-list li a {
  color: #333;
  text-decoration: none;
}
@media only screen and (max-width:767px) {
  ul.district {
    gap: 20px 20px;
  }
  ul.district li {
    padding-right: 0px;
  }
  ul.region-list {
    float: left;
    margin-bottom: 5px;
    gap: 5px 0;
  }
  ul.region-list li {
    font-size: 16px;
  }
  ul.region-list li a::after {
    font-size: 16px;
    right: 4px;
  }
  ul.district li {
    width: 100%;
  }
}