/* front-page 
-------------------------------------- */

.calendar-wrap {
    padding: 16px 0;
}

.twitter-timeline {
    height: 100%;
}

blockquote {
    width: 100%;
}

.twitter-tweet {
    width: 100% !important;
}

.twitter-tweet iframe {
    width: 100% !important;
}

.scroll {
    overflow-y: scroll;
}




.hd-feed-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: 300px 300px 300px 300px 300px 300px 357px;
    /* 1行目と2行目は300px、3行目は自動調整 */
    gap: 10px;
    margin-bottom: 20px;
    /* height: 971px; */
}

@media only screen and (max-width: 1080px) {
    .hd-feed-list {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        height: auto;
        gap: 2vw;
    }
}

.hd-feed-listitem {
    position: relative;
}

.hd-feed-listitem.li1 {
    grid-row: span 7;
    aspect-ratio: 300 / 998;
    /* aspect-ratio: 350 / 1996; */
    width: 100%;
    height: 100%;
    overflow-y: scroll;
}

.hd-feed-listitem.li2 {
    grid-column: span 2;
    grid-row: span 6;
    overflow-y: scroll;
}

.hd-feed-listitem.li3 {
    grid-column-start: 4;
    height: auto;
    aspect-ratio: 1/1;
}

.hd-feed-listitem.li4 {
    grid-column-start: 4;
    grid-row-start: 2;
    height: auto;
    aspect-ratio: 1/1;
}

.hd-feed-listitem.li5 {
    grid-column-start: 4;
    grid-row-start: 3;
    height: auto;
    aspect-ratio: 1/1;
}

.hd-feed-listitem.li6 {
    grid-column-start: 4;
    grid-row-start: 4;
    height: auto;
    aspect-ratio: 1/1;
}

.hd-feed-listitem.li7 {
    grid-column-start: 4;
    grid-row-start: 5;
    height: auto;
    aspect-ratio: 1/1;
}

.hd-feed-listitem.li8 {
    grid-column-start: 4;
    grid-row-start: 6;
    height: auto;
    aspect-ratio: 1/1;
}


.hd-feed-listitem.li9 {
    grid-column: 2 / span 3;
    grid-row-start: 7;
    height: auto;
}


@media only screen and (max-width: 1080px) {
    .hd-feed-listitem.li1 {
        width: 100%;
        order: 2;

    }

    .hd-feed-listitem.li2 {
        width: 100%;
        order: 1;
    }

    .hd-feed-listitem.li3 {
        width: 48.5%;
        order: 3;
    }

    .hd-feed-listitem.li4 {
        width: 48.5%;
        order: 4;
    }


    .hd-feed-listitem.li5 {
        width: 48.5%;
        order: 5;
    }

    .hd-feed-listitem.li6 {
        width: 48.5%;
        order: 6;
    }

    .hd-feed-listitem.li7 {
        width: 48.5%;
        order: 7;
    }

    .hd-feed-listitem.li8 {
        width: 48.5%;
        order: 8;
    }

    .hd-feed-listitem.li9 {
        width: 100%;
        order: 9;
    }

}

.hd-feed-listitem img {
    max-width: 100%;
    height: auto;
}

.hd-feed-listitem.-border {
    border: solid #000 1px;
    border-radius: 25px;
}

.hd-feed-listitem.feed-p {
    padding: 1em;
}

.hd-feed-listitem-ttl {
    font-size: min(4vw, 23px);
    color: #08C900;
    text-align: center;
    border-bottom: solid 1px #000;
}


.hd-feed-listitem-ttl.-main {
    font-size: min(10vw, 49px);
}


/* 
-------------------------------------- */

.ft-feed-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(4, 1fr);
    gap: 10px;
}

@media only screen and (max-width: 1080px) {
    .ft-feed-list {
        display: flex;
        flex-wrap: wrap;
    }
}

.ft-feed-listitem {
    position: relative;
}

.ft-feed-listitem.li1 {
    grid-column: span 2;
    grid-row: span 4;
    aspect-ratio: 1 / 2;
    width: 100%;
    height: 100%;
}

.ft-feed-listitem.li2 {
    grid-column: span 2;
    height: auto;
}

.ft-feed-listitem.li3 {
    grid-column-start: 3;
    grid-row-start: 2;
    height: auto;
    aspect-ratio: 1/1;
}

.ft-feed-listitem.li4 {
    grid-column-start: 4;
    grid-row-start: 2;
    height: auto;
    aspect-ratio: 1/1;
}

.ft-feed-listitem.li5 {
    grid-column-start: 3;
    grid-row-start: 3;
    height: auto;
    aspect-ratio: 1/1;
}

.ft-feed-listitem.li6 {
    grid-column-start: 4;
    grid-row-start: 3;
    height: auto;
    aspect-ratio: 1/1;
}

.ft-feed-listitem.li7 {
    grid-column-start: 3;
    grid-row-start: 4;
    height: auto;
    aspect-ratio: 1/1;
}

.ft-feed-listitem.li8 {
    grid-column-start: 4;
    grid-row-start: 4;
    height: auto;
    aspect-ratio: 1/1;
}

