@media screen and (min-width:1126px) {
  .is-responsive-contact-a {
    display: inline-block;
  }

  .is-responsive-contact-b {
    display: none;
  }
}

@media screen and (max-width:1125px) {
  .is-responsive-contact-a {
    display: none;
  }

  .is-responsive-contact-b {
    display: block;
  }

  header .header_inner #pc_hdr nav ul li:nth-child(4) a .contact p:nth-child(1) {
    font-size: 20px;
    padding: 0 16px;
  }
}

@media screen and (max-width:1024px) {

  /* ************************
  common
  ************************ */
  body {
    font-size: 14px;
  }

  .inner {
    width: 92%;
    padding: 80px 15px;
  }

  .section_title {
    font-size: 32px;
  }

  .section_subtitle {
    font-size: 14px;
    padding-top: 0;
  }

  header .header_inner {
    width: 92%;
  }

  /* ************************
  top-page
  ************************ */
  body.top-page .round-01 {
    width: 40vw;
    height: 40vw;
    background-color: #6599d9;
  }

  body.top-page .round-02 {
    width: 50vw;
    height: 50vw;
    background-color: #d976c5;
  }

  body.top-page #top .inner {
    width: 92%;
  }
  
  body.top-page #top .inner .top_text {
    width: 95%;
    max-width: 400px;
    top: 50%;
  }

  body.top-page #top .inner .top_text p {
    font-size: clamp(14px,1.9vw,18px);
  }

  body.top-page #about .inner {
    padding: 80px 15px;
  }

  body.top-page #about .inner .about_text {
    padding-top: 20px;
  }

  body.top-page #service .inner {
    padding: 80px 0;
  }

  body.top-page #service .inner .section_title {
    padding-left: 15px;
  }

  body.top-page #service .inner .section_subtitle {
    padding-left: 15px;
  }

  body.top-page #service .inner ul {
    margin-top: 20px;
  }

  body.top-page #service .inner ul li:not(:last-child) {
    border-right: none;
  }

  body.top-page #works .inner {
    padding: 80px 0;
  }

  body.top-page #works .inner .section_title {
    padding-left: 15px;
  }

  body.top-page #works .inner .section_subtitle {
    padding-left: 15px;
  }

  body.top-page #works .inner ul {
    margin-top: 20px;
    display: block;
  }

  body.top-page #works .inner ul li {
    width: 100%;
    padding: 40px 15px;
  }

  body.top-page #works .inner ul li:nth-child(odd) {
    border-right: none;
  }

  body.top-page #works .inner ul li h3 {
    font-size: 18px;
    padding-top: 10px;
  }

  body.top-page #works .inner ul li .category {
    margin-top: 5px;
    padding: 0px 8px;
    color: #156BD9;
    border: 1px solid #156BD9;
  }

  body.top-page #works .inner ul li .works_position {
    margin-top: 5px;
  }

  body.top-page #works .inner ul li .works_text {
    padding-top: 10px;
    line-height: 1.75;
  }

  body.top-page #contact .inner {
    padding: 80px 15px;
  }

  body.top-page #contact .inner form {
    padding-top: 20px;
    width: 100%;
    max-width: 500px;
  }

  body.top-page #contact .inner form dl dt span {
    font-size: 12px;
    padding: 3px 6px;
    margin-left: 4px;
  }

  body.top-page #contact .inner form dl button {
    margin: 20px auto 0;
  }

  body.top-page #contact .inner form dl button input[type=submit] {
    font-size: 16px;
    padding: 10px 40px;
  }

  footer {
    padding: 40px 0;
  }

  body.top-page footer small {
    font-size: 12px;
  }

}

@media screen and (max-width:768px) {
  body.top-page #service .inner ul {
    display: block;
  }

  body.top-page #service .inner ul li {
    padding: 40px 15px;
  }

  body.top-page #service .inner ul li:not(:last-child) {
    border-bottom: 0.5px solid #156BD9;
  }

  body.top-page #service .inner ul li .number {
    top: 10px;
    right: 15px;
  }

  body.top-page #service .inner ul li h3 {
    font-size: 20px;
  }

  body.top-page #service .inner ul li .service_text {
    padding-top: 10px;
  }
}