@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");

*{
    font-family: Noto Sans Japanese, sans-serif;
}
#front-main .flex-center {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    list-style-type: none;
    }

#front-main .flex-start {
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
    }

#front-main .col-6 {
    width: calc( 100% / 6);
}
#front-main .col-5 {
    width: calc( 100% / 5);
}
#front-main .col-4 {
    width: calc( 100% / 4);
}
#front-main .col-3 {
    width: calc( 100% / 3);
}
#front-main .col-2 {
    width: calc( 100% / 2);
}
#front-main .col-1 {
    width: calc( 100% / 1);
}




.half{width:50%;}
.height-50{height:50px;}


/* padding関連 */
#front-main .pad-30 {
    padding: 30px;
}
#front-main .pad-24 {
    padding: 24px;
}
#front-main .pad-20 {
    padding: 20px;
}
#front-main .pad-20-30 {
    padding: 20px 30px;
}
#front-main .pad-20-8 {
    padding: 20px 8px;
}
#front-main .pad-16 {
    padding: 16px;
}
#front-main .pad-12 {
    padding: 12px;
}
#front-main .pad-10 {
    padding: 10px;
}
#front-main .pad-8 {
    padding: 8px;
}
#front-main .pad-4 {
    padding: 4px;
}
#front-main .pad-top-10 {
    padding: 10px 0 0 0;
}
#front-main .pad-top-16 {
    padding: 16px 0 0 0;
}
#front-main .pad-top-20 {
    padding: 20px 0 0 0;
}
#front-main .pad-top-24 {
    padding: 24px 0 0 0;
}
#front-main .pad-top-28 {
    padding: 28px 0 0 0;
}
#front-main .pad-top-8 {
    padding: 8px 0 0 0;
}
#front-main .pad-tb-16 {
    padding: 16px 0;
}
#front-main .pad-rgt-16 {
    padding: 0 16px 0 0;
}



/* margin関連 */

#front-main .mar-20 {
    margin: 20px;
}
#front-main .mar-16 {
    margin: 16px;
}
#front-main .mar-12 {
    margin: 12px;
}
#front-main .mar-10 {
    margin: 10px;
}
#front-main .mar-8 {
    margin: 8px;
}
#front-main .mar-4 {
    margin: 4px;
}


/* フォント関連 */
.fnt-wgt-bld{font-weight: 900;}


