@charset "UTF-8";

/*==========================
common
==========================*/
.section {
    padding-top: 50px;
}

.title {
    padding-right: 10px;
}
.Scrolling {
    bottom: 0;
}


@media screen and (min-width: 769px) {
    .section {
        padding-top: 70px;
    }

    .title {
        padding-right: 20px;
    }

    .title__container {
        gap: 10px;
    }
}

/*==========================
Top
==========================*/
.takeoutTop {
    width: 100%;
    height: auto;
    background-color: var(--primary-orange);
}

.takeoutTop__box {
    padding: 8vh 10% 100px;
    position: relative;
    width: 100%;
    height: 100vh;
    height: 100svh;
}

.topPhoto__box {
    width: 80vw;
    height: 75vh;
    height: 75svh;
    border-radius: 30px;
    overflow: hidden;
    /* 親要素の外にはみ出た部分を隠す */
    position: absolute;
    top: 12vh;
    top: 12svh;
    margin: 5px;
}

.topPhoto {
    object-fit: cover;
    /* 親要素全体にフィット */
    object-position: -90px -20px;
    height: 110%;
}

.topTitle {
    font-size: 6rem;
    line-height: 100%;
    /* 60px */
    z-index: 10;
    margin-top: 20px;
}

.topTitle::after {
    font-size: 6.1rem;
}

.topTxt {
    position: absolute;
    font-size: 1.6rem;
    font-weight: 700;
    z-index: 11;
}
.tacosPrice_box {
    display: flex;
    width: 100%;
    justify-content: flex-end;
    align-items: end;
    margin-top: 5px;
}
.tacosPrice_txt {
    font-size: 2rem;
    color: #fff;
    font-family: Anton;
    font-weight: 700;
    line-height: 100%;
    letter-spacing: 0.05em;
}
.tacosPrice {
    font-size: 4rem;
    color: #fff;
    font-family: Anton;
    font-weight: 400;
    line-height: 100%;
}

/* Top */
@media screen and (min-width: 769px) {
    .takeoutTop__box {
        padding: 100px 0 0 210px;
        position: relative;
        width: 100%;
        height: 100vh;
    }

    .topPhoto__box {
        border-radius: 50px;
        overflow: hidden;
        /* 親要素の外にはみ出た部分を隠す */
        position: absolute;
        bottom: 150px;
        right: 150px;
        width: 75%;
        height: 70vh;
    }

    .topPhoto {
        object-fit: cover;
        /* 親要素全体にフィット */
        object-position: 0;
        height: auto;
        height: 100%;
    }

    .takeoutTop__txtBox {
        position: absolute;
        bottom: 0;
        right: 0;
        background-color: var(--primary-orange);
        z-index: 1;
        width: 620px;
        height: 37vh;
        border-radius: 50px;
    }

    .topTitle {
        font-size: 10rem;
        z-index: 11;
        position: absolute;
        bottom: 16vh;
        bottom: 16svh;
        right: 9vw;
        padding-right: 20px;
    }

    .topTitle::after {
        font-size: 10.1rem;
    }

    .topTxt {
        position: absolute;
        font-size: 2.4rem;
        z-index: 12;
        bottom: 16vh;
        bottom: 16svh;
        padding-bottom: 90px;
        right: 9vw;
    }

    .topPhoto__curve {
        background-image: url('../images/top_kado.png');
        position: absolute;
        bottom: 36.8vh;
        right: 150px;
        z-index: 9;
        background-size: cover;
        /* 要素全体を埋めるようにフィット */
        background-position: center;
        /* 画像の中心を基準に配置 */
        background-repeat: no-repeat;
        /* 画像を繰り返さない */
        width: 80px;
        height: 80px;
    }
    .box__B {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 70vw;
        height: 16vh;
        height: 16svh;
        border-radius: 0;
    }
    .curve__B {
        bottom: 15.8vh;
        right: 618px;
    }
}

/* pc 769px */
/* top TAB */
@media screen and (min-width: 769px) and (max-width: 1000px) {
    .topTitle {
        font-size: 8.5rem;
        right: 4vw;
    }
    .topTitle::after {
        font-size: 8.6rem;
    }
    .topTxt {
        right: 4vw;
    }
    .topPhoto__box {
        border-radius: 50px;
        overflow: hidden;
        /* 親要素の外にはみ出た部分を隠す */
        position: absolute;
        bottom: 140px;
        right: 50px;
        width: 85%;
        height: 70%;
    }

    .topPhoto__curve {
        right: 50px;
    }

    .topPhoto {
        object-fit: cover;
        /* 親要素全体にフィット */
        object-position: 0;
        height: 100%;
    }
    .box__B {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 70vw;
        height: 20vh;
        border-radius: 0;
    }
    .curve__B {
        bottom: 19.8vh;
        right: 618px;
    }

}

/* pc 769~1000px */

