@charset "UTF-8";

header {
    width: 100%;
    z-index: 5000;    
    transition: 0.5s;  
    position: relative;
    z-index: 2;
}
.header_container{
    width: 100%; 
    background:rgb(248 235 233 / 90%); 
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 25px 0 10px 40px;
    position: fixed;
}
.header_container .btnBox{
    margin-right: 10px;
}

.header_contentBox {
    margin-right: 90px;
    display: flex;
}
.header_contentBox .header_txtBox{
    margin-right: 10px;
}

.mv {
    background: url(../img/main_bg.webp);
    background-position:  top left;
    background-size: cover ;
    background-repeat:no-repeat;
    margin: 0 auto;
    padding: 110px 0 0 6.8%;
    position: relative;
}

.mv span.txt{
    position: relative;
}
.mv span.txt p {
    margin-left: 18px;
}

.mv .btn {
    position: absolute;
    display: flex;
    bottom: 40px;
}

@media screen and (max-width:1440px) {
}

@media screen and (max-width:1024px) { 
    .mv{    
        padding: 100px 0 25px 37%;    
    } 
}

@media screen and (max-width:770px){
    .header_contentBox{
        margin-right: 0px;
    }
    .header_container{
        width: 100%;
        background: none;
        padding: 10px 0 10px 16px;
        position: relative;
    }
    .header_container h1 {
        width: 60px;
    }
    
    .header_container .btnBox {
        margin-right: 60px;
        
    }    
    .hamburger:after{display: none;}
    
    .mv{
        background: url(../img/main_bg-sp.webp) no-repeat top;
        background-size: cover;
        padding: 20% 0 1px;
        margin-top: -69px;   
    }
    
    .sp.btn_block {
        margin-top: 10px;
    }
    .sp.btn_block .df{
        flex-wrap: wrap;
        justify-content: center;
    }
    
    .mv .btn{
        width: 90%;
        margin: 20px auto 1%;
        position: relative;
        bottom: 10px;
        justify-content: center;
    }
} 

@media screen and (max-width:550px){
    .header_container .btnBox{
        margin-right: 56px;    
    }
}


/*** merit ***/
.merit_wrap{
    padding: 70px 0 26px;
    /*background: #e6bbb5;*/
}

.merit_wrap .innerBox{
    max-width: 900px;
    margin: 0 auto;
}

.merit_wrap h1.ttl2 {
    margin-bottom: 80px;
    letter-spacing: 6px;
    color: #000;
}

.merit_wrap .innerBox p{
    font-size: 2.7rem;
}

.merit_wrap .innerBox p {
    margin-bottom: 24px;
    font-weight: 600;
    letter-spacing: 7px;
}

.merit_wrap .innerBox ul{
    
}
.merit_wrap .innerBox ul li {
    padding: 10px 1px 18px 21px;
    margin-bottom: 30px;
    font-size: 2.4\rem;
    font-weight: 600;
    letter-spacing: -1px;
    color: #000;
}

section.merit_wrap_case {
    margin-bottom: 60px;
    padding: 40px 0 0;
    background: #f5c3c4;
}

section.merit_wrap_case .innerBox{
    max-width: 1340px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}


section.merit_wrap_case .img_blcok{
    text-align: center;
}

section.merit_wrap_case .txt_block{
    max-width: 990px;
}

section.merit_wrap_case .txt_block h1 {
    position: relative;
    display: inline-block;
    margin-bottom: 16px;
    padding: 8px;
    border-radius: 15px 15px 15px 0;
/*    background-color: #ebe2d6;*/
    text-align: left;
    font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN';
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 1.5;
    color: #404040;
    letter-spacing: 3px;
  }
  
/*  section.merit_wrap_case .txt_block h1::before {
    content: "";
    position: absolute;
    bottom: 6px;
    left: 1.7%;
    border-style: solid;
    border-width: 27px 28px 0 0;
    border-color: #ebe2d6 transparent transparent;
    translate: calc(-50% - -0.4px) 100%;
    transform: skew(-28deg);
    transform-origin: top;
  }*/

  section.merit_wrap_case .txt_block p.txt {
    margin-bottom: 32px;
    font-size: 28px;
    line-height: 1.9;
    text-align: center;
    color: #4c3f3f;
}

section.merit_wrap_case .innerBox ul {
    margin-bottom: 80px;
    display: flex;
    justify-content: center;
}
section.merit_wrap_case .innerBox ul li{
    background: #fff;
    border-radius: 50%;
}
section.merit_wrap_case .innerBox ul li:nth-child(2){
    margin: 0 75px;
}

section.merit_wrap_case .txt_block p.txt2 {
    margin: 58px 0 37px;
    line-height: 2;
    font-size: 1.8rem;
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN';*/
    text-align: center;
    color: #646464;
}


@media screen and (max-width:770px) {
    .merit_wrap{
        padding: 30px 0 1px;
    }
    .merit_wrap h1.ttl2{
        margin-bottom: 30px;
        letter-spacing: 0;
    }

    .merit_wrap .innerBox{
        width: 98%;
    }
    .merit_wrap .innerBox p{
        font-size: 1.8rem;
        margin-bottom: 12px;
        letter-spacing: 2px;
    }

    .merit_wrap .innerBox ul li{
        padding: 5px;
        margin-bottom: 15px;
        font-size: 1.6rem;
        letter-spacing: 0px;
    }

    section.merit_wrap_case{
        margin-bottom: 20px;
    }

    section.merit_wrap_case .txt_block{
        width: 98%;
        margin: 0 auto;
    }
    section.merit_wrap_case .txt_block h1{
        margin-bottom: 10px;
        border-radius: 15px;
        font-size: 2.0rem;
        text-align: center;
    }

    section.merit_wrap_case .txt_block h1::before{
        translate: calc(0% - -180%) 100%;
    }
    section.merit_wrap_case .txt_block p.txt{
        margin-bottom: 16px;
        margin-left: 10px;
        font-size: 2.0rem;
        line-height: 1.7;
    }

    section.merit_wrap_case .txt_block .df{
        align-items: center;
    }


    section.merit_wrap_case .innerBox ul {
        margin-bottom: 10px;
        padding: 10px;
        display: block;
    }

    section.merit_wrap_case .innerBox ul li:nth-child(2) {
        margin: 10px 0;
    }

    section.merit_wrap_case .txt_block p.txt2{
        margin: 20px 0;
        line-height: 1.7;
        font-size: 1.6rem;
    }
}


/*** 開発可能な商品(sectionPriduct) ***/
.sectionPriduct {
    max-width: 1380px;
    margin: 0 auto;
    padding-top: 59px;
}

.sectionPriduct_contentBox {
    margin: 64px 0 78px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.sectionPriduct_contentBox .innerBox {
    max-width: 386px;
    width: calc((100% - 20px) / 4);
    background: #eb8c8d;
    text-align: center;
}

.sectionPriduct_contentBox picture.imgBox {
    width: 100%;
    display: inline-block;
    border-top: 3px solid;
    border-image: linear-gradient(90deg, rgba(179,135,3,1) 0%, rgba(247,233,168,1) 50%, rgba(179,135,3,1) 100%); 
    border-image-slice: 1;    
}
.sectionPriduct_contentBox picture.imgBox img {
    width: 100%;
}

.sectionPriduct_contentBox .innerBox h2 {
    padding: 10px;
    font-size: 2.2rem;
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN';*/
    font-weight: 600;
    color: #fff;
    line-height: 1.3;
    letter-spacing: 5px;
    height: 79px;
    display: grid;
    place-items: center;
}

@media (max-width: 1024px) {
  .sectionPriduct {
    padding-top: 80px;
  }

  .sectionPriduct_contentBox {
    margin-top: 40px;
  }
    
    .sectionPriduct_contentBox .innerBox h2{
        font-size: 2.2rem;    
        letter-spacing: 1px;    
    }
}
@media (max-width: 770px) {
  .sectionPriduct_contentBox {
    margin: 40px 0 28px;
    justify-content: center;
  }
  .sectionPriduct_contentBox .innerBox {
    max-width: 250px;
    width: calc((100% - 20px) / 2);
    margin-bottom: 16px;
  }
  .sectionPriduct_contentBox .innerBox h2 {
    line-height: 1.5;
      font-size: 1.5rem;
    letter-spacing: 0px;      
    height: 59px;
  }
  .sectionPriduct_contentBox .innerBox:nth-child(3) {
    order: 7;
  }
  .sectionPriduct_contentBox .innerBox:nth-child(4) {
    order: 8;
  }
  .sectionPriduct_contentBox .innerBox:nth-child(odd) {
    margin-right: 16px;
  }
}

@media screen and (max-width:550px) {
    section#sectionPriduct{margin-bottom: 35px;}
    .sectionPriduct{padding-top: 30px;}
}

/** 悩み **/

.troble_wrap{
    padding: 65px 0 110px;
}
.troble_wrap .innerBox h1 {
    margin-bottom: 87px;
}

.troble_wrap ul {
    display: flex;
    justify-content: center;
}

.troble_wrap ul li {
    width: 30%;
    max-width: 380px;
    margin: 0 20px;
}

.troble_wrap ul li span.txt {
    max-width: 380px;
    margin-bottom: 74px;
    background: #ebe2d6 url(../img/troble_bg.webp) no-repeat 96% 87%;
    display: grid;
    place-items: center;
    border-radius: 10px;
    height: 124px;
    font-size: 2.2rem;
    line-height: 1.6;
}
.troble_wrap ul li span.img{
    text-align: center;
    display: block;
}

@media (max-width: 770px) {
    .troble_wrap{
        padding: 35px 0 20px;
    }

    .troble_wrap .innerBox h1 {
        margin-bottom: 27px;
    }

    .troble_wrap .innerBox{
        width: 100%;
    }

    .troble_wrap ul{
        display: block;
    }

    .troble_wrap ul li {
        width: 95%;
        margin: 0 10px 20px;
        display: flex;
        align-items: center;
    }

    .troble_wrap ul li span.txt{
        width: 60%;
        max-width: 380px;
        margin-bottom: 0;
        padding: 10px;
        font-size: 1.6rem;
        height: auto;
        min-height: 94px;
    }
    .troble_wrap ul li span.img{
        width: 35%;
        max-width: 250px;
        margin-left: 5%;
    }


    
}


/** 解決 **/
.sectionWorry_textContent{
    margin: 89px 0 39px;
    padding-bottom: 92px;
    font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN';
    color: #EB8C8D;
    line-height: 1.25;
    letter-spacing: 0.0125em;
    text-align: center;
    font-size: 4.8rem;  
    font-weight: 600;
    display: flex;
    justify-content: center;
    align-items: center;
}

section#sectionStrengths{
    margin-bottom: 34px;
    padding: 1px 0;
    background: url(../img/strengths_bg.webp);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100% 100%;
}

