@charset "UTF-8";

/* top */
@media screen and (min-width: 750px) {
    #hai .top {
        background: url("../images/menu/hai/pc/hai_top_bg_pc.jpg") no-repeat center center;
        background-size: cover;
    }

    #hai .top img {
        margin: 0 auto;
    }
}

/* section01 */
@media screen and (min-width: 750px) {
    #hai .sec01 .heading-tf {
        background: url("../images/menu/hai/pc/sec1_heading_pc.png")no-repeat center center;
        width: 100%;
        height: 143px;
    }

    #hai .sec01 .ba_area {
        padding: 20px 0 40px;
    }

    #hai .sec01 .ba_area ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-end;
    }

    #hai .sec01 .ba_area ul li {
        width: 49%;
        margin: 0 5px 10px;
    }

    #hai .sec01 .ba_area li.pc {
        padding: 0 25px;
    }

    #hai .sec01 .ba_area_desc {
        padding: 30px 40px;
        height: 382px;
        display: flex;
        align-items: center;
    }

    #hai .sec01 .ba_area_desc .p_txt {
        font-size: 1.9rem;
        line-height: 1.9;
    }

    #hai .sec01 .ba_area_desc .p_txt1 {
        margin-bottom: 15px;
    }

    #hai .sec01 .sec01_bottom .txt_wrap_pc {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-left: 34%;
    }

    #hai .sec01 .sec01_bottom .inner {
        padding: 60px 0;
    }

    #hai .sec01 .sec01_bottom h4 {
        display: inline-block;
        font-size: 3.7rem;
    }

    #hai .sec01 .sec01_bottom .txt_wrap {
        margin: 0 0;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    #hai .sec01 .sec01_bottom .inner {
        background: url(../images/menu/hai/pc/sec1_img2_pc.png) no-repeat bottom left;
        background-size: 43%;
    }

    #hai .sec01_bottom .txt_wrap .checkbox {
        margin: 50px 0 30px;
        position: relative;
        width: 360px;
    }

    #hai .sec01_bottom .txt_wrap .checkbox .shape {
        position: absolute;
        left: -12%;
        top: -16%;
        width: 18%;
    }

    #hai .sec01_bottom .w_bg {
        padding: 20px 30px;
        background: rgba(234,133,164,0.2);
        width: 550px;
    }

    #hai .sec01_bottom .w_bg .p_txt {
        font-size: 2.2rem;
        letter-spacing: 0.05em
    }
}

@media screen and (max-width: 1020px) {
    #hai .sec01 .ba_area ul li {
        width: 48%;
    }

    #hai .sec01 .ba_area_desc {
        height: auto;
        padding: 6% 8%;
    }

    #hai .sec01 .ba_area_desc .p_txt {
        font-size: 1.9vw;
    }
} 

@media screen and (max-width: 900px) {
    #hai .sec01 .sec01_bottom .inner {
        padding: 60px 20px;
    }

    #hai .sec01 .sec01_bottom .txt_wrap_pc {
        margin-left: 24%;
    }
}

@media screen and (max-width: 785px) {
    #hai .sec01 .sec01_bottom .txt_wrap_pc {
        margin-left: 20%;
    }

    #hai .sec01_bottom .w_bg {
        background: rgba(253, 221, 231, 0.8);
    }
}

@media screen and (max-width: 750px) {
    #hai .sec01 .ba_area ul li {
        width: 100%;
    }

    #hai .sec01 .ba_area ul li:nth-child(3) {
        margin-bottom: 2%;
    }

    #hai .sec01 .sec01_bottom .inner {
        padding: 6% 3% 6%;
    }

    #hai .sec01 .sec01_bottom .txt_wrap_pc {
        margin-left: 0;
    }

    #hai .sec01_bottom .w_bg {
        background: #fce7ee;
    }
}

