@charset "UTF-8";
/*
Theme Name:fake_tcd074_child
Version:1.0
Template:fake_tcd074
*/

/*---common-------*/

@media (max-width:787px){
.container{
  padding: 0 10px;
}
}

h2{
font-family: "Poppins", sans-serif;
font-optical-sizing: auto;
}
h3,h4,h5{
font-family: "Noto Sans", sans-serif;
font-optical-sizing: auto;
}
@media (max-width:787px){
}

/* ----------------------------------------------------------------------
 Column layout - カラムレイアウト
---------------------------------------------------------------------- */
.mincho{
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

.text-italic{
  font-style: italic;
}
.image-radius {
 border-radius: 50%;
}
.text-center{
 text-align: center;
}
.pb0{
  padding-bottom: 0;
}
.m-auto{
margin-left: auto;
margin-right: auto;
}
.mt0{
  margin-top: 0 !important;
}
.mb0{
  margin-bottom: 0 !important;
}
.mb1em{
  margin-bottom: 1em !important;
}
.mb2em{
  margin-bottom: 2em !important;
}
.mb3em{
  margin-bottom: 3em !important;
}
.mb4em{
  margin-bottom: 4em !important;
}
.mr1em{
  margin-right: 1em;
}


.pink{
color: #eb988d !important;
}
.green{
  color: #6da571 !important;
}
.blue{
  color: #6d99f2 !important;
}
.white{
  color: #fff !important;
}
.pc-only{
  display: block !important;
}
.sp-only{
  display: none !important;
}
@media (min-width:788px){
.pc-text-center{
  text-align: center;
}
}
@media (max-width:787px){
  .pc-only{
    display: none !important;
  }
  .sp-only{
    display: block !important;
  }
}

.post_row {
  margin-right:-25px;
  margin-left:-25px;
  line-height:2.4;
}


.post_row:before,
.post_row:after {
  display:table;
  content:" ";
}
.post_row:after { clear:both; }

.post_col,
.post_col-2,
.post_col-3,
.post_col-4 {
  box-sizing:border-box; position:relative;
  width:100%;
  min-height:1px;
  margin-bottom:2em;
  padding-right:25px;
  padding-left:25px;
  float:left;
}



@media screen and (min-width: 768px) {
  .post_col-2 { width:50%; }
  .post_col-3 { width:33.33333%; }
  .post_col-4 { width:23.5% !important; }
}
@media screen and (min-width: 1024px) {
    .post_col-2 { width:50%; }
    .post_col-3 { width:33.33333%; }
    .post_col-4 { width:23.5% !important; }
}


.post_content .style4a {
  margin: 0 !important;
  border-left: 3px solid #b3a085;
}

.text-medium{
  font-size: 18px !important;
}
.text-small{
font-size: 14px !important;
}
.text-large{
font-size: 20px !important;
}
.text-large2{
font-size: 20px !important;
}
.text-xlarge{
font-size: 32px !important;
}
.text-bold{
font-weight: 600 !important;
}

@media (max-width: 767px) {
.text-large2{
font-size: 16px !important;
}
}


body {
background-color: #f7fdff !important;
font-size: 15px;
color: #262626;
}
body.home{
background-color: #f7fdff !important;
}
.bg-wt{
  background-color: #fff;
}

/*-------------ヘッダー-----------------*/


header{
  background: rgba(255, 255, 255, 0.8);
}

@media (max-width: 767px){
}


/*------Gナビ-----------------------*/

#global_menu > ul > li > a{
  line-height: 2;
  font-family: "Noto Sans", sans-serif;
}

@media (min-width: 768px) {
.pc #header #global_menu > ul > li > a{
  font-size: 14px;
  font-weight: 500;
padding: 0 10px;
}
.pc #header #global_menu {
  right: 0;
  }
#global_menu .contact-btn{
  background-color: #034c8c;
  padding-left: 20px;
  padding-right: 20px;
}
#global_menu .contact-btn a{
  color: #fff !important;
  height: 100px !important;
line-height: 1.6 !important;
padding-top: 30% !important;
padding-top: 28px !important;
}

#header #global_menu ul ul a {
  background: #333;
}
#header #global_menu ul ul a:hover {
  background: #4897d9;
}

}

@media (min-width: 1050px) {
#container #index_header_content {
height: 800px;
  }
}




/*-----------メインビジュアル-----------------*/
@media only screen and (max-width: 767px) {

}

/****メインスライダー****/
#index_header_content {
  position: relative;
}
#index_header_content .caption img.title{
  margin: auto;
}
#index_header_content .caption {
   padding: 0;
   width: 100%;
   margin: auto;
   position: absolute;
   text-align: center;
   z-index: 4;
   left: 0px;
   right: 0px;
   top: 70%;
   transform: translateY(-50%);
   box-sizing: border-box;
}

