.hero{
  height: 245px;
  position: relative;
  z-index: 0;
}
.hero_souzoku{
  color: #fff;
  background-image: url(/wp-content/themes/original-child/img/pageimg/souzoku_bk.jpg);
  background-repeat: no-repeat; /* 背景の繰り返し設定 */
  background-position: center center;
  background-size: cover;
}
.hero_souzoku:after{
  content: "";
    background: url(/wp-content/themes/original-child/img/hero_bk.png) 0 0/1400px 392px no-repeat;
    
    height: 392px;
    position: absolute;
    top: 0;
    left: calc(50% - 700px);
    z-index: 1;
}
.hero_omoi{
  color: #fff;
  background-image: url(/wp-content/themes/original-child/img/pageimg/omoi.jpg);
  background-repeat: no-repeat; /* 背景の繰り返し設定 */
  background-position: center center;
  background-size: cover;
}
.hero_omoi:after{
  content: "";
    background: url(/wp-content/themes/original-child/img/hero_bk.png) 0 0/1400px 392px no-repeat;
  
    height: 392px;
    position: absolute;
    top: 0;
    left: calc(50% - 700px);
    z-index: 1;
}
.col-lg-12{
  position: relative;
  z-index: 2;
}
.col-lg-12:before{
  content: "";
  
  width: calc(50vw - 700px);
  height: 245px;
  position: absolute;
  top: 0;
  z-index: 2;
  right: calc(50% + 700px);
}
.col-lg-12:after{
  
  content: "";

  width: calc(50vw - 700px);
  height: 245px;
  position: absolute;
  top: 0;
  z-index: 2;left: calc(50% + 700px);

}
.hero_ttl{
  text-align: center;
  padding-top: 60px;
}

