@charset "UTF-8";

.brd_t_b {
  border-bottom:1px solid #999;
  border-top:1px solid #999;
}

@media screen and (max-width: 560px) {
  .sp_w100per {
    width:70%;
    height:auto;
    margin:0 auto;
    display:block;
  }

  .brd_t_b {
    border:none;
  }
}


.l-mv {
  padding: 90px 0 0;
  img {
    width: 100%;
    height: auto;
  }
  .mv-title {
    margin: 0;
  }
}
@media screen and (max-width: 767px) {
  .l-mv {
    padding: 60px 20px 0;
  }
}

.l-pankuzu {
  &>.inner {
    margin: 10px auto 90px;
    text-align: left;
    font-size: 9px;
    color: #666666;
    height: 9px;
    letter-spacing: 0.1em;
    text-decoration: none;

    a {
      text-decoration: none;
      color: #666;
    }
  }
}
@media screen and (max-width: 767px) {
  .l-pankuzu {
    padding: 0 20px;
  }
}


.l-content-box {
  background-color: #fff;
  padding: 60px 0 90px;

  hr.redline {
    border-bottom: 3px solid #b96e70;
    margin: 0;
  }
  &>.inner {
    box-sizing: border-box;
    width: 980px;
    margin: 0 auto;
    .lead {
      position: relative;
      padding-bottom: 40px;
      &:after {
        content: '';
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 145px;
        height: 145px;
        background-image: url(../img/person_ideal_home_02.svg);
        background-size: contain;
        background-position: bottom left;
        background-repeat: no-repeat;
      }
      .headline1 {
        text-align: center;
        font-size: 21px;
        line-height: 1;
      }
      .box1 {
        width: 800px;
        margin: 40px auto 0;
        background-color: #c8c0b2;
        border-radius: 10px;
        padding: 40px 44px;
        position: relative;
        box-sizing: border-box;
        &:after {
          content: '';
          display: block;
          position: absolute;
          bottom: -10px;
          right: 0;
          width: 111px;
          height: 144px;
          background-image: url(../img/person_ideal_home_01.svg);
          background-size: contain;
          background-position: bottom right;
          background-repeat: no-repeat;
        }
        ul {
          display: flex;
          flex-wrap: wrap;
          padding: 0;
          margin: 0;
          list-style: none;
          li {
            padding-left: 1rem;
            width: 50%;
            font-size: 18px;
            line-height: 45px;
            box-sizing: border-box;
            position: relative;
            &:before {
              content: '○';
              display: block;
              position: absolute;
              top: 0;
              left: 0;
            }
          }
        }
      }
      .text1 {
        margin:0;
        margin-top: 40px;
        font-size: 19px;
        line-height: 33px;
        font-weight: 500;
        text-align: center;
      }
      .text2 {
        margin:0;
        margin-top: 20px;
        font-size: 30px;
        line-height: 52px;
        font-weight: 600;
        text-align: center;
      }

    }

    .points {
      padding-top: 80px;
      padding-bottom: 104px;
      .headline2 {
        background-color: #b96e70;
        font-size: 25px;
        line-height: 46px;
        border-radius: 5px;
        color: #fff;
        text-align: center;
        font-weight: 600;
        margin: 0;
      }
      ul {
        margin: 0;
        padding: 0;
        margin-top: 80px;
        li {
          display: flex;
          width: 100%;
          justify-content: space-between;
          align-items: center;
          &+li {
            margin-top: 17px;
          }
          img {
            width: 230px;
            height: auto;
          }
          .text-block {
            width: 660px;
            .point {
              font-size: 22px;
              font-weight: 700;
              color: #f7931e;
              line-height: 1;
              margin: 0;
            }
            .text {
              font-size: 20px;
              line-height: 35px;
              font-weight: 700;
              position: relative;
              z-index: 1;
              margin: 0;
              margin-top: 20px;
              b {
                font-weight: 700;
                position: relative;
                &:after {
                  content: '';
                  display: block;
                  position: absolute;
                  bottom: 2px;
                  left: 0;
                  width: 100%;
                  border-bottom: 5px solid #fbb03b;
                  z-index: -1;
                }
              }
            }
          }
        }
      }
    }
    .box2 {
      background-color: #ebe8e3;
      border-radius: 20px;
      padding: 50px 30px 70px;
      .headline3 {
        margin: 0;
        font-size: 25px;
        line-height: 44px;
        font-weight: 600;
        text-align: center;
      }
      ul {
        margin: 0;
        padding: 0;
        margin-top: 40px;
        display: flex;
        justify-content: space-between;
        list-style: none;
        li {
          width: 290px;
          img {
            width: 100%;
            height: auto;
          }
          .title {
            margin: 0;
            margin-top: 10px;
            font-size: 16px;
            font-weight: 600;
            text-align: center;
          }
        }
      }
      .point {
        margin-top: 27px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        .title {
          margin: 0;
          font-size: 25px;
          color: #fff;
          text-align: center;
          font-weight: 600;
          width: 170px;
          height: 42px;
          line-height: 42px;
          background-color: #b96e70;
        }
        .text {
          margin: 0;
          width: calc(100% - 190px);
          font-size: 18px;
          line-height: 26px;
        }
      }
    }
    .mieruka {
      padding-top: 109px;
      .headline4 {
        font-size: 30px;
        line-height: 52px;
        text-align: center;
        font-weight: 600;
      }
      .mieruka-wrapper {
        margin-top: 75px;
        display: flex;
        justify-content: space-between;
        img {
          width: 476px;
        }
        .text {
          margin: 0;
          width: 440px;
          font-size: 16px;
          line-height: 28px;
          text-align: justify;
        }
      }
    }
    .examples {
      padding-top: 110px;
      padding-bottom: 96px;
      .headline5 {
        margin: 0;
        font-size: 25px;
        line-height: 1;
        font-weight: 600;
        text-align: center;
      }
      ul.examples-list {
        margin: 0;
        margin-top: 50px;
        padding: 0;
        list-style: none;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: inherit 36px;
        li.examples-item {
          width: 216px;
          img {
            width: 100%;
            height: auto;
          }
        }
      }
    }
    .flow {
      padding-top: 90px;
      .headline5 {
        margin: 0;
        font-size: 25px;
        line-height: 1;
        font-weight: 600;
        text-align: center;
      }
      dl {
        display: flex;
        flex-wrap: wrap;
        margin: 0;
        margin-top: 30px;
        dt {
          margin: 0;
          margin-top: 48px;
          width: 295px;
          display: flex;
          align-items: center;
          justify-content: center;
          text-align: center;
          font-size: 20px;
          line-height: 23px;
          color: #fff;
          background-color: #928267;
          box-sizing: border-box;
          position: relative;
          &:nth-of-type(1) {
            margin-top: 0;
            &:before {
              content: none;
            }
          }
          &:before {
            content: '';
            display: block;
            position: absolute;
            top: -33px;
            left: 50%;
            transform: translate(-50%, 0);
            border-top: 24px solid #c8c0b2;
            border-right: 26px solid transparent;
            border-left: 26px solid transparent;
          }
        }
        dd {
          margin: 0;
          margin-top: 48px;
          width: calc(100% - 295px);
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          justify-content: center;
          font-size: 16px;
          line-height: 23px;
          padding: 10px 15px;
          background-color: #ebe8e3;
          box-sizing: border-box;
          position: relative;
          text-align: justify;
          &:nth-of-type(1) {
            margin-top: 0;
          }
          .caution {
            margin: 0;
            font-size: 14px;
          }
          .free {
            margin: 0;
            position: absolute;
            width: 100%;
            height: 32px;
            line-height: 32px;
            font-size: 14px;
            font-weight: 600;
            color: #fff;
            text-align: center;
            bottom: -40px;
            left: 0;
            background-color: #b96e70;
            &:before {
              content: '';
              display: block;
              position: absolute;
              top: -8px;
              left: 50%;
              transform: translate(-50%, 0);
              border-bottom: 10px solid #b96e70;
              border-right: 11px solid transparent;
              border-left: 11px solid transparent;
            }
          }
        }
      }
      &>.caution {
        margin-top: 85px;
        font-size: 16px;
        line-height: 28px;
        text-align: center;
      }
      .buttons {
        margin-top: 32px;
        a.line {
          margin: 0 auto;
          width: 300px;
          height: 60px;
          line-height: 60px;
          border-radius: 40px;
          background-color: #06c755;
          display: block;
          color: #fff;
          font-size: 16px;
          font-weight: 600;
          text-align: center;
          padding: 0 0 0 54px;
          position: relative;
          box-sizing: border-box;
          &:before {
            content: '';
            display: block;
            width: 40px;
            height: 100%;
            background-image: url(../img/icon_line.svg);
            background-size: contain;
            background-position: center center;
            background-repeat: no-repeat;
            position: absolute;
            top: 0;
            left: 13px;
          }
        }
      }
    }

  }
}


