@charset "UTF-8";
/* ===================================================
  1. 基本・タイトル設定
=================================================== */
body#m03 h1 {
  border-bottom: 3px solid #F27E3D;
  position: relative;
  margin-bottom: 20px;
}
/* ===================================================
  2. 上部：動画案内バー
=================================================== */
body#m03 .inner_ti h3.video_info_bar {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #F27E3D;
  padding: 8px;
  margin: 10px 0;
  font-size: 14px;
  color: #333;
  text-decoration: none; /* 下線消し */
}
/* グラデーションテキスト共通定義 */
body#m03 .grad_text, body#m03 .video_label span {
  font-weight: bold;
  background: linear-gradient(to bottom, #0095d9, #4fbdc0, #95e0aa);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  display: inline-block;
  text-decoration: none; /* 下線消し */
}
body#m03 .ti_video_icon {
  width: 30px;
  height: auto;
  margin: 0 8px;
}
body#m03 .sub_text {
  color: #F27E3D;
}
/* ===================================================
  3. 施工手順メインエリア（PC版）
=================================================== */
body#m03 .tejun {
  clear: both;
  /*  overflow: hidden;*/
}
body#m03 .tejun p {
  font-size: 18px;
  font-weight: bold;
  color: #0EAC66;
  border-bottom: 1px solid #0EAC66;
  margin: 0 0 20px 0;
  padding-bottom: 5px;
}
body#m03 .tejun ul {
  float: left;
  width: 420px;
  margin: 0 0 0 20px;
  padding: 0;
}
body#m03 .tejun ul li {
  list-style: circle;
  padding: 5px 0;
  line-height: 1.6;
}
/* 画像・動画グループ */
body#m03 .img_group {
  float: right;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
body#m03 .tejun .img_group h3.video_label {
  display: inline-block;
  border: none;
  text-decoration: none;
  background: none;
  margin: 0 10px 0 0;
  padding: 0;
  font-size: 14px;
  white-space: nowrap;
  line-height: 1;
}
body#m03 .icon_video_side {
  width: 55px;
  height: auto;
  margin-right: 15px;
  cursor: pointer;
}
body#m03 .main_img, body#m03 .tejun > img { /* 動画のない、ひとつ目の写真の場合用 */
  width: auto;
  max-width: 350px;
  float: right; /* 単体画像の場合用 */
}
/* ===================================================
  4. スマホ表示調整（640px以下）
=================================================== */
@media only screen and (max-width: 640px) {
  body#m03 .tejun p {
    margin: 30px 0 10px 0;
  }
  /* 全体的に縦並びへ */
  body#m03 .tejun > img, body#m03 .img_group {
    float: none;
    width: 100%;
    margin: 15px 0;
    display: block; /* Flexを解除してブロック要素にする */
    text-align: center; /* 中央揃え */
  }
  /* p1.jpg および p2〜p7（.main_img）をすべて幅100%に統一 */
  body#m03 .tejun > img, body#m03 .main_img {
    width: 100%; /* 幅を親いっぱいに */
    max-width: 100%;
    height: auto;
    display: block;
    margin: 10px auto;
    float: none;
  }
  /* 動画ラベルとアイコンの調整 */
  body#m03 .tejun .img_group h3.video_label {
    display: inline-block; /* 改行させない */
    margin: 0 10px 0 0;
    vertical-align: middle;
  }
  body#m03 .icon_video_side {
    display: inline-block; /* 改行させない */
    width: 50px;
    margin: 0;
    vertical-align: middle;
  }
  body#m03 .inner_ti h3.video_info_bar {
    flex-wrap: wrap;
    font-size: 13px;
  }
}