@charset "utf-8";

/* --------------------------------- Common --------------------------------- */
[class*="__wrapper-m"] {
  width: min(100%, 1100px);
  margin-inline: auto;
}

.cmn-py {
  padding-block: var(--sp-5);
}

.cmn-cta {
  width: min(100%, 1100px);
  position: relative;
  margin-block: var(--sp-10) var(--sp-4);
  text-align: center;
  background: no-repeat bottom center / contain
    url("../images/cmn-cta_deco1.webp");
  padding-bottom: var(--sp-4);
  margin: auto auto var(--sp-3);

  p {
    font-size: 24px;
    font-weight: var(--bold);
    color: var(--clr-main);
    text-align: center;

    span {
      color: var(--clr-sub02);
      background: var(--clr-accent);
    }
  }
}

/* トップのcmnヘッダー */
.top2025-header {
  width: 100%;
  margin-bottom: var(--sp-3);
  border-bottom: 1px solid var(--clr-txt);
  display: flex;
  justify-content: start;
  align-items: end;
  flex-flow: row nowrap;
  gap: var(--sp-2);

  h3,
  p {
    font-weight: var(--bold);
    line-height: 1.5;
    letter-spacing: 0;
  }

  h3 {
    font-size: var(--h6-fz);
    margin-bottom: var(--sp-1);
    color: var(--clr-txt);
  }

  p {
    color: var(--clr-sub02);
    margin: 0 !important;
    text-transform: uppercase;
    font-size: var(--h2-fz);
  }
}

/* .top2025-header--white {
  color: var(--clr-white);
  border-color: var(--clr-white);
  h3 {
    color: var(--clr-white);
  }
  p {
    color: var(--clr-white);
  }
} */

/* もっと詳しく知るボタン */
.top2025-button {
  /* width: 198px;
  height: 43px; */
  width: fit-content;
  margin: var(--sp-3) auto;
  border: 1px solid var(--clr-txt2);
  border-radius: 6px;

  .top2025-button__link {
    width: inherit;
    height: inherit;
    border-radius: inherit;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 12px var(--sp-3);

    span {
      font-size: var(--body-fz);
      font-weight: var(--regular);
      color: var(--clr-txt2);
      padding-left: var(--sp-3);
      position: relative;

      &::before {
        content: "";
        position: absolute;
        inset: 0 auto 0 0;
        margin-block: auto;
        width: 18px;
        height: 18px;
        background: no-repeat center/contain
          url("/assets/images/top_2025/top2025-button_icon.webp");
      }
    }
  }
}

.top2025-button--white {
  background-color: var(--clr-white);
}

.cmn-header {
  margin-bottom: var(--sp-2);

  h3,
  h4 {
    font-size: 32px;
    font-weight: var(--bold);
    color: #1f294a;
    position: relative;
    padding-left: 20px;

    &::before {
      content: "";
      position: absolute;
      inset: 0 auto 0 0;
      margin-block: auto;
      width: 11px;
      height: calc(100% - 10px);
      border-radius: 5px;
      background-color: var(--clr-sub02);
    }
  }
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
既存パーツ調整
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#faq .sec_cta {
  margin-bottom: var(--sp-10);
}
#faq {
}
#faq .inner {
  padding: 0;
}
.section-ttl-box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--sp-2);
  font-size: var(--h3-fz);
  font-weight: var(--medium);
  margin-bottom: var(--sp-4);
}

.sec-ttle {
  color: var(--clr-main);
}

#faq .qa-list dd::before {
  top: 25px;
}
.qa-list .in-dl {
  padding-right: 5vw;
}

#police-cooperation .reveal #topics_2011 {
  margin-top: 0 !important;
}

#service #service_2011 {
  padding-top: 0 !important;
}

#support {
  letter-spacing: 0;
}

#media {
  padding-top: var(--sp-10);
}

