@charset "UTF-8";
/* ==========================================================================//
//
// トップページ
//
// ========================================================================== */
/* 共通
---------------------------------------------------------- */
/* セクションタイトル */
.sec_ttl {
  text-align: center;
  color: #00A49E;
  font-weight: bold;
  font-size: 27px;
}
@media all and (min-width: 751px) {
  .sec_ttl {
    font-size: 35px;
  }
}
.sec_ttl span {
  position: relative;
  z-index: 1;
}
.sec_ttl span::before {
  position: absolute;
  content: "";
  bottom: -6px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
  height: 15px;
  background-color: #FFD770;
  z-index: -1;
}
@media all and (min-width: 751px) {
  .sec_ttl span::before {
    bottom: -8px;
    height: 20px;
    width: 120%;
  }
}

/* ctaボタン */
main .cta_btns {
  padding: 40px 0;
}
@media all and (min-width: 751px) {
  main .cta_btns {
    padding: 60px 40px;
  }
}
main .cta_btns ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 30px;
}
@media all and (min-width: 751px) {
  main .cta_btns ul {
    gap: 80px;
  }
}
@media all and (min-width: 751px) and (max-width: 1200px) {
  main .cta_btns ul {
    gap: 40px;
  }
}
main .cta_btns ul li {
  width: min(368px, 100%);
}
@media all and (min-width: 751px) {
  main .cta_btns ul li {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 360px;
    max-width: 470px;
  }
}
main .cta_btns ul li a {
  position: relative;
  display: block;
  font-weight: bold;
  text-align: center;
  font-size: 20px;
  border: 3px solid #FF6B6B;
  border-radius: 45px;
  -webkit-box-shadow: 3px 6px 4px rgba(195, 195, 195, 0.76);
          box-shadow: 3px 6px 4px rgba(195, 195, 195, 0.76);
  padding: 18px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  main .cta_btns ul li a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  main .cta_btns ul li a:hover {
    opacity: 0.6;
  }
}
@media all and (min-width: 751px) {
  main .cta_btns ul li a {
    font-size: 24px;
    padding: 25px;
  }
}
@media all and (min-width: 751px) and (max-width: 1200px) {
  main .cta_btns ul li a {
    font-size: 18px;
    padding: 22px;
  }
}
main .cta_btns ul li a::before {
  position: absolute;
  content: "";
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url(../images/common/arrow_02.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 1;
  width: 18px;
}
@media all and (min-width: 751px) {
  main .cta_btns ul li a::before {
    right: 24px;
    width: 20px;
  }
}
main .cta_btns ul li.trial a {
  color: #fff;
  background-color: #FF6B6B;
}
main .cta_btns ul li.trial a::before {
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}
main .cta_btns ul li.download a {
  color: #FF6B6B;
  background-color: #fff;
}

/* mv
---------------------------------------------------------- */
.mv {
  position: relative;
}
.mv .slide_item {
  position: relative;
}
.mv .slide_item .image {
  position: relative;
}
.mv .slide_item .image::before {
  position: absolute;
  content: "";
  inset: 0;
  background: rgba(51, 47, 47, 0.25);
}
.mv .slide_item .text_wrap {
  position: absolute;
  top: 50%;
  left: 10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: calc(100% - 20px);
}
@media all and (min-width: 751px) {
  .mv .slide_item .text_wrap {
    left: 7.4%;
  }
}
.mv .slide_item .catch {
  color: #fff;
  font-weight: 900;
  font-size: 6vw;
}
@media all and (min-width: 751px) {
  .mv .slide_item .catch {
    font-size: 3.125vw;
  }
}
.mv .slide_item .detail_wrap {
  background-color: rgba(255, 255, 255, 0.94);
  border-radius: 12px;
  padding: 14px 10px;
  margin-top: 24px;
}
@media all and (min-width: 751px) {
  .mv .slide_item .detail_wrap {
    padding: 14px 20px;
    margin-top: 36px;
  }
}
@media all and (min-width: 751px) and (max-width: 1200px) {
  .mv .slide_item .detail_wrap {
    margin-top: 14px;
  }
}
.mv .slide_item .heading {
  font-weight: bold;
  font-size: 16px;
}
@media all and (min-width: 751px) {
  .mv .slide_item .heading {
    font-size: 24px;
  }
}
@media all and (min-width: 751px) and (max-width: 1200px) {
  .mv .slide_item .heading {
    font-size: 2vw;
  }
}
.mv .slide_item .text {
  font-size: 12px;
}
@media all and (min-width: 751px) {
  .mv .slide_item .text {
    font-size: 16px;
    margin-top: 4px;
  }
}
@media all and (min-width: 751px) and (max-width: 1200px) {
  .mv .slide_item .text {
    font-size: 13px;
  }
}
.mv .splide__pagination {
  position: absolute;
  bottom: 16px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2px;
}
@media all and (min-width: 751px) {
  .mv .splide__pagination {
    gap: 7px;
  }
}
.mv .splide__pagination__page {
  display: block;
  width: 16px;
  height: 3px;
  background-color: #CFCFCF;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}
@media all and (min-width: 751px) {
  .mv .splide__pagination__page {
    width: 52px;
    height: 8px;
  }
}
.mv .splide__pagination__page.is-active {
  background-color: #fff;
}

/* news
---------------------------------------------------------- */
.news_pick {
  background-color: #F5F5F5;
  padding: 12px 0;
}
@media all and (min-width: 751px) {
  .news_pick {
    padding: 24px 0;
  }
}
.news_pick .news_item {
  font-size: 14px;
}
@media all and (min-width: 751px) {
  .news_pick .news_item {
    font-size: 16px;
  }
}
.news_pick .news_item a {
  color: #333333;
  text-decoration: underline;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .news_pick .news_item a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .news_pick .news_item a:hover {
    opacity: 0.6;
  }
}

/* こんな課題はありませんか
---------------------------------------------------------- */
.sec_issue {
  padding-top: 34px;
}
@media all and (min-width: 751px) {
  .sec_issue {
    padding-top: 70px;
  }
}
.sec_issue .link_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 17px;
  margin-top: 30px;
}
@media all and (min-width: 751px) {
  .sec_issue .link_list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 100px;
    margin-top: 80px;
  }
}
@media all and (min-width: 751px) and (max-width: 1220px) {
  .sec_issue .link_list {
    gap: 40px;
  }
}
.sec_issue .link_item {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.sec_issue .link_item a {
  position: relative;
  height: 100%;
  min-height: 55px;
  display: -ms-grid;
  display: grid;
  place-items: center;
  color: #00A49E;
  text-align: center;
  font-weight: bold;
  border: 2px solid #00A49E;
  border-radius: 3px;
  padding: 7px 34px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .sec_issue .link_item a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .sec_issue .link_item a:hover {
    opacity: 0.6;
  }
}
.sec_issue .link_item a::before {
  position: absolute;
  content: "";
  background-image: url(../images/common/arrow_01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 10/7;
  width: 10px;
  top: 50%;
  right: 18px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media all and (min-width: 751px) {
  .sec_issue .link_item a::before {
    right: 20px;
  }
}
.sec_issue .issue_body {
  background-color: #FFFBF5;
  padding: 20px 0;
  margin-top: 20px;
}
@media all and (min-width: 751px) {
  .sec_issue .issue_body {
    padding: 50px 0;
    margin-top: 50px;
  }
}
.sec_issue .issue_body .block:not(:last-child) {
  margin-bottom: 20px;
}
@media all and (min-width: 751px) {
  .sec_issue .issue_body .block:not(:last-child) {
    margin-bottom: 45px;
  }
}
.sec_issue .issue_body .block .block_ttl {
  color: #00A49E;
  font-size: 20px;
  margin-bottom: 13px;
}
@media all and (min-width: 751px) {
  .sec_issue .issue_body .block .block_ttl {
    font-size: 30px;
  }
}
.sec_issue .issue_body .block .block_lead {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 13px;
}
@media all and (min-width: 751px) {
  .sec_issue .issue_body .block .block_lead {
    margin-bottom: 20px;
  }
}
.sec_issue .issue_body .block .text {
  font-size: 14px;
  line-height: 1.8;
}
.sec_issue .issue_body .block .img_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 23px;
  margin-top: 20px;
}
@media all and (min-width: 751px) {
  .sec_issue .issue_body .block .img_list {
    gap: 30px;
    margin-top: 25px;
  }
}
.sec_issue .issue_body .block .img_item {
  width: 100%;
}
@media all and (min-width: 751px) {
  .sec_issue .issue_body .block .img_item {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    max-width: 555px;
  }
}
.sec_issue .issue_body .block .img_item .caption {
  text-align: left;
  font-size: 14px;
  margin-bottom: 5px;
}
.sec_issue .issue_body .block .img_item .image img {
  border: 1px solid #757575;
}
@media all and (min-width: 751px) {
  .sec_issue .issue_body .block .img_item.item01 {
    max-width: 522px;
  }
  .sec_issue .issue_body .block .img_item.item02 {
    max-width: 590px;
  }
  .sec_issue .issue_body .block .img_item.item04 {
    max-width: 338px;
  }
}

/* i-Palsの解決POINT
---------------------------------------------------------- */
.sec_point {
  padding-top: 10px;
}
@media all and (min-width: 751px) {
  .sec_point {
    padding-top: 20px;
  }
}
.sec_point .lead {
  font-weight: bold;
  font-size: 20px;
  margin-top: 20px;
}
@media all and (min-width: 751px) {
  .sec_point .lead {
    text-align: center;
    font-size: 20px;
    margin-top: 25px;
  }
}
.sec_point .point_list {
  counter-reset: number;
  margin-top: 90px;
}
@media all and (min-width: 751px) {
  .sec_point .point_list {
    margin-top: 40px;
  }
}
.sec_point .point_item {
  position: relative;
  counter-increment: number 1;
  background-color: #FFFBF5;
  border: 3px solid #F9D695;
  border-radius: 26px;
  padding: 72px 24px 30px;
}
@media all and (min-width: 751px) {
  .sec_point .point_item {
    padding: 40px 40px 34px 100px;
  }
}
.sec_point .point_item:not(:last-child) {
  margin-bottom: 100px;
}
@media all and (min-width: 751px) {
  .sec_point .point_item:not(:last-child) {
    margin-bottom: 15px;
  }
}
.sec_point .point_item .number {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -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;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  aspect-ratio: 1;
  width: 120px;
  background-color: #00A49E;
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  font-size: 22px;
  line-height: 1.2;
}
@media all and (min-width: 751px) {
  .sec_point .point_item .number {
    top: 50%;
    left: 0;
    width: 140px;
    font-size: 26px;
  }
}
.sec_point .point_item .number::after {
  content: counter(number, decimal-leading-zero);
}
@media all and (min-width: 751px) {
  .sec_point .point_item .wrap {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 190px 47px 1fr;
    grid-template-columns: 190px 1fr;
    -ms-grid-rows: auto 1fr;
    grid-template-rows: auto 1fr;
    -webkit-column-gap: 47px;
       -moz-column-gap: 47px;
            column-gap: 47px;
  }
  .sec_point .point_item .wrap > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .sec_point .point_item .wrap > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .sec_point .point_item .wrap > *:nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .sec_point .point_item .wrap > *:nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
  }
}
.sec_point .point_item .heading {
  text-align: center;
  font-size: 22px;
  margin-bottom: 14px;
}
@media all and (min-width: 751px) {
  .sec_point .point_item .heading {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
    text-align: left;
    margin-bottom: 26px;
  }
}
@media all and (max-width: 750px) {
  .sec_point .point_item .image {
    width: 160px;
    margin-inline: auto;
    margin-bottom: 26px;
  }
}
@media all and (min-width: 751px) {
  .sec_point .point_item .image {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row-span: 2;
    grid-row: span 2;
  }
}
@media all and (min-width: 751px) {
  .sec_point .point_item .list {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 2;
    grid-row: 2;
  }
}
.sec_point .point_item .list li {
  font-size: 17px;
  text-indent: -1.2em;
  padding-left: 1.2em;
}
@media all and (min-width: 751px) {
  .sec_point .point_item .list li {
    font-size: 20px;
  }
}
.sec_point .point_item .list li:not(:last-child) {
  margin-bottom: 16px;
}
@media all and (min-width: 751px) {
  .sec_point .point_item .list li:not(:last-child) {
    margin-bottom: 10px;
  }
}
.sec_point .point_shorten {
  background-color: #FFFBF5;
  padding: 25px 0 54px;
}
@media all and (min-width: 751px) {
  .sec_point .point_shorten {
    padding: 40px 0 75px;
  }
}
.sec_point .point_shorten .head_area {
  width: min(576px, 100%);
  background-color: #fff;
  border-radius: 16px;
  margin-inline: auto;
  padding: 14px 10px 17px;
}
@media all and (min-width: 751px) {
  .sec_point .point_shorten .head_area {
    padding: 17px 0 34px;
  }
}
.sec_point .point_shorten .head_area .copy {
  text-align: center;
  font-size: 14px;
  margin-bottom: 12px;
}
@media all and (min-width: 751px) {
  .sec_point .point_shorten .head_area .copy {
    font-size: 20px;
  }
}
.sec_point .point_shorten .head_area .copy > span {
  position: relative;
}
.sec_point .point_shorten .head_area .copy > span::before, .sec_point .point_shorten .head_area .copy > span::after {
  position: absolute;
  content: "";
  top: 50%;
  background-color: #FF6B6B;
  width: 1.5px;
  height: 2em;
}
.sec_point .point_shorten .head_area .copy > span::before {
  left: -30px;
  -webkit-transform: translateY(-50%) rotate(-40deg);
          transform: translateY(-50%) rotate(-40deg);
}
@media all and (min-width: 751px) {
  .sec_point .point_shorten .head_area .copy > span::before {
    left: -50px;
  }
}
.sec_point .point_shorten .head_area .copy > span::after {
  right: -30px;
  -webkit-transform: translateY(-50%) rotate(40deg);
          transform: translateY(-50%) rotate(40deg);
}
@media all and (min-width: 751px) {
  .sec_point .point_shorten .head_area .copy > span::after {
    right: -50px;
  }
}
.sec_point .point_shorten .head_area .copy .big {
  color: #fff;
  font-size: 1.2em;
  background-color: #FF6B6B;
}
.sec_point .point_shorten .head_area .text {
  text-align: center;
  font-size: 13px;
  line-height: 1.9;
}
@media all and (min-width: 751px) {
  .sec_point .point_shorten .head_area .text {
    font-size: 16px;
  }
}
.sec_point .point_shorten .head_area .text .red {
  color: #FF6B6B;
  font-weight: bold;
}
.sec_point .point_shorten .img_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 23px;
  margin-top: 28px;
}
@media all and (min-width: 751px) {
  .sec_point .point_shorten .img_list {
    gap: 30px;
    margin-top: 32px;
  }
}
.sec_point .point_shorten .img_item {
  width: 100%;
}
@media all and (min-width: 751px) {
  .sec_point .point_shorten .img_item {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    max-width: 555px;
  }
}
.sec_point .point_shorten .example {
  background-color: #fff;
  border: 3px solid #F9D695;
  border-radius: 26px;
  padding: 10px 10px 20px;
  margin-top: 30px;
}
@media all and (min-width: 751px) {
  .sec_point .point_shorten .example {
    padding: 30px 30px 50px;
    margin-top: 50px;
  }
}
.sec_point .point_shorten .example .example_ttl {
  font-size: 16px;
  margin-bottom: 10px;
}
@media all and (min-width: 751px) {
  .sec_point .point_shorten .example .example_ttl {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.sec_point .point_shorten .example .item:not(:last-child) {
  margin-bottom: 10px;
}
@media all and (min-width: 751px) {
  .sec_point .point_shorten .example .item:not(:last-child) {
    margin-bottom: 40px;
  }
}

/* 導入メリットを数値で見る
---------------------------------------------------------- */
.sec_simulate {
  background-color: #F5F5F5;
  padding: 50px 0;
}
@media all and (min-width: 751px) {
  .sec_simulate {
    padding: 40px 0;
  }
}
@media all and (min-width: 751px) {
  .sec_simulate .inner {
    max-width: 1086px;
  }
}
.sec_simulate .container {
  background-color: #fff;
  border: 1px solid #CFCFCF;
  border-radius: 20px;
  padding: 34px 24px;
  margin-top: 40px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container {
    padding: 30px 80px 50px;
    margin-top: 60px;
  }
}
@media screen and (min-width: 750px) and (max-width: 1196px) {
  .sec_simulate .container {
    padding: 30px 40px 40px;
  }
}
.sec_simulate .container .area_ttl {
  text-align: center;
  font-size: 22px;
  margin-bottom: 20px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .area_ttl {
    font-size: 30px;
  }
}
.sec_simulate .container .lead {
  text-align: center;
  margin-bottom: 20px;
}
.sec_simulate .container .simulate_form {
  margin-top: 20px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form {
    margin-top: 40px;
  }
}
.sec_simulate .container .simulate_form .input_area {
  width: min(612px, 100%);
  margin-inline: auto;
}
.sec_simulate .container .simulate_form .input_area .input_lead {
  font-size: 16px;
  margin-bottom: 10px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .input_area .input_lead {
    font-size: 18px;
  }
}
.sec_simulate .container .simulate_form .input_area .input_list {
  font-size: 16px;
  border: 1px solid #E2E2E2;
}
.sec_simulate .container .simulate_form .input_area .input_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .input_area .input_item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.sec_simulate .container .simulate_form .input_area .input_item:not(:last-child) {
  border-bottom: 1px solid #E2E2E2;
}
.sec_simulate .container .simulate_form .input_area .input_item .heading {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 18px;
  background-color: #7BD8D5;
  padding: 10px 25px;
}
.sec_simulate .container .simulate_form .input_area .input_item .content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 1em;
  padding: 10px 25px;
}
.sec_simulate .container .simulate_form .input_area .input_item .content input {
  width: 150px;
  font: inherit;
  border-radius: 3px;
  border: 1px solid #E2E2E2;
  padding: 4px 6px;
}
.sec_simulate .container .simulate_form .input_area .input_item .content input[type=number] {
  text-align: right;
}
.sec_simulate .container .simulate_form .input_area .input_item .content p {
  font-size: 0.88em;
}
.sec_simulate .container .simulate_form .input_area .error {
  display: none;
  text-align: center;
  color: #FF6B6B;
  font-size: 12px;
  margin-top: 15px;
}
.sec_simulate .container .simulate_form .input_area .btn_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  margin-top: 28px;
}
.sec_simulate .container .simulate_form .input_area .btn_wrap .reset_btn {
  width: min(135px, 100%);
  font-size: 18px;
  background-color: #fff;
  border: 1.5px solid #333333;
  border-radius: 6px;
  padding: 6px 10px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .sec_simulate .container .simulate_form .input_area .btn_wrap .reset_btn {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .sec_simulate .container .simulate_form .input_area .btn_wrap .reset_btn:hover {
    opacity: 0.6;
  }
}
.sec_simulate .container .simulate_form .input_area .btn_wrap .submit_btn {
  width: min(204px, 100%);
  font-weight: bold;
  font-size: 18px;
  color: #fff;
  background-color: #FF6B6B;
  border-radius: 6px;
  padding: 6px 10px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (hover: hover) {
  .sec_simulate .container .simulate_form .input_area .btn_wrap .submit_btn {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .sec_simulate .container .simulate_form .input_area .btn_wrap .submit_btn:hover {
    opacity: 0.6;
  }
}
.sec_simulate .container .simulate_form .input_area:has(input:invalid) .error {
  display: block;
}
.sec_simulate .container .simulate_form .result_area {
  margin-top: 40px;
}
.sec_simulate .container .simulate_form .result_area .result_ttl {
  text-align: center;
  font-size: 18px;
  margin-bottom: 24px;
}
.sec_simulate .container .simulate_form .result_area .result_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -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;
  row-gap: 10px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .result_area .result_item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 25px;
       -moz-column-gap: 25px;
            column-gap: 25px;
  }
}
.sec_simulate .container .simulate_form .result_area .result_item:not(:last-child) {
  margin-bottom: 18px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .result_area .result_item:not(:last-child) {
    margin-bottom: 8px;
  }
}
.sec_simulate .container .simulate_form .result_area .result_item .heading {
  font-size: 16px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .result_area .result_item .heading {
    max-width: 240px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    font-size: 18px;
  }
}
.sec_simulate .container .simulate_form .result_area .result_item .content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  font-weight: bold;
  text-align: right;
  font-size: 14px;
  background-color: #7BD8D5;
  border-radius: 6px;
  padding: 10px 16px;
}
@media all and (max-width: 750px) {
  .sec_simulate .container .simulate_form .result_area .result_item .content {
    width: min(237px, 100%);
  }
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .result_area .result_item .content {
    max-width: 237px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.sec_simulate .container .simulate_form .result_area .result_item .content input {
  width: 100%;
  text-align: right;
  font-size: 1.4em;
  background-color: transparent;
  margin-right: 10px;
}
.sec_simulate .container .simulate_form .result_area .note {
  text-align: center;
  font-size: 12px;
  margin-top: 28px;
}
.sec_simulate .container .simulate_form .detail_area {
  margin-top: 40px;
}
@media all and (max-width: 750px) {
  .sec_simulate .container .simulate_form .detail_area {
    margin-inline: -10px;
  }
}
.sec_simulate .container .simulate_form .detail_area .detalis_summary {
  text-align: center;
  color: #00A49E;
  font-size: 16px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .detail_area .detalis_summary {
    font-size: 18px;
  }
}
.sec_simulate .container .simulate_form .detail_area .detalis_summary span {
  position: relative;
}
.sec_simulate .container .simulate_form .detail_area .detalis_summary span::before, .sec_simulate .container .simulate_form .detail_area .detalis_summary span::after {
  position: absolute;
  content: "";
  top: 50%;
  right: -50px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 20px;
  height: 3px;
  background-color: #00A49E;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.sec_simulate .container .simulate_form .detail_area .detalis_summary span::after {
  -webkit-transform: translateY(-50%) rotate(-90deg);
          transform: translateY(-50%) rotate(-90deg);
}
.sec_simulate .container .simulate_form .detail_area[open] .detalis_summary span::after {
  -webkit-transform: translateY(-50%) rotate(-180deg);
          transform: translateY(-50%) rotate(-180deg);
}
.sec_simulate .container .simulate_form .detail_area .detalis_content {
  overflow: hidden;
}
.sec_simulate .container .simulate_form .detail_area .detalis_content_inner {
  margin-top: 34px;
}
.sec_simulate .container .simulate_form .detail_area .block {
  padding: 12px 10px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .detail_area .block {
    padding: 16px 32px;
  }
}
.sec_simulate .container .simulate_form .detail_area .block .block_ttl {
  color: #00A49E;
  font-size: 16px;
  margin-bottom: 14px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .detail_area .block .block_ttl {
    font-size: 18px;
  }
}
.sec_simulate .container .simulate_form .detail_area .block .note {
  text-indent: -1em;
  padding-left: 1em;
  margin-bottom: 16px;
}
.sec_simulate .container .simulate_form .detail_area .block .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media all and (min-width: 961px) {
  .sec_simulate .container .simulate_form .detail_area .block .item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
}
.sec_simulate .container .simulate_form .detail_area .block .item:not(:last-child) {
  margin-bottom: 15px;
}
.sec_simulate .container .simulate_form .detail_area .block .item .heading {
  max-width: 200px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 16px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .detail_area .block .item .heading {
    font-size: 18px;
  }
}
.sec_simulate .container .simulate_form .detail_area .block .item .content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 6px 6px;
  font-size: 15px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .detail_area .block .item .content {
    gap: 8px 15px;
    font-size: 18px;
  }
}
.sec_simulate .container .simulate_form .detail_area .block .item .content .col {
  width: calc((100% - (24px + 1.5em)) / 3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 6px;
  text-align: right;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .detail_area .block .item .content .col {
    width: calc((100% - (60px + 1.5em)) / 3);
  }
}
.sec_simulate .container .simulate_form .detail_area .block .item .content .col input {
  width: 100%;
  text-align: right;
  background-color: #E2E2E2;
  border-radius: 6px;
  padding: 12px 10px;
}
.sec_simulate .container .simulate_form .detail_area .block .item .content .col span {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: center;
}
.sec_simulate .container .simulate_form .detail_area .block .item .content .col.width_auto {
  width: auto;
}
.sec_simulate .container .simulate_form .detail_area .block.before {
  margin-bottom: 40px;
}
.sec_simulate .container .simulate_form .detail_area .block.after {
  background-color: #FFFBF5;
}
.sec_simulate .container .simulate_form .detail_area .block.after .item .content input {
  background-color: #fff;
}
.sec_simulate .container .simulate_form .detail_area .notes {
  margin-top: 20px;
}
@media all and (min-width: 751px) {
  .sec_simulate .container .simulate_form .detail_area .notes {
    margin-top: 24px;
  }
}
.sec_simulate .container .simulate_form .detail_area .notes p {
  font-size: 0.88em;
}
.sec_simulate .container .simulate_form .detail_area .notes p:not(:last-child) {
  margin-bottom: 0.5em;
}

/* 導入事例
---------------------------------------------------------- */
.sec_case {
  padding-bottom: 40px;
}
.sec_case .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 40px 60px;
  margin-top: 30px;
}
@media all and (min-width: 751px) {
  .sec_case .list {
    margin-top: 50px;
  }
}
.sec_case .item {
  width: min(300px, 100%);
}
.sec_case .item .image {
  aspect-ratio: 300/172;
  background-color: #fff;
  -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  padding: 12px 40px;
  margin-bottom: 25px;
}
.sec_case .item .ttl {
  text-align: center;
  font-size: 16px;
  margin-bottom: 10px;
}
@media all and (min-width: 751px) {
  .sec_case .item .ttl {
    font-size: 16px;
  }
}
.sec_case .item .text {
  line-height: 1.6;
}
@media all and (min-width: 751px) {
  .sec_case .item .text {
    font-size: 14px;
    line-height: 1.8;
  }
}

/* 他社比較
---------------------------------------------------------- */
.sec_compare {
  padding: 20px 0 40px;
}
@media all and (min-width: 751px) {
  .sec_compare {
    padding: 40px 0 90px;
  }
}
.sec_compare .table_wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-top: 40px;
}
@media all and (min-width: 751px) {
  .sec_compare .table_wrap {
    margin-top: 54px;
  }
}
.sec_compare .compare_table {
  width: 100%;
  min-width: 800px;
  border-collapse: collapse;
  table-layout: fixed;
}
.sec_compare .compare_table th,
.sec_compare .compare_table td {
  text-align: center;
  border: 1px solid #CFCFCF;
  padding: 10px;
}
@media all and (max-width: 1200px) {
  .sec_compare .compare_table th,
  .sec_compare .compare_table td {
    padding: 6px;
  }
}
.sec_compare .compare_table thead th {
  background-color: #00A49E;
  color: #fff;
  font-size: 20px;
  padding: 13px;
}
@media all and (max-width: 1200px) {
  .sec_compare .compare_table thead th {
    font-size: 16px;
  }
}
.sec_compare .compare_table tbody th {
  color: #333;
  text-align: left;
  font-weight: bold;
  font-size: 18px;
  background-color: #FFFBF5;
  padding: 10px 20px;
}
@media all and (max-width: 1200px) {
  .sec_compare .compare_table tbody th {
    font-size: 14px;
    padding: 6px 10px;
  }
}
.sec_compare .compare_table tbody td {
  font-size: 14px;
}
@media all and (max-width: 1200px) {
  .sec_compare .compare_table tbody td {
    font-size: 13px;
  }
}
@media all and (max-width: 750px) {
  .sec_compare .compare_table tbody td {
    font-size: 12px;
  }
}
.sec_compare .compare_table tbody td .icon {
  font-size: 1.42em;
}

