@charset "utf-8";
.fs-30 {
  font-size: 30px;
}

.fs-45 {
  font-size: 45px;
}

.bold {
  font-weight: bold;
}

.pink {
  color: #ef646b;
}
.main section p:not(:last-child) {
  margin-bottom: 0;
}
.heading4 {
  color: #fa657a;
  font-size: 24px;
  font-weight: 700;
  line-height: 30px;
  margin-bottom: 24px;
}

/* hero_block */
#hero_block .heading3 {
  text-align: center;
  color: #ef646b;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ",
    "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN",
    "Hiragino Kaku Gothic Pro", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: bold;
  border-bottom: none;
  position: relative;
  padding-bottom: 0;
}

#hero_block .heading3:before,
#hero_block .heading3:after {
  position: absolute;
  content: "";
  border-bottom: 2px solid #ef646b;
  width: 58px;
  height: 1px;
  top: 50%;
  transform: translateY(-50%);
}

#hero_block .heading3:before {
  left: 0;
}

#hero_block .heading3:after {
  right: 0;
}

#hero_block .wrap-inner {
  margin: 16px auto;
  padding: 24px;
  background-color: #fff;
  border: 1px solid #fe9d9d;
}
/* hタグ問題で修正 h5→h3 */
#hero_block .wrap-inner h3 {
  color: var(---text-pink400, #fa657a);
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  margin-bottom: 8px;
  margin-top: 0;
}
#hero_block .wrap-inner .list-fda {
  line-height: 30px;
  font-weight: 300;
}

/* trouble_block */
#trouble_block .trouble-wrap {
  background-color: #f6f6f6;
  padding: 40px;
  max-width: 100%;
}
#trouble_block .trouble-wrap-items {
  display: flex;
  flex-direction: row;
  column-gap: 24px;
  row-gap: 20px;
  flex-wrap: wrap;
  justify-content: space-between;
}
#trouble_block .trouble-wrap-items li {
  font-size: 16px;
  font-weight: 400;
  line-height: 170%;
  position: relative;
  list-style: none;
  padding-left: 1.5em;
  margin: 0;
  width: calc(50% - 36px);
}
#trouble_block .trouble-wrap-items li::before {
  content: "";
  width: 18px;
  height: 18px;
  position: absolute;
  left: 0;
  top: 4px;
  background: url(../../../../assets/img/operation/icon-trouble-dot.png)
    no-repeat top/cover;
}

/* trouble_block */
#effect_block .effect-wrap {
  max-width: 100%;
}
#effect_block .effect-wrap-items {
  display: flex;
  flex-direction: row;
  gap: 20px;
  flex-wrap: wrap;
  justify-content: space-between;
}
#effect_block .effect-wrap-items li {
  background-color: #f6f6f6;
  padding: 8px 16px 8px 52px;
  font-size: 20px;
  font-weight: 300;
  line-height: 130%;
  position: relative;
  list-style: none;
  margin: 0;
  min-height: 58px;
  align-items: center;
  display: flex;
  width: calc(50% - 78px);
}
#effect_block .effect-wrap-items li::before {
  content: "";
  width: 24px;
  height: 24px;
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  background: url(../../../../assets/img/operation/icon-trouble-check.png)
    no-repeat top/cover;
}

/* case_block */
#case_block .case__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px 0;
  list-style: none;
  max-width: 618px;
  margin: 0 auto 24px;
}

#case_block .case__item {
  margin-left: 0;
  text-align: center;
}

#case_block .case__item-text {
  font-weight: bold;
  margin-top: 3px;
  line-height: 1.3;
}

#case_block .case__vovlift {
  background-color: #F6F6F6;
  width: 650px;
  margin: 0 auto;
  padding: 24px;
}

#case_block .case__vovlift-title {
  color: #FA657A;
  font-size: 14px;
  line-height: 1.3;
  font-weight: bold;
  margin-bottom: 16px;
}

