.companyWrap.contactPage .detailBox .rightChild .submitButton .submitDetail{
  display: block;
  padding: 0;
  
  color: #233D99;
  border: none;
  text-align: center;
  border-radius: 0;
  line-height: 1;
}
.companyWrap.contactPage .detailBox .rightChild .submitButton .submitDetail input {
  display: block;
  padding: 20px;
  background: none;
  background-size: 44px;
  color: #233D99;
  border: 1px solid #233D99;
  text-align: center;
  border-radius: 41px;
  line-height: 1;
  width: 100%;
}
.wpcf7-form-control.disabled{
  opacity: 0.5;
}

.wpcf7-form-control.active{
  opacity: 1;
  cursor: pointer;
}

.wpcf7-response-output{
  display: none !important; 
}

.companyWrap.contactPage .detailBox .rightChild .contact .detailChild .inner .detail input{
  font-weight: 500 !important;
}

@media screen and (max-width: 1024px) {
    .titleChild .en {
        font-size: 222%;
    }
}

@media screen and (max-width: 768px) {
    .titleChild h3, .titleChild h1 {
        background: none;
        padding-left: 0;
        font-size: 111%;
    }
}

.underContent .messageWrap .detailBox .rightChild .overView .list .inner .title br{
  display: none;
}

@media screen and (max-width: 768px) {
  .underContent .messageWrap .detailBox .rightChild .overView .list .inner .title br{
    display: block;
  }
}

/* パンくずリストの横スクロール対応 */
.breadcrumb.single ul {
    display: flex;
    flex-wrap: nowrap; /* 折り返さない */
    overflow-x: auto; /* 横スクロール有効 */
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch; /* iOS でスムーズスクロール */
    gap: 0;
    padding-bottom: 5px; /* スクロールバーの余白 */
}

.breadcrumb.single ul::-webkit-scrollbar {
    height: 4px; /* スクロールバーの高さ */
}

.breadcrumb.single ul::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.3);
    border-radius: 2px;
}

.breadcrumb.single ul::-webkit-scrollbar-track {
    background-color: rgba(0, 0, 0, 0.1);
}

.breadcrumb.single li {
    flex-shrink: 0; /* 縮小しない */
    white-space: nowrap; /* テキストを折り返さない */
    display: flex;
    align-items: center;
    font-size: 85%;
}

.breadcrumb.single li a {
    white-space: nowrap;
}

/* 区切り文字（> など）がある場合 */
.breadcrumb.single li::before,
.breadcrumb.single li::after {
    flex-shrink: 0;
}

/* スマホサイズでのみ適用する場合 */
@media screen and (max-width: 768px) {
    .breadcrumb.single ul {
        /* スマホのみ横スクロール */
    }
}

.breadcrumb.single{
  margin-right: auto;
  margin-left: auto;
  max-width: 1280px;
}

@media screen and (max-width: 768px) {
  .breadcrumb.single{
    padding: 144px 0 0 0; 
  }
  .companyWrap.contactPage .detailBox.single{
      padding-top: 0 !important;
  }
}


.underContent .productsListWrap .detailBox .leftChild .titleChild .en{
  font-weight: 500;
  font-family: "Noto Sans JP", "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.5;
}
.linkChild a{
  font-family: "Noto Sans JP", "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.underContent .productsListWrap .detailBox .rightChild img{
  width: 100%;
  height: auto;
  display: block;
}
.companyWrap.contactPage .detailBox .rightChild.contactDetail .title p{
  font-weight: 700;
}
@media screen and (max-width: 768px) {
    .underContent .productsListWrap .detailBox .leftChild .titleChild .en{
      font-size: 21px;
      line-height: 1.5;
      font-weight: 700;
    }
    .underContent .productsListWrap .detailBox .leftChild .titleChild{
      margin-bottom: 0;
    }
    .underContent .productsListWrap .detailBox .leftChild{
      padding-bottom: 0;
    }
    .underContent .productsListWrap .detailBox .leftChild .titleChild .en span{
      font-size: 80%;
      margin-top: 6px;
    }
    .mainCopy h2{
      font-size: 7.5vw !important;
    }
    .mainCopy span{
      line-height: 1.5;
      display: block;
    }
    .conntactDetailInner .title{
      line-height: 1.25;
      font-weight: 700;
    }
    .companyWrap.contactPage .detailBox .rightChild.contactDetail .text{
      font-weight: 500;
      line-height: 1.8;
    }
    .linkChild a{
      font-size: 100% !important; 
    }
}

.mb30{
  margin-bottom: 30px;
  display: inline-block;
}

.companyWrap.contactPage .detailBox .rightChild.contactDetail .newsDetail .text figure{
  margin: 1.5em 0;
}
.solutionWrap .detailBox .rightChild ul li .title p{
  width: 100%;
}

.solutionWrap .detailBox .rightChild ul li .title p a{
  display: block;
  width: 100%;
  background: url(../images/common/ar.png) no-repeat right 10px center;
  background-size: 0.75em;
}

.companyWrap.contactPage .detailBox .rightChild.contactDetail .text{
  font-weight: 500;
}
.textSetting{
  line-height: 2.2;
}
:target {
  scroll-margin-top: 150px;
}

.solutionWrap .detailBox{
  overflow: hidden;
}

.productsWrap .titleBox{
  display: block; 
}

@media screen and (max-width: 768px) {
    .underContent .oneSolutionWrap .detailBox .miniChild {
      display: none;
    }
    
}

.titleChild h3, .titleChild h1 {
  font-size: 20px;
}

.strengthsWrap .textBox .child p{
  font-size: 20px;
}

@media screen and (max-width: 768px) {
  .titleChild h3, .titleChild h1 {
   font-size: 18px;
 }
 .strengthsWrap .textBox .child p{
   font-size: 18px;
 }
 .underContent .oneSolutionWrap .titleBox .subList ul li:last-child{
   padding-right: 35px;
 }
}

header .mainCopy{
  bottom: 60px;
  text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.4);
}

#underContent .strengthsWrap .textBox .child p{
  padding-right: 0 !important;
}

.underContent .oneSolutionWrap .titleBox .subList ul li a{
  width: 160px;
}

.productsWrap{
  background: #fff;
}

.productsWrap .inner{
  max-width: 800px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  gap: 60px;
}

.productsWrap .inner .image img{
   width: 100%;
}

@media screen and (max-width: 768px) {
   .productsWrap .inner{
     gap: 20px;
     display: block;
   }
   .productsWrap .inner .image{
     margin-top: 40px;
   }
}

.underContent .oneSolutionWrap .detailBox .wideChild .inner .row2Image{
  flex-wrap: wrap;
}

.mt-m{
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .mt-m{
    margin-top: 40px;
  }
}