@charset "UTF-8";
/* ================================================
	PAGE 共通
=================================================== */
/*  Page main
=================================================== */
#page-main {
  position: relative;
  padding-bottom: 40px;
}
#page-main:after {
  position: absolute;
  z-index: 1;
  top: 0;
  width: 70%;
  height: 100%;
  content: "";
  background: url("../img/bg2.jpg");
}

@media (max-width: 767px) {
  #page-main:after {
    width: 87%;
  }
}
.page-main__inner {
  position: relative;
  z-index: 10;
  display: flex;
  justify-content: flex-end;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
}
.page-main-img {
  flex-basis: 70%;
}

@media (max-width: 992px) {
  .page-main-img {
    flex-basis: 65%;
  }
}
@media (max-width: 767px) {
  #page-main {
    padding-bottom: 20px;
  }
  .page-main-img {
    margin-top: 50px;
  }
}
@media (max-width: 575px) {
  .page-main-img {
    flex-basis: 80%;
  }
}
/*  Page header
=================================================== */
#page-header {
  padding: 100px 0 30px 0;
}
#page-header h2 {
  text-align: center;
}
#page-header h2 img {
  width: 80px;
  margin-bottom: 5px;
}
#page-header h2 span {
  display: block;
  letter-spacing: 0.1em;
  color: #484848;
}

.page-header-text1 {
  font-size: 3rem;
}
.page-header-text2 {
  font-size: 1.6rem;
}

@media (max-width: 767px) {
  #page-header {
    padding: 50px 0 30px 0;
  }
}
@media (max-width: 575px) {
  #page-header h2 img {
    width: 60px;
  }
  .page-header-text1 {
    font-size: 7vw;
  }
  .page-header-text2 {
    font-size: 4vw;
  }
}
/*  Page section
=================================================== */
#page-section {
  padding-bottom: 50px;
}
#page-section article + article {
  margin-top: 70px;
}
#page-section article h3 {
  margin-bottom: 1em;
}
#page-section article a.link {
  color: #004ECC;
  display: flex;
  align-items: center;
}
#page-section article a.link span {
  font-size: 1.8rem;
  margin-left: 5px;
}

@media (max-width: 767px) {
  #page-section {
    padding-bottom: 30px;
  }
  #page-section article + article {
    margin-top: 50px;
  }
}
/*  download
=================================================== */
.page-section-dl a {
  display: inline-block;
  padding: 5px 20px 5px 40px;
  transition: 0.3s;
  text-indent: -2.2em;
  color: #fff !important;
  text-decoration: none !important;
  background: #888;
}
.page-section-dl a:hover {
  background: #84988e;
}
.page-section-dl a img {
  width: 20px;
  margin-right: 10px;
}
.page-section-dl + .page-section-dl {
  margin-top: 20px;
}

@media (max-width: 767px) {
  .page-section-dl a {
    padding: 5px 5px 5px 40px;
  }
}
@media (max-width: 575px) {
  .page-section-dl a {
    display: block;
  }
}
/*  table tate
=================================================== */
.page-section-table-tate tr:last-child th {
  border-bottom: none !important;
}
.page-section-table-tate th {
  width: 20%;
  padding: 20px;
  border-bottom: solid 1px #fff !important;
  background: #dedede;
}
.page-section-table-tate td {
  padding: 20px;
}

@media (max-width: 767px) {
  .page-section-table-tate th {
    display: block;
    width: 100%;
    padding: 10px;
    border-bottom: none !important;
  }
  .page-section-table-tate td {
    display: block;
    width: 100%;
    padding: 20px 10px;
  }
}
/*  table yoko
=================================================== */
.page-section-table-yoko th {
  width: 20%;
  padding: 20px;
  border-right: solid 1px #fff !important;
  background: #dedede;
}
.page-section-table-yoko th:last-child {
  border-right: none !important;
}
.page-section-table-yoko td {
  padding: 20px;
}
.page-section-table-yoko td a {
  text-decoration: underline;
  color: #004ECC;
}