.fnt-siz-12{font-size: 12px;
}
.fnt-siz-50{font-size: 50px;
}
.fnt-siz-16{font-size: 16px;
}
.fnt-siz-18{font-size: 18px;
}
.fnt-siz-20{font-size: 20px;
}
.fnt-siz-22{font-size: 22px;
}
.fnt-siz-26{font-size: 26px;
}
.fnt-siz-30{font-size: 30px;
}
.bg-gray{
    background-color: #f1f1f1;
}
.bg-grn-grd{
    background: #289254;
    background: -webkit-linear-gradient(to left, #a8e063, #289254);
    background: linear-gradient(to left, #a8e063, #289254);
}
.bg-grn{
    background: #1E9357;
}


.fnt-clr-777{color: #777;}
.fnt-clr-858A90{color:#858A90;}

.right{
    text-align: right;
}

.left{
    text-align: left;
}

.center{
    text-align: center;
}

.txt-col-wht{color: #fff;}
.txt-sdw{text-shadow: 0 1px 6px rgba(0,0,0,0.8);}


.top{   /* background: url(../img/frontpage-top-bg.jpg) no-repeat center center;background-size: cover;*/
    /*background: url(../img/mv_bg.png) no-repeat center top;*/
    height: 546px;
    position: relative;
    max-width: 1280px;
    margin: 0 auto;

}
.mvslider{
    max-width: 1280px;
    margin: 0 auto;
    width: 100%;
    position: relative;
    z-index:-1;
}
.mvslider img{
    max-width: 100%;
}
.top .section-inner{
    position: absolute;
    top:0;
    left:0;
    z-index: 9;
}
@media screen and (min-width: 769px){
    .top:after{
        content:'';
        display: block;
        top:0;
        left:0;
        top:0;
        bottom:0;
        left:0;
        height: 100%;
        position: absolute;
        background: url('../img/mv_blue.png') no-repeat;
        width: 763px;
        height: 546px;


    }

}
@media screen and (max-width: 768px){
    .top:after{
        content:'';
        display: block;
        top:0;
        left:0;
        top:0;
        bottom:0;
        right:0;
        height: 100%;
        position: absolute;
        background: url('../img/mv_blue_sp.png') no-repeat;
        background-size:contain;
        width: 100%;



    }

}

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

    .top{
     /*  background: url(../img/mv_bg.png) no-repeat 62% top;
        height: 350px;        */
        height: auto;
    }
    .bx-wrapper:nth-child(1){height:auto}

}

.section-inner{width: 1080px;margin: 0 auto;padding: 90px 0 120px;}
.support .section-inner,.security .section-inner {width: 1080px;margin: 0 auto;padding: 64px 0 0 0;}
.top .section-inner{
    padding: 0;
    width: 1300px;
    max-width: 100%;
}

section{margin: 0;}
#front-main h2 {
    font-weight: 900;
    text-align: center;
    margin: 16px 0 40px;
    line-height: 1.5;
    border: none;
    padding: 0;
    color:#2B3E57;
    font-size: 30px;
    letter-spacing: 2px;

}
#front-main h2 span{
    font-size: 13px;
    color:#1A9257;
    display: block;
    font-weight:normal;
    margin-bottom: 10px;
    font-family: futura-pt, sans-serif;
    font-weight: bold;
}
#front-main .h2-sub {
    font-size: 14px;
    text-align: center;
    margin: 20px 0 53px;
    color:#2B3E57;
    line-height: 180%;
    font-weight:500;
}



.txt-ctr{text-align: center;}


.top-btn-top {
    background: #1E9357;
    color: #fff;
    display: block;
    width: 420px;
    max-width: 100%;
    line-height: 65px;
    text-align: center;
    font-size: 18px;
    margin: 36px 0 64px 0;

}

.top-btn-top:hover {
    background: #fff;
    color: #1E9357;
    transition: all .3s ease;
}




.top-btn {
    background: #1E9357;
    color: #fff;
    display: block;
    width: 420px;
    max-width: 100%;
    line-height:60px;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    margin: 40px auto;
    border:1px solid rgba(0,0,0,0);
    transition:0.3s ease-in-out;


}
.evaluation .top-btn{
    width: 240px;
    margin-left: 0;

}

@media screen and (max-width: 768px){
    .evaluation .top-btn{
        margin-left: auto;

    }
}
.top-btn:hover {
    color:#fff;
    box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.30);
}



.top-btn--mini-full {
    background: #fff;
    color: #1E9357;
    border-radius: 4px;
    display: block;
    width: 100%;
    line-height: 30px;
    text-align: center;
    font-size: 16px;
    margin: 16px auto 0;
    border: 1px solid #aaa;
}
.top-btn--mini-full:hover {
    background: #1E9357;
    color: #fff;

    display: block;
    width: 100%;
    line-height: 30px;
    text-align: center;
    font-size: 16px;
    margin: 16px auto 0;
    border: 1px solid #aaa;
    transition: all .4s ease;
}




.top-left {padding-right:40px;text-align: center; }

.top-left #logo{
    padding-right: 40px;
}

#front-main .text-normal {
    text-align: center;
    font-size: 16px;
    line-height: 1.8em;
    width: 80%;
    margin: 50px auto;
}



#front-main .history{
	    background: url(../img/history-bg.jpg) no-repeat center center;background-size: cover;
}
#front-main .consult {
    background: url(../img/consult-bg.jpg) no-repeat center center;background-size: cover;
}



#front-main .history h2,#front-main .history .text-normal{
color: #fff;}

#front-main .history h2{
    margin-bottom: 80px;
    margin-top: 0;
}
@media screen and (max-width: 768px){
    #front-main .history h2{
        margin-bottom:32px;
    }

}
#front-main .history .text-normal{
    margin-bottom: 0;
    line-height: 210%;
}
@media screen and (max-width: 768px){
    #front-main .history .text-normal{
        text-align: left;
    }

}

#front-main .price-zone{
	    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    list-style-type: none;
    padding: 0;

}
.price-zone p{
	text-align: center;
	color: #777;
	font-size: 20px;
	padding: 20px;}
#front-main .price-box{
background-color: #fff;
margin-bottom: 40px;
}
@media screen and (max-width: 768px){
    #front-main .price-box{
    background-color: #fff;
    margin-bottom: 16px;
    }
}
#front-main .plan-title{
    font-weight: bold;
    text-align: center;
    padding:15px 10px;
    font-size: 21px;
    background: #289254;
    letter-spacing: 2px;

    color: #fff;}

