@charset "utf-8";

@font-face{
    font-family:"mb101-db";
    src:url(../font/A-OTF\ Gothic\ MB101\ Pro\ DB.otf);
    
}

.sp-nav{
    display:none;
}

*{
    scroll-behavior: smooth;
}

#case,#voice{
    scroll-margin-top:220px;
}

#flow{
    scroll-margin-top:220px;
}

#strength{
    scroll-margin-top:0px;
    padding-bottom: 40px;
    background: #F5F5F5;
}
@media screen and (max-width:768px){
    #strength{
        padding-bottom: 10vw;
    }
}

#faq{
    scroll-margin-top:45px;
}

@media screen and (max-width:1150px){
    #case,#voice{
        scroll-margin-top:240px;
    }
    
    #flow{
        scroll-margin-top:240px;
    }
    
    #strength{
        scroll-margin-top:0px;
    }

}

@media screen and (max-width:768px){
    #case,#voice{
        scroll-margin-top:200px;
    }
    
    #flow{
        scroll-margin-top:200px;
    }
    
    #strength{
        scroll-margin-top:0px;
    }
    
    #faq{
        scroll-margin-top:25px;
    }

    #reason, #price,#strength{
        scroll-margin-top:-40px;
    }
}


@media screen and (max-width:480px){
    #reason{
        scroll-margin-top:-70px;
    }

    #price{
        scroll-margin-top:-20px;
    }

    #flow{
        scroll-margin-top:180px;
    }
    
    #strength{
        scroll-margin-top:-30px;
    }
    
    #case,#voice{
        scroll-margin-top:180px;
    }
    

    #faq{
        scroll-margin-top:25px;
    }
}

/* header */

.header-btn{
    display:flex;
    /*max-width:400px;*/
    width:100%;
    justify-content: space-between;;
}

.header-btn a{
    display:block;
    padding:15px 15px;
    border-radius:100px;
    transition:.3s;
}

.header-btn a + a{
    margin-left:10px;
}

.header-btn a img{
    max-width:162px;
    height:auto;
}

.header-contact-btn{
    background-color:#E60000;
    box-shadow:0 5px 0 #960000;

}

.header-download-btn{
    background-color:#003296;
    box-shadow:0 5px 0 #000064;
}

.header-contact-btn:hover,
.header-download-btn:hover{
    transform: translateY(5px);
    box-shadow:0 0 0 #000;
}

.pc-nav ul{
    display:flex;
    gap:13px;
    margin: 0 3em 0 0;
}

.pc-nav ul a{
    border-bottom:2px solid rgba(0,0,0,0);
    padding-bottom:2px;
    white-space: nowrap;
}

.pc-nav ul a:hover{
    border-bottom:2px solid #000;
}

.pc-nav ul li{
    font-size:16px;
    font-family:"Noto sans Jp", sans-serif;
    font-weight:bold;
}
@media screen and (max-width:915px) and (min-width:768px){
    .pc-nav ul li{
        font-size:1.5vw;
    }
}

.header-right{
    display:flex;
	-webkit-align-items: center;
	align-items: center;
    /*gap:30px;*/
    /*max-width:1080px;
    width:80%;*/
    margin-left: auto;
}

@media screen and (max-width:1150px){
    .header-right{
        flex-direction: column-reverse;
        gap:20px;
    }

    .header-btn a{
        padding:10px 15px;
    }

    .header-btn a img{
        max-width:142px;
    }

    .header-btn{
        display:flex;
        /*max-width:350px;*/
    }
}



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

    .pc-nav{
        display:none;
    }
    .sp-nav{
        display:inherit;
    }

    .header-right{
        flex-direction:row;
        align-items:center;
    }

    .header-btn a{
        padding:10px 15px;
    }

    .header-btn a img{
        max-width:162px;
    }

    .header-btn{
        max-width:400px;
        width:100%;
        margin-left:auto;
    }

    .main_logo .logo img{
        width:180px;
    }

    header .header_menu{
        justify-content: space-between;
    }


}

@media screen and (max-width:480px){
    .header-btn a + a{
        margin-left:5px;
    }
    .header_tel {
    display: none;
}
}




