@charset "utf-8";
/* CSS Document */

.ngh__page-kv{
  width: 100%;
  height: 400px;
  background-size: cover;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.ngh__page-kv-ttl{
  color: #fff;
  font-family: "游明朝", "YuMincho", serif;
  font-size: 50px;
  font-weight: 300;
  text-shadow: 3px 2px 5px rgba(0, 0, 0, 0.24);
}
.ngh__page-kv-ttl-caption{
  font-size: 18px;
  color: #fff;
  text-shadow: 3px 2px 5px rgba(0, 0, 0, 0.24);
}
.access .ngh__page-kv{
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
    url("../images/access_kv.jpg")
}

.page__access{
  padding: 100px 30px;
}
.page__access-inner{
  max-width: 1100px;
  margin: 0 auto;
}
.page__access-map{
  width: 100%;
  aspect-ratio:1.75 / 1;
  position: relative;
}
.page__access-map iframe{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.page__access-info{
  margin-top: 40px;
  display: flex;
  align-items: center;
  gap:40px;
}
.page__access-info-img{
  width: 550px;
  max-width: 50%;
  flex-shrink: 0;
}
.page__access-info-txt h2{
  font-size: 30px;
}
.page__access-info-txt dl{
  display: flex;
  flex-wrap: wrap;
  gap:10px 0;
  margin-top: 20px;
}
.page__access-info-txt dl dt{
  width: fit-content;
}
.page__access-info-txt dl dd{
  width: calc(100% - 100px);
  min-width: 340px;
}

.page__access-box{
  margin-top: 90px;
}
.page__access-box h2{
  font-size: 25px;
  font-weight: 600;
  padding-bottom: 10px;
  border-bottom: solid 1px #45413d;
  margin-bottom: 40px;
}
.page__access-row {
  display: flex;
  gap:0 20px;
  margin-top: 20px;
}
.page__access-row .page__access-label {
  flex: 0 0 215px;
  font-weight: 700;
}

.page__access-row .page__access-value {
  flex: 1;
}

.page__access-subrow {
  display: flex;
  flex-wrap: wrap;
}
.page__access-subrow + .page__access-subrow{
  margin-top: 20px;
}

.page__access-subrow .page__access-tag {
  flex: 0 0 160px;
  font-weight: 700;
}

.page__access-subrow .page__access-desc {
  flex: 1;
  min-width: 300px;
}
.page__access-note{
  font-size: 14px;
  font-weight: 500;
  margin-top: 30px;
}

.parking .page__access-row .page__access-label{
  padding-bottom: 10px;
  border-bottom: solid 2px #45413D;
}
.parking .page__access-row .page__access-value{
  padding-bottom: 10px;
  border-bottom: solid 1px #45413D;
}

@media (max-width: 767px) {
  .page__access-info{
    flex-direction: column;
  }
  .page__access-info-img{
    width: 100%;
    max-width: 100%;
  }
  .page__access-row{
    flex-direction: column;
    gap:10px;
  }
  .page__access-row .page__access-label{
    flex:1;
  }
  .page__access-row .page__access-value{
    flex-direction: column;
  }
  .page__access-subrow{
    flex-direction: column;
    gap:10px;
  }
  .page__access-subrow .page__access-tag{
    flex: 1;
  }

}