@charset "utf-8";

.fvTit01,
.fvTit02 {
    writing-mode: vertical-rl;
}

.tRecoWr::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    background: #D2F394;
    opacity: .72;
}

.tRecoWr::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 2;
    height: 42.82%;
    background: linear-gradient(0deg, rgba(254, 249, 245, 0) 0%, rgba(254, 249, 245, 1) 100%);
}

.tRecoTitBx {
    aspect-ratio: 178/47;
}

.tRecoFl {
    gap: 15px;
}

.tMenuTable {
    gap: 5px;
}

.tMenuTc {
    gap: 5px;
}

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:576px) {
    .tFvBx {
        align-items: center;
    }

    .tRecoFl {
        align-items: stretch !important;
        flex-direction: row !important;
    }

    .tRecoFlItem {
        width: 48% !important;
    }


}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:768px) {
    .tRecoFl {
        gap: 20px !important;
    }

    .tMenuR {
        flex-wrap: wrap;
    }


}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:1024px) {

    .tRecoFl {
        gap: 15px !important;
    }

    .tRecoFlItem {
        width: 32% !important;
    }

    .tMenuR {
        flex-wrap: nowrap;
    }

}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

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

    .tRecoFl {
        gap: 30px !important;
    }

    .tRecoItemTxt {
        font-size: 21px !important;
    }

    .tRecoFlMt {
        margin: 58px 0 0 !important;
    }

    .tRctBxR {
        padding: 76px 30px 87px 50px !important;
    }

    .tRctImg02 {
        margin: -69px 0 0 129px !important;
    }

    .tRctImg03 {
        top: 66.5px !important;
    }
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:1440px) {

    .tFvBxL {
        margin: 63px 0 0 !important;
    }

    .fvTit01 {
        margin: 60px 48px 0 0 !important;
        font-size: 45px !important;
    }

    .fvTit02 {
        font-size: 37px !important;
    }

    .tRecoFl {
        gap: 60px !important;
    }

    .tRctBxR {
        padding: 76px 30px 87px 100px !important;
    }

}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:1760px) {

    .tMenuDeco {
        left: -96px !important;
    }
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */