@media screen and (min-width: 751px) {
      .s01_inner01 {
        position: relative;
      }

      .s01_content {
        top: 20px;
        width: min(1040px, 92vw);
        display: grid;
        grid-template-columns: 150px minmax(0, 1fr);
        align-items: start;
        gap: 28px;
      }

      .s01_bg01 {
        height: 440px;
      }

      .s01_bg02 {
        height: 1270px;
      }

      .s01_inner02 {
        padding-top: 0;
      }

      .s01_inner02 .consult_inner {
        margin-top: 70px;
      }

      .page-top-symbol {
        grid-column: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
      }

      .s01_content .s01_logo {
        margin-bottom: 18px;
      }

      .s01_content .s01_logo img {
        width: 120px;
        height: auto;
      }

      .s01_content h3 span {
        font-size: 26px;
      }

      .page-top-message {
        grid-column: 2;
        max-width: none;
        margin: 28px 0 0;
        padding: 0;
        background: transparent;
      }

      .page-top-message h4 {
        margin-bottom: 18px;
        font-size: 28px !important;
      }

      .page-top-message p {
        margin: 0;
        font-size: 16px;
        line-height: 2.05em;
      }

      .page-top-certs {
        position: absolute;
        top: 500px;
        left: 50%;
        transform: translateX(-50%);
        width: min(1180px, 92vw);
      }

      .page-top-certs .s01_text {
        margin-top: 30px;
      }

      .page-top-certs .s01_image {
        margin-top: 42px;
      }

      .page-top-certs .s01_image img {
        max-width: calc((100% - 30px) / 2);
        height: auto;
      }

      #sec01 .s01_inner02 #sec06 {
        padding: 160px 0 100px;
        background: transparent;
        text-align: left;
      }

      #sec01 .s01_inner02 #sec06 .inner {
        align-items: flex-start;
      }

      #sec01 .s01_inner02 #sec06 .inner::before {
        display: block;
        top: -55px;
        right: -140px;
        height: 887px;
      }

      #sec01 .s01_inner02 #sec06 .idx_tit01 {
        margin: 0;
        flex-shrink: 0;
      }

      #sec01 .s01_inner02 #sec06 .s06_cont {
        width: calc(100% - 190px);
        margin-top: 0;
      }

      #sec01 .s01_inner02 #sec06 .s06_cont h4 {
        margin-bottom: 120px;
      }

      #sec01 .s01_inner02 #sec06 .s06_slider {
        margin-right: -210px;
      }

      .consult_inner::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 1;
        background: rgba(0, 0, 0, .22);
        pointer-events: none;
      }

      .consult_content {
        z-index: 2;
        width: min(1120px, calc(100vw - 80px));
      }

      .page-top-consult-lead {
        display: table;
        margin: 0 auto 30px;
        padding: 14px 34px;
        background: rgba(0, 0, 0, .38);
        border-radius: 5px;
        color: #fff;
        text-align: center;
        font-size: 27px;
        font-weight: 700;
        line-height: 1.65;
        letter-spacing: .04em;
        text-shadow: 0 1px 4px rgba(0, 0, 0, .5);
      }

      .consult_list {
        width: 100%;
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: repeat(4, 1fr);
        gap: 14px 20px;
      }

      .consult_list li {
        height: 68px;
      }

      .consult_list li:nth-child(n) {
        grid-area: auto;
      }

      .consult_list li span {
        font-size: 21px;
      }

      .consult_text {
        margin-top: 20px;
      }

      .page-top-consult-cta {
        margin-top: 32px;
        text-align: center;
      }

      .page-top-consult-cta-text {
        margin-bottom: 18px;
        color: #fff;
        font-size: 22px;
        font-weight: 700;
        line-height: 1.7;
        text-shadow: 0 2px 10px rgba(0, 0, 0, .6);
      }

      .page-top-consult-cta .flex-space {
        justify-content: center;
        gap: 18px;
      }

      .page-top-consult-cta .contact_line,
      .page-top-consult-cta .contact_tel {
        position: relative;
        width: 420px;
        height: 150px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
      }

      .page-top-consult-cta .contact_line {
        background: #06bc52;
        color: #fff;
      }

      .page-top-consult-cta .contact_tel {
        background: #fff;
        color: var(--color-primary);
      }

      .page-top-consult-cta .contact_line::before,
      .page-top-consult-cta .contact_tel::before {
        content: "";
        position: absolute;
        inset: 10px;
        border: 2px solid currentColor;
      }

      .page-top-consult-cta .contact_line a,
      .page-top-consult-cta .contact_tel a {
        position: absolute;
        inset: 0;
        z-index: 3;
      }

      .page-top-consult-cta .cont_line_tit,
      .page-top-consult-cta .cont_tel_title {
        position: relative;
        z-index: 2;
        margin-bottom: 12px;
        font-weight: 700;
      }

      .page-top-consult-cta .cont_line_tit span,
      .page-top-consult-cta .cont_tel_title span {
        display: block;
        font-family: var(--font-shippori);
        font-size: 36px;
        line-height: 1.2;
      }

      .page-top-consult-cta .cont_line_btn,
      .page-top-consult-cta .cont_tel_btn {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: center;
      }

      .page-top-consult-cta .cont_line_btn span,
      .page-top-consult-cta .cont_tel_btn span {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 82px;
        height: 28px;
        padding: 0 8px;
        font-size: 15px;
        font-weight: 700;
      }

      .page-top-consult-cta .cont_line_btn span {
        background: #fff;
        color: #06bc52;
      }

      .page-top-consult-cta .cont_line_btn span:not(:last-child) {
        margin-right: 8px;
      }

      .page-top-consult-cta .cont_tel_btn span {
        min-width: 220px;
        background: var(--color-primary);
        color: #fff;
      }

      .review_inner .idx_tit02 {
        margin-bottom: 44px;
        text-align: center;
      }

      #sec05 .page-top-contact-lead {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 58px;
        margin-bottom: 30px;
      }

      footer .page-top-footer-contact-lead {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 58px;
        margin-bottom: 30px;
      }

      footer .box_contact > .inner > .idx_tit01,
      footer .box_contact > .inner > .contact_logo,
      footer .box_contact > .inner > .contact_tit {
        display: none;
      }

      #sec05 .page-top-contact-logo {
        margin: 0;
        text-align: center;
      }

      footer .page-top-contact-logo {
        margin: 0;
        text-align: center;
      }

      #sec05 .page-top-contact-logo img {
        width: 185px;
        height: auto;
      }

      footer .page-top-contact-logo img {
        width: 185px;
        height: auto;
      }

      #sec05 .page-top-contact-copy {
        color: #fff;
        font-size: 28px;
        font-weight: 700;
        line-height: 1.75;
        text-align: left;
        text-shadow: 0 2px 10px rgba(0, 0, 0, .6);
      }

      footer .page-top-contact-copy {
        color: #fff;
        font-size: 28px;
        font-weight: 700;
        line-height: 1.75;
        text-align: left;
        text-shadow: 0 2px 10px rgba(0, 0, 0, .6);
      }

      #sec05 .box_contact .contact_tit {
        margin-bottom: 34px;
        font-size: 20px;
      }

      footer .page-top-footer-contact-tit {
        margin-bottom: 34px;
        color: #fff;
        font-size: 20px;
        font-weight: 700;
        line-height: 1.4em;
        text-align: center;
      }
            #sec01 .page-top-message.sp{
        display: none;
      }
      .page-top-achievement{
        text-align: center;
      }
    }

    @media screen and (max-width: 750px) {
      /* #sec01 .s01_content .page-top-message {
        display: none;
      } */
      .page-top-message.pc{
        display: none;
      }

      #sec01 .page-top-message.sp{
        display: block;
      }

      #sec01 .page-top-message {
        display: block;
        margin: 24px auto 28px;
        padding: 0 4%;
        color: #111;
        text-align: center;
      }
      #sec01 .page-top-message p{
           font-size: 16px;
            line-height: 2;
            letter-spacing: 0;
            text-align: left;
      }


        /* #sec01 .s01_inner01 {
  margin-bottom: 560px;
} */


      #sec01 .s01_content .page-top-message {
          display: block;
          margin: 24px auto 0;
          padding: 0 4%;
          color: #111;
          text-align: center;
      }

      #sec01 .s01_content .page-top-message h4 {
        margin-bottom: 22px;
        font-size: 20px !important;
        line-height: 1.7;
      }

      #sec01 .s01_content .page-top-message p {
        font-size: 16px;
        line-height: 2;
        letter-spacing: 0;
        text-align: left;
      }

      /* #sec01 .page-top-message-sp h4 {
        margin-bottom: 22px;
        font-size: 20px !important;
        line-height: 1.7;
      }

      #sec01 .page-top-message-sp p {
        font-size: 16px;
        line-height: 2;
        letter-spacing: 0;
        text-align: left;
      } */

      #sec01 .s01_inner02 #sec06 {
        margin: 40px -3% 0;
        padding: 45px 3% 55px;
        background: transparent;
      }

      #sec01 .s01_inner02 #sec06 .idx_tit01 {
        margin-top: 0;
      }

      #sec01 .s01_inner02 #sec06 .s06_cont {
        padding-top: 30px;
      }

      #sec01 .s01_inner02 #sec06 .s06_cont h4 {
        margin-bottom: 65px;
      }

      .page-top-consult-lead {
        display: table;
        margin: 0 auto 20px;
        padding: 10px 16px;
        background: rgba(0, 0, 0, .38);
        border-radius: 5px;
        color: #fff;
        text-align: center;
        font-size: 20px;
        font-weight: 700;
        line-height: 1.6;
        letter-spacing: .02em;
        text-shadow: 0 1px 4px rgba(0, 0, 0, .5);
      }

      .consult_list {
        gap: 12px 10px;
      }

      .consult_list li {
        height: auto;
        min-height: 70px;
        padding: 8px 6px;
        display: flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        overflow: visible;
      }

      .consult_list li::before {
        top: 8px;
        left: 6px;
        right: 6px;
        bottom: 8px;
        width: auto;
        height: auto;
        transform: translate(6px, 6px);
      }

      .consult_list li:nth-child(n) {
        grid-area: unset;
      }

      .consult_list li span {
        height: auto;
        min-height: 54px;
        width: 100%;
        position: relative;
        z-index: 1;
        white-space: normal;
        line-height: 1.45;
        letter-spacing: 0;
        text-align: center;
        word-break: keep-all;
        overflow-wrap: anywhere;
      }

      .page-top-consult-cta {
        margin-top: 24px;
      }

      .page-top-consult-cta-text {
        margin-bottom: 16px;
        color: #fff;
        text-align: center;
        font-size: 17px;
        font-weight: 700;
        line-height: 1.7;
        text-shadow: 0 2px 8px rgba(0, 0, 0, .6);
      }

      .page-top-consult-cta .flex-space {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 14px;
      }

      .page-top-consult-cta .contact_line,
      .page-top-consult-cta .contact_tel {
        position: relative;
        width: 100%;
        max-width: 400px;
        min-height: 126px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
      }

      .page-top-consult-cta .contact_line {
        background: #06bc52;
        color: #fff;
      }

      .page-top-consult-cta .contact_tel {
        background: #fff;
        color: var(--color-primary);
      }

      .page-top-consult-cta .contact_line::before,
      .page-top-consult-cta .contact_tel::before {
        content: "";
        position: absolute;
        inset: 8px;
        border: 2px solid currentColor;
      }

      .page-top-consult-cta .contact_line a,
      .page-top-consult-cta .contact_tel a {
        position: absolute;
        inset: 0;
        z-index: 3;
      }

      .page-top-consult-cta .cont_line_tit,
      .page-top-consult-cta .cont_tel_title {
        position: relative;
        z-index: 2;
        margin-bottom: 10px;
        font-weight: 700;
      }

      .page-top-consult-cta .cont_line_tit span,
      .page-top-consult-cta .cont_tel_title span {
        display: block;
        font-family: var(--font-shippori);
        font-size: 27px;
        line-height: 1.2;
      }

      .page-top-consult-cta .cont_line_btn,
      .page-top-consult-cta .cont_tel_btn {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: 6px;
      }

      .page-top-consult-cta .cont_line_btn span,
      .page-top-consult-cta .cont_tel_btn span {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 76px;
        height: 26px;
        padding: 0 6px;
        font-size: 13px;
        font-weight: 700;
      }

      .page-top-consult-cta .cont_line_btn span {
        background: #fff;
        color: #06bc52;
      }

      .page-top-consult-cta .cont_tel_btn span {
        min-width: 210px;
        background: var(--color-primary);
        color: #fff;
      }

      .review_inner .idx_tit02 {
        margin-bottom: 28px;
        text-align: center;
      }

      #sec05 .page-top-contact-lead {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 18px;
        margin-bottom: 24px;
      }

      footer .page-top-footer-contact-lead {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 18px;
        margin-bottom: 24px;
      }

      footer .box_contact > .inner > .idx_tit01,
      footer .box_contact > .inner > .contact_logo,
      footer .box_contact > .inner > .contact_tit {
        display: none;
      }

      #sec05 .page-top-contact-logo {
        margin: 0;
        text-align: center;
      }

      footer .page-top-contact-logo {
        margin: 0;
        text-align: center;
      }

      #sec05 .page-top-contact-logo img {
        width: 120px;
        height: auto;
      }

      footer .page-top-contact-logo img {
        width: 120px;
        height: auto;
      }

      #sec05 .page-top-contact-copy {
        color: #fff;
        font-size: 18px;
        font-weight: 700;
        line-height: 1.8;
        text-align: center;
        text-shadow: 0 2px 8px rgba(0, 0, 0, .6);
      }

      footer .page-top-contact-copy {
        color: #fff;
        font-size: 18px;
        font-weight: 700;
        line-height: 1.8;
        text-align: center;
        text-shadow: 0 2px 8px rgba(0, 0, 0, .6);
      }

      footer .page-top-footer-contact-tit {
        margin-bottom: 30px;
        color: #fff;
        font-size: 15px;
        font-weight: 700;
        line-height: 1.4em;
        text-align: center;
      }
    }