/* .more_btn_2011 */
.more_btn_2011 {
  /* zoom: 80%; */
}
.more_btn_2011 a {
  width: fit-content;
  display: block;
  margin: 0 auto;
}

/* cta調整 */
/* .sec_cta */
.sec_cta__box-wrap {
  margin-bottom: var(--sp-10);
}
.sec_cta__box {
  position: relative;
  height: 254px;
  background: no-repeat right/cover url("../img/sec_cta__box.webp");
  display: flex;
  line-height: 1.5;
  margin-bottom: var(--sp-10);
}
/* .sec_cta__box::after {
  position: absolute;
  bottom: calc(-18px - 25px);
  left: calc(50% - 22px);
  content: "";
  display: block;
  background: url("../img/icon_tr_cta.webp") no-repeat;
  background-size: contain;
  width: 44px;
  height: 25px;
} */
.sec_cta__box-header {
  margin: auto var(--sp-5) var(--sp-2);
}
.sec_cta__box-header h4 {
  font-size: 32px;
  color: #e8e428;
  font-weight: 600;
  letter-spacing: 0.06em;
  margin-bottom: 8px;
  line-height: 1;
}
.sec_cta__box-header h4 small {
  font-size: 26px;
  color: #ffffff;
}
.sec_cta__box-header p {
  font-size: 18px;
  font-weight: 600;
  color: #ffffff;
  letter-spacing: 0.02em;
  margin-bottom: 2px;
}
.sec_cta__box-header p sup {
  font-size: 10px;
  top: 0;
}
.sec_cta__box-header small {
  position: relative;
  display: block;
  font-size: 10px;
  zoom: 0.8;
  padding-left: 22px;
  color: #ffffff;
}
.sec_cta__box-header small:nth-of-type(1)::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "※1";
}
.sec_cta__box-header small:nth-of-type(2)::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "※2";
}

/* ---------------------------- デジタルフォレンジックの調査事例 ---------------------------- */
#case .more_btn_2011 {
  margin-top: var(--sp-5);
}
#case .cmn-h2 {
  margin-bottom: var(--sp-5);
}
#case h2.title {
  font-size: 36px;
  text-decoration: none;
}

#case .inner {
  padding-bottom: 0;
}

/* .case__header {
  margin-bottom: var(--sp-5);

  h3 {
    font-size: var(--h2-fz);
    font-weight: var(--bold);
    text-decoration: underline;
    text-align: center;
  }
} */

#case .case__textbox {
  margin-bottom: var(--sp-3);

  p {
    text-align: center;
    font-size: var(--h4-fz);
    font-weight: var(--bold);
    line-height: 1.5;
    letter-spacing: 0;
    color: var(--clr-txt);

    span {
      background-color: #ffff00;
    }
  }
}

.case_title {
  outline: none !important;
}

.case_title .sub-title {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  font-size: var(--h4-fz);
  line-height: 1.5;
  font-weight: var(--bold);
  text-align: center;
  margin-bottom: var(--sp-5);
}

.case_title .sub-title strong {
  display: block;
  color: var(--clr-main);
  font-weight: var(--black);
  font-size: var(--h2-fz);
}

/* .case_cont */
.case_cont {
  margin: 0 auto;
  background-color: #f8f8f8;
  padding: 18.3px 16px;
}

.case_cont-header {
  position: relative;
  display: flex;
  gap: var(--sp-2);
}

.case_cont-header::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 4px;
  left: 0;
  bottom: 0;
  background-color: #2f4365;
  border-radius: 4px;
}

.case_cont-tab .img {
  width: 85px;
  margin: 0 auto;
}

.case_cont-tab .img img {
  max-width: 100%;
}

.case_cont-tab .ttl {
  font-size: var(--h6-fz);
  /* color: var(--clr-main); */
  margin-bottom: var(--sp-1);
  font-weight: var(--bold);
  text-align: center;
}

