/*  **************************************************************************************************************************************************/
/*  contents  */
/*  **************************************************************************************************************************************************/
.contents-head .h1 {
  margin-bottom: 0px;
}

.contents-description1 {
  border-bottom: 1px solid #d4d4d4;
  margin-bottom: 4%;
  padding: 5.5% 0 4%;
}
.contents-description1 .contents-head-box {
  position: relative;
  padding-top: 3%;
}
.contents-description1 .contents-head-box::after {
  content: "";
  display: block;
  clear: both;
}
.contents-description1 .contents-head-img {
  width: 45%;
  float: left;
  margin-right: 5%;
}
.contents-description1 .contents-head-img img {
  width: 100%;
  height: auto;
}
.contents-description1 .contents-head-img-txt {
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 45%;
  box-sizing: border-box;
  border: 1px solid #d0cfcb;
  padding: 2% 4%;
}
.contents-description1 .contents-head-img-txt p {
  margin-top: 10px;
}
.contents-description1 .contents-head-img2 {
  width: 50%;
  float: left;
}
.contents-description1 .contents-head-img2 img {
  width: 100%;
  height: auto;
}

.description-ttl {
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 0.5%;
}

.contents-description {
  border-bottom: 1px solid #d4d4d4;
  padding: 0% 0 4%;
  margin-bottom: 4%;
}
.contents-description::after {
  content: "";
  display: block;
  clear: both;
}
.contents-description .contents-description-wrap {
  margin-bottom: 3%;
}
.contents-description .contents-description-wrap::after {
  content: "";
  display: block;
  clear: both;
}
.contents-description .contents-description-left {
  width: 30%;
  margin-right: 4%;
  float: left;
}
.contents-description .contents-description-left img {
  width: 100%;
  height: auto;
}
.contents-description .contents-description-right {
  float: left;
  width: 66%;
}
.contents-description .table-wrap::after {
  content: "";
  display: block;
  clear: both;
}
.contents-description table {
  width: 50%;
  float: left;
}
.contents-description table th, .contents-description table tr {
  border: 1px solid #d0cfcb;
  padding: 5px;
}
.contents-description table th {
  font-weight: bold;
}
.contents-description table td {
  border: 1px solid #d0cfcb;
  text-align: center;
}
.contents-description table .odd {
  color: #009843;
  background: #f0f4e4;
}
.contents-description .tbl_02 {
  margin-left: -1px;
}
.contents-description .contents-border {
  border: 1px solid #d0cfcb;
  padding: 4% 8%;
  font-size: 14px;
}

.contents-description2 {
  padding-bottom: 5.5%;
}
.contents-description2 .inner::after {
  content: "";
  display: block;
  clear: both;
}
.contents-description2 .inner .contents-description-wrap::after {
  content: "";
  display: block;
  clear: both;
}
.contents-description2 .inner .contents-description-left {
  width: 30%;
  margin-right: 4%;
  float: left;
}
.contents-description2 .inner .contents-description-left img {
  width: 100%;
  height: auto;
}
.contents-description2 .inner .contents-description-right {
  float: left;
  width: 66%;
}
.contents-description2 .inner .table-wrap {
  width: 66%;
  float: right;
  margin-top: 2%;
}
.contents-description2 .inner table {
  width: 100%;
  box-sizing: border-box;
}
.contents-description2 .inner table th, .contents-description2 .inner table tr {
  border: 1px solid #d0cfcb;
  padding: 5px;
  box-sizing: border-box;
}
.contents-description2 .inner table th {
  font-weight: bold;
}
.contents-description2 .inner table td {
  border: 1px solid #d0cfcb;
  text-align: center;
}
.contents-description2 .inner table .odd {
  width: 40%;
  color: #009843;
  background: #f0f4e4;
}

.contents-description-left {
  margin-right: 4%;
  float: left;
  width: 48%;
}

.contents-description-right {
  float: right;
  font-size: 15px;
  width: 48%;
}
.contents-description-right .contents-description-img {
  margin-top: 10px;
}
.contents-description-right .contents-description-img dl {
  border: 1px solid #CCC;
  display: inline-block;
  padding: 15px;
}
.contents-description-right .contents-description-img dt {
  font-size: 13px;
  font-weight: 700;
  padding-bottom: 1%;
}
.contents-description-right .contents-description-img li {
  font-size: 14px;
}

.contents-border {
  margin-top: 2%;
}
.contents-border dl {
  border: 1px solid #d0cfcb;
  padding: 4% 8%;
  font-size: 14px;
  margin-bottom: 1%;
}
.contents-border dl dt {
  font-weight: 700;
}
.contents-border dl .last {
  margin-top: 20px;
}

@media screen and (max-width: 1365px) {
  .contents-description1 .contents-head-img {
    width: 100%;
    float: none;
    margin-right: 0%;
    margin-bottom: 3%;
  }
  .contents-description1 .contents-head-img img {
    width: 100%;
    margin-top: 0px;
  }
  .contents-description1 .contents-head-img-txt {
    position: static;
    width: 100%;
    padding: 4%;
  }
  .contents-description1 .contents-head-img2 {
    margin-bottom: 2%;
    width: 100%;
    float: none;
  }
  .contents-description1 .contents-head-img2 img {
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  .contents-description1 {
    font-size: 14px;
    padding-top: 8%;
  }
  .contents-description1 .contents-head-img-txt {
    font-size: 12px;
  }

  .h3 {
    margin-top: -64px;
    padding-top: 64px;
  }

  .description-ttl {
    font-size: 12px;
  }

  .contents-description {
    padding-top: 0%;
    padding-bottom: 4%;
  }
  .contents-description .description-txt {
    font-size: 12px;
  }
  .contents-description table {
    width: 100%;
    float: none;
    margin-bottom: 2%;
  }
  .contents-description table th {
    font-weight: bold;
    font-size: 13px;
  }
  .contents-description table td {
    font-size: 12px;
  }
  .contents-description .tbl_02 {
    margin-left: -0px;
  }
  .contents-description .contents-border {
    padding: 4%;
    font-size: 12px;
    margin-top: 3%;
  }

  .contents-description2 .inner .table-wrap {
    width: 100%;
  }
  .contents-description2 .inner table th {
    font-size: 13px;
  }
  .contents-description2 .inner table td {
    font-size: 12px;
  }

  .contents-description-right {
    float: right;
    font-size: 15px;
    width: 48%;
  }
  .contents-description-right .description-txt {
    font-size: 12px;
  }
  .contents-description-right .contents-description-img {
    margin-top: 10px;
  }
  .contents-description-right .contents-description-img dl {
    border: 1px solid #CCC;
    display: inline-block;
    padding: 15px;
  }
  .contents-description-right .contents-description-img dt {
    font-size: 13px;
    font-weight: 700;
    padding-bottom: 1%;
  }
  .contents-description-right .contents-description-img li {
    font-size: 14px;
  }
}
