@charset "utf-8";



@media all and (min-width: 897px) {
  .pc {
    display: block;
  }
  .sp {
    display: none;
  }
  
  .wrap {
    width: 100%;
  }

  footer {
    width: 100%;
    text-align: center;
    padding: 5rem 0;
    background: #008133;
  }

  footer img{
    display: block;
    margin: 0 auto;
    transform: translateX(45px);
  }

  header img{
    display: block;
    margin: 0 auto;
  }

  img {
    display: block;
    margin: 0 auto;
  }
  
  .fvback {
    position: relative;
    width: 100%;
  }
  
  .fvback img{
    width: 100%;
  }
  

  .backarea01 {
    background: url("../images/content01bg.png") no-repeat bottom center/cover;
    padding: 60px 0 70px;
  }

  .backarea02 {
    width: 100%;
    padding: 0px 0 50px;
  }
  
  .backarea03 {
    background: url("../images/content03_bg.jpg") no-repeat bottom center/cover;
    padding: 20vw 0 25vw;
    margin-top: -19vw;
  }
  
  .backarea03 img{
    max-width: 1194px;
  }

  .backarea04 {
    margin-top: -19vw;
  }
  
  .backarea05 {
    background: url(../images/content05_bg.jpg) no-repeat bottom center / cover;
    padding: 7vw 0 90px;
    margin-top: -10vw;
  }
  
  .backarea05 img{
    transform: translateX(-50px);
  }
  
  .backarea06 {
    position: relative;
    width: 100%;
    padding: 74px 0 129px;
    background: url("../images/step2_bg.png") no-repeat bottom center/cover;
  }
  
  .backarea07 {
    width: 100%;
    padding: 75px 0 54px;
    background: url("../images/07back.png") no-repeat top center/cover;
  }
  
  .backarea08 {
    width: 100%;
    padding: 138px 0;
    background: #198358;
  }
  .linkBtn {
    max-width: 500px;
    margin: auto;
  }
  .linkBtn {
    margin: 0 auto 0px;
  }
  .linkBtn a:hover {
    opacity: 0.7;
  }
  
  .snsList {
    list-style: none;
    max-width: 580px;
    margin: 30px auto 0;
    padding: 0;
    justify-content: space-around;
  }
  .snsList li {
    width: 20%;
    text-align: center;
  }
  .snsList li a:hover {
    opacity: 0.7;
  }
  .snsList li .topImg {
    display: block;
  }
  .snsList li .txtSpan {
    display: block;
    margin-top: 8px;
  }
  
  .snsList li img {
    width: 50px;
  }
  
  .flex, .flexA, .flexB, .flexC {
    display: flex;
    flex-wrap: wrap;
  }
}



@media all and (max-width: 896px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  
  img {
    width: 100%;
  }
  
  .header_sp {
    width: 26.6vw;
    display: block;
    margin: 2vw auto;
    position: relative;
  }
  
  footer {
    width: 100%;
    text-align: center;
    padding: 30px;
  }
  
  .sp01_02area {
    margin: 5.33vw auto;
    display: block;
  }
  
  .sp01_02area img{
    width: 91.8vw;
    margin: auto;
  }
  
  .content02_sp {
    display: block;
    width: 96.2vw;
    margin: 8.6vw auto 6.6vw;
  }
  
  .content03_sp img{
    
    
  }
  
  .sp03area, .sp01_02area, .sp01_03area, .sp01_04area {
    position: relative;
  }
  
  .sns_area {
    margin: 5vw 0 0;
  }
  
  .sns_area .linkBtn {
    margin: 0 2vw 6.1vw;
    text-align: center;
  }
  
  .snsList {
    margin: 0 auto;
    width: 96vw;
    list-style: none;
    padding: 0;
    
  }
  
  .snsList li {
    width: 20%;
    margin-bottom: 36px;
  }
  
  .snsList li .txtSpan {
    font-size: 0.7rem;
    margin-top: 5px;
  }
  
  .snsList li .topImg {
    width: 50px;
    height: 50px;
    margin: 0 auto;
    display: flex;
    align-items: center;
  }
  
  .flex, .flexA, .flexB, .flexC {
    display: flex;
    flex-wrap: wrap;
  }
  
  .linkBtn {
    margin: 0 15px 46px;
    text-align: center;
  }
  
  .content04_title_sp {
    width: 40.3vw;
    margin: 0 auto 5vw;
    display: block;
  }
  
  
   
}
