/* -------------------------------------------- */
/*  ▼ 全幅共通/スマホ幅で適用するCSS ▼
/* -------------------------------------------- */
body {
    font-family: "Zen Kaku Gothic New", sans-serif;
    color: #433b39;
    line-height: 1.5;
    letter-spacing: 0.1em;
}
div {
    box-sizing: border-box;
}
.header {
    background: url(images/bg_header.jpg) 20% center no-repeat;
    height: 400px;
    background-size: cover;
}

h1 {
    margin: 0;
    text-align: center;
    padding-top: 110px;
}

.logo {
    width: 180px;
    height: 180px;
}

.footer {
    background-color: #E64C47;
    padding: 20px 0 40px;
}
.footer_txt {
    color: #fff;
    font-size: 12px;
    width: 100%;
    text-align: center;
}

.prof {
    display: flex;
    width: 780px;
    margin: 60px auto;
    gap: 24px;
}

.prof_img {
    width: 270px;
    height: 270px;
}

.hibi {
    background-color: #FBF6F0;
    width: 100%;
    padding: 60px 0;
}

.hibi_inner {
    width: 780px;
    margin: 0 auto;
    display: flex;
    gap: 24px;
}

.hibi_img {
    width: 396px;
    height: auto;
}

.hibi_link_inner {
    text-align: right;
}

.hibi_link {
    color: #252525;
}
.hibi_link:hover {
    text-decoration: none;
}

.ec {
    padding: 60px 0;
    text-align: center;
}
.ec_link:hover {
    opacity: .6;
}
.ec_img {
    width: 560px;
    height: auto;
}

/* -------------------------------------------- */
/*  ▼ タブレット ▼
/* -------------------------------------------- */
@media (max-width: 779px) {

    h2 {
        font-size: 20px;
    }

    .prof {
        width: 100%;
        padding: 0 24px;
    }
    .hibi_inner {
        width: 100%;
        padding: 0 24px;
    }
    .hibi_img {
        width: 50vw;
        height: 32.8vw;
    }
    .hibi_txt {
        width: 40vw;
    }

} /* end @media */

/* -------------------------------------------- */
/*  ▼ スマホ ▼
/* -------------------------------------------- */
@media (max-width: 560px) {

    .prof {
        flex-direction: column;
        margin: 40px 0;
    }
    .prof_img_box {
        text-align: center;
    }
    .prof_img {
        width: 80%;
        height: auto;
    }

    .hibi_inner {
        flex-direction: column;
    }
    .hibi_img {
        width: 100%;
        height: auto;
    }
    .hibi_txt {
        width: 100%;
    }

    .ec {
        padding: 60px 24px;
    }
    .ec_img {
        width: 100%;
    }

} /* end @media */