.header_tel{
    width: 60%;
    font-size: 15px;
}
.header_tel a{
    color: #E60000;
    font-size: 1.5em;
        font-weight: bold;
        background-image: url(../images/jf9.png);
        background-repeat: no-repeat;
        background-size: 18%;
    padding: 0 0 0 22%;
    background-position: 0px 5px;
}
/* ハンバーガー */


  
  /* チェックボックスを非表示にする */

  .sp-nav{
    width:25px;
  }
  .checkbox-hidden {
  display: none;
  }
  
  /* 設置スペース */
  .hum-open{
    display:flex;
    height: 60px;
    width: 60px;
    justify-content: center;
    align-items: center;
    position: fixed;
    z-index: 100;
    cursor: pointer;
    border-radius:100px;
    right:0;
    top:0.91vw;
  }
  
  /* アイコンの見た目 */
  .hum-open span,
  .hum-open span:before,
  .hum-open span:after {
    content: '';
    display: block;
    height: 3px;
    width: 30px;
    border-radius: 3px;
    background: #00A0FA; /*三本線の色*/
    transition: 0.5s;
    position: absolute;
  }
  
  /* 上の線の位置 */
  .hum-open span:before {
    bottom: 8px;
  }
  
  /* 下の線の位置 */
  .hum-open span:after {
    top: 8px;
  }
  
  /* メニューが開いた時に真ん中の線を消す */
  #hum-icon:checked ~ .hum-open span {
    background: rgba(255, 255, 255, 0);
  }
  
  /* メニューが開いた時に線が×になる*/
  #hum-icon:checked ~ .hum-open span::before {
    bottom: 0;
    transform: rotate(-45deg);
  }
  
  #hum-icon:checked ~ .hum-open span::after {
    top: 0;
    transform: rotate(45deg);
  }
  
  /* ハンバーガーメニューの中身*/
  .sp-nav-content {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left:100%;
    z-index: 99;
    background: #fff;
    transition: .5s;
    display: table;
  }
  
  /* アイコンがクリックされたらメニューを右から入れる */
  #hum-icon:checked ~ .sp-nav-content {
    left:0;
  }
  
  /* メニューのスタイル */
  .sp-nav-list{
    width:fit-content;
    list-style: none;
    display:block;
    width:fit-content;
    margin:0 auto;
    height:fit-content;
    font-size:16px;
    text-align: left;
    position:relative;
    display:table-cell;
    vertical-align: middle;
    padding:0 50px;
  }
  
  .sp-nav-list a{
    text-decoration:none;
  }
  
  .sp-nav-item{
    text-decoration:none;
    color:#535353;
    font-size:18px;
    transition:.2s;
    position:relative;
    margin:25px auto;
    border-bottom:2px solid #eee;
    padding-bottom:5px;
  }

  .sp-nav-item::after{
    content:"";
    height:2px;
    width:0%;
    background-color:#00A0FA;
    position:absolute;
    bottom:-2px;
    left:0;
    transition:.3s;
  }
  
  .sp-nav-item:hover{
    color:#00A0FA;
  }

  .sp-nav-item:hover.sp-nav-item::after{
    width:100%;
  }
  
  
  .sp-nav-item:first-child{
    padding-top:0;
  }


  .sp-nav-contact-btn{
    background-color:#E60000;
    box-shadow: 0 5px 0 #960000;
  }

  .sp-nav-download-btn{
    background-color:#003296;
    box-shadow: 0 5px 0 #000064;
  }

    .sp-nav-contact-btn:hover,
    .sp-nav-download-btn:hover{
        transform: translateY(5px);
        box-shadow: 0 0 0 #000;;
  }

  .sp-nav-btn{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    width:fit-content;
    margin:0 auto;
    margin-top:40px;
    width:100%;
    justify-content: space-between;
  }

    .sp-nav-btn a img{
    width:100%;
  }

  .sp-nav-btn a{
    padding:10px 15px;
    border-radius:100px;
    display:block;
    width:fit-content;
    transition: .3s;
    width:48%;
  }




  @media screen and (max-width:580px){
    .main_logo .logo img{
        width:130px;
    }

    .header-btn a{
        padding:7px 7px;
    }

      /* 設置スペース */
  .hum-open{
    top:0.1vw;
  }

}

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

    .main_logo .logo img{
        width:100px;
    }


      .sp-nav-btn a{
        margin:0 auto;
      }


      .sp-nav-item{
        font-size:16px;
      }

        /* アイコンの見た目 */
  .hum-open span,
  .hum-open span:before,
  .hum-open span:after {
    width: 25px;
  }

  .hum-open{
    top:-5px;
  }

    .sp-nav-btn a{
    padding:7px 10px;
  }

  }


