.main { text-align: center; }
.lft { text-align: left; }
.bor { border-top: 1px solid #cccccc; }
.hx01 { margin: 0px auto; width: 130px; height: 130px; font-size: 1rem; line-height: 100%; font-weight: normal; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.div01 { margin: 25px auto 0px; width: 880px; max-width: 100%; }
.div03 { margin: 25px auto 0px; width: 945px; max-width: 100%; }
.div04 { margin: 25px auto 0px; font-size: 1rem; line-height: 200%; }
.div05 { margin: 10px auto 0px; padding-bottom: 30px; font-size: 1rem; line-height: 125%; text-align: left; }
.div06 { margin: 25px auto 0px; }
.div07 { font-size: 0.9rem; line-height: 250%; }
.box4 { margin: 0px auto; padding: 15px 0px 0px; max-width: 86%; display: flex; flex-flow: wrap; justify-content: space-between; text-align: center; line-height: 150%; }
.box4 div { margin-top: 20px; flex-basis: 45%; max-width: 45%; }
.div02 { padding: 15px 0px 0px; text-align: left; }
.div02 p { padding: 0px 0px 0px 15px; }
.cntrz { padding: 20px 0px 0px; text-align: center; }
.box4t { margin: 0px auto; max-width: 90%; display: flex; flex-flow: wrap; justify-content: space-between; }
.box4t div { margin-top: 30px; flex-basis: 45%; max-width: 45%; }
.deftab { margin-top: 30px; line-height: 200%; }
.deftab td { text-align: left; }
.deftab .tel { font-size: 1.1rem; line-height: 200%; }
.deftab .rgtz { text-align: right; }
#top_googlemap { margin: 10px 0px 0px; border: 1px solid #999999; box-sizing: border-box; }
a.btn01 { display: block; margin: 30px auto 20px; padding: 28px 0px; width: 400px; max-width: 80%; text-align: center; text-decoration: none; border: 1px solid #cccccc; background-color: #f3f3f3; line-height: 100%; border-radius: 5px; background-image: url("/commonfiles/img/bg495.png"); background-repeat: repeat-x; background-position: left top; color: #222222; }
#topinfoz4 { margin: 0px; padding: 0px; width: 100%; list-style-type: none; display: flex; flex-flow: wrap; justify-content: space-between; }
#topinfoz4 li { margin-top: 20px; flex-basis: 48%; max-width: 48%; }
#topinfoz4 li:nth-of-type(9) { display: none; }
#topinfoz4 li > div { border: 1px solid #cccccc; padding: 5px; }
#topinfoz4 .ilink_img { position: relative; width: 100%; height: 0px; padding-bottom: 66%; overflow: hidden; }
#topinfoz4 .ilink_img img { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; object-fit: cover; cursor: pointer; }
#topinfoz4 p { display: none; }
@media print, (min-width: 768px) {
  .lft { text-align: center; }
  .main { font-size: 1.14rem; line-height: 250%; }
  .hx01 { width: 180px; height: 180px; font-size: 1.14rem; line-height: 100%; }
  .box4 { padding: 40px 0px 30px; max-width: 100%; }
  .box4 div { flex-basis: 24%; max-width: 24%; }
  .div02 { margin: 0px auto; width: 834px; max-width: 100%; display: flex; flex-flow: wrap; justify-content: flex-start; }
  .div02:first-of-type { padding-top: 25px; }
  .div02 div { width: 130px; }
  .div02 p { flex: 1 1 0%; box-sizing: border-box; }
  .box4t { padding-bottom: 30px; width: 860px; max-width: 100%; }
  .box4t div { margin-top: 75px; flex-basis: 43.5%; max-width: 44%; }
  .deftab th { text-align: center; vertical-align: middle; font-size: 1.6rem; line-height: 200%; }
  .deftab .tel { font-size: 1.9rem; line-height: 200%; }
}
@media screen and (max-width: 930px) and (min-width: 640px) {
  #topinfoz4 li { margin-top: 30px; flex-basis: 32%; max-width: 32%; }
  #topinfoz4 li:nth-of-type(9) { display: block; }
}
@media print, (min-width: 931px) {
  #topinfoz4 li { margin-top: 30px; flex-basis: 24%; max-width: 24%; }
}
