@charset "UTF-8";
/*
主たるブレイクポイント
768px以下sp.tab
769px以上pc
1000px以上pc2
*/


/*===============
共通設定 & 汎用クラス
===============*/
html{
  font-size: 62.5%;
}


body{
  font-size: 1.6rem;
  font-family:"游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
  line-height: 2;
  color: #333;
}

a{
  text-decoration: none;
}

a:hover{
  opacity: 0.6;
}

.cf::after{
  content: "";
  display: block;
  clear:both;
}

.sp{
  display: block;
}

.pc{
  display: none;
}

.to_top{
  font-size:4rem;
  line-height: 50px;
  text-align: center;
  border-radius: 50px;
  background-color: #fff;
  width:50px;
  height:50px;
  position:fixed;
  bottom:10px;
  right:10px;
  cursor: pointer;
}

@media screen and (min-width:600px){
  .sp{
    display: none;
  }
  .pc{
    display: block;
  }
}

.title{
  text-align: center;
  font-size: 2.6rem;
  margin-bottom: 30px;
  line-height: 1;
}

.btn a{
  display: block;
  background-color: #3CAD5A;
  width:80%;
  max-width:270px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  color: #fff;
  line-height: 70px;
}

@media screen and (min-width:769px){
  .btn a{
    width:60%;
  }
}

.inner{
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}

.break{
  display: inline-block;
}

.row{
  padding: 70px 5%;
}


@media screen and (min-width:769px){
  .row{
    padding-left: 0;
    padding-right: 0;
  }

}


/*===============
ヘッダー
===============*/

header{
  position:sticky;
  top:0;
  width:100%;
  height: 70px;
  background-color: rgba(255,255,255,0.8);
  z-index:1000;
}

header div{
  display: flex;
  justify-content: space-between;
  align-items:center;
  position: relative;

}
header h1{
  padding-top: 15px;
  padding-left: 15px;
  padding-bottom: 5px;
  max-width: 40%;
}



/* メニュー */

.sp_nav{
  display: block;
}

.pc_nav{
  display: none;
}

.sp_nav > div{
  width:24px;
  height: 24px;
  position: fixed;
  top:20px;
  right: 15px;
  z-index: 10000000;
}

.sp_nav div span{
  display: block;
  width:100%;
  background-color: #333;
  height: 2px;
  transition:0.4s;
  position: absolute;
}

.sp_nav div span:first-child{
  top:0;
}

.sp_nav div span:nth-child(2){
  top:11px;
}

.sp_nav div span:last-child{
  bottom:0;
}

.sp_nav.on span:nth-child(1){
  transform: translate(0px,11px)rotate(45deg);
}

.sp_nav.on span:nth-child(2){
  visibility: hidden;
}

.sp_nav.on span:nth-child(3){
  transform: translate(0px,-11px)rotate(-45deg);
}

.sp_nav nav > div{
  width:100%;
  height: 100vh;
  padding-top:64px;
  padding-left:32px;
  padding-right: 32px;
  background-color: #b6daa5;
  position: fixed;
  top: 0;
  transform: translateX(100%);
  transition: 0.3s;
  overflow-y: auto;
}

.sp_nav.on nav > div{
  transform: translateX(0%);
}

.sp_nav.on nav > div ul{
  margin-bottom: 20px;
}

.sp_nav nav > div ul li{
  font-size:2rem;
  line-height: 5rem;
}
.sp_nav nav > div ul ul li{
  padding-left: 20px;
  font-size:1.6rem;
}
.sp_nav nav > div ul li a{
  color: #707070;
  display: block;
  border-bottom: 1px solid #707070;
  text-decoration: none;
}

.sp_nav nav > div ul li > ul li a{
  border-bottom: 1px dotted #707070;
}




@media screen and (min-width:769px){
    header h1{
        margin-left: auto;
        margin-right: auto;
        padding-top: 15px;
        padding-left: 15px;

    }

}


/*=====================
キービジュアル
=====================*/
/* ロゴと背景ありレスポンシブ */
#key{
  width:100%;
  background-image: url(../img/glove.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

#key div{
  display: table;
  height: 74vh;
}

#key p.sp{
  text-align: center;
  display: table-cell;
  vertical-align: middle;
  padding-left: 20px;
  padding-right: 20px;
}

#key div.pc{
  display: none;
}


/* 画像のみ */
#top{
  width: 100%;

    }


@media screen and (min-width:769px){
  #top{
width: 70%;
margin-left: auto;
margin-right: auto;
  }
}






/*=====================
スクロール
=====================*/
#scroll{
  text-align: center;
  line-height: 1;
  padding-top: 20px;
  padding-bottom: 0;
}

#scroll p i{
  border:1px solid #707070;
  border-radius: 20px;
}

/*=====================
メイン
=====================*/

main #top_about .lead{
  margin-bottom: 30px;
}

@media screen and (min-width:600px){
  main #top_about .lead{
    max-width:600px;
    margin-right: auto;
    margin-left: auto;
  }
}/*===min-width:600px===*/

main .sonota div{
  padding:0 10%;
  margin-bottom: 30px;
}



main .sonota div figure{
  margin-bottom: 20px;
  text-align: center;
}

@media screen and (min-width:600px){
  main .sonota div figure:last-child,
  main .sonota div figure:nth-last-child(2){
    margin-bottom: 0px;
  }

}/*===min-width:600px===*/


main .sonota div figure figcaption{
  text-align: center;
}

@media screen and (min-width:600px){
  main .sonota div{
    padding:0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  main .sonota div figure{
    width:48%;
  }
}

@media screen and (min-width:769px){
  main .sonota div figure{
    width:20.5%;
  }

}/*===min-width:769px===*/

main #recommend{
  background-color:#fffab7;
color: #4c826b;
}

main #recommend h2+p{
  margin-bottom: 15px;
}

main #recommend figure{
  margin-bottom: 30px;
}

main #recommend figure > p{
  margin-bottom: 20px;
  text-align: center;
}

@media screen and (min-width:769px){
  main #recommend figure{
    display: flex;
  }

  main #recommend figure > p{
    margin-right: 20px;
    width:40%;
  }

}/*===min-width:769px===*/





/*=====================
フッター
=====================*/
/* footer{
  background-color: #576128;
  margin-top: 150px;
}

footer{
  padding-top: 30px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 20px;
}



footer .copy{
  color: #fff;
  text-align: center;
} */