#case_block .case__vovlift-list {
  list-style: none;
}

#case_block .case__vovlift-item {
  margin-left: 0;
  display: flex;
}

#case_block .case__vovlift-item + .case__vovlift-item {
  margin-top: 3px;
}

#case_block .case__vovlift-label {
  font-weight: bold;
  font-size: 14px;
  white-space: nowrap;
  margin-bottom: 0;
}

#case_block .case__vovlift-text {
  font-size: 14px;
  margin-left: 4px;
}





#case_block .case__list.p-column {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
#case_block .case__item {
  margin: 0;
}
#case_block .case__operation-detail-label {
  margin-bottom: 4px;
}
#case_block .case__operation-detail {
  margin-bottom: 56px;
}
.case__operation-detail-list:not(:first-of-type) {
  margin-top: 16px;
}
#case_block .case__operation-detail-list {
  list-style: none;
  padding: 40px;
  background: #f5f5f5;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
#case_block .case__item-img.w-425 {
  max-width: 425px;
  width: 100%;
  display: block;
  margin: 0 auto 8px;
}
#case_block .case__operation-detail-item {
  font-size: 14px;
  line-height: 21px;
  margin: 0;
}

#case_block .case__item-text {
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  line-height: 130%;
}
#case_block .compare-heading {
  color: #fa657a;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  line-height: 30px;
  width: fit-content;
  margin: 64px auto 20px;
  position: relative;
}
#case_block .compare-heading::before {
  content: "";
  width: 25px;
  height: 38px;
  position: absolute;
  left: -32px;
  bottom: -2px;
  background: url(../../../../assets/img/operation/icon-viceline-left.png)
    no-repeat top/cover;
}
#case_block .compare-heading::after {
  content: "";
  width: 25px;
  height: 38px;
  position: absolute;
  right: -32px;
  bottom: -2px;
  background: url(../../../../assets/img/operation/icon-viceline-right.png)
    no-repeat top/cover;
}

@media (max-width: 599px) {
  #case_block .case__vovlift {
    width: 100%;
  }
  #case_block .case__operation-detail-list {
    padding: 24px;
  }
}

/* features_block */
#features_block {
  counter-reset: feature-num;
}
.about__feature-block {
  margin-bottom: 80px;
  counter-increment: feature-num;
}
h4.about__features-title {
  position: relative;
  padding-left: 56px;
  min-height: 48px;
  display: flex;
  align-items: center;
  color: #FA657A;
  font-weight: bold;
  font-size: 24px;
  margin-bottom: 24px;
}
h4.about__features-title::before {
  content: counter(feature-num, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #FA657A;
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
#features_block .about__maintext {
  margin-bottom: 40px;
}
.about__feature-detail-item {
  background-color: #FCF4F5;
  padding: 24px;
  margin: 24px 0 40px;
}
#features_block .about__detail-text {
  margin: 24px 0;
  padding-left: 0;
}
#features_block .about__detail-text li {
  position: relative;
  padding-left: 16px;
  list-style: none;
  margin-bottom: 24px;
}
#features_block .about__detail-text li:last-of-type {
  margin: 24px 0;
}
#features_block .about__detail-text li:before {
  content: "";
  position: absolute;
  background: #FE9D9D;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  top: 9px;
  left: 0;
}
#features_block .about__disassembles-img {
  width: 100%;
  height: auto;
}

@media only screen and (max-width: 768px) {
#features_block .about__disassembles-img {
  width: 100%;
  overflow: scroll;
}
#features_block .about__disassembles-img img {
  min-width: 690px;
  height: auto;
}
}


