@charset "utf-8";
/* CSS Document */

img{
    width: 100%;
}

body{
    font-family: "Kosugi", sans-serif;
    font-style: normal;
    line-height: 1.7;
    background-color: #000;
    color: #fff;
}

.flex{
    display: flex;
    justify-content: space-between;
}

header{
    background-color: #fff;
    width: 100%;
    height: 65px;
    position: sticky;
    top: 0;
    z-index: 9999;
    display: flex;
}

header h1{
    width: 18%;
    line-height: 65px;
    margin-left: 100px;
    position: relative;
    z-index: 9997;
    vertical-align: middle;
}

header h1 img{
    vertical-align: middle;
}

nav ul li{
    font-family: "Mochiy Pop One", sans-serif;
    font-size: clamp(18px, 3vw, 30px);
    font-weight: bolder;
    margin-top: 1em;
}

/*ここからハンバーガーメニュー*/
#menu-btn-check {
    display: none;
}

.menu-btn {
    position: fixed;
    top: 10px;
    left: 15px;
    display: flex;
    width: 50px;
    height: 48px;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    background-repeat: no-repeat;
    background-size: cover;
}

.menu-btn span{
    display: block;
    width: 100%;
    height: 100%;
    background-image: url("../img/hamburger-open.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

#menu-btn-check:checked~.menu-btn span {
    background-image: url("../img/hamburger-close.png");
}


.menu-content {
    width: 30%;
    height: 100%;
    position: fixed;
    top: 0;
    right: 100%;
    z-index: 9998;
    background-color: #000;
    transition: all 0.5s;/*アニメーション設定*/
}

#menu-btn-check:checked ~ .menu-content {
    right: 70%;/*メニューを画面内へ*/
}

.menu-content ul {
    padding: 70px 5px 0;
    color: #fff;
}
.menu-content ul li a {
    display: block;
    width: 100%;
    font-size: 15px;
    color:#ffffff;
    padding: 15px 3em;
}

/*ここまでハンバーガーメニュー*/

#wrap{
    width: 70%;
    margin: 0 auto;
}

h2{
    color: #fff;
    font-size:clamp(22px, 2.3vw, 48px); 
    font-weight: bolder;
    margin: 5vw 0 3vw;
}

h3{
    color: #fff000;
    font-size:clamp(20px, 1.8vw, 40px); 
    font-weight: bolder;
    margin-top: 3vw;
    border-bottom: 1px solid #fff;
    padding-bottom: 0.3em;
    margin-bottom: 0.3em;
}

.contact{
    font-weight: bold;
}


body footer{
    background-color: #fff;
    color: #000;
}

footer .foot{
    display: flex;
    width: 65%;
    margin: 8vw auto 0;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0;
}

footer .foot .rogo-foot{
    width: 25%;
}

footer .foot .contact{
    width: 30%;
    font-size: 18px;
    padding: 0 1em;
    font-weight: bold;
    text-align: right;
}

footer .foot ul{
    font-size: 14px;
}

footer .foot ul li:first-child{
    font-size: 14px;
    font-weight: bold;
}


@media screen and (max-width:768px) {
header{
    height:10vw;
    max-height:50px;
}

header h1{
    width: 25%;
    line-height: 10vw;
    margin-left: 15vw;
}

.menu-btn {
    width: 5%;
    height: 5vw;
    min-width:25px;
}

.menu-content {
    width: 50%;
}

.menu-content {
    width: 70%;
}

#menu-btn-check:checked ~ .menu-content {
    right: 30%;/*メニューを画面内へ*/
}

footer{
    background-color: #fff;
}

footer .foot{
    width: 95%;
}

footer .foot .rogo-foot{
    width: 40%;
}

footer .foot .contact{
    font-size: 16px;
}

footer .foot ul{
    font-size: 12px;
}


}

@media screen and (max-width:390px) {
header h1{
    width: 35%;
}
.menu-btn {
    width: 7%;
    height: 6vw;
    min-width:30px;
    top:7px;
    left: 10px;
}

#wrap{
    width: 85%;
}

footer .foot{
    width: 85%;
    display: block;
}

footer .foot .rogo-foot{
    width: 75%;
    margin: 0 auto;
}

footer .foot .contact,footer .foot ul{
    width: 100%;
    margin-top: 1em;
    text-align: center;
}

footer .foot .contact{
    border-top: 2px dotted #000;
    padding-top: 1em;
}

footer .foot .contact::after,footer .foot .contact::before{
    content: "▼";
    display: inline-block;
    color: #e60012;
    font-size: 0.8em;
}

footer .foot ul li span{
    display: inline-block;
}

}