.case_cont-header .case_cont-tab {
  flex: 1;
  text-align: center;
  padding: 11px;
  padding-top: 19px;
  cursor: pointer;
  font-weight: bold;
  border: 3px solid #eaeaea;
  /* 左右下のボーダー */
  border-top: none;
  /* 上のボーダーを削除 */
  border-radius: 10px 10px 0 0;
  /* 上の角だけ丸くする */
  opacity: 0.6;
  position: relative;
  /* 擬似要素のために必要 */
  background-color: #fff;
  /* 背景色を追加 */
}

.case_cont-header .case_cont-tab::before {
  content: "";
  position: absolute;
  top: 0;
  left: -3px;
  right: 0;
  width: calc(100% + 6px);
  height: 11px;
  /* background-color: var(--clr-main); */
  background-color: #1f294a;
  border-radius: 10px 10px 0 0;
  z-index: 2;
}

.case_cont-header .case_cont-tab.active {
  position: relative;
  opacity: 1;
  background-color: #eaeaea;
  z-index: 2;
}

.case_cont-header .case_cont-tab.active::after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: -3px;
  right: 0;
  width: calc(100% + 6px);
  height: 5px;
  background-color: #eaeaea;
  /* border-radius: 10px 10px 0 0; */
  z-index: 2;
}

.case_cont-content {
  display: none;
  background-color: #eaeaea;
  padding: 18.3px 16px;
}

.case_cont-content.active {
  display: block;
}

.case_cont-consult-box,
.case_cont-ddf-box {
  padding: var(--sp-2);
  background: var(--clr-white);
}

.case_cont-consult-box,
.case_cont-ddf-box {
  p {
    font-size: var(--body-fz);
  }

  em {
    font-weight: var(--bold);
  }
}

.case_cont-consult-title {
  width: fit-content;
  /* background-color: var(--clr-main); */
  background-color: #1f294a;
  color: var(--clr-white);
  font-size: var(--h6-fz);
  font-weight: var(--bold);
  padding: var(--sp-05) var(--sp-1);

  margin-bottom: 14px;
}

.case_cont-ddf-title {
  width: fit-content;
  background-color: #1facd4;
  color: var(--clr-white);
  font-size: var(--h6-fz);
  padding: var(--sp-05) var(--sp-1);
  font-weight: bold;
  margin-bottom: 14px;
}

.case_cont-inner {
  display: flex;
  gap: var(--sp-2);
}

.case_cont-inner > div {
  flex: 1;
  width: 510px;
  min-height: 400px;
}

/* -------------------------------------------------------------------------- */
/*                                     PC                                     */
/* -------------------------------------------------------------------------- */
/* ---------------------------------- Sec00 --------------------------------- */
.sec00 {
  background: #000000 !important;

  .sec00__wrapper {
    /* width: min(100%, 1920px); */
    width: 100%;
    margin-inline: auto;
    padding: 90px 0 100px;
    background: no-repeat right / cover url("../images/sec00_img1.webp") !important;
  }

  .sec00__header {
    width: fit-content;
    margin-inline: auto;
            padding: 10px 0 30px;
    h2 {
      font-size: var(--h4-fz);
      font-weight: var(--bold);
      text-decoration: underline;
      text-underline-offset: var(--sp-2);
      color: var(--clr-white);
      text-align: center;
    }
  }
}

/* ---------------------------------- Sec01 --------------------------------- */
.sec01 {
  padding-bottom: var(--sp-3);

  .sec01__textbox {
    p {
      font-size: var(--body-fz);
      font-weight: var(--regular);
    }
  }
}

/* ---------------------------------- Sec02 --------------------------------- */
.sec02 {
  background-color: #f3f5f9 !important;

  .sec02__textbox {
    margin-bottom: var(--sp-3);

    p {
      font-size: var(--body-fz);
      font-weight: var(--regular);
    }
  }

  .sec02__img {
    transform: scale(1.05);
  }
}