#index_header_content .button3{
  margin-top: 20px;
}

@media (min-width: 1401px) {

#index_header_content .caption img.title{
  margin-left: 10%;
margin-right: auto;
max-width: 480px;
}

#index_header_content .button3{
margin-left: 10%;
margin-right: auto;
max-width: 480px;
}


}
@media (max-width: 1000px){
  #index_header_content .caption {
  top: 64%;
   width: 100%;
  }
}



@media (max-width: 1400px)and (min-width: 1000px) {
  #index_header_content .caption img.title{
  max-width: 470px;
  }
}
@media (max-width: 999px)and (min-width: 768px) {
  #index_header_content .caption img.title{
  max-width: 370px;
  }
}
@media (max-width: 950px) {
#index_header_content{
  height: 500px !important;
}
  .slice_image_list.mobile .slice_image{
    height: 500px !important;
  }
#index_header_content .button3 a{
  font-size: 15px;
  height: 40px;
      line-height: 36px;
}
}



@media (max-width: 767px) {
#index_header_content .caption img.title{
max-width: 370px;
}
#index_header_content .button3{
  margin-top: 10px;
}

}
@media (max-width: 420px) {
  #index_header_content .caption img.title{
max-width: 320px;
margin-bottom: 17px;
}
}


#index_slider .logo img {
max-width: 100%;
}


.row.full{
  width: 100%;
}

/*--------common-------*/
.index_content p,
body,
#footer p{
font-size: 15px;
line-height: 2;
font-family: "Noto Sans", sans-serif !important;
}


.post_content p.midashi{
  color: #034c8c;
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 1em;
border-bottom: dotted 1px #c8c8c8;
  }
p.midashi1{
  font-size: 22px;
  margin-bottom: 1em;
}


span.dashed{
   border-bottom: dashed 2px #6594e0;
}


h2.title{
  font-family: "Poppins", sans-serif;
   font-weight: 700;
   font-style: normal;
font-size: 62px;
color: #0487d9;
line-height: 1.8;
  margin-bottom: 0.6em;
}
h2.title span{
font-size: 18px;
color: #034c8c;
display: block;
}
h2.title span::first-letter{
color: #38bae9;
}




h4.title,
.post_content h4.title{
font-size: 20px;
line-height: 1.8;
margin-bottom: 1em;
padding-bottom: 0.4em;
border-bottom: 1px dashed #6d99f2;
}



@media (max-width: 767px){

.index_content p{
font-size: 15px;
}
.post_content p.midashi{
  font-size: 18px;
}
h2.title{
  font-size: 32px;
  }
h2.title span{
  font-size: 20px;
}


}



/*--------------*/
.fadeIn {
-webkit-animation-delay: .5s;
animation-delay: .5s;
}

.index_free_space.cb_contents.num1 {
    padding: 0;
}

#sec01{
background-color: #abd9f4;
  padding-top: 5em;
  padding-bottom: 5em;
  position: relative;
}

#sec01 h2.title{
  text-align: center;
}

#sec01 .container{
max-width: 1400px;
margin: auto;
}

#sec01 .bg-wt{
  border-radius: 30px;
  padding: 2em 10px 3.5em;
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.12);
}
#sec01 .text{
  margin-bottom: 4em;
}
#sec01 .box{
  border: solid 7px #abd9f4;
  border-radius: 30px;
  padding: 0 2em 2em;
}
#sec01 .num{
  font-family: "Poppins", sans-serif;
 font-weight: 700;
 font-style: normal;
font-size: 62px;
color: #034c8c;
text-align: center;
margin-top: -0.6em;
    line-height: 1;
}

#sec01 .sub-t{
font-family: "Noto Sans", sans-serif;
  font-weight: 700;
 font-size: 22px;
 color: #034c8c;
 text-align: center;
 margin-bottom: 0.6em;
}

.a-img{
  position: relative;
}
.bg-blue2{
  background-color: #034c8c;
  color: #fff;
font-weight: 600;
padding: 1em;
line-height: 1.4;
border-radius: 9px;
}
.team{
  background-color: #034c8c;
  color: #fff;
font-weight: 600;
padding: 0 0.3em 0.3em;
line-height: 1.4;
border-radius: 9px;
text-align: center;
border: 3px solid #034c8c;
border-top: none;
}

.team p{
  padding: 0.6em;
}
.team-text{
  background-color: #eaf4fa;
  padding: 2em 1em;
  color: #034c8c;
}
#body .team-text p{
  font-size: 15px;
  line-height: 1.4;
}

