@charset "UTF-8";
@media screen and (max-width: 1024px) {





    /*index*/
    .index .mainimg h2 br {
        display: none;
    }
    .index_cnt4 .inner .window .dl {
        display: block;
    }
    .index_cnt4 .inner .window .dt {
        width: 100%;
        border: none;
        display: block;
    }
    .index_cnt4 .inner .window .dd {
        width: 100%;
        padding: 1rem 0;
    }





    /*strength*/
    .strength_cnt1 .inner .col2:not(:last-of-type) {
        padding: 0 0 3rem;
        margin: 0 0 3rem;
        border-bottom: 0.1rem dashed #181818;
    }
    .strength_cnt1 .inner .col2 .left {
        border: 0.5rem solid #fff;
        box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.2);
    }



    /*price*/
    .price_cnt1 .inner .col2 .left {
        border: 0.5rem solid #fff;
        box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.2);
    }
    .price_cnt3 .inner .dt {
        font-size: initial;
    }

    .price_cnt3 .inner .dt::before {
        content: initial;
    }
    .price_cnt3 .inner .dd::before {
        content: initial;
    }





    /*flow*/
    .flow_cnt1 .inner .col2 {
        position: relative;
    }
    .flow_cnt1 .inner .col2 .left {
        border: 0.5rem solid #fff;
        box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.2);
    }
    .flow_cnt1 .inner .col2:not(:last-of-type) {
        padding: 0 0 3rem;
        margin: 0 0 3rem;
        border-bottom: 0.1rem dashed #181818;
    }
    .flow_cnt1 .inner .col2 .right h4 {
        position: initial;
    }
    .flow_cnt1 .inner .col2 .right h4::before {
        font-size: 3rem;
        top: -1em;
        left: 0;
    }





    /*company*/
    .company_cnt1 .inner .col2 .left {
        border: 0.5rem solid #fff;
        box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.2);
    }
    .company_cnt2 .inner .dt {
        min-width: 6em;
    }
    form>.dl {
        display: block;
    }
    form>.dl>.dt {
        width: 100%;
        border: none;
        padding: 0.5rem 0;
    }
    form>.dl>.dd {
        width: 100%;
        padding: 0.5rem 0;
    }
    form .dl .dd .dl {
        display: block;
    }
    form .col label {
        /*font-size: 1rem;*/
      font-size: 1.7rem;
    }
    .privacyformError {
        margin-top: -36.5px !important;
    }




}


/*--------------------*/
@media screen and (max-width: 375px){
.index_cnt3 .inner .col2 .right .titleA p::after {
    background: #1b1c1e;
}
}
@media screen and (max-width: 520px){

  .mainimg .pic img {
    width: auto;
    transform: translate(-15%, 0%);
}
  .index .mainimg h2 {
    font-size: 2.5rem !important;
}
  .index_cnt2 .inner .col2 :is(.left, .right) a .pic {
    height: 100%;
}
  .index_cnt2 .inner .col2 :is(.left, .right) {
    display: block;
    height: 25rem;
  }
      h3 {
        font-size: 2.1rem !important;
    }
  .plink01 {
    font-size: 15px;
}
  .table-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
  .table {
    min-width: 600px;
}
}
@media screen and (max-width: 1024px){
img[alt="追従画像"] {
    display: none !important;
  }
  .inner {
    width: 90%;
  }
}
@media screen and (max-width: 768px){
h3 {
        font-size: 2.3rem !important;
    }
}
@media (min-width:768px) and (max-width:1024px){
.h1750654976593 br:nth-child(2){
  display:none;
  }
  form>.dl,.footer .inner .col2 {
    display: flex !important;
}
      form>.dl>.dt {
        width: 40%;
  }
  .price_cnt3 .inner .dt::before {
    content: "Q";
    color: #ecc88f;
    display: inline-block;
    position: absolute;
    left: 1.82vw;
}
}
@media screen and (min-width: 1025px){
  .spbr br{
    display:none;
    }
  .h1750654976593 br:nth-child(2){
  display:none;
  }
    }
@media screen and (min-width: 1800px){
.index_cnt2 .inner .col2 {
    gap: 4.5625vw;
}
  .index_cnt3 .inner .col2 {
    align-items: center;
        margin: 6rem auto 6rem;
  }
  .strength_cnt2 .inner>.buttonA {
    margin: 5rem auto 0rem;
}
  .strength_cnt2 .inner .titleA {
    margin: 0 0 4rem;
}
  .price .mainimg .pic img {
    object-position: top;
}
  .flow_cnt1 .inner,.flow_cnt1 .col2 {
  position: relative;
}
.flow_cnt1 .inner .col2 .left {
    z-index: 1;
}

.flow_cnt1 .col2:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%; /* 現在のcol2の下から */
  left: 20%; /* 縦線の表示位置（画像中央に合わせて） */
  transform: translateY(0%);
  width: 3px;
  height: calc(100% + 40px); /* 下の.col2に届くように長さ調整 */
  background: #2f3232;
  z-index: 0;
}
  .company_cnt1 {
    padding: 8rem 0 6rem;
}
}