/* ---------------------------------- Sec03 --------------------------------- */
.sec03 {
  padding-bottom: var(--sp-10);

  .sec03__list {
    margin-bottom: 55px;
  }

  .sec03__item {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: row nowrap;
    gap: var(--sp-1) var(--sp-3);
    padding-bottom: var(--sp-2);
    border-bottom: 1px solid #d0d0d0;

    &:not(:last-child) {
      margin-bottom: var(--sp-2);
    }

    .sec03__item-header {
      margin-bottom: var(--sp-05);

      h4 {
        font-size: var(--px-18);
        font-weight: var(--bold);
        color: #153c7b;
      }
    }

    .sec03__item-box {
      width: min(100%, 946px);
    }

    .sec03__item-text {
      font-size: var(--body-fz);
      font-weight: var(--medium);
    }
  }

  .sec03__cnt {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: row nowrap;
    gap: 35px;

    .sec03__cnt-box {
      width: min(100%, 938px);
      padding: 35px 45px;
      border-radius: 10px;
      background-color: #1f2770;
      position: relative;

      &::before {
        content: "";
        position: absolute;
        inset: 0 0 auto auto;
        width: 35px;
        height: 21px;
        background: no-repeat center/contain url("../images/sec03_deco2.webp");
        transform: translate(70%, 170%);
      }

      p {
        font-size: var(--body-fz);
        font-weight: var(--regular);
        color: var(--clr-white);
      }
    }
  }
}

/* ---------------------------------- Sec04 --------------------------------- */
.sec04 {
  .sec04__textbox {
    margin-bottom: var(--sp-3);

    p {
      font-size: var(--body-fz);
      font-weight: var(--regular);
    }
  }

  .sec04__cnt {
    /* box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25); */
    box-shadow: 0px 0px 5px 3px rgba(0, 0, 0, 0.09);

    &:not(:last-child) {
      margin-bottom: var(--sp-4);
    }

    .sec04__cnt-header {
      width: 100%;
      background-color: #002366;
      padding: 20px;

      h4 {
        font-size: 24px;
        font-weight: var(--bold);
        color: var(--clr-white);
        text-align: center;
      }
    }

    .sec04__cnt-box {
      padding: var(--sp-4);
    }

    .sec04__cnt-list {
      list-style: "※ " outside;
      padding-left: var(--sp-3);

      li {
        font-size: var(--small-fz);
        font-weight: var(--medium);
      }
    }

    .sec04__tbox {
      padding: var(--sp-2) var(--sp-3);
      background-color: #f8f8f8;
      display: flex;
      justify-content: start;
      align-items: center;
      flex-flow: row nowrap;
      gap: var(--sp-05);
      position: relative;

      &::before {
        content: "";
        position: absolute;
        inset: 0 var(--sp-4) 0 auto;
        margin-block: auto;
        background: no-repeat center / contain;
      }

      .sec04__tbox-box {
        height: 117px;
        padding: 6px;
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: #00b0f0;

        p {
          color: var(--clr-white);
          font-size: var(--px-18);
          font-weight: var(--bold);
          letter-spacing: 0.04em;
        }
      }

      .sec04__tbox-list {
        list-style: disc outside;
        padding-left: var(--sp-5);

        li {
          font-size: var(--px-18);
          font-weight: var(--bold);
          color: #333333;
        }
      }
    }

    .sec04__tbox--des1 {
      &::before {
        width: 177px;
        height: 130px;
        background-image: url("../images/sec04_deco2.webp");
      }
    }

    .sec04__tbox--des2 {
      &::before {
        width: 186px;
        height: 115px;
        background-image: url("../images/sec04_deco3.webp");
      }
    }

    .sec04__cnt-deco1 {
      display: block;
      margin: var(--sp-2) auto;
    }

    .sec04__cnt-textbox {
      margin-bottom: var(--sp-3);

      p {
        font-size: var(--body-fz);
        font-weight: var(--medium);
      }
    }

    .sec04__list {
      margin-bottom: var(--sp-4);
    }

    .sec04__item {
      &:not(:last-child) {
        margin-bottom: var(--sp-2);
      }

      .sec04__item-img {
      }

      .sec04__item-header {
        display: flex;
        justify-content: start;
        align-items: stretch;
        flex-flow: row nowrap;
        gap: var(--sp-2);

        p {
          display: block;
          width: 157px;
          display: flex;
          justify-content: center;
          align-items: center;
          color: var(--clr-white);
          font-size: var(--px-20);
          font-weight: var(--bold);
          background-color: #002366;
          border-radius: 5px 0 0 0;
          position: relative;

          &::before {
            content: "";
            position: absolute;
            inset: 0 0 0 auto;
            margin-block: auto;
            width: 23px;
            height: 19px;
            background: no-repeat center/contain
              url("../images/sec04_deco4.webp");
            transform: translate(65%, 0);
          }
        }

        h5 {
          font-size: 24px;
          font-weight: var(--bold);
          color: #002366;
        }
      }
    }
  }

  .sec04__price {
    margin-top: 90px;
    zoom: 80%;

    .price_cta span {
      font-size: 60px;
    }
  }
}