/*  */

#mv{
    background-color:#fff;
    position:relative;
    overflow-x: hidden;
    overflow-y: hidden;
}

@media screen and (max-width:1150px){
    #mv{
        padding-top:11.5vw;
    }
}

@media screen and (max-width:768px){
    #mv{
        overflow: inherit;
        padding-top:10vw;
    }
} 

@media screen and (max-width:480px){
    #mv{
        padding-top:8vw;
    }
}



.mv-textarea{
    max-width: 1080px;
    width: 95%;
    margin:0 auto;
    position:relative;
    z-index:2;
    /*margin-top:50px;*/
    text-align: left;
}
@media screen and (max-width:768px){
    .mv-textarea{
        margin-top:20px;
    }
}
.mv-back-img{
    position:absolute;
    left:53.5%;
    /*right: 5%;*/
    top:0;
    margin-top:117px;

}

@media screen and (max-width:768px){
    .mv-back-img{
        position:static;
        /* margin-top:-20px; */
    }
}


.mv-back-img{
    max-width:749px;
    width:100%;
}
@media screen and (max-width:1080px){
    .mv-back-img{
        max-width:550px;
    }
}
@media screen and (max-width:768px){
    .mv-back-img{
        max-width:750px;
        width:95%;
        margin:0 auto;
        display:block;
        margin-top: 25px;
    }
}

.mv-maincopy{
    font-size:30px;
    font-family: mb101-db, sans-serif;
    font-weight:500;
    line-height:1.33;
    letter-spacing:0.08em;
}

@media screen and (max-width:768px){
    .mv-maincopy{
        font-size:4.5vw;
        max-width:800px;
        width:90%;
        margin:0 auto;

    }
}

.roboto{
    font-family:"Roboto", sans-serif;
}

.blue{
    color: #00A0FA;
}

.yellow{
    color:#F9DB03;
}

.mv-text-image img{
    max-width:760px;
    width:100%;
    margin-top:10px;
}

.mv-text-image a{
width: 25%;
    display: block;
}
@media screen and (max-width:1080px){
    .mv-text-image img{
        max-width:450px;
    }
}
@media screen and (max-width:768px){
    .mv-text-image img{
        max-width:800px;
        width:90%;
        margin:0 auto;
        display:block;
        margin-top: 45px;
    }
    
.mv-text-image a{
width: 100%;
    display: block;
}
}

.subcopy{
    color:#fff;
    background-color:#000;
    width:489px;
    font-size:23.7px;
    font-family:mb101-db, sans-serif;
    text-align: center;
    letter-spacing:0.06em;
    padding:3px 0;
    margin-top:10px;
}

@media screen and (max-width:768px){
    .subcopy{
        font-size:3.7vw;
        margin:0 auto;
        width:90%;
        margin-top:5px;
    }
}

.mv-btn01, .mv-btn02{
    font-size:18px;
    color:#fff;
    font-family:"Noto Sans Jp", sans-serif;
    font-weight:bold;
    letter-spacing:0.04em;
    border-radius:100px;
    transition:.3s;
    display:block;
    line-height:1;
}

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

    .mv-btn01, .mv-btn02{
        font-size:3.27vw;
        letter-spacing:0em;
    }
}

.mv-btn01:hover, .mv-btn02:hover{
    box-shadow:0 0 0 rgba(0,0,0,0);
    transform: translateY(5px);
}

.mv-btn01{
    background-color:#E60000;
    padding:18px 45px;
    box-shadow:0 3px 0#960000;
}

.mv-btn02{
    background-color:#003296;
    padding:18px 32px;
    box-shadow:0 5px 0 #000064;
}