/* position_block */
#position_block .compare-heading {
  color: #fa657a;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  line-height: 30px;
  width: fit-content;
  margin: 64px auto 20px;
  position: relative;
}
#position_block .compare-heading::before {
  content: "";
  width: 25px;
  height: 38px;
  position: absolute;
  left: -32px;
  bottom: -2px;
  background: url(../../../../assets/img/operation/icon-viceline-left.png)
    no-repeat top/cover;
}
#position_block .compare-heading::after {
  content: "";
  width: 25px;
  height: 38px;
  position: absolute;
  right: -32px;
  bottom: -2px;
  background: url(../../../../assets/img/operation/icon-viceline-right.png)
    no-repeat top/cover;
}
#position_block .compare-heading.sp {
  display: none;
}
/* sperb_block */
#sperb_block .wrap-sperb-beem {
  display: flex;
  flex-direction: row-reverse;
  gap: 12px;
}
#sperb_block .wrap-sperb-beem p {
  font-weight: 500;
  line-height: 30px;
}
#sperb_block .wrap-sperb-beem img {
  width: 50%;
  max-width: 363px;
  height: auto;
}

/* safe_block */
.safe-reason-points {
  display: flex;
  flex-direction: column;
  gap: 48px;
  list-style: none;
  margin-top: 64px;
  margin-bottom: 160px;
}
.safe-reason-points li {
  margin: 0 !important;
  position: relative;
}
.safe-reason-points li::before {
  position: absolute;
  content: "";
  width: 154.148px;
  height: 53px;
  display: block;
  top: -39px;
  left: 8px;
}
.safe-reason-points li.item-01::before {
  background: url(../../../../assets/img/operation/icon-reason-point01.png)
    no-repeat top/cover;
}
.safe-reason-points li.item-02::before {
  background: url(../../../../assets/img/operation/icon-reason-point02.png)
    no-repeat top/cover;
}
.safe-reason-points li.item-03::before {
  background: url(../../../../assets/img/operation/icon-reason-point03.png)
    no-repeat top/cover;
}
.safe-reason-points li.item-04::before {
  background: url(../../../../assets/img/operation/icon-reason-point04.png)
    no-repeat top/cover;
}
.safe-reason-points .point-heading {
  display: flex;
  padding: 24px;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 16px;
  align-self: stretch;
  margin: 0;
  border-top: 1px solid #fe9d9d;
  border-right: 1px solid #fe9d9d;
  border-left: 1px solid #fe9d9d;
  background: #fef5f3;
  font-size: 20px;
  font-weight: 700;
  line-height: 130%;
}
.safe-reason-points li p,
.safe-reason-points li .inner-item {
  border: 1px solid #fe9d9d;
  border-top: none;
  background: #fff;
  padding: 16px 24px 24px;
  font-size: 16px;
  font-weight: 500;
  line-height: 30px;
}
.safe-reason-points li .inner-item {
  display: flex;
  flex-direction: column;
}
.safe-reason-points li .inner-item dt {
  font-size: 18px;
  font-weight: 700;
  line-height: 130%;
  padding-left: 36px;
  position: relative;
  margin-bottom: 8px;
}
.safe-reason-points li .inner-item dt::before {
  position: absolute;
  content: "";
  width: 1lh;
  height: 1lh;
  display: block;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: url(../../../../assets/img/operation/icon-circle-check.svg)
    no-repeat top/cover;
}
.safe-reason-points li .inner-item dd {
  font-size: 16px;
  font-weight: 500;
  line-height: 30px;
}
.safe-reason-points li .inner-item dd:not(:last-of-type) {
  border-bottom: 1px dashed #fe9d9d;
  margin-bottom: 20px;
  padding-bottom: 16px;
}

.irradiated-light img {
  margin-top: 24px;
}

/* monitoring_block */
#monitoring_block .wrap-monitoring {
  display: flex;
  flex-direction: row-reverse;
  gap: 12px;
  justify-content: space-between;
}
#monitoring_block .wrap-monitoring img {
  width: 363px;
  height: 242px;
}