/* ---------------------------------- Sec05 --------------------------------- */
.sec05 {
  background-color: #f3f5f9 !important;
  margin-bottom: var(--sp-10);

  .sec05__textbox {
    margin-bottom: var(--sp-3);

    p {
      font-size: var(--body-fz);
      font-weight: var(--regular);
    }
  }

  .sec05__list,
  .sec05__cnt {
    width: min(100%, 922px);
    margin-inline: auto;
  }

  .sec05__list {
    list-style: "※ " inside;
  }

  .sec05__item {
    font-size: 12px;
    font-weight: var(--regular);
  }

  .sec05__cnt {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 10px;
    margin-bottom: var(--sp-2);

    .sec05__cnt-item {
      border-radius: var(--sp-1);
      border: 1px solid #fbd400;
      background-color: #fdf5cf;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-flow: column nowrap;
      gap: var(--sp-1);

      &:nth-child(1) {
        grid-area: 1 / 1 / 2 / 2;
        padding: 20px;
      }

      &:nth-child(2) {
        grid-area: 1 / 2 / 3 / 3;
        padding: 14px;
      }

      &:nth-child(3) {
        grid-area: 2 / 1 / 3 / 2;
        padding: 20px;
      }

      p {
        font-size: var(--body-fz);
        font-weight: var(--bold);
      }
    }
  }
}