#sec01 .flex{
margin: auto;
  max-width: 600px;
  justify-content: space-between;
}
@media (min-width: 900px) {
.sp-only2{
  display: none;
}
  .a-img:before{
    position: absolute;
     width: 167px;
     height: 78px;
    content: "";
    display: block;
  margin-top: 10%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  background-image: url("/wp-content/uploads/concept-img001.png");
  margin-top: 10em;
  margin-left: -4em;
  }

  #sec01 .span_8{
  margin-left: 8%;
  }
}
@media (max-width: 899px) {
.sp-only2{
  display: block;
  }

#sec01 .team-img .span_3,
#sec01 .team-img .span_1,
#sec01 .team-img .span_8{
  width: 100% !important;
}
#sec01 .team-img .span_3.col,
#sec01 .team-img .span_1.col{
  float: none;
}
}

@media (max-width: 767px) {
#sec01 .team-text p{
  font-size: 14px;
}
#sec01 .box{
    margin-bottom: 3em;
  }
#sec01 .fl{
float: left;
}
#sec01 .w50{
  width: 50%;
}
#sec01 .flex{
  display: block;
}
}

/*-----ロジサポネクスト-------------------------*/

#sec02{
background-color: #fcfcfc;
  padding-top: 5em;
  padding-bottom: 5em;
  position: relative;
  background-repeat: no-repeat;
background-position: top right;
 background-size: 70%;
background-image: url("/wp-content/uploads/bg-img001.png");
}
#sec02 .container{
  max-width: 1400px;
}

#sec02 .bg-wt{
border-radius: 30px;
padding: 2em 40px 4em;
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.12);
}

#sec02 .s-box{
border: 7px solid #034c8c;
padding: 1em;
border-radius: 30px;
text-align: center;
}


#sec02 .s-box p{
  color: #034c8c;
  font-weight: 600;
  font-size: 18px;
    line-height: 1.4;
}
#sec02 .box a:hover .s-box{
background-color: #eaf4fa;
transition: 0.7s;
}

#sec02 .text{
margin-bottom: 2em;
}
.s-box{
  position: relative;
}
.top-underLink__arrow {
    position: absolute;
    right: 30px;
    bottom: 25px;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: solid 3px rgba(56, 186, 233, 0.6);
background-color: rgba(56, 186, 233, 0.6);
    border-radius: 50%;
    z-index: 3;
}
.top-underLink__arrow span{
    color: #fff;
  font-weight: bold;
}
#sec02 .box a:hover .top-underLink__arrow{
right: 5%;
transition: 0.7s;
}





@media (max-width: 767px) {
#sec02 {
  padding-top: 40px;
  padding-bottom: 40px;
}

#sec02 .bg-wt{
padding: 2em 8px 4em;
  }
  .top-underLink__arrow {
      right: 30px;
      bottom: 25px;
      width: 30px;
      height: 30px;
}
}

/*------コラム-----------------*/

#blog{
  background-color: #4897d9;
}

#blog .title,
#blog .title span,
#blog .title span::first-letter{
  color: #fff;
}


#blog .blog_list_front .category a {
  background: #022859;
}

#blog .index_blog_list{
width: 100%;
max-width: 1280px;
}

@media (min-width: 768px) {
  #blog .index_blog_list{
    padding-top: 60px;
  }
  #blog .blog_list_front{
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(4, 1fr);
  }
}
/*------在籍スタッフ---------------*/
.index_carousel h2.catch span {
  color: #fff;
}
.index_carousel.num3 .item7 .overlay,
.index_carousel.num3 .item8 .overlay { 
  background:rgba(2,40,89,0.2);
}







/*------事例-----------------*/

#case{
background-color: #fff;
}
#case h2.title{
  text-align: center;
}
#case .index_work_list {
    width: 100%;
    max-width: 1280px;
}


#case .item{
border: 1px solid #ccc;
border-radius: 6px;
overflow: hidden;
}

#case .work_list .item .title {
    color: #034c8c;
    font-size: 18px;
    font-weight: 600;
    text-align: left;
    padding: 0.4em 10px 1em;
  max-height: 4.2em;
}
@media (min-width: 768px) {
  #case .work_list .item .image_wrap_inner {
      height: 200px;
  }
  #case .work_list .item {
      width: calc(100% / 4 - 10px);
      margin: 0 10px 33px 0;
      position: relative;
  }
  #case .index_work_list{
    padding-top: 60px;
  }
}
@media (max-width: 1100px) {
  #case .work_list .item .title {
    font-size: 12px;
  max-height: 5.2em;
}
}
@media (max-width: 767px) {

}

/*---------資料請求-----------------*/

