main section:last-child {
  padding-bottom: 0;
}

.page_ttl_wrap {
  margin-bottom: 0;
  border-bottom: 0;
}

.subttl,
.h4_stg_spa_wrap {
  -webkit-transition: all ease 500ms;
  transition: all ease 500ms;
  -webkit-transform: translateY(min(5vw, 20px));
          transform: translateY(min(5vw, 20px));
  opacity: 0;
}

h3,
h4,
h5,
.inviewelem {
  -webkit-transition: all ease 500ms;
  transition: all ease 500ms;
  -webkit-transform: translateY(min(13vw, 52px));
          transform: translateY(min(13vw, 52px));
  opacity: 0;
}

.abus_p {
  -webkit-transition: all ease 500ms;
  transition: all ease 500ms;
  -webkit-transform: translateY(min(10vw, 40px));
          transform: translateY(min(10vw, 40px));
  opacity: 0;
}

.subttl.moved,
.h4_stg_spa_wrap.moved,
h3.moved,
h4.moved,
h5.moved,
.abus_p.moved,
.inviewelem.moved {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.cont_ttl {
  color: #8673ff;
  -webkit-transform: translateY(min(5vw, 20px));
          transform: translateY(min(5vw, 20px));
}

.cont_subttl {
  -webkit-transform: translateY(min(13vw, 52px));
          transform: translateY(min(13vw, 52px));
  opacity: 0;
}

.cont_ttl_wrap.moved .cont_ttl,
.cont_ttl_wrap.moved .cont_subttl {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.cont_txt {
  font-size: min(3.5vw, 16px);
  line-height: 200%;
  letter-spacing: min(0.2vw, 1.5px);
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}

.cont_crosstxt.move,
.cont_txt.move {
  -webkit-transition: all ease 500ms;
  transition: all ease 500ms;
  -webkit-transform: translateY(min(10vw, 40px));
          transform: translateY(min(10vw, 40px));
  opacity: 0;
}

.cont_crosstxt.moved,
.cont_txt.moved {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.page_ttl_wrap {
  padding-bottom: min(20vw, 54px);
}

.procus_fv_otr {
  padding-left: max(5%, (100vw - 1100px) / 2);
  background: rgb(209, 209, 209);
  background: linear-gradient(17deg, rgb(209, 209, 209) 0%, rgba(255, 255, 255, 0) 20%);
}

.procus_fv_wrap {
  padding-bottom: min(10.4vw, 130px);
}

.procus_h3 {
  font-size: min(6.5vw, 58px);
  line-height: 1;
  font-weight: 500;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

.br_fv_01 {
  display: none;
}

@media screen and (max-width: 1080px) {
  .procus_h3 {
    line-height: 1.5;
  }
  .br_fv_01 {
    display: inline-block;
  }
}
.procus_fv {
  margin-top: min(10.6666666667vw, 80px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 6.8%;
     -moz-column-gap: 6.8%;
          column-gap: 6.8%;
}

@media screen and (max-width: 640px) {
  .procus_fv {
    margin-top: 0;
  }
}
.procus_fv_txt {
  width: 37.2%;
}

.procus_h4 {
  padding-top: min(2.4vw, 90px);
  padding-bottom: min(13.3333333333vw, 33px);
  font-size: min(3.3vw, 35px);
  letter-spacing: min(0.2vw, 1.4px);
  color: #8573ff;
  line-height: 1.7714285714;
  font-weight: 500;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

.procus_fv .procus_p {
  font-size: min(3.5vw, 18px);
  line-height: 2.0555555556;
  letter-spacing: min(0.2vw, 1.35px);
}

.procus_fv_img {
  width: 56%;
}

@media screen and (max-width: 1275px) {
  .procus_fv {
    -webkit-column-gap: min(5.6vw, 105px);
       -moz-column-gap: min(5.6vw, 105px);
            column-gap: min(5.6vw, 105px);
  }
  .procus_fv_txt {
    width: 35.6%;
  }
  .procus_fv_img {
    width: 58.56%;
  }
}
@media screen and (max-width: 780px) {
  .procus_fv {
    -webkit-column-gap: min(5.6vw, 105px);
       -moz-column-gap: min(5.6vw, 105px);
            column-gap: min(5.6vw, 105px);
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .procus_fv_txt {
    width: 95%;
  }
  .procus_fv_img {
    width: 95%;
    margin-top: 30px;
  }
  .procus_h4 {
    padding-top: min(4.8vw, 90px);
    padding-bottom: min(2.6666666667vw, 33px);
    font-size: min(5.5vw, 35px);
    letter-spacing: min(0.2vw, 1.4px);
    color: #8573ff;
    line-height: 1.7714285714;
    font-weight: 500;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
  }
}
.abus_subttl {
  font-weight: bold;
  font-size: min(3.5vw, 18px);
  letter-spacing: min(0.2vw, 1.35px);
  color: #8573ff;
  margin-bottom: min(4vw, 30px);
  line-height: 1;
}

.h3_abus_sharettl {
  font-size: min(9vw, 60px);
  line-height: 1.3333333333;
  letter-spacing: min(0.2vw, 2.4px);
  font-weight: 500;
  line-height: 1;
}

.proino_avoid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 4.3636363636%;
     -moz-column-gap: 4.3636363636%;
          column-gap: 4.3636363636%;
  width: min(95%, 1100px);
}

.avoid_img {
  width: 42.7272727273%;
}

.avoid_txt {
  width: 52.9090909091%;
}

.h4_avoid {
  letter-spacing: min(0.2vw, 3.83px);
  font-size: 35px;
  font-size: min(3.7vw, 35px);
  line-height: 1;
  font-weight: normal;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-decoration-color: #000;
  text-underline-offset: min(2vw, 16px);
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

.avo_h4span {
  font-size: 51px;
  font-size: min(5vw, 51px);
  letter-spacing: min(0.2vw, 3.83px);
  color: #8573ff;
  font-weight: 500;
}

.h5_avoid {
  font-size: min(2.8vw, 21px);
  line-height: 1.8095238095;
  letter-spacing: min(0.2vw, 1.44px);
  margin-top: min(6.9066666667vw, 37px);
  font-weight: normal;
}

.avo_h5span {
  font-size: min(4vw, 32px);
  letter-spacing: min(0.2vw, 1.44px);
  font-weight: 500;
}

.p_avoid {
  font-size: min(3.5vw,18px);
  line-height: 31px;
    letter-spacing: min(0.05vw, 1.35px);
  margin-top: min(0.6666666667vw, 5px);
}

.br_avoid {
  display: none;
}

@media screen and (max-width: 1210px) {
  .br_avoid {
    display: inline-block;
  }
}
@media screen and (max-width: 780px) {
  .proino_avoid {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .avoid_img {
    width: 70%;
  }
  .avoid_txt {
    width: 100%;
    margin-top: min(6.6666666667vw, 50px);
  }
  .br_avoid {
    display: none;
  }
  .h4_avoid {
    font-size: min(5.5vw, 35px);
  }
  .avo_h4span {
    font-size: min(9vw, 51px);
  }
  .h5_avoid {
    font-size: min(4.5vw, 21px);
  }
  .avo_h5span {
    font-size: min(5.5vw, 32px);
  }
}
@media screen and (max-width: 640px) {
  .br_avoid {
    display: inline-block;
  }
}
.install {
  margin-top: min(10.6666666667vw, 80px);
  width: min(95%, 1100px);
}

.span_tag {
  font-size: min(4vw, 21px);
  text-align: center;
  padding: min(1.7333333333vw, 13px);
  color: #fff;
  font-weight: 500;
  width: min(39.2vw, 210px);
  line-height: 1;
  border-left: #c5c5c5 1px solid;
  border-top: #c5c5c5 1px solid;
  border-right: #c5c5c5 1px solid;
  display: block;
  background-color: #b8ade9;
}

.install_inr {
  border: #c5c5c5 1px solid;
  padding: min(5.1333333333vw, 55px) min(5.6vw, 28px);
}

.install_img_wrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 25px;
  place-items: center;
}

.install_img {
  width: min(100%, 330px);
}

.h3_abus_sharettl {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

.procus_feature {
  padding-top: min(16.5333333333vw, 124px);
  border-top: 1px solid #c5c5c5;
  width: min(95%, 1100px);
  padding-bottom: min(20vw, 150px);
}

.elem_feature_wrap {
  margin-top: min(9.6vw, 72px);
}

.elem_feature {
  width: min(100%, 1100px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: no-wrap;
      flex-wrap: no-wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  -webkit-column-gap: min(1.84vw, 23px);
     -moz-column-gap: min(1.84vw, 23px);
          column-gap: min(1.84vw, 23px);
  -webkit-column-gap: 2.0909090909%;
     -moz-column-gap: 2.0909090909%;
          column-gap: 2.0909090909%;
}

.elem_feature:not(:first-child) {
  margin-top: min(5.3333333333vw, 40px);
}

.fig_wrap {
  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;
  width: min(13.2vw, 55px);
  height: min(13.2vw, 55px);
  min-width: 55px;
  min-height: 55px;
  border: #8573ff solid 1px;
  border-radius: 50%;
}

.fig_feature {
  font-size: min(3.5vw,18px);
  line-height: 1;
  color: #8573ff;
  font-weight: 500;
}

.feature_txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 7.2549019608%;
     -moz-column-gap: 7.2549019608%;
          column-gap: 7.2549019608%;
  width: min(100%, 1020px);
}

.feature_inr {
  width: 60.3921568627%;
}

.elem_feature:nth-child(3) .feature_inr {
  width: 68.6274509804%;
}

.feature_img {
  width: 32.3529411765%;
}

@media screen and (max-width: 780px) {
  .feature_txt {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .feature_inr {
    width: 100%;
  }
  .elem_feature:nth-child(3) .feature_inr {
    width: 100%;
  }
  .feature_img {
    width: 100%;
    margin-top: 30px;
  }
  .elem_feature:first-child .feature_img {
    width: 60%;
    margin-top: 0;
  }
  .elem_feature:not(:first-child) {
    margin-top: min(8vw, 50px);
  }
  .elem_feature:nth-child(3) {
    margin-top: min(12vw, 50px);
  }
}
@media screen and (max-width: 414px) {
  .elem_feature:first-child .feature_img {
    width: 80%;
  }
}
.h4_feature {
  font-size: min(5.5vw, 26px);
  line-height: 1.7692307692;
  letter-spacing: min(0.2vw, 1.95px);
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-weight: 500;
}

.marker {
  text-decoration: underline;
  text-underline-offset: -1em;
  text-decoration-thickness: 1.2em;
  text-decoration-color: #f4ff73;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

.p_feature {
  font-size: min(3.5vw, 18px);
  line-height: 1.8333333333;
  letter-spacing: min(0.2vw, 1.35px);
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  margin-top: min(1.52vw, 19px);
}

.span_feature {
  color: #8573ff;
}

.procus_machines {
  width: min(90%, 1100px);
  margin-inline: auto;
  padding-top: 145px;
  padding-bottom: 200px;
  padding-top: min(19vw, 145px);
  padding-bottom: min(26vw, 200px);
}

.ino_deta {
  width: min(90%, 1100px);
  margin-inline: auto;
  padding-top: min(15vw, 113px);
  padding-bottom: min(23vw, 250px);
}

.h4_data {
  font-size: min(5.4vw, 36px);
  line-height: 1.5269444444;
  letter-spacing: min(0.2vw, 1.44px);
  font-weight: 500;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  margin-bottom: min(5.8666666667vw, 44px);
  position: relative;
  padding-left: min(8vw, 42px);
}

.h4_data::before {
  content: "";
  width: min(2vw, 12px);
  height: min(2vw, 12px);
  background-color: #8573ff;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  border-radius: 50%;
}

.ino_data_inr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 5.9090909091%;
     -moz-column-gap: 5.9090909091%;
          column-gap: 5.9090909091%;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}

.ino_data_L {
  width: 40%;
}

.ul_ino_deta {
  margin-top: 19px;
}

.li_ino_deta {
  font-size: min(3.5vw,17px);
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

.li_ino_deta + .li_ino_deta {
  margin-top: 8px;
}

.ino_data_img {
  width: 53.8181818182%;
}

.li_ino_deta:not(.ino_first) {
  padding-left: 36px;
}

@media screen and (max-width: 640px) {
  .ino_data_inr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 5.9090909091%;
       -moz-column-gap: 5.9090909091%;
            column-gap: 5.9090909091%;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .ino_data_L {
    width: 100%;
  }
  .ino_data_img {
    width: 100%;
    margin-top: 30px;
  }
}
.ino_first {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.ino_first::before {
  border-radius: 1.415px;
  content: "";
  height: 2.83px;
  width: 16px;
}

.ino_first::before {
  background: #c5c5c5;
  margin-right: 20px;
}

.conf_ex {
  margin-top: min(12vw, 150px);
  font-size: min(3.5vw, 23px);
}

.conf_ex_table {
  width: min(100%, 1100px);
  margin-inline: auto;
  margin-top: min(3.5vw, 30px);
}

.conf_ex_table,
.conf_ex_table td,
.conf_ex_table th {
  border: 2.8px solid #fff;
  border-collapse: collapse;
  padding: 18px 2px;
  text-align: center;
  font-size: min(3.5vw, 19px);
}

.conf_ex_table th {
  background-color: #b8ade9;
  color: #fff;
}

.conf_ex_table tr:not(:first-child) td:first-child {
  background-color: #f1effb;
}

.conf_ex_table tr td:first-child {
  border-right: #f1effb;
}

.conf_ex_table td:nth-child(2) {
  border-left: #f1effb;
}

.conf_ex_table tr:first-child th:first-child {
  border-right: #b8ade9;
}

.conf_ex_table tr:first-child th:nth-child(2) {
  border-left: #b8ade9;
}

.conf_ex_table td:nth-child(2),
.conf_ex_table td:nth-child(3) {
  background-color: #f7f7f7;
}

.procus_machines table {
  width: 100%;
  margin-top: min(8vw, 60px);
}

.procus_machines table,
.procus_machines td,
.procus_machines th {
  border: 1px solid #acacac;
  border-collapse: collapse;
}

.procus_machines td,
.procus_machines th {
  padding: min(2.24vw, 28px) min(1.76vw, 22px);
}

.procus_machines th {
  text-align: left;
  font-size: min(3.2vw, 20px);
  font-weight: 500;
  width: 40.9090909091%;
  line-height: 1;
  white-space: nowrap;
}

.procus_machines td {
  width: 48.7272727273%;
  line-height: 1;
  white-space: nowrap;
}

.procus_machines td:last-child {
  text-align: center;
  font-size: min(3.2vw, 20px);
  font-weight: 500;
  width: 10%;
}

.cstudy {
  background-color: #f1effb;
  padding-top: min(9.3333333333vw, 70px);
  padding-bottom: min(16.6666666667vw, 125px);
}

.cstudy_inr {
  width: min(90%, 1100px);
  margin-inline: auto;
}

.procus_ttl_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}

.cstudy_inr .link_btn {
  display: block;
  width: auto;
  text-align: center;
  padding: 0.85em 3%;
  font-size: min(3.5vw, 16px);
  font-weight: 500;
  border-radius: 2em;
  border: 1px solid rgb(134, 115, 255);
}

.cstudy_inr .milky_btn {
  background: rgb(255, 255, 255);
  color: #2d2d2d;
  border-color: #929292;
}

.cstudy_inr .qalink_inr .link_btn {
  width: 180px;
  position: static;
  right: 0;
  bottom: 0;
}

.cstudy_inr .link_btn:hover {
  color: #fff;
  background: rgb(134, 115, 255);
  border: 1px solid rgb(134, 115, 255);
}

.abus_subttl {
  margin-bottom: min(3.6vw, 27px);
}

.cstudy_inr .h3_abus_sharettl {
  font-size: min(6.5vw, 46px);
  line-height: 1.6739130435;
  letter-spacing: min(0.2vw, 3.45px);
  font-weight: 500;
  line-height: 1;
}

.cstudy_elem_otr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.cstudy_elem_wrap {
  margin-top: 46px;
  display: grid;
  grid-template-columns: 324px 324px 324px;
  gap: 64px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 1230px) {
  .cstudy_elem_wrap {
    grid-template-columns: 324px 324px;
  }
}
@media screen and (max-width: 800px) {
  .cstudy_elem_wrap {
    grid-template-columns: 324px;
  }
}
.cstudy_elem {
  width: 324px;
}

.ylocal {
  background: #ffffff;
  border-style: Solid;
  border-color: #b8ade9;
  border-width: 1px;
  width: 153px;
  height: 31px;
  border-radius: 16px;
  margin-top: 28px;
  margin-bottom: 2px;
  text-align: center;
  line-height: 1;
  padding: 7px 12px;
  display: block;
  color: #8573ff;
}

.p_products {
  font-size: min(4vw,23px);
  line-height: 57px;
  font-weight: 500;
}

.h5_ttl {
  font-size: min(3.5vw,18px);
  line-height: 32px;
  letter-spacing: 0.72px;
  font-weight: 500;
}

.p_tag {
  font-size: min(3.5vw,17px);
  line-height: 23px;
  letter-spacing: 1.27px;
  color: #808080;
  margin-top: 21px;
}

.flow {
  padding-top: min(18.6666666667vw, 140px);
  padding-bottom: min(20.2666666667vw, 152px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: min(9.0666666667vw, 170px);
     -moz-column-gap: min(9.0666666667vw, 170px);
          column-gap: min(9.0666666667vw, 170px);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  width: min(90%, 1100px);
  margin-inline: auto;
}

.flow_L {
  width: 336px;
}

.flow .h3_abus_sharettl {
  font-size: min(6vw, 39px);
  line-height: 1.5641025641;
  letter-spacing: min(0.2vw, 1.56px);
}

.flow .procus_p {
  margin-top: min(3.92vw, 21px);
}

.flow_img {
  width: 48.7272727273%;
}

@media screen and (max-width: 840px) {
  .flow {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .flow_L {
    width: 100%;
  }
  .flow_img {
    width: 70%;
    margin-top: 60px;
  }
}
@media screen and (max-width: 640px) {
  .flow {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .flow_L {
    width: 100%;
  }
  .flow_img {
    width: 100%;
    margin-top: 60px;
  }
}