/* ---------------------------------- Sec06 --------------------------------- */
.sec06 {
  .sec06__wrapper-xl {
    background-color: #f3f5f9;
    padding-block: var(--sp-3);
  }

  .sec06__textbox {
    margin-bottom: var(--sp-2);

    p {
      font-size: var(--body-fz);
      font-weight: var(--medium);
    }
  }

  .flow__header {
    margin-bottom: 24px;
    position: relative;

    &::before {
      content: "";
      position: absolute;
      inset: 0 auto 0 0;
      background-color: #1f294a;
      width: 5px;
      height: 100%;
      border-radius: 15px;
      margin-block: auto;
      transform: translateY(2px);
    }

    h4 {
      color: #1f294a;
      font-size: 24px;
      font-weight: 700;
      padding-inline: 15px;
    }
  }

  .flow__box3 {
    margin-bottom: 30px;

    p {
      font-size: var(--body-fz);
      font-weight: var(--regular);
      line-height: 1.5;
      letter-spacing: 0;
    }
  }

  .flow__box4 {
    /* padding: 16px; */
    /* background-color: #f2f2f2; */
    /* background-color: #f3f5f9; */
    /* margin-bottom: 16px; */
  }
  .flow__list2 {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-flow: row nowrap;
    gap: 16px;
    counter-reset: count;
    margin-bottom: 10px;
  }
  .flow__item2 {
    /* width: 240px; */
    width: 200px;
    /* height: 244px; */
    border-radius: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column nowrap;
    background-color: #ffffff;
    filter: drop-shadow(0 4px 7px rgba(0, 0, 0, 0.25));

    .cmn-textbox {
      p {
        font-weight: var(--medium);
        font-size: var(--body-fz);
        line-height: 1.5;
        letter-spacing: 0;
      }
    }
  }
  .flow__item2:not(:last-child) {
    position: relative;
  }
  .flow__item2:not(:last-child)::before {
    content: "";
    position: absolute;
    inset: 0 0 0 auto;
    width: 17px;
    height: 17px;
    border-radius: 0;
    margin-block: auto;
    background: no-repeat center/contain url("../images/flow_deco1.webp");
    transform: translateX(calc(100% + 4px));
  }
  .flow__item2-header {
    background-color: #103e76;
    width: 100%;
    padding: 12px 0;
  }
  .flow__item2-header h5 {
    color: #ffffff;
    font-size: var(--px-20);
    font-weight: 700;
    text-align: center;
  }
  .flow__item2-header h5::before {
    counter-increment: count;
    content: counter(count, decimal-leading-zero) ".";
    font-size: 20px;
  }
  .flow__item2-box {
    flex-grow: 1;
    padding: 12px;
    display: flex;
    justify-content: start;
    align-items: center;
    flex-flow: column nowrap;
    gap: 10px;
    /* gap: 12px; */
  }
  .flow__item2-img2 {
    margin-block: auto 0;
  }
  .flow__button {
    color: #103e76;
    font-weight: 700;
  }

  .flow-tel {
    span {
      position: relative;
      white-space: nowrap;
      font-size: 22px;
      font-weight: 700;
      padding-left: 25px;

      &::before {
        content: "";
        position: absolute;
        inset: 0 auto 0 0;
        margin-block: auto;
        width: 20px;
        height: 30px;
        border-radius: 0;
        background: no-repeat center/contain url("../images/flow_tel.webp");
      }
    }
  }

  .flow-mail {
    /* width: 206px; */
    margin: auto 0;
    width: 171px;
    height: 65px;
    border-radius: 41px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ff544b;
    filter: drop-shadow(0 4px 0 rgba(16, 62, 118, 0.25));

    &:hover {
      background-color: #ff847e;
    }

    span {
      color: #ffffff;
      font-size: 14px;
      font-weight: 700;
      padding-left: 20px;
      position: relative;

      &::before {
        content: "";
        position: absolute;
        inset: 0 auto 0 0;
        margin-block: auto;
        width: 16px;
        height: 16px;
        border-radius: 0;
        background: no-repeat center/contain url("../images/flow_mail.webp");
      }
    }
  }
}