#contact{
  background-repeat: repeat;
 background-position: center center;
 background-image: url("/wp-content/uploads/bg-img002.jpg");
}
#contact .index_content2{
    padding: 35px 0 50px;
}

#contact h2.title,
#contact h2.title span,
#contact h2.title span::first-letter{
  text-align: center;
color: #fff;
}




@media (min-width: 768px){
  .pc-ml1 {
  margin-left: 1em;
  }
}

@media (max-width: 767px){
}


/*-------フッター-------*/


@media (max-width: 767px) {

}

@media (max-width: 991px) {

}


.bg-gray{
  background-color: #eee;
  padding: 20px;
}
.w900{
  max-width: 900px;
}
.mt05em{
  margin-top: 0.5em;
}


.w1000{
  max-width: 1000px;
}
.flex{
  display: flex;
}
.dotte{
  border: 3px dotted #07b53b;
  padding: 20px 10px;
}
.line-box p{
  color: #007c1b;
  font-weight: 600;
}



@media (min-width: 768px) {

}
@media (max-width: 767px) {

}
@media (min-width: 768px) {

}

@media (max-width: 767px) {
}






/**/
.post_content .button a {
  color: #fff;
}

@media (min-width: 768px){

}

#gmap iframe{
vertical-align: bottom;
}
/*-------サイドリンク------------*/



 #Floating-btn .pc-side-btn {
  display: block;
  width: 56px;
  position: fixed;
  right: 0;
  bottom: 20rem;
  z-index: 9999;
  text-align: center;
  padding: 0 auto;
transform: translate3d(100%,0, 0);
  transition: all 0.5s;
}
.header_fix #Floating-btn .pc-side-btn {
  transform: translate3d(0, 0, 0);
}
@media (max-width: 768px) {
  #Floating-btn .pc-side-btn {
    display: none !important;
  }
}


@media (min-width: 769px) {

}




/*-------フッター------------*/
#footer #copyright{
  font-size: 10px;
}
#footer{
  background-color: #e2e8ee;
}

#footer #footer_banner {
  margin-bottom: 0;
}

@media (min-width: 768px){
  #footer #footer_inner {
    padding: 70px 0 70px;
  }
#footer #copyright{
height: 40px;
    line-height: 40px;
  }
}

#footer-info{
  padding-top: 3em;
  padding-bottom: 2em;
  background-color: #082359;
color: #fff;
}
#footer-info a{
  color: #fff;
}
#footer-info .tel-link{
  font-size: 28px;
}
#footer #footer_menu{
  background-color: #082359;
}
#footer #footer_menu a{
  color: #fff;
}



/*----------固定フッター--------------*/


@media (max-width: 1151px) {


}



/*--------ボタン---------*/

.button:not(.button1):not(.button2):not(.button3):not(.button4) a{
color: #fff !important;
background-color: #034c8c;
font-weight: 700;
text-align: center;
font-size: 16px;
display: inline-block;
min-width: 290px;
height: 60px;
line-height: 60px;
border: none !important;
position: relative;
border-radius: 40px;
}



.button:not(.button1):not(.button2) a:hover{
background: #05aff2 !important;
  border: none !important;
transition: 0.75s;
color: #fff !important;
}

.button1 a{
color: #fff !important;
background-color: transparent !important;
border-radius: 40px;
font-weight: 500;
text-align: center;
font-size: 16px;
display: inline-block;
min-width: 256px;
height: 56px;
line-height: 56px;
position: relative;
border: 1px solid #fff;
}

.button2 a{
  color: #fff !important;
  background-color: #034c8c;
  font-weight: 700;
  text-align: center;
  font-size: 16px;
  display: inline-block;
  min-width: 340px;
  height: 60px;
  line-height: 60px;
  border: none !important;
  position: relative;
  border-radius: 40px;
}