@media screen and (max-width:768px){
    .mv-btn01{
        padding:2.5vw 6.86vw;
    }
    
    .mv-btn02{
        padding:2.5vw 5.17vw;
    }
}

.mv-btn a .contact_logo img{
    width:25px;
    padding-right:5px;
}

@media screen and (max-width:768px){
    .mv-btn a .contact_logo img{
        width:4.5vw;
    }
}

.mv-btn{
    max-width:490px;
    justify-content: space-evenly;
    margin-top:30px;
    margin-bottom:50px;
}

@media screen and (max-width:768px){
    .mv-btn{
        display:flex !important;
        max-width:800px;
        width:90%;
        margin: 0;
        margin-top: 0px;
        justify-content: flex-end;
    }
}

@media screen and (max-width:480px){
    .mv-btn{
        margin-top:0px;
        justify-content: flex-end;
    }
}

.mv-bottom-color{
    width:100%;
    height:100px;
    margin-top: 45px;
}

@media screen and (max-width:768px){
    .mv-bottom-color{
        height:40px;
        margin-top:-20px;
    }
}


.mv-sp{
    display:none;
}

@media screen and (max-width:768px){
    .mv-sp{
        display:inherit;
    }

    .mv-pc{
        display:none !important;
    }
}

.back-blue{
    background-color:#EBF5FF;
}

.inline-block{
    display:inline-block;
}

/* h2共通 */

.h2-big{
    font-size:50px;
}

h2{
    font-family:"Noto Sans Jp", sans-serif;
    font-weight:900;
    font-size:40px;
    letter-spacing:0.06em;
    padding-top:5px;
}

.ruby{
    font-size:16px;
    font-family:"Roboto", sans-serif;
    font-weight:900;
    letter-spacing:0.3em;
}

.section-head{
    text-align: center;
}

@media screen and (max-width:768px){
    .h2-big{
        font-size:35px;
    }
    
    h2{
        font-size:28px;
    }
    
    .ruby{
        font-size:15px;
    }
}

@media screen and (max-width:480px){
    .h2-big{
        font-size:28px;
    }
    
    h2{
        font-size:22.5px;
    }
    
    .ruby{
        font-size:15px;
    }
}





/*  */

/* お悩み */

#worries{
    padding-top:100px;
}

.worries-content{
    margin-top:60px;
}

@media screen and (max-width:768px){
    #worries{
        padding-bottom:30px;
    }
}

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

    #worries{
        padding-top:70px;

    }
    .worries-content{
        margin-top:30px;
    }
}


.worries-content img{
    max-width:1020px;
    width:100%;
    display:block;
    margin:0 auto;
}

.worries-sp-img img{
    display:none;
}

@media screen and (max-width:480px){
    .worries-sp-img img{
        display:inherit;
    }

    .worries-pc-img img{
        display:none;
    }
}


.kaiketu-yajiruhsi img{
    width:95px;
    display:block;
    margin:0 auto;
    margin-top:15px;
}

@media screen and (max-width:767px){
    .kaiketu-yajiruhsi img{
        width:50px;
    }
} 

@media screen and (max-width:480px){
    .kaiketu-yajiruhsi img{
        width:40px;
    }
} 


.worries-kaiketu{
    font-size:50px;
    font-family:"Noto sans Jp", sans-serif;
    font-weight:900;
    text-align: center;
    letter-spacing:0.04em;
    line-height:1.33;
    margin-top:10px;
}

.red{
    color:#E60000;
    font-size:60px;
}

.yellow-line{
    position:relative;
}

.yellow-line::after{
    content:"";
    width:100%;
    height:10px;
    background-color: #F9DB03;
    position:absolute;
    bottom:8px;
    left:50%;
    transform: translateX(-50%);
    z-index:-1;
}

.kanzi::after{
    bottom:2px;
}

@media screen and (max-width:768px){
    .worries-kaiketu{
        font-size:37.5px;
    }
    
    .red{
        font-size:45px;
    }
    

} 

@media screen and (max-width:480px){
    .worries-kaiketu{
        font-size:26px;
    }
    
    .red{
        font-size:32px;
    }


} 

