/* =========================================================
   モバイルファースト構成
   ベース(無条件) = SP(〜568px)
   min-width: 569px  = 〜960px相当
   min-width: 961px  = 1025px相当まで
   ========================================================= */

/* 元コードで568px以下のブロック以外に対応する記述が存在しない
   プロパティのため、値を推測せず元のmax-widthスコープのまま維持する */
@media screen and (max-width: 568px) {
  .full_wide_ttl + .inner {
    padding: 40px 0;
  }
  .full_wide_ttl {
    padding: 14px 0 16px;
  }
  .full_wide_ttl .txt_white {
    line-height: 1.4;
  }
  .full_wide_ttl .txt_white::before {
    content: none;
  }
  #intro .intro_box .half_box .photo {
    margin-bottom: 20px;
  }
  #intro .intro_box .half_box .ttl {
    margin-bottom: 10px;
  }
}

.full_wide_ttl .txt_white {
  padding-left: 8vw;
  position: relative;
}

.full_wide_ttl .txt_white::before {
  content: '';
  background: url("../img/case/items.png") no-repeat;
  background-size: contain;
  width: calc(177px * 0.7);
  height: calc(77px * 0.7);
  position: absolute;
  top: -10px;
  left: 0;
}

#intro .intro_box .half_box .ttl {
  font-size: 21px;
}

.case_list {
  margin-bottom: 20px;
}

@media screen and (min-width: 569px) {
  #intro .intro_box .half_box .ttl {
    font-size: 23px;
  }

  .case_list {
    margin-bottom: 40px;
  }
}

@media screen and (min-width: 961px) {
  #intro .intro_box .half_box .ttl {
    font-size: 28px;
  }

  .full_wide_ttl .txt_white {
    padding-left: 11%;
  }

  .full_wide_ttl .txt_white::before {
    width: 140px;
    height: 120px;
    top: -50px;
    left: 0;
  }
}

@media screen and (min-width: 1025px) {
  #intro .intro_box .half_box .ttl {
    font-size: 32px;
  }
}