.plan-discription {
    padding: 30px 16px;
    font-size: 16px;
    margin: 0 30px;
    background: #F4F4F4;
    text-align: center;
}

#front-main .top h1 {
    font-weight: bold;
    font-size: 28px;
    text-align: center;
    line-height: 1.5em;
    border: none;
    padding: 177px 0 32px;
    margin:0;

}
#front-main .top .h2-sub {
    font-size: 20px;
    text-align: left;
    margin: 0;
    color:#fff;
    font-weight: bold;
}
#front-main .top .top-left{
    width: 58%;
}
@media screen and (max-width: 768px){
    #front-main .top .top-left{
        width: 100%;
    }
}

#front-main .price-box2{    width: 25%;
    padding: 20px;
    border: 1px solid #ddd;
}



.col-3-mgn{
    width: 320px;
    background: #fff;
    border: solid 1px #999;
    margin: 20px;
}








.table-title{    color: #fff;
    text-align: center;
    padding: 26px 10px 26.5px;
    font-size: 15px;line-height: 15px;}
.table-title-last{    color: #fff;
    text-align: center;
    padding: 26px 10px 27px;
    font-size: 15px;line-height: 15px;}

    .table-other{
        padding: 27px 10px 26px;
    line-height: 15px;
    background: #F8F8F8;
    text-align: center;
    color:#2B3E57;
}
.table-other.line2{
    padding-top: 19px;
    padding-bottom: 19px;
}
    .table-cr{
        padding: 23px 10px 26px;
line-height: 15px;    background: #F8F8F8;
    text-align: center;
}
.cr{
    border-radius:7px;
    overflow: hidden;
    font-size: 16px;
    color:#2B3E57;
    margin-top: -20px;

    box-shadow: 0px 0px 30px #00000029;
    width: 29%;
}

.table-cr.ch-logo{
    background: #0ABC71;
    padding: 28px 10px;
}
.cr .price-num{
    font-size: 26px;
    font-weight: 900;
    font-family: futura-pt, sans-serif;

}
.txt-gray{
    color:#8B939D;
    font-size: 14px;
}
.hikaku{width: 14%;border-radius: 5px 0 0 5px; overflow: hidden;}
.hikaku li:nth-child(odd){
    background: rgba(255,255,255,0.5);
}
.hikaku li:nth-child(even){
    background: rgba(255,255,255,0.3);
}
.muryou,.kaihatsu{width: 23%;}
.kaihatsu{
    border-radius: 0 5px 5px 0;
    overflow: hidden;
}


    .table-other-com{
        padding: 26px 10px 25px;
line-height: 16px;    background: #0A606750;
    text-align: center;color:#fff;
}

.kuwashiku{display: block;text-align: right;margin-top: 10px;}

.kuwashiku-white{display: block;text-align: right;margin-top: 10px;text-shadow: 0 1px 6px rgba(0,0,0,0.8);color: #fff;text-decoration: underline;}
.kuwashiku-white:hover{display: block;text-align: right;margin-top: 10px;text-shadow: 0 1px 6px rgba(0,0,0,0.8);color: #fff;text-decoration: none;}


.news-more{
    text-align: center;
    display: block;
}































@media screen and (max-width: 768px) {
.section-inner {
    width: 100%;
    margin: 0 auto;
    padding: 24px 14px;
    }
.support .section-inner,.top .section-inner,.security .section-inner{width: 100%;margin: 0 auto;padding: 24px 14px 0;}

#front-main h2 {
    font-weight: 900;
    font-size: 24px;
    text-align: center;
    margin: 20px 0;
    line-height: 1.4;
    border: none;
    padding: 0;
}


#front-main .flex-center {
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    list-style-type: none;
    }

#front-main .flex-start {
    flex-wrap: wrap;
    justify-content: space-between;
    list-style-type: none;
    }
#front-main .col-6 {
    width: calc( 100% / 3);
}
#front-main .col-5 {
    width:100%;
}
#front-main .col-4 {
    width: 100%;
}
#front-main .col-3 {
    width: 100%;
}
#front-main .col-2 {
    width: 100%;
}
#front-main .col-1 {
    width: 100%;
}