/* section02 */
@media screen and (min-width: 750px) {
    #hai .sec02 {
        background: url("../images/menu/hai/pc/sec2_bg_pc.jpg")no-repeat top center;
        background-size: cover;
    }

    #hai .sec02 h3 {
        background: url("../images/menu/hai/pc/sec2_heading_pc.png")no-repeat center center;
        width: 100%;
        height: 193px;
    }

    #hai .sec02 .inner {
        background: #fff;
        padding: 40px 40px 0;
        margin-top: -20px;
        overflow: hidden;
    }

    #hai .sec02 .sec02_top h4 {
        transform: scale(1);
        margin-top: 0;
    }

    #hai .sec02 .sec02_top .p_txt {
        font-size: 2rem;
        width: 90%;
        margin: 0 auto;
        font-feature-settings: "palt";
    }

    #hai .sec02 .bg_area {
        padding: 40px 20px 70px;
    }

    #hai .sec02 .bg_area ul li {
        margin-bottom: 40px;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    #hai .sec02 .bg_area ul li .ttl_area {
        display: inline-block;
        margin-bottom: 10px;
    }

    #hai .sec02 .bg_area ul li h5 {
        font-size: 2.2rem;
        position: relative;
    }

    #hai .sec02 .bg_area h5 .bg_txt_half {
        font-size: 3.1rem;
        background: linear-gradient(transparent 70%, #fef7f4 30%);
    }

    #hai .sec02 .bg_area ul li .ttl_area::after {
        content: '';
        background: url("../images/menu/hai/sec2_shape1.png")no-repeat;
        background-size: contain;
        width: 27px;
        aspect-ratio: 38 / 33;
        position: absolute;
        right: -23px;
        bottom: 51px;
    }

    #hai .sec02 .bg_area .flex_pc {
        justify-content: space-between;
    }

    #hai .sec02 .bg_area .flex_pc figure {
        width: 43%;
    }

    #hai .sec02 .bg_area .flex_pc .p_txt {
        width: 53%;
        padding: 0;
        font-feature-settings: "palt";
    }

    #hai .sec02 .bg_area .img4_pc {
        position: absolute;
        bottom: -250px;
        left: -40px;
        width: 120%;
    }

    #hai .sec02 .sec02_bottom {
        padding: 290px 40px 60px;
    }

    #hai .sec02 .sec02_bottom .p_txt {
        font-size: 1.9rem;
        text-align: center;
        font-feature-settings: "palt";
    }

    #hai .sec02 .sec02_bottom .table_ttl {
        font-size: 2.55rem;
        margin: 40px auto 20px;
    }
}

@media screen and (max-width: 1000px) {
    #hai .sec02 .sec02_bottom .p_txt {
        text-align: left;
    }

    #hai .sec02 .sec02_bottom .p_txt .pc {
        display: none;
    }
}

@media screen and (max-width: 880px) {
    #hai .sec02 .bg_area {
        padding: 40px 20px 50px;
    }
}

@media screen and (max-width: 780px) {
    #hai .sec02 .bg_area .img4_pc {
        bottom: -210px;
    }

    #hai .sec02 .sec02_bottom {
        padding: 240px 4% 60px;
    }
}

@media screen and (max-width: 750px) {
    #hai .sec02 .bg_area {
        padding: 6% 4% 9%;
    }

    #hai .sec02 .sec02_bottom {
        padding: 48% 0 0;
    }
}

/* popular */
@media screen and (min-width: 750px) {
    #hai .popular .ttl_area {
        background: #ea85a4;
        text-align: center;
        padding: 10px 0;
        position: relative;
    }

    #hai .popular .ttl_area::after {
        content: '';
        background: url("../images/menu/hai/pc/popular_arrow.png")no-repeat;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        bottom: -10px;
        width: 52px;
        aspect-ratio: 52 / 22;
    }

    #hai .popular .ttl_area h3 {
        color: #fff;
        font-size: 4rem;
    }

    #hai .popular .pc_inner {
        padding: 30px 20px;
    }

    #hai .popular .pc_inner .pop1 {
        margin: 0 auto 30px;
    }
}

@media screen and (max-width: 1000px) {
    #hai .popular .ttl_area h3 {
        font-size: 4vw;
    }
}

/* section03 */
@media screen and (min-width: 750px) {
    #hai .sec03::before {
        content: '';
        background: url("../images/menu/hai/pc/sec3_top_pc.png")no-repeat top center;
        width: 100%;
        height: 32px;
    }

    #hai .sec03 h3 {
        position: relative;
        width: 100%;
        margin: 1% auto 30px;
    }

    #hai .sec03 .inner {
        padding: 10px 20px 40px;
    }

    #hai .sec03 .w_bg p {
        padding: 4% 4%;
        font-size: 1.8rem;
    }
}

