@media (min-width:768px){
  main{
    background:url("../img/base.jpg") no-repeat center top;
  }
  .container {
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px;
    padding-left: 15px;
    padding-right: 15px;
  }
  .sp{
    display: none !important;
  }
}
@media (max-width:767px){
  main{
    /*background:url("../img/base_sp.jpg") no-repeat center top/100% auto;*/
    margin-top: -68px;
  }
  .pc{
    display: none !important;
  }
}

@media (min-width:768px){
  .myMainvisual__inner{
    height: 760px;
    padding-top: 40px;
  }
  .myMainvisual__title{
    margin-bottom: 40px;
  }
  .myMainvisual__lead{
    margin-bottom: 1.0em;
    color: #202c5c;
    font-size:22px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.03em;
  }
  .myMainvisual__txt{
    margin: -0.333333em 0;
    color: #202c5c;
    font-size:18px;
    font-weight: 500;
    line-height: 1.666666;
    letter-spacing: 0.03em;
  }
  .myMainvisual__btn{
    margin-top: 40px;
  }
  .myMainvisual__btn a{
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    width:344px;
    height:70px;
    margin-left: 100px;
    color:#fff;
    font-size: 18px;
    background: rgb(45,77,208);
    background: -moz-linear-gradient(left,  rgba(45,77,208,1) 0%, rgba(32,44,92,1) 100%);
    background: -webkit-linear-gradient(left,  rgba(45,77,208,1) 0%,rgba(32,44,92,1) 100%);
    background: linear-gradient(to right,  rgba(45,77,208,1) 0%,rgba(32,44,92,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2d4dd0', endColorstr='#202c5c',GradientType=1 );
  }
  .myMainvisual__btn a:after{
    content:url("../img/link_arrow.png");
    margin-left: 20px;
    line-height: 9px;
  }
}
@media (max-width:767px){
  .myMainvisual__inner{
    height: 173.4vw;
    padding-top: 30vw;
    background:url("../img/main.jpg") no-repeat center bottom/100% auto;
  }
  .myMainvisual__title{
    width: 84vw;
    margin: 0 auto 10vw;
  }
  .myMainvisual__lead{
    margin: -0.333333em 5.333333vw calc(8vw - 0.333333em);
    color: #202c5c;
    font-size: 4.8vw;
    font-weight: 800;
    line-height: 1.666666;
    letter-spacing: 0.03em;
    text-shadow: 0px 0px 5px rgba(255,255,255,1.0);
  }
  .myMainvisual__txt{
    width: 51.2vw;
    margin: -0.3925em 5.333333vw;
    color: #202c5c;
    font-size: 3.733333vw;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 0.03em;
    text-shadow: 0px 0px 5px rgba(255,255,255,1.0);
  }
  .myMainvisual__btn{
    margin-top: 15.5vw;
  }
  .myMainvisual__btn a{
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 89.333333%;
    height: 13.333333vw;
    margin: 0 auto;
    color:#fff;
    font-size: 4vw;
    background: rgb(45,77,208);
    background: -moz-linear-gradient(left,  rgba(45,77,208,1) 0%, rgba(32,44,92,1) 100%);
    background: -webkit-linear-gradient(left,  rgba(45,77,208,1) 0%,rgba(32,44,92,1) 100%);
    background: linear-gradient(to right,  rgba(45,77,208,1) 0%,rgba(32,44,92,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2d4dd0', endColorstr='#202c5c',GradientType=1 );
  }
  .myMainvisual__btn a:after{
    content:url("../img/link_arrow.png");
    margin-left: 20px;
    line-height: 9px;
  }
}

@media (min-width:768px){
  .myBlockMerit{
  }
  .myBlockMerit__inner{
    height: 785px;
  }
  .myBlockMerit__title{
    margin-bottom: 30px;
    color: #202c5c;
    font-size: 48px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
  }
  .myBlockMerit__txt{
    color: #202c5c;
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
  }
  .myBlockMerit-list{
    display: -webkit-flex;
    display: flex;
    align-items:stretch;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 60px;
  }
  .myBlockMerit-list__item{
    width:calc((100% - 72px)/3);
    margin:0 12px 28px;
    padding: 61px 25px;
    background:#fff;
    box-shadow: 0px 0px 5px rgba(0,0,0,0.1);
  }
  .myBlockMerit-list__item h3{
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-direction: column;
    width:100%;
    height: 160px;
    margin-bottom: 12px;
    padding-bottom: calc(12px - 0.2em);
    font-size:20px;
    font-weight: 600;
    letter-spacing: 0.03em;
    text-align: center;
    line-height: 1.4;
    white-space: nowrap;
    /*border-bottom:4px solid #202c5c;*/
  }
  .myBlockMerit-list__item p{
    margin: -0.25em 0;
    font-size:18px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.03em;
  }
  .myBlockMerit-list__image{
    margin-bottom: calc(18px - 0.2em);
  }
}
@media (max-width:767px){
  .myBlockMerit{
    background:#e9ebf5 url("../img/bg_merit.png") no-repeat center bottom/100% auto;
  }
  .myBlockMerit__inner{
    padding-top: 13.333333vw;
    padding-bottom: 32vw;
  }
  .myBlockMerit__title{
    margin-top: -0.1333em;
    margin-bottom: calc(5.333333vw - 0.1333em);
    color: #202c5c;
    font-size: 8vw;
    font-weight: 800;
    line-height: 1.2666;
    letter-spacing: 0.03em;
    text-align: center;
  }
  .myBlockMerit__txt{
    margin: -0.25em 0;
    color: #202c5c;
    font-size: 3.7333333vw;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.03em;
    text-align: center;
  }
  .myBlockMerit-list{
    display: -webkit-flex;
    display: flex;
    align-items:stretch;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 10vw;
  }
  .myBlockMerit-list__item{
    width: 89.333333%;
    margin:0 0 4.8vw;
    padding: 4vw 4vw 7vw;
    padding: 6vw 4vw 0vw;
    background:#fff;
    box-shadow: 0px 0px 5px rgba(0,0,0,0.1);
  }
  .myBlockMerit-list__item h3{
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-direction: column;
    width:100%;
    height: auto;
    margin-bottom: 4vw;
    padding-top: 1.333333vw;
    padding-bottom: calc(4vw - 0.2em);
    font-size: 4.5333333vw;
    font-weight: 600;
    letter-spacing: 0.03em;
    text-align: center;
    line-height: 1.4;
    white-space: nowrap;
    /*border-bottom:4px solid #202c5c;*/
  }
  .myBlockMerit-list__item p{
    margin: -0.3em 0;
    font-size: 3.733333vw;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
  .myBlockMerit-list__image{
    height: 13.333333vw;
    margin-bottom: calc(4vw - 0.2em);
  }
  .myBlockMerit-list__image img{
    max-width: inherit;
    max-height: 100%;
  }
}

@media (min-width:768px){
  .myBlockFlow__inner{
    height: calc(1370px - 141px);
    padding-top: 285px;
  }
  .myBlockFlow__title{
    margin-bottom: 60px;
    color: #202c5c;
    font-size: 48px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
  }
  .myBlockFlow-list{
    max-width:800px;
    margin: 0 auto;
  }
  .myBlockFlow-list__item{
    display: -webkit-flex;
    display: flex;
    align-items: static;
    justify-content: static;
    background: #fff;
    box-shadow: 0px 0px 6px rgba(0,0,0,0.2);
  }
  .myBlockFlow-list__image{
  }
  .myBlockFlow-list__txt{
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 30px;
  }
  .myBlockFlow-list__txt h3{
    margin-bottom: 0.5em;
    font-size: 22px;
    font-weight: 800;
    color: #202c5c;
    line-height: 1;
  }
  .myBlockFlow-list__txt p{
    margin-top: -0.333333em;
    margin-bottom: -0.333333em;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.666666;
  }
  .myBlockFlow-list__arrow{
    margin: 12px auto;
    text-align: center;
  }
}
@media (max-width:767px){
  .myBlockFlow{
    background:url("../img/bg_flow.jpg") no-repeat center bottom/100% auto;
  }
  .myBlockFlow__inner{
    padding-top: 13.333333vw;
    padding-bottom: 84.266666vw;
  }
  .myBlockFlow__title{
    margin-bottom: 8vw;
    color: #202c5c;
    font-size: 8vw;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
  }
  .myBlockFlow-list{
    max-width:800px;
    margin: 0 auto;
  }
  .myBlockFlow-list__item{
    display: -webkit-flex;
    display: flex;
    align-items: static;
    justify-content: static;
    flex-direction: column;
    width: 89.333333%;
    margin: 0 auto;
    background: #fff;
    box-shadow: 0px 0px 6px rgba(0,0,0,0.2);
  }
  .myBlockFlow-list__image{
  }
  .myBlockFlow-list__txt{
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 4vw 4vw 5.333333vw;
  }
  .myBlockFlow-list__txt h3{
    margin-bottom: 0.75em;
    font-size: 4.533333vw;
    font-weight: 800;
    color: #202c5c;
    line-height: 1;
    text-align: center;
  }
  .myBlockFlow-list__txt p{
    margin-top: -0.333333em;
    margin-bottom: -0.333333em;
    font-size: 3.733333vw;
    font-weight: 600;
    line-height: 1.666666;
  }
  .myBlockFlow-list__arrow{
    margin: 5.333333vw auto;
    text-align: center;
  }
  .myBlockFlow-list__arrow img{
    width: 12.533333vw;
  }
}

@media (min-width:768px){
  .myBlockForm__inner{
    height: calc(605px + 141px);
    padding-top: 141px;
  }
  h2.myBlockForm__title{
    margin-bottom: 30px;
    color: #fff;
    font-size: 48px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
  }
  .myBlockForm__txt{
    margin-bottom: 60px;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
  }
  h3.myBlockForm__title{
    margin-bottom: 30px;
    color: #fff;
    font-size: 22px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
  }
  .myBlockForm__btn{
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    max-width: 900px;
    margin: 0 auto 60px;
  }
  .myBlockForm__btn a{
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 70px;
    color: #202c5c;
    font-size:18px;
    font-weight: 600;
    letter-spacing: 0.03em;
    line-height: 1;
    background:#fff;
  }
  .myBlockForm__btn a.myBlockForm__link{
    width: calc((100% - 60px)/2);
  }
  .myBlockForm__btn a .arwW,
  .myBlockForm__btn a .arwW{
    margin-left: 1.0em;
  }
  .myBlockForm__btn a .arwW::before,
  .myBlockForm__btn a .arwW::after{
    border-bottom: solid 1px #202c5c;
  }
}
@media (max-width:767px){
  .myBlockForm{
    background:url("../img/bg_form.jpg") repeat center bottom/100% auto;
  }
  .myBlockForm__inner{
    padding-top: 12.8vw;
    padding-bottom: 20vw;
  }
  h2.myBlockForm__title{
    margin-bottom: 4.8vw;
    color: #fff;
    font-size: 8vw;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
  }
  .myBlockForm__txt{
    margin-top: -0.35em;
    margin-bottom: calc(10vw - 0.35em);
    color: #fff;
    font-size: 3.733333vw;
    font-weight: 500;
    line-height: 1.7;
    letter-spacing: 0.03em;
    text-align: center;
  }
  h3.myBlockForm__title{
    margin-bottom: 4.8vw;
    color: #fff;
    font-size: 5.066666vw;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
  }
  .myBlockForm__btn{
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    width: 89.333333%;
    margin: 0 auto 12.8vw;
  }
  .myBlockForm__btn a{
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 13.333333vw;
    color: #202c5c;
    font-size: 4vw;
    font-weight: 600;
    letter-spacing: 0.03em;
    line-height: 1;
    background:#fff;
  }
  .myBlockForm__btn a:not(:first-child){
    margin-top: 4.8vw;
  }
  .myBlockForm__btn a .arwW,
  .myBlockForm__btn a .arwW{
    margin-left: 1.0em;
  }
  .myBlockForm__btn a .arwW::before,
  .myBlockForm__btn a .arwW::after{
    border-bottom: solid 1px #202c5c;
  }
}