@media only screen and (max-width: 1080px) {
    .ft-feed-listitem.li1 {
        width: 100%;
    }

    .ft-feed-listitem.li2 {
        width: 100%;
    }

    .ft-feed-listitem.li3 {
        width: 48.5%;
    }

    .ft-feed-listitem.li4 {
        width: 48.5%;
    }
    .ft-feed-listitem.li5 {
        width: 48.5%;
    }
    .ft-feed-listitem.li6 {
        width: 48.5%;
    }

    .ft-feed-listitem.li7 {
        width: 48.5%;
    }
    .ft-feed-listitem.li8 {
        width: 48.5%;
    }
}


.ft-feed-listitem img {
    max-width: 100%;
    height: auto;
}

.ft-feed-listitem.-border {
    border: solid #000 1px;
    border-radius: 25px;
}

.ft-feed-listitem.feed-p {
    padding: 1em;
}

.ft-feed-listitem-ttl {
    font-size: min(4vw, 23px);
    color: #08C900;
    text-align: center;
    border-bottom: solid 1px #000;
}


.ft-feed-listitem-ttl.-main {
    font-size: 49px;
}




/* 
-------------------------------------- */

.grid-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.grid-list li {
    text-align: center;
}

.grid-list img {
    width: 100%;
    height: auto;
    display: block;
}



/* 
-------------------------------------- */



/* 
-------------------------------------- */

.kamiina-ondo.bg {
    background: #08C900;
}

.kamiina-ondo-box {
    background: #fff;
    border-radius: 25px;
    border: solid 1px #707070;
    padding: 65px;
    padding-top: 20px;
}

@media only screen and (max-width: 1080px) {
    .kamiina-ondo-box {
        padding: 1em;
    }
}

.kamiina-ondo-ttl {
    text-align: center;
    color: #08C900;
    font-size: 28px;
}

.kamiina-ondo-ttl span {
    border-bottom: solid 1px #000000;
    display: inline-block;
    padding: 0 .7em;
}

.lyrics-container {
    display: flex;
    gap: 5vw;
}

.lyrics {
    flex: 1;
    max-width: 208px;
    padding: 15px;
}

@media only screen and (max-width: 1080px) {
    .lyrics-container {
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 0;
    }

    .lyrics {
        flex: initial;
        width: 48%;
        padding: 15px;
        max-width: 100%;

    }
}

/* 
-------------------------------------- */

.top-city-tweets.bg {
    background: #08C900;
}

.top-city-tweets.sec-p {
    padding: 0;
    padding-top: 24px;
}

.city-tweets-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;

}

.city-tweets-listitem {
    width: calc((100% - 72px)/ 4);
    height: 100%;
    aspect-ratio: 1/1;
    margin-bottom: 24px;
    margin-right: 24px;
    border: solid 1px #000;
    border-radius: 25px;
    background: #fff;
    overflow-y: scroll;
}

.city-tweets-listitem:nth-child(4n) {
    margin-right: 0;
}

@media only screen and (max-width: 1080px) {
    .city-tweets-listitem {
        width: calc((100% - 1em)/ 2);
        width: 100%;
        margin-right: 0;
        margin-bottom: 1em;
    }

    .city-tweets-listitem:nth-child(2n) {
        margin-right: 0;
    }
}

.city-tweets-list-ttl {
    font-size: min(3vw, 23px);
    color: #08C900;
    text-align: center;
    border-bottom: solid 1px #000;
    margin: 0 1em;
}

.city-tweets-box {
    margin: 50px 0;
}

.city-tweets-box dl {
    display: flex;
    margin-bottom: 5px;
}

.city-tweets-box dt {
    width: 15%;
}

.city-tweets-box dd {
    width: 80%;
    position: relative;
    padding-left: 2em;
}

@media only screen and (max-width: 768px) {
    .city-tweets-box dt {
        width: 30%;
    }

    .city-tweets-box dd {
        width: 70%;
    }
}

.city-tweets-box dd::before {
    position: absolute;
    content: "";
    background: #000;
    width: 1px;
    height: 20px;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.city-tweets-text {
    line-height: 2.5;
}

/* 
-------------------------------------- */
.pickup-list {
    display: flex;
    gap: 1vw;
    flex-wrap: wrap;
}

.pickup-listitem {
    display: flex;
    justify-content: space-between;
    width: 49%;
    border-radius: 25px;
    aspect-ratio: 2 / 1;
    height: 100%;
    position: relative;
}

@media only screen and (max-width: 1080px) {
    .pickup-listitem {
        width: 100%;
        flex-direction: column;
        aspect-ratio: unset;
    }
}

.pickup-listitem.-border {
    border: solid 1px #000;
}

.pickup-listitem-img {
    width: 50%;
}

.pickup-listitem-content {
    width: 50%;
    height: 100%;
    padding: 1em;
    overflow-y: scroll;
}

@media only screen and (max-width: 1080px) {
    .pickup-listitem-img {
        width: 100%;
    }

    .pickup-listitem-content {
        width: 100%;
    }

}

.pickup-listitem-ttl {
    font-size: min(3vw, 18px);
    color: #08C900;
    text-align: center;
    border-bottom: solid 1px #000;
}

/* カレンダー詳細ページリンクなし
-------------------------------------- */



/* 
-------------------------------------- */