.bold {
  font-weight: bold;
}
.mt_8per {
  margin-top: 8%;
}
.mt_10per {
  margin-top: 10%;
}
.site-branding {
  padding: 10px;
}
.site-branding .site-title {
  width: 260px;
  padding-bottom: 10px;
}
.site-branding .site-title a {
  display: block;
}
.site-branding .site-description {
  font-size: 14px;
}
.main-navigation .menu-item {
  display: inline-block;
  position: relative;
  padding: 0 25px;
}
@media (max-width: 1300px) {
  .main-navigation .menu-item {
    padding: 0 20px;
  }
}
@media (max-width: 1199px) {
  .site .main-navigation .menu.primary-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.feature_dl_block {
  width: 80%;
  max-width: 1000px;
  margin: auto;
}
@media (max-width: 865px) {
  .feature_dl_block {
    width: 100%;
  }
}
.feature_dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.feature_dl dt {
  width: 25%;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-right: 2%;
}
.feature_dl dt img {
  width: auto;
  max-height: 200px;
}
@media (max-width: 865px) {
  .feature_dl dt img {
    max-height: 100px;
  }
}
.feature_dl dd {
  width: 75%;
  margin: 0 0 2% 0;
}
.feature_dl dd .title {
  font-weight: bold;
  color: #171c61;
  font-size: 22px;
  padding-bottom: 2%;
}
@media (max-width: 865px) {
  .feature_dl dd .title {
    font-size: 18px;
  }
}
.feature_dl dd .text {
  font-size: 16px;
}
button:focus {
  outline: none !important;
}
.site-info {
  position: relative;
}
.site-info .footer-line {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  display: inline-block;
  width: 30px;
  height: 30px;
  margin: auto;
}
@media (max-width: 600px) {
  .site-info .footer-line {
    left: 10px;
  }
}
.site-info .footer-sitelogo {
  display: inline-block;
}
.site-info .footer-sitelogo img {
  width: 150px;
  -o-object-fit: cover;
     object-fit: cover;
}
.sp_footer_line {
  position: fixed;
  right: 20px;
  z-index: 10;
  bottom: 90px;
  z-index: 10;
  width: 50px;
}
.sp_footer_tel {
  position: fixed;
  right: 210px;
  z-index: 10;
  bottom: 30px;
}
.sp_footer_tel a {
  font-size: 13px;
  font-weight: bold;
  letter-spacing: 1px;
  background: #fff;
  color: #1eaf12;
  white-space: nowrap;
  border: 1px solid #1eaf12;
  border-radius: 30px;
  padding: 16px 20px 16px 20px;
}
@media (max-width: 600px) {
  .sp_footer_tel a {
    padding: 16px 10px 16px 10px;
  }
}
.sp_footer_tel a:hover {
  color: #1eaf12;
}
@media (max-width: 600px) {
  .site-footer {
    padding-bottom: 80px;
  }
}
.add_margin_auto {
  margin: auto;
}
.align-center {
  text-align: center;
}
.site .site-content .content-area .elementor .elementor-button-wrapper .elementor-button.type-large {
  white-space: nowrap;
  min-width: 160px;
  border-color: #1eaf12;
  width: 300px;
}
.week_table_block {
  overflow-x: scroll;
  max-width: 800px;
  margin-bottom: 3%;
}
.week_table {
  max-width: 800px;
  white-space: nowrap;
}
@media (max-width: 600px) {
  .week_table th,
  .week_table td {
    font-size: 12px;
    padding: 12px;
  }
}
.top_gallery {
  width: 100%;
  max-height: 600px;
  position: relative;
}
.btn_base {
  white-space: nowrap;
  min-width: 160px;
  border-color: #1eaf12;
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  background-color: #1eaf12;
  border: 2px solid #1eaf12;
  border-radius: 35px 35px 35px 35px;
  padding: 14px 48px;
  color: #fff;
  -webkit-transform: 0.6s all;
          transform: 0.6s all;
}
.btn_base:hover {
  color: #1eaf12;
  background: #fff;
}
.btn_large {
  white-space: nowrap;
  min-width: 160px;
  border-color: #1eaf12;
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  background: linear-gradient(94.59deg, #ec7f00 1.35%, #d2581c 97.14%);
  border-radius: 35px 35px 35px 35px;
  padding: 14px 48px;
  color: #fff;
  -webkit-transition: 0.6s all;
  transition: 0.6s all;
}
.btn_large:hover {
  color: #fff;
  background: linear-gradient(94.59deg, #d2581c 1.35%, #ec7f00 97.14%);
}
.yoyaku_ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 500px;
  margin: auto;
}
.yoyaku_ul li {
  width: 48%;
  list-style-type: none;
}
.yoyaku_ul li:marker {
  display: none;
}
.yoyaku_ul li a {
  display: block;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 5% 3%;
  text-align: center;
  background: #1eaf12;
  border-radius: 8px;
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  border: 1px solid #1eaf12;
}
.yoyaku_ul li a img {
  width: 20px;
  margin-right: 10px;
}
.yoyaku_ul li a:hover {
  color: #1eaf12;
  background: #fff;
}
.top_gallery__title {
  position: absolute;
  left: 3%;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 33%;
  min-width: 470px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 1060px) {
  .top_gallery__title {
    min-width: 400px;
  }
}
@media (max-width: 500px) {
  .top_gallery__title {
    width: 75%;
    min-width: 300px;
  }
}
.site-main .elementor img {
  border-radius: 8px;
}
.site-main .radius {
  border-radius: 8px;
}
.elementor-image-gallery .gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.elementor-image-gallery .gallery .gallery-item {
  width: 48%;
}
@media (max-width: 767px) {
  .sp-align-center {
    text-align: center;
  }
}
