@charset 'UTF-8';

@media screen and (max-width: 834px) {

    .visual-bg-area {
        width: 100%;
        font-size: calc(16px + 2 * (100vw - 360px)/474);
    }

    .visual-bg-area::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        background-image: url("/assets/images/52nd-main.webp");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }

    /*動画背景化用セット*/
    /*.visual-bg-area::before {
        background: none !important;
    }

    .bg-video {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        object-fit: cover;
        z-index: -1;
        pointer-events: none;

        filter: brightness(.6);
    }*/

    /*動画背景化用セットここまで*/

    .no-visual-bg-area,
    .no-visual-2025-bg-area,
    .no-visual-2026-bg-area {
        width: 100%;
        font-size: calc(16px + 2 * (100vw - 360px)/474);
    }

    .no-visual-bg-area::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        background-color: rgba(122, 122, 122, 1);
        background-image: url("/assets/images/logo-gray-s.png");
        background-size: 25%;
        background-repeat: repeat;
        background-position: top 52px left 0;
    }

    .no-visual-2025-bg-area::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        background: linear-gradient(180deg, rgba(59, 73, 144, 1), rgba(64, 111, 181, 1));
    }

    .no-visual-2026-bg-area::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        /*background:
            radial-gradient(circle at 20% 30%,
                rgba(103, 188, 160, 1),
                rgba(149, 202, 198, 1),
                rgba(28, 180, 197, 1)),
            linear-gradient(to top right, rgba(255, 255, 255, 0.6), transparent 40%),
            linear-gradient(to bottom left, rgba(255, 255, 255, 0.6), transparent 40%);
        background-blend-mode: screen;*/
        background: linear-gradient(to right,
                rgba(206, 215, 224, 1) 0%,
                rgba(206, 212, 223, 1) 20%,
                rgba(205, 209, 221, 1) 28%,
                rgba(204, 210, 222, 1) 36%,
                rgba(209, 216, 228, 1) 50%,
                rgba(209, 216, 228, 1) 100%);
    }

    .main-area {
        /*min-height: 100vh;*/

        /*ビジュアルなし・ビジュアルなし2025・オンラインチケットなし・バナー1つ*/
        min-height: 85vh;

        /*ビジュアルなし・ビジュアルなし2025・オンラインチケットなし・バナー2つ
        min-height: calc(100vh - 60px);*/

        /*オンラインチケットなし・バナー1つ
        min-height: calc(100vh - 60px);*/

        /*オンラインチケットなし・コピー+バナー1つ*/
        /*min-height: calc(100vh - 1vh);*/

        /*オンラインチケットなし・コピー+バナー2つ*/
        /*min-height: calc(100vh + 18vh);*/

        /*オンラインチケットなし・コピー+バナー4つ*/
        /*min-height: calc(100vh + 60vh);*/

        /*オンラインチケットあり・バナー2つ*/
        /*min-height: calc(100vh + 10vh);*/

        /*オンラインチケットあり・コピー+バナー1つ*/
        /*min-height: calc(100vh - 6vh);*/

        /*オンラインチケットあり・コピー+バナー2つ*/
        /*min-height: calc(100vh + 30vh);*/

        /*オンラインチケットあり・コピー+バナー3つ*/
        /*min-height: calc(100vh + 45vh);*/

        /*オンラインチケットあり・コピー+バナー4つ*/
        /*min-height: calc(100vh + 60vh);*/

        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-end;
    }

    @media screen and (min-width: 640px) {
        .main-area {
            /*ビジュアルなし・ビジュアルなし2025・オンラインチケットなし・バナー2つ*/
            min-height: calc(100vh + 10vh);

            /*オンラインチケットなし・バナー2つ*/
            /*min-height: calc(100vh + 5vh);*/

            /*オンラインチケットありなし・コピー+バナー2つ*/
            /*min-height: calc(100vh + 24vh);*/

            /*オンラインチケットありなし・コピー+バナー3つ*/
            /*min-height: calc(100vh + 44vh);*/

            /*オンラインチケットありなし・コピー+バナー4つ*/
            /*min-height: calc(100vh + 64vh);*/
        }
    }

    .main-area::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        /*ビジュアル動画2026*/
        /*background-image: url("/images/53rd-main01-movie-0822.webp");
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: top 30% left 3.5vw;*/
        /*ビジュアルなし2026*/
        background-image: url("/images/53rd-main01-0826_SP.webp");
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: top 0 left 0;
        /*ビジュアルあり2025*/
        /*background-image: url("/assets/images/52nd-main-copy.webp");*/
        /*ビジュアルなし2025*/
        /*background-image: url("/assets/images/52nd-main01-0823.webp");
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: top 25% left 5vw;*/
        /*ビジュアルあり・オンラインチケットあり*/
        /*background-size: 86%;
        background-position: top 60% center;*/
        /*ビジュアルあり2025*/
        /*background-size: 86%;
        background-position: top 66% center;*/
        /*ビジュアルなし2024*/
        /*background-size: 86%;
        background-position: top 25% center;*/
    }

    @media screen and (min-width: 640px) {
        .main-area::before {
            background-position: top 10% left 0;
        }
    }

    .bg-area-red {
        /*height: 100vh;*/

        width: 100%;
        /*お知らせあり*/
        /*padding: 5vw 5vw 10vw;*/
        padding: 5vw 5vw 2.5vw;
        background-color: rgba(178, 29, 35, 0.9);
    }

    .subtitle-area01,
    .subtitle-area02 {
        width: 100%;
        /*margin: 0 auto 1rem;*/
        margin: 0 auto 3vw;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .subtitle-area01 {
        background-color: rgba(60, 58, 57, 1);
        color: #ffffff;
    }

    .subtitle-area02 {
        background-color: rgba(256, 256, 256, 1);
        color: #3c3a39;
    }

    .subtitle01E,
    .subtitle02E {
        width: 100%;
        margin: 0;
        padding: 0.25em 0.5em 0.375em;
        /*padding: 0.375em 0.5em 0.5em;*/
        text-align: center;
        /*font-family: "M PLUS 1";*/
        font-size: calc(24px + 4 * (100vw - 360px)/474);
        font-weight: 600;
        line-height: 1.75rem;
    }

    .subtitle01J,
    .subtitle02J {
        width: 100%;
        margin: 0;
        padding: 0.25em 0.5em 0.375em;
        /*padding: 0.375em 0.5em 0.5em;*/
        text-align: center;
        /*font-family: "M PLUS 1";*/
        font-size: calc(20px + 4 * (100vw - 360px)/474);
        font-weight: 600;
        line-height: 2rem;
    }

    .topics-ex-area {
        width: 100%;
        margin: 2.5vw auto 7.5vw;
        padding: 0.75em 1.125em;
        /*background-color: rgba(256, 256, 256, 1);*/
        background-color: rgba(244, 244, 244, 1);
        border-radius: 8px;
        /*filter: drop-shadow(3px 6px 3px rgba(0, 0, 0, 0.2));*/
        filter: drop-shadow(1px 2px 1px rgba(0, 0, 0, 0.2));
    }

    .topics-ex-area02 {
        width: 100%;
        margin: 7.5vw auto 2.5vw;
        padding: 0.75em 1.125em;
        background-color: rgba(244, 244, 244, 1);
        border-radius: 8px;
        filter: drop-shadow(1px 2px 1px rgba(0, 0, 0, 0.2));
    }

    .topics-ex-title {
        padding-bottom: 0.375rem;
        border-bottom: 1px solid #464646;
        font-size: calc(17px + 2 * (100vw - 360px)/474);
        font-weight: 500;
    }

    .topics-ex-text {
        padding-top: 0.375rem;
        font-size: calc(15px + 2 * (100vw - 360px)/474);
        line-height: 1.75em;
    }

    .topics-area {
        margin: 0 0 7.5vw;
        padding: 0 0 2px;
        max-height: 50vh;
        overflow-y: scroll;
        color: #ffffff;
    }

    .topics-con,
    .topics-con-nolink {
        width: 90%;
        margin: 0 auto 1.5rem;
        padding: 0 0 0.5rem;
        border-bottom: 1px solid #ffffff;

        position: relative;
        /*transition: all 0.4s ease-out;*/

        display: flex;
        justify-content: space-around;
        align-items: center;
    }

    .topics-con:last-child,
    .topics-con-nolink:last-child {
        margin-bottom: 0
    }

    .topics-con .topics-card {
        width: calc(100% - 24px);
        padding-right: 12px;
    }

    .topics-con-nolink .topics-card {
        width: 100%;
    }

    .topics-text {}

    .topics-day {
        font-size: calc(14px + 2 * (100vw - 360px)/474);
    }

    .topics-link-btn {
        width: 24px;
    }

    .topics-link-btn .link-btn-icon01-wh {
        width: 24px;
    }



    .topics-area a {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .theme-area {
        width: 90%;
        max-width: 480px;
        margin: 0 auto 5vw;
        /*オンラインチケットあり*/
        /*margin: 0 auto 12vh;*/
    }

    .theme-area img {
        width: 100%;
        /*filter: drop-shadow(3px 6px 3px rgba(0, 0, 0, 0.2));*/
    }

    /*トピックス下
    .special-area {
        width: 100%;
        margin: 5vw auto 10vw;
    }*/

    .special-area {
        width: 90%;
        max-width: 480px;
        /*margin-bottom: 80px;*/
        margin: 0 auto 5vw;
    }

    .special-area img {
        width: 100%;
        filter: drop-shadow(3px 6px 3px rgba(0, 0, 0, 0.2));
    }


    .top-caution-area {
        width: 90%;
        margin: 0 auto 0;
        color: #ffffff;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }

    .top-caution-img {
        width: 80px;
        padding-right: 1rem;
    }

    .top-caution-text01 {
        width: calc(100% - 80px);
        /*font-size: 1.125rem;*/
        font-size: calc(18px + 2 * (100vw - 360px)/474);
        font-weight: 600;
    }

    .top-caution-text02 {
        width: 100%;
        margin: 0.5rem 0 0;
    }



    .bg-area-darkgray {
        width: 100%;
        margin: 0;
        padding: 0;
        /*background-color: #3c3a39;*/
        background-color: rgba(60, 58, 57, 0.9);
    }

    .slide-ban-area {
        width: 100%;
        padding: 0 0 5vw;
    }

    .slide-ban-con {
        /*width: 94%;*/
        width: 100%;
        margin: 0 auto 0;
        /*padding: 0 3%;*/
        /*padding: 0 5vw;*/

    }

    .slide-ban-area .slide-ban {}

    .slide-ban-area a {}

    .slide-ban-area img {}



    /* slick設定上書き */
    .slick-prev,
    .slick-next {
        top: calc(50% - 18px) !important;
        width: 36px !important;
        height: 36px !important;
    }

    .slick-prev:before,
    .slick-next:before {
        font-size: 36px !important;
    }

    .slick-prev {
        /*left: -2% !important;*/
        left: 1% !important;
    }

    [dir='rtl'] .slick-prev {
        right: 1% !important;
    }

    .slick-next {
        right: 1% !important;
    }

    [dir='rtl'] .slick-next {
        left: 1% !important;
    }

    button {
        margin: 0;
        padding: 0;
        background: none;
        border: none;
        border-radius: 0;
        outline: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }

    .slide-ban-dots {
        width: 100%;
        margin: 0 auto -10%;
        text-align: center;
    }

    .slide-ban-dots li {
        display: inline-block;
        margin: 0 0.75rem;
    }

    .slide-ban-dots li button {
        position: relative;
        text-indent: -9999px;
        cursor: pointer;
    }

    .slide-ban-dots li button:before {
        content: "●";
        font-size: 10px;
        text-indent: 0;
        position: absolute;
        /*color: #cccccc;*/
        color: #706f70;
        top: 0;
        left: 0;
    }

    .slide-ban-dots li.slick-active button:before {
        /*font-size: 14px;*/
        font-size: 10px;
        text-indent: 0;
        content: "●";
        color: #ffffff;
        top: 0;
        left: 0;
        /*top: -4px;
        left: -2px;*/
    }




    .bg-area-gray {
        width: 100%;
        padding: 5vw;
        /*background-color: rgba(122, 122, 122, 1);*/
        background-color: rgba(116, 116, 116, 0.95);
    }

    .bg-area-lightgray {
        width: 100%;
        padding: 5vw;
        background-color: rgba(244, 244, 244, 1);
    }

    .bg-area-white {
        width: 100%;
        padding: 5vw;
        background-color: rgba(256, 256, 256, 1);
    }

    .top-contents-con {
        width: 100%;
        margin: 0 auto;
    }

    .top-contents-inn {
        width: 90%;
        margin: 0 auto;
        padding-top: 2vw;
    }

    .pickup-area {
        width: 100%;
        margin: 0 auto;
    }

    .pickup-btn {
        width: 100%;
        margin: 0 auto 5vw;
        position: relative;
        /*background-color: rgba(256, 256, 256, 1);*/
    }

    .pickup-btn:nth-child(n+7) {
        display: none;
    }

    .pickup-btn a {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .pickup-btn.dummy {
        width: 100%;
        height: 0;
        margin: 0;
        padding: 0;
    }

    .pickup-btn-photo-con {
        width: 100%;
        margin: 0 auto 0;
    }

    .pickup-btn-photo img {
        object-fit: cover;
        aspect-ratio: 2 / 1;
        border-radius: 8px;
        filter: drop-shadow(1px 2px 1px rgba(0, 0, 0, 0.2));
    }

    .pickup-btn-title-con {
        width: 100%;
        margin: 0;
        /*padding: 0.875rem 1rem 0.5rem;*/
        padding: 0.875rem 0.5rem 0.5rem;
    }

    .pickup-btn-title {
        font-size: calc(17px + 2 * (100vw - 360px)/474);
        font-weight: 600;
        line-height: 1.625em;
        color: #ffffff;
        filter: drop-shadow(1px 2px 1px rgba(0, 0, 0, 0.2));
    }

    .pickup-btn-text-con {
        margin: 0;
        /*padding: 0 1rem 0.25rem;*/
        padding: 0 0.5rem 0.25rem;
    }

    .pickup-btn-text {
        font-size: calc(15px + 2 * (100vw - 360px)/474);
        line-height: 1.75em;
        color: #ffffff;
        filter: drop-shadow(1px 2px 1px rgba(0, 0, 0, 0.2));
    }

    .pickup-btn-icon {
        width: 18px;
        margin: 0 0.5rem 0 auto;
        padding-bottom: 0.5rem;
    }

    .pickup-caution-area {
        width: 90%;
        margin: 0 auto 0;
        padding-top: 5vw;
    }

    .pickup-caution {
        font-size: calc(14px + 2 * (100vw - 360px)/474);
        line-height: 1.75em;
        text-indent: -1em;
        padding-left: 1em;
    }




}



@media screen and (min-width: 835px),
print {

    .visual-bg-area {
        width: 100%;
        /*font-size: calc(16px + 2 * (100vw - 835px)/498);*/
        font-size: calc(16px + 2 * (100vw - 835px)/587);
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    @media screen and (min-width: 1334px) {
        .visual-bg-area {
            font-size: 18px;
        }
    }

    .visual-bg-area::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        background-color: #43596d;
        background-image: url("/assets/images/52nd-main.webp");
        background-size: calc(100% - (100% - 835px)/2);
        /*background-size: 100%;*/
        background-repeat: no-repeat;
        /*background-position: center left;*/
        background-position: top left;
    }

    /*動画背景化用セット*/
    /*.visual-bg-area::before {
        background: none !important;
    }

    .bg-video {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        object-fit: cover;
        z-index: -1;
        pointer-events: none;

        filter: brightness(.6);
    }*/
    /*動画背景化用セットここまで*/

    .no-visual-bg-area,
    .no-visual-2025-bg-area,
    .no-visual-2026-bg-area {
        width: 100%;
        font-size: calc(16px + 2 * (100vw - 835px)/587);
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

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

        .no-visual-bg-area,
        .no-visual-2025-bg-area,
        .no-visual-2026-bg-area {
            font-size: 18px;
        }
    }

    .no-visual-bg-area::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        background-color: rgba(122, 122, 122, 1);
        background-image: url("/assets/images/logo-gray.png");
        background-size: 25%;
        background-repeat: repeat;
        background-position: top 5vh left 0;
    }

    .no-visual-2025-bg-area::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        background: linear-gradient(180deg, rgba(59, 73, 144, 1), rgba(64, 111, 181, 1));
    }

    .no-visual-2026-bg-area::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        /*background:
            radial-gradient(circle at 20% 30%,
                rgba(103, 188, 160, 1),
                rgba(149, 202, 198, 1),
                rgba(28, 180, 197, 1)),
            linear-gradient(to top right, rgba(255, 255, 255, 0.6), transparent 40%),
            linear-gradient(to bottom left, rgba(255, 255, 255, 0.6), transparent 40%);
        background-blend-mode: screen;*/
        /*background-color: rgba(219, 226, 233, 1);*/
        background: linear-gradient(to right,
                rgba(206, 215, 224, 1) 0%,
                rgba(208, 215, 226, 1) 25%,
                rgba(209, 216, 228, 1) 50%,
                rgba(209, 216, 228, 1) 100%);
    }

    .main-area {
        width: 60%;
        min-height: calc(100vh - 80px);
        display: flex;
        justify-content: center;
        align-items: flex-end;
    }

    .main-area::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 60%;
        height: 100vh;
        /*ビジュアル動画2026*/
        /*background-image: url("/images/53rd-main01-movie-0822.webp");
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: top calc(80px + 3vw) left 2.5vw;*/
        /*ビジュアルなし2026*/
        background-image: url("/images/53rd-main01-0826.webp");
        background-repeat: no-repeat;
        background-size: 100%;
        /*background-position: top calc(80px + 3vw) left 2.5vw;*/
        background-position: center;
        /*ビジュアルあり2025*/
        /*background-image: url("/assets/images/52nd-main-copy.webp");*/
        /*ビジュアルなし2025*/
        /*background-image: url("/assets/images/52nd-main01-0823.webp");
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: top calc(80px + 3vw) left 2.5vw;*/
        /*ビジュアルあり2025*/
        /*background-size: 80%;
        background-position: top 83% center;*/
        /*ビジュアルあり2024*/
        /*background-size: 75%;
        background-position: top 75% center;*/
        /*ビジュアルなし2024*/
        /*background-size: 75%;
        background-position: top 55% center;*/
    }

    .bg-area-red {
        width: 40%;
        padding: 3vw 2vw;
        background-color: rgba(178, 29, 35, 0.9);
    }

    .subtitle-area01,
    .subtitle-area02 {
        width: 100%;
        margin: 0 auto 2rem;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .subtitle-area01 {
        background-color: rgba(60, 58, 57, 1);
        color: #ffffff;
    }

    .subtitle-area02 {
        background-color: rgba(256, 256, 256, 1);
        color: #3c3a39;
    }

    .subtitle01E,
    .subtitle02E {
        width: 100%;
        margin: 0;
        padding: 0.375em 0.5em 0.5em;
        text-align: center;
        font-size: calc(28px + 4 * (100vw - 835px)/587);
        font-weight: 600;
        line-height: 1.75rem;
    }

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

        .subtitle01E,
        .subtitle02E {
            font-size: 32px;
        }
    }

    .subtitle01J,
    .subtitle02J {
        width: 100%;
        margin: 0;
        padding: 0.375em 0.5em 0.5em;
        text-align: center;
        font-size: calc(24px + 4 * (100vw - 835px)/587);
        font-weight: 600;
        line-height: 2rem;
    }

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

        .subtitle01J,
        .subtitle02J {
            font-size: 28px;
        }
    }

    .topics-ex-area {
        width: 100%;
        margin: 0 auto 3vw;
        padding: 1em 1.5em;
        background-color: rgba(244, 244, 244, 1);
        border-radius: 8px;
        filter: drop-shadow(1px 2px 1px rgba(0, 0, 0, 0.2));
    }

    .topics-ex-area02 {
        width: 100%;
        margin: 3vw auto 0;
        padding: 1em 1.5em;
        background-color: rgba(244, 244, 244, 1);
        border-radius: 8px;
        filter: drop-shadow(1px 2px 1px rgba(0, 0, 0, 0.2));
    }

    .topics-ex-title {
        padding-bottom: 0.5rem;
        border-bottom: 1px solid #464646;
        font-size: calc(17px + 2 * (100vw - 835px)/587);
        font-weight: 500;
    }

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

        .topics-ex-title {
            font-size: 19px;
        }
    }

    .topics-ex-text {
        padding-top: 0.5rem;
        font-size: calc(15px + 2 * (100vw - 835px)/587);
    }

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

        .topics-ex-text {
            font-size: 17px;
        }
    }

    .topics-area {
        max-height: 50vh;
        padding: 0 0 2px;
        overflow-y: scroll;
        -ms-overflow-style: none;
        scrollbar-width: none;
        color: #ffffff;
    }

    .topics-area::-webkit-scrollbar {
        display: none;
    }

    .topics-con,
    .topics-con-nolink {
        width: 90%;
        margin: 0 auto 1.5rem;
        padding: 0 0 0.5rem;
        border-bottom: 1px solid #ffffff;
        position: relative;
        display: flex;
        justify-content: space-around;
        align-items: center;
    }

    .topics-con:last-child,
    .topics-con-nolink:last-child {
        margin-bottom: 0
    }

    .topics-con:hover {
        cursor: pointer;
        /*opacity: 0.75;*/
        /*text-decoration: underline;*/
        /*color: #000;*/
    }

    .topics-con .topics-card {
        width: calc(100% - 30px);
        padding-right: 15px;
    }

    .topics-con-nolink .topics-card {
        width: 100%;
    }

    .topics-text {}

    .topics-day {
        font-size: calc(14px + 2 * (100vw - 835px)/587);
    }

    @media screen and (min-width: 1334px) {
        .topics-day {
            font-size: 16px;
        }
    }

    .topics-link-btn {
        width: 30px;
    }

    .topics-link-btn .link-btn-icon01-wh {
        width: 30px;
    }

    .topics-area a {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .theme-area {
        width: 90%;
        margin: 32px auto 40px;
    }

    .theme-area img {
        width: 100%;
        /*filter: drop-shadow(3px 6px 3px rgba(0, 0, 0, 0.2));*/
    }

    .special-area {
        width: 90%;
        margin: 32px auto 40px;
    }

    .special-area img {
        width: 100%;
        filter: drop-shadow(3px 6px 3px rgba(0, 0, 0, 0.2));
    }

    .top-caution-area {
        width: 90%;
        margin: 0 auto 0;
        color: #ffffff;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }

    .top-caution-img {
        width: 80px;
        padding-right: 1rem;
    }

    .top-caution-text01 {
        width: calc(100% - 80px);
        font-size: calc(18px + 2 * (100vw - 835px)/587);
        font-weight: 600;
    }

    @media screen and (min-width: 1334px) {
        .top-caution-text01 {
            font-size: 20px;
        }
    }

    .top-caution-text02 {
        width: 100%;
        margin: 1rem 0 0;
    }

    .bg-area-darkgray {
        width: 100%;
        margin: 0;
        padding: 0;
        background-color: rgba(60, 58, 57, 0.9);
    }

    .slide-ban-area {
        width: 90%;
        max-width: 1048px;
        margin: 0 auto 0;
        padding: 3vw 0 3vw;
    }

    .slide-ban-con {
        width: 100%;
        margin: 0 auto 0;
        padding: 0 5vw;
    }

    /* slick設定上書き */
    .slick-prev,
    .slick-next {
        top: calc(50% - 24px) !important;
        width: 48px !important;
        height: 48px !important;
    }

    .slick-prev:before,
    .slick-next:before {
        font-size: 48px !important;
    }

    .slick-prev {
        left: 1% !important;
    }

    [dir='rtl'] .slick-prev {
        right: 1% !important;
    }

    .slick-next {
        right: 1% !important;
    }

    [dir='rtl'] .slick-next {
        left: 1% !important;
    }

    button {
        margin: 0;
        padding: 0;
        background: none;
        border: none;
        border-radius: 0;
        outline: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }

    .slide-ban-dots {
        width: 100%;
        margin: 0 auto -3vw;
        text-align: center;
    }

    .slide-ban-dots li {
        display: inline-block;
        margin: 0 0.75rem;
    }

    .slide-ban-dots li button {
        position: relative;
        text-indent: -9999px;
        cursor: pointer;
    }

    .slide-ban-dots li button:before {
        content: "●";
        font-size: 14px;
        text-indent: 0;
        position: absolute;
        color: #706f70;
        top: 0;
        left: 0;
    }

    .slide-ban-dots li.slick-active button:before {
        font-size: 14px;
        text-indent: 0;
        content: "●";
        color: #ffffff;
        top: 0;
        left: 0;
    }

    .bg-area-gray {
        width: 100%;
        padding: 3vw 0;
        background-color: rgba(116, 116, 116, 0.95);
    }

    .bg-area-lightgray {
        width: 100%;
        padding: 3vw 0;
        background-color: rgba(244, 244, 244, 1);
    }

    .bg-area-white {
        width: 100%;
        padding: 3vw 0;
        background-color: rgba(256, 256, 256, 1);
    }

    .top-contents-con {
        width: 90%;
        max-width: 1440px;
        margin: 0 auto;
        font-size: calc(16px + 2 * (100vw - 835px)/587);
        line-height: 2em;
    }

    @media screen and (min-width: 1423px) {
        .top-contents-con {
            font-size: 18px;
        }
    }

    #piukup .subtitle-area02 {
        width: 100%;
        max-width: 1200px;
    }

    .top-contents-inn {
        width: 100%;
        max-width: 1200px;
        margin: 0 auto 2rem;
    }

    .pickup-area {
        width: 100%;
        margin: 0 auto -30px;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .pickup-btn {
        width: 45%;
        max-width: 360px;
        margin: 0 15px 30px;
        position: relative;
        transition: all 0.4s ease-out;
    }

    .pickup-btn:nth-child(n+7) {
        display: none;
    }

    .pickup-btn a {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .pickup-btn:hover {
        cursor: pointer;
    }

    /*.pickup-btn:hover .pickup-btn-title,
    .pickup-btn:hover .pickup-btn-text {
        color: #464646;
    }*/

    .pickup-btn.dummy {
        width: 45%;
        max-width: 360px;
        height: 0;
        margin: 0 15px 0;
        padding: 0;
    }

    .pickup-btn-photo-con {
        width: 100%;
        margin: 0 auto 0;
    }

    .pickup-btn-photo img {
        object-fit: cover;
        aspect-ratio: 2 / 1;
        border-radius: 8px;
        filter: drop-shadow(1px 2px 1px rgba(0, 0, 0, 0.2));
    }

    .pickup-btn-title-con {
        width: 100%;
        margin: 0;
        padding: 1.125rem 1.25rem 0.75rem;
    }

    .pickup-btn-title {
        font-size: calc(18px + 2 * (100vw - 835px)/587);
        font-weight: 500;
        line-height: 1.5em;
        color: #ffffff;
        /*filter: drop-shadow(1px 2px 1px rgba(0, 0, 0, 0.2));*/
    }

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

        .pickup-btn-title {
            font-size: 20px;
        }
    }

    .pickup-btn-text-con {
        margin: 0;
        padding: 0 1.25rem 0.5rem;
    }

    .pickup-btn-text {
        line-height: 1.75em;
        color: #ffffff;
        /*filter: drop-shadow(1px 2px 1px rgba(0, 0, 0, 0.2));*/
    }

    .pickup-btn-icon {
        width: 18px;
        margin: 0 0.625rem 0 auto;
        padding-bottom: 0.5rem;
    }

    .pickup-caution-area {
        width: 100%;
        margin: 30px 34px -1rem;
    }

    .pickup-caution {
        font-size: calc(14px + 2 * (100vw - 835px)/587);
        text-indent: -1em;
        padding-left: 1em;
    }

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

        .pickup-caution {
            font-size: 16px;
        }
    }


}