/* =======================================================
* sub_main
* ======================================================= */
#sub_main {
  background: url(../images/bg-access.jpg) no-repeat center bottom/cover;
}

@media screen and (max-width:768px) {
  #sub_main {
    background-position: center top 45%;
  }
}

/* =======================================================
* overview
* ======================================================= */
#overview dl {
  width: 60%;
  font-size: 1.4rem;
}

#overview dl dt {
  width: 25%;
  text-align: center;
  margin-bottom: 20px;
}

#overview dl dd {
  width: 75%;
  margin-bottom: 20px;
  line-height: 2;
}

#overview dl dd.sns img {
  width: 20px;
  display: inline-block;
  margin: 0 5px;
}

#overview .overview_img {
  width: 40%;
}

/* photoArea */
.photoArea_cap {
  margin-top: 50px;
  font-size: 1.2rem;
}

.photoArea {
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr 1fr 1fr;
  margin-top: 20px;
}

.photoArea h4 {
  text-align: center;
  margin-top: 7px;
  font-size: 1.3rem;
}

.bannerArea {
  max-width: 600px;
  margin: 80px auto 0;
}

.bannerArea img {
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.3);
  border-radius: 7px;
}

@media screen and (max-width:768px) {
  #overview dl {
    width: 100%;
    margin-bottom: 30px;
  }

  #overview dl dt {
    font-size: 1.3rem;
    margin-bottom: 12px;
  }

  #overview dl dd {
    width: 70%;
    margin-bottom: 12px;
  }

  #overview .overview_img {
    width: 80%;
    margin: 0 auto;
  }

  .photoArea {
    gap: 25px 0px;
    grid-template-columns: 1fr;
  }
}

/* =======================================================
* access
* ======================================================= */
#access iframe {
  margin: 20px 0 60px;
  width: 100%;
  height: 400px;

}