.worries-reason-clip{
    clip-path: polygon(0 0, 50% 100%, 100% 0);
    width:100%;
    height:80px;
    z-index:2;
    position:relative;
    background-color:#fff;
}



/* 選ばれる理由 */

#reason{
    position:relative;
    z-index:1;
    /* padding-top:80px;
    margin-top:-80px; */
    text-align: left;
}

.reason-content{
    max-width:1185px;
    width:90%;
    margin:0 auto;
    padding-top:75px;
    padding-bottom: 150px;
}
@media screen and (max-width: 768px){
    .reason-content{
    width:100%;
        padding-top: 10vw;
        padding-bottom: 20vw;
    }
}


.a-reason-content{
    max-width:505px;
    width:100%;
}

.a-reason-head .h3-ruby{
    font-size:16px;
    font-family:'Roboto', sans-serif;
    font-weight:900;
    letter-spacing:0.2em;
}

.a-reason-head h3{
    font-size:40px;
    font-family:'Noto sans Jp', sans-serif;
    font-weight:900;
    color:#00A0FA;
    letter-spacing:0.04em;
    line-height: calc(55 / 40);
    margin-top:10px;
    margin-left:-3px;
    white-space: nowrap;
}

@media screen and (max-width:768px){
    .a-reason-head h3{
        font-size:23.8px;
    }
}

@media screen and (max-width:480px){
    .a-reason-head h3{
        font-size:20px;
        letter-spacing:0;
        font-feature-settings: "palt";
    }
}

.a-reason-head h3 .roboto{
    font-family: 'Roboto', sans-serif;
    font-size:34px;
}

@media screen and (max-width:768px){
    .a-reason-head h3 .roboto{
        font-size:27px;
    }
}

@media screen and (max-width:480px){
    .a-reason-head h3 .roboto{
        font-size:23px;
    }
}

.reason-weight-r{
    font-weight:400;
}

.a-reason-head{
    border-bottom:dotted 1px #000;
    padding-bottom:16px;
}

@media screen and (max-width:480px){
    .a-reason-head{
        padding-bottom:15px;
    }
}

.a-reason-text{
    padding-top:25px;
}

@media screen and (max-width:480px){
    .a-reason-text{
        padding-top:15px;
        text-align: justify;
    }
}

.a-reason-text ul li{
    position:relative;
    font-size:20px;
    padding-left:20px;
    font-family:'Noto sans Jp', sans-serif;
    font-weight:500;
    width:100%;
    font-feature-settings: "palt";
    line-height:1.6;
}

.a-reason-text ul li + li{
    margin-top:9px;
}

.a-reason-text ul li::before{
    content:'';
    width:18px;
    height:17px;
    background-image: url(../images/checkbox.png);
    background-size:contain;
    background-repeat: no-repeat;
    position:absolute;
    left:0;
    top:6px;
}

@media screen and (max-width:480px){
    .a-reason-text ul li{
        font-size:16px;
        line-height:1.5;
    }

    
    .a-reason-text ul li::before{
        content:'';
        top:4px;
    }
}

.a-reason1-image img{
    max-width:528.6px;
    width:100%;
}

.a-reason{
    display:flex;
    width:100%;
    justify-content: space-between;
    align-items: center;
    margin-top:50px;
    gap:20px;
}
.a-reason2, .a-reason3, .a-reason4, .a-reason5{
    margin-top: 70px;
}

@media screen and (max-width:1080px){
    .a-reason{
        display:block;
        width:fit-content;
        margin:0 auto;
        margin-top:75px;
    }

    .a-reason img{
        margin-top:30px;
    }
}

@media screen and (max-width:480px){
    .a-reason{
        margin-top:50px;
    }
}



.flex-reverse{
    flex-direction:row-reverse;
}

.a-reason2 .a-reason-content{
    max-width:512px;
    width:100%;
}


.a-reason2-image img{
    max-width:528px;
    width:100%;
}



.a-reason3 .a-reason-content{
    max-width:503px;
}

.a-reason3-image img{
    max-width:528px;
    width:100%;
}

.a-reason-text .ol li{
    position:relative;
    font-size:18px;
    padding-left:0px;
    font-family:'Noto sans Jp', sans-serif;
    font-weight:500;
    width:100%;
    font-feature-settings: "palt";
    line-height:1.6;
    list-style:decimal-leading-zero;
    padding-left:5px;
}

