/*全体に関するcss*/
html{
    font-size: 10px;
    background-color: #FFC7C7;
}
a {
    text-decoration: none;
}
body{
    height: 100vh;
    transition: all 1s;
}
header{
    height: 10vh;
}
article{
    background-color: #F8FFF4;
    width: 100%;
    padding: 2% 0;
    height: 65vh;
}
footer{
    height: 10vh;
}

/* ヘッダー */
/*メニューの開閉*/
.menu{
    height: 20px;
    position: absolute;
    right: 20px;
    top: 20px;
    width: 50px;
    z-index: 99;
    cursor: pointer;
}
.menu__line{
    background: #fff;
    display: block;
    height: 2px;
    position: absolute;
    transition:transform .3s;
    width: 100%;
}
.menu__line--center{
    top: 9px;
}
.menu__line--bottom{
    bottom: 0;
}
.menu__line--top.active{
    top: 8px;
    transform: rotate(45deg);
}
.menu__line--center.active{
    transform:scaleX(0);
}
.menu__line--bottom.active{
    bottom: 10px;
    transform: rotate(135deg);
}

/*メニュー内に関するcss*/
.gnav{
    background: rgba(0,0,0);
    display: none;
    height: 100%;
    position: fixed;
    width: 100%;
    z-index: 98;
}
.gnav__wrap{
    align-items:center;
    display: flex;
    height: 100%;
    justify-content: center;
    position: absolute;
    width: 100%;
}
.gnav__menu{
    display: flex;
    width: 100%;
    height: 100%;
}
.gnav__menu__item{
    width: 33%;
    height: 100%;
    overflow: hidden;
    position: relative;
}
/*背景壁紙に関するcss*/
.gnav__menu__background{
    width: 100%;
    height: 100%;
    background-size: cover;
    transform: scale(1);
    transition: .3s ease-in-out;
    opacity: 0.8;
}
/*和洋中の文字に関するcss*/
.gnav__menu__item a{
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 8rem;
    text-decoration: none;
    position: absolute;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}
.gnav__menu__item a:hover +.gnav__menu__background{
    color: #666;
    transform: scale(1.2);
}

/* ロゴに関するcss */
h1{
    display: flex;
    align-content: center;
    justify-content: center;
    width: 100%;
    font-size: 5rem;
    padding: 1% 0 2% 0;
}
h1 a{
    text-decoration: none;
    color: #474350;
    cursor: pointer;
}
.initial {
    color: #FF5E5B;
}
.space{
    margin: 0 1% 0 0;
}

/* メインコンテンツ */
/* メインコンテンツ＿トップ */
.food{
    width: 100%;
    text-align: center;
    font-size: 2rem;
    padding: 10% 0;
    background-color: #FCFFEB;
}
.food_category{
    width: 100%;
    text-align: center;
    font-size: 3rem;
    padding: 8% 0;
    background-color: #FFE693;
}
.swiper-slide .more{
    width: 100%;
    text-align: center;
    padding: 8% 0;
    background-color: #474350;
    cursor: pointer;
}
.swiper-slide .more a {
    text-decoration: none;
    color: #fff;
    font-size: 2rem;
}
/* メインコンテンツ＿料理ページ */
#main_cont{
    display: flex;
    width: 90%;
    height: 100%;
    padding: 0 5%;
}
/* left_cont */
#left_cont{
    width: 40%;
    height: 100%;
    overflow: hidden;
    margin: auto 0;
}

/* right_cont */
#right_cont{
    width: 60%;
    overflow: hidden;
    padding: 0 0 0 5%;
    margin: auto 0;
}
.food_title{
    font-size: 3rem;
    padding: 0 0 3% 0;
}
.food_genre{
    font-size: 2rem;
    padding: 0 0 2% 3%;
}
.food_review{
    font-size: 2rem;
    padding: 0 0 2% 3%;
    line-height: 2.5rem;
    letter-spacing: 0.3rem;
}
.food_price{
    font-size: 3rem;
    padding: 0 0 2% 0;
    display: flex;
    justify-content: flex-end;
    font-weight: bold;
}
.shop_url{
    font-size: 2rem;
    display: flex;
    justify-content: center;
}

.square_btn{
    display: inline-block;
    position: relative;
    padding: 0.5em 1.4em;
    text-decoration: none;
    background: #474350;/*ボタン色*/
    color: #FFF;
    border-bottom: solid 5px #000;/*ボタン色より暗めに*/
    border-right: solid 5px #000;/*ボタン色より暗めに*/
    border-radius: 10px;
}
.square_btn:before{    
    content: " ";
    position: absolute;
    bottom: -5px;
    left: -1px;
    width: 0;
    height: 0;
    border-width: 0 6px 6px 0px;
    border-style: solid;
    border-color: transparent;
    border-bottom-color: #FFF;
}
.square_btn:after{   
    content: " ";
    position: absolute;
    top: -1px;
    right: -5px;
    width: 0;
    height: 0;
    border-width: 0px 6px 6px 0px;
    border-style: solid;
    border-color: #FFF;
    border-bottom-color: transparent;
}
.square_btn:hover{ /*ボタンを押したとき*/
    border:none;
    -ms-transform: translate(6px,6px);
    -webkit-transform: translate(6px,6px);
    transform: translate(6px,6px);
}

.square_btn:active:after,.square_btn:active:before {
    content: none;/*ボタンを押すと線が消える*/
}
/* フッター */
.dummy_pic{
    display: flex;
    justify-content: center;
    padding: 1% 0 0 0;
    cursor: not-allowed;
}
.dummy_pic img {
    width: 5%;
    height: 5%;
    padding: 0 5%;
    transition: all 1s ease;
}
.dummy_pic img:hover {
    animation: hoverShake 0.15s linear 3;
    opacity: 0.8;
}
/* 揺れるcss */
@keyframes hoverShake {
    0% {transform: skew(0deg,0deg);}
    25% {transform: skew(5deg, 5deg);}
    75% {transform: skew(-5deg, -5deg);}
    100% {transform: skew(0deg,0deg);}
}
.copyright {
    font-size: 2rem;
    text-align: center;
    width: 100%;
    padding: 1% 0;
}