.button3 a{
  color: #fff !important;
  background: linear-gradient(135deg, #56CCF2 0%, #2F80ED 100%);
  font-weight: 700;
  text-align: center;
  font-size: 16px;
  display: inline-block;
  min-width: 340px;
  height: 50px;
  line-height: 48px;
  border: 3px solid #fff !important;
  position: relative;
  border-radius: 10px;
}

.mail{
  position: relative;
}

.button1 .mail:before{
  position: absolute;
  width: 38px;
  height: 38px;
 content: "";
 display: block;
 top: 50%;
 left: 10%;
 	transform: translateY(-50%);
     background-repeat: no-repeat;
     background-position: center center;
     background-size: contain;
   background-image: url("/wp-content/uploads/icon-mail.png");
}


.button1 a:hover{
background: #fff !important;
color: #082359 !important;
text-decoration: none;
}

.button2 a:hover{
background: #05aff2 !important;
color: #fff !important;
text-decoration: none;
}


.arrow a{
  position: relative;
}
.arrow a:after{
 position: absolute;
 width: 20px;
 height: 21px;
content: "";
display: block;
top: 50%;
transform: translateY(-50%);
background-repeat: no-repeat;
background-position: center center;
background-size: contain;
background-image: url("/wp-content/uploads/circle.png");
right: 15%;
transition: 0.5s;
 }

.arrow a:hover:after{
right: 10%;
transition: 0.5s;
}

.button3 a:hover{
background: linear-gradient(135deg, #2FA8E8 0%, #1C5FCE 100%) !important;
color: #fff !important;
text-decoration: none;
transition: 0.75s;
}


@media (min-width: 768px) and (max-width: 1040px){
}
@media (max-width: 767px){
.button.sp-center{
    text-align: center;
  }
}


/*-----スマホ固定--------*/

@media only screen and (max-width: 767px){
  .p-request {
    height: 60px;
  }
.p-request__inner {
    padding: 0 35px 0 18px;
}
  .p-request__btn {
    display: block;
  }
}





/*----下層----------------*/

span.marker{
position: relative;
background: linear-gradient(transparent 60%, #fed600 50%);
}

#main_col section{
  margin-bottom: 60px;
}

#container #main_contents{
background-color: #fff;
}



body:not(.home) h2.title{
  font-size: 36px;
  position: relative;
  margin: 0 0 1.4em;
}

body:not(.home) h3.box-title{
font-family: "Noto Sans", sans-serif !important;
  display: inline-block;
  border: 3px solid #000;
  padding: .5em 1em;
  text-align: center;
  font-size: 24px;
  margin: 0em 0 .5em;
  text-align: center;
  min-width: 212px;
}


body:not(.home) h3.title{
font-family: "Noto Sans", sans-serif !important;
}



body:not(.home) h4.title{
font-family: "Noto Sans", sans-serif !important;
  position: relative;
  margin: 0 0 1em;
  font-weight: 700;
  color: #262626;
  line-height: 1.5;
  padding: 0 0 .8em .2em;
  border-bottom: 2px solid #e8e8e8;
}
body:not(.home) h4.title:after {
     content: '';
     background-color: #0487d9;
     width: 4.8em;
     height: 2px;
     position: absolute;
     bottom: -2px;
     left: 0;
     z-index: 1;
}


#body .post_content p {
font-family: "Noto Sans", sans-serif;
  margin-bottom: 0.8em;
}
#body .post_content dt {
    color: #034c8c;
}

@media(max-width: 1250px){

}
.shadox{
  filter: drop-shadow(3px 3px 3px #7f7f7f);
}
@media (min-width: 651px) {
  #container #main_contents{
    width: 100%;
    max-width: 1200px;
  }

}
@media (max-width: 767px){
  body:not(.home) h2.title{
    font-size: 24px;
  }
  body:not(.home) h3.box-title{
    font-size: 18px;
}

body:not(.home) .post_content h4.title{
  font-size: 18px;
  }


}

@media (max-width: 650px) {
  #container #main_contents{
margin: 0 5px;
  }
}


div.well {
border: none !important;
border-radius: 6px;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
}

div.well2 {
background: transparent !important;
padding: 2em 10px;
border-radius: 6px;
border: 2px solid #c8c8c8;
}

#tcd-pb-wrap .tcd-pb-row.row1,
#tcd-pb-wrap .tcd-pb-row.row2,
#tcd-pb-wrap .tcd-pb-row.row3,
#tcd-pb-wrap .tcd-pb-row.row4,
#tcd-pb-wrap .tcd-pb-row.row5,
#tcd-pb-wrap .tcd-pb-row.row6,
#tcd-pb-wrap .tcd-pb-row.row7,
#tcd-pb-wrap .tcd-pb-row.row8,
#tcd-pb-wrap .tcd-pb-row.row9,
#tcd-pb-wrap .tcd-pb-row.row10,
#tcd-pb-wrap .tcd-pb-row.row11,
#tcd-pb-wrap .tcd-pb-row.row12{
    background-color: transparent;
}

 .tcd-pb-row.row1,
 .tcd-pb-row.row2,
 .tcd-pb-row.row3,
 .tcd-pb-row.row4,
 .tcd-pb-row.row5,
 .tcd-pb-row.row6,
 .tcd-pb-row.row7,
.tcd-pb-row.row8,
.tcd-pb-row.row9,
.tcd-pb-row.row10,
.tcd-pb-row.row11,
.tcd-pb-row.row12,{
  background-color: transparent !important;
}
.text-red {
  font-size: 18px;
color: #006dd2;
}