.top-btn {
    background: #1E9357;
    color: #fff;
    border-radius: 0;
    display: block;
    width: 100%;
    line-height: 60px;
    text-align: center;
    font-size: 16px;
    margin: 20px auto;
    border: 1px solid #fff;
}
@media screen and (max-width: 768px){

    .top-btn {
        background: #1E9357;
        color: #fff;
        border-radius: 0;
        display: block;
        width: 80%;
        line-height: 60px;
        text-align: center;
        font-size: 16px;
        margin: 20px auto;
        border: 1px solid #fff;
    }
}
.top-btn:hover {
    background: #fff;
    color: #1E9357;
    border-radius: 6px;
    display: block;
    width: 100%;
    line-height: 40px;
    text-align: center;
    font-size: 16px;
    margin: 20px auto;
    border: 1px solid #1E9357;
    transition: all .4s ease;
}


#front-main .h2-sub {
    font-size: 14px;
    text-align: center;
    margin: 20px 0;
}





.fnt-siz-50{font-size: 30px;
}
.fnt-siz-16{font-size: 14px;
}
.fnt-siz-18{font-size: 16px;
}
.fnt-siz-20{font-size: 18px;
}
.fnt-siz-22{font-size: 20px;
}
.fnt-siz-26{font-size: 22px;
}


#front-main .text-normal {
    text-align: center;
    font-size: 14px;
    line-height: 1.6em;
    width: 100%;
    margin: 30px auto;
}


.col-3-mgn {
    width: 100%;
    background: #fff;
    border: solid 1px #999;
    margin: 20px;
}

#front-main .pad-24 {
    padding: 16px;
}

.mobile-none{display: none!important;}
.muryou, .cr, .kaihatsu {
    width: 100%;
    margin: 16px 0;
}



#front-main .top h2 {
    font-weight: bold;
    font-size: 28px;
    text-align: center;
    line-height: 1.4em;
    border: none;
    padding: 0;
}
#front-main .top .h2-sub {
    font-size: 16px;
    text-align: center;
    margin: 0;
}


.top-left {padding:0; }

 #front-main .sp-pad-20-20{padding: 20px 20px;}
 #front-main .sp-pad-20-8{padding: 20px 8px;}

	}







  .section-cotol {

  }



  .section-inner-cotol {
      width: 1160px;
      margin: 0 auto;
      margin-top: -40px;
      background: #fff;
      box-shadow: 0px 0px 30px #00000029;
      position: relative;
  }

  .cotol-btn {
      background: #2B3E57;
      color: #fff;

      display: block;
      width: 142px;
      box-sizing: border-box;
      line-height: 26px;
      text-align: center;
      float: left;
      margin-right: 12px;
      padding: 28px 40px 27px 20px;
      font-weight: bold;
      font-family: futura-pt, sans-serif;
      font-size: 12px;
      letter-spacing: 1px;
  }

.section-cotol a{      line-height: 26px;
    padding: 28px 40px 27px 20px;
    display: inline-block;
    color:#2B3E57;
}

.external-link{      width: 16px; height: 16px; fill:#337ab7;
}

.section-inner-cotol .cotol-link:hover > .external-link {
    fill: #23527c;
}


@media screen and (max-width: 768px) {
.section-inner-cotol {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    display: flex;
    align-items: center;
}
.cotol-btn {
    float: none;
    margin-bottom: 0;
    padding: 16px;
    width: 100px;
}
.section-cotol a{      line-height: normal;
    padding: 0;
    padding-right: 0;
    line-height: 160%;

}
}

.bg-dots{
    background: url('../img/dots.png') repeat;
}
.evaluation{
    color:#2B3E57;
}
@media screen and (min-width: 769px){
    .evaluation{
        margin-top: -20px;

    }
}
.evaluation .section-inner{
    padding: 160px 0 120px;
}

@media screen and (max-width: 768px){
    .evaluation .section-inner{
        padding: 64px 0 40px;
    }
}

.evaluation .flex-box{
    display: flex;
    flex-wrap: wrap;
}

.evaluation .ttl{
    line-height: 70%;
    margin-bottom: 30px;
}
.evaluation .fnt-siz-30{
 margin-bottom: 48px;

}
.evaluation .kana{
    font-size: 10px;
    display: inline-block;
    letter-spacing: 5px;
    padding-left: 60px;
}
.evaluation .flex-center{
    margin-bottom: 90px;
}
@media screen and (max-width: 768px){
    .evaluation .kana{
        line-height: 1;
        padding-left: 0;
    }
    .evaluation .flex-center{
        margin-bottom: 0px;
    }

    .evaluation .ttl,.evaluation .fnt-siz-30{
        font-size: 23px;
        text-align: center;

        line-height: 140%;
    }
    .evaluation .ttl{
        line-height: 100%;
    }
}
.evaluation .box01{
    margin-bottom: 120px;
}
.evaluation .box01 li:first-child{
    width: 56%;

}
.evaluation .box01 li:last-child{
    width: 44%;
    padding-top: 57px;

}

