@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap');

/* **ソートリスト**
1__全体設定
2__TOP設定
3__下層設定
4__CSSハック
5__プラグイン制御
6__アニメーション
*/

/*============================
==============================
==============================
==============================
#1__全体設定
============================*/
:root {font-size: 62.5%;}
/* -基本設定- */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

button {
  padding: 0;
  border: none;
  outline: none;
  background-color: transparent;
  cursor: pointer;
  appearance: none;
}

.pc {}

/* .c-tab {display: none;} */
/* .sp {display: none !important;} */

a {
  color: #333;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
text-decoration: none;}

a:hover {
  opacity: 0.8;
}

main {
  /* overflow: hidden; */
}

body {
min-width: 1060px;line-height:1.5;font-size:16px;position: relative;color: #333;font-weight: 500;
font-family: "Zen Kaku Gothic New", sans-serif;
font-weight: 500;
}
.top_section {
  overflow: hidden;
}
.section_inner {
  position: relative;
  /* padding-top: 0; */
  z-index: 1;
  /* margin-bottom: 120px; */
  z-index: 1;
  max-width: 120rem;
  margin: auto;
  padding: 3rem 0 8rem;
  
}
.section_inner.-full {
  max-width: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}


body {
  /* background: #FAF5E0;
  padding: 100px 0; */
}

/* -共通クラス(title)- */
.section_heading {
  position: relative;
text-align: center;margin-bottom: 50px;}

.section_heading > img {
  
}

