@charset "UTF-8";
/*
黄#ffbb00
青#375e97
赤#fb6542
緑#2f681c
紫#C041FB
*/

/*----共通部分----*/
html{
    font-size: 100%;
}
body{
    font-family: "IBM Plex Sans JP", sans-serif;
    font-weight: 400;
    font-style: normal;
    line-height: 1.7;
    color: #375e97;
    margin:  0% 1%;
}
a{
    text-decoration: none;
    color: #375e97;
}
a:hover{
    color: #888;
}
img{
    max-width: 100%;
    margin: auto;
}
ul{
    list-style-position: inside;
}

/*見出し*/
.font-bold {
  font-family: "Rampart One", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.page-title,
.blog-page-title,
.heading-large {
    font-size: 3rem;
    text-align: center;
}
    .page-title {
        margin: 4rem 0;
        line-height: 1.4;
        font-size: 3.5rem;
    } 
    .blog-page-title{
        margin: 1rem;
        padding: 1rem;
        line-height: 1.2;
        font-size: 3.5rem;
        color: #375e97;
        border-radius: 16px;
    }   

.heading-small{
    font-size: 2rem;
    text-align: center;
    line-height: 1;
    margin-bottom: 2rem;
    margin-top: 0;
    padding-top: 0;
}

.about{
    max-width: 736px;
    padding: 0 1.5rem;
    margin: 3rem auto 0;

}
.about p{
    margin-bottom: 3rem;
}
.subheading-large{
    color: #fb6542;
    padding: 1rem;  
    margin-top: 5%;    
}

.white-back{
    background-color: rgba(255, 255, 255, 0.5);
    border-radius: 8px;
}
.black-back{
    background-color: rgba(100, 100, 100, 0.2);
    border-radius: 8px;
}

/*レイアウト*/
.wrapper{
    max-width: 1500px;
    margin:auto;
    padding: 0 1.5rem;
}
.align-center{
    text-align: center;
}




/*ヘッダー*/
.cover{
    background-size: cover;
    background-position: center;
    height: 640px;
}
.cover-home{
    background-image: url(../../images/gym.webp);
}
.sub-cover{
    background-size: cover;
    background-position: center bottom;
    height: auto;
}
.sub-cover-home{
    background-image: url(../images/sky.jpg.webp);
}
.page-header{
    padding-top: .5rem;
    padding-bottom: .5rem;
}
.logo{
    width: 210px;
}
.main-nav{
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: .5rem;
    font-size: 1rem;
    list-style: none;
}
.main-nav a{
    color: #375e97;
}
.main-nav a:hover{
    color: #7faaec;
}

#membership{
    background-color: #ffbb00;
    
}
#membership_id{
    color: #fff;
}
#membership:hover{
    background-color: #c7991c;
}



/*ボタン*/
.btn{
    display: inline-block;
    font-size: 1.5rem;
    background-color: #2f681c;
    padding: .75rem 1.5rem;
    color: #ffbb00;
    transition: .5s;
}
.btn:hover{
    background-color: #65b64a;
    scale: 1.2;
}

form .btn{
    font-size: 1rem;
    padding: .5rem 1rem;
} 





/*---体験者の声(記事)---*/
.post{
    margin-bottom: 3rem;
}
.post-title{
    font-size: 1.5rem;
    margin-bottom: 1.25rem;
    line-height: 1.5;
}
.post-sub-title{
    padding: .5rem;
    margin: 0 auto .5rem auto;
    font-size: 1.5rem;
    color: #7faaec;
    text-align: center;
}
    
.post-info{
    display: flex;
    gap: 1 rem;
    margin-bottom: 2rem;
}
.post-cat{
    display: flex;
    flex-direction: column;
    list-style: none;
}
.elements{
    display: flex;
    gap: .5rem;
}
.element{
    color: #2f681c;
    background-color: #eee;
    border-radius: 8px;
    font-size: .75rem;
    padding: .5rem .75rem;
}

.post-thumbnail{
    border-radius: 16px;
    margin-bottom: 1.5rem;
}
.post p{
    margin-bottom: 1.5rem;
}



.name{
    font-size: 20px;
    padding: 4%;
    color: #2f681c;
    
}


.go-blog{
    color: #2f681c;
    padding-top: 1rem;
    text-align: right;
    font-weight: bold;
}

/*サイドバー*/
.side-menu{
    list-style: none;
    text-align: center;
    margin-bottom: 4rem;
}
.side-menu-list{
    border-bottom: 1px solid #2f681c;
}

.side-menu a{
    color: #2f681c;
    display: block;
    margin: 1rem;
    
}
.side-menu a:hover{
    color: #65b64a;
    background-color: #eee;
}
.sidebar h3{
    color: #2f681c;
}
.side-img{
    margin-top: 1rem;
    border-radius: 8px;
    width: 80%;
}
.side-summary{
    color: #375e97;
    text-align: left;
}
.side-elements{
    display: flex;
    gap: .3rem;
    margin: 0 auto;
}
.side-element{
    color: #2f681c;
    background-color: #eee;
    border-radius: 4px;
    font-size: .5rem;
    padding: .25rem .5rem;
}


/*フッター*/
.page-footer{
    background-image: url(../../images/building.jpg.webp);
    background-size: cover;
    background-position: center bottom;
    padding-top: 4rem;
}
.info{
    width: 100%;
    max-width: 544px;
    margin: auto;
    padding: 0 1.5rem;
    border-spacing: 0;
}
.info th,
.info td{
    border-bottom: 1px solid #fff;
}
.info th{
    text-align: left;
    font-weight: normal;
    padding: 1rem;
}
.info td{
    padding: 1rem 1rem 1rem 0;
}
.footer a{
    color: #eee;
}

footer ul{
    display: flex;
    justify-content: center;
    flex-direction: column;
}

footer li{
    padding-top: .5rem ;
}

.copyright{
    background-color: #375e97;
    text-align: center;
    padding: 2rem 0;
    margin-top: 4rem;
    color: #fff;
}


/*----デスクトップ版----*/
@media (min-width: 800px){
 /*見出し*/
 .page-title{
    font-size: 5rem;
 }
 .heading-large{
    font-size: 4rem;
 }
 /*ヘッダー*/
 .page-header{
    display: flex;
    justify-content: space-between;
    padding-top: 1.5rem;
 }
 .logo{
    width: 300px;
}
 .main-nav{
    font-size: 1.5rem;
    gap: 2rem;
    flex-direction: row;
    justify-content: space-between;
 }

 /*HOME*/
 .cover-home{
    background-image: url(../../images/gym.webp);
 }
 .about{
    margin: 4rem auto 0;
 }

 /*体験者の声*/
.participant-contents{
    display: flex;
    justify-content: space-between;
}
.post{
    width: 70%;
}
.sidebar{
    width: 22%;
}
.post-title{
    font-size: 2rem;
    margin-bottom: 1.25rem;
    line-height: 1.5;
}
.post-sub-title{
    display: flex;
    justify-content: center;
    width: 50%;
}

 /*フッター*/
 .page-footer{
    background-image: url(../../images/building.jpg.webp);
    padding-top: 4rem;
 }
 footer ul{
    display: flex;
    justify-content: center;
    flex-direction: row;
    gap: 2rem;
}
 

 /*体験者の声*/
 .participants{
    display: flex;
    flex-direction: row;
    
}
.participant-imag{
    width: 45vw;
}
}