@charset "utf-8";
/* CSS Document */
/********** レスポンシブ　**********/

@media (max-width : 1119px ){
.cb_main_container img {
width: 90%;
height: auto;
margin-top: 5em;
}
.cb_gmemu_item .txt_e {
font-size: 1.6vw;
}
.cb_gmemu {
gap: 25px;
}
}

@media (max-width : 1043px ){
.cb_container {
width: 90%;
}

.cb_service_container_box1,.cb_service_container_box2 {
height:600px;
}

.cb_service_container_box1_txtarea {
right: 1em;
padding-top: 20%;
}

.cb_service_container_box2_txtarea {
left: 1em;
padding-top: 20%;
}

.cb_service_container_box2_txtarea .cb_service_title {
font-size: 2.8em;
}

/* NEWS　*/

.cb_news_box_item {
display: block;
width: 45%;
margin-bottom: 3em;
}
}
.cb_sp_menulogo {
  display: none;
}
@media (max-width : 990px ){
  #cb_pc_logo {
    margin-right: 5vw;
  }
}
@media (max-width : 878px ){
html { 
font-size: 14px;
line-height: 1.6em !important; /*  20250813 yokota--反映されない-- */;
}

header {
border-top: #000 solid 2px;
text-align: left;
height: 50px;
padding: 0.5em;
}

header img {
width: 150px;
height: auto;
}

/* toggleメニュー　*/

.cb_gmemu {
    display: block;
}

#top-logo-sp {
  display:block;
}
 .nav {
    position: fixed;
    right: -320px; /* 右から出てくる */
    top: 0;
    width: 300px; /* スマホに収まるサイズ */
    height: 100vh;
    padding-top: 60px;
    background-color: #000;
    transition: all .6s;
    z-index: 200;
    overflow-y: auto; /* メニューが多くなったらスクロールできるように */
  }
  
  .cb_sp_menulogo {/* 250815　追加 */
display: block;
margin: 0 auto;
margin-top: 2em;
width: 50%;
}

  .cb_hamburger {
    position: absolute;
    right: 15px;
    top: 8px;
    width: 40px; /* クリックしやすい幅 */
    height: 40px; /* クリックしやすい高さ */
    cursor: pointer;
    z-index: 300;
  }
  .cb_gmemu {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .cb_gmemu_item {
    text-align: center;
    padding: 0 14px;
  }
  
   .cb_gmemu_item .txt_min {
    color: #FFF;
  }
  .cb_gmemu_item a {
    display: block;
    padding: 8px 0;
    border-bottom: 1px solid #eee;
    text-decoration: none;
    color: #333;
  }
  .cb_gmemu_item a:hover {
    color: #13DDE0;
  }
  .cb_hamburger_border {
    position: absolute;
    left: 11px;
    width: 30px;
    height: 2px;
    background-color: #000;
    transition: all .6s;
  }
  .cb_hamburger_border_top {
    top: 10px;
  }
  .cb_hamburger_border_center {
    top: 20px;
  }
  .cb_hamburger_border_bottom {
    top: 30px;
  }
/*問い合わせページ用*/
  .contact_cb_hamburger_border {/* 250828追加 */
    position: absolute;
    left: 11px;
    width: 30px;
    height: 2px;
    transition: all .6s;
    background-color: black;
  }

  #cb_pc_logo {/* 250828追加 */
    display:none;
  }

  #contact_header .nav {
    background-color: #000;
  }
  
  #contact_header .nav p{
    color: #fff;
    margin-top: 10px;
  }

/* ============ */

  .black_bg {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 100;
    background-color: #999999;
    opacity: 0;
    visibility: hidden;
    transition: all .6s;
    cursor: pointer;
  }
  
  .navtext {
  overflow: inherit;
  color:#fff;
  font-size: 5em;
  text-shadow: none;
  transition: none;
}
  
  .navtext:hover {
   text-shadow:none; 
  } 
  
    /* 表示された時用のCSS */
  .nav-open .nav {
    right: 0;
  }
  .nav-open .black_bg {
    opacity: .8;
    visibility: visible;
  }
  .nav-open .cb_hamburger_border_top {
    transform: rotate(45deg);
    top: 20px;
	background-color:#FFF;
  }
  .nav-open .cb_hamburger_border_center {
    width: 0;
    left: 50%;
  }
  .nav-open .cb_hamburger_border_bottom {
    transform: rotate(-45deg);
    top: 20px;
	background-color:#FFF;
  }
  
  h2 {
  font-size: 3.5em;
  }
  
  .cb_main_container {
height:600px;
}