@media screen and (max-width:480px){
    .a-reason-text .ol li{
        font-size:16px;
        padding-left:0;
    }
}

.a-reason-text .ol li::marker{
    color:#00A0FA;
    font-family:"Roboto", sans-serif;
    font-weight:900;
    padding-right:5px;
    font-size:18px;
}

@media screen and (max-width:480px){
    .a-reason-text .ol li::marker{
        font-size:16px;
        padding-right:0px;
    }
}

.a-reason-text ul li + li{
    margin-top:9px;
}

.a-reason-text .ol li::before{
    content:'';
    width:0;    
}

.a-reason-text .ol{
    padding-left:30px;
}

@media screen and (max-width:480px){
    .a-reason-text .ol{
        padding-left:25px;
    }
}

.a-reason4-image img{
    max-width:520px;
    width:100%;
}

.a-reason4 .a-reason-content{
    max-width:527px;
    width:100%;
}

.a-reason5 .a-reason-content{
    max-width:504px;
    width:100%;
}

.a-reason5-image img{
    max-width:514px;
    width:100%;
}

.reason-btn{
    display:flex;
    max-width:900px;
    width:100%;
    margin:0 auto;
    justify-content: space-between;
    margin-top:75px;
    gap:10px;
}

@media screen and (max-width:1070px){
    .reason-btn{
        display:block;
        margin:0 auto;
        width:fit-content;
        margin-top:75px;
    }
}

.reason-btn a{
    font-size:25px;
    color:#fff;
    font-family:"Noto sans Jp", sans-serif;
    font-weight:600;
    letter-spacing:0.04em;
    line-height:1;
    display:block;
    width:fit-content;
    white-space: nowrap;
}

@media screen and (max-width:1070px){
    .reason-btn a + a{
        margin-top:30px;
    }
}

@media screen and (max-width:520px){
    .reason-btn a{
        font-size:18px;
}
}

.reason-btn01:hover,
.reason-btn02:hover{
    transform: translateY(5px);
    box-shadow: 0 0 0 rgba(0,0,0,0);
}

.reason-btn01{
    background-color:#E60000;
    padding:20px 75px;
    border-radius:200px;
    box-shadow: 0 5px 0 #960000;
    transition:.3s;

}

.contact_logo img{
    width:25px;
    margin-right:5px;
}

.reason-btn02{
    background-color:#003296;
    padding:20px 50px;
    border-radius:200px;
    box-shadow: 0 5px 0 #000064;
    transition: .3s;;
}

@media screen and (max-width:520px){
    .reason-btn01{
        padding:15px 40px;
    }

    .reason-btn02{
        padding:15px 22px;
    }

    .contact_logo img{
        width:20px;
    }
    
}

.reason-point-clip{
    clip-path: polygon(0 0, 0 100%, 100% 0);
    width:100%;
    height:50px;
    background-color:#EBF5FF;
    position:relative;
    z-index:3;
}

/* ポイント */

#point{
    position:relative;
    z-index:1;
    margin-top:-49px;
    padding-top:49px;
    overflow: hidden;
}

.point-content{
    padding-top:100px;
    padding-bottom:100px;
}

@media screen and (max-width:768px){
    .point-content{
        padding-top:70px;
    }
}

@media screen and (max-width:480px){
    .point-content{
        padding-top:50px;
        padding-bottom:70px;
    }
}

.point-back{
    position:absolute;
    z-index:-2;
    width:458px;
    height:auto;
    top:-55px;
    right:10%;
}

@media screen and (max-width:768px){
    .point-back{
        width:400px;
        top:-30px;
        right:-10%;
    }
}

@media screen and (max-width:480px){
    .point-back{
        width:300px;
        top:-30px;
        right:-10%;
    }
}

.point-content .section-head h2 .roboto{
    font-weight:600;
}

.a-point-title{
    width:104px;
    height:105px;
    background-color:#00A0FA;
    text-align: center;
    color:#fff;
    font-family:'Roboto', sans-serif;
    font-weight:900;
    line-height:1;
    padding-top:20px;
}

