.gfonts-montserrat{
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}

body{background: #f0f0f0;
width: 100vw;
overflow-x: hidden;}
h2.contents_title{
    margin-bottom: 20px;
    padding-bottom: 40px;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.25em;
    background: url("../img/main/arrow.svg") no-repeat bottom center;}
h2.contents_title span{
    font-size: 10px;
    font-family: "Montserrat", sans-serif;
    text-transform: uppercase;}
h2.contents_title span:before{content:"\A";white-space:pre;}
.contents a{color: #000;}
.tmenu a{text-decoration: underline;}
.accentbg{background: #dbe9d0;}
/********************************************************************/

header{
    position: fixed;
    top: 0;    
    width: 100%;
    z-index: 10;
    
    background: rgba(0,0,0,.85);
    
}

header a{color: #fff;}
nav ul li a{
    display: block;
}
nav ul li span{
    text-transform: uppercase;
    font-size: 7px;
}
nav ul li span:before{
	content:"\A";white-space:pre;
}
.acd-check{
    display: none;
}
.nav_shop{
    background: url("../img/main/nav_shop.svg") no-repeat;
    background-size: 25px auto;
}
.nav_price{
    background: url("../img/main/nav_price.svg") no-repeat;
    background-size: 35px auto;
}
.nav_lesson{
    background: url("../img/main/nav_lesson.svg") no-repeat;
    background-size: 28px auto;
}
.nav_biginner{
    background: url("../img/main/nav_biginner.svg") no-repeat;
    background-size: 18px auto;
}
/********************************************************************/
.wave{
    padding: 0;
    width: 100%;
    overflow: hidden;
    border-bottom: 100px solid #dbe9d0;
}
.wave img{
    width: 100%;
    vertical-align:top;
}
/********************************************************************/

#shop_footer{
    padding-bottom: 100px;
    background: #e6e6e6;
}
#shop_footer h1{
    padding: 100px 0 50px 0;
    text-align: center;
}
#shop_footer > div{
    display: flex;
}
.shop_info > img{
    border-radius: 5px;
}
.shop_info h5{padding: 15px 0 5px 0;}

.shop_detail{
    display: flex;
}
.shop_detail .info p{
    font-size: 14px;
}
.shop_detail .info p.tel_link a{
    font-weight: 700;
}
.shop_detail .social{
    padding-left: 10px;
}
.shop_access{
    padding-top: 10px;
}

/********************************************************************/