@charset "UTF-8";


body {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif, Verdana, "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
    background-color: #F0EBEA;
}

header {

    margin: 0 auto;
    display: flex;
    align-items: center;

    width: 100%;
    padding: 20px;
    position: fixed;
    top: 0;
    z-index: 2;
    background-color: rgba(102, 142, 104, 0.7);

    height: 60px;
}

.logo {
    padding: 10px 20px;
    display: inline-block;
}

nav {
    width: 80%;
    display: flex;
    justify-content: flex-end;
}

nav ul {
    display: flex;
    flex-wrap: nowrap;
    
}

nav ul li {
    padding: 10px 20px;
    display: inline-block;
}

ul {
    padding: 0;
    margin-right: 10px;
    list-style: none;
    
}

a {
    color: #fff;
    text-decoration: none;
}

h1 {
    color: #fff;
    font-size: 40px;
    font-weight: bold;
    padding: 20px;
    white-space: nowrap;
}




.main-visual {
    background-image: url(img/main-bg.jpg);
    background-size: cover;
    background-position: center;
    height: 600px;
    text-align: center;
}

h2 {

    color: #fff;
    font-size: 30px;
    font-weight: bold;
    padding-top: 300px;




    font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

h3 {
    color: #655046;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 11px;
}


.box_flex div {
    margin: auto auto;
    
}

.box_flex {
    width: 80%;
    padding: 7px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    
}

.COMPANY {
    padding-top: 45px;
    padding-bottom: 45px;
}


h4 {
    color: #655046;
    font-size: 20px;
    margin-bottom: 44px;
}

p {
    color: #655046;
    font-size: 16px;
    line-height: 1.8;
    margin: auto auto;
    width: 80%;

}

.about {
    background-color: #fff;
    padding: 50px 0;
    text-align: center;
}


.menu {
    padding-top: 85px;
    padding-bottom: 95px;
    text-align: center;
}


/*■■■■「menu-wrapper」のための記述　4つ ■■■■■■■■*/

/*【1】menu-wrapperを横幅900px、中央揃え、下部余白（間隔）を58px、flexで中の要素を横並びに。
要素と要素の間隔は「均等」に*/
.menu-wrapper {
    border: 2px dotted #ac9675;
    /*幅*/
    margin: 0 auto;
    /*中央寄せ*/
    margin-bottom: 58px;
    padding: 15px;
    /*内側余白*/
    display: flex;
    /*横並び*/
    justify-content: space-between;
}

/*【2】menu-wrapperの中のdivを背景色「白」にし、幅を30%づつに。
写真との間に余白（内側）を10pxつける */
.menu-wrapper div {
    background: #fff;
    width: 25%;
    /*約3分の1*/

}

/*【3】menu-wrapperの中の画像（img）を、divの幅に合わせる*/
.menu-wrapper img {
    width: 100%;
}

/*【4】menu-wrapperの中のテキスト（p）の上余白（間隔）を10pxに*/
.menu-wrapper p {
    margin-top: 10px;
}

/*■■■■ /ここまで「menu-wrapper」のための記述　■■■■■■■■*/

.about img {
    width: 20px;
    height: 20px;
}




footer {
    background-color: #668E68;
    color: #fff;
    font-size: 14px;
    padding: 25px;
    text-align: center;
}


/*＝＝＝ここからタブレットサイズ（画面の横幅が560px〜959px）＝＝＝*/

@media screen and (max-width: 959px) {
    header {
        height: 40px;
    }
    
    nav {
        display: none
    }

    h1 {
        font-size: 36px;
    }

    .main-visual {
        height: 480px;
    }


    .box_flex {
        height: 750px;
        width: 80%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    h2 {
        font-size: 25px;
        padding-top: 222px;
    }

    h3 {
        font-size: 18px;
    }

    h4 {
        font-size: 18px;
        margin-bottom: 30px;
    }

    p {
        font-size: 14px;
    }

    .about {
        padding: 65px 0;
    }

    .menu {
        padding-top: 65px;
        padding-bottom: 75px;
    }

    /*.menu-wrapperを横幅80%にし、中のdivを縦の中央揃えに。
    （padding…PC時のサイズを引き継ぐので書かない） */
    .menu-wrapper {
        width: 80%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    /*.menu-wrapperの幅に合わせ、幅いっぱいにして、下部との間隔を30pxに。
    最大幅は400px*/
    .menu-wrapper div {
        width: 100%;
        max-width: 400px;
        /*最大幅400px*/
        padding: 20px;
        margin-bottom: 30px;
        box-sizing: border-box;
        /*paddingまでをwidthに含める*/
    }

    footer {
        font-size: 12px;
    }

}


/*＝＝ ここからスマホサイズ（画面の横幅が559pxまで）＝＝*/

@media screen and (max-width: 559px) {

    /*スマホサイズでは、ナビゲーションを非表示*/
    header {
        height: 20px;
    }
    
    nav {
        display: none
    }

    h1 {
        font-size: 25px;
        padding: 0;
    }

    .main-visual {
        height: 320px;
    }

    .box_flex {
        height: 700px;
        width: 90%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    img {
        max-width: 100%;
    }

    h2 {
        font-size: 20px;
        padding-top: 137px;
    }

    .about {
        padding: 45px 0;
    }

    h3 {
        font-size: 15px;
    }

    h4 {
        font-size: 16px;
        margin-bottom: 25px;
    }

    p {
        font-size: 13px;
        width: 80%;
        
    }

    .menu {
        padding-top: 45px;
        padding-bottom: 75px;
    }

    .menu-wrapper {
        background: #ffd6bb;
        border: none;
    }

    .menu-wrapper div {
        padding: 10px 30px 5px;
        background: #fff;
    }

    .menu-wrapper img {
        width: 100%;
    }

    .menu-wrapper p {
        margin-top: 5px;
    }

    a {
        font-size: 14px;
    }

    footer {
        font-size: 11px;
    }

}