.evaluation .box02{
    justify-content: space-between;
}
.evaluation .box02 .ttl{
    font-weight: 900;
    font-size: 30px;
    padding-top:16px;
    line-height: 150%;
    margin-bottom: 40px;
}
.evaluation .box02 li:first-child{
    width: 45%;
}
.evaluation .box02 li:last-child{
    width: 50%;
    padding-top: 25px;
    text-align: right;
}
.evaluation .box02 .txt{
    margin-bottom: 70px;
}
.evaluation p{
    line-height: 180%;
}


@media screen and (max-width: 768px){
    .evaluation .flex-box{
        display: flex;
        flex-wrap: wrap-reverse;
        margin-bottom: 40px;
    }
    .evaluation .box01 li:first-child,
    .evaluation li:first-child{
        width: 100%;
        padding: 15px 25px;
        box-sizing: border-box;


    }
    .evaluation .box01 li:last-child,
    .evaluation li:last-child{
        width: 100%;
        padding: 15px 25px;
        box-sizing: border-box;


    }

}

.lh-140{
    line-height: 140%;
}

#front-main .solution h2{
    margin-bottom: 80px;
    position: relative;
    padding-bottom: 37px;

}
#front-main .solution h2:after{
    content:'';
    width: 30px;
    height: 5px;
    display: block;
    background: #2B3E57;
    position: absolute;
    left:50%;
    margin-left: -15px;
    bottom:-2px;
}
#front-main .solution h3{
    font-weight: 900;
    font-size: 24px;
    text-align: center;
    color: #2B3E57;
    letter-spacing: 2px;
}
#front-main .solution .h2-sub{
    line-height: 180%;
    margin-bottom: 50px;
}
@media screen and (max-width: 768px){
    #front-main .solution .h2-sub{

        margin-bottom: 48px;
    }
}
#front-main .solution .flex-start{
    justify-content: space-between;
    margin-bottom: 120px;
    align-items: inherit;
}
#front-main .solution .flex-start.box01{
    margin-bottom: 78px;
}
@media screen and (max-width: 768px){
    #front-main .solution .flex-start.box01{
        margin-bottom: 48px;
    }
}
#front-main .solution .flex-start li{
    width: calc(33.333% - 15px);
    box-sizing: border-box;
    text-align: center;
    background: #fff;


    line-height: 180%;
    transition:0.5s all;
    height: 348px;
}

#front-main .solution .flex-start li:hover{
    box-shadow: 0px 0px 30px #00000029;
}
#front-main .solution .flex-start li a{
    color:#2B3E57;

    padding: 66px 35px 22px;
    max-height: 340px;
    display: block;
    position: relative;
}

#front-main .solution .flex-start li a img{

    padding-bottom: 50px;
}
#front-main .solution .flex-start li a img.shakehand{
    padding-top: 23px;
    padding-bottom: 49px;
}
@media screen and (max-width: 768px){
    #front-main .solution .flex-start{

        margin-bottom: 40px;

    }
    #front-main .solution .flex-start li{
        width: 100%;
        margin-bottom: 30px;
        height: auto;
    }
    #front-main .solution .flex-start li a{
        padding-top: 50px;
    }
    #front-main .solution .flex-start li a img{
        top:40px;

    }
}


#front-main .solution .flex-start li a .fnt-wgt-bld.fnt-siz-18{
    font-size: 20px;
    font-weight: 900;
    color:#1A9257;
    margin-bottom: 4px;
}


#front-main .solution .section-inner{
    padding-top: 120px;
    padding-bottom: 120px;
}
@media screen and (max-width: 768px){
    #front-main .solution .section-inner{
        padding: 64px 25px 40px;
    }
}

