:root {
  --vk-margin-headding-bottom: 0;
}
body p {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.home .main-section--margin-bottom--on {
    margin-bottom: 0;
}
.home .site-body {
        padding: 100px 0 2.5rem;
    }
.page-id-535 .site-body {
  padding: 0 0 2.5rem;
}

@media (min-width: 992px) {
    .home .site-body {
      padding-bottom: 0;
      padding: 1rem 0 2.5rem;
    }
}
@media (min-width: 1200px) {
  .siteContent {
      padding: 0;
  }
  .container {
    max-width: 1200px;
  }
}

.page-id-535 .page-header {/*事業紹介ページのみ非表示*/
  display: none;
}
.breadcrumb {
  display: none;
}
h2 {
  border-bottom: 2px solid #059ba3;
  border-top: none;
  font-size: 1.75rem;
}
p {
  margin-bottom: 0;
}
.title {
  gap: 0;
}
.title p {
  color: #05959d;
}
.title h3,
.page-header-title {
  font-size: 3rem !important;
  font-weight: 900 !important;
  color: #354154 !important;
  position: relative;
  border-bottom: 1px solid rgba(0, 0, 0, .1);
}

.title h3:after,
.page-header-title:after {
    content: ".";
    line-height: 0;
    display: block;
    overflow: hidden;
    position: absolute;
    bottom: -1px;
    width: 30%;
    border-bottom: 1px solid #059ba3;
}
@media (max-width: 991px) {
  h2 {
    font-size: 1.5rem;
  }
 .title h3 {
    font-size: 2.5rem;
    font-weight: 900;
    margin-bottom: 20px;
  }
}
.page-header-inner {
  margin:5em auto 2em;
}
@media (max-width: 991px) {
.page-header {
  margin-top: 80px;
}
}
/****デフォルト ヘッダーメニュー***/
.site-header,
.header_scrolled .site-header {
  box-shadow: none !important;
  background-color: #354154;
}
.site-header-container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.header_scrolled .site-header-logo {
  display: block !important;
  max-height: 40px;
}

@media (min-width: 992px) {
    .site-header--layout--nav-float .site-header-logo {
    margin-right: .5em;
    margin-bottom: .5rem;
    padding-top: .5rem;
    }
}
@media (max-width: 991px) {
 .site-header {
  position: fixed;
  height: 95px;
 }
 .site-header-logo {
  max-height: 80px !important;
 }
}

/* ヘッダー全体のレイアウト */
/* PCメニュー */
.global-nav-list>li .global-nav-name {
  font-size: 1rem;
}
.global-nav-list {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}
.global-nav-list li a {
    width: 100%;
    color: #fff;
    text-decoration: none;
    transition: color 0.3s ease; 
  }
  .global-nav-list li a:hover {
    color: #05959d;
  }
.phone-number {
  background-color: #05959d;
  text-align: center;
  transition: all 0.3s ease;
}
.phone-number:hover {
  background-color: #fff;
}
.heder-number {
  font-size: 20px;
    letter-spacing: 0.05rem;
    display: inline-block;
    line-height: 1;
}
.uketuke {
  font-size: 12px;
}

/* スマホ時のみ表示 */
@media (max-width: 768px) {
  .header-wrap {
  padding: 10px 20px;
}
  .drawer-toggle {
    display: flex;
  }

  .global-nav {
    position: fixed;
    top: 70px;
    right: 0;
    width: 100vw;
    height: 60vh;
    background-color: #333;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
    transform: translateX(100%);
    transition: transform 0.3s ease;
  }

  .global-nav.open {
    transform: translateX(0);
  }

  .global-nav-list {
    flex-direction: column;
    align-items: flex-start;
    gap: 30;
    padding: 10px 0;
  }

  .global-nav-list li {
    width: 100%;
    padding: 10px 20px;
    border-bottom: 1px solid #8d8d8d;
    font-size: 1.2rem !important;
  }

  .global-nav-list li a {
    display: block;
  }
  .global-nav-list>li:before {
    border-bottom: none;
  }

.phone-number a {
  font-size: 1.8rem !important;
  line-height: 1.8rem;
  padding: 15px 5px !important;
  border-bottom:0 !important;
  margin-top: 10px;
}
.heder-number {
  font-size: 22px;
}
.uketuke {
  font-size: 14px;
}
}
.site-header-logo img {
        max-height: 90px !important;
        margin-left: 10px;
    }
@media (min-width: 992px) {
    .header_scrolled .site-header-logo {
        padding-top: 0;
    }
    .header_scrolled .site-header-logo img {
        max-height: 70px !important;
    }
    .phone-number {
    margin: 20px;
}
}

@media (max-width: 768px) {
    .site-header-logo img {
        max-height: 80px !important;
    }
}

/***************ドロワーメニュー**************/
.vk-mobile-nav-menu-btn {
  background-color: #059ba3;
  border:0;
}
.vk-mobile-nav-menu-btn.menu-open {
    border-color: #333;
    background:var(--vk-mobile-nav-menu-btn-close-bg-src) center 50% no-repeat rgb(5 155 163)
}
.vk-mobile-nav-menu-btn.menu-open {
    border: 0;
}
.vk-mobile-nav-menu-btn.position-right {
    left: inherit;
    right: 15px;
    top: 25px;
}
.vk-mobile-nav {
  padding: 130px 10px;
  background-color: #354154;
  z-index: 500;
}
.vk-mobile-nav nav>ul {
    border-top: 0;
    font-size: 16px;
}
.vk-mobile-nav .widget_nav_menu ul li a, .vk-mobile-nav nav ul li a
 {
    color: #fff;
}
.vk-mobile-nav nav ul li a {
    padding: 1.5em .5em;
    font-size: 16px;
}

/**********メインビジュアル*************/
.main-visual-video-wrapper {
  position: relative; 
  width: 80vw;
  margin-left: calc(50% - 40vw);
}

.main-visual-video {
  width: 95%;
  height: auto;
  display: block;
  /*max-height: 70vh;*/
  object-fit: cover;
  position: relative;
  z-index: 2;
}

/*  四角 */
.main-visual-video-wrapper::after {
  content: '';
  position: absolute;
  width: 400px;
  height: 600px;
  background-color:#05959d;
  bottom: -15%;
  right: -100px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.3);
}
@media (max-width: 768px) {
  .main-visual-video-wrapper {
    width: 100vw;
    margin-left: calc(50% - 50vw);
  }
  .main-visual-video {
    height: 80vh; 
    max-width: 100vw;
    object-fit: cover;
    margin: 0 auto 20px;
  }
  .main-visual-video-wrapper::after {
    content: '';
    position: absolute;
    width: 180px;
    bottom: -5%;
  }
  
}
/************** About us ******************/
.top-text {
  font-size: 2.8rem;
  margin-top: 120px;
}
.about-cover p {
  line-height: 2.1;
}
/*********** アピールポイント **************/