@media screen and (max-width:1024px) {
    .sectionWorry h1{
        font-size: 3.8vw;
    }
    .sectionWorry h1 span{
        margin-bottom: 18px;
        font-size: 2.1vw;
        letter-spacing: 1px;
    }
    .worry_list li{
        height: 146px;    
        margin-bottom: 36px;    
        font-size: 2rem;
    }
    .worry_list li:before{
        height: 146px;
    }
    
    .sectionWorry_textContent{font-size: 3.5rem;}
    
}

@media screen and (max-width:770px) {
    .sectionWorry_textContent{
        margin: 39px 0 0;
        padding-bottom: 52px;    
        font-size: 6.2vw;
    }
    .sectionWorry_textContent:before{
        width: 68px;
        height: 66px;
        left: 30px;
        top: -30px;   
    }
    .sectionWorry_textContent:after{
        width: 68px;
        height: 66px;    
        right: 40px;
        bottom: -24px;
    }
}

/*** OUR STRENGTHS ***/
.sectionStrengths {
    padding-top: 215px;
    overflow-x: hidden;
  }

.sectionStrengths h1.ttl{
    font-size: 3.6rem;
}
  
  .sectionStrengths .textContent {
    line-height: 2.5;
    letter-spacing: 0.0625em;
  }
  
  .sectionStrengths_contentWrap{
      margin: 0 auto;    
  }
  
  .sectionStrengths_contentBox1{
      margin-top: 39px;
      margin-bottom: 60px;       
  }
  .sectionStrengths_contentBox1 .df{
      justify-content: flex-end;
      align-items: center;
  }
  
  .sectionStrengths_contentBox2{  
      margin-bottom: 60px;     
  }
  .sectionStrengths_contentBox2 .df{
      justify-content: flex-start;
      align-items: center;
  }
  
  .sectionStrengths_contentBox1 .fadeIn_left{
    margin-right: 2%;
      padding-left: 9.285%;
      width: 50%;
  }
  .sectionStrengths_contentBox2 .fadeIn_right {
    margin-left: 2%;
      padding-right: 9.285%;
      width: 50%;
  }
  
  .sectionStrengths_contentBox1 .fadeIn_left h2,
  .sectionStrengths_contentBox2 .fadeIn_right h2{
      background: url(../img/strengths_ttl_bg.webp)no-repeat left 10px;
      font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN';
      font-size: 3.1vw;
      font-weight: 700;
      margin-bottom: 20px;
      letter-spacing: 8px;
      color: #4F423E;
      display: flex;
      align-items: center;
  }
  .sectionStrengths_contentBox1 .fadeIn_left h2 span.sub,
  .sectionStrengths_contentBox2 .fadeIn_right h2 span.sub{
      font-family: 'Playfair Display', serif;
      font-size: 1.4vw;
      color: #EB8C8D;
      display: inline-block;
      padding-top: 18px;
      margin-left: 20px;    
      letter-spacing: 2px;
  }
  
  .sectionStrengths_contentBox1 .fadeIn_left h2 span.no,
  .sectionStrengths_contentBox2 .fadeIn_right h2 span.no{
      display: inline-block;
      padding: 10px 26px;
      margin-right: 25px;
  }
  
  .sectionStrengths_contentBox1 .fadeIn_left h3,
  .sectionStrengths_contentBox2 .fadeIn_right h3{
      margin-bottom: 18px;
      /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN'; */      
      font-size: 3.4rem;
      letter-spacing: 0.02em;
      font-weight: 700;
      color: #4E423E;
  }
  
  .sectionStrengths_contentBox1 .imgBox,
  .sectionStrengths_contentBox2 .imgBox{
      width: 50%;
      max-width: 1134px;      
  }
  
  .sectionStrengths_contentBox1 .textContent,
  .sectionStrengths_contentBox2 .textContent {
      max-width: 640px;
      width: 100%;
      line-height: 1.8;
      letter-spacing: 0.0625em;
      font-size: 2rem;   
  }
  
  .content_titleBox{
      display: none;
  }
  
  @media screen and (max-width:1200px) {
      .sectionStrengths_contentBox1,
      .sectionStrengths_contentBox2{
          width: 100%;
          margin-left: auto;
          margin-right: auto;
          padding-left: 0;    
          display: block;
      }
      
      .sectionStrengths .df {
          display: flex;
          justify-content: space-between;        
      }
      
      .content_titleBox{
          display: block;
          margin-bottom: 25px;}
      
      .sectionStrengths_contentBox2 .content_titleBox{
          text-align: right;
      }
      
      .sectionStrengths_contentBox1 .fadeIn_left h2, .sectionStrengths_contentBox2 .fadeIn_right h2 {
          margin-bottom: 10px;
          background-size: contain;
          font-size: 2.9rem;
          letter-spacing: 4px;    
          
      }
      
      .sectionStrengths_contentBox1 .fadeIn_left h2 span.no, .sectionStrengths_contentBox2 .fadeIn_right h2 span.no{
          display: inline-block;
          padding: 6px 0px 3px 15px;
          margin-right: 16px;
          width: 16%;
      }
      .sectionStrengths_contentBox1 .fadeIn_left h2 span.sub, .sectionStrengths_contentBox2 .fadeIn_right h2 span.sub{
          font-size: 1.8rem;
          padding-top: 15px;
          margin-left: 10px;
          letter-spacing: 2px;    
      }
      
      .sectionStrengths_contentBox1 .fadeIn_left h3, .sectionStrengths_contentBox2 .fadeIn_right h3{
          margin-bottom: 18px;
          font-size: 2.6rem;
      }
  
  }
      
  @media screen and (max-width:1024px) {
      .sectionStrengths{
          padding-top: 80px;
      }
      .sectionStrengths_contentBox1 .fadeIn_left, .sectionStrengths_contentBox2 .fadeIn_right
      {
          padding: 10px;
      }
  }
  
  @media screen and (max-width:770px) {
    section#sectionStrengths{
        background-size: cover;
    }
      .sectionStrengths_contentBox2 .df{
          display: block;
      }
      .sectionStrengths_contentBox1 .textContent, .sectionStrengths_contentBox2 .textContent{
          font-size: 1.7rem;
      }
      .sectionStrengths_contentBox1{
          margin-bottom: 30px;    
      }
      .sectionStrengths_contentBox2{
          margin-bottom: 0px;    
      }
      .sectionStrengths_contentBox1 .fadeIn_left h2 span.sub, .sectionStrengths_contentBox2 .fadeIn_right h2 span.sub{
          font-size: 1.4rem;
      }
      
      .sectionStrengths_contentBox1 .fadeIn_left h3, .sectionStrengths_contentBox2 .fadeIn_right h3{
          font-size: 2.2rem;
      }

      .sectionStrengths h1.ttl{
        font-size: 2.2rem;
      }
  }
  
  @media screen and (max-width:770px) {
      .sectionStrengths_contentBox1 .fadeIn_left h2, .sectionStrengths_contentBox2 .fadeIn_right h2{
          font-size: 2.8rem;
          letter-spacing: 1px;
      }
  }
  
  
  @media screen and (max-width:770px) {
      .sectionStrengths .sectionStrengths_contentBox1 .df{
          flex-wrap: wrap-reverse;
      }
      .sectionStrengths .sectionStrengths_contentBox2 .df{
          display: block;
      }
      .sectionStrengths_contentBox2 .content_titleBox{text-align: left;}
      
      .sectionStrengths_contentBox1 .textContent{
          max-width: 100%;
      }
      
      
      .sectionStrengths_contentBox1 .fadeIn_left, .sectionStrengths_contentBox2 .fadeIn_right{
          width: 100%;
          max-width: 100%;
          margin-left: 0;    
      }
      
      .sectionStrengths_contentBox1 .imgBox, .sectionStrengths_contentBox2 .imgBox{
          width: 100%;
          max-width: 100%;
      }
      
      .content_titleBox h2.ttl{
          font-size: 2.2rem;
          margin-bottom: 0;}
      .content_titleBox h3{
          font-size: 1.6rem;
      }
  }
  

