@charset "UTF-8";
/* CSS Document */

/* PC
---------------------------------------------------------------------- */
@media (min-width: 1001px) {

    .pc_none {
        display: none;
    }

    /* .summer_menu #pageheader {
        width: 100%;
        height: 550px;
    display: flex;
        align-items: center;
        position: relative;
        z-index: 0;
    }
    .summer_menu #pageheader h1 {
        width: 880px;
        margin-right: auto;
        margin-left: auto;
        color: #fff;
        font-size: calc(42em / 16);
        font-weight: 900;
        letter-spacing: 0.05em;
    }
    .summer_menu #pageheader h1 span {
        display: block;
        font-size: calc(16em / 42);
        font-weight: 700;
        letter-spacing: 0.25em;
        margin-top: 20px;
    }
    .summer_menu #pageheader img {
        width: 100%;
        height: 550px;
        object-fit: cover;
        object-position: 50% 0;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
    } */

    #mainheader .pc_nav ul li a,
    #mainheader .pc_nav ul li a *,
    #mainheader .open {
        color: #595757;
    }

    #mainheader .open span {
        background-color: #595757;
    }

    #pankuzu {
        padding-left: 0;
    }

    .summer_menu #pageheader {
        width: 100%;
        height: 550px;
        display: flex;
        align-items: center;
        position: relative;
        z-index: 0;
        margin-bottom: 73px;
    }

    .summer_menu #pageheader img {
        width: 100%;
        height: 550px;
        /* object-fit: cover; */
        object-fit: contain;
        object-position: center;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
    }

    .summer_menu .contents {
        max-width: 1240px;
        margin-right: auto;
        margin-left: auto;
        padding: 0 30px;
    }

    .summer_menu .contents.mt140 {
        margin-top: 140px;
    }

    .summer_menu #contents {
        max-width: 1240px;
        margin: 0 auto 140px;
        padding: 0 30px;
    }

    .summer_menu .main_title {
        text-align: center;
        margin-top: 30px;
        margin-bottom: 20px;
    }

    .summer_menu .main_title img {
        max-width: 560px;
    }

    .summer_menu h3.period {
        font-size: calc(24em / 16);
        font-weight: 700;
        letter-spacing: 0.05em;
        line-height: 2.0;
        text-align: center;
        background: linear-gradient(transparent 60%, #f60 60%);
        width: fit-content;
        margin: 0 auto 20px;
    }

    .summer_menu .lead {
        font-size: calc(18em / 16);
        font-weight: 700;
        letter-spacing: 0.05em;
        line-height: 2.0;
        text-align: center;
    }

    .summer_menu .note{
        font-size: 0.8em;
    }

    .summer_menu .menu_festa {
        position: relative;
        margin-top: 55px;
    }

    .summer_menu .menu_festa::before {
        content: '';
        display: block;
        width: 100%;
        height: 50px;
        border-top: 2px solid #FFF;
        border-right: 2px solid #FFF;
        border-left: 2px solid #FFF;
        border-radius: 50px 50px 0 0;
    }

    .summer_menu .menu_festa::after {
        content: '';
        display: block;
        width: 100%;
        height: 50px;
        border-bottom: 2px solid #FFF;
        border-right: 2px solid #FFF;
        border-left: 2px solid #FFF;
        border-radius: 0 0 50px 50px;
    }

    .summer_menu .list1 {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        padding-top: 40px;
    }

    .summer_menu .list1 li {
        width: calc(393 / 1180 * 100%);
        padding: 0 10px;
        background-position: right 10px bottom;
        background-repeat: no-repeat;
        -webkit-background-size: 70px auto;
        background-size: 70px auto;
        /* background-image: url("../images/menu_bg.png"); */
        margin-bottom: 45px;
    }

    /* @media screen and (-webkit-min-device-pixel-ratio:2), (min-resolution: 2dppx) {
        .summer_menu .list1 li {
            background-image: url("../images/menu_bg@2x.png");
        }
    } */
    .summer_menu .list1 li a {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        color: #FFF;
    }

    .summer_menu .list1 li img {
        width: calc(180 / 380 * 100%);
    }

    .summer_menu .list1 li dl {
        width: calc(175 / 380 * 100%);
        padding-right: 10px;
    }

    .summer_menu .list1 li dl dt {
        font-weight: 500;
        font-style: italic;
        color: #3b4b72;
        font-size: calc(42em / 16);
        margin-bottom: 10px;
    }

    /* .summer_menu .list1 li dl dt::before {
         content:  'Event.';
        font-weight: 700;
        font-size: calc(21em / 42);
    } */
    .summer_menu .list1 li dl dd {
        font-weight: 700;
    }

    .summer_menu .list2 {
        max-width: 980px;
        margin: 30px auto 60px;
        border-top: 2px solid #FFF;
        padding-top: 45px;
    }

    .summer_menu .list2 h3 {
        font-size: calc(22em / 16);
        letter-spacing: 0.1em;
        font-weight: 700;
        text-align: center;
        margin-bottom: 40px;
    }

    .summer_menu .list2 ul {
        max-width: 780px;
        margin: 0 auto 0;
        display: flex;
        flex-wrap: wrap;
    }

    .summer_menu .list2 ul li {
        width: 50%;
    }

    .summer_menu .list2 ul li * {
        text-align: center;
    }

    .summer_menu .list2 ul li img {
        display: block;
        width: 290px;
        margin: 0 auto 10px;
    }

    .summer_menu .list2 ul li dt {
        font-size: calc(18em / 16);
        font-weight: 700;
    }

    .summer_menu .list2 ul li dd {
        font-size: calc(17em / 16);
        font-weight: 700;
    }

    .summer_menu .list2 ul li dd::before {
        content: '期間';
        font-size: calc(16em / 17);
        padding-right: 1.0em;
    }

    .summer_menu .innertitle {
        font-size: calc(22em / 16);
        letter-spacing: 0.25em;
        text-align: center;
        font-weight: 700;
        margin-bottom: 30px;
    }

    .summer_menu .innertitle strong {
        display: inline-block;
        font-size: calc(48em / 22);
        font-weight: 700;
        letter-spacing: 0.1em;
        background: linear-gradient(transparent 60%, #ffff00 60%);
        padding: 0 8px 3px 8px;
        margin-bottom: 15px;
    }

    .summer_menu .event_detail {
        padding-top: 90px;
        padding-bottom: 20px;
        position: relative;
    }

    /* .summer_menu .event_detail#family::before {
        content: '';
        width: 100%;
        height: 101px;
        background: url("../images/arrow01.png") no-repeat center 0;
        -webkit-background-size: auto 100%;
        background-size: auto 100%;
        position: absolute;
        top: -50px;
        left: 0;
    }

    @media screen and (-webkit-min-device-pixel-ratio:2),
    (min-resolution: 2dppx) {
        .summer_menu .event_detail::before {
            background: url("../images/arrow01@2x.png") no-repeat center 0;
        }
    } */

    .summer_menu .event_detail#menu01::before {
        content: '';
        width: 100%;
        height: 101px;
        background: url("../images/arrow01_w.png") no-repeat center 0;
        -webkit-background-size: auto 100%;
        background-size: auto 100%;
        position: absolute;
        top: -50px;
        left: 0;
    }

    @media screen and (-webkit-min-device-pixel-ratio:2),
    (min-resolution: 2dppx) {
        .summer_menu .event_detail::before {
            background: url("../images/arrow01_w@2x.png") no-repeat center 0;
        }
    }

    .summer_menu .event_detail .t_img {
        max-width: 980px;
        margin: auto;
    }

    .summer_menu .event_detail .title {
        position: relative;
        top: -40px;
        text-align: center;
    }

    /* .summer_menu .event_detail .title span {
        display: block;
        font-weight: 500;
        font-style: italic;
        color: #3b4b72;
        font-size: calc(85em / 16);
        margin-bottom: 40px;
    }
    .summer_menu .event_detail .title span::before {
         content:  'Event.';
        font-weight: 700;
        font-size: calc(48em / 85);
    } */
    .summer_menu .event_detail .title h3 {
        font-size: calc(33em / 16);
        font-weight: 900;
    }

    .summer_menu .event_detail .title_img {
        display: block;
        width: 205px;
        height: 80px;
        margin: 0 auto 10px;
    }

    .summer_menu .event_detail .lead {
        font-size: calc(18em / 16);
        font-weight: 700;
        line-height: 2.1;
        letter-spacing: 0.05em;
        text-align: center;
        padding-bottom: 35px;
    }

    .summer_menu .event_detail .details {
        width: 580px;
        margin: auto;
        border-top: 2px solid #FFF;
        padding-top: 40px;
        display: flex;
        flex-wrap: wrap;
    }

    .summer_menu .event_detail .details dt {
        width: 160px;
        font-weight: 700;
        line-height: 2.0;
        padding-top: 0.2em;
        padding-left: 100px;
    }

    .summer_menu .event_detail .details dd {
        width: calc(100% - 160px);
        font-size: calc(18em / 16);
        line-height: 2.0;
        font-weight: 700;
    }

    .summer_menu .kikan_det {
        display: block;
        font-size: calc(16em / 18);
        line-height: 1.8;
        margin-top: 5px;
    }

    /* .summer_menu .event_detail .sub_img,
    .summer_menu .event_detail .sub_img2 {
        position: absolute;
        width: calc(390 / 1200 * 100%);
        max-width: 390px;
    }

    .summer_menu .event_detail .sub_img {
        left: 0;
    }

    .summer_menu .event_detail .sub_img2 {
        right: 0;
    }

    .summer_menu .event_detail#family .sub_img {
        bottom: -30px;
    }

    .summer_menu .event_detail#kids .sub_img,
    .summer_menu .event_detail#kids .sub_img2 {
        bottom: 70px;
    } */

    .summer_menu .event_detail .img_second {
        margin-top: 90px;
    }

    .summer_menu .event_detail .caution {
        width: 380px;
        margin: 15px auto 0;
    }

    .summer_menu .event_detail .caution li {
        font-size: calc(14em / 16);
        padding-left: 1em;
        text-indent: -1em;
    }

    .summer_menu .event_detail .caution li::before {
        content: '※';
    }

    .summer_menu .event_detail .link {
        display: block;
        width: 280px;
        margin: 35px auto 0;
        font-size: calc(18em / 16);
        font-weight: 700;
        letter-spacing: 0.1em;
        color: #fff;
        background-color: #3b4b72;
        text-align: center;
        padding: 1em 0;
        border-radius: 10px;
    }

    .summer_menu .event_detail#dad {
        padding-bottom: 80px;
    }

    .summer_menu .plan_detail {
        position: relative;
        margin-bottom: 140px;
    }

    .summer_menu .plan_detail::before {
        content: '';
        display: block;
        width: 100%;
        height: 50px;
        border-top: 2px solid #FFF;
        border-right: 2px solid #FFF;
        border-left: 2px solid #FFF;
        border-radius: 50px 50px 0 0;
    }

    .summer_menu .plan_detail::after {
        content: '';
        display: block;
        width: 100%;
        height: 50px;
        border-bottom: 2px solid #FFF;
        border-right: 2px solid #FFF;
        border-left: 2px solid #FFF;
        border-radius: 0 0 50px 50px;
    }

    .summer_menu .plan_detail .inner {
        max-width: 980px;
        margin: auto;
        padding-top: 20px;
    }

    .summer_menu .plan_detail .inner h2 {
        text-align: center;
        margin-bottom: 40px;
    }

    .summer_menu .plan_detail .inner h2 strong {
        display: inline-block;
        font-size: calc(32em / 16);
        font-weight: 700;
        letter-spacing: 0.1em;
        background: linear-gradient(transparent 60%, #ffff00 60%);
        padding: 0 8px;
    }

    .summer_menu .plan_detail .inner h2#plan2 {
        padding-top: 60px;
    }

    .summer_menu .plan_detail .plan_box {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding-bottom: 25px;
    }

    .summer_menu .plan_detail .plan_box:nth-of-type(1) {
        border-bottom: 2px solid #FFF;
    }

    .summer_menu .plan_detail .plan_box .image {
        width: calc(480 / 980 * 100%);
    }

    .summer_menu .plan_detail .plan_box .image ul {
        margin-top: 40px;
        margin-right: 10px;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .summer_menu .plan_detail .plan_box .image ul li {
        width: calc(calc(100% / 2) - 10px);
        margin-bottom: 20px;
    }

    .summer_menu .plan_detail .plan_box .text {
        width: calc(455 / 980 * 100%);
    }

    .summer_menu .plan_detail .plan_box .text * {
        font-weight: 700;
    }

    .summer_menu .plan_detail .plan_box .text .exp {
        font-size: calc(18em / 16);
        line-height: 2.0;
    }

    .summer_menu .plan_detail .plan_box .text .date {
        border-top: 2px solid #FFF;
        border-bottom: 2px solid #FFF;
        margin: 20px 0;
        padding: 20px 0;
        display: flex;
        flex-wrap: wrap;
    }

    .summer_menu .plan_detail .plan_box .text .date dt {
        width: 60px;
    }

    .summer_menu .plan_detail .plan_box .text .date dd {
        width: calc(100% - 60px);
        font-size: calc(18em / 16);
    }

    .summer_menu .plan_detail .plan_box .text h3 {
        font-size: calc(24em / 16);
        font-weight: 900;
        color: #3b4b72;
        line-height: 1.25;
        margin-bottom: 15px;
    }

    .summer_menu .plan_detail .plan_box .text .special {
        display: flex;
        flex-wrap: wrap;
    }

    .summer_menu .plan_detail .plan_box .text .special>dt {
        width: 60px;
        line-height: 2.0;
        padding-top: 0.2em;
    }

    .summer_menu .plan_detail .plan_box .text .special>dd {
        width: calc(100% - 60px);
        font-size: calc(18em / 16);
        line-height: 2.0;
    }

    .summer_menu .plan_detail .plan_box .text .special>dd dl {
        display: flex;
        flex-wrap: wrap;
    }

    .summer_menu .plan_detail .plan_box .text .special>dd dl dt {
        width: 3em;
    }

    .summer_menu .plan_detail .plan_box .text .special>dd dl dd {
        width: calc(100% - 3em);
    }

    .summer_menu .plan_detail .plan_box .text a {
        display: block;
        width: 324px;
        font-size: calc(18em / 16);
        font-weight: 700;
        letter-spacing: 0.1em;
        color: #fff;
        background-color: #3b4b72;
        text-align: center;
        padding: 1em 0;
        border-radius: 10px;
        margin-top: 20px;
    }

    .summer_menu .plan_detail .plan_box .text .t {
        border-top: 2px solid #FFF;
        margin-top: 20px;
        padding-top: 20px;
        line-height: 2.0;
        font-weight: 700;
    }

    .summer_menu .plan_detail .plan_box .text h4 {
        font-size: calc(24em / 16);
        font-weight: 900;
        color: #3b4b72;
        line-height: 1.25;
        margin-top: 20px;
        margin-bottom: 15px;
    }

    .summer_menu .plan_detail .plan_box .text h4 span {
        font-size: calc(20em / 24);
    }

    .summer_menu .plan_detail .plan_box .text .caution {
        font-size: calc(14em / 16);
        padding-left: 1em;
        text-indent: -1em;
        margin-top: 20px;
        font-weight: 400;
    }

    .summer_menu .plan_detail .plan_box .text .caution::before {
        content: '※';
    }

    .summer_menu .link_box {
        max-width: 780px;
        margin: 45px auto 45px;
        display: flex;
        flex-wrap: wrap;
        /* justify-content: space-between; */
        justify-content: center;
    }

    .summer_menu .link_box a {
        display: block;
        width: 340px;
        font-size: calc(18em / 16);
        font-weight: 700;
        letter-spacing: 0.1em;
        color: #fff;
        background-color: #3b4b72;
        text-align: center;
        padding: 1em 0;
        border-radius: 10px;
    }

    /* @media screen and (max-width:1200px) {

        .summer_menu .event_detail .sub_img,
        .summer_menu .event_detail .sub_img2 {
            width: calc(350 / 1200 * 100%);
            bottom: 0;
        }

        .summer_menu .event_detail#kids .sub_img,
        .summer_menu .event_detail#kids .sub_img2 {
            bottom: 120px;
        }
    } */

    #menu01 .sub_img {
        max-width: 980px;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        gap: 10px;
    }

    #menu01 .sub_img img {
        width: 49%;
    }

    #menu02 .sub_img {
        max-width: 980px;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        gap: 10px;
    }

    #menu02 .sub_img img {
        width: 49%;
    }