/* section04 */
@media screen and (min-width: 750px) {
    #hai .sec04 {
        background: url("../images/menu/hai/pc/sec4_bg_pc.png")no-repeat top center;
        background-size: cover;
    }

    #hai .sec04 .sec04_top {
        padding-top: 330px;
    }

    #hai .sec04 .sec04_top figure {
        left: 70px;
        top: 40px;
    }

    #hai .sec04 .sec04_top .txt_wrap {
        right: 20px;
        top: 50px;
    }

    #hai .sec04 .inner {
        padding: 60px 20px 60px;
    }

    #hai .sec04 .inner .flex_pc {
        justify-content: space-between;
        align-items: center;
    }

    #hai .sec04 .inner .flex_pc figure {
        width: 45%;
    }

    #hai .sec04 .inner .flex_pc .p_txt {
        width: 52%;
    }

    #hai .sec04 .w_bg {
        padding: 40px 4% 4%;
    }

    #hai .sec04 .w_bg figure {
        padding: 0 0;
    }

    #hai .sec04 .w_bg .txt_box {
        padding: 50px 70px 30px;
        margin: 60px 0 0;
    }

    #hai .sec04 .w_bg .txt_box h4 {
        font-size: 2.7rem;
        width: 420px;
        border-radius: 40px;
        padding: 1% 3%;
    }

    #hai .sec04 .w_bg .txt_box .flex_pc {
        justify-content: center;
        align-items: flex-start;
        flex-wrap: wrap;
    }

    #hai .sec04 .w_bg .txt_box .flex_pc li {
        width: 48%;
        font-size: 2.3rem;
        display: flex;
        align-items: flex-start;
    }

    #hai .sec04 .w_bg .txt_box .flex_pc li::before {
        margin: 13px 10px 0 0 ;
    }

    #hai .sec04 .w_bg .txt_box .add_txt {
        font-size: 2rem;
        margin-top: 0;
        text-align: center;
    }
}

@media screen and (max-width: 1000px) {
    #hai .sec04 .sec04_top .txt_wrap h3 {
        font-size: 3.5vw;
    }

    #hai .sec04 .sec04_top .txt_wrap h3 .bg_txt {
        font-size: 4.5vw;
    }
}

@media screen and (max-width: 800px) {
    #hai .sec04 .sec04_top {
        padding-top: 290px;
    }

    #hai .sec04 .inner {
        padding: 50px 20px 60px;
    }

    #hai .sec04 .sec04_top figure {
        left: 20px;
        top: 10px;
    }
}

@media screen and (max-width: 750px) {
    #hai .sec04 .sec04_top .txt_wrap h3 {
        font-size: 4.7vw;
    }

    #hai .sec04 .sec04_top .txt_wrap h3 .bg_txt {
        font-size: 6vw;
    }

    #hai .sec04 .sec04_top {
        padding-top: 54%;
    }

    #hai .sec04 .inner {
        padding: 6% 3% 6%;
    }

    #hai .sec04 .sec04_top figure {
        left: 0;
        top: 10%;
    }
}

/* section05 */
@media screen and (min-width: 750px) {
    #hai .sec05 {
        background: url("../images/menu/hai/pc/sec5_bg_pc.jpg")repeat-x center;
        background-size: contain;
        margin-bottom: 60px;
    }

    #hai .sec05 .inner {
        padding: 40px 20px;
    } 

    #hai .sec05 .bg_box {
        background: #ca6c88;
        padding: 40px 40px 40px;
        position: relative;
    }

    #hai .sec05 .bg_box figure {
        left: 3%;
        width: 90px;
    }

    #hai .sec05 .bg_box h3 {
        font-size: 3.2rem;
        width: 80%;
        margin: 0 auto 30px;
    }
}

@media screen and (max-width: 1000px) {
    #hai .sec05 .bg_box h3 {
        font-size: 3.1vw;
    }

    #hai .sec05 .bg_box figure {
        width: 10%;
    }
} 

@media screen and (max-width: 750px) {
    #hai .sec05 .bg_box h3 {
        font-size: 4rem;
    }

    #hai .sec05 .bg_box figure {
        width: 19%;
    }
} 