/* toggleメニューEND　*/

.swiper1,.swiper2 {
max-height: 600px;
}

/* COMPANY　*/

.cb_company_container {
width: 100%;
background-image: url("../images/cb_company_img.png");
background-repeat: no-repeat; /* 画像を繰り返し表示しない */
background-size:cover; /* 画像の比率を維持し、要素内に収まるように表示 */
background-position: top; 
padding: 1em 0;
}

#aboutus h2 {/* 250904　追加 */
  padding: 2em 0 1em;
  }

#contact_cb_sp_menulogo {
  display:block ;
}

}

@media (max-width : 625px ){

  h2 {
  font-size: 3em;
  }

/* main　*/
.cb_main_container {
display: none;
}

.cb_main_container_sp {
display: block;
}

.cb_main_container_sp img {
width: 100%;
height: auto;/*--100%⇒auto 20250813 yokota--*/

}

.cb_main_container img {
display: none;
}

.swiper1,.swiper2 {
max-height: 400px;

}

/* COMPANY　*/
.cb_map iframe {
width: 100%;
}
}

@media (max-width : 600px ){

h2::before,
h2::after {
display: none;
}

/* ABOUT US　*/

.cb_aboutus_container {
width: 100%;
background-color: #d3d3d3;
display: block;
padding: 4em 0;
justify-content: space-between;
}

/*--新規追加 20250813 yokota--*/
#aboutus .swiper-wrapper{
height: auto;
}
/*--新規追加 20250813 yokota--*/

.swiper1 .swiper-wrapper .swiper-slide{
display: none;
}

.swiper2 .swiper-wrapper .swiper-slide{
display: none;
}

.swiper3 .swiper-wrapper .swiper-slide{
display: block;
}

.swiper4 .swiper-wrapper .swiper-slide{
display: block;
}

.swiper3 .swiper-wrapper .swiper-slide img {
width: 100%;
height: auto;/*--100%⇒auto 20250813 yokota--*/
}

.swiper4 .swiper-wrapper .swiper-slide img {
width: 100%;
height: auto;/*--100%⇒auto 20250813 yokota--*/
}

/* service　*/
.cb_service_container_box1 {
height:auto;
padding-bottom: 2em;
}

.cb_service_container_box2 {
height:auto;
padding-bottom: 2em;
}

.cb_service_container_box1_txtarea {
width: 100%;
position:static;
}

.cb_service_container_box2_txtarea {
width: 100%;
position:static;
}

.cb_service_container_box1_txtarea .cb_service_title {
font-size: 1.5em;
padding-bottom: 0.8em;
text-align: center;
}

.cb_service_container_box2_txtarea .cb_service_title {
font-size: 1.5em;
padding-bottom: 0.8em;
text-align: center;
}


.cb_service_container_box1_txtarea button {
display: inline-block;
width: 100%;
height: 70px;
line-height: 70px;
position: static;
text-align: center;
}

.cb_service_container_box2_txtarea button {
display: inline-block;
width: 100%;
height: 70px;
line-height: 70px;
position: static;
text-align: center;
}
.cb_service_container_box1_txtarea .cb_service_textinner {
float: none;
}
.cb_service_textinner {
width: 100%;
}
.cb_service_container_box1_txtarea button {
margin-top: 3em;
}
/* company　*/
.cb_table_design01 th {
  width: 30%;
  font-size: 0.8em;
   min-width: 1em;
}

/* NEWS　*/
.cb_news_box {
display: block;
}

.cb_news_box_item {
display: block;
width: 100%;
}

.cb_news_day {
font-size: 0.9em;
padding-bottom: 0em;
border-bottom: 1px solid #666666;
margin-bottom: 0.5em;
}
}


@media (max-width: 878px) {
  .wpcf7-form-control-wrap input {
    padding: 1em;
    width: 95%;
  }
}

@media (max-width: 667px) {
  .wpcf7-form-control-wrap textarea {
    width: 95%;
  }
}