/* 固定ページ共通CSS */
.page-content {
  padding: 40px 0;
  color: #333;
  font-family: "Noto Sans JP", sans-serif;
}
@media (min-width: 1024px) {
  .page-content {
    padding: 90px 0;
  }
}

/* width */
.page-container {
  width: 100%;
  padding: 0 15px;
  margin: 0 auto;
}
@media (min-width: 576px) {
  .page-container {
      max-width: 540px;
  }
}
@media (min-width: 768px) {
  .page-container {
      max-width: 720px;
  }
}
@media (min-width: 992px) {
  .page-container {
      max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .page-container {
      max-width: 1140px;
  }
}

/* h1タグ */
.page_title-h1 {
  font-size: 24px;
  font-weight: 400;
  font-family: "Inter", sans-serif;
  text-align: center;
}
@media (min-width: 1024px) {
  .page_title-h1 {
    font-size: 39px;
  }
  
}


/* hiサブテキスト */
.page_title-sub_text {
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  display: block;
}
@media (min-width: 1024px) {
  .page_title-sub_text {
    font-size: 16px;
  }
  
}


/* h2タグ */
.page_title-h2 {
  font-size: 18px;
  padding-top: 40px;
  padding-bottom: 20px;
}
@media (min-width: 1024px) {
  .page_title-h2 {
    font-size: 24px;
  }
}


/* 本文(pタグ) */
.page-text {
  font-size: 14px;
  line-height: 2;
}
@media (min-width: 1024px) {
  .page-text {
    font-size: 16px;
  }
}


/* 「会社概要」h2タグ用 */
.page_about-h2 {
  font-size: 24px;
  font-weight: 600;
}
@media (min-width: 1024px) {
  .page_about-h2 {
    font-size: 28px;
  }
}

/* 「会社概要」、「特定商取引法」テーブル用CSS */
.page_table-wrap {
  padding-top: 40px;
}
@media (min-width: 1024px) {
  .page_table-wrap {
    padding-top: 60px;
  }
}

.page-table {
  border-top: 1px solid #C3C3C3;
}

.table-texts-wrap {
  padding: 20px 0;
  border-bottom: 1px solid #C3C3C3;
}
@media (min-width: 1024px) {
  .table-texts-wrap {
    display: flex;
    padding: 40px 20px;
  }
}

/* テーブルタイトル */
.table-dt {
  font-weight: 700;
  font-size: 14px;
}
@media (min-width: 1024px) {
  .table-dt {
    width: 25%;
    font-size: 16px;
  }
}

/* テーブルテキスト */
.table-dd {
  font-size: 14px;
  margin-left: 0px;
  padding-top: 10px;
}
@media (min-width: 1024px) {
  .table-dd {
    width: 75%;
    font-size: 16px;
    padding-top: 0px;
  }
}


/* 「プライバシーポリシー」内会社概要ボックス */
.page-border_box {
  border: 3px solid #CCC;
  padding: 1.5rem 2rem;
  margin-top: 30px;
}
@media (min-width: 768px) {
  .page-border_box {
      padding: 1.5rem 3rem;
      display: inline-block;
  }
}

.link-arrow {
  position: relative;
  display: inline-block;
  padding: 0 0 0 16px;
  vertical-align: middle;
  text-decoration: none;
}

.link-arrow-line::before {
  left: 0;
  width: 8px;
  height: 8px;
  border-top: 2px solid #e60039;
  border-right: 2px solid #e60039;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.link-arrow::before, .link-arrow::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

/* 各記事余白
.contents_space_s {
  padding-top: 40px;
} */


/* トレーニングナビ「baseball」「fitness」共通CSS */

/* ヘッダー画像(PC) */
.show-pc {
  display: none;
}
@media (min-width: 768px) {
  .show-pc {
      display: block;
  }
}

/* ヘッダー画像(SP) */
.show-sp {

}
@media (min-width: 768px) {
  .show-sp {
    display: none;
  }
}

/* h3タグ */
.page_navi-h3 {
  padding: 15px;
  margin-top: 60px;
  background-color: #EFEFEF;
  font-size: 16px;
}
@media (min-width: 1024px) {
  .page_navi-h3 {
    margin-top: 90px;
    font-size: 24px;
  }
}

/* h4タグ */
.page_navi-h4 {
  font-size: 16px;
}
@media (min-width: 1024px) {
  .page_navi-h4 {
    font-size: 22px;
  }
}


/* 画像、テキスト全体 */
.page-navi_contents {
  padding: 20px 0;
  border-bottom: 1px solid #C3C3C3;
}
@media (min-width: 768px) {
  .page-navi_contents {
    padding: 40px 0;
  }
}

.navi_contents-flex {

}
@media (min-width: 768px) {
  .navi_contents-flex {
    display: flex;
    align-items: center;
  }
}

/* 画像 */
.navi_contents-img {

}
@media (min-width: 768px) {
  .navi_contents-img {
    width: 50%;
    padding: 0 20px;
  }
}

@media (min-width: 768px) {
  .c_pcimg_width {
    max-width: 70%;
  }
}

/* テキスト */
.navi_contents-text {
  padding-top: 30px;
}
@media (min-width: 768px) {
  .navi_contents-text {
    width: 50%;
    padding: 0 20px;
  }
}

/* 「商品を詳しく見る」テキストリンク */
.product-link {
  text-align: right;
}
@media (min-width: 768px) {
  .product-link {
    text-align: left;
  }
}
.link-red {
  color: #BD271E;
  font-size: 16px;
  font-weight: 700;
  text-decoration: underline;
  transition: opacity .5s;
}
.link-red:hover {
  opacity: 0.7;
}

.btn-bgcolor-red {
  background-color: #BD271E;
}



/* 「お問い合わせ」ページ用CSS(ContactForm7) */

.wpcf7 {
  padding-top: 20px;
}
@media (min-width: 1024px) {
  .wpcf7 {
    padding-top: 60px;
  }
}

.form-group {
  margin-bottom: 0;
  border-bottom: 1px solid #C3C3C3;
  padding: 2.5rem 1.5rem;
}

.row {
  display: flex;
  flex-wrap: wrap;
}

.col {
  flex-basis: 0;
  flex-grow: 1;
}

.col-sm-3 {
position: relative;
width: 100%;
}
@media (min-width: 576px) {
  .col-sm-3 {
      -ms-flex: 0 0 25%;
      flex: 0 0 25%;
      max-width: 25%;
  }
}

.col-sm-9 {
position: relative;
width: 100%;
}
@media (min-width: 576px) {
  .col-sm-9 {
      -ms-flex: 0 0 75%;
      flex: 0 0 75%;
      max-width: 75%;
  }
}

.wpcf7-form-control-wrap {
  position: relative;
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.5rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
      transition: none;
  }
}


.col-form-label {
  padding-top: calc(0.75rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  font-weight: 700;
  line-height: 1.5;
}

.wpcf7-textarea {
  height: auto;
}

.wpcf7_btns-wrap {
  margin-top: 3rem;
}
@media (min-width: 768px) {
  .wpcf7_btns-wrap {
    margin-top: 4rem;
  }
}

.wpcf7_send-text {
  text-align: center;
  padding: 0 15px;
  margin-bottom: 3rem;
}

.wpcf7_btn {
  padding: 0 15px;
  max-width: 300px;
  margin: 0 auto;
}


.label-required {
  color: #fff;
  background-color: #CE2E35;
  margin-left: 10px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.0;
  display: inline-block;
  padding: 3px 5px;
  border-radius: 2px;
}

.wpcf7-response-output {
  margin-top: 0em !important;
  text-align: center;
}


/* 「UCHIDAのものづくり」ページ用CSS */
.monodukuri_bg {
  background-image: url(/wp-content/themes/uchida/assets/images/monodukuri_bg_sp.png);
  background-size: cover;
  background-position: center;
  color: #FFF;
}
@media (min-width: 768px) {
  .monodukuri_bg {
      background-image: url(/wp-content/themes/uchida/assets/images/monodukuri_bg.png);
  }
}

.second_bg {
  padding: 10rem 0;
}
@media (min-width: 768px) {
  .second_bg {
      padding: 17rem 0;
  }
}

.thumb-midashi {
  text-align: center;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.5;
}
@media (min-width: 992px) {
  .thumb-midashi {
      font-size: 42px;
  }
}

.l-spacec_c1 {
  letter-spacing: 0.08em;
  text-indent: 0.08em;
}

.thumb-sub_text {
  display: block;
  font-size: 60%;
}


/* パンくずリスト位置調整用 */
.breadcrumbs-wrap {
  margin: 30px 0;
}
@media (min-width: 768px) {
  .breadcrumbs-wrap {
      margin: 30px 0 30px 30px;
  }
}

/* フォントや余白調整用 */
.inter {
  font-family: "Inter", sans-serif;
}

.mt0 {
  margin-top: 0px;
}

.mt10 {
  margin-top: 10px;
}

.pt10 {
  padding-top: 10px;
}

.pr30 {
  padding-right: 30px;
}

.pb10 {
  padding-bottom: 10px;
}

.h70 {
  height: 70px;
}

.lh_mid {
  line-height: 1.5;
}