/*** 商品の開発事例(sectionWorks) ***/
.sectionWorks {
    position: relative;
}
.sectionWorks .sectionWorks_wrap{
    max-width: 1330px;
    margin: 0 auto 93px;
}

.sectionWorks .df {
    display: flex;
}

.sectionWorks h1.ttl{
    margin-bottom: 0;
}

.sectionWorks .works_block {
    margin: 40px auto 83px;
    padding: 5px 15px 16px;
    position: relative;
    filter: drop-shadow(0 0 15px rgba(206, 206, 206, .6));
}

.sectionWorks .works_block:before{
    content: '';
    width: 100%;
    height: 100%;
    background: #FBF5EE;
    clip-path: polygon(19% 0%, 100% 0%, 100% 100%, 0 100%, 0% 48%);
    position: absolute;
    top: 0;
    left: 0;
    box-shadow: 0 0 20px 0px #cecece;
    z-index: -1;
}

.sectionWorks .works_block h2 {
    margin: 32px 0 32px;
    padding: 13px 14px 16px;
    background: #000;
    color: #fff;
    font-size: 2.8rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    border-radius: 8px;
    letter-spacing: 10px;
    box-shadow: 5px 5px 20px 5px #CCC6C1;
}
.sectionWorks .works_block h2:before{
    content: '●';
    margin-right: 16px;
    display: inline-block;
    font-size: 2.5rem;
}

.sectionWorks .right_box{
    width: 40%;
    max-width: 476px;
    margin-right: 42px;
    padding-bottom: 9px;
    background: url(../img/works_img_bg.png) repeat-x bottom left;
    background-size: 1.5%;
}

.sectionWorks .right_box span.img{
    width: 93%;
    max-width: 442px;
    margin: 0 auto;
    padding: 5px;
    display: block;
}


.sectionWorks .right_box h3{
    margin: 6px 0 11px;
    font-size: 2.6rem;
    font-weight: 700;
    font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN';
    text-align: center;
    color: #fff;
    
}

.sectionWorks .left_box {
    width: 60%;
    max-width: 762px;
}

.sectionWorks .left_box > div{
    max-width: 626px;
    margin-left: 40px;
    padding: 21px 0 1px;
    position: relative;
}

.sectionWorks .left_box h3{
    margin-bottom: 17px;
    font-size: 2.4rem;
    font-weight: 700;
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN';*/
    color: #323232;
}
.sectionWorks .left_box p {
    line-height: 1.8;
    margin-bottom: 42px;
    padding-bottom: 30px;
    border-bottom: 1px solid #E0DFD1;
    letter-spacing: -0.3px;
}
.sectionWorks .left_box p.styleReset{
    margin-bottom: 7px;
    padding-bottom: 0;
    border-bottom: none;    
}

