@charset "utf-8";
#mv h1 {
  line-height: 0;
}
#mv h1 figure {
  line-height: 0;
  position: relative;
}
#mv h1 figure figcaption {
  position: absolute;
  left: 5px;
  bottom: 5px;
  font-size: 10px;
  line-height: 1em;
  font-weight: normal;
}
#mv h1 img {
  width: 100%;
}
@media (max-width: 599px) {
  #mv h1 figure figcaption {
    font-size: 8px;
  }
}
#primary {
  margin-bottom: 50px;
}
.container {
  width: calc(62.77% + 80px);
  padding: 0 40px;
  margin: 0 auto;
}
@media (max-width: 599px) {
  .container {
    width: 100%;
    padding: 0 20px;
  }
}
h3 {
  text-align: center;
  font-size: 15px;
  line-height: 1em;
  font-weight: normal;
  position: relative;
  width: fit-content;
  margin: 0 auto 20px;
}
h3 br {
  display: none;
}
h3:before {
  content: "";
  display: block;
  height: 1px;
  width: 44px;
  background: #231815;
  position: absolute;
  left: -60px;
  top: 0;
  bottom: 0;
  margin: auto;
}
h3:after {
  content: "";
  display: block;
  height: 1px;
  width: 44px;
  background: #231815;
  position: absolute;
  right: -60px;
  top: 0;
  bottom: 0;
  margin: auto;
}
h3 + .note {
  font-size: 11px;
  line-height: 1.9em;
  width: 390px;
  max-width: 100%;
  margin: 0 auto 75px;
}
@media (max-width: 599px) {
  h3 {
    line-height: 1.5em;
  }
  h3 br {
    display: inline;
  }
}
.img_container {
  width: calc(88.99% + 40px);
  margin: 0 0px 40px 0;
  display: flex;
  padding-left: 40px;
  justify-content: space-between;
  align-items: center;
}
.img_container .photo {
  width: 67.31%;
}
.img_container .spec {
  width: 28.75%;
}
@media (max-width: 599px) {
  .img_container {
    width: 100%;
    margin: 0 0 40px;
    padding-left: 0;
    align-items: center;
    flex-direction: column;
  }
  .img_container .photo {
    width: 91%;
    margin-bottom: 10px;
  }
  .img_container .spec {
    width: calc(100% - 40px);
  }
}
.madori {
  line-height: 0;
  text-align: center;
  margin-bottom: 70px;
}
.madori img {
  width: 100%;
}
.photo_list {
  margin-bottom: 45px;
}
.photo_list ul {
  margin: 0 -2.72% 20px;
  display: flex;
  flex-wrap: wrap;
}
.photo_list ul li {
  width: 25%;
  margin-top: 45px;
  padding: 0 2.72%;
}
/*.photo_list ul li:nth-child(5) {
  width: 50%;
}*/
.photo_list ul li:nth-child(-n+4) {
  margin-top: 0;
}
.photo_list ul li p.photo {
  line-height: 0;
  margin-bottom: 10px;
}
.photo_list ul li p.photo img {
  width: 100%;
}
.photo_list ul li h4 {
  font-weight: bold;
  font-size: 11px;
  line-height: 1em;
  color: #7D4698;
  padding-bottom: 5px;
  border-bottom: 1px solid #595757;
  margin-bottom: 2px;
}
.photo_list ul li h4 img{
  height: 11px;
  margin-right: 3px;
  position: relative;
  top: 1px;
}
.photo_list ul li h4 span{
  font-size: 9px;
}

