@charset "UTF-8";

html {
    font-size: 62.5%;
}

img {
    max-width: 100%;
    vertical-align: bottom;
}
body {
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-style: normal;
    color: #4f4225;
    background-color: #f5f5f5;
    line-height: 1.5;
}
li {
    list-style: none;
}
a {
    text-decoration: none;
}

/* ------------------------
common
------------------------ */
.wrapper {
    max-width: 840px;
    margin: 0 auto;
    padding: 120px 40px 0 40px;
}

.mt120 {
    margin-top: 120px;
}

.mt50 {
    margin-top: 50px;
}

.mt30 {
    margin-top: 30px;
}

.fadeup {
    opacity: 0;
    transform: translateY(40px);
    transition:
        opacity 0.8s ease,
        transform 0.8s ease;
}

.fadeup.is-show {
    opacity: 1;
    transform: translateY(0);
}

@media screen and (max-width: 768px) {
    .wrapper {
        padding: 60px 4% 0 4%;
    }

    .mt120 {
        margin-top: 60px;
    }

    .mt50 {
        margin-top: 40px;
    }

    .mt30 {
        margin-top: 20px;
    }

    .pcbr {
        display: none;
    }
}

/* ------------------------
header
------------------------ */
.header {
    width: 100%;
    height: 100vh;
    background: url(../image/mainvisual.jpg) no-repeat center/cover;
    display: flex;
    justify-content: center;
    align-items: center;
}

.logo {
    max-width: 464px;
    line-height: 1;

    opacity: 0;
    transform: scale(0.95);
    animation: fadeUp 1s ease forwards;
    animation-delay: 0.8s;
}

.logo img {
    width: 100%;
    object-fit: cover;
}

.logo a {
    display: inline-block;
}

@keyframes fadeUp {
    to {
        opacity: 1;
        transform: scale(1);
    }
}

@media screen and (max-width: 768px) {
    .header {
        height: 560px;
        padding: 0 10%;
    }
}

/* ------------------------
about
------------------------ */
.about {
    margin-top: 100px;
    text-align: center;
}

.news {
    margin-top: 30px;
}

.heading {
    font-size: 3rem;
    line-height: 1.5;
}

.txt {
    font-size: 2rem;
    line-height: 2.5;
}

@media screen and (max-width: 768px) {
    .about {
        margin-top: 0;
    }

    .heading {
        font-size: 2.4rem;
    }

    .txt {
        font-size: 1.8rem;
        line-height: 2;
        text-align: left;
    }
}

/* ------------------------
chef
------------------------ */
.chef {
    text-align: center;
}

.img-chef {
    margin-top: 30px;
}

.chef dl {
    display: flex;
    flex-direction: column;
    text-align: left;
    max-width: 560px;
    margin: 30px auto 0 auto;
}

.chef dt {
    font-size: 2rem;
    font-weight: 500;
}

.chef dd {
    font-size: 2rem;
    margin-bottom: 20px;
}

.chef dd:last-of-type {
    margin-bottom: 0;
}

@media screen and (max-width: 768px) {
    .chef dt {
        font-size: 1.6rem;
        font-weight: 500;
    }

    .chef dd {
        font-size: 1.6rem;
        margin-bottom: 20px;
    }
}

/* ------------------------
footer
------------------------ */
.footer {
    background-color: #4f4225;
    color: #fff;
    padding: 120px 40px;
}

.footer .wrapper {
    padding: 0 40px;
}

.footer dl {
    display: flex;
    flex-wrap: wrap;
}

.footer dt {
    width: 25%;
    font-weight: 500;
    font-size: 2rem;
    margin-bottom: 24px;
}

.footer dd {
    width: 75%;
    font-size: 2rem;
    margin-bottom: 24px;
    padding-left: 50px;
}

.footer dt:last-of-type,
.footer dd:last-of-type {
    margin-bottom: 0;
}

@media screen and (max-width: 768px) {
    .footer {
        background-color: #4f4225;
        color: #fff;
        padding: 60px 4%;
    }
    .footer .wrapper {
        padding: 0;
    }
    .footer dt {
        font-size: 1.6rem;
        margin-bottom: 20px;
    }

    .footer dd {
        font-size: 1.6rem;
        margin-bottom: 20px;
        padding-left: 2px;
    }
}
