@charset "utf-8";
.uk-container {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}
.under_line {
  position: relative;
  /* 親要素を基準に子要素を配置 */
  display: inline-block;
  /* コンテナのサイズを画像に合わせる */
  margin-bottom: 30px;
  margin-top: -88px;
  /* z-index: -1; */
  z-index: 0;
}

.under_line img {
  position: absolute;
  /* 画像を重ねるために絶対位置を指定 */
  width: 100%;
  /* 必要に応じてサイズを調整 */
  height: auto;
}

.kojin {
  z-index: 1;
  /* 背面に配置 */
  margin-top: 5px;
}

.hojin {
  z-index: 2;
  /* 前面に配置 */
}

/* 基本的にPCでは表示しない設定 */
.hojin_kojin_sp,
.hojin_title,
.kojin_title2,
.center-container_1 {
  display: none;
}

/* モバイル（768px 以下）でのみ表示 */
@media screen and (max-width: 767px) {
  #service .h2_2011 {
    margin-top: 10vw;
  }
  #service .h2_2011 h2 {
    font-size: 8vw;
  }
  #service .h2_2011 h2 span {
    font-size: 3.6vw;
  }
  /* モバイル画面 */
  .under_line {
    display: block;
  }

  .center-container_1 {
    display: block;
  }
  .service_card_2011 ul a {
    width: 100% !important;
    margin-bottom: 5px;
  }
  #service_2011 .flex_2011 ~ .service_card_2011 h3 {
    margin-top: 0;
  }
  #service_2011 {
    padding: 20px 0 0 !important;
  }
  .service_card_2011 img {
    height: auto !important;
  }
}

@media screen and (max-width: 768px) {
  .hojin_kojin_sp {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    text-align: center;
    padding: 25px 30px 21px 30px;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      "sans-serif";
  }

  .click_sp {
    width: 25px;
    height: auto;
    margin-bottom: 3px;
    margin-left: 7px;
  }

  .hojin_title {
    font-size: 20px !important;
    display: block;
    /* PCでは非表示なので、モバイルで表示されるように追加 */
    color: #fff;
    text-align: center;
    font-weight: 300;
    line-height: 1.2;
    margin-left: 14px;
  }

  .kojin_title_sp {
    font-size: 24px;
    color: #fff;
    text-decoration-line: underline;
    font-weight: 250;
    line-height: normal;
  }

  .kojin_title2 {
    display: flex;
    align-items: center;
    font-size: 18px !important;
    color: #8a8a8a;
    text-align: center;
    font-weight: 250;
    line-height: 1.2;
    gap: 1px;
    margin-bottom: 4px;
  }

  .pc-none {
    display: none;
    /* PCで非表示にするため、この設定は不要。PCではすでにデフォルトで非表示 */
  }

  /* モバイル（SP）で center-container_1 を非表示 */
  .center-container_1.sp-none {
    display: none !important;
  }
}

/* PC用のスタイル */
@media screen and (min-width: 769px) {
  .hojin_kojin_sp {
    display: none;
    /* PCでは非表示にする */
  }

  /* PCで under_line を非表示 */
  .under_line {
    display: none !important;
  }

  .center-container_1 {
    display: none !important;
  }
  /* }
.h2_2011 h2 {
  font-size: 30px!important;
  margin-bottom: 20px!important;
}
.h2_2011 h2 span {
  font-size: 13px!important;
  margin-left: 14px!important;
} */

  .hojin_title {
    font-size: 16px;
  }

  .kojin_title2 {
    font-size: 16px;
  }

  .link-icon2 {
    height: 20px;
    width: 20px;
  }

  .kojin_title {
    color: #45a0dd;
    font-size: 38px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    text-decoration-line: underline;
    margin-right: 10px;
  }

  .flex_list {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .flex_list2 {
    display: flex;
    width: 100%;
    justify-content: flex-start;
    white-space: nowrap;
  }

  .flex_list a {
    width: 33%;
  }

  .flex_item2 {
    flex-basis: 66%;
  }

  #service_2011 {
    padding: 100px 0 0 !important;
  }

  #service_2011 .flex_2011 ~ .service_card_2011 h3 {
    margin-top: 7rem;
  }

  .flex_item1 {
    flex-basis: 33%;
  }
}
