/*
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 {
  width: 100% !important;
  box-sizing: border-box !important;
}
.wpcf7 form p {
  margin: 0 !important;
  padding: 10px 0 !important;
  border-top: solid 1px #DDD !important;
  box-sizing: border-box !important;
}
.wpcf7 form p:last-of-type {
  border-top: none !important;
  padding-top: 16px !important;
  text-align: center !important;
}
.wpcf7 form label {
  display: block !important;
  font-size: 13px !important;
  font-weight: bold !important;
  color: #444 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.wpcf7 form .wpcf7-form-control-wrap {
  display: block !important;
  width: 100% !important;
  margin-top: 4px !important;
}
.wpcf7 form input[type="text"],
.wpcf7 form input[type="email"],
.wpcf7 form input[type="tel"] {
  width: 100% !important;
  max-width: 100% !important;
  border: solid 1px #CCC !important;
  border-radius: 3px !important;
  box-shadow: 0 0 5px rgba(0,0,0,0.08) inset !important;
  padding: 8px 10px !important;
  font-size: 14px !important;
  box-sizing: border-box !important;
  background: #FAFAFA !important;
}
.wpcf7 form textarea {
  width: 100% !important;
  max-width: 100% !important;
  border: solid 1px #CCC !important;
  border-radius: 3px !important;
  box-shadow: 0 0 5px rgba(0,0,0,0.08) inset !important;
  padding: 8px 10px !important;
  font-size: 14px !important;
  box-sizing: border-box !important;
  background: #FAFAFA !important;
  height: 160px !important;
  resize: vertical !important;
}
.wpcf7 form input[type="text"]:focus,
.wpcf7 form input[type="email"]:focus,
.wpcf7 form input[type="tel"]:focus,
.wpcf7 form textarea:focus {
  border-color: #FF699C !important;
  outline: none !important;
  background: #FFF !important;
}
.wpcf7 input[type="submit"] {
  display: inline-block !important;
  width: 100% !important;
  max-width: 240px !important;
  font-size: 16px !important;
  font-weight: bold !important;
  padding: 12px 20px !important;
  border-radius: 3px !important;
  border: none !important;
  background-color: #FF699C !important;
  background: linear-gradient(to bottom, #FF699C, #E0507E) !important;
  color: #FFF !important;
  text-shadow: 0 -1px 0 #C03060 !important;
  cursor: pointer !important;
  letter-spacing: 0.05em !important;
  box-sizing: border-box !important;
}
.wpcf7 input[type="submit"]:hover {
  background-color: #C03060 !important;
  background: linear-gradient(to bottom, #E0507E, #C03060) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2) !important;
}
/* CF7 バリデーションメッセージ */
.wpcf7 .wpcf7-not-valid-tip {
  color: #C00;
  font-size: 12px;
  display: block;
  margin-top: 4px;
}
.wpcf7 .wpcf7-response-output {
  margin: 10px 0;
  padding: 10px 14px;
  border-radius: 3px;
  font-size: 13px;
}