/* 導入までの流れ
---------------------------------------------------------- */
.sec_flow {
  background-color: #FFFBF5;
  padding: 20px 0 40px;
}
@media all and (min-width: 751px) {
  .sec_flow {
    padding: 40px 0 90px;
  }
}
.sec_flow .flow_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -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;
  gap: 30px;
  margin-top: 40px;
}
@media all and (min-width: 751px) {
  .sec_flow .flow_list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 20px;
    margin-top: 60px;
  }
}
@media all and (min-width: 751px) and (max-width: 900px) {
  .sec_flow .flow_list {
    gap: 14px;
  }
}
.sec_flow .flow_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -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;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  aspect-ratio: 1;
  width: min(220px, 80%);
  background-color: #fff;
  border-radius: 50%;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  padding: 10px;
}
@media all and (min-width: 751px) {
  .sec_flow .flow_item {
    width: min(245px, 40%);
    min-width: 180px;
  }
}
.sec_flow .flow_item .heading {
  color: #00A49E;
  text-align: center;
  font-size: 16px;
  margin-bottom: 20px;
}
@media all and (min-width: 751px) {
  .sec_flow .flow_item .heading {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) and (max-width: 1196px) {
  .sec_flow .flow_item .heading {
    font-size: 16px;
  }
}
.sec_flow .flow_item .icon {
  width: min(80px, 50%);
}
@media all and (min-width: 751px) {
  .sec_flow .flow_item .icon {
    width: min(100px, 50%);
  }
}
@media screen and (min-width: 750px) and (max-width: 1196px) {
  .sec_flow .flow_item .icon {
    width: min(70px, 50%);
  }
}
.sec_flow .arrow {
  width: 44px;
}
@media all and (max-width: 750px) {
  .sec_flow .arrow {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}
@media all and (min-width: 751px) {
  .sec_flow .arrow {
    width: min(70px, 20%);
    min-width: 20px;
  }
}

/* 主な機能
---------------------------------------------------------- */
.sec_feature {
  padding: 40px 0;
}
@media all and (min-width: 751px) {
  .sec_feature {
    padding: 60px 0 120px;
  }
}
.sec_feature .figure {
  margin-top: 40px;
}
@media all and (max-width: 750px) {
  .sec_feature .figure {
    width: min(500px, 100%);
    margin-inline: auto;
  }
}