@charset "utf-8";

/*----------------------------------------------------------------------------------------------------

  Menu Parts / メニュー・価格の設定

----------------------------------------------------------------------------------------------------　*/

main .menu{
  width: 100%;
  margin: 100px 0px 0px;
  padding: 80px 0px;
  background: #f9f9f9;
}



/*
  おすすめメニュー（画像無しパターン）
*/

main .menu .recommend{
  width: 1000px;
  margin: 70px auto 0px;
}

main .menu .recommend h3{
  font-size: 2.2rem;
}

main .menu .recommend .recbox{
  display: flex;
  margin: 30px 0px 0px;
  border: 1px #dfdfdf solid;
  border-radius: 3px;
  background: #fff;
  box-shadow: 7px 7px 0px 0px #dfdfdf;
}

main .menu .recommend .recbox .recbox-title{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30%;
  border-right: 1px #dfdfdf solid;
  background: #f3f3f3;
}

main .menu .recommend .recbox .recbox-title h4{
  font-size: 2.2rem;
  line-height: 1.4;
}

main .menu .recommend .recbox .recbox-title h4 span{
  display: block;
  color: #f39600;
  font-size: 1.6rem;
}

main .menu .recommend .recbox .recbox-text{
  width: 70%;
  margin: 0px;
  padding: 15px 0px;
  text-align: left;
}

main .menu .recommend .recbox .recbox-text p{
  margin: 10px 20px 0px;
  font-size: 1.6rem;
}


@media only screen and ( max-width: 1019px ){
  main .menu .recommend{
    width: auto;
    margin: 70px 0px 0px;
  }

  main .menu .recommend .recbox .recbox-text{
    padding: 5px 0px 15px;
  }

  main .menu .recommend .recbox .recbox-text p{
    margin: 15px 20px 0px;
    font-size: 1.5rem;
  }

  main .menu .recommend .recbox .recbox-text p br{
    display: none;
  }
}

@media only screen and ( max-width: 640px ){
  main .menu .recommend h3{
    font-size: 2.0rem;
  }

  main .menu .recommend .recbox{
    flex-direction: column;
  }

  main .menu .recommend .recbox .recbox-title{
    width: 100%;
    padding: 10px 0px;
    border-bottom: 1px #dfdfdf solid;
  }

  main .menu .recommend .recbox .recbox-title h4{
    font-size: 1.8rem;
  }

  main .menu .recommend .recbox .recbox-title h4 span{
    margin: 2px 7.5px 0px 0px;
    font-size: 1.6rem;
  }

  main .menu .recommend .recbox .recbox-text{
    width: 100%;
  }
}


/*
  おすすめメニュー（画像あり）
*/

main .menu .recommend2{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 1000px;
  margin: 100px auto 0px;
}

main .menu .recommend2 h3{
  width: 100%;
  font-size: 2.2rem;
}

main .menu .recommend2 .recbox{
  position: relative;
  width: 49%;
  margin: 30px 0px 0px;
  padding: 0px 0px 20px;
  border: 1px #dfdfdf solid;
  border-radius: 3px;
  background: #fff;
  box-shadow: 5px 5px 0px 0px #dfdfdf;
}

main .menu .recommend2 .recbox h4{
  position: absolute;
  width: 60%;
  margin: -60px 20% 0px;
  padding: 10px 0px;
  font-size: 2.2rem;
  line-height: 1.4;
  border-radius: 5px 5px 0px 0px;
  background: #fff;
  z-index: 100;
}

main .menu .recommend2 .recbox h4 span{
  display: block;
  color: #f39600;
  font-size: 1.6rem;
}

main .menu .recommend2 .recbox p{
  margin: 10px 20px 0px;
  font-size: 1.6rem;
  text-align: left;
}

main .menu .recommend2 .recbox p:first-of-type{
  margin: 30px 20px 0px;
}

main .menu .recommend2 .recbox figure img{
  width: 100%;
  height: auto;
}


@media only screen and ( max-width: 1019px ){
  main .menu .recommend2{
    width: auto;
    margin: 100px 0px 0px;
  }

  main .menu .recommend2 .recbox{
    width: 48.5%;
  }

  main .menu .recommend2 .recbox h4{
    width: 70%;
    margin: -50px 15% 0px;
    padding: 7.5px 0px;
    font-size: 2.0rem;
  }

  main .menu .recommend2 .recbox p{
    font-size: 1.5rem;
  }

  main .menu .recommend2 .recbox p:first-of-type{
    margin: 25px 20px 0px;
  }
}


@media only screen and ( max-width: 640px ){
  main .menu .recommend2{
    flex-direction: column;
  }

  main .menu .recommend2 h3{
    width: 100%;
    font-size: 2.2rem;
  }

  main .menu .recommend2 .recbox{
    width: 100%;
  }
}


/*
  メニュー・価格
*/

main .menu .menu-box{
  display: flex;
  flex-wrap: wrap;
  width: 1000px;
  margin: 0px auto;
  text-align: left;
}

main .menu .menu-box .menu-left,
main .menu .menu-box .menu-r{
  width: 45%;
  margin: 0px;
}

main .menu .menu-box .menu-left{
  margin-right: 10%;
}

main .menu .menu-box .item{
  margin: 0px;
}

main .menu .menu-box .item h3{
  margin: 70px 0px 30px;
  font-size: 2.0rem;
}

main .menu .menu-box .item dl{
  display :flex;
  margin: 10px 0px 0px;
  padding: 0px 10px 10px;
  border-bottom: 1px #dfdfdf solid;
}

main .menu .menu-box .item dl:last-of-type{
  border-bottom: 0;
}

main .menu .menu-box .item dl dt{
  margin-right: auto;
}


@media only screen and ( max-width: 1019px ){
  main .menu{
    width: auto;
    margin: 70px 0px 0px;
    padding: 30px 25px 70px;
  }

  main .menu .menu-box{
    flex-direction: column;
    width: auto;
    margin: 0px;
    text-align: left;
  }

  main .menu .menu-box .menu-left,
  main .menu .menu-box .menu-r{
    width: 100%;
  }

  main .menu .menu-box .menu-left{
    margin-right: 0;
  }

  main .menu .menu-box .item h3{
    margin: 50px 0px 30px;
  }
}


@media only screen and ( max-width: 640px ){
  main .menu{
    margin: 50px 0px 0px;
    padding: 30px 15px;
  }

  main .menu .menu-box .item h3{
    font-size: 1.8rem;
  }

  main .menu .menu-box .item dl dt{
    font-size: 1.5rem;
  }

}