@charset "UTF-8";
:root {
  --key-color: #1374b4;
  --linear: cubic-bezier(0.250, 0.250, 0.750, 0.750);
  --ease: cubic-bezier(0.250, 0.100, 0.250, 1.000);
  --ease-in: cubic-bezier(0.420, 0.000, 1.000, 1.000);
  --ease-out: cubic-bezier(0.000, 0.000, 0.580, 1.000);
  --ease-in-out: cubic-bezier(0.420, 0.000, 0.580, 1.000);
  --easeInQuad: cubic-bezier(0.550, 0.085, 0.680, 0.530);
  --easeInCubic: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  --easeInQuart: cubic-bezier(0.895, 0.030, 0.685, 0.220);
  --easeInQuint: cubic-bezier(0.755, 0.050, 0.855, 0.060);
  --easeInSine: cubic-bezier(0.470, 0.000, 0.745, 0.715);
  --easeInExpo: cubic-bezier(0.950, 0.050, 0.795, 0.035);
  --easeInCirc: cubic-bezier(0.600, 0.040, 0.980, 0.335);
  --easeInBack: cubic-bezier(0.600, -0.280, 0.735, 0.045);
  --easeOutQuad: cubic-bezier(0.250, 0.460, 0.450, 0.940);
  --easeOutCubic: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  --easeOutQuart: cubic-bezier(0.165, 0.840, 0.440, 1.000);
  --easeOutQuint: cubic-bezier(0.230, 1.000, 0.320, 1.000);
  --easeOutSine: cubic-bezier(0.390, 0.575, 0.565, 1.000);
  --easeOutExpo: cubic-bezier(0.190, 1.000, 0.220, 1.000);
  --easeOutCirc: cubic-bezier(0.075, 0.820, 0.165, 1.000);
  --easeOutBack: cubic-bezier(0.175, 0.885, 0.320, 1.275);
  --easeInOutQuad: cubic-bezier(0.455, 0.030, 0.515, 0.955);
  --easeInOutCubic: cubic-bezier(0.645, 0.045, 0.355, 1.000);
  --easeInOutQuart: cubic-bezier(0.770, 0.000, 0.275, 1.000);
  --easeInOutQuint: cubic-bezier(0.860, 0.000, 0.070, 1.000);
  --easeInOutSine: cubic-bezier(0.445, 0.050, 0.550, 0.950);
  --easeInOutExpo: cubic-bezier(1.000, 0.000, 0.000, 1.000);
  --easeInOutCirc: cubic-bezier(0.785, 0.135, 0.150, 0.860);
  --easeInOutBack: cubic-bezier(0.680, -0.550, 0.265, 1.550);
  --easeBuruBuru: cubic-bezier(0.42, 0, 0.58, 1);
}

/* ============================================================================

　_page_service

=============================================================================== */
/* ----------------------------------------------------------------------------
　page_ttl
---------------------------------------------------------------------------- */
main.page_media section.page_ttl {
  background: url("/img/media/page_ttl_bg.jpg") center center no-repeat;
  background-size: auto 100%;
}
@media screen and (max-width: 743px) {
  main.page_media section.page_ttl {
    background: url("/img/media/page_ttl_bg.jpg") center center no-repeat;
    background-size: cover;
    height: 150px;
  }
}

main.page_media .common_container section:not(:last-child) {
  margin-bottom: 5rem;
}
main.page_media .common_container section .media_index {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.9%;
}
@media screen and (max-width: 743px) {
  main.page_media .common_container section .media_index {
    display: block;
  }
}
main.page_media .common_container section .media_index li {
  width: 32.5%;
}
@media screen and (max-width: 743px) {
  main.page_media .common_container section .media_index li {
    width: 100%;
  }
  main.page_media .common_container section .media_index li:not(:last-child) {
    margin-bottom: 2rem;
  }
}
main.page_media .common_container section .media_index li a {
  text-decoration: none;
  display: block;
  -webkit-transition: 0.4s var(--easeOutQuad);
  transition: 0.4s var(--easeOutQuad);
}
@media screen and (max-width: 743px) {
  main.page_media .common_container section .media_index li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 1rem;
  }
}
main.page_media .common_container section .media_index li a .thumbnail {
  margin-bottom: 1rem;
  border: 1px solid #ccc;
}
@media screen and (max-width: 743px) {
  main.page_media .common_container section .media_index li a .thumbnail {
    width: 40%;
  }
}
@media screen and (max-width: 743px) {
  main.page_media .common_container section .media_index li a .txt {
    font-size: 1.4rem;
    width: 60%;
  }
}
main.page_media .common_container section .media_index li a:hover {
  opacity: 0.8;
}
main.page_media .common_container .btn_contact {
  width: 300px;
  margin: 0 auto;
}
@media screen and (max-width: 743px) {
  main.page_media .common_container .btn_contact {
    width: 100%;
  }
}