/*==============================
header
============================*/
header{background:#f1eee6;border-bottom:2px solid #c2c2bd;}
.header_inner {display: flex;max-width: 120rem;margin: auto;justify-content: space-between;align-items: center;height:7rem;}
header .logo{width:7.5rem;}
header nav{}
header nav ul{display:flex;}
header nav ul li{border-left:1px solid #727171;}
header nav ul li:last-child{border-right:1px solid #727171;}
header nav ul li a{display:block;font-size:1.5rem;padding:0 1.5rem;line-height:2rem;}

/*==============================
メインビジュアル
============================*/

.main_copy{text-align:center;padding:3rem 0 0;}
.main_copy h1{font-size:4.4rem;font-weight:600;letter-spacing:2.5px;line-height:1.1;color:#ea781e;display:table;margin:0 auto 2rem;}
.main_copy .sub_copy{font-size:2.2rem;letter-spacing: 2px;display:table;margin:0 auto ;}
.main_copy .sub_copy span,
.main_copy h1 span{position:relative;display:block;}
.main_copy .sub_copy span:before,
.main_copy h1 span:before{content:"";display:block;width:100%;height:100%;background:#FFF;position:absolute;right:0;top:0;transition:all 1.5s;}

body.on .main_copy .sub_copy span:before,
body.on .main_copy h1 span:before{width:0;}
/*==============================
メニュー
============================*/

.main_menu{box-sizing: border-box;position:relative;padding-top: 5rem;margin-top: 13rem;border-bottom:1px solid #000;padding-bottom:5rem;margin-bottom:2rem;}
.main_menu .bg_top{position:absolute;top:-10rem;left:0;width:100%;height: 10rem;background:url(../img/main_bg_top.png) center center repeat-x;background-size:cover;}
.main_menu .bg_bottom{position:absolute;bottom:-3rem;left:0;width:100%;height: 11rem;background:url(../img/main_bg_bottom.png) center center repeat-x;background-size:contain;}
.menu_list{max-width:95rem;margin:0 auto 2rem auto;}
.menu_list ul{display: flex;flex-wrap:wrap;justify-content: center;align-items: end;}
.menu_list ul li{width:27.6rem;margin:0 1.3rem 3rem;}
.menu_list ul li .copy{font-weight:bold;font-size:1.6rem;background:#EA781E;color:#FFF;text-align: center;line-height:3.3rem;font-weight:500;}
.menu_list ul li .text{text-align: center;font-size:1.7rem;padding:1rem 0 1rem;line-height:1.3;min-height:5rem;display: flex;align-items: center;justify-content: center;background:#fcf6cd;font-weight:bold;}
.menu_list ul li .img{background:#FFF;/*border-radius:5px;*/overflow: hidden;text-align:center;}
.menu_list ul li.bento{box-shadow:3px 3px 10px rgba(0,0,0,0.2);border-radius:8px;overflow:hidden;}
.menu_list ul li.mealkit .img{min-height:13rem;display: flex;align-items: center;justify-content: center;box-shadow:3px 3px 10px rgba(0,0,0,0.2);}
.menu_list ul li.mealkit .img picture{max-height:11.4rem;}
.menu_list ul li picture{transition:all 0.3s;display: block;}
.menu_list ul li:hover picture{transform:scale(1.1);}
.menu_title{text-align:center;font-size:2.5rem;font-weight:600;letter-spacing: 2px;color:#ea781e;margin:0 auto 4rem;position:relative;}
.menu_title span{position:relative;z-index:1;display:table;background:#fff;margin:0 auto;padding:0 1rem 0 1.2rem;}
.menu_title.-border:before{content:"";display:block;background:url(../img/menu_title_border.png) center center repeat-x;width:100%;height:100%;position:absolute;left:0;bottom: -2rem;background-size: 1rem;pointer-events:none;z-index:0;}
.menu_title.-border2:before{content:"";display:block;background:url(../img/menu_title_border.png) center center repeat-x;width:100%;height:100%;position:absolute;left:0;bottom: 0;background-size: 1rem;pointer-events:none;z-index:0;}


.menu_list.-d2 ul li{background:#EA781E;border-radius:8px;overflow:hidden;box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.2);}
.menu_list.-d2 ul li .copy{background:#FFF;margin:0.5rem 0.5rem 0 0.5rem;color:#EA781E;border-radius:8px;height:5rem;display:flex;align-items: center;justify-content: center;line-height:1.2;font-size:1.6rem;}
.menu_list.-d2 ul li .text{background:none;color:#FFF;font-weight:bold;font-size:1.7rem;min-height:2.5rem;line-height: 1.2;}

.menu_list.-d3 ul li{background:#EA781E;border-radius:8px;overflow:hidden;box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.2);}
.menu_list.-d3 ul li .copy{background:#EA781E;margin:0.5rem 0.5rem 0 0.5rem;color:#fff;border-radius:8px;height:2.5rem;display:flex;align-items: center;justify-content: center;line-height:1.2;font-size:1.6rem;padding-bottom:0.4rem;}
.menu_list.-d3 ul li .text{background:#FFF;color:#000;font-weight:500;font-size:1.7rem;min-height:5.5rem;line-height: 1.2;padding:0;}

@media screen and (min-width: 47.9688em) {
/*.menu_list ul{justify-content: flex-start;}*/
}
@media screen and (max-width: 47.9688em) {
.menu_list ul li .copy{font-weight:bold;font-size:1.4rem;}
.car_left_to_right{top:9.7rem;}
.menu_list ul li.-center{width:70%;}
.main_menu .bg_top{background-size:cover;height: 7.5rem;top:-7.5rem}
.main_menu .bg_bottom{background-size:cover;height: 7.5rem;}
}
.car_left_to_right{top:15rem;}
.menu_list.-d3 ul li .copy{padding-bottom:0.6rem;}

/*ヒルナンデス対応*/
.menu_list ul li .bnr{width:90%;margin:0 auto;height: 7rem;}
/*.menu_list ul{transform: scale(0.9);transform-origin: top center;}*/
@media screen and (max-width: 47.9688em) {
.menu_list ul li .bnr{height:auto;width: 17rem;}
.car_left_to_right{top: 12.7rem;}
}


.main_description{text-align:center;padding:4rem 0 6rem;font-size:1.8rem;line-height:2;font-weight:400;}

.car_left_to_right{position: absolute;left: 0;top: -3.5rem;width:100%;overflow: hidden;height:4.5rem;}
.car_right_to_left{position: absolute;right: 0;bottom: -4.5rem;width:100%;overflow: hidden;height:4.5rem;}
.car_left_to_right img{width: 6rem;position:absolute;top:0;right:0;animation:infinity-scroll-left 25s infinite linear 0.5s both;}
.car_right_to_left img{width: 6rem;position:absolute;top:0;bottom:0;animation:infinity-scroll-right 25s infinite linear 0.5s both;}
@keyframes infinity-scroll-left {
  from {
    left:-10%;
  }
    to {
    left:120%;
  }
}
  @keyframes infinity-scroll-right {
    from {
      right:-20%;
    }
      to {
      right:120%;
    }
}


/*==============================
footer
============================*/
footer{background:#f1eee6;}
.footer{padding-bottom: 5rem;} 
.footer_inner{max-width: 120rem;margin: auto;margin-bottom: 4rem;padding:7.5rem 0  4rem 0;}
.footer_logo {}
.footer_nav {display: flex;justify-content: space-between;max-width: 90rem;margin: auto;}
.footer_column {}
.copyright{background:#FFF;text-align:center;padding:2rem 0;border-top:2px solid #c2c2bd;}
.copyright img{width:18rem;}
.copyright p{font-size:1.1rem;}
.footer_list {}
.footer_list li{font-size: 1.4rem;}
.footer_list li + li {margin-top: 1.3rem;}
.footer_list li a{display:block;position:relative;padding-left: 1.5rem;}
.footer_list li a:before{content:"";position:absolute;display: block;border-top:1px solid #333;border-right:1px solid #333;transform:translate(-50%,-50%) rotate(45deg);left:0;top:50%;width:0.75rem;height:0.75rem;}
.footer_list > a{}

.company_logo{max-width: 305px;margin: 0 auto 10px;display: block;}
.company_logo > img{}
.footer_bottom{}
.footer_bottom .copyright{
  text-align:center;
font-size: 12px;letter-spacing: -0.02em;}