/* popular_block */
#popular_block .popular-wrap-items {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
#popular_block .popular-wrap-items li {
  list-style: none;
  width: calc(50% - 8px);
  padding: 24px;
  border: 1px solid #fe9d9d;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  margin: 0;
  font-size: 16px;
  font-weight: 500;
  line-height: 30px;
}
#popular_block .popular-wrap-items li img {
  width: 100px;
  height: 100px;
  padding: 26px 25.5px 26px 26.5px;
  margin: 0 auto;
  display: block;
}
/* hタグ問題で修正 h4→h3 */
#popular_block .popular-wrap-items li h3 {
  color: #fa657a;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 130%;
}

/* flow_block */
#flow_block .flow-sofwave {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
#flow_block .flow-sofwave li {
  list-style: none;
  margin: 0;
  font-size: 16px;
  font-weight: 500;
  line-height: 30px;
}
#flow_block .flow-sofwave li h3 {
  color: #fe9d9d;
  font-size: 18px;
  font-weight: 700;
  line-height: 130%;
  padding-bottom: 8px;
}

/* application_block */
#application_block img {
  width: 750px;
  height: auto;
  margin: 0 auto;
}

.main__section3 .heading3 svg {
  display: none !important;
}

@media only screen and (max-width: 1200px) {
  /* hero_block */
  #hero_block .heading3:before,
  #hero_block .heading3:after {
    width: 20vw;
  }
}

@media only screen and (max-width: 599px) {
  .mgb96 {
    margin-bottom: 80px;
  }
  .heading4 {
    font-size: 20px;
    font-weight: 600;
    line-height: 28px;
  }

  /* 	hero_block */
  #hero_block .heading3 {
    text-align: left;
    margin-bottom: 24px;
  }

  #hero_block .heading3:before,
  #hero_block .heading3:after {
    display: none;
  }

  #hero_block .hero__bg_block {
    padding: 0px 16px 24px;
    margin-top: 8px;
  }

  #trouble_block .trouble-wrap-items {
    flex-direction: column;
    gap: 12px;
  }
  #trouble_block .trouble-wrap-items li {
    width: 100%;
  }
  #effect_block .effect-wrap-items {
    flex-direction: column;
    gap: 12px;
  }
  #effect_block .effect-wrap-items li {
    width: 100%;
  }

  /* about_block */
  #position_block .compare-heading.pc {
    display: none;
  }
  #position_block .compare-heading.sp {
    display: block;
  }

  #position_block .js-scrollable {
    overflow: scroll;
  }
  #position_block .js-scrollable img {
    min-width: 750px;
    min-height: 459px;
    height: auto;
  }
  #sperb_block .wrap-sperb-beem {
    flex-direction: column;
  }
  #sperb_block .wrap-sperb-beem img {
    width: 100%;
    max-width: 100%;
  }
  .safe-reason-points {
    margin-bottom: 80px;
  }
  .safe-reason-points .point-heading {
    font-weight: 600;
  }
  #monitoring_block .wrap-monitoring {
    flex-direction: column;
    gap: 8px;
  }
  #monitoring_block .wrap-monitoring img {
    width: 100%;
    max-width: 100%;
  }
  #popular_block .popular-wrap-items {
    flex-direction: column;
  }
  #popular_block .popular-wrap-items li {
    width: 100%;
  }
  #popular_block .popular-wrap-items .item-heading {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 8px;
  }
  #popular_block .popular-wrap-items li img {
    display: block;
    width: 110px;
    height: 110px;
    padding: 5px 4.5px 5px 5.5px;
    margin: 0;
  }
  #application_block img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
    max-width: 345px;
  }
  .for-pc {
    display: none !important;
  }

  .for-sp {
    display: block !important;
  }
}

@media screen and (min-width: 600px) {
  .for-pc {
    display: block !important;
  }

  .for-sp {
    display: none !important;
  }

  #adapt_block .adapt__skin-title--sp,
  #adapt_block .adapt__skin-list--sp {
    display: none;
  }
}