/* ---------------------------------- Sec07 --------------------------------- */
.service {
  .top2025-header {
    .service__button {
      margin: 0 0 var(--sp-1) auto;
    }
  }

  .service__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-flow: row nowrap;
  }

  /* .service__button {
    span {
      position: relative;
      font-weight: var(--bold);
      font-size: var(--body-fz);
      padding-right: var(--sp-3);

      &::before {
        content: '';
        position: absolute;
        inset: 0 0 0 auto;
        margin-block: auto;
        width: 16px;
        height: 16px;
        background: no-repeat center/contain
          url('/assets/images/top_2025/service_icon1.webp');
      }
    }
  } */

  .service__item {
    display: flex;
    justify-content: start;
    align-items: stretch;
    flex-flow: row nowrap;
    padding: var(--sp-3);
    /* background-color: var(--clr-bg); */
    background-color: #dfe1e9;
    border-radius: var(--sp-2);

    &:not(:last-child) {
      margin-bottom: var(--sp-2);
    }
  }

  .service__item-header {
    width: 300px;
    flex-shrink: 0;
    padding-right: var(--sp-3);
    border-right: 1px solid var(--clr-txt);
    display: flex;
    justify-content: start;
    align-items: start;

    h5 {
      font-weight: var(--bold);
      font-size: 20px;
      color: var(--clr-txt);
      position: relative;
      padding-left: var(--sp-4);

      &::before {
        content: "";
        position: absolute;
        inset: 0 auto auto 0;
        margin-block: auto;
        width: 28px;
        height: 28px;
        background: no-repeat center / contain url("../images/service_deco4.webp");
        transform: translateY(2px);
      }
    }
  }

  .service__list2 {
    padding-left: var(--sp-3);
    flex-grow: 1;
    display: flex;
    justify-content: start;
    align-items: stretch;
    flex-flow: row wrap;
    /* display: grid;
    grid-template-columns: fit-content(33%) fit-content(33%) fit-content(33%); */
    gap: var(--sp-2);
  }

  .service__item {
    /* &:nth-of-type(1) .service__list2 {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: repeat(2, 1fr);
    } */
    /* &:nth-of-type(2) .service__list2 {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      grid-template-rows: repeat(2, 1fr);
    } */
    &:nth-of-type(1) .service__list2 {
      justify-content: space-between;
      gap: var(--sp-2) 0;

      .service__item2 {
        max-width: calc((100% / 3) - var(--sp-2));

        /* width: fit-content; */
        &:nth-of-type(1),
        &:nth-of-type(3),
        &:nth-of-type(7) {
          /* width: 226px; */
        }

        &:nth-of-type(7),
        &:nth-of-type(8),
        &:nth-of-type(9),
        &:nth-of-type(10) {
          /* width: calc((100% / 2) - var(--sp-4)); */
          width: fit-content;
          max-width: 100%;
        }

        &:last-child {
          /* width: fit-content; */
        }
      }
    }

    &:nth-of-type(3) .service__list2 {
      .service__item2 {
        width: fit-content;
      }
    }
  }

  .service__item2 {
    /* flex: 1 1 33%; */
    width: calc((100% / 3) - var(--sp-2));

    .service__item2-link {
      color: var(--clr-txt);
      /* font-size: var(--h6-fz); */
      font-size: var(--body-fz);
      font-weight: var(--bold);
      position: relative;
      padding-right: var(--sp-3);
      border-bottom: 1px dashed var(--clr-txt);
      white-space: nowrap;

      &::before {
        content: "";
        position: absolute;
        inset: 0 0 0 auto;
        margin-block: auto;
        width: 18px;
        height: 18px;
        background: no-repeat center/contain url("../images/service_icon2.webp");
      }
    }
  }

  .service__list3 {
    display: flex;
    justify-content: start;
    align-items: center;
    flex-flow: row wrap;
    gap: var(--sp-3);
    margin-bottom: var(--sp-10);
  }

  .service__item3 {
    /* width: min(100%, 187px);
    height: 56px; */

    .service__item3-link {
      width: inherit;
      height: inherit;
      border-radius: 30px;
      border: 1px solid var(--clr-txt);
      display: flex;
      justify-content: start;
      align-items: center;
      padding: var(--sp-2);

      span {
        font-weight: var(--bold);
        font-size: var(--body-fz);
        color: var(--clr-txt);
        letter-spacing: 0;
        line-height: 1.5;
        position: relative;
        padding-right: var(--sp-3);

        &::before {
          content: "";
          position: absolute;
          width: 14px;
          height: 7px;
          inset: 0 0 0 auto;
          margin-block: auto;
          background: no-repeat center/contain
            url("../images/service_icon3.webp");
        }
      }
    }
  }
}