.sectionWorks .right_box dl {
    margin-left: 40px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: baseline;
   /* font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN';*/
    font-size: 2.0rem;  
   /* border-bottom: 1px solid #E0DFD1;*/
}
.sectionWorks .right_box dl dt{
    width: 173px;
    margin-right: 17px;
    margin-top: 14px;
    padding: 8px 0 9px;
    background: linear-gradient(0deg, #eb8c8d 0%, #fff 100%);
    color: #664c00;
    text-align: center;
    border-radius: 10px;
}
.sectionWorks .right_box dl dd{
    width: 30%;
    padding: 8px 0 9px;
     color: #333;
}




@media screen and (max-width:1024px) {
    .sectionWorks .works_box{
        width: 96%;
        margin: 0 auto 65px;    
    }
    
    .sectionWorks .right_box{
        width: 30%;
    }
    
    
    .sectionWorks .right_box span.img{
        width: 90%;
    }
    
    .sectionWorks .left_box{
        width: 100%;
        margin: 0 auto;
    }
    .sectionWorks .right_box{
        width: 88%;
    }
    
    
    .sectionWorks .works_block h2{
        font-size: 2.2rem;
        letter-spacing: 4px;}
    
    .sectionWorks .right_box h3{
        margin: 0;
        font-size: 2.2rem;
    }
    
    .sectionWorks .left_box h3{font-size: 2.2rem;}
    .sectionWorks .left_box > div{
        margin-left: 24px;
    }
}

@media screen and (max-width:770px) {
    .sectionWorks{
        margin: 0 auto 37px;   
    }
    .sectionWorks .works_block2{
        display: block;
        margin-bottom: 0;
    }
    .sectionWorks .works_box{
        margin: -10px auto 45px;
        padding: 0 10px 15px;
    }

    .sectionWorks .sectionWorks_wrap{
        margin: 0 auto 47px;
    }
    
    .sectionWorks .works_block:before{
        height: 83%;
        clip-path: polygon(40% 0%, 100% 0%, 100% 100%, 0 100%, 0% 10%);
        top: auto;
        bottom: 0;
    }

    .sectionWorks .left_box > div{
        margin-left: 0;    
    }
    
    .sectionWorks .works_block h2{
        margin: 26px 0 0px;
        font-size: 2.0rem;    
        letter-spacing: 1px;
        padding: 8px 14px 8px;
    }
    .sectionWorks .works_block h2:before{
        margin-right: 6px;    
        font-size: 2rem;    
    }
    
    .sectionWorks h1.ttl {
        margin-bottom: 27px;
    }    
    
    .sectionWorks .df {
        display: block;
    }

    .sectionWorks .right_box{
        width: 96%;
        margin: 0 auto;
    }
    .sectionWorks .right_box span.img {
        width: 90%;
        max-width: 390px;
        display: block;
        margin: 0 auto;
    }  

    
    .sectionWorks .right_box h3{
        font-size: 2.0rem;
    }
    .sectionWorks .right_box ul.list li{
        font-size: 1.4rem;
    }
    
    .sectionWorks .left_box{
        width: 94%;
        margin: 10px auto;
    }
    .sectionWorks .left_box h3 {
        font-size: 1.8rem;
    }
    .sectionWorks .left_box p{
        margin-bottom: 20px;
        padding-bottom: 15px;
    }

    .sectionWorks p.note{font-size: 1.4rem;}
    .sectionWorks .right_box{
        background-size: 2%;
    }
    .sectionWorks .right_box dl{
        margin-left: 0;
        font-size: 1.6rem;
    }
    .sectionWorks .right_box dl dt{
        width: 130px;
        margin-bottom: 5px;
        margin-top: 10px;
        padding: 4px 0 5px;
    }
    .sectionWorks .right_box dl dd{
        width: 45%;
        margin-bottom: 5px;
        padding: 4px 0 5px;
        }
    
}

/** OEMの流れ(sectionFlow) **/
.sectionFlow {
    padding-top: 67px;
    padding-bottom: 7px;    
    background-size: 100%;
    background-position: top center, bottom center;
    background-repeat: no-repeat, no-repeat;
}

.sectionFlow_listBox1 {
    margin-top: 91px;
}
.sectionFlow_listBox1 > li {
    margin-bottom: 93px;
    border-radius: 30px;
    position: relative;
}

.sectionFlow_listBox1 .sectionFlow_list_item {
    padding: 15px 0px 6px 28px;
    display: flex;
    justify-content: space-between;
    background: #F1F6F6;
    border-radius: 30px;
    position: relative;
}
.sectionFlow_listBox1 .sectionFlow_list_item.sectionFlow_list_item5{
    display: block;
} 


.sectionFlow_listBox1 .sectionFlow_list_item:before{
    content: '';
    width: 90%;
    border-top: 2px solid;
    border-image: linear-gradient(90deg, rgba(187,146,21,1) 0%, rgba(251,245,238,1) 50%, rgba(187,146,21,1) 100%);
    border-image-slice: 1;
    display: block;
    position: absolute;
    top: 142px;
    left: 0;
}
.sectionFlow_listBox1 .sectionFlow_list_item:after{
    content: '';
    width: 90%;
    height: 10%;
    background: #dadada;
    position: absolute;
    margin: auto;
    bottom: 0;
    left: 0;
    right: 0;
    border-radius: 30px;
    box-shadow: 0 20px 10px #dadada;
    z-index: -1;
}

.sectionFlow_listBox1 h2.header {
    display: flex;
    align-items: center;
}

.sectionFlow_listBox1 h2.header .number {
    max-width: 153px;
    margin-right: 5%;
    display: inline-block;
}
.sectionFlow_listBox1 h2.header sapn.txt{
    display: inline-block;
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN'; */ 
    font-size: 3.0rem;
    font-weight: 600;
    color: #4D403E;
    letter-spacing: 1px;
}

.sectionFlow_listBox1 .textContent{
    width: 63%;
    position: relative;
}

.sectionFlow_listBox1 .textContent p {
    font-size: 1.9rem;
    line-height: 1.3;
    padding-top: 45px;
    padding-left: 34px;
    color: #4d403e;
}
.sectionFlow_listBox1 .sectionFlow_list_item > .imgBox,
.sectionFlow_listBox1 .sectionFlow_list_item .df > .imgBox{
    width: 40%;
    max-width: 453px;
    margin-left: 32px;
    position: relative;
}

.sectionFlow_listBox1 .table_img {
    width: 300px;
    position: absolute;
    top: 117px;
    right: -15px;
}


.sectionFlow_list_option {
    max-width: 1100px;
    width: 95%;
    margin: 46px auto 30px;
    background: #fff;
    padding: 55px 12px 36px;
    border-radius: 30px;
    box-shadow: 0 0 20px 5px #d7d6d6;
}
.sectionFlow_list_option .inner_textContent {
  font-size: 1.8rem;
}
.sectionFlow_list_option li {
  border: none;
  margin-bottom: 0;
}
.sectionFlow_list_option li::after {
  content: none;
}
.sectionFlow_list_option .imgBox {
  width: 100%;
  max-width: initial;
}
.sectionFlow_list_option .imgBox img {
  max-height: initial;
}
.sectionFlow_list_option_inner1{
    margin-bottom: 35px;
}
.sectionFlow_list_option_inner1 > div{
    background: url(../img/flow_list-m.png)repeat-y center center;
    background-size: 100%;
    padding: 61px 15px 0;
    position: relative;
}
.sectionFlow_list_option_inner1:before{
    content: '';
    background: url(../img/flow_list-t.png)no-repeat top center;
    background-size: 100% 100%;    
    max-width: 100%;
    height: 30px;
    margin: 0 auto;
    display: block;
}
.sectionFlow_list_option_inner1:after {
    content: '';
    background: url(../img/flow_list-b.png)no-repeat top center;
    background-size: 100% 100%;
    max-width: 100%;
    height: 30px;
    margin: 0 auto;
    display: block;
}


.sectionFlow_list_option_inner1 h4 {
    font-weight: 700;
    line-height: 1.9;
    background-color: #bbb;
    color: #fff;
    text-align: center;
    margin-bottom: 1.95em;
    font-size: 2.8rem;
    border-radius: 10px;
    box-shadow: 0px 5px 10px #ccc;
    position: absolute;
    width: 96%;
    margin: auto;
    left: 0;
    right: 0;
    top: -51px;
}
.sectionFlow_list_option_inner1 .innerBox {
  display: flex;
}
.sectionFlow_list_option_inner1 .imgBox {
  width: 40%;
  max-width: 390px;
  margin-right: 30px;
}
.sectionFlow_list_option_inner1 .inner_textContent {
  flex: 1;
    line-height: 1.9;
}

.sectionFlow_list_option_inner2 {
    
}
.sectionFlow_list_option_inner2 h4 {
    font-weight: 700;
    line-height: 1.9;
    background: linear-gradient(90deg, rgba(251,245,238,1) 0%, rgba(187,146,21,1) 30%, rgba(251,245,238,1) 70%, rgba(187,146,21,1) 100%);;
    color: #fff;
    text-align: center;
    margin-bottom: 1.95em;
    font-size: 2.8rem;
    border-radius: 10px;
    box-shadow: 0px 5px 10px #ccc;
    width: 96%;
    margin: auto;

}
.sectionFlow_list_option_inner2 h4 span {
  font-weight: 700;
  position: relative;
}
.sectionFlow_list_option_inner2 h4 span::after, .sectionFlow_list_option_inner2 h4 span::before {
  content: "";
  width: 1.1667em;
  height: 4px;
  background-color: #fff;
  position: absolute;
  top: 50%;
}
.sectionFlow_list_option_inner2 h4 span::before {
  left: -1.7em;
}
.sectionFlow_list_option_inner2 h4 span::after {
  right: -1.7em;
}

.sectionFlow_list_option_inner2_wrapper {
    width: 96%;
    margin: 25px 28px 17px 0px;
    padding-top: 1.7%;
    background: #fff;
    border-radius: 30px;
    box-shadow: 0 10px 10px rgb(229 231 231 / 50%);
  }
  
ul.sectionFlow_list_option_inner2_exampleList{
margin-top: 37px;
}

.sectionFlow_list_option_inner2_exampleList > li {
    margin-bottom: 0;
padding-bottom: 5.936%;
    width: 100%;
    border-bottom: 2px solid;
    border-image: linear-gradient(90deg, rgba(187,146,21,1) 0%, rgba(251,245,238,1) 50%, rgba(187,146,21,1) 100%);
    border-image-slice: 1;
    display: block;
}
.sectionFlow_list_option_inner2_exampleList > li:last-child {
padding-bottom: 0;
border-bottom: none;
}
.sectionFlow_list_option_inner2_exampleList .inner_list2 {
font-size: 16px;
margin-top: 21px;
}
.sectionFlow_list_option_inner2_exampleList .inner_list2 > li {
display: flex;
    align-items: center;
margin-bottom: 20px;
    padding-left: 24px;
}
.sectionFlow_list_option_inner2_exampleList .inner_list2 > li:last-child {
margin-bottom: 0;
    border-bottom: none;
}

.sectionFlow_list_option_inner2_exampleList .inner_list3 {
flex: 1;
}
.sectionFlow_list_option_inner2_exampleList .inner_list3 li {
    margin: 14px 0;
line-height: 1.75;
padding-left: 1.3em;
position: relative;
    display: flex;
}

.sectionFlow_list_option_inner2_exampleList .inner_list3 li:before{
    content: '◆';
    display: block;
    margin-right: 5px;
}

.sectionFlow_list_option_inner2_exampleList .inner_list4 {
flex: 1;
line-height: 1.75;
margin-bottom: 0;
}

.example_item_title {
display: flex;
align-items: center;
margin-bottom: 22px;
    position: relative;
}
.example_item_title:after{
    content: '';
    width: 100%;
    max-width: 1000px;
    height: 1px;
    display: block;
    background: #CECECE;
    position: absolute;
    bottom: 5px;
    left: 5px;
}

.example_item_title span {
font-weight: 700;
    font-size: 2.4rem;
    color: #4D403E;
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN'; */ 
}
.example_item_title p {
    width: 150px;
    background: #000;
    padding: 22px 0 22px;
    margin-right: 0.8em;
    color: #fff;
    text-align: center;
    font-size: 2.4rem;
    /*font-family: 'Playfair Display', serif;*/
}

.example_item_title h5 {
margin-bottom: -0.4em;
line-height: 1.2;
    font-size: 2.0rem;
}


.example_item2 {
margin-top: 32px;
}
.example_item2 .inner_list2 {
margin-top: 29px;
}
.example_item2 .inner_list2 > li {
margin-bottom: 20px;
    padding-bottom: 18px;
    align-items: stretch;
    border-bottom: 1px solid #CECECE;
    align-items: center;    
}
.example_item2 .inner_list2 > li > p {
padding: 0em;
height: auto;
display: flex;
align-items: center;
justify-content: center;
}
.example_item2 .inner_list2 > li > p span {
height: auto;
}
.example_item2 .inner_list2 > li > p span.text_wrap{
    display: block;
}

.example_item2 .inner_list2 > li:first-child > p {
padding: 0.3em;
}
.example_item2 .inner_list2 > li:first-child > p span {
height: auto;
}
.example_item2 .inner_list3 li::before {
transform: none;
top: 0.6em;
}
.example_item2 .img_content {
    width: 98%;
    margin: 53px auto 32px;
}

.example_item3 {
margin-top: 32px;
}
.example_item3 .example_item_title {
    margin-bottom: 22px;
}

.example_item3_contentBox {
display: flex;
    align-items: center;
}
.example_item3_contentBox .imgBox {
    max-width: 435px;
}
.example_item3_contentBox .inner_list2 {
    width: 55%;
    margin-left: 20px;
}
.example_item3_contentBox .inner_list2 > li {
    padding-bottom: 18px;
align-items: stretch;
    border-bottom: 1px solid #CECECE;
    align-items: center;
}
.example_item3_contentBox .inner_list2 > li > p,
.example_item2 .inner_list2 li p{
    background: url(../img/list2_bg.png)no-repeat top center;
    background-size: 100% 100%;
    width: 120px;
    height: 120px;
    font-size: 2.2rem;
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN';*/
    text-align: center;
    color: #EB8C8D;
    display: flex;
    justify-content: center;
    align-items: center;
}
.example_item3_contentBox .inner_list2 > li > span{
    width: 68%;
    max-width: 417px;
    padding-left: 20px;
    display: block;
    line-height: 1.7;
}

.example_item2 .inner_list2 li > span{
    width: 80%;
    padding-left: 20px;
    display: block;
    line-height: 1.7;    
}

.example_item4 {
margin-top: 32px;
}

@media (max-width: 1350px) {

.example_item3_contentBox .imgBox {
    width: 45%;
    align-items: flex-start;
    margin-top: 20px;
}
}

@media screen and (max-width:1024px) {
    .example_item_title:after{
        width: 100%;
    }
    
    .example_item3_contentBox .inner_list2 > li > p, .example_item2 .inner_list2 li p{
        width: 80px;
        height: 80px;
        font-size: 1.6rem;
    }    
    .example_item3_contentBox .inner_list2 > li > span{
        width: 70%;
    }

    .sectionFlow_listBox1{
        margin-top: 1px;
    }
    .sectionFlow_listBox1 h2.header sapn.txt{
        font-size: 2.7vw;
    }
    
    .sectionFlow_listBox1 .sectionFlow_list_item{
        padding: 5px 5px 40px;
    }
    
}
@media screen and (max-width:770px) {
    
    .sectionFlow_listBox1 .sectionFlow_list_item{
        display: block;
        padding-bottom: 1px;
    }
    .sectionFlow_listBox1 .textContent{
        width: 100%;
    }
    .sectionFlow_listBox1 h2.header sapn.txt{
            font-size: 1.8rem;
        letter-spacing: 0;
    }
    .sectionFlow_listBox1 h2.header .number{
        max-width: 74px;
        margin-right: 10px;
    }
    .sectionFlow_listBox1 h2.header{
            padding-left: 4px;
    }
    
    
    .sectionFlow_list_option_inner1 h4{
        font-size: 2.2rem;  
        width: 88%;
    }
    .sectionFlow_list_option_inner1 > div{
        padding: 21px 15px 0;}
    .sectionFlow_list_option_inner1 .imgBox{
        width: 100%;
        max-width: 100%;
        margin-right: 0;
    }
    
    .sectionFlow_listBox1 .sectionFlow_list_item{
        padding-bottom: 20px;
    }
    
    .sectionFlow_listBox1 .sectionFlow_list_item:before{
        top: 69px;
    }
    
    .sectionFlow_listBox1 .sectionFlow_list_item > .imgBox, .sectionFlow_listBox1 .sectionFlow_list_item .df > .imgBox{
        right: 0;    
    }
    
    .sectionFlow_listBox1 .textContent p{
        padding-left: 10px;
    }
    
    .sectionFlow_listBox1 .table_img{
        width: 90%;
        margin: 6px auto;
        position: relative;
        top: 0;
        right: 0;
    }
    .example_item3_contentBox{display: block;}

    .sectionFlow_list_option_inner2 h4{
            font-size: 2.2rem;
            margin: 10px auto;
        }

    .example_item_title span{
            font-size: 1.8rem;
    }
    .example_item_title p{
        width: 90px;
        font-size: 1.5rem;
    }
    .example_item3_contentBox .inner_list2{
        width: 100%;
        max-width: 100%;
        margin-left: 0;
    }

    .sectionFlow_list_option_inner2_wrapper{
        width: 96%;
        margin: 25px auto 17px;
    }
    .sectionFlow_list_option_inner2_exampleList .inner_list2 > li{
    margin-bottom: 10px;
        padding-left: 4px;
    }

    .example_item3_contentBox .inner_list2 > li > p, .example_item2 .inner_list2 li p {
        font-size: 1.1rem;
    }
    .example_item2 .inner_list2 li > span{
        width: 69%;
    }
    
    .example_item_title h5{
        width: 90%;
    }
    .sectionFlow{padding-top: 44px;}
    
    .sectionFlow_listBox1 > li{margin-bottom: 23px;}
    .sectionFlow_listBox1 > li.inview2_up{margin-bottom: 33px;}

    .sectionFlow_listBox1 .textContent h3{
        font-size: 1.8rem;
    }

    .sectionFlow_listBox1 .number {
    font-size: 1.3em;
    }
    .sectionFlow_listBox1 .textContent p {
    font-size: 16px;
    }
    .sectionFlow_listBox1 .sectionFlow_list_item4 {
    grid-template-columns: 2.3em 1fr;
    }
    .sectionFlow_listBox1 .sectionFlow_list_item4 table {
    width: calc(100% - 1em);
    margin-right: 0.3em;
    }
    .sectionFlow_listBox1 .sectionFlow_list_item4 table th, .sectionFlow_listBox1 .sectionFlow_list_item4 table td {
    font-size: 14px;
    }

    .sectionFlow_listBox1, .sectionFlow_list_item.sectionFlow_list_item5 .df{
        display: block;
    }
    .sectionFlow_listBox1 .textContent p{
        padding-top: 0;
    }

    .sectionFlow_list_option_inner1 .innerBox{
        display: block;
    }

    .sectionFlow_list_option {
        width: 97%;
        margin: 20px auto 0;
        padding: 55px 12px 6px;    
    }
    .example_item3_contentBox{
        display: block;
    }


    .sectionFlow_list_option .inner_textContent{
            margin-bottom: 20px;
    }
    
    ul.sectionFlow_list_option_inner2_exampleList{
        margin-top: 1px;
    }

    .example_item_title .example_num {
        width: 70px;
        font-size: 1.0rem;
    }
    
    .example_item_title h5{
        margin-bottom: 0.6em;
        width: 68%;    
        
    }
    
    .example_item_title h5 span.sub {
    margin-top: 8px;
    font-size: 0.9em;
    }

    .example_item2 {
        margin-top: 12px;
    }

    .example_item2 .img_content {
    width: 100%;
    margin: 23px auto 32px;
    }
    .example_item2 .img_content .imgBox {
    width: 95%;
    }
    .example_item2 .img_content .imgBox:nth-child(3) {
    margin-top: 16px;
    }
}
@media (max-width: 350px) {
.sectionFlow_listBox1 .sectionFlow_list_item4 h3, .sectionFlow_listBox1 .sectionFlow_list_item5 h3 {
    font-size: 0.9em;
}

.example_item_title h5 span.sub {
    font-size: 0.8em;
}
}

/*** よくある質問（sectionFaq）***/
.sectionFaq {
padding-top: 60px;
margin-bottom: 63px;
}

.faq_list li {
    max-width: 1000px;
    margin: 0 auto 60px;
}
.faq_list li:last-child {
border-bottom: none;
}
.faq_list .question, .faq_list .answer {
display: flex;
}

.faq_list .question{
    max-width: 980px;
    margin: 0 auto;
    padding: 3px;
    position: relative;
    border-radius: 50px;
    box-shadow: 0px 0px 10px 0px #CCC6C1;
}
.faq_list .question::before {
    display: flex;
    align-items: center;
    justify-content: center;
    content: "Q";
    font-family: 'Garamond Narrow', serif;
    font-size: 4.8rem;
    color: #fff;
    width: 57px;
    height: 57px;
    background: #eb8c8d;
    border-radius: 50px;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    left: -9px;
}

.faq_list .question p{
    width: 100%;
    padding: 23px 30px 24px 70px;
    background: #fff;
    border-radius: 50px;
    font-size: 2.4rem;
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN';*/
}

.faq_list .answer {
    width: 921px;
    background: #FBF5EE;
    padding: 48px 30px 25px;
    margin: 0 auto;
    border-radius: 0 40px 0 40px;
}
.faq_list .answer::before {
    content: "A";
    margin-right: 36px;    
    font-family: 'Garamond Narrow', serif;
    font-size: 4.8rem;
    color: #8C6600;    
}
.faq_list .answer p {
    margin-bottom: 17px;
    font-size: 2.0rem;
    line-height: 1.6;
}

@media (max-width: 1050px) {
.faq_list li {
    flex-direction: column;
}
.faq_list .question {
    width: 100%;
}
    .faq_list .answer{
        width: 100%;
    }
}
@media (max-width: 770px) {
    .sectionFaq{
        margin-bottom: 46px;
        padding-top: 20px;
    }
.faq_list li {
    padding-left: 0;
    padding-right: 0;
    margin: 0 auto 30px;
}
    
    .faq_list .question p{
        font-size: 1.8rem;
            padding: 10px 20px 10px 50px;
    }
    .faq_list .question::before{
        font-size: 3.8rem;    
        width: 47px;
        height: 37px;    
        top: 0;
        bottom: 0;
        margin: auto;
    }
    
    .faq_list .answer{
        width: 90%;
    padding: 18px 15px 20px;    
    }
    .faq_list .answer p{
        font-size: 1.6rem;
    }
    .faq_list .answer::before{
        margin-right: 16px;
        font-size: 3.8rem;    
    }
    
}


/*** sectionAboutUs ***/
.sectionAboutUs {
    background-image: linear-gradient(120deg, rgba(245, 243, 239, 0.8), rgba(255, 255, 255, 0)), linear-gradient(185deg, rgba(245, 242, 236, 0.8), rgba(255, 255, 255, 0)), linear-gradient(340deg, rgba(223, 216, 205, 0.8), rgba(255, 255, 255, 0));
  padding: 100px 0 55px 6.91667%;
  display: flex;
  justify-content: center;
}
.sectionAboutUs .imgBox {
  flex: 1;
  max-width: 550px;
  margin-right: 40px;
  align-self: flex-start;
}
.sectionAboutUs .textContent {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.sectionAboutUs .textContent h2 {
margin-bottom: 5px;
    display: flex;
    align-items: center;
}
.sectionAboutUs .textContent h2 span{
    font-weight: 700;
    font-size: 3.9rem;  
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN';*/
    display: inline-block;
    line-height: 1.2;
    letter-spacing: 0.025em;    
}

.sectionAboutUs .textContent .representative_name {
    line-height: 1.7778;
    margin-top: 33px;
    margin-right: 110px;
    font-size: 2.0rem;
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN'; */ 
    display: flex;
    justify-content: flex-end;
}
.sectionAboutUs .textContent .p-2 {
  line-height: 2em;
  letter-spacing: 0.05em;
  margin-bottom: 1em;
    font-size: 1.8rem;
}
.sectionAboutUs .textContent .p-2:last-child {
  margin-bottom: 0;
}

.sectionAboutUs .textContent .p-3 {
  line-height: 2em;
    font-weight: 600;
  margin-bottom: 1em;
        /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN'; */
        font-size: 2.0rem;
}

@media screen and (max-width:1390px) {
    .sectionAboutUs .textContent h2 span{
        font-size: 3.1vw;
    }
}

@media screen and (max-width:1024px) {
    .sectionAboutUs .textContent h2 span{
        font-size: 3.2vw;    
        letter-spacing: 0;
    }
}

@media screen and (max-width:770px) {
    .sectionAboutUs{
        padding: 50px 0 35px;
    }
    .sectionAboutUs .container_001{
        display: block;
    }
    .sectionAboutUs .imgBox{
        margin: 0 auto;
    }
    .sectionAboutUs .textContent h2{justify-content: center;}
    .sectionAboutUs .textContent h2 span{
        margin-bottom: 20px;
        text-align: center;
        font-size: 2.6rem;
    }
    
    .sectionAboutUs .textContent .representative_name{
        font-size: 1.6rem;
        margin-bottom: 15px;
    }
    .sectionAboutUs .textContent .p-3{
        font-size: 1.6rem;
    }
    .sectionAboutUs .textContent .p-2{
        font-size: 1.6rem;
    }
}


/*** contact ***/

.sectionContact {
    background: url(../img/contact_bg-t.webp), url(../img/contact_bg-b.webp);
    background-size: 100% 50%, 100% 50%;
    background-position: top center, bottom center;
    background-repeat: no-repeat;
    padding-top: 40px;
    padding-bottom: 53px;
/* 個人情報 */
}
.sectionContact form{font-size: 1.8rem;}

.sectionContact p.txt {
    margin: 40px 0 83px;    
    font-size: 2.4rem;
    text-align: center;
    color: #8C6700;
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN'; */

}

.sectionContact input, .sectionContact textarea, .sectionContact select {
border: none;
}
.sectionContact input::placeholder, .sectionContact textarea::placeholder, .sectionContact select::placeholder {
color: #e0d6b3;
/*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN'; */
}
.sectionContact .section_title {
margin-bottom: 1em;
}
.sectionContact .section_title .section_subtitle {
margin-bottom: 2.5em;
}
.sectionContact body.page-template-page-books #contents .book_gist {
width: 800px;
}
.sectionContact .intro_wrap h2 {
font-size: 150%;
color: #eb6100;
}
.sectionContact .book_gist .atten {
text-align: left;
margin-bottom: 50px;
}
.sectionContact .book_gist span.em {
color: #eb6100;
font-size: 80%;
}
.sectionContact .book_gist .atten span.em {
margin-right: 3px;
}
.sectionContact .book_gist dl span.em {
margin-left: 5px;
}
.sectionContact .book_gist dl {
padding: 1em 0;
margin: 0 auto;
flex-wrap: wrap;
}
.sectionContact .book_gist dl.last {
margin: 0 auto 60px;
}
.sectionContact .book_gist dl dt {
width: 100%;
padding-top: 0.3em;
margin-bottom: 10px;
font-size: 105%;
}
.sectionContact .book_gist dt em {
padding-left: 0.5em;
}
.sectionContact .book_gist dl dd {
width: 100%;
}
.sectionContact .book_gist .label .flex span label {
vertical-align: text-top;
margin-left: 10px;
}
.sectionContact .book_gist em {
color: #C00;
}
.sectionContact .book_gist dd select {
height: 40px;
width: 250px;
font-size: 1.2em;
}
.sectionContact .book_gist dd input {
height: 35px;
font-size: 1.2em;
color: #333;
padding-left: 0.5em;
width: 100%;
border-radius: 4px;
border: #ccc solid 1px;
background-color: #f9f9f9;
box-sizing: border-box;
}
.sectionContact .book_gist dd .book_gist dd input#name,
.sectionContact .book_gist dd input#kana,
.sectionContact .book_gist dd input#tel {
width: 100%;
}
.sectionContact .book_gist dd input#email,
.sectionContact .book_gist dd input#emailcheck {
width: 100%;
}
.sectionContact .book_gist dd input#datepicker,
.sectionContact .book_gist dd input#datepicker0 {
width: 150px;
}
.sectionContact :placeholder-shown {
color: #ccc;
}
.sectionContact ::-webkit-input-placeholder {
color: #ccc;
}
.sectionContact :-moz-placeholder {
color: #ccc;
opacity: 1;
}
.sectionContact ::-moz-placeholder {
color: #ccc;
opacity: 1;
}
.sectionContact :-ms-input-placeholder {
color: #ccc;
}
.sectionContact .book_gist dd input[type=checkbox] {
width: 20px;
height: 20px;
}
.sectionContact .check_css {
-webkit-transition: background-color 0.2s linear;
transition: background-color 0.2s linear;
position: relative;
display: inline-block;
padding: 0 0 0 1.6em;
vertical-align: middle;
cursor: pointer;
}
.sectionContact .check_css:nth-child(1),
.sectionContact .check_css:nth-child(2) {
margin-bottom: 0.5em;
}
.sectionContact .mr2 {
margin-right: 2em;
}
.sectionContact #text {
width: 480px;
padding: 0.5em;
background: #efefef;
font-size: 80%;
}
.sectionContact .check_css:hover:after {
border-color: #0171bd;
}
.sectionContact .check_css:after {
-webkit-transition: border-color 0.2s linear;
transition: border-color 0.2s linear;
position: absolute;
top: 50%;
left: 0;
display: block;
margin-top: -10px;
width: 16px;
height: 16px;
border: 2px solid #ccc;
border-radius: 6px;
content: "";
}
.sectionContact .check_css:before {
-webkit-transition: opacity 0.2s linear;
transition: opacity 0.2s linear;
position: absolute;
top: 50%;
left: 6px;
display: block;
margin-top: -7px;
width: 5px;
height: 9px;
border-right: 3px solid #0171bd;
border-bottom: 3px solid #0171bd;
content: "";
opacity: 0;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.sectionContact input[type=checkbox]:checked + .check_css:before {
opacity: 1;
}
.sectionContact .book_gist textarea {
width: 100%;
height: 200px;
border-radius: 4px;
border: #ccc solid 1px;
background-color: #f9f9f9;
}
.sectionContact .desc {
color: #f00;
font-size: 80%;
}
.sectionContact .book_gist span.ERR {
font-weight: bold;
color: #F00;
}
.sectionContact .book_gist input.confirm {
background-color: #eb6100;
border: none;
cursor: pointer;
display: block;
height: 70px;
text-align: center;
font-size: 125%;
color: #fff;
text-align: center;
border-radius: 50px;
width: 100%;
}
.sectionContact .book_gist input.confirm:hover {
filter: alpha(opacity=70);
opacity: 0.7;
}
.sectionContact .book_gist input.reset {
background-color: #CCCCCC;
border: none;
cursor: pointer;
display: block;
height: 60px;
text-align: center;
font-size: 125%;
color: #fff;
width: 200px;
float: left;
margin-right: 40px;
}
.sectionContact .book_gist input.confirm:hover {
filter: alpha(opacity=70);
opacity: 0.7;
}
.sectionContact .submit {
width: 640px;
margin: 0 auto;
}
.sectionContact .btn_wrap {
width: 100%;
margin: 0 auto;
}
.sectionContact .book_gist input#submit {
background-color: #157e15;
border: none;
cursor: pointer;
display: block;
height: 70px;
text-align: center;
font-size: 125%;
color: #fff;
width: 400px;
float: left;
}
.sectionContact .book_gist input#submit:hover {
filter: alpha(opacity=70);
opacity: 0.7;
}
.sectionContact .book_gist input#back {
background-color: #CCCCCC;
border: none;
cursor: pointer;
display: block;
height: 60px;
text-align: center;
font-size: 125%;
color: #fff;
width: 200px;
float: left;
margin-right: 40px;
}
.sectionContact .book_gist input#back:hover {
filter: alpha(opacity=70);
opacity: 0.7;
}
.sectionContact form .flex {
    width: 840px;
    margin: 0 auto;
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN'; */
}
.sectionContact form dt {
    width: 100%;
    padding-bottom: 11px;
    margin-bottom: 19px;  
    font-size: 2.4rem;
    font-weight: 600;
    border-bottom: 1px solid #BA9C6D;
}
.sectionContact form dt .em {
color: #BA9C6D;
padding: 2px 4px;
font-size: 1.8rem;
}
.sectionContact form dd {
    width: 100%;
    margin-bottom: 34px;    
}
.sectionContact form dd input,
.sectionContact form dd textarea {
    width: 100%;
    font-size: 2.2rem;
    padding: 27px 40px 20px;
    box-shadow: 0 0 10px #ccc;
}
.sectionContact form dd input:placeholder,
.sectionContact form dd textarea:placeholder{
    color: #E1D6B4;
}
.sectionContact form dd input{
    border-radius: 50px;
}
.sectionContact form dd textarea{
    border-radius: 100px;
    height: 190px;
}
.sectionContact form .help-block {
margin-left: 35%;
margin-top: -12px;
margin-bottom: 12px;
}
.sectionContact form .column3 {
justify-content: flex-start;
margin-left: 15.4%;
}
.sectionContact form .column3 dd {
width: auto;
max-width: 600px;
}
.sectionContact form .column3 dd input {
width: 8em;
}
.sectionContact form #pref {
font-size: 1em;
padding: 0.3em 0.5em;
margin-left: 0.6em;
}
.sectionContact form .textarea_block {
align-items: flex-start;
margin-bottom: 2em;
}
.sectionContact .formwrap .pri {
max-width: 800px;
margin: 0 auto;
height: 15em;
overflow-y: scroll;
border: 1px solid #BA9C6D;
font-size: 0.9em;
padding: 30px 40px;
margin-bottom: 40px;
background-color: #fff;
}
.sectionContact .formwrap .pri .area {
margin-bottom: 20px;
padding: 0 10px;
}
.sectionContact .formwrap .pri p.ttl_L,
.sectionContact .formwrap .pri p.ttl {
font-weight: bold;
margin: 0 0 10px -10px;
}
.sectionContact .formwrap .privacy p.ttl_L {
font-size: 16px;
}
.sectionContact .submit_area .confirmation_btn {
display: none;
}
.sectionContact .addr_table .form-group {
display: flex;
}
.sectionContact .addr_table .form-group dd {
margin-right: 20px;
}
.sectionContact .addr_table input, .sectionContact .addr_table select {
margin-bottom: 15px;
}
.sectionContact input#name_kana {
margin-top: 10px;
}
.sectionContact .addr_table .help-block {
color: #888;
font-size: 1em;
}
.sectionContact input#addr {
margin-bottom: 5px;
}
.sectionContact .btn_wrap {
text-align: center;
}
.sectionContact .submit {
    width: 318px;
    margin: 55px auto 70px;
    padding: 0 8px;
    background-color: #BA9C6D;
    color: #fff;
    text-align: center;
    font-weight: 500;
    font-size: 2.4rem;
    display: block;
    transition: 0.3s;
    border-bottom: 3px solid #FFEFBF;
    border-top: none;
    border-left: none;
    border-right: none;
    cursor: pointer;
    border-radius: 10px;
}
.sectionContact .submit:hover {
color: #4b3210;
background-color: #FFEFBF;
    border-bottom: #BA9C6D;
}
.sectionContact .submit_index {
padding: 0.818em 2.182em;
font-weight: 500;
}
.sectionContact .tel_contact {
    width: 840px;
    margin: 0 auto;
    background: #F5F2E9;
display: flex;
justify-content: center;
align-items: center;
    box-shadow: 0 0 10px #ccc;
    border-radius: 50px;
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN'; */
    font-size: 2.4rem!important;
    font-weight: 600;
}
.sectionContact .tel_contact a {
    margin-left: 10px;
    padding: 13px 0 15px;    
    font-family: 'Playfair Display', serif;
    font-size: 4.6rem;
    color: #BA9C6D;
    font-weight: 400;
}
.sectionContact .mail_btnBox {
display: flex;
margin: 30px auto 50px;
justify-content: center;
}
.sectionContact .mail_btnBox input {
width: auto;
text-align: center;
font-weight: 500;
font-size: 1em;
line-height: 1.7;
display: inline-block;
margin-right: 20px;
}
.sectionContact .mail_btnBox .submit {
margin: 0;
padding: 0 8px;
}

