/*
Theme Name: KindWork
Theme URI: https://www.kindwork.jp/
Author: KindWork
Description: カインドワーク株式会社 公式サイトテーマ
Version: 1.0.0
Text Domain: kindwork
*/

/* 施工事例: 画像高さを固定、タイトルをセンタリング */
.parts06_cus .photo {
  height: 161px;
  overflow: hidden;
}
.parts06_cus .photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.parts06_cus .child h3.heading {
  min-height: 3em;
  text-align: center !important;
}


/* SP: 固定ヘッダー(64px)の下にコンテンツを配置（全ページ） */
@media only screen and (max-width: 649px) {
  .main_wrapper {
    padding-top: 64px !important;
  }
}

/* ヒーローセクション上部余白を完全に０（PC・SP共通） */
.obg_ctrl_background_1_pt {
  padding-top: 0 !important;
}
@media only screen and (max-width: 649px) {
  .obg_ctrl_background_1_pt {
    padding-top: 0 !important;
  }
}

/* SP: パンくずリストを折り返して見切れないように */
@media only screen and (max-width: 649px) {
  .obg_ctrl_background_15 {
    overflow: visible !important;
  }
  .topics-path {
    overflow: visible !important;
    width: 100% !important;
  }
  .topics-path ul {
    display: flex !important;
    flex-wrap: wrap !important;
    overflow: visible !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .topics-path li {
    float: none !important;
    white-space: normal !important;
    word-break: break-word !important;
  }
}

/* SP: 横スクロール・がたつき防止 */
@media only screen and (max-width: 649px) {
  html, body {
    overflow-x: hidden;
    width: 100%;
  }
}

/* SP: フッターアイコン下のテキストラベルを確実に表示 */
@media only screen and (max-width: 649px) {
  #sp_bottom_menu .sp_bottom_menu_list li a span {
    display: block !important;
    visibility: visible !important;
    font-size: 0.9rem !important;
    color: #333333 !important;
    text-align: center !important;
    padding-top: 3px !important;
  }
  #sp_bottom_menu .sp_bottom_menu_list li a i {
    display: block !important;
    text-align: center !important;
  }
  #sp_bottom_menu .sp_bottom_menu_list li a {
    display: block !important;
    height: auto !important;
    padding-top: 6px !important;
    padding-bottom: 4px !important;
  }
  #sp_bottom_menu .sp_bottom_menu_list li {
    height: auto !important;
    min-height: 58px !important;
    overflow: visible !important;
  }
}


/* アンカーリンクのスムーススクロール */
html {
  scroll-behavior: smooth;
}
/* SP: 固定ヘッダー分だけスクロール位置をオフセット */
@media only screen and (max-width: 649px) {
  html {
    scroll-padding-top: 64px;
  }
}

/* 施工事例タグリスト */
.category_list ul {
  display: flex !important;
  flex-wrap: wrap !important;
  flex-direction: row !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.category_list li {
  white-space: nowrap !important;
}

/* CF7 お問い合わせフォーム */
.wpcf7 dl.mailform {
  padding: 10px 0;
}
.wpcf7 dl.mailform dt.mfp {
  float: left;
  width: 160px;
  clear: both;
  font-size: 12px;
  padding: 10px 0;
  text-align: right;
  border-top: solid 1px #CCC;
  margin: 0;
}
.wpcf7 dl.mailform dd.mfp {
  border-top: solid 1px #CCC;
  margin: 0;
  padding: 10px 5px 20px 170px;
  font-size: 12px;
  line-height: 1.5em;
}
.wpcf7 dl.mailform dd.mfp input,
.wpcf7 dl.mailform dd.mfp textarea {
  border: solid 1px #CCC;
  border-radius: 3px;
  box-shadow: 0 0 5px #CCC inset;
  padding: 3px 8px;
  margin: 2px;
  width: 90%;
  max-width: 400px;
  font-size: 14px;
}
.wpcf7 dl.mailform dd.mfp textarea {
  width: 90%;
  max-width: 500px;
  height: 150px;
  resize: vertical;
}
.wpcf7 .must {
  display: inline-block;
  background-color: #C00;
  padding: 2px 5px;
  font-size: 10px;
  color: #FFF;
  float: left;
  margin: 0 5px;
  border-radius: 4px;
}
.wpcf7 .mfp_buttons {
  clear: both;
  padding: 10px 0;
  text-align: center;
}
.wpcf7 input[type="submit"] {
  font-size: 18px;
  padding: 8px 40px;
  border-radius: 5px;
  border: solid 1px #CCC;
  background: linear-gradient(to bottom, #EEE, #CCC);
  cursor: pointer;
}
.wpcf7 input[type="submit"]:hover {
  background: linear-gradient(to bottom, #FFF, #CCC);
  box-shadow: 0 2px 15px #CCC;
}
/* CF7 バリデーションメッセージ */
.wpcf7 .wpcf7-not-valid-tip {
  color: #F00;
  font-size: 12px;
  display: block;
}
.wpcf7 .wpcf7-response-output {
  margin: 10px 0;
  padding: 10px;
  border-radius: 5px;
}
/* SP対応 */
@media only screen and (max-width: 649px) {
  .wpcf7 dl.mailform dt.mfp {
    float: none;
    width: auto;
    text-align: left;
    padding: 5px;
  }
  .wpcf7 dl.mailform dd.mfp {
    padding: 5px 15px;
    border-top: none;
  }
  .wpcf7 dl.mailform dd.mfp input,
  .wpcf7 dl.mailform dd.mfp textarea {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
}

/* SP: お問い合わせフォームのinput/textarea幅を100%に */
@media only screen and (max-width: 649px) {
  form#mailformpro dl dd input,
  form#mailformpro dl dd textarea {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
}