/* ---------------------------------- Sec08 --------------------------------- */
.note {
  /* background-color: var(--clr-bg) !important; */
  /* background-color: #dfe1e9 !important; */

  /* .cmn-header {
    width: fit-content;
    margin-inline: auto;
    padding-inline: 0;

    &::before,
    &::after {
      content: none;
    }

    h3 {
      color: var(--clr-main);
    }
  } */

  /* .note-header {
    padding-left: var(--sp-3);
    margin-bottom: var(--sp-1);
    position: relative;

    &::before {
      content: "";
      position: absolute;
      inset: 0 auto 0 0;
      margin-block: auto;
      width: calc(var(--sp-1) * 1.5);
      height: 100%;
      background-color: var(--clr-main);
      border-radius: 5px;
    }

    h4 {
      font-size: 32px;
      color: var(--clr-main);
    }
  } */

  .note__text {
    font-weight: var(--medium);
    margin-bottom: var(--sp-3);
  }

  .note__list3 {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-flow: row wrap;
    gap: var(--sp-4);
    margin-bottom: var(--sp-5);
  }

  .note__item3 {
    width: min(100%, 295px);
    display: flex;
    justify-content: start;
    align-items: center;
    flex-flow: column nowrap;
  }

  .note__item3-img {
    margin-bottom: var(--sp-3);
  }

  .note__item3-header {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 48px;
    margin-bottom: 21px;
    text-align: center;

    h5 {
      font-weight: var(--bold);
      font-size: var(--body-fz);
    }
  }

  .note__item3-text {
    text-align: justify;
    font-size: var(--small-fz);
  }

  .cmn-dd {
    margin-bottom: var(--sp-5);

    .cmn-dd__unit {
      &:not(:last-child) {
        margin-bottom: calc(var(--sp-1) * 1.5);
      }
    }

    .cmn-dd__header {
      width: 100%;
      background-color: var(--clr-main);
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: var(--sp-1);
      padding: var(--sp-3) 64px var(--sp-3) var(--sp-2);
      position: relative;
      color: var(--clr-white);
      font-weight: var(--bold);
      transition: all 0.3s;

      &:hover {
        cursor: pointer;
        opacity: 0.9;
      }

      h5 {
        text-align: left;
        flex-grow: 1;
        font-size: var(--h6-fz);
        color: inherit;
      }

      p {
        font-size: calc(var(--sp-1) * 6);
        transform: translateY(-6px);
        color: inherit;
      }
    }

    .cmn-dd__content {
      background-color: #f8f8f8;
      padding: 20px var(--sp-2);
      display: none;
    }

    .cmn-dd__list {
      counter-reset: count;
    }

    .cmn-dd__item {
      border: 2px solid var(--clr-txt);
      box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);

      &:not(:last-child) {
        margin-bottom: calc(var(--sp-1) * 1.5);
      }
    }

    .cmn-dd__item-header {
      background-color: #daf4ff;
      padding: 14px 18px;
      font-weight: var(--bold);
      border-bottom: 2px solid var(--clr-txt);

      h6 {
        font-size: var(--body-fz);

        &::before {
          counter-increment: count;
          content: counter(count, decimal-leading-zero) ". ";
          color: #33a0d6;
        }
      }
    }

    .cmn-dd__textbox {
      text-align: justify;
      padding: 10px 18px;
      font-size: var(--small-fz);

      ul {
        padding-left: 18px;
        list-style: disc outside;
      }
    }
  }
}

/* ---------------------------------- Sec09 --------------------------------- */
.sec09 {
  .sec09__item {
    &:not(:last-child) {
      margin-bottom: var(--sp-3);
    }

    .sec09__item-header {
      background-color: #1b274e;
      margin-bottom: var(--sp-1);
      padding: var(--sp-1) var(--sp-2);
      border-radius: var(--sp-05);

      h4 {
        font-size: var(--px-20);
        font-weight: var(--bold);
        color: var(--clr-white);

        &::before {
          content: "Q. ";
        }
      }
    }

    .sec09__item-textbox {
      padding-left: var(--sp-5);

      p {
        font-size: var(--body-fz);
        font-weight: var(--medium);
        color: #1b274e;
      }
    }
  }
}