@media (max-width: 1200px) {
    .sectionContact form .flex {
      flex-direction: column;
      align-items: center;
    }
    .sectionContact form .flex dt {
      width: 70%;
      max-width: 600px;
      text-align: left;
      margin-bottom: 8px;
    }
    .sectionContact form .flex dt label {
      margin-left: 0.5em;
    }
    .sectionContact form .column3 {
      flex-direction: row;
    }
    .sectionContact form .column3 dt {
      width: auto;
      flex: initial;
    }
    .sectionContact form .column3 dt label {
      margin-left: 0;
    }
    .sectionContact form .select_block {
      flex-direction: row;
      justify-content: flex-start;
      max-width: 600px;
      width: 70%;
      margin: 0 auto;
    }
    .sectionContact form .select_block dt {
      width: auto;
      flex: initial;
    }
    .sectionContact form .select_block dt label {
      margin-left: 0;
    }
    .sectionContact form .select_block dd {
      width: auto;
    }
    .sectionContact form .help-block {
      margin-left: auto;
      margin-right: auto;
      width: 70%;
    }
    .sectionContact .formwrap .pri {
      width: 70%;
      max-width: 600px;
    }
  
    .sectionCheck form .select_block {
      width: 100%;
    }
    .sectionCheck form .select_block dt, .sectionCheck form .select_block dd {
      width: 50%;
      max-width: initial;
    }
  }
  
  @media screen and (max-width:1024px) {
      .sectionContact form .flex{
          width: 90%;
      }
      
      .sectionContact .tel_contact{
          width: 90%;
      }
  }
  @media (max-width: 770px) {
    .sectionContact{
        background-size: 100%, contain, contain, 100%;
    }
      .sectionContact form{font-size: 1.5rem; }
      
      .sectionContact .submit{
          font-size: 1.3rem;
      }
      
      .sectionContact p.txt{
          margin: 20px 0 33px;
          font-size: 1.8rem;
      }
      .sectionContact form dt{
          font-size: 2rem;
      }
      .sectionContact form .flex{
          width: 100%;
      }
      .sectionContact form dt .em{
          font-size: 1.6rem;    
      }
      
    .sectionContact form .flex dt {
      width: 100%;
    }
    .sectionContact form .flex dd {
      width: 100%;
    }
    .sectionContact form .column3 {
      margin-left: 0;
      flex-wrap: wrap;
    }
    .sectionContact form .column3 dt, .sectionContact form .column3 dd {
      width: auto;
      flex: initial;
    }
    .sectionContact form .select_block {
      flex-direction: row;
      justify-content: flex-start;
      max-width: 600px;
      width: 100%;
      margin-left: 0;
    }
    .sectionContact form .select_block dt {
      width: auto;
      flex: initial;
      margin-left: 0;
    }
    .sectionContact form .select_block dt label {
      margin-left: 0;
    }
    .sectionContact form .select_block dd {
      width: auto;
    }
    .sectionContact form .select_block #pref {
      margin-left: 0;
    }
    .sectionContact form .help-block {
      margin-left: 0;
      width: 100%;
      margin-bottom: 30px;
    }
    .sectionContact .formwrap .pri {
      width: 100%;
    }
    .sectionContact .tel_contact {
        width: 100%;
      padding: 20px 0;
      flex-direction: column;
      align-items: center;
    }
    .sectionContact .tel_contact p {
      margin-bottom: 0;
        font-size: 2.0rem;
    }
    .sectionContact .tel_contact a {
        padding: 0;
          margin-left: 0;
          font-size: 2em;
            line-height: 1;
    }
      
      .sectionContact form dd input, .sectionContact form dd textarea{
          font-size: 1.6rem;
          padding: 0.6em 0.5em;
      }    
      .sectionContact form dd textarea{
          border-radius: 20px;
      }
  }
  