@media (max-width: 767px) {
  .page-section-table-yoko thead {
    display: none;
  }
  .page-section-table-yoko td {
    display: block;
    width: 100%;
    border-bottom: none !important;
  }
  .page-section-table-yoko td:first-child {
    padding: 10px;
    background: #dedede;
  }
  .page-section-table-yoko td:nth-child(2) {
    padding: 10px 10px 0 10px;
  }
  .page-section-table-yoko td:last-child {
    padding: 0 10px 10px 10px;
    border-top: #fff solid 1px !important;
  }
  .page-section-table-yoko td:before {
    font-size: 1.2rem;
    display: block;
    content: attr(data-label);
    color: #484848;
  }
}
/*  table more
=================================================== */
.page-section-more a {
  text-decoration: underline;
  color: #004ECC;
}

/*  table link
=================================================== */
.page-section-link li {
  margin-bottom: 10px;
}
.page-section-link li a {
  text-decoration: underline;
  color: #004ECC;
}

/*  table gallery
=================================================== */
.page-section-gallery {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.page-section-gallery > div {
  flex-basis: 24%;
}
.page-section-gallery > div:nth-child(n+5) {
  margin-top: 1.5%;
}
.page-section-gallery:before {
  display: block;
  flex-basis: 24%;
  order: 1;
  height: 0;
  content: "";
}
.page-section-gallery:after {
  display: block;
  flex-basis: 24%;
  height: 0;
  content: "";
}

@media (max-width: 767px) {
  .page-section-gallery > div {
    flex-basis: 49%;
  }
  .page-section-gallery > div:nth-child(n+3) {
    margin-top: 2%;
  }
}
/*  report list
=================================================== */
.report_list li a {
  font-size: 2rem;
  text-decoration: underline;
  color: #004ECC;
}

/*  Page title
=================================================== */
.hn1 {
  font-size: 3rem;
  text-align: center;
}

@media (max-width: 575px) {
  .hn1 {
    font-size: 5vw;
  }
}
.hn2 {
  font-size: 3rem;
  position: relative;
  padding: 0 0 15px 10px;
}
.hn2::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 40%;
  height: 8px;
  content: "";
  background: linear-gradient(140deg, #d1b4b7 0%, #d1b4b7 65%, #fbf9f7 65.2%, #fbf9f7 67%, #c9c9c9 67.2%, #c9c9c9 100%);
}

@media (max-width: 575px) {
  .hn2 {
    font-size: 5vw;
  }
  .hn2::after {
    width: 80%;
  }
}
.hn3 {
  font-size: 2.2rem;
  position: relative;
  padding: 0 0 15px 10px;
  color: #484848;
}
.hn3::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 40%;
  height: 8px;
  content: "";
  background: linear-gradient(140deg, #d1b4b7 0%, #d1b4b7 65%, #fff 65.2%, #fff 67%, #c9c9c9 67.2%, #c9c9c9 100%);
}

@media (max-width: 575px) {
  .hn3 {
    font-size: 5vw;
  }
  .hn3::after {
    width: 80%;
  }
}
/*  pager
=================================================== */
.pager ul.pagination {
  text-align: center;
}
.pager .pagination li {
  position: relative;
  display: inline-block;
  width: 28px;
  height: 28px;
  margin: 0 2px;
  text-align: center;
  background: #f4f4f4;
}
.pager .pagination li a {
  font-weight: 500;
  position: absolute;
  top: 0;
  left: 0;
  display: table;
  width: 100%;
  height: 100%;
  transition: 0.3s;
  text-align: center;
  vertical-align: middle;
}
.pager .pagination li a span {
  display: table-cell;
  vertical-align: middle;
}
.pager .pagination li a:hover, .pager .pagination li a.active {
  color: #fff;
  background: #c6d2c6;
}

/*  pre-next
=================================================== */
.prev-next {
  display: flex;
  align-items: center;
  justify-content: center;
}
.prev-next .prev img,
.prev-next .next img {
  width: 6px;
  vertical-align: middle;
}
.prev-next .prev a,
.prev-next .next a {
  display: table-cell;
  width: 28px;
  height: 28px;
  text-align: center;
  vertical-align: middle;
  background: red;
}
.prev-next .prev a:hover,
.prev-next .next a:hover {
  background: #c6d2c6;
}
.prev-next .prev a:hover img,
.prev-next .next a:hover img {
  filter: brightness(0) invert(1);
}
.prev-next .back {
  padding: 0 70px;
}
.prev-next .back a:hover {
  color: red;
}

@media screen and (max-width: 767px) {
  .prev-next .back {
    padding: 0 30px;
  }
}