.check ul li{
position: relative;
vertical-align: middle;
line-height: 2.4;
font-size: 16px;
padding-left: 30px;
font-weight: 600;
margin-left: 14px;
}
.check ul {
  list-style: none;
}

.check ul li:before{
position: absolute;
content: "";
width: 28px;
height: 27px;
background-image: url("/wp-content/uploads/icon-check.png");
background-repeat: no-repeat;
background-position: center;
background-size: 70%;
transform: translate(0, -50%);
left: -2%;
top: 50%;
}

.problem-list {
  margin: 20px 0 25px;
  width: 100%;
  background-color: #eaf4fa;
  padding: 0 0 20px;
  border-radius: 10px;
}
.post_content .problem-title {
    background-color: #0487d9;
    color: #fff;
    line-height: 1;
    padding: 12px 0;
    text-align: center;
    font-size: 20px;
    margin-bottom: 15px;
    border-radius: 10px 10px 0 0;
}


ul.icon li{
position: relative;
padding: 0 0 0 1.2em;
}
ul.icon li:before{
  content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 10px;
      height: 10px;
      margin: auto;
      background:#0487d9;
}


dt.mark{
  position: relative;
margin: 0 0 0.5em;
padding: 0 0 0 1em;
font-size: 18px;
}
dt.mark:before{
  content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 9px;
      height: 2px;
      margin: auto;
      background: #05aff2;
}

span.bg{
  background-color: #0487d9;
  color: #fff;
  padding: 0.2em 0.5em;
}

@media (max-width: 767px) {
.post_content .problem-list ul{
  margin-left: 0;
  margin-right: 10px;
}
}
/*-----企業理念-----*/
body:not(.home) h3.box-title.mini{
  font-size: 18px;
}


.benefits {
  display: flex;
  gap: 24px;
  justify-content: space-between;
  flex-wrap: wrap;
}

.benefit-box {
  flex: 1 1 280px;
  padding: 24px 20px;
  border-radius: 12px;
  background: #f7f8fb;
  box-shadow: 0 4px 12px rgba(0,0,0,0.04);
}

.benefit-box h3 {
  font-size: 1.1rem;
  line-height: 1.5;
  margin-bottom: 12px;
}

.benefit-box h3 span {
  font-size: 0.9rem;
  color: #666;
  font-weight: normal;
}

.benefit-box ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.benefit-box li {
  position: relative;
  padding-left: 1.2em;
  margin-bottom: 6px;
  font-size: 0.9rem;
}

.benefit-box li::before {
  content: "●";
  position: absolute;
  left: 0;
  top: 0.1em;
  font-size: 0.6rem;
  color: #0070c9;
}

/* スマホで縦並び */
@media (max-width: 767px) {
  .benefit-box {
    flex: 1 1 100%;
  }
}

@media (max-width: 767px) {
#main_col .s-w50{
  width: 50%;
}
#main_col .s-mlauto{
  margin-right: 0;
  margin-left: auto;
}

}


/*----スタッフ-----*/
#page_header #tab_button_list li a.active {
    color: #ffffff;
    background: #034c8c;
}
h2.catch span{
  color: #034c8c;
}

@media (min-width: 651px) {
#design_page2 .dc_image_content .caption {
      top: 70%;
    }
}
@media (max-width: 650px) {
#design_content_id5 .dc_content .catch,
#design_content_id6 .dc_content .catch,
#design_content_id7 .dc_content .catch,
#design_content_id8 .dc_content .catch {
  font-size: 20px;
    }
#design_content_id5 .dc_image_content .catch,
#design_content_id6 .dc_image_content .catch,
#design_content_id7 .dc_image_content .catch,
#design_content_id8 .dc_image_content .catch{
  font-size: 20px;
  }


}


/*------導入事例-----*/

@media (min-width: 651px) {
.work_content .work_data_list dt{
    width: 190px;
}
.work_content .work_data_list dd {
  -webkit-width: calc(100% - 190px);
  width: calc(100% - 190px);
  }
}



/*------よくあるご質問旧-----*/
.p-faq .p-faq__list{
  background-color: #fff;
}
.p-faq__q { cursor: pointer; padding: 12px 16px; position: relative; background: #f7f7f7;
}
/* 開閉アイコン（＋／−） */
.p-faq__q::after { content: "＋"; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); font-size: 16px;
transition: transform 0.5s ease; }

/* 開いているときのアイコン */
.p-faq__list.is-open .p-faq__q::after { content: "−"; }

/* 回答部分（初期は閉じる） */
.p-faq__a { overflow: hidden;
  height: 0; padding: 0 16px;
transition: height 0.35s ease, padding 0.35s ease; }

