@charset "UTF-8";

/*  1: GLOBAL SETTING
=========================================================================== */

/* BASE */
html {
  font-size: 62.5%;
  line-height: 1.7;
  overflow-y: scroll;
  scroll-behavior: smooth;
}

body {
  min-width: 1100px;
  margin: 0;
  padding: 0;
  background-color: #ffffff;
  color: #222222;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Meiryo,
    "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,
    "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: 1.6rem;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

/*@media (max-width: 750px) {
  html {
    line-height: 1.6;
  }

  body {
    max-width: 100%;
    min-width: 320px;
    overflow: hidden;
  }
}*/

/* TEXT
--------------------------------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  line-height: 1.3;
  font-weight: bold;
}

.fee_plan h2 {
  font-size: 3.2rem;
}

.company_profile h2 {
  font-size: 3.2rem;
}

h3 {
  font-size: 1.8rem;
}

h4,
h5,
h6 {
  font-size: 1.4rem;
}

p {
  margin: 0;
  line-height: 1.75;
}

.descript {
  padding: 3.7rem 0;
}

.intro_head .descript {
  padding: 2.5rem 0 2rem;
  text-align: center;
}

.nml_txt {
  font-size: 1.4rem;
  text-align: left;
}

ul,
ol {
  margin: 0;
  padding: 0;
}

li {
  list-style: none;
}

@media (max-width: 750px) {
  h2 {
    font-size: 2.4rem;
  }

  .fee_plan h2 {
    font-size: 2.4rem;
  }

  .company_profile h2 {
    font-size: 2.4rem;
  }

  h3 {
    font-size: 1.8rem;
  }

  .intro_head .descript {
    padding: 2.5vw 0 2vw;
  }

  .introduction .introduction_area .descript {
    padding: 3vw 0;
  }

  .nml_txt {
    font-size: 1.4rem;
    line-height: 1.5;
  }

  .descript {
    margin: 0 auto;
    padding: 3.7vw 0 4.2vw;
    text-align: left;
    line-height: 1.6;
  }

  .descript br:not(:nth-child(2)) {
    display: none;
  }
}

#idchange #line2 {
  height: 100px;
  display: flex;
  align-items: center;
}

#table-bordered {
  margin-top: 12px;
  margin-bottom: 12px;
}

#table-bordered tbody td {
  white-space: nowrap;
}

.text-note-no {
  padding-left: 0px;
  margin: 1rem 0px;
  list-style: none;
}

.text-note-no>li {
  position: relative;
  counter-increment: num;
  padding-left: 2em;
  font-size: 12px;
  line-height: 1.3;
}

.text-note-no>li::before {
  content: "※" counter(num) "";
  display: inline-block;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 2.5em;
}

.about-service {
  border: solid 1px #ccc;
  margin: 20px auto;
  padding: 15px;
}

.about-service>*:first-child {
  margin-top: 0;
}

.about-service>*:last-child {
  margin-bottom: 0;
}

.about-service .section-heading {
  border: none;
  background-color: transparent;
  margin-top: -15px;
  margin-right: -15px;
  margin-left: -15px;
  margin-bottom: 20px;
  padding: 15px;
  color: #fff;
  font-size: 20px;
  text-align: left;
}

.about-service .section-heading.service01 {
  background-color: #6e3148;
}

.about-service .section-heading.service02 {
  background-color: #31416e;
}

.about-service .section-heading.service03 {
  background-color: #4f6e31;
}

.about-service .section-heading.plan {
  border-left: solid 10px #2F4F8E;
  border-right: solid 10px #2F4F8E;
  padding-right: 10px;
  padding-left: 10px;
  color: #000;
}

.about-service .with-search-icon {
  padding-left: 1.8em;
  position: relative;
  margin-top: 24px;
  margin-bottom: 12px;
}

.about-service .with-search-icon:before {
  content: "\f00e";
  display: block;
  background-color: #5E6372;
  border-radius: 3px;
  color: #fff;
  padding: 4px 5px 5px;
  font-family: FontAwesome;
  font-size: .86em;
  line-height: 1;
  position: absolute;
  top: -2px;
  left: 0;
}

.about-service p {
  margin: 0px 0px 12px;
}


aside h2 {
  margin-top: 0;
}

.about-service_fig {
  margin: 4rem auto;

  ol,
  ul {
    list-style: none;
    padding: 0;
  }

  ol {
    display: flex;
    flex-direction: column;
    row-gap: 6.4rem;

    flex-direction: row;
    row-gap: 0;
    column-gap: 6rem;

    >li:last-child {
      max-width: 343px;
    }

  }

  h2 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 0 1rem;
    height: 6.5rem;
    margin: 0 auto 1rem;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;

    &.about-service_ttl_01 {
      background-color: #E0E0E0;
    }

    &.about-service_ttl_02 {
      width: calc(100% - 32px);
      height: 55px;
      background-color: #D1EBFF;
      box-shadow: 0px 0px 5px 5px #D1EBFF;

      height: calc(100% - 85px);
      margin: 80px auto 0;
    }

    &.about-service_ttl_03 {
      background-color: #FFE2FA;
    }
  }

  h3 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 3rem;
    margin: 0;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;

    &.about-service_ttl_corp {
      background-color: #2D4D90;
      color: #ffffff;
    }

    &.about-service_ttl_cc {
      background-color: #C2B372;
    }
  }

  li {
    position: relative;

    img {
      width: 10rem;
      height: auto;
      margin: 1.2rem auto;
    }

    p {
      margin: 0;
    }
  }


  .about-service_list_01 {
    display: flex;
    gap: 1rem;
    flex-direction: column;

    li {
      display: grid;
      grid-template-columns: 1fr;
      grid-template-rows: auto auto 1fr;
      grid-column-gap: 0px;
      grid-row-gap: 0px;
      justify-items: center;
      padding: 0 0 1.6rem;
      border: solid 1px #707070;
      border-radius: 5px;
      flex: 1;
      position: relative;

      h3 {
        grid-area: 1 / 1 / 2 / 2;
      }

      p {
        width: 100%;
        padding: 2px;
        background-color: #D1EBFF;
        box-shadow: 0px 0px 5px 5px #D1EBFF;
        font-size: min(4.26vw, 1.8rem);
        font-weight: 700;
        /*grid-area: 3 / 1 / 4 / 2;*/
        text-align: center;
        font-size: 1.6rem;
        margin-left: 1.6rem;
        line-height: 1.3;
      }

      img {
        grid-area: 2 / 1 / 3 / 2;
      }

      &::after {
        content: "";
        width: 35px;
        height: 25px;
        background-color: #2d4d90;
        clip-path: polygon(50% 25px, 0% 0%, 35px 0%);
        position: absolute;
        top: 50%;
        right: -4rem;
        transform: translateX(0) rotate(270deg);
      }

      grid-template-columns: minmax(160px, 1fr) 12.4rem;
      grid-template-rows: auto 1fr 0;
      grid-column-gap: 0px;
      grid-row-gap: 0px;
      align-items: center;
      min-height: 210px;

      h3 {
        grid-area: 1 / 1 / 2 / 4;
      }

      p {
        grid-area: 2 / 1 / 3 / 2;
        white-space: nowrap;
      }

      img {
        margin: 1.2rem 1.2rem 2.4rem 1.2rem;
        grid-area: 2 / 2 / 3 / 3;
      }

      padding-bottom: 0;

    }

  }

  span {
    font-size: 12px;
    grid-column: unset;
    grid-row: unset;
    grid-column: 1 / 4;
    margin: 12px 8px 46px;
    line-height: 1.4rem;
  }

  /*@media (min-width:1200px) {
    flex-direction: column;
  }*/

  .about-service_list_01>li {
    position: relative;

    &::after {
      content: "";
      width: 35px;
      height: 25px;
      background: #2d4d90;
      position: absolute;
    }

    &.about-service_ctt02::after {
      left: -4rem;
      right: auto;
      top: 50%;
    }
  }

  .about-service_ctt_inner {
    display: flex;
    gap: 16px;
    flex-direction: column;
    /*margin-bottom: 16px;*/
  }

  .about-service-02_wrap {
    display: flex;
    flex-direction: column;
    padding: 0 0 1.6rem;
    border: solid 1px #707070;
    border-radius: 5px;

    >h3 {
      width: calc(100% - 3.2rem);
      height: auto;
      margin: 0 1.6rem;
      padding: 1rem;
      background-color: #D1EBFF;
      box-shadow: 0px 0px 5px 5px #D1EBFF;
      font-size: 2.4rem;
      order: 2;

      br {
        display: block;
      }
    }

    .about-service_list_02 {
      display: flex;
      order: 1;

      li {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        flex: 1;
      }

      .about-service_ttl_corp {
        border-top-right-radius: 0;
      }

      .about-service_ttl_cc {
        border-top-left-radius: 0;
      }
    }

    >p {
      margin: 1.6rem 1.6rem 0;
      font-size: min(3.2vw, 1.4rem);
      order: 3;
      text-align: center;
    }

    hgroup {
      p {
        font-size: 1.2rem;
        font-weight: 700;
        text-align: center;
      }
    }
  }

}

.page-lead-area ul {
  margin-bottom: 20px;
  padding-inline-start: 40px;
}

.page-lead-area ul li {
  list-style-type: disc;
}

.page-lead-area p {
  margin: 0 0 12px;
}

.answerBox {
  border: .1rem solid #d5d5d5;
  padding: 1.9rem;
  margin-bottom: 80px;
}

.answerBox+.answerBox {
  margin-top: 3rem;
}

.answerLink {
  margin-top: 1rem;
}

.answerLink a {
  padding-left: 2.2rem;
  display: inline-block;
  background: url(/common/images/icon-arrow01.png) no-repeat left center;
}