@media screen and (min-width: 769px) {
    .is-sp {
        display: none;
    }

    body.top-page .place .inner .company li {
        min-width: 180px;
    }
}

@media screen and (max-width: 768px) {
    body.top-page #header .fv_img {
        aspect-ratio: 750/1000;
    }

    body.top-page .bg_img01 {
        position: absolute;
        top: 11.97%;
        right: -2.4%;
        width: 26.7%;
    }

    body.top-page .bg_img02 {
        top: 32.54%;
        left: -12.3%;
        width: 37.6%;
    }

    body.top-page .bg_img03 {
        top: 46.85%;
        right: -6.8%;
        width: 25.54%;
    }

    body.top-page .bg_img04 {
        width: 25.54%;
    }

    body.top-page #summer_festival .content {
        width: 92%;
        aspect-ratio: 750/2276;
    }

    body.top-page #summer_festival .summer_festival_title {
        width: 93.4%;
        aspect-ratio: 700/104.945;
        margin: 17.2% auto 0;
    }

    body.top-page #summer_festival .content .summer_festival01 {
        top: 3.5923%;
        left: 0px;
        width: 101.4%;
        aspect-ratio: 700.8021/736.9501;
    }

    body.top-page #summer_festival .content .summer_festival02 {
        top: 37.028%;
        left: 0px;
        width: 102%;
        aspect-ratio: 704.0708 /628.3969;
    }

    body.top-page #summer_festival .content .summer_festival03 {
        top: 69.45%;
        left: 0;
        width: 100%;
        aspect-ratio: 696.6507/565.5774;
    }

    body.top-page #summer_festival .content .summer_festival04 {
        width: 100%;
        aspect-ratio: 689.579/407.969;
        top: 75.6%;
        left: 0;
    }

    body.top-page #summer_festival p {
        height: 8.2vh;
        font-size: 3.6vw;
        width: 98%;
        height: 13.162%;
        padding: 0 2% 0 14%;
    }

    body.top-page #summer_festival p::before {
        position: absolute;
        content: "※";
        top: 50%;
        left: -1px;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        font-size: 5vw;
        padding: 3% 3.8%;
        color: #277BC0;
        border-radius: 50%;
        background-color: #FFB200;
    }

    body.top-page #chu-senkai .chu-senkai_title {
        width: 42.27%;
        margin: 17.2% auto 0;
    }

    body.top-page #chu-senkai .cho-chin_img {
        top: -62.7%;
        left: -59%;
        width: 218.28%;
        aspect-ratio: 1193.12/200;
    }

    body.top-page #chu-senkai .content {
        width: 92%;
        aspect-ratio: 750/2024;
    }

    body.top-page #chu-senkai .content .chusen-kai_img {
        display: none;
    }

    body.top-page #chu-senkai .content .chu-senkai01 {
        top: 3.476%;
        left: 0;
        width: 99.8%;
        aspect-ratio: 689.351/376.5;
        z-index: 10;
    }

    body.top-page #chu-senkai .content .chu-senkai02 {
        top: 25.6%;
        left: 0%;
        width: 97.9%;
        aspect-ratio: 676.5856/552.0536;
    }

    body.top-page #chu-senkai .content .chu-senkai03 {
        top: 55.814%;
        left: -0.12%;
        width: 97.1%;
        aspect-ratio: 689.464/574.768;
    }

    body.top-page #chu-senkai .content .chu-senkai04 {
        top: 87.514%;
        right: 0;
        left: auto;
        width: 74.514%;
        aspect-ratio: 488/202.8;
    }

    body.top-page .place .inner {
        width: 92%;
    }

    body.top-page .place .inner .place_wrap {
        display: block;
        width: 91.3%;
    }

    body.top-page .place .inner .place_title {
        width: 45.98%;
    }

    body.top-page .place .inner .place_wrap .place_text {
        width: 100%;
    }

    body.top-page .place .inner .place_wrap .place_text .place_logo {
        width: 100%;
        transform: translateX(0);
    }

    body.top-page .place .inner .place_wrap .place_text dl dt {
        width: 30%;
        font-size: 5.2vw;
        margin-top: 20px;
    }

    body.top-page .place .inner .place_wrap .place_text dl dd {
        width: 65%;
        font-size: 4.4vw;
        margin-top: 20px;
    }

    body.top-page .place .inner .place_wrap .place_img {
        width: 100%;
        margin-top: 40px;
    }

    body.top-page .place .inner .iframe_wrap {
        width: 91.3%;
    }

    body.top-page .place .inner .iframe_wrap iframe {
        height: 200%;
    }

    body.top-page .place .inner p {
        padding-top: 44.928%;
        font-size: 12px;
    }

    body.top-page .place .inner .pdf {
        width: 91.3%;
        margin: auto;
    }

    body.top-page .place .inner .layout p {
        font-size: 12px;
    }

    body.top-page .place .inner .company li {
        width: 48%;
        border-bottom: 1px solid #000;
        padding-bottom: 1%;
        font-size: 12px;
    }

    body.top-page .place .inner .pdf_wrap {
        display: block;
    }

    body.top-page .place .inner .pdf_wrap .pdf {
        width: 100%;
    }

    body.top-page .place .inner .pdf_wrap .pdf2 {
        width: 100%;
        margin-top: 4%;
    }

    body.top-page .schedule .inner,
    body.top-page .layout .inner {
        width: 92%;
    }

    body.top-page .schedule .inner {
        margin-top: 40px;
    }

    body.top-page .layout .inner {
        margin-top: 20px;
    }
}