.point-point{
    font-size:15.4px;
    letter-spacing:0.3em;
}

.point-num{
    font-size:55.1px;
    letter-spacing:0.06em;
}

.a-point-text{
    max-width:421px;

    width:calc(100% - 104px);
    background-color:#EBF5FF;
    height:105px;
}

.a-point-text p{
    padding:25px 20px;
    font-size:18px;
    font-family:"Noto sans Jp", sans-serif;
    font-weight:600;
    line-height:1.6;
}

.a-point{
    display:flex;
    margin-top:30px;
}

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

    .a-point-title{
        width:75px;
        height:105px;
        background-color:#00A0FA;
        text-align: center;
        color:#fff;
        font-family:'Roboto', sans-serif;
        font-weight:900;
        line-height:1;
        padding-top:25px;
    }
    
    .point-point{
        font-size:15.4px;
        letter-spacing:0.05em;
    }
    
    .point-num{
        font-size:45px;
        letter-spacing:0.06em;
    }
    
    .a-point-text{
        max-width:421px;
        width:calc(100% - 75px);
        background-color:#EBF5FF;
        height:105px;
    }
    
    .a-point-text p{
        padding:25px 20px;
        font-size:16px;
    }
}

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

    .a-point-title{
        width:75px;
        height:127px;
        padding-top:35px;
    }
    
    .point-point{
        font-size:15.4px;
        letter-spacing:0.05em;
    }
    
    .point-num{
        font-size:45px;
        letter-spacing:0.06em;
    }
    
    .a-point-text{
        max-width:421px;
        width:calc(100% - 75px);
        background-color:#EBF5FF;
        height:127px;
        position:relative;
        display:table;
    }
    
    .a-point-text p{
        height:127px;
        position:relative;
        display:table-cell;
        vertical-align: middle;
        font-size:16px;
    }

}

.point-wrap{
    max-width:1140px;
    width:90%;
    display:flex;
    flex-wrap: wrap;
    margin:0 auto;
    justify-content: space-evenly;
}

.point-price-clip{
        clip-path: polygon(0 0, 0 100%, 100% 0);
        width:100%;
        height:50px;
        background-color:#fff;
        position:relative;
        z-index:3;
}

/* 価格 */

#price{
    width:100%;
    background-image: url("../images/price_back02.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.price-content{
    width:90%;
    margin:0 auto;
    padding-top:49px;
    margin-top:-49px;
}


.price-content{
    padding-top:150px;
    padding-bottom:100px;
    color: #fff;
}


@media screen and (max-width:480px){
    .price-content{
        padding-top:100px;
        padding-bottom:20vw;
    }
}

.price-table1-explain{
    font-size:14px;
    font-family:'Noto sans Jp', sans-serif;
    line-height:1.7;
    letter-spacing:0.04em;
    max-width:547px;
    width:90%;
    margin:0 auto;
    display:block;
    margin-top:10px;
}

.price-img{
    width:100%;
    margin:0 auto;
}

.price-img img{
    max-width:547px;
    width:100%;
    margin:0 auto;
    display:block;
    margin-top:50px;
}

@media screen and (max-width:480px){
    .price-img img{
        max-width:547px;
        width:100%;
        margin-top:30px;
    }
}

.table02{
    margin-top:50px;
    position:relative;
}

@media screen and (max-width:480px){
    .table02{
        margin-top:20px;
    }
}

.price-img2{
    width:800px;
    margin:0 auto;
    overflow-x: auto;
    position:relative;
}

.table-detail1,
.table-detail2{
    position:absolute;
    z-index:2;
    right:77px;
}

.table-detail1 button,
.table-detail2 button{
    font-size:16px;
    border-bottom:1px solid #000;
    font-family:"Noto sans Jp", sans-serif;
    font-weight:600;
}

.table-detail1{
    top:278px;
}

.table-detail2{
    top:350px;
}

.comparison{
    margin-top:95px;
}

@media screen and (max-width:480px){
    .comparison{
        margin-top:50px;
    }
}

/* 強み */

.strength-ruby,
.voice-ruby{
    font-size:18px;
    font-family:"Roboto", sans-serif;
    font-weight:900;
    letter-spacing:0.2em;
}

