
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Shippori+Mincho+B1:wght@400;500;600;700;800&display=swap');




 pc-only {
        display: block;
    }
    .sp-only {
        display: none;
    }
/** タブレット */
@media screen and (max-width: 1024px){
}
/** sp **/
@media screen and (max-width: 500px){
    .sp-only {
        display: block;
    }
    .pc-only {
        display: none;
    }
}



section{
    background-image: url("../images/back.png");
    background-repeat: repeat;
    
}
/** kv **/
.kv{
   width: 100%;
}
.kv img{
    width: 100%;
    height: auto;
    vertical-align: top;
}
.main img{
     width: 100%;
    height: auto;
    vertical-align: top;
}


.main {
       /*font-family: sans-serif;*/
        font-family: "Shippori Mincho B1", serif;

}
.main .discription{
    width: fit-content;
    margin: 80px auto 0;
    max-width: 95%;
}
.main .discription p{
    font-size: 42px;
     font-weight: bold;
     line-height: 1.5;
     text-align: center;
}


/** stage schedule **/
.main .event,
.main .stage{
    margin-top: 160px;
}

.main .event .event__title,
.main .stage .stage__title{
    /*height: 75px;*/
    margin: 0 auto;
    width: 60%;
    max-width: 900px;
}
/*.main .event .event__title img,
.main .stage .stage__title img{
    width: auto;
    height: 100%;
}*/
.main .stage p.stage__title--sub{
    font-size: 25px;
    text-align: center;
    font-weight: bold;
    margin-top: 20px;
}
.main .stage .program{
    margin: 50px auto 0;
    width: 80%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}
/*.main .stage .program img{
    width: 100%;
    height: auto;
    vertical-align: top;
}*/
/*.main .stage .program .program__item{
    border: 1px solid #D93932;
}*/


/** event **/
.main .event .event__title{
   width: 25%;
   max-width: 300px;
}
.e-list{
    display: grid;
    gap: 30px;
    width: 80%;
    margin: 50px auto 0;
}
.e-item{
    padding: 20px 0;
    border-top: 4px solid #d93932;
    border-bottom: 4px solid #d93932;
}
.e-item__inner{
    width: 80%;
    margin: 0 auto;
    
}
.e-item:nth-child(2){
    border-color: #d3a100;
}

/*.e-item__title{
    height: 34px;
}
.e-item__title img{
    width: auto;
    height: 100%;    
}*/
.e-itme__content{
    margin-top: 20px;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 500;
     font-family: "Noto Sans JP", sans-serif;
 
}

.e-itme__title{
    font-size: 42px;
    color: #d93932;
    font-weight: bold;
}
.e-goods{
    width: 80%;
    margin: 160px auto 0;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    
}

.e-goods__item img {
    vertical-align: bottom;
}


.attention{
    width: fit-content;
    margin: 20px auto 0;
    max-width: 70%;
     font-family: "Noto Sans JP", sans-serif;
}

/** link **/
.link{
    width: fit-content;
    margin: 160px auto 0;
    display: flex;
    gap: 80px;
}
.l-icon {
    width: 50px;
}

/** about link **/
.about-link{
    margin: 50px auto 0;
    width: fit-content;
    gap: 100px;
    display: flex;
}
.about-link p{
     font-family: "Noto Sans JP", sans-serif;
    color: #d93932;
    font-size: 24px;
    font-weight: bold;
}



/** footer **/
.m-footer{
    margin-top: 50px;
/*    background-color: #ffde5e;
    padding: 30px 0;*/
    width: 100%;
}
.m-footer img {
    width:  100%;
    height: auto;
    vertical-align: top;
}




/** tb版 **/
@media screen and (max-width: 1024px){
    .main .discription p {
        font-size: 36px;
    }
    .main .event, .main .stage{
        margin-top: 100px;
    }
    .main .stage .program{
        width: 95%;
    }
    .e-list{
        width: 90%;
    }
    .e-item__inner{
        width: 95%;
    }
    .e-itme__title{
        font-size: 36px;
    }
    .e-goods{
        width: 95%;
        margin-top: 100px;
    }
    .link{
        margin-top: 100px;
    }
}


/**** sp版 ****/
@media screen and (max-width: 500px) {


    /** discription **/
    .discription {
        width: 90%;
    }
    .main .discription p{
        font-size: 24px;
    }
    
    .main .event, .main .stage{
        margin-top: 80px;
    }
    /** stage **/
    .main .stage .stage__title{
        width: 85%;
    }
    .main .stage p.stage__title--sub{
        margin-top: 10px;
        font-size: 16px;
    }
    .main .stage p.stage__title--sub{
        font-size: 18px;
    }
    /** program **/
    .main .stage .program{
        grid-template-columns: 1fr;
    }
    
    
    
    /** event **/
    .e-list{
        width: 95%;
    }
    .e-itme__title{
        font-size: 24px;
    }
    .e-itme__content{
        font-size: 16px;
    }
    .e-item__inner{
        width: 93%;
    }
    
    /** goods **/
    .e-goods{
        margin-top: 80px;
        grid-template-columns: 1fr;
    }
    .attention{
        font-size: 14px;
        max-width: 95%;
    }
    
    /** link **/
    .link{
        margin-top: 80px;
    }
    .l-icon{
        width: 30px;
    }
    
    /** about link **/
    .about-link{
        flex-direction: column;
        gap: 30px;
    }
    .about-link > div{
        width: fit-content;
        margin: 0 auto;
    }
    /** footer **/
    .m-footer{
        padding: 30px 0;
        background-color: #ffde5e;
    } 
    .m-footer__inner{
        display: grid;
        /*grid-template-columns: 65px 1fr 370px;*/
        width: 90%;
        margin: 0 auto;
        gap: 20px;
    }
    .m-footer__inner p{
        font-weight: bold;
        line-height: 1.3;

    }
    .m-footer__title{
        border-bottom: 1px solid #000;
        font-size: 20px;
    }
    .m-footer__title-inner{
        display: flex;
        height: 100%;
        align-items: center;

    }
    .m-footer__contact{
        font-size: 18px;
    }
    .m-footer__contact span {
        font-size: 13px;
        font-weight: bold;
    }
}