/*==========================
tacos　about
==========================*/
.section__tacos {
    background-color: var(--primary-clearBlack);
    padding-top: 50px;
}

.tacos_container {
    display: flex;
    flex-direction: column;
    width: 100%;
    align-items: center;
    justify-content: center;
    margin-top: 10px;
}

.tacosPhoto {
    width: 84%;
    height: 200px;
    border-radius: 10px;
    overflow: hidden;
}

.tacosPhoto img {
    object-fit: cover;
    height: 100%;
}

.tacosTxt_container {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-top: 20px;
    
}

.tacosTxt_box {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 0 10% 50px 10%;
    margin-top: 20px;
}

h4 {
    font-family: Anton;
    font-weight: 400;
    font-size: 2rem;
    line-height: 120%;
    text-transform: uppercase;
}
.titleTxt_tacos {
    margin-top: 5px;
}

.tacosTxt {
    letter-spacing: 0.84px;
    font-size: 1.4rem;
    font-weight: 400;
}

/* tacos PC */
@media screen and (min-width: 769px) {
    .tacos_container {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        padding-bottom: 70px;
        margin-top: 20px;
        align-items: flex-start;
    }

    .tacosTxt_container {
        margin: 0;
        gap: 30px;
    }

    .tacosPhoto {
        width: 63vw;
        height: 450px;
    }
    .tacosTxt_box {
        padding: 0;
        width: 85%;
    }
    .tacosPrice {
        font-size: 5rem;
    }
    h4 {
        font-size: 4rem;
        line-height: 130%;
    }

    .tacosTxt {
        font-size: 2rem;
        letter-spacing: 0;
    }
}

/* pc 769px */


/*==========================
questions
==========================*/
.questions_container {
    margin-top: 30px;
    padding: 0 8% 60px 8%;
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.questions_box {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.questionsTxt__box {
    display: flex;
    gap: 10px;
    align-items: start;
}

.questions_icon {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 100%;
    text-transform: uppercase;
}

.questions_txt {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 140%;
}

.questions_line {
    width: 100%;
    height: 1px;
    background-color: white;
}

/* questions PC */
@media screen and (min-width: 769px) {
    .questions_container {
        padding: 0 0 70px 0;
        margin-right: 11%;
    }

    .questions_txt {
        font-size: 1.8rem;
        line-height: 140%;
    }

    .questions_icon {
        font-size: 1.8rem;
        line-height: 140%;
    }
}

/* pc 769px */
/*==========================
menu link
==========================*/
.section__otherMenu {
    background-color: var(--primary-clearOrange);
    padding-top: 50px;
}

.otherMenu_Box {
    margin-top: 30px;
    gap: 30px;
    display: flex;
    flex-direction: column;
    padding: 0 8% 60px 8%;
}

.photoBox {
    overflow: hidden;
    width: 85vw;
    height: 40vw;
    border-radius: 10px;
}

.photoMenu {
    object-fit: cover;
    width: 100%;
    height: 45vw;
    object-position: center;
    /* 中央を基準にトリミング */
}

.menuTxt_container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
}

.menuLink__title {
    text-align: center;
    font-family: Anton;
    font-weight: 400;
    font-size: 3.1rem;
    line-height: 100%;
    transition: color 0.3s ease; /* スムーズに色を変化させる */
    text-transform: uppercase;
}

.menu_titleContainer {
    justify-content: center;
    display: flex;
    gap: 10px;
    margin-top: 10px;
}

.menuLink_arrow {
    width: 41px;
    height: 32px;
}

.menuLink__txt {
    font-size: 1.8rem;
    font-weight: 900;
    line-height: 100%;
    text-align: center;
    transition: color 0.3s ease; /* スムーズに色を変化させる */
}


@media screen and (min-width: 769px) {
    .photoBox {
        width: 27vw;
        height: 27vw;
        position: relative;
        overflow: hidden;
    }

    .photoMenu {
        display: flex;
        width: 100%;
        height: 100%;
        align-items: center;
        position: absolute;
    }

    .photoMenu {
        transition: transform 0.3s ease;
    }

    .photoBox:hover .photoMenu {
        transform: scale(1.2);
    }

    .menuTxt_container {
        transition: transform 0.3s ease;
    }

    .otherMenu_Link:hover .menuTxt_container {
        transform: scale(1.1);
    }

    .otherMenu_Link {
        display: inline-block;
        text-decoration: none;
        transition: transform 0.3s ease;
    }

    .otherMenu_Box {
        padding: 0 0 70px 0;
        display: flex;
        flex-direction: row;
    }

    .menuLink__title {
        font-size: 3vw;
        text-transform: uppercase;
    }
    .menuLink__txt {
        font-size: 2rem;
        margin-top: 5px;
    }

    .menu_titleContainer {
        align-items: center;
    }

    .menuLink_arrow {
        width: 2.8vw;
        height: auto;
    }
}