.p-faq__list.is-open .p-faq__a {
padding: 12px 16px 36px; }

.p-faq .p-faq__list dt,
.p-faq .p-faq__list dd {
  display: flex;
  margin: 15px 0;
}
.p-faq .p-faq__list dt{
  background: #f5f5f5;
  font-weight: bold;
}

.p-faq .p-faq__list dt::before {
    content: "Q";
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: #4897d9;
    width: 2em;
    height: 2em;
}
#body .p-faq .p-faq__list dt p {
    margin: 0;
    padding-left: 15px;
    font-weight: bold;
    width: 100%;
    line-height: 2;
}
.p-faq .p-faq__list dd{
}
.p-faq .p-faq__list dd::before {
      content: "A";
      display: flex;
      justify-content: center;
      align-items: center;
      color: #4897d9;
      background: #e9edf4;
      width: 2em;
      height: 2em;
        font-weight: bold;
}
.p-faq .p-faq__list dd p {
    padding-left: 15px;
    width: 100%;
  height: auto;
}
.p-faq__list.is-open dd{
    height: auto;
}

@media (max-width: 767px) {
.p-faq__q{
  padding: 12px 20px 12px 16px;
  }
}

/*特徴*/
.ribbon {
  display: inline-block;
  position: relative;
  box-sizing: border-box;
  padding: 4px 6px;
  margin: 0 0 0 -20px;
  width:100%;
  font-size: 15px;
  color: #fff;
  background: #0487d9;
}
.ribbon:before {
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 20px #6eb3e0;
}



.arrow-box{
  position: relative;
  margin-bottom: 4em ;
}
.arrow-box:after {
   content: "";
  position: absolute;
   bottom: -50px;
   left: 0;
   right: 0;
   margin: auto;
   width: 0;
   height: 0;
   border-style: solid;
   border-right: 20px solid transparent;
   border-left: 20px solid transparent;
   border-top: 20px solid #034c8c;
   border-bottom: 0;
  }
/*-----ご依頼の流れ-------*/

.flow-cont-wrap h3.title{
  position: relative;
  border-bottom: 2px dotted #0487d9;
  padding: 0 0 .5em .2em;
}

.post_content .flow-area-wrap{
  background: #e8e8e8;
    padding: 4px;
    position: relative;
    margin-bottom: 4em ;
border: 3px solid #e8e8e8;
}
.flow-area-wrap .row{
  padding: 1.6em;
background: #fff;
margin-bottom: 0;
}
.f-num{
  font-family: "Poppins", sans-serif;
   font-weight: 700;
   font-style: normal;
font-size: 62px;
color: #0487d9;
}

.flow-area-wrap:after {
   content: "";
  position: absolute;
   bottom: -50px;
   left: 0;
   right: 0;
   margin: auto;
   width: 0;
   height: 0;
   border-style: solid;
   border-right: 50px solid transparent;
   border-left: 50px solid transparent;
   border-top: 50px solid #e8e8e8;
   border-bottom: 0;
  }

.flow-area-wrap.last:after{
  display: none;
}

@media (max-width: 767px) {
#body .post_content .flow-area-wrap .f-num{
font-size: 40px;
line-height: 1;
margin-bottom: 0;
  }
}

@media (min-width: 768px) and (max-width: 776px) {}

@media (max-width: 767px) {}

@media (min-width: 481px) and (max-width: 768px) {}

@media (max-width: 480px) {}

@media (min-width: 481px) and (max-width: 768px) {}

@media (max-width: 768px) {}

@media (max-width: 768px) {}

@media (max-width: 480px) {}

@media (min-width: 481px) and (max-width: 768px) {}



@media (max-width: 767px) {

}



@media (min-width: 768px){

}




/*------------------*/

@media (min-width: 1450px){
}
@media (min-width: 768px){
}
@media (max-width: 750px){
}
@media (max-width: 750px){
}


@media (max-width: 767px){
}


/*-------投稿-----------*/

#blog_list .title{
background-color: #fff;
padding: 0 10px;
font-weight: 500;
}
#blog_list .title span{
color: #000;
}

#archive_blog #blog_list .overlay {
    background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.2));
}

@media (min-width: 651px) {
  .single #container #main_contents {
  width: 800px;
  }
}
@media (max-width: 767px){
  #news_archive h2.title span {
      font-size: 16px;
    }
}


.single-post #main_contents #article {
    background: #fff;
    border: 1px solid #ddd;
}
#post_title_area {
    padding: 0 50px 30px;
    position: relative;
}
#main_contents #post_title_area .title {
    margin: 35px 0 0 0;
}

@media (min-width: 768px){
  #article .post_content {
      padding: 0 50px;
  }
}

/*-------導入事例-----------*/