/*** footer ***/
.footer_main {
    background: #EB8C8D;
    padding: 50px 0;
    font-size: 16px;
}
.footer_main_container {
    display: flex;
    align-items: center;
}
.footer_main_container .innerBox1 {
    width: 50%;
    flex: 1;
    padding-left: 3.444em;
    color: #fff;
}
.footer_main_container .innerBox1 h2 {
    font-size: 3.6rem;
    font-weight: 700;
    /*font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN'; */ 
    line-height: 1.565;
    letter-spacing: 0.022em;
    margin-bottom: 0.57em;
}

.footer_main_container .footer_list {
    line-height: 1.667;
    letter-spacing: 0.03em;
    margin-bottom: 2.11em;
    font-weight: 500;
    font-size: 1.8rem;
}

.footer_main_snsBox svg {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    position: relative;
    z-index: 20;
}
.footer_main_snsBox svg path {
    fill: #313131;
}
.footer_main_snsBox a::before {
    content: "";
    position: absolute;
    top: 10%;
    bottom: 10%;
    right: 10%;
    left: 10%;
    z-index: 10;
    border-radius: 50%;
}
.footer_main_snsBox a {
    display: inline-block;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    position: relative;
    margin-right: 12px;
}
.footer_main_snsBox a:hover {
    opacity: 0.7;
}