.appeal .kt-row-column-wrap {
  gap: 1rem !important;
}
.appeal .wp-block-kadence-column {
  background-color:#04848b ;
  color: #fff;
  padding: 10px 0;
  font-size: 1.5rem;
}
.font-yel {
  color: #e9ff7a;
}
.font-small {
  font-size: 12px;
}

  /***********サービス 事業内容 ***********/
  .list .wp-block-group {
    gap:0.5em;
  }
  .saw-cover .list h6,
  .bandsaw-cover .list h6 {
    color: #05959d;
    font-size: 1.5rem;
  }
  .saw-cover p,
  .bandsaw-cover p {
    line-height: 1.5rem;
    letter-spacing:0.05rem;
  }
  /*カラムの場合*/
  .saw-cover .wp-block-columns .wp-block-column,
  .bandsaw-cover .wp-block-columns .wp-block-column {
    padding: 25px;
  }
/*kadenceの場合*/
  .saw-cover .wp-block-kadence-column,
  .bandsaw-cover .wp-block-kadence-column {
    padding: 0 25px;
  }

  .filtered {/*画像フィルター*/
    filter: grayscale(90%);
  }
  .service-img500 {
    max-width: 500px;
  }
  .cover-title {
   font-size: 3rem;
  }

.saw-cover .wp-block-group .wp-block-group__inner-container .wp-block-group,
.bandsaw-cover .wp-block-group .wp-block-group__inner-container .wp-block-group {
  margin-top: 20px !important;
}

  @media (max-width: 768px) {

  .saw-cover .wp-block-columns .wp-block-column,
  .bandsaw-cover .wp-block-columns .wp-block-column {
    padding: 0;
  }
  .cover-title {
      font-size: 1.5rem;
      line-height: 4rem;
    }
  }
  .image-stack {
    position: relative;
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
  }
  .img-a {
    position: relative;
    z-index: 2;
  }
  .img-b {
    position: absolute;
    top: 80%;
    left: -20%;
    max-width: 300px; 
    height: auto; 
    z-index: 1;
  }

    .r-cloum-image-with-bg,
  .l-cloum-image-with-bg,
  .c-cloum-image-with-bg {/*画像背景のBOX*/
    position: relative;
    display: inline-block; 
    z-index: 1;
  }
  .r-cloum-image-with-bg p {
    color: #f9f9f9;
  }
  .r-cloum-image-with-bg::after {
    content: '';
    position: absolute;
    width: 350px;
    height: 450px;
    background-color: #05959d;
    top: 18%;
    left: -20px;
    z-index: -1;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
  }
  .l-cloum-image-with-bg::after {
    content: '';
    position: absolute;
    width:450px;
    height: 100%;
    background-color: #05959d;
    bottom: -100px;
    left: -30px;
    z-index: -1;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
  }
  .c-cloum-image-with-bg::after {
    content: '';
    position: absolute;
    width: 250px;
    height: 80%;
    background-color: #05959d;
    bottom: -20px;
    right: 0;
    z-index: -1;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}
 
  /*
 @media (max-width: 991px) {
    .l-cloum-image-with-bg::after {
      width: 250px;
      height: 80%;
      bottom: -20px;
      left: -30px;
    }
  } */ 