#container #archive_work,
#container #category_work {
  width: 100%;
  max-width: 1200px;
  background-color: #fff;
}

h2.title span {
font-size: 18px;
color: #034c8c;
}

#category_work h2.title span::first-letter{
color: #000;
}
#category_work h2.title span{
  font-size: 16px;
  color: #000;
}

@media (max-width: 767px) {
  #container #archive_work{
  margin: 0;
  padding: 10px;
}

#body.wp-singular #article{
  padding: 0 10px;
}


}


/*------お客様の声--------*/

#voice .voice-section {
  max-width: 900px;
  margin: 0 auto;
  padding: 40px 20px;
}

#voice .voice-title {
  font-size: 1.8rem;
  text-align: center;
  margin-bottom: 30px;
}

#voice .voice-item {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  padding: 20px;
  margin-bottom: 20px;
  border-radius: 8px;
  background: #f7f8fb;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04)
}

#voice .voice-image img {
  width: 120px;
  height: 120px;
  object-fit: cover;
}

#voice .voice-content {
  flex: 1;
}

#voice .voice-name {
  font-weight: bold;
  margin-bottom: 8px;
  font-size: 1rem;
}

#voice .voice-text {
  line-height: 1.7;
  font-size: 0.95rem;
}

/* スマホ対応 */
@media (max-width: 767px) {
#voice .voice-item {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
#voice .voice-image img {
    margin-bottom: 10px;
  }
#voice .voice-content {
    width: 100%;
  }
}



/*---お問い合わせ-----*/
.p-entry__body .form.th-w {
  background: transparent;
}

.p-entry__body .form.th-w p{
  margin-bottom: 0;
}
.p-entry__body .form.th-w .label p{
  font-weight: 700;
}
.post_content .label {
  vertical-align: middle;
}
.p-entry__body .form.th-w .label ,
.p-entry__body .form.th-w .item{
  padding-top: 32px;
padding-bottom: 32px;
}
#article .wpcf7 p {
  font-size: 15px;
}
.container .wpcf7 {
padding-top: 20px;
background: #fafafa;
border: none;
}
.container .wpcf7 .wpcf7-list-item {
    display: inline-block;
}
#article .wpcf7 textarea{
height: 180px;
}
#article .wpcf7 input,
#article .wpcf7 textarea{
border: none;
background-color: #d6e6ef;
border-radius: 4px;
}
#article .wpcf7 .button input{
background-color: #333;
}

.option{
  border-radius: 6px;
    margin-right: 12px;
    padding-top: 8px;
    padding-bottom: 8px;
    width: 48px;
    display: inline-block;
    text-align: center;
    background: rgb(245,200,73);
    color: #fff;
    font-size: 14px;
}
.required{
  border-radius: 6px;
    margin-right: 12px;
    padding-top: 8px;
    padding-bottom: 8px;
    width: 48px;
    display: inline-block;
    text-align: center;
    background: rgb(227,110,110);
    color: #fff;
    font-size: 14px;
}
@media (max-width: 767px){
  #article .wpcf7 p {
    font-size: 14px;
  }

}


/**/
@keyframes upDown {
  0% { transform: translateY(0); }
  50% { transform: translateY(-20px); }
  100% { transform: translateY(0); }
}

#js-index-content01__link img {
  animation: upDown 3s infinite;
}


@keyframes infinity-scroll-left {
from {
transform: translateX(0);
}
to {
transform: translateX(-100%);
}
}
#insta{
  position: relative;
}
#insta .container{
  margin-top: 0;
}
ul li{
list-style: none;
}

.scroll-infinity{
      margin-top: -7em;
}
.scroll-infinity__wrap {
display: flex;
overflow: hidden;

}
.scroll-infinity__list {
display: flex;
list-style: none;
padding: 0
}
.scroll-infinity__list--left {
animation: infinity-scroll-left 240s infinite linear 0.5s both;
}

.scroll-infinity__item>img {
    height: 118px;
    width: auto;
  max-width: 4800px;
}






@keyframes rotateAnimation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.rotate {
  width: 233px;
  height: 233px;
  margin: 0px auto;
  animation: rotateAnimation 18s linear infinite;
}
@media (max-width: 767px){
  .rotate {
    width: 233px;
    height: 233px;
  }
}

/*-----------------------*/
.p-news-list__item .p-article04__header {
    border-bottom: 1px solid #ddd;
    background: #ffffff;
}



/*-----------------------*/


/* reCAPTCHAバッジを非表示にする */
.grecaptcha-badge {
    visibility: hidden;
}


/*アンカー高さ*/
.anchor{
    display: block;
    padding-top: 90px;
    margin-top: -90px;
}