#front-main .security,
#front-main .comparison {
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#289154+0,32abba+100 */
background: rgb(40,145,84); /* Old browsers */
background: -moz-linear-gradient(-45deg,  rgba(40,145,84,1) 0%, rgba(50,171,186,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(-45deg,  rgba(40,145,84,1) 0%,rgba(50,171,186,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(135deg,  rgba(40,145,84,1) 0%,rgba(50,171,186,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#289154', endColorstr='#32abba',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */

}
#front-main .comparison .section-inner{
    padding-top: 140px;
    padding-left: 0;
    padding-right: 0;
}
#front-main .security .section-inner{
    padding: 120px 0;
}
@media screen and (max-width: 768px){
    #front-main .security .section-inner{
        padding: 48px 0 48px;
    }
    #front-main .comparison .section-inner{
        padding-top: 64px;

    }
}
#front-main .security h2{
    text-align: left;
    color:#fff;
    margin-bottom: 30px;
}
@media screen and (max-width: 768px){
    #front-main .security h2{
        text-align: center;
        color:#fff;
        margin-bottom: 30px;
    }
    #front-main .security .flex-center{
        flex-direction: row-reverse;

    }
    #front-main .security .flex-center img{
        padding-bottom: 20px;
        width: 80%;
        display: block;
        margin: 0 auto;
    }
}
#front-main .security h2 span{
    color:#fff;
    margin-bottom: 5px;
}
#front-main .security p{
    line-height: 180%;
    margin-bottom: 42px;
}
#front-main .security a{
    background: #fff;
    color: #1E9357;
    display: block;
    width: 300px;
    line-height:60px;
    text-align: center;
    font-size: 16px;
    font-weight: bold;

    border: 1px solid #fff;
    transition: 0.5s ease-in-out;
}
#front-main .security a:hover{
    box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.15);
}


@media screen and (max-width: 768px){
    #front-main .security a{
        margin: 0 auto 20px;
    }
}

#front-main .case{
    background: url('../img/dots.png') repeat;
}
#front-main .case .section-inner{
    padding-top: 120px;
    padding-bottom:120px;
}
@media screen and (max-width: 768px){
    #front-main .case .section-inner{
        padding-top: 64px;
        padding-bottom:64px;
    }
}
#front-main .case h2{
    margin-bottom: 63px;

}
@media screen and (max-width: 768px){
    #front-main .case h2{
        margin-bottom: 48px;
    }
}
#front-main .case ul{
    margin-bottom: 70px;
}
@media screen and (max-width: 768px){
    #front-main .case ul{
        margin-bottom: 48px;
    }
}
#front-main .case li a{
color:#2B3E57;
display: block;
padding: 24px;
}
@media screen and (max-width: 768px){
    #front-main .case li a{
    padding: 16px;

    margin-bottom: 8px;
    }


}
#front-main .case li{
    transition:0.5s all;

}
#front-main .case li:hover{
    background: #fff;
    box-shadow: 0px 3px 41px #00000020;
}


#front-main .use .section-inner h2{
    margin-bottom: 80px;

}
#front-main .use ul{
    margin-bottom: 43px;
}
@media screen and (max-width: 768px){
    #front-main .use ul{
        margin-bottom: 24px;
    }
}
#front-main .use ul li a{
    color:#1A9257;

}
#front-main .use ul li{
    margin-bottom: 39px;
}
#front-main .use ul li p{
    color:#2B3E57;
    font-weight: 900;
}

#front-main .use ul li p + p{
    line-height: 180%;
    font-weight: 500;
}
@media screen and (max-width: 768px){
    #front-main .use ul li{
        margin-bottom: 8px;
    }
    #front-main .use ul li p,
    #front-main .use ul li p + p{
        padding-top: 8px;
    }

}
#front-main .use ul + a{
    margin-top: 30px;
}

#front-main .history p{
    line-height: 240%;

}
#front-main .history .section-inner{
    padding: 144px 0;
}
@media screen and (max-width: 768px){
    #front-main .history .section-inner{
        padding: 64px 24px;
    }
}
#front-main .valu .section-inner{
    padding-top: 120px;
    padding-bottom: 120px;
}
@media screen and (max-width: 768px){
    #front-main .valu .section-inner{
        padding-top: 64px;
        padding-bottom: 64px;
    }
}
#front-main .valu h2{
    margin-bottom: 80px;
}
@media screen and (max-width: 768px){
    #front-main .valu h2{
        margin-bottom: 48px;
    }
}
#front-main .valu p{
    line-height: 180%;
    color:#2B3E57;
    padding-top: 29px;
}
#front-main .valu ul{
    justify-content: space-between;
}
#front-main .valu li{
    background: #fff;
    padding-top: 70px;
    padding-bottom: 56px;
    width: calc(50% - 20px);
    text-align: center;
    box-shadow: 0px 0px 30px #00000029;
}
#front-main .valu li img{
    width: 80%;
}
#front-main .price{
    color:#2B3E57;
}
#front-main .price h2{
    margin-bottom: 46px;

}