.hero_title{
  padding-top: 100px;
  z-index:100;
  font-size: 3.2rem;
  padding-bottom: 5px;
}
/* sec_sou1 */
section.sec_sou1{
  position: relative;
  z-index: 1;
  margin-top: 70px;
}
.sec1_img{
  flex: 0 0 45%;
  max-width: 45%;
  height: 340px;
  position: relative;
  z-index: 2;

}
.fd-rr {
  flex-direction: row-reverse;
}
.inblock{
  flex: 0 0 55%;
  max-width: 55%;
  background-color: #275589;
  padding: 60px 140px 60px 70px;
  position: relative;
  z-index: 1;
 
  align-items: center;
  min-height: 390px;
  padding: 60px 70px 60px 140px;
}
.inblock:before{
  content: "";
  background-color: #275589;
  width: 70px;
  height: 100%;
  position: absolute;
  top: 0;
  left: -70px;
  z-index: 1;
}
.inblock::before{
  left: auto;
  right: -70px;
}
.ub{
  border-bottom: solid 2px #fff;}
.inblock_box{
 

} 
.inblock_textbox{
  padding-top: 65px;
  line-height: 2.4rem;
 

}
.inblock_textbox p{
  color: #fff;
  font-size:1.8rem;
  padding-left: 20px;
}
.check{
  text-align: left;
}
.check:before{
  content: url(/wp-content/themes/original-child/img/check.png);
  display: inline-block;

}
.check:after{
  left: 5px;
  box-sizing: border-box;
  width: 5px;
  height: 5px;
  border: 5px solid transparent;
  border-left: 5px solid #275589;
}
/* sec_sou1 */
/* sec_sou2 */
.sec_sou2{
  padding-top: 100px;
  padding-bottom: 120px;
  background: url(/wp-content/themes/original-child/img/top/chek.png);
}

.ttl-belt-yellow {
  border-left: solid 10px #faef4c;
  padding-left: 15px;
}
.tai_ttl{
  font-size:2.4rem;
  font-family: serif;
  margin-block-start:0em;
  margin-block-end:0em;

}
.en_serif{
  margin-block-start:0em;
  margin-block-end:0em;
}
.yellow{
  color: #faef4c;
}
.tai_box{
margin-top: 15px;
margin-bottom: 15px;
margin-right: 10px;
  border:solid #faef4c 2px;
  padding: 25px;
}
li.list-yellow{
  padding-left: 20px;
  line-height: 3rem;
  position: relative;
}
li.list-yellow::before{
  content: "";
  background-color: #faef4c;
  width: 10px;
  height: 10px;
  position: absolute;
  top: calc((0.5em * 1.4) - (10px / 2));
  left: 0;
  z-index: 1;
}
.blue{
  color: #75A0B7;
}
.tai2_box{
  margin-top: 15px;
  margin-bottom: 15px;
  margin-right: 10px;
    border:solid #75A0B7;
    padding: 25px;
  }
  li.list-blue{
    padding-left: 20px;
    line-height: 3rem;
    position: relative;
  }
  li.list-blue::before{
    content: "";
    background-color: #75A0B7;;
    width: 10px;
    height: 10px;
    position: absolute;
    top: calc((0.5em * 1.4) - (10px / 2));
    left: 0;
    z-index: 1;
  }
  .cols2{
    max-width: 1400px;
    display: flex;
    justify-content: center;
    margin: 0 auto;
    width:88.8% ;
  }
/* sec_sou2 */
/* sec_sou3 */
.sec_sou3{
  padding-top: 100px;
  padding-bottom: 120px;
}
.sou3_img{
  height: 320px;
    position: relative;
}
.s3img{
  left: auto;
  right:35px;  
  position: absolute;
  z-index: 333;
  background: url(/wp-content/themes/original-child/img/pageimg/sou_1.jpg) center center / cover no-repeat;
  width:1000px;
    height: 100%;
}
.enji{
  color: #8F2020;
}
/* sec_sou3ここまで */
.sec_sou4{
  padding-top: 100px;
  padding-bottom: 20px;
}
.bk_blue{
 margin:0 auto;
    background-color: #275589;
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 60px;
    padding-bottom: 60px;
    width: 100%;
}
.white{
  color: #fff;
}
.inblock_textbox{
  padding-left: 35px;
  
  box-sizing: border-box;
}
.inblock_textbox2{
  padding-left: 35px;
  
  box-sizing: border-box;
}
.storong_point{
 
  padding-top: 60px;
  padding-bottom: 60px;
  border-bottom: solid 2px #275589;

}
.strong_ttl{
  
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    font-size: 120%;
    font-weight: bold;
    color: #275589;
    line-height: 1;
    position: absolute;
    top: 10px;
    left: 30px;
    z-index: 2;

}
.strong_ttl2{
  
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    font-size: 200%;
    font-weight: bold;
    color: #275589;
    line-height: 1;
    position: absolute;
    top: 60px;
    left: 30px;
    z-index: 2;

}
.strong_ttl3{
  
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    font-size: 200%;
    font-weight: bold;
    color: #275589;
    line-height: 1;
    position: absolute;
    top: 110px;
    left: 30px;
    z-index: 2;

}
.strong_ttl4{
  
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    font-size: 100%;
    font-weight: bold;
    color: #275589;
    line-height: 1;
    position: absolute;
    top: 160px;
    left: 30px;
    z-index: 2;

}
.thumb{
  position: relative;
}
.strong_ttl > span,.strong_ttl2 > span,.strong_ttl3 > span,.strong_ttl4 > span{
  display: inline-flex;
    align-items: center;
    background-color: #f7f7f7;
    height: 38px;
    padding: 10px 12px;
    position: relative;
    z-index: 1;
    overflow: hidden;
    
}
.step_ttl_box{
  display: block;
  background-color: #fff;
  border: solid 4px #275589;
width: 88.8%;
  margin-top: 20px;
  padding: 40px 25px 30px;
  position: relative;
  z-index: 2;
  transition: background-color 200ms ease-out;
  left: 0;
  font-family: "heisei-mincho-std", "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
   
    line-height: 1.4;
 text-align: left;
    color: #275589;

}
.just{
  justify-content:space-between;
  align-items: center;
}
.step{
  padding-bottom: 25px;
  border-bottom:2px solid #275589;
  margin-bottom: 20px !important;
  width: 80%;
}
.stepq{
  border: solid 4px #275589;
}
.item50q {
  display: flex;
  flex-direction: column;
  width: calc(50% - 15px);
  box-sizing: border-box;
}
/* 実績 */
.project-block2 .thumb {
  max-width: calc(100% - 15%);
  /* max-height: calc(100% + 30px); */
  position: absolute;
  top: 20;
  right: 30;
  z-index: 1;
  overflow: hidden;
   height: 480px !important; 
}
.ji_img{

}
.inblock2{
  position: absolute;
  z-index: 55;
  top: 80% !important;
  left: 0;
  padding: 25px;
  border: #275589 solid 5px;
  background-color: #fff;
}
.cols_ji{
  width: 88.8%;
  margin: 0 auto;
  position: relative;
}
.project-block2 .upp-ttl{

  z-index:999;
}
.abso2{
margin-top: 200px;
}
.post_work{
  width: 40%;
  position: relative;
  display: flex;
  flex-direction: column;
  margin: 30px;
  box-sizing: border-box;
}
.post_work_img{
  position: relative;
  width: 100%;
}
.post_work_box{
  position: absolute;
  z-index: 2;
  background-color: #fff;
  border: #275589 solid 3px;
  padding: 20px;
  top:15%;
  left: -10%;
  width: 70%;
}
.post_work_img img{
  width: 100%;
  object-fit: cover; 
  aspect-ratio: 9 / 3
}
.myhome{
  font-size: 0.9rem;
  color:darkred;
  padding: 5px 10px;
  border:darkred 2px solid;
  border-radius: 10PX;
}
.fudousan{
  font-size: 0.9rem;
  color:darkblue;
  padding: 5px 10px;
  border:darkblue 2px solid;
  border-radius: 10PX;
}
.jigyou{
  font-size: 0.9rem;
  color:darkgoldenrod;
  padding: 5px 10px;
  border:darkgoldenrod 2px solid;
  border-radius: 10PX;
}
.souzoku{
  font-size: 0.9rem;
  color:darkcyan;
  padding: 5px 10px;
  border:darkcyan 2px solid;
  border-radius: 10PX;
}
.work_title{
  font-size: 1.8rem;
  color: #275589;
  font-family: serif;
}
.single-performance > .performance,.post_work_single > .performance{
flex-direction: column;
}
.post_paerformance_img{
  width: 100%;
}
.post_work_single {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  margin: 30px;
  box-sizing: border-box;
  margin:0 auto;
}
.post_work_single > .performance > .entry-content{
  width: 80%;
  margin: 0 auto;
  position: relative;
}
.post_work_single > .performance > .entry-content img{

    width: 100%;
    object-fit: cover;
    aspect-ratio: 8 / 3;

}
.item100{
  width: 100%;
  padding: 10%;
}
.item100 > h3{
  color: #275589;
  font-family: serif;
  font-weight: 400;
  font-size: 2.8rem;
}
.item100_2{
  width: 100%;
  padding: 5%;
}
.slider_pe_box{
  width: 55%;
}
ul.slide-items{
  margin-bottom: 5rem;
  padding-bottom: 5rem;
}
.anser{
  width: 88.8%;
  padding: 20px;
margin: 0px auto;
background-color: #275589;
color: #fff;
}

#wpsm_accordion_31 .wpsm_panel-default > .wpsm_panel-heading {
  background-color: #275589 !important; 
}
.message{
  font-size: 1.8rem;
  line-height: 5rem;
  font-weight: 400;
  font-family: serif;
}