/*
    #menu02 .sub_img {
        max-width: 650px;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        gap: 100px;
    }

    #menu02 .spice li {
        display: block;
        line-height: 2;
    }

    #menu02 .sub_img img {
        max-width: 240px;
    }
*/

    #menu03 .sub_img {
        max-width: 650px;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        gap: 100px;
    }

    #menu03 .spice li {
        display: block;
        line-height: 2;
    }

    #menu03 .sub_img img {
        max-width: 240px;
    }



}


/* SP
---------------------------------------------------------------------- */
@media screen and (max-width:1000px) {

    .sp_none {
        display: none;
    }

    .summer_menu .wrap {
        position: relative;
        /* margin-top: calc(100 / 750 * 100vw); */
        padding-top: calc(70 / 750 * 100vw);
    }

    /* .summer_menu #pankuzu {
        position: absolute;
        top: 0;
        left: 0;
    } */

    .summer_menu #pageheader {
        width: 100%;
        height: calc(100vh - 16vw);
        /*height: calc(600 / 750 * 100vw);*/
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        z-index: 0;
        margin-bottom: calc(45 / 750 * 100vw);
    }

    .summer_menu #pageheader h1 {
        color: #fff;
        font-size: calc(52em / 28);
        font-weight: 900;
        letter-spacing: 0.05em;
        text-align: center;
    }

    .summer_menu #pageheader h1 span {
        display: block;
        font-size: calc(28em / 52);
        font-weight: 700;
        letter-spacing: 0.15em;
        margin-top: calc(10 / 750 * 100vw);
    }

    .summer_menu #pageheader img {
        width: 100%;
        height: 100%;
        /*height: calc(600 / 750 * 100vw);*/
        /* object-fit: cover; */
        /* object-position: 50% 0; */
        object-fit: cover;
        /*object-position: center left;*/
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
    }

    .summer_menu #contents {
        width: calc(690 / 750 * 100vw);
        margin-right: auto;
        margin-left: auto;
    }

    .summer_menu .main_title {
        width: calc(570 / 750 * 100vw);
        margin: 0 auto calc(40 / 750 * 100vw);
    }

    .summer_menu h3.period {
        font-size: calc(32em / 28);
        font-weight: 700;
        letter-spacing: 0.05em;
        line-height: 1.7;
        background: linear-gradient(transparent 60%, #f60 60%);
        width: fit-content;
        margin: 0 auto 5vw;
    }

    .summer_menu .lead {
        font-size: calc(32em / 28);
        font-weight: 700;
        letter-spacing: 0.05em;
        line-height: 1.7;
    }

    .summer_menu .note{
        font-size: 0.8em;
    }

    .summer_menu .menu_festa {
        position: relative;
        margin-top: calc(55 / 750 * 100vw);
    }

    .summer_menu .menu_festa::before {
        content: '';
        display: block;
        width: 100%;
        height: calc(50 / 750 * 100vw);
        border-top: 2px solid #FFF;
        border-right: 2px solid #FFF;
        border-left: 2px solid #FFF;
        border-radius: calc(50 / 750 * 100vw) calc(50 / 750 * 100vw) 0 0;
    }

    .summer_menu .menu_festa::after {
        content: '';
        display: block;
        width: 100%;
        height: calc(50 / 750 * 100vw);
        border-bottom: 2px solid #FFF;
        border-right: 2px solid #FFF;
        border-left: 2px solid #FFF;
        border-radius: 0 0 calc(50 / 750 * 100vw) calc(50 / 750 * 100vw);
    }

    .summer_menu .list1 {
        padding-top: calc(40 / 750 * 100vw);
        padding-bottom: calc(30 / 750 * 100vw);
    }

    .summer_menu .list1 li {
        background-position: right bottom;
        background-repeat: no-repeat;
        -webkit-background-size: calc(160 / 750 * 100vw) auto;
        background-size: calc(160 / 750 * 100vw) auto;
        /* background-image: url("../images/menu_bg.png"); */
        margin-bottom: calc(30 / 750 * 100vw);
    }

    /* @media screen and (-webkit-min-device-pixel-ratio:2), (min-resolution: 2dppx) {
        .summer_menu .list1 li {
            background-image: url("../images/menu_bg@2x.png");
        }
    } */
    .summer_menu .list1 li a {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        color: #FFF;
    }

    .summer_menu .list1 li img {
        width: calc(335 / 750 * 100vw);
    }

    .summer_menu .list1 li dl {
        width: calc(335 / 750 * 100vw);
    }

    .summer_menu .list1 li dl dt {
        font-weight: 500;
        font-style: italic;
        color: #3b4b72;
        font-size: calc(65em / 28);
        line-height: 1.2;
        margin-bottom: calc(5 / 750 * 100vw);
    }

    .summer_menu .list1 li dl dt img {
        width: 50%;
        margin-bottom: 2vw;
    }

    /* .summer_menu .list1 li dl dt::before {
         content:  'Event.';
        font-weight: 700;
        font-size: calc(36em / 65);
    } */
    .summer_menu .list1 li dl dd {
        font-size: calc(33em / 28);
        letter-spacing: -0.02em;
        font-weight: 700;
    }

    .summer_menu .list2 {
        border-top: 2px solid #FFF;
        padding-top: calc(50 / 750 * 100vw);
    }

    .summer_menu .list2 h3 {
        font-size: calc(32em / 28);
        letter-spacing: 0.1em;
        font-weight: 700;
        text-align: center;
        margin-bottom: calc(20 / 750 * 100vw);
    }

    .summer_menu .list2 ul {}

    .summer_menu .list2 ul li {
        margin-bottom: calc(40 / 750 * 100vw);
    }

    .summer_menu .list2 ul li * {
        text-align: center;
    }

    .summer_menu .list2 ul li img {
        display: block;
        width: calc(462 / 750 * 100vw);
        margin: 0 auto calc(20 / 750 * 100vw);
    }

    .summer_menu .list2 ul li dt {
        font-size: calc(30em / 28);
        font-weight: 700;
        margin-bottom: calc(10 / 750 * 100vw);
    }

    .summer_menu .list2 ul li dd {
        font-size: calc(32em / 28);
        font-weight: 700;
    }

    .summer_menu .list2 ul li dd::before {
        content: '期間';
        display: block;
        font-size: calc(28em / 32);
    }

    .summer_menu .innertitle {
        letter-spacing: 0.1em;
        text-align: center;
        font-weight: 700;
        line-height: 1.0;
        margin-bottom: calc(30 / 750 * 100vw);
    }

    .summer_menu .innertitle strong {
        display: inline-block;
        font-size: calc(48em / 28);
        font-weight: 700;
        background: linear-gradient(transparent 60%, #ffff00 60%);
        padding: 0 calc(8 / 750 * 100vw) 0 calc(8 / 750 * 100vw);
        margin-bottom: calc(20 / 750 * 100vw);
    }

    .summer_menu .event_detail {
        padding-top: calc(80 / 750 * 100vw);
        padding-bottom: calc(20 / 750 * 100vw);
        position: relative;
    }

    /* .summer_menu .event_detail#family::before {
        content: '';
        width: 100%;
        height: calc(101 / 750 * 100vw);
        background: url("../images/arrow01.png") no-repeat center 0;
        -webkit-background-size: auto 100%;
        background-size: auto 100%;
        position: absolute;
        top: calc(-50 / 750 * 100vw);
        left: 0;
    }

    @media screen and (-webkit-min-device-pixel-ratio:2),
    (min-resolution: 2dppx) {
        .summer_menu .event_detail::before {
            background: url("../images/arrow01@2x.png") no-repeat center 0;
        }
    } */

    .summer_menu .event_detail#menu01::before {
        content: '';
        width: 100%;
        height: calc(101 / 750 * 100vw);
        background: url("../images/arrow01_w.png") no-repeat center 0;
        -webkit-background-size: auto 100%;
        background-size: auto 100%;
        position: absolute;
        top: calc(-50 / 750 * 100vw);
        left: 0;
    }

    @media screen and (-webkit-min-device-pixel-ratio:2),
    (min-resolution: 2dppx) {
        .summer_menu .event_detail::before {
            background: url("../images/arrow01_w@2x.png") no-repeat center 0;
        }
    }

    .summer_menu .event_detail .title {
        position: relative;
        top: calc(-30 / 750 * 100vw);
        text-align: center;
    }

    /* .summer_menu .event_detail .title span {
        display: block;
        font-weight: 500;
        font-style: italic;
        color: #3b4b72;
        font-size: calc(85em / 28);
        line-height: 1.0;
        margin-bottom: calc(20 / 750 * 100vw);
    }
    .summer_menu .event_detail .title span::before {
         content:  'Event.';
        font-weight: 700;
        font-size: calc(40em / 85);
    } */

    .summer_menu .event_detail .title_img {
        display: block;
        width: 160px;
        height: 80px;
        margin: 0 auto;
    }

    .summer_menu .event_detail .title h3 {
        font-size: calc(36em / 28);
        font-weight: 900;
    }

    .summer_menu .event_detail .lead {
        font-size: calc(32em / 28);
        font-weight: 700;
        line-height: 1.7;
        letter-spacing: 0.05em;
        padding-bottom: calc(30 / 750 * 100vw);
    }

    .summer_menu .event_detail .details {
        border-top: 2px solid #FFF;
        padding-top: calc(40 / 750 * 100vw);
        padding-left: calc(30 / 750 * 100vw);
    }

    .summer_menu .event_detail .details dt {
        font-weight: 700;
        line-height: 1.3;
    }

    .summer_menu .event_detail .details dd {
        font-size: calc(32em / 28);
        font-weight: 700;
        margin-bottom: calc(15 / 750 * 100vw);
    }

    .summer_menu .kikan_det {
        display: block;
        font-size: calc(26em / 28);
        line-height: 1.8;
        margin-top: calc(10 / 750 * 100vw);
    }

    /* .summer_menu .event_detail#family .sub_img {
        width: calc(463 / 750 * 100vw);
        margin: calc(30 / 750 * 100vw) auto 0;
    }

    .summer_menu .event_detail#kids .sub_img {
        width: calc(390 / 750 * 100vw);
    }

    .summer_menu .event_detail#kids .sub_img2 {
        width: calc(390 / 750 * 100vw);
        margin-right: inherit;
        margin-left: auto;
    } */

    .summer_menu .event_detail .img_second {
        margin-top: calc(80 / 750 * 100vw);
    }

    .summer_menu .event_detail .caution {
        margin-top: calc(10 / 750 * 100vw);
        padding-left: calc(30 / 750 * 100vw);
    }

    .summer_menu .event_detail .caution li {
        padding-left: 1em;
        text-indent: -1em;
    }

    .summer_menu .event_detail .caution li::before {
        content: '※';
    }

    .summer_menu .link {
        display: block;
        width: calc(560 / 750 * 100vw);
        margin: calc(35 / 750 * 100vw) auto calc(45 / 750 * 100vw);
        font-size: calc(18em / 16);
        font-weight: 700;
        letter-spacing: 0.1em;
        color: #fff;
        background-color: #3b4b72;
        text-align: center;
        padding: 1em 0;
        border-radius: calc(10 / 750 * 100vw);
    }

    .summer_menu .plan_detail {
        position: relative;
        margin-bottom: calc(100 / 750 * 100vw);
    }

    .summer_menu .plan_detail::before {
        content: '';
        display: block;
        width: 100%;
        height: calc(50 / 750 * 100vw);
        border-top: 2px solid #FFF;
        border-right: 2px solid #FFF;
        border-left: 2px solid #FFF;
        border-radius: calc(50 / 750 * 100vw) calc(50 / 750 * 100vw) 0 0;
    }

    .summer_menu .plan_detail::after {
        content: '';
        display: block;
        width: 100%;
        height: calc(50 / 750 * 100vw);
        border-bottom: 2px solid #FFF;
        border-right: 2px solid #FFF;
        border-left: 2px solid #FFF;
        border-radius: 0 0 calc(50 / 750 * 100vw) calc(50 / 750 * 100vw);
    }

    .summer_menu .plan_detail .inner {
        padding-top: calc(40 / 750 * 100vw);
    }

    .summer_menu .plan_detail .inner h2 {
        text-align: center;
        margin-bottom: calc(20 / 750 * 100vw);
    }

    .summer_menu .plan_detail .inner h2 strong {
        display: inline-block;
        font-size: calc(40em / 28);
        font-weight: 700;
        letter-spacing: 0.1em;
        background: linear-gradient(transparent 60%, #ffff00 60%);
        padding: 0 calc(8 / 750 * 100vw);
    }

    .summer_menu .plan_detail .inner h2#plan2 {
        padding-top: calc(40 / 750 * 100vw);
    }

    .summer_menu .plan_detail .plan_box {
        padding-bottom: calc(80 / 750 * 100vw);
    }

    .summer_menu .plan_detail .plan_box:nth-of-type(1) {
        border-bottom: 2px solid #000;
    }

    .summer_menu .plan_detail .plan_box .image {
        width: calc(490 / 750 * 100vw);
        margin: 0 auto calc(30 / 750 * 100vw);
    }

    .summer_menu .plan_detail .plan_box .image ul {
        margin-top: calc(35 / 750 * 100vw);
        margin-right: calc(10 / 750 * 100vw);
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .summer_menu .plan_detail .plan_box .image ul li {
        width: calc(calc(100% / 2) - calc(10 / 750 * 100vw));
        margin-bottom: calc(20 / 750 * 100vw);
    }

    .summer_menu .plan_detail .plan_box .text * {
        font-weight: 700;
    }

    .summer_menu .plan_detail .plan_box .text .exp {
        font-size: calc(32em / 28);
        line-height: 1.7;
    }

    .summer_menu .plan_detail .plan_box .text .date {
        border-top: 2px solid #FFF;
        border-bottom: 2px solid #FFF;
        margin: calc(35 / 750 * 100vw) 0;
        padding: calc(20 / 750 * 100vw) calc(30 / 750 * 100vw);
    }

    .summer_menu .plan_detail .plan_box .text .date dd {
        font-size: calc(32em / 28);
    }

    .summer_menu .plan_detail .plan_box .text h3 {
        font-size: calc(36em / 28);
        font-weight: 900;
        color: #3b4b72;
        line-height: 1.25;
        padding-left: calc(30 / 750 * 100vw);
        margin-bottom: calc(20 / 750 * 100vw);
    }

    .summer_menu .plan_detail .plan_box .text .special {
        padding-left: calc(30 / 750 * 100vw);
    }

    .summer_menu .plan_detail .plan_box .text .special>dt {
        font-weight: 700;
        line-height: 1.3;
    }

    .summer_menu .plan_detail .plan_box .text .special>dd {
        font-size: calc(32em / 28);
        font-weight: 700;
        margin-bottom: calc(15 / 750 * 100vw);
    }

    .summer_menu .plan_detail .plan_box .text .special>dd dl {
        display: flex;
        flex-wrap: wrap;
    }

    .summer_menu .plan_detail .plan_box .text .special>dd dl dt {
        width: 3em;
    }

    .summer_menu .plan_detail .plan_box .text .special>dd dl dd {
        width: calc(100% - 3em);
    }

    .summer_menu .plan_detail .plan_box .text a {
        display: block;
        width: calc(630 / 750 * 100vw);
        margin: calc(35 / 750 * 100vw) auto 0;
        font-size: calc(36em / 28);
        font-weight: 700;
        letter-spacing: 0.1em;
        color: #fff;
        background-color: #3b4b72;
        text-align: center;
        padding: 1em 0;
        border-radius: calc(10 / 750 * 100vw);
    }

    .summer_menu .plan_detail .plan_box .text .t {
        border-top: 2px solid #FFF;
        margin-top: calc(20 / 750 * 100vw);
        padding-top: calc(30 / 750 * 100vw);
        font-size: calc(32em / 28);
        line-height: 1.7;
    }

    .summer_menu .plan_detail .plan_box .text h4 {
        font-size: calc(36em / 26);
        font-weight: 900;
        color: #3b4b72;
        line-height: 1.25;
        margin-top: calc(30 / 750 * 100vw);
        margin-bottom: calc(15 / 750 * 100vw);
        padding-left: calc(30 / 750 * 100vw);
    }

    .summer_menu .plan_detail .plan_box .text h4 span {
        font-size: calc(28em / 36);
    }

    .summer_menu .plan_detail .plan_box .text h4+.special {
        padding-left: calc(30 / 750 * 100vw);
    }

    .summer_menu .plan_detail .plan_box .text .caution {
        padding-left: 1em;
        text-indent: -1em;
        margin-top: calc(20 / 750 * 100vw);
        font-weight: 400;
    }

    .summer_menu .plan_detail .plan_box .text .caution::before {
        content: '※';
    }

    .summer_menu .link_box {
        margin-bottom: 15vw;
    }

    .summer_menu .link_box a {
        display: block;
        width: calc(630 / 750 * 100vw);
        margin: 0 auto calc(45 / 750 * 100vw);
        font-size: calc(36em / 28);
        font-weight: 700;
        letter-spacing: 0.1em;
        color: #fff;
        background-color: #3b4b72;
        text-align: center;
        padding: 1em 0;
        border-radius: calc(10 / 750 * 100vw);
    }

    #menu01 .sub_img {
        width: 100%;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        gap: 10px;
    }

    #menu01 .sub_img img {
        width: 49%;
    }

    #menu02 .sub_img {
        width: 100%;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        gap: 10px;
    }

    #menu02 .sub_img img {
        width: 49%;
    }