#front-main .price .h2-sub{
    margin-bottom: 38px;
}
@media screen and (max-width: 768px){
    #front-main .price h2{
        margin-bottom: 32px;

    }
    #front-main .price .h2-sub{
        margin-bottom: 24px;
    }
}
#front-main .price .section-inner{
    padding-top: 80px;
}
@media screen and (max-width: 768px){
    #front-main .price .section-inner{
        padding-top: 48px;
        padding-bottom: 48px;
    }
}
#front-main .price .price-num{
    font-size: 42px;
    font-weight: bold;
    font-family: futura-pt, sans-serif;
    padding-top: 6px;
}
#front-main .price .price-num span{
    font-weight: 900;
}
.price-bottom{
    font-size: 14px;
    font-weight: bold;
    color:#8B939D;
}



#front-main .comparison h2{
    color:#fff;
    padding: 0 14px;
}
#front-main .comparison h2 span{
    color:#fff;

}
#front-main .comparison .h2-sub{
    color:#fff;
    margin-bottom: 50px;
    padding: 0 14px;

}
.bg-wh{
    background: #fff;
}
.comparison_graph{
    text-align: center;
}
#front-main .comparison .top-btn{
    max-width: 420px;

    margin-top: 60px;
    margin: 60px auto 0;
    box-sizing: border-box;
    border:none;
    width: auto;
}
@media screen and (max-width: 768px){

    #front-main .comparison .top-btn{

        margin: 60px 48px 64px;
    }
}
#front-main .comparison .top-btn:hover{
    background: #1A9257;
    color:#fff;
    box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.15);
}
#front-main .flow .section-inner{
    padding-top: 120px;
}

#front-main .flow h2{
    margin-bottom: 88px;

}
@media screen and (max-width: 768px){
    #front-main .flow .section-inner{
        padding-top: 64px;
    }
    #front-main .flow h2{
        margin-bottom: 48px;
    }
}
#front-main .flow li{
    position: relative;
    margin:0 20px;
    width: calc(25% - 40px);
    font-size: 12px;
    background: #F4F4F4;
    padding-bottom: 20px;
}
#front-main .flow li:after{
    content:'';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 13.5px 0 13.5px 14px;
    border-color: transparent transparent transparent rgba(1,169,38,0.3);
    position: absolute;
    right:-30px;
    top:50%;
    margin-top: -15px;
}
#front-main .flow li:last-child:after{
    content:none;
}

#front-main .flow li img + img{
    border-radius: 8px 8px 0 0;
}
#front-main .flow li .no{
    position: absolute;
    left:-12px;
    top:-20px;
}
#front-main .flow li p{
    color:#2B3E57;
    line-height: 180%;
    padding-left: 15px;
    padding-right: 10px;

}
#front-main .flow li p.ttl{
    font-size: 14px;
    padding-top: 20px;
}
#front-main .flow .top-btn{
    margin-top: 70px;
}
@media screen and (max-width: 768px){
    #front-main .flow li p.ttl{

        padding-top: 8px;
    }
    #front-main .flow li p{
        padding-top: 8px;
    }
    #front-main .valu ul{
        padding: 0 16px;
    }
    #front-main .valu li{
        width: 100%;
        margin-bottom: 30px;
        padding: 48px 24px;
    }
    #front-main .flow li .no{
        width: 50px;
    }
    #front-main .flow li{
        width: 100%;
        margin: 0 24px 30px;
    }
    #front-main .flow li:after{
        top: calc(100% + 17px);
    transform: rotate(90deg);
    right: 48%;
    }
}

#front-main .consult h2,
#front-main .consult .h2-sub{
    color:#fff;
}
#front-main .consult .h2-sub{
    margin-bottom: 0;
}
#front-main .consult .top-btn{

}
#front-main .consult .top-btn:hover{
    background: #1A9257;
    color:#fff;
    box-shadow: 0 0 25px 0 rgba(0, 0, 0, 0.15);
}
#front-main .consult .section-inner{
    padding: 113px 0 80px;
}
@media screen and (max-width: 768px){
    #front-main .consult .section-inner{
        padding: 40px 20px;
    }
}