/* table01 */
#table01{
  border:none;
}
#table01 tr {
  border-bottom: 1px solid #b5b1b1;
}

#table01 th,
#table01 td {
  padding: 24px 0;
 
}

#table01 th {
  width: 30%;
}
.cols2{

  left: 0;
  top:0;
  padding-left: 50px;
}
.sec1_omoi{
  height: auto;
  padding: 16px 0 160px;
  position: relative;
}
.sec1_omoi::after {
  content: "";
  background: url(/wp-content/themes/original-child/img/pageimg/sec1bk.jpg) center center/cover no-repeat;
  width: 100%;
  height: calc(100% - 90px);
  position: absolute;
  top: 90px;
  left: 0;
  z-index: -1;
  transform: skewY(4deg);
}
/* sp */
@media only screen and (max-width: 480px) {
  #table01 th,
  #table01 td {
    width: 100%;
    display: block;
  }

  #table01 th {
    width: 100%;
  }

  #table01 td {
    padding-top: 0;
  }
}
.omoi_img{
  width: 95%;
  object-fit: cover; /* この一行を追加するだけ！ */
  aspect-ratio: 16 / 6;
}
a.btn_top:visited{
 color: #fff;
}

.newsbox{
  width: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 0.5px dotted #333;
}
.date2 {
  font-size: 0.9rem;
  padding-left: 0px;
}
footer{
  margin-top: 150px;
}