@charset "utf-8";

.main{
    margin-top: 150px;
}

.main .pc{
    display: none;
}

.main .mainvisual{
    width: 100%;
}

.main .mainvisual img{
    width: 100%;
}

.introduction .text p{
    font-size: 3.8vw;
    margin-top: 25px;
    text-align: center;
}

.introduction .text .name{
    font-size: 3.0vw;
    margin-top: 14px;
    text-align: end;
}

.movie video{
    width: 100%;
    max-width: 687px;
    margin-top: 40px;
}

.info{
    margin-top: 40px;
}

.info .section-title{
    font-size: 6.4vw;
    font-weight:normal;
    text-align: center;
}

.info .list{
    width: 100%;
    background-color: #D9D9D9;
    margin-top: 10px;
}

.info .list ul{
    display: flex;
    flex-direction: column;
    align-items:start;
    /* justify-content: space-between; */
    padding: 13px 22px 0 10px;
}

.info .list ul li{
    font-size: 3.6vw;
    display: flex;
    gap: 15px;
    margin-bottom: 10px;
}

.info .list ul li:last-child{
    margin-bottom: 8px;
}

.info .list ul li time{
    white-space: nowrap;
    width: 30vw;
}

.info .list ul li .contents{
    width: 40vw;
}

.info .list ul li p a{
    text-decoration: none;
    color: black;
}

.info .list .hide{
    opacity: 0;
}

.address{
    margin-top: 40px;
}

.address .section-title{
    font-size: 6.4vw;
    font-weight: normal;
    text-align: center;
}

.address address{
    font-size: 4.1vw;
    text-align: center;
    margin-top: 11px;
}

.address .map{
    width: 100%;
    max-width: 687px;
    margin-top: 10px;
}

.address .map iframe{
    width: 100%;
    height: 522px;
}

.flex .left .sub-title{
    display: none;
}

@media screen and (min-width:768px){

    .main{margin-bottom: 100px;
        margin-top:195px;
        background-color: #CCA359;
    }

    .main .sp{
        display: none;
    }

    .main .pc{
        display: block;
    }

    .main .mainvisual{
        width: 80%;
        margin: 0 auto;
    }

    .main .mainvisual img{
        width: 80%;
        max-width: 1092px;
        margin: 0 10%;
    }

    .main .mainvisual .catchphrase{
        font-size: 2.5vw;
        writing-mode: horizontal-tb;
        letter-spacing: 1.4vw;
        top: 88.021%;
        left: 28%;
    }

    .flex{
        display: flex;
        gap: 21px;
        padding: 0 70px;
    }

    .flex .left{
        background-image: url(/img/mainvisual2.jpg);
        background-size: cover;
    }

    .flex .left .sub-title{
        display: block;
        font-family: "Zen Antique", sans-serif;
        color: white;
        font-size: 40px;
        text-align: center;
        margin: 27px 0 25px;
    }

    .flex .left .introduction{
        background-color: rgba(255, 255, 255, 0.7);
        margin: 0 35px 76px;
        padding: 30px 10px 40px;
    }

    .flex .introduction .text p{
        font-size: 1.8vw;
        font-family: "Zen Antique", sans-serif;
        line-height: 3.0vw;
        margin-bottom: 50px;
    }

    .flex.introduction .text .name{
        font-size: 2.2vw;
        font-family: "Zen Antique", sans-serif;
        margin-top: 50px;
        margin-bottom: 0px;
    }


    .flex .right{
        display: flex;
        flex-direction: column-reverse;
    }

    .flex .right .info{
        margin: 0px;
        padding: 0px;
        background-color: #CCA359;
        padding: 25px 22px 50px 20px;
        height: 50%;
        margin-bottom: 50px;
    }

    .flex .right .info .section-title{
        font-size: 40px;
        font-family: "Zen Antique", sans-serif;
        margin-bottom:25px;
    }

    .info .list ul li time{
        width: auto;
    }

    .info .list ul li .contents{
        width: auto;
    }


    .flex .right.info .list{
        width: 100%;
        margin-top: 27px;
    }

    .flex .right .info .list ul{
        font-family: "Zen Antique", sans-serif;
        padding:11px 5.43px 0px 7.01px;
        background-color: white;
    }

    .info .list ul li{
        font-size: 1.5vw;
        width: 100%;
        justify-content: start;
        margin-bottom: 25.22px;
    }

    .info .list ul li time{
        margin-right: 5%;
    }

    .info .list ul li .jan,
    .info .list ul li .mar{
        padding-right: 1.5vw;
    }

    .info .list ul li .feb{
        padding-right: 1.0vw;
    }

    .flex .right .movie{
        height: 50%;
        padding: 0px;
        margin: 0px;
    }

    .movie video{
        max-width: 1980px;
        padding: 0px;
        margin: 0px;
    }

    .address {
        margin-top: 100px;
    }

    .address .section-title{
        font-size: 40px;
    }

    .address address{
        font-size: 36px;
        margin-top: 35px;
    }

    .address .map{
     width: 100%;
     max-width: 1980px;
        margin-top: 20px auto;
    }
    
    .address .map iframe{
        height: 794px;
        width: 100%;
        margin: 0 auto;
    }
}