html {
  scroll-behavior: smooth;
}

body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0;
  font-weight: 500;
  color: #000;
}
@media (max-width: 767px) {
  body {
    font-size: 16px;
  }
}

.body.is-open {
  overflow: hidden;
}

:target {
  scroll-margin-top: 100px;
}
@media (max-width: 767px) {
  :target {
    scroll-margin-top: 70px;
  }
}

a {
  transition: 0.3s;
}

@media (min-width: 767px) {
  a:hover {
    opacity: 0.7;
  }
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

iframe {
  max-width: 100%;
  vertical-align: bottom;
}

a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}
@media (max-width: 767px) {
  a[href*="tel:"] {
    pointer-events: auto;
    cursor: pointer;
  }
}

@media (max-width: 767px) {
  a.fax[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}

nav ul {
  list-style: none;
}

em {
  font-style: normal;
  font-weight: bold;
}

.aligncenter {
  display: block;
  margin: 20px auto;
}

.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

.alignright {
  float: right;
  margin: 5px 0px 20px 20px;
}

@media screen and (max-width: 767px) {
  .alignleft {
    float: none;
    display: block;
    margin: 20px auto;
  }
  .alignright {
    float: none;
    display: block;
    margin: 20px auto;
  }
}
.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
  max-width: 100%;
  height: auto;
}