.footer_list_tel::before {
  content: "TEL:";
}

.footer_main_container .innerBox2 {
    width: 50%;
    max-width: 510px;
    border-radius: 30px;
    overflow: hidden;
}
.footer_main_container .innerBox2 iframe {
    width: 100%;
}


@media (max-width: 770px) {
    .footer_main{
        padding: 20px 0;
    }
    .footer_main_container{
        display: block;
    }
    .footer_main_container .innerBox1 h2{
        font-size: 1.7rem;
    }
    .footer_main_container .footer_list{
        font-size: 1.4rem;
    }
    .footer_main_container{
        flex-wrap: wrap-reverse;
    }
    .footer_main_container .innerBox2{
        width: 100%;
        margin: 0 auto 0;
    }
    .footer_main_container .innerBox1{
        width: 100%;
        margin: 0 auto 30px;
        padding-left: 0;
    }
    
    .footer_main_container .innerBox2 iframe{
        margin: 0 auto;
        display: block;
    }
    
}

.copyright {
  padding: 22px 1em 27px;
  text-align: center;
  font-size: 12px;
}

.copyright span {
  display: inline-block;
  font-weight: 300;
}  

@media (max-width: 770px) {
    .copyright{
        margin-bottom: 56px;    
    }
    
    aside#fix-footer {
        width: 100%;
        padding: 10px 0;
        background: rgb(240 240 225 / 95%);
        border-top: 3px solid #B59A4A;
        border-bottom: 3px solid #B59A4A;
        position: fixed;
        bottom: 0;  
    }
    aside#fix-footer .df{
        align-items: center;
    }
    aside#fix-footer .df > div{
        margin: 0 0.5%;
    }
}