@media (max-width: 1024px) {
  .bandsaw-cover .kt-row-column-wrap.kt-mobile-layout-row {
    display: flex;
    flex-direction: column-reverse;
  }
  .l-cloum-image-with-bg::after {
      width: 600px;
      height: 80%;
      bottom: -20px;
      left: 50px;
      }
  .img-b {
    top: unset;
    left: unset;
    margin-left: 10px;
  }
}
 @media (max-width: 768px) {
    .img-a,
    .img-b {
      position: relative !important;
      top: auto !important;
      left: auto !important;
      transform: none !important;
      z-index: auto !important;
      opacity: 1 !important;
      margin-top: 1rem;
    }
    .img-b {
    max-width: 230px; 
  } 
  .l-cloum-image-with-bg::after {
      width: 250px;
    }
  }

 
  .spec-table .has-fixed-layout {
  table-layout: fixed;
  width: 100%; 
  font-family: 'Noto Sans Javanese';
}
 .spec-table .has-fixed-layout thead,
  .spec-table .has-fixed-layout thead th{
    border-bottom: 1px solid #354154;
    border-top: none;
    border-left: none;
    border-right: none;
    background-color: #354154;
    color: #fff;
    font-size: 1.2rem;
}
.spec-table th:first-child {
  width: 25%;
}

  .spec-table td:first-child {
  background-color: #efefef;
  border-top: none;
  border-left: 1px solid #354154;
  border-right: 1px solid #354154;
  border-bottom: 1px solid #354154;
  font-size:1rem;
}
.spec-table td:last-child {
  background-color: #fff;
  border-top: none;
  border-left: 1px solid #354154;
  border-right: 1px solid #354154;
  border-bottom: 1px solid #354154;
  font-size:1rem;
}
@media (max-width: 768px) {
  .r-cloum-image-with-bg::after {
    width: 300px;
    height: 85%;
    top: 25%;
  }
 .spec-table th:first-child {
 display: none !important;
} 
}
  /*************会社概要****************/
.company-table {
  background-color: #fff;
  border-top: 1px solid #efefef;
}

.company-table td,
.history-table td {
  padding: 20px 10px;
  font-size: 1.08rem;
}

.company-table td:first-child {
  width: 30%;
  background-color: #efefef;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #fff;
}
.company-table td:last-child {
  background-color: #fff;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #efefef;
}

/* 沿革 */
.history-table table {
  border-top: 0;
}
.history-table td:first-child {
  width: 30%;
  text-align: center;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #efefef;
}
.history-table td:last-child {
  background-color: #fff;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #efefef;
}
@media (max-width: 768px) {
 .history-table td {
  padding: 20px 5px;
}
}

/*******問い合わせはこちら********/

.footer-contact .wp-block-group {
  gap: unset;
}
.footer-contact .wp-block-group .fax {
  font-size: 1.5rem;
  margin-bottom: 0;
}
.footer-contact h2 {
  font-size:2.8rem !important;
}
.footer-contact h2 a {
  background-color: rgba(5, 149, 157, 0); /* 初期状態は透明 */
  transition: background-color 0.3s ease; /* ふんわり変化 */
}
.footer-contact h2 a:hover {
  background-color: rgba(5, 149, 157, 0.5); /* ホバー時に半透明 */
}
.footer-contact h4 {
  font-size:2.3rem;
}
.mail-btn a {
  padding: .8em 5rem !important;
  font-size: 1.2rem !important;
}
a[href^="tel"] {
  color: inherit;
  text-decoration: none;
}
@media (max-width: 768px) {
 .footer-contact h2 {
  font-size:2rem !important;
}
.mail-btn a {
  padding: .8em 2rem !important;
}
}
/**********フッター***********/
.site-footer{ /*コピーライト*/
  display: none;
}

/***********投稿ページ***************/

.category-news .btn-primary {
  background-color: #05959d;
  border-color:#05959d;
}
.category-news .btn-primary:hover {
  background-color: #17b8c0;
}
.vk_post_imgOuter_singleTermLabel {
  display: none;
}
.entry-meta-item-updated,
.entry-meta-item-author
 {
 display: none;/*更新日・更新者非表示*/
}

/********** 問い合わせフォーム *************/
.wpcf7 form.sent .wpcf7-response-output {
    border-color: #f1f1f1;
}
.wpcf7 form .wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;
    border: 2px solid #f1f1f1;
    background-color: #f1f1f1;
}

/********** プライバシーポリシー *************/
#post-5461 .entry-body {
  margin-top: 100px;
  margin-bottom: 100px;
}
/*************recapcha ロゴ**************/
.grecaptcha-badge {
 display: none;
}