@media screen and (max-width: 767px) {
  .l-content-box {
    padding: 40px 0 50px;

    hr.redline {
      border-bottom: 3px solid #b96e70;
      margin: 0;
    }
    &>.inner {
      width: 100%;
      padding: 0 20px;
      .lead {
        padding-bottom: 180px;
        &:after {
          bottom: 0;
          left: 50%;
          transform: translate(-50%, 0);
          width: 145px;
          height: 145px;
          background-position: bottom center;
        }
        .headline1 {
          font-size: 18px;
          line-height: 32px;
        }
        .box1 {
          width: 100%;
          margin: 30px auto 0;
          border-radius: 10px;
          padding: 20px 20px 134px;
          &:after {
            bottom: -20px;
            right: 20px;
            width: 111px;
            height: 144px;
            background-position: bottom center;
          }
          ul {
            list-style: none;
            li {
              width: 100%;
              font-size: 18px;
              line-height: 32px;
              padding-left: 1.5rem;
            }
          }
        }
        .text1 {
          margin-top: 50px;
          font-size: 18px;
          line-height: 32px;
        }
        .text2 {
          margin-top: 20px;
          font-size: 22px;
          line-height: 38px;
        }

      }

      .points {
        padding: 63px 0 63px;
        .headline2 {
          font-size: 22px;
          line-height: 46px;
          border-radius: 5px;
        }
        ul {
          margin-top: 43px;
          li {
            flex-wrap: wrap;
            gap: 20px;
            &+li {
              margin-top: 46px;
            }
            img {
              width: 100%;
              height: auto;
            }
            .text-block {
              width: 100%;
              .point {
                font-size: 22px;
                line-height: 1;
              }
              .text {
                font-size: 18px;
                line-height: 32px;
                margin-top: 16px;
                b {
                  font-weight: 700;
                  position: relative;
                  &:after {
                    bottom: 1px;
                  }
                }
              }
            }
          }
        }
      }
      .box2 {
        padding: 20px 20px 50px;
        .headline3 {
          margin: 0;
          font-size: 22px;
          line-height: 38px;
        }
        ul {
          margin-top: 20px;
          flex-wrap: wrap;
          gap: 10px;
          li {
            width: 100%;
            img {
              width: 100%;
              height: auto;
            }
            .title {
              margin: 0;
              margin-top: 10px;
              font-size: 16px;
              font-weight: 600;
              text-align: center;
            }
          }
        }
        .point {
          margin-top: 30px;
          flex-direction: column;
          align-items: center;
          .title {
            font-size: 25px;
            width: 170px;
            height: 42px;
            line-height: 42px;
          }
          .text {
            margin-top: 20px;
            width: 100%;
            font-size: 15px;
            line-height: 26px;
            text-align: justify;
          }
        }
      }
      .mieruka {
        padding-top: 80px;
        .headline4 {
          font-size: 22px;
          line-height: 38px;
        }
        .mieruka-wrapper {
          margin-top: 55px;
          flex-wrap: wrap;
          img {
            width: 100%;
          }
          .text {
            margin-top: 36px;
            width: 100%;
            font-size: 16px;
            line-height: 28px;
          }
        }
      }
      .examples {
        padding-top: 96px;
        padding-bottom: 80px;
        .headline5 {
          font-size: 22px;
          line-height: 38px;
        }
        ul.examples-list {
          margin-top: 30px;
          display: block;
          li.exmaples-item {
            width: 100%;
            img {
              width: 100%;
              height: auto;
            }
          }
        }
        .slick-dots {
          li {
            &.slick-active {
              button:before {
                background-color: #000;
              }
            }
            button:before {
              content: '';
              width: 8px;
              height: 8px;
              border-radius: 50%;
              position: absolute;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              background-color: #999999;
              opacity: 1;
            }
          }
        }
      }
      .flow {
        padding-top: 70px;
        .headline5 {
          font-size: 22px;
          line-height: 38px;
        }
        dl {
          display: flex;
          flex-wrap: wrap;
          margin-top: 30px;
          dt {
            margin-top: 48px;
            width: 100%;
            display: flex;
            font-size: 18px;
            line-height: 32px;
            &:nth-of-type(1) {
              margin-top: 0;
              &:before {
                content: none;
              }
            }
            &:before {
              top: -33px;
              left: 50%;
              transform: translate(-50%, 0);
              border-top: 24px solid #c8c0b2;
              border-right: 26px solid transparent;
              border-left: 26px solid transparent;
            }
          }
          dd {
            margin-top: 0;
            width: 100%;
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            justify-content: center;
            font-size: 15px;
            line-height: 26px;
            padding: 10px 20px;
            &:nth-of-type(1) {
              margin-top: 0;
            }
            &:has(.free) {
              &+dt {
                margin-top: 90px;
              }
            }
            .caution {
              margin: 0;
              font-size: 13px;
            }
            .free {
              width: 100%;
              height: 32px;
              line-height: 32px;
              font-size: 14px;
              font-weight: 600;
              bottom: -46px;
              left: 0;
              &:before {
                top: -8px;
                left: 50%;
                transform: translate(-50%, 0);
                border-bottom: 10px solid #b96e70;
                border-right: 11px solid transparent;
                border-left: 11px solid transparent;
              }
            }
          }
        }
        &>.caution {
          margin-top: 50px;
          font-size: 16px;
          line-height: 28px;
        }
        .buttons {
          margin-top: 32px;
          a.line {
            width: 100%;
            height: 60px;
            line-height: 60px;
            border-radius: 40px;
            font-size: 15px;
            &:before {
              width: 40px;
              height: 100%;
              top: 0;
              left: 13px;
            }
          }
        }
      }

    }
  }
}