/* section06 */
@media screen and (min-width: 750px) {
    #hai .sec06 .add_txt {
        padding: 4% 4% 0;
        width: 80%;
        margin: 0 auto;
        font-size: 1.9rem;
    }

    #hai .sec06 .inner {
        padding: 20px 20px;
    }

    #hai .sec06 .flex_pc {
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap;
    }

    #hai .sec06 h4 {
        font-size: 3.4rem;
        margin: 2% 0 20px;
    }

    #hai .sec06 .flex_pc li {
        width: 48%;
    }

    #hai .sec06 .fee_wrap h5 {
        font-size: 2.8rem;
    }

    #hai .sec06 .fee_wrap .p_txt {
        font-size: 1.9rem;
        line-height: 1.3;
    }

    #hai .sec06 .fee_box .pk_txt {
        font-size: 2.2rem;
    }

    #hai .sec06 .fee_box .price {
        font-size: 3rem;
    }

    #hai .sec06 .fee_box .fee_box_right .bold_txt {
        font-size: 2.2rem;
    }

    #hai .sec06 .fee_wrap2 h4 {
        margin-top: 40px;
    }

    #hai .sec06-add {
        flex-wrap: wrap;
        justify-content: space-between;
        padding: 20px 20px;
    }

    #hai .sec06-add div {
        width: 48%;
    }

}

@media screen and (max-width: 1000px) {
    #hai .sec06 .fee_box .fee_box_right .bold_txt {
        font-size: 2.2vw;
    }

    #hai .sec06 .fee_wrap .p_txt {
        font-size: 1.9vw;
    }

}

@media screen and (max-width: 750px) {
    #hai .sec06 .fee_box .fee_box_right .bold_txt {
        font-size: 3rem;
    }

    #hai .sec06 .fee_wrap .p_txt {
        font-size: 2.6rem;
    }

}

/* menu_area */
@media screen and (min-width: 750px) {
    #hai .menu_area h3 {
        width: 70%;
        margin: 0 auto;
    }

    /* #hai .menu_area .menu_inner ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    } */

    #hai .menu_area .menu_inner ul li {
        /* width: 31%; */
        padding: 10px 20px;
    }

    #hai .menu_area .menu_inner ul li .flex_pc {
        align-items: center;
        justify-content: space-between;
    }

    #hai .menu_area .menu_inner ul li figure {
        width: 16%;
        margin: 0;
    }

    #hai .menu_inner ul li h4 {
        font-size: 2.8rem;
        width: 23%;
        text-align: center;
    }

    #hai .menu_inner ul li .wrap_pc {
        width: 57%;
        padding: 20px 0 20px 0;
    }

    #hai .menu_inner ul li dl {
        width: 100%;
        margin: 0 auto 1%;
        flex-wrap: nowrap;
    }

    #hai .menu_inner ul li dt {
        font-size: 1.8rem;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 24%;
    }

    #hai .menu_inner ul li dt.data_top {
        border-bottom: 1px solid #fdc8da;
    }

    #hai .menu_inner ul li dt.data_bottom {
        border-top: 1px solid #fdc8da;
        margin-left: 20px;
    }

    #hai .menu_inner ul li dd {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 24%;
    }

    /* #hai .menu_inner ul li .data_wrap .p_txt:last-child {
        font-size: 1.4rem;
    } */

    #hai .menuBtn_wrap .btn_ttl {
        font-size: 2rem;
        margin: 5px 0 0;
        padding: 10px 0;
    }

    #hai .menuBtn_wrap .btn_ttl::after {
        font-size: 2.5rem;
    }

    #hai .menuBtn_wrap .menu_content {
        display: none;
        background: #ea85a4;
        padding: 10px 20px;
        width: 100%;
    }

    #hai .menuBtn_wrap .tabbox ul li {
        width: 35%;
        font-size: 1.8rem;
        padding: 10px 10px;
        margin: 0 15px 10px;
    }

    #hai .menuBtn_wrap .panel_area ul li {
        width: 100%;
        padding: 10px 0 0;
    }

    #hai .menuBtn_wrap .mb_btn {
        font-size: 1.8rem;
        padding: 10px 20px 10px 10px;
        margin: 0 auto 10px;
    }

    #hai .menuBtn_wrap .mb_btn::after {
        font-size: 3rem;
        right: -5px;
    }

    #hai .menuBtn_wrap .menu_content_m .mb_s {
        font-size: 1.7rem;
        background: #fff;
        color: #c08e9d;
        padding: 2% 2% 2% 6%;
        width: 100%;
        margin: 0 auto 4%;
        position: relative;
        text-align: left;
    }
}