@media screen and (max-width:480px){
    .strength-ruby,
    .voice-ruby{
        font-size:16px;
    }
}

.strength-content{
    padding-top:90px;
}
@media screen and (max-width: 768px){
    .strength-content{
        padding-top: 15vw;
    }
}
.a-strength{
    margin-top:50px;
}
.point-strength-clip{
    clip-path: polygon(0 0, 0 100%, 100% 0);
    width:100%;
    height:50px;
    background-color:#fff;
    position:relative;
    z-index:3;
}
.point-strength-clip.grey{
    background: #F5F5F5 !important;
}
.point-strength-clip-toleft{
    width: 100%;
    height: 51px;
    background-color: #fff;
    position: relative;
    z-index: 3;
    margin-top: -50px;
    clip-path: polygon(100% 100%, 100% 0, 0 100%);
}
.point-strength-clip-toleft.grey{
    background: #F5F5F5 !important;
}

/* 流れ */

.flow-img,.flow-img02{
    margin-top:50px;
}

.flow-img img{
    max-width:888px;
    width:100%;
    margin:0 auto;
}

.flow-img .pc-flow-img,.flow-img02 .pc-flow-img{
    display:block;
}

.sp-flow-img{
    display:none;
}

@media screen and (max-width:480px){
    .flow-img .pc-flow-img,.flow-img02 .pc-flow-img{
        display:none;
    }
    
    .sp-flow-img{
        display:block;
    }
    
    
.flow-img02 img{
    width:100%;
}

}

.flow-copy{
    font-size:50px;
    font-family:"Noto sans Jp", sans-serif;
    font-weight:900;
    text-align: center;
    letter-spacing:0.02em;
    line-height:1.3;
}

.flow-copy .red{
    font-size:60px;
}

.flow-copy .roboto{
    font-size:66px;
}



@media screen and (max-width:1014px){
    
    .flow-copy .roboto{
        font-size:6.1vw;
    }
}

@media screen and (max-width:768px){
    .flow-copy{
        font-size:32px;
    }
    
    .flow-copy .red{
        font-size:38px;
    }

    .flow-copy .roboto{
        font-size:6.1vw;
    }
    

} 

@media screen and (max-width:480px){
    .flow-copy{
        font-size:26px;
    }
    
    .flow-copy .red{
        font-size:32px;
    }

    .flow-copy .roboto{
        font-size:6.1vw;
    }


} 

.flow-copy .yellow-line{
    position:relative;
}

.flow-copy .yellow-line::after{
    content:"";
    width:100%;
    height:10px;
    background-color: #F9DB03;
    position:absolute;
    bottom:8px;
    left:50%;
    transform: translateX(-50%);
    z-index:-1;
}

.flow-copy .kanzi::after{
    bottom:2px;
}

@media screen and (max-width:640px){
    .flow-copy .yellow-line::after{
        bottom:2px;
    }
    
    .flow-copy .kanzi::after{
        bottom:0px;
    }
}




/* 事例 */

.section-head.white{
    color:#fff;
}

.case-wrap{
    margin-top:50px;
}

/* お客様の声 */

.voice{
    padding-bottom:120px;
}

.a-voice{
    margin-top:50px;
}
#area05{
    padding-bottom: 40px;
}
@media screen and (max-width: 768px){
    #area05{
        padding-bottom: 0;
    }
}
#area07 .area07_area .flex03_area_02 .align-top{
    align-items: start;
}
@media screen and (max-width: 768px){
    .area07_area{
        margin-top: 10vw;
    }
}


/* よくある質問 */

#faq{
    margin-bottom: -50px;
    padding-bottom: 150px;
}
.faq_area{
    padding-top: 150px;
}
@media screen and (max-width: 768px){
    .faq_area{
        padding-top: 15vw;
    }
    #faq{
        padding-bottom: 20vw;
    }
}

#faq .section-head{
    margin-bottom:30px;
}


#contact .section-head{
    margin-bottom:50px;
}

/* ダウンロード */
.download_form main{
    justify-content: center;
}
#thanks{
    white-space: nowrap;
}

@media screen and (max-width: 768px){
#thanks{
    white-space: inherit;
}
}