.thinks_page {
  background-color: var(--sub_color);
  color: #fff;
  padding: 150px 0 100px;
  min-height: 100vh;
}
.thinks_page h1 {
  margin-bottom: 1.5em;
}
.thinks_page p {
  line-height: 1.5;
  margin-bottom: 60px;
}
.thinks_page a {
  line-height: 1.7;
  padding: 0 1em;
  border: 2px solid #fff;
  background-color: transparent;
  color: #fff;
}

/* 20250827 */
.merit_wrap .merit_wrap_ttl {
    margin-bottom: 80px;
    letter-spacing: 6px;
    color: #000;
    text-align: center;
    font-size: 3.8rem;
    font-weight: 600;
    line-height: 1.48;
}
.sectionPriduct .sectionPriduct_ttl {
    margin-bottom: 56px;
    font-size: 2.4rem;
    font-weight: 600;
    text-align: center;
    letter-spacing: 7px;
    color: #4F423E;
}
.sectionPriduct .sectionPriduct_ttl span {
    margin: 16px 0 17px;
    display: block;
    font-size: 4.8rem;
    font-weight: 500;
    font-family: 'Garamond Narrow', serif;
    line-height: 1;
    letter-spacing: 0.0625em;
    color: #EB8C8D;
}
.sectionStrengths .sectionStrengths_ttl {
    margin-bottom: 56px;
    font-size: 3.6rem;
    font-weight: 600;
    text-align: center;
    letter-spacing: 7px;
    color: #4F423E;
}
.sectionStrengths .sectionStrengths_ttl span {
    margin: 16px 0 17px;
    display: block;
    font-size: 4.8rem;
    font-weight: 500;
    font-family: 'Garamond Narrow', serif;
    line-height: 1;
    letter-spacing: 0.0625em;
    color: #EB8C8D;
}
.sectionFlow .sectionFlow_ttl {
    margin-bottom: 56px;
    font-size: 2.4rem;
    font-weight: 600;
    text-align: center;
    letter-spacing: 7px;
    color: #4F423E;
}
.sectionFlow .sectionFlow_ttl span {
    margin: 16px 0 17px;
    display: block;
    font-size: 4.8rem;
    font-weight: 500;
    font-family: 'Garamond Narrow', serif;
    line-height: 1;
    letter-spacing: 0.0625em;
    color: #EB8C8D;
}
.sectionFaq .sectionFaq_ttl {
    margin-bottom: 56px;
    font-size: 2.4rem;
    font-weight: 600;
    text-align: center;
    letter-spacing: 7px;
    color: #4F423E;
}
.sectionFaq .sectionFaq_ttl span {
    margin: 16px 0 17px;
    display: block;
    font-size: 4.8rem;
    font-weight: 500;
    font-family: 'Garamond Narrow', serif;
    line-height: 1;
    letter-spacing: 0.0625em;
    color: #EB8C8D;
}
.sectionContact .sectionContact_ttl {
    margin-bottom: 56px;
    font-size: 2.4rem;
    font-weight: 600;
    text-align: center;
    letter-spacing: 7px;
    color: #4F423E;
}
.sectionContact .sectionContact_ttl span {
    margin: 16px 0 17px;
    display: block;
    font-size: 4.8rem;
    font-weight: 500;
    font-family: 'Garamond Narrow', serif;
    line-height: 1;
    letter-spacing: 0.0625em;
    color: #EB8C8D;
}
section.merit_wrap_case .txt_block .txt_block_ttl {
    position: relative;
    display: inline-block;
    margin-bottom: 16px;
    padding: 8px;
    border-radius: 15px 15px 15px 0;
    text-align: left;
    font-family: "Noto Serif JP", serif, 'ヒラギノ明朝 ProN';
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 1.5;
    color: #404040;
    letter-spacing: 3px;
}
.contact_bnr_inner .contact_bnr_inner_ttl {
    width: 280px;
    margin: 1px auto;
    padding: 0 0 5px;
    background: #F5C4C5;
    font-family: 'Playfair Display', serif;
    font-size: 4.2rem;
    color: #fff;
    line-height: 1;
    text-align: center;
    border-radius: 10px;
    position: relative;
    top: -19px;
}
.troble_wrap .troble_wrap_ttl {
    margin-bottom: 87px;
    text-align: center;
    font-size: 3.8rem;
    font-weight: 600;
    line-height: 1.48;
    letter-spacing: 6px;
}
.sectionWorks .sectionWorks_ttl {
    margin-bottom: 0;
    font-size: 2.4rem;
    font-weight: 600;
    text-align: center;
    letter-spacing: 7px;
    color: #4F423E;
}
.sectionWorks .sectionWorks_ttl span {
    margin: 16px 0 17px;
    display: block;
    font-size: 4.8rem;
    font-weight: 500;
    font-family: 'Garamond Narrow', serif;
    line-height: 1;
    letter-spacing: 0.0625em;
    color: #EB8C8D;
}
@media screen and (max-width: 1024px) {
    .merit_wrap .merit_wrap_ttl,
    .troble_wrap .troble_wrap_ttl,
    .sectionStrengths .sectionStrengths_ttl{
        padding-top: 0px;
        height: auto;
    }
    .sectionPriduct .sectionPriduct_ttl,
    .sectionWorks .sectionWorks_ttl,
    .sectionFlow .sectionFlow_ttl,
    .sectionFaq .sectionFaq_ttl,
    .sectionContact .sectionContact_ttl{
        font-size: 1.8rem;
        letter-spacing: 2px;
    }
    .sectionPriduct .sectionPriduct_ttl span,
    .sectionStrengths .sectionStrengths_ttl span,
    .sectionWorks .sectionWorks_ttl span,
    .sectionFlow .sectionFlow_ttl span,
    .sectionFaq .sectionFaq_ttl span,
    .sectionContact .sectionContact_ttl span {
        font-size: 4.2rem;
        margin: 16px 0 7px;
    }
}
@media screen and (max-width: 768px) {
    .merit_wrap .merit_wrap_ttl {
        margin-bottom: 30px;
        letter-spacing: 0;
        color: #000;
        font-size: 2.0rem;
    }
    .sectionPriduct .sectionPriduct_ttl,
    .sectionFlow .sectionFlow_ttl,
    .sectionFaq .sectionFaq_ttl,
    .sectionContact .sectionContact_ttl {
        margin-bottom: 36px;
        font-size: 1.6rem;
    }
    .sectionPriduct .sectionPriduct_ttl span ,
    .sectionFlow .sectionFlow_ttl span{
        font-size: 3.2rem;
    }
    
    section.merit_wrap_case .txt_block .txt_block_ttl {
        margin-bottom: 10px;
        border-radius: 15px;
        font-size: 2.0rem;
        text-align: center;
    }
    .contact_bnr_inner .contact_bnr_inner_ttl {
        margin: 0 auto 10px;
        padding: 0;
        background: none;
        top: 0;
        font-size: 3rem;
    }
    .troble_wrap .troble_wrap_ttl {
        margin-bottom: 27px;
        font-size: 2.0rem;
        letter-spacing: 2px;
    }
    .sectionStrengths .sectionStrengths_ttl {
        margin-bottom: 27px;
        font-size: 2.2rem;
        letter-spacing: 2px;
    }
    .sectionStrengths .sectionStrengths_ttl span,
    .sectionWorks .sectionWorks_ttl span,
    .sectionFaq .sectionFaq_ttl span,
    .sectionContact .sectionContact_ttl span {
        font-size: 3.2rem;
    }
    .sectionWorks .sectionWorks_ttl {
        margin-bottom: 27px;
        font-size: 1.6rem;
    }
}

h2.ttl.ex_h1 {
    margin-bottom: 56px;
    font-size: 2.4rem;
    font-weight: 600;
    text-align: center;
    letter-spacing: 7px;
    color: #4F423E;
}
.sectionBackground .textContent p {
    line-height: 2em;
    font-weight: 400;
    margin-bottom: 1em;
    font-size: 2.0rem;
    text-align: center;
}
.sectionBackground .imageContent {
    max-width: 750px;
    margin: 20px auto;
}
.sectionBackground-list {
    margin: 50px 0;
}
.sectionBackground-list ul {
    display: flex;
    justify-content: space-around;
}
.sectionBackground-list li {
    width: 25%;
}
.sectionBackground-list .list_ttl {
    font-weight: 600;
    text-align: center;
    margin-bottom: 10px;
}
.sectionBackground-list p {
    line-height: 1.8em;
}
@media screen and (max-width: 770px) {
    h2.ttl.ex_h1 {
        margin-bottom: 36px;
        font-size: 1.6rem;
    }
    .sectionBackground .textContent p {
        font-size: 1.6rem;
    }
    .sectionBackground-list ul {
        flex-wrap: wrap;
    }
    .sectionBackground-list li {
        width: 100%;
        margin-bottom: 30px;
    }
    .sectionBackground-list p {
        text-align: left;
    }
}