/*
    #menu02 .sub_img {
        width: 100%;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        gap: 4vw;
    }

    #menu02 .spice li {
        display: block;
        line-height: 2;
    }

    #menu02 .sub_img img {
        max-width: 40vw;
    }
*/

    #menu03 .sub_img {
        width: 100%;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        gap: 4vw;
    }

    #menu03 .spice li {
        display: block;
        line-height: 2;
    }

    #menu03 .sub_img img {
        max-width: 40vw;
    }



}


/* 2025-06-12追加 */
@media (min-width:1001px) {

    body {
        background-color: #000;
        color: #FFF;
    }
    #mainheader .pc_nav ul li a, #mainheader .pc_nav ul li a *, #mainheader .open {
        color: #FFF;
    }
    #mainheader .open.active {
        color: #000;
    }
    #pankuzu li {
        color: #FFF;
    }
    #pankuzu a {
        color: #FFF;
    }
/*    #mainheader span {
        background-color: #FFF;
    }*/
    #mainheader .open span {
        background-color: #FFF;
    }
    #mainheader.scroll .open span, #mainheader.child .open span {
        background-color: #FFF;
    }
    #mainheader .open.active span {
        background: #000;
    }
    #mainheader.scroll .open::after, #mainheader.child .open::after {
        color: #FFF;
    }
    #mainheader.scroll .open.active::after, #mainheader.child .open.active::after {
        color: #000;
    }

}

@media (max-width:1000px) {

    body {
        background-color: #000;
        color: #FFF;
    }
    #mainheader .pc_nav ul li a, #mainheader .pc_nav ul li a *, #mainheader .open {
        color: #FFF;
    }
    #pankuzu li {
        color: #FFF;
    }
    #pankuzu a {
        color: #FFF;
    }
/*    #mainheader span {
        background-color: #FFF;
    }*/
    /*#mainheader .open span {
        background-color: #FFF;
    }
    #mainheader.scroll .open span, #mainheader.child .open span {
        background-color: #FFF;
    }
    #mainheader .open.active span {
        background: #000;
    }
    #mainheader.scroll .open::after, #mainheader.child .open::after {
        color: #FFF;
    }
    #mainheader.scroll .open.active::after, #mainheader.child .open.active::after {
        color: #000;
    }*/

}