#front-main .news .section-inner{
    width: 900px;
    padding-bottom: 120px;
}

#front-main .news{
    position: relative;
}
#front-main .news li{
    margin-bottom: 12px;
    display: table;
    width: 100%;
    color:#2B3E57;
    font-size: 15px;
}
#front-main .news li span{
    background: #fff;
    padding: 23px;
    width: 169px;
    box-sizing: border-box;
    text-align: center;
    font-family: futura-pt, sans-serif;
    margin-right: 2px;
    display: table-cell;
    border-right:2px solid #f1f1f1;
    letter-spacing: 2px;

}

#front-main .news li a{
    background: #fff;
    padding: 23px 30px;
    display: table-cell;
    color:#2B3E57;

}

#front-main .news .news-more{
    position: absolute;
    top: 134px;
    left: 50%;
    margin-left: 358px;
    color: #1A9257;
    font-weight: bold;
    width: 80px;
    display: inline-block;
    text-align: center;
    line-height: 50px;
    background: #fff;
    font-family: futura-pt, sans-serif;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 2px;
}
@media screen and (max-width: 768px) {

    #front-main .news li span{
        background: #fff;
        padding: 15px;
        width: 20%;
        box-sizing: border-box;
        text-align: center;

        margin-right: 2px;
        display: table-cell;
        border-right:2px solid #f1f1f1;
    }

    #front-main .news li a{
        background: #fff;
        padding: 15px;
        display: table-cell;
        color:#2B3E57;

    }


    #front-main .news .section-inner{
        width: 100%;
    }
    #front-main .news .news-more{
        position: inherit;


        margin-left: 0;
        color:#1A9257;
        font-weight: bold;
        width: 100%;
        display: inline-block;
        text-align: center;
        line-height: 50px;
        background: #fff;
    }
}
/*footer追記*/
footer .other-site{
    display: flex;
    border-top:1px solid #3B3B3B;
    margin-top: 60px;
    padding: 60px 0 80px;
}
footer .other-site .service{
    display: flex;
}
footer .other-site .service li{
    width: 230px;
    margin-right: 36px;
    text-align: center;
    border:1px solid #3B3B3B;
    padding: 0;
    background: url('/image/new/common/blank.png') no-repeat;
    background-position: 97% 93%;
}
footer .other-site .service li:first-child img{
    margin-top: 20px;
}
footer .other-site .service li a{
    display: block;
    padding: 16px 0 25px;
    color:#777;
}
footer .other-site .service li img{
    display: block;
    margin:16px auto 0;
}
footer .other-site .isms{
    display: flex;
    color:#858A90;
    font-size: 12px;
    line-height: 160%;
    margin-left: 60px;
}
footer .other-site .isms p{
    padding-right: 20px;
    font-size: 12px;
}
footer .other-site .isms img{
    width: 222px;
}
footer h5{
    color:#fff;
    font-size: 14px;
    margin-bottom: 14px;
}
@media screen and (max-width: 768px) {

    footer h5{
        color:#fff;
        font-size: 14px;
        margin-top: 0;
        margin-bottom: 0px;

        border-bottom:1px solid #3B3B3B;
        padding: 15px;
        text-align: center;
    }
    footer .other-site{
        flex-wrap: wrap;
        margin-top: 30px;
        padding: 0px 0 40px;
        border-top:none;
    }



    footer .other-site .service{
        flex-wrap: wrap;
        width: 100%;
    }
    footer .other-site .service li{
        width: 100%;
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 20px;
    }
    footer .other-site .isms{
        flex-wrap: wrap;
        width: 100%;
        margin-left: 20px;
        margin-right: 20px;

        text-align: center;
    }
    footer .other-site .isms p{
        padding-right: 0;
    }
    footer .other-site .isms img{
        width: 70%;
        display: block;
        margin: 0 auto;
        padding-top: 20px;
    }

}
@media screen and (max-width: 768px){
    .sp-none{
        display: none!important;
    }

}
@media screen and (min-width: 769px){
    .pc-none{
        display: none!important;
    }

}


@media screen and (max-width: 768px){
    body #front-main .top h1 {
        font-weight: bold;
        font-size: 16px;
        text-align: left;
        line-height: 1.4em;
        border: none;
        padding: 0 10px;
        padding-top: 68%;
        margin-top: 100px;
        margin-bottom: 15px;
    }
    .top-left #logo{
        padding-right: 0;
        padding: 0 15px;
    }
    }