.photo_list ul li p.photo_note {
  font-size: 10px;
  line-height: 1.6em;
}
.photo_list .photo_list_note {
  font-size: 10px;
  line-height: 1em;
  text-align: right;
}
@media (max-width: 599px) {
  .photo_list ul li {
    width: 50%;
    margin-top: 45px;
    padding: 0 2.72%;
  }
/*  .photo_list ul li:nth-child(5) {
    width: 100%;
  }*/
  .photo_list ul li:nth-child(-n+4) {
    margin-top: 45px;
  }
  .photo_list ul li:nth-child(-n+2) {
    margin-top: 0;
  }
  .photo_list .photo_list_note {
    font-size: 8px;
  }
}
.price_list {
  margin-bottom: 45px;
  width: calc(68.42% + 80px);
  padding: 0 40px;
}
.price_list ul {
  display: flex;
  justify-content: center;
}
.price_list ul li {
  width: 33.3333%;
  padding: 0 2.59%;
}
.price_list ul li h4 {
  font-size: 13px;
  line-height: 1em;
  margin-bottom: 30px;
  padding-left: 1em;
  position: relative;
}
.price_list ul li h4:before {
  content: "●";
  position: absolute;
  left: 0;
  color: #62B0E3;
}
.price_list ul li table {
  border-collapse: collapse;
  table-layout: fixed;
  margin-bottom: 20px;
}
.price_list ul li table th {
  font-weight: normal;
  padding-left: 1em;
  position: relative;
  padding-right: 7px;
  border-right: 1px solid #000;
}
.price_list ul li table th:before {
  content: "●";
  position: absolute;
  left: 0;
}
.price_list ul li table th,
.price_list ul li table td {
  font-size: 11px;
  line-height: 1em;
  padding-bottom: 2em;
}
.price_list ul li table td {
  padding-left: 7px;
}
.price_list ul li table td span {
  color: #ef858c;
}
.price_list ul li table tr:last-child th,
.price_list ul li table tr:last-child td {
  padding-bottom: 0;
}
.price_list ul li p.price_note {
  font-size: 7px;
  line-height: 10px;
}
@media (max-width: 599px) {
  .price_list {
    width: 100%;
    padding: 0 20px;
  }
  .price_list ul {
    flex-wrap: wrap;
  }
  .price_list ul li {
    width: 50%;
    padding: 0;
    margin-top: 30px;
  }
  .price_list ul li:nth-child(-n+2) {
    margin-top: 0;
  }
}
.facility {
  padding-top: 75px;
  margin-bottom: 50px;
}
.facility .facility_head h2 {
  text-align: center;
  margin-bottom: 30px;
  line-height: 0;
}
.facility .facility_head h2 img {
  max-width: 50%;
}
.facility .facility_head .catch {
  text-align: center;
  margin-bottom: 30px;
  line-height: 0;
}
.facility .facility_head .catch img {
  max-width: 85%;
}
.facility h3 {
  text-align: center;
  font-size: 15px;
  font-weight: normal;
  line-height: 2em;
  margin-bottom: 20px;
}
.facility h3 + ul {
  width: fit-content;
  max-width: 100%;
  margin: 0 auto;
}
.facility h3 + ul li {
  position: relative;
  font-size: 13px;
  line-height: 1.8em;
  padding-left: 1em;
}
.facility h3 + ul li:before {
  position: absolute;
  left: 0;
  content: "●";
  color: #62B0E3;
}
.target {
  margin-bottom: 85px;
}
@media (max-width: 599px) {
  .target {
    margin-bottom: 45px;
  }
}
.access ul.map {
  margin-bottom: 20px;
  display: flex;
  justify-content: space-between;
}
.access ul.map li {
  width: 49.59%;
  line-height: 0;
}
.access ul.map li img {
  width: 100%;
}
.access ul.map li:last-child {
  width: 46.9%;
}
.access .navi_note {
  font-size: 12px;
  line-height: 1em;
  text-align: center;
  padding: 5px 0;
  border: 1px solid #000;
  border-radius: 20px;
  margin-bottom: 30px;
}
.access .access_list {
  margin-bottom: 50px;
  display: flex;
  justify-content: center;
}
.access .access_list li {
  line-height: 0;
  width: 50%;
  border-right: 1px dashed #000;
}
.access .access_list li:nth-child(1) {
  padding-right: 30px;
  text-align: right;
}
.access .access_list li:nth-child(1) img {
  width: auto;
  height: 4.14vw;
}
.access .access_list li:nth-child(2) {
  padding-left: 30px;
  border-right: 0;
}
.access .access_list li:nth-child(2) img {
  width: auto;
  height: 4.14vw;
}
.access .access_contact {
  text-align: center;
  line-height: 0;
}
.access .access_contact img {
  width: 53.73%;
}
@media (max-width: 599px) {
  .access ul.map {
    display: block;
  }
  .access ul.map li {
    width: 100%;
    margin-bottom: 20px;
  }
  .access ul.map li img {
    width: 100%;
  }
  .access ul.map li:last-child {
    width: 100%;
  }
  .access .access_list {
    flex-direction: column;
    width: fit-content;
    margin: 0 auto 50px;
  }
  .access .access_list li {
    width: 100%;
    border-right: 0;
  }
  .access .access_list li:nth-child(1) {
    padding-right: 0;
    text-align: left;
    padding-bottom: 15px;
    border-bottom: 1px dashed #000;
    margin-bottom: 15px;
  }
  .access .access_list li:nth-child(1) img {
    width: auto;
    height: 45px;
  }
  .access .access_list li:nth-child(2) {
    padding-left: 0;
    border-right: 0;
  }
  .access .access_list li:nth-child(2) img {
    width: auto;
    height: 45px;
  }
  .access .access_contact img {
    width: 100%;
  }
}
