@charset "utf-8";
/* CSS Document */

/*------------------------------------------------------------------------
INDEX
--------------------------------------------------------------------------*/

h3 {
  text-align: center;
}
main img {
  max-width: 100%;
  vertical-align: bottom;
  width: auto;
  height: auto;
}

/*------------------
メインビジュアル
--------------------*/
#mainv {
  width: 100%;
  text-align: center;
}
#mainv img {
  width: 100%;
}
#jagabee .gnavi {
  padding-bottom: 4rem;
}

/*------------------
  バナーエリア
--------------------*/
#bnr_area {
  padding: 3rem 0 5rem 0;
  text-align: center;
  position:relative;
  margin-top: 4rem;
}

#bnr_area h3{
  position:absolute;
  left: 50%;
  top: -2.2vw;
  transform: translateX(-50%);
  z-index:10;
  max-width:15vw;
}

#bnr_area .inner {
  background-image: url('../img/top/bnrarea_left.png'), url('../img/top/bnrarea_right.png'),
  url('../img/top/bnrarea_top.png'),
   url('../img/top/bnrarea_top.png'),
  url('../img/top/bnrarea_bg.jpg');
background-position:
    left,
    right,
  top,
  bottom;
  background-repeat: no-repeat, no-repeat, repeat-x,repeat-x,repeat;
  background-size:contain,contain,auto,auto,cover;
  text-align: center;
  padding: 25px 45px;
  display: inline-block;
  max-width:1570px;
}

#bnr_area .cp_bnr {
  display: flex;
  justify-content:center;
  padding:2.7vw 0;
  gap:0 0.5vw;
}

#bnr_area .cp_bnr a{
  display:block;
background: url('../img/top/bnr_bg.png') no-repeat;
  background-size:contain;
  padding:0.5vw;
  box-sizing: border-box;
}

#bnr_area .cp_bnr a img{
/*max-width: 334px;*/
  max-width: 400px;
  width: 100%;
}

/*------------------
15周年
--------------------*/
#anniv {
  background: url('../img/top/15th_bg.jpg');
  padding: 3rem 0 3rem 0;
  border-top: solid 10px #8db53a;
  border-bottom: solid 10px #8db53a;
  text-align: center;
}

#anniv .inner {
  max-width: 1150px;
  text-align: center;
  line-height: 1.8;
  font-size: 3.2rem;
  padding: 1vw !important;
  font-weight: bold;
  color: #481600;
}

#anniv .cp_bnr {
  display: flex;
  justify-content:center;
}




/*------------------
ムーミンコラボ
--------------------*/
#project {
  padding: 10rem 0;
  font-family: 'Kiwi Maru', serif;
  font-weight: 500;
  color: #2f5b8b;
  background-color: #f7f5eb;
}
#project .project_ttl {
  color: #2f5b8b;
  font-family: 'Kiwi Maru', serif;
  font-size: 4.2rem;
  text-align: center;
}
#project .project_logo {
  max-width: 531px;
  margin: 2rem auto 0;
}
#project .project_wrap {
  margin: 4rem auto 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#project .img_area {
  width: 50%;
}
#project .img_area a {
  display: inline-block;
}
#project .img_area .btnimg {
  margin-top: 2rem;
  width: 100%;
  text-align: center;
}
#project .img_area .btnimg img {
  max-width: 300px;
}
#project .txt_area {
  width: 50%;
  padding: 0 3%;
}
#project .project_ttl_sub {
  color: #2f5b8b;
  font-family: 'Kiwi Maru', serif;
  font-size: 3rem;
  text-align: center;
  padding: 0.5em 0;
  border-top: 2px dashed #2f5b8b;
  border-bottom: 2px dashed #2f5b8b;
}
#project .project_ttl_sub span {
  color: #5faa31;
}
#project .project_txt {
  font-size: 2.2rem;
  line-height: 1.8;
  text-align: center;
  margin-top: 1em;
}
#project .project_box {
  width: 90%;
  margin: 2rem auto 0;
  padding: 3rem;
  background-color: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#project .box_ttl {
  font-size: 1.8rem;
  width: 90%;
  margin: 2rem auto 0;
  border-bottom: 1px solid #2f5b8b;
}

#project .project_box .box_img {
  width: 33%;
}
#project .project_box .box_txt_area {
  width: 60%;
  position: relative;
}
#project .project_box .box_txt {
  font-size: 1.6rem;
  line-height: 1.3;
  /*margin-top: 1em;*/
}
#project .project_box .box_txt img{
    position: absolute;
    /* top: -30%; */
    right: -1em;
    transform: translateY(-100%);
}


#project .project_box .btnimg {
  display: inline-block;
  max-width: 15rem;
  margin: 1em 0 0;
}

/*------------------
こだわり
--------------------*/
#kodawari {
  background-image: url('../img/top/kodawari_bg.png'),url('../img/top/bg_green.png');
  background-position:top,top;
  background-repeat:no-repeat,repeat;
  padding: 20rem 0 6rem 0;
}
#kodawari h3 {
  margin-bottom: 9rem;
}
#kodawari .flex div {
  width: 31.131%;
}
#kodawari .flex div h4 {
  margin-bottom: 2.5em;
}
#kodawari .flex div h4 + p {
  margin-bottom: 2.5em;
}
#kodawari .flex div + img {
  width: 62%;
}
#kodawari li {
  width: 48.348%;
  background-color: #fcfae0;
  text-align: center;
  margin-bottom: 10rem;
}
#kodawari li h4 {
  margin-top: -1.7em;
  margin-bottom: 1.7em;
}
#kodawari li .text {
  margin-bottom: 1.7em;
  padding:0 2vw;
}
#kodawari li a {
  display: block;
  padding: 1.7em 0;
}

#kodawari li:last-child {
background:none;
}

#kodawari li:last-child img{
width:20rem;
margin-top:3rem;
}


/*------------------
パッケージ
--------------------*/
#package {
  background: url('../img/top/package_bg.jpg') center top no-repeat;
  background-size: cover;
  padding: 8rem 0 10rem 0;
}
#package .top {
  justify-content: flex-start;
  margin-bottom: 1em;
}
#package .top div {
  width: 44.696%;
  margin-right: 7%;
}
#package .top div h4 {
  margin-bottom: 2.5em;
}
#package .top div h4 + p {
  margin-bottom: 2.5em;
}
#package .top div + img {
  width: 26.174%;
}

#package .img_box {
  background-color: #fff;
  padding: 2%;
  padding-bottom: 0px;
}
#package .img_box ul {
  width: 105%;
  justify-content: flex-start;
}
#package .img_box ul li {
  width: 30.453%;
  margin-right: 2%;
  margin-bottom: 2%;
}
#package .caption {
  text-align: right;
  font-size: 1.4rem;
  margin-top: 0.5em;
  margin-bottom: 1.5em;
}
#package .btn {
  text-align: center;
}

/*------------------
Q&A
--------------------*/
#qa {
  background: url('../img/top/qa_bg.png') center center no-repeat;
  padding: 5rem 0 14rem 0;
  text-align: center;
}
#qa h3 {
  margin-bottom: 3em;
}
#qa h3 + p {
  margin-bottom: 3em;
}

#qa .inner {
  background: url('../img/top/qa_head.png') center top no-repeat;
  padding: 10rem 0 14rem 0;
  text-align: center;
}

/*------------------
商品情報
--------------------*/
#products {
  background: url('../img/top/product_bg.png') center 90% no-repeat;
  padding: 10rem 0 6rem 0;
  text-align: center;
}
#products h3 {
  margin-bottom: 7em;
}
#products .box {
  background-color: #fcfae0;
  position: relative;
  margin-bottom: 2.5em;
  padding-bottom: 3em;
}
#products .box h4 {
  width: 100%;
  text-align: center;
  position: absolute;
  top: -5em;
  left: 0;
  z-index: 1;
}
#products .box ul {
  justify-content: center;
}
#products .box ul li {
  width:29.131%;
  /*width: 22%;*/
  /*width: 18%;*/
  /*margin: 0 1%;*/
  margin: 0 1%;
  position: relative;
}

#products .box ul li:nth-of-type(4),#products .box ul li:nth-of-type(5){
  
   margin-top: 3%;
}


#products .box ul li p {
  font-size:1.9rem;
  /*font-size: 1vw;*/
  font-weight: bold;
  /*margin-bottom: 1em;*/
  height: 6.8rem;
  line-height: 1.4;
}
#products .box ul li p span {
  font-size: 1.3rem;
}
/*#products .box ul li .new{
  position:absolute;
  right:-2.8rem;
  top:2rem;
}*/
#products .box ul li .new {
  position: absolute;
  /*left: -2.8rem;*/
  left: -1rem;
  top: 2rem;
  /*top: 1.2rem;*/
  /*width: 30%;*/
}
#products .flex .box {
  width: 48.261%;
  padding-bottom: 2em;
}
#products .flex .box h4 {
  top: -2em;
}
#products .flex .box h4 + p {
  padding-top: 6em;
  padding-bottom: 1.5em;
}
#products .flex .box .btn {
  margin-top: 2em;
}

#products .wide_box {
  background: url('../img/top/marche_bg.jpg') 0 0 no-repeat #fcfae0;
  position: relative;
  margin-bottom: 2.5em;
  padding-bottom: 2em;
}
#products .wide_box h4 {
  width: 100%;
  text-align: center;
  position: absolute;
  top: -2em;
  left: 0;
  z-index: 1;
}

#products .wide_box .flex {
  padding: 9rem 20% 0 30%;
  justify-content: flex-start;
  background: url('../img/top/foodloss_logo.jpg') 86% 9rem no-repeat;
  position: relative;
}

#products .wide_box .flex p {
  text-align: left;
  font-weight: bold;
  font-size: 20px;
  padding-left: 4rem;
  padding-top: 1.5rem;
}

#products .wide_box .flex p span {
  font-weight: normal;
  font-size: 18px;
  display: block;
  margin-top: 0.7em;
  line-height: 1.6;
}

#products .wide_box .btn {
  width: 22%;
  position: absolute;
  left: 48%;
  top: 26.5rem;
}

@media screen and (min-width: 768px) and (max-width: 1150px) {
  #products .wide_box .flex p {
    font-size: 1.6vw;
    padding-left: 3.5vw;
  }

  #products .wide_box .flex p span {
    font-size: 1.4vw;
  }

  #products .wide_box .flex {
    background-size: 12%;
  }

  #products .wide_box .btn {
    left: 48vw;
    top: 23vw;
  }
}

/*------------------
お楽しみ
--------------------*/
#fun {
  /*background:url("../img/top/bg_green.png");*/
  padding: 10rem 0 6rem 0;
}
#fun .inner {
  max-width: 946px;
  text-align: center;
}

#fun p {
  margin-bottom: 1.5em;
}
#fun p:last-child {
  margin-bottom: 0em;
}
#fun img {
  max-width: 100%;
}

#fun h3 {
  margin: 0 auto 0;
  width: 94%;
}

#fun p {
  width: 96%;
  margin: 2.5em auto;
}

#fun ul {
  display: flex;
  display: -ms-flex;
  justify-content: center;
}

#fun ul li{
 padding:0 1%;
}

#fun ul img {
  max-width: 100%;
  height: auto;
}

@media screen and (min-width: 768px) and (max-width: 1150px) {
  #jagabee .inner {
    padding: 0 3%;
  }
  #bnr_area .inner {
    padding: 25px 45px;
  }
  
  #bnr_area h3 {
    top: -2.2vw;
    max-width: 18vw;
}
  
  #kodawari li h4 img {
    width: 70%;
  }
  #kodawari li a img {
    width: 70%;
  }
}

@media screen and (min-width: 768px) and (max-width: 1400px) {
  #anniv .cp_bnr img {
    width: auto;
    height: 12vw;
  }
}

@media screen and (max-width: 767px) {
  /*------------------------------------------------------------------------
  INDEX
  --------------------------------------------------------------------------*/
  h4 {
    text-align: center;
  }
  h4 img {
    height: 4em;
    width: auto;
  }

  /*------------------
  メインビジュアル
  --------------------*/
  #mainv h2 {
    margin-bottom: 0;
  }

  
  /*------------------
バナーエリア
--------------------*/ 
  #bnr_area {
margin-top: 2rem;  
 }  
  #bnr_area h3 {
    top: -4vw;
    max-width: 40vw;
}

#bnr_area .inner {
    background-image: url(../img/top/bnrarea_left_sp.png), url(../img/top/bnrarea_left_sp.png), url(../img/top/bnrarea_top_sp.png), url(../img/top/bnrarea_top_sp.png), url(../img/top/bnrarea_bg.jpg);
    background-position: left, right, top, bottom;
    background-repeat: repeat-y, repeat-y, repeat-x, repeat-x, repeat;
    background-size: auto, auto, auto, auto, auto;
    text-align: center;
    padding: 6vw 6vw 3vw;
    display: inline-block;
    max-width: 100%;
}  
  
  
#bnr_area .cp_bnr {
    padding: 2.7vw 0;
    gap: 0 0.5vw;
  display:block;
}  

#bnr_area .cp_bnr a {
width:100%;
    padding: 2vw;
  margin:2vw auto;
}

  #bnr_area .cp_bnr a img {
    max-width: 100%;
    width: 100%;
}
  
  
  /*------------------
15周年
--------------------*/
  #anniv {
    /*padding:3rem 3vw 3rem 3vw;*/
    padding: 2rem 3vw 2rem 3vw;
  }

  #anniv .inner {
    display: block;
    text-align: center;
    line-height: 1.8;
    font-size: 1.8rem;
    padding: 1vw !important;
    font-weight: bold;
  }
  #anniv .inner img {
    width: 60%;
    margin: 0 auto;
    display: block;
  }
  
  
  #anniv .cp_bnr {
  display: block;
}

  
  #anniv .cp_bnr img {
    margin: 3vw auto;
    display: block;
  }

  
  /*------------------
こだわり
--------------------*/
  #kodawari {
    padding: 10rem 0 1rem 0;
    background-size: 200%, auto;
  }
  #kodawari h3 {
    margin-bottom: 5rem;
  }
  #kodawari h3 img {
    width: 45%;
  }
  #kodawari .flex {
    width: 90%;
    margin: 0 auto;
  }
  #kodawari .flex div + img {
    order: 1;
    width: 100%;
  }
  #kodawari .flex div {
    order: 2;
    width: 70%;
    margin: 0 auto;
    margin-top: 3em;
  }
  #kodawari ul {
    display: block;
  }
  #kodawari li {
    width: 100%;
    margin-bottom: 4rem;
  }
  #kodawari li:last-child {
    margin-bottom: 5rem;
  }
  #kodawari li h4 {
    position: relative;
    top: -1.5em;
    margin-top: 0em;
    margin-bottom: 0em;
  }
  #kodawari li .text img {
    height: 10vw;
    width: auto;
  }
  #kodawari li a img {
    width: 70%;
  }
  
  #kodawari li:last-child {
display:none;
}

  /*------------------
パッケージ
--------------------*/
  #package {
    background: url(../img/top/package_bg.jpg) center top/cover no-repeat;
    padding: 5rem 0 5rem 0;
  }
  #package .top {
    display: block;
    margin-bottom: 1em;
  }
  #package .top div {
    width: 80%;
    margin: 0 auto;
  }
  #package .top div + img {
    display: block;
    width: 50%;
    margin: 0 auto;
  }
  #package .img_box {
    width: 90%;
    margin: 0 auto;
    box-sizing: border-box;
  }
  #package .img_box ul li {
    width: 46.7%;
  }
  #package .caption {
    width: 95%;
    font-size: 1.2rem;
  }
  #package .btn img {
    width: 60%;
  }

  /*------------------
  Q&A
  --------------------*/
  #qa {
    background: url(../img/top/qa_bg_sp.png) center center/cover no-repeat;
    padding: 19vw 0;
  }
  #qa .inner {
    width: 63%;
  }
  
  #qa .inner {
    background: none;
    padding:0 ;
    text-align: center;
}
  
  #qa h3 {
    margin-bottom: 1.5em;
  }
  #qa h3 img {
    width: 65%;
  }
  #qa h3 + p {
    margin-bottom: 1.5em;
  }

  /*------------------
  商品情報
  --------------------*/
  
  #products h3 {
    margin-bottom: 4em;
}
  
  #products {
    background: none;
    padding: 5rem 5% 0 5%;
  }
  #products h3 img {
    width: 45%;
  }  
  #products .box ul {
    display: block;
  }
  #products .box ul li {
    width: 70%;
    margin: 0 auto 3em;
  }
  #products .box {
    padding-bottom: 1px;
  }  
  #products .box h4 {
    top: -3em;
}
 
  #products .box ul li .new {
    right: -4rem;
    width: 26%;
  }
  
  
  
  #products .flex {
    display: block;
  }
  #products .flex .box {
    width: 100%;
  }
  #products .flex .box h4 + p {
    padding: 4em 10% 1.5em 10%;
  }
  #products .flex .box .btn {
    width: 70%;
    margin: 0 auto;
    margin-top: 2em;
  }

  #products .box ul li p {
    font-size: 1.9rem;
  }

  #products .wide_box {
    background: url('../img/top/marche_bg_sp.jpg') 0 5rem no-repeat #fcfae0;
    position: relative;
    margin-bottom: 2.5em;
    padding-bottom: 2em;
  }
  #products .wide_box h4 {
    width: 100%;
    text-align: center;
    position: absolute;
    top: -2em;
    left: 0;
    z-index: 1;
  }

  #products .wide_box .flex {
    width: 100%;
    margin: 0 auto 1.5em;
    padding: 64% 5% 0 5%;
    background: url(../img/top/foodloss_logo.jpg) 92% 49rem no-repeat;
    background-size: 24%;
  }

  #products .wide_box .flex img {
    width: 56%;
  }

  #products .wide_box .flex p {
    font-size: 1.8rem;
    padding-left: 0;
    padding-top: 2.5rem;
  }

  #products .wide_box .flex p span {
    font-size: 1.4rem;
  }

  #products .wide_box .btn {
    width: 70%;
    top: 0;
    left: 0;
    position: relative;
    text-align: center;
    margin: 0 auto;
  }

  /*------------------
  お楽しみ
  --------------------*/
  #fun {
    max-width: 100%;
    margin: 2rem auto 0;
    padding: 5rem 0 5rem 0;
    margin-top: 3em;
  }
  #fun p {
    width: 96%;
    margin: 1em auto;
  }
  #fun h3 img {
    width: 90%;
    margin-bottom: 1em;
  }
  #fun p + h3 img {
    width: 90%;
    margin-bottom: 0em;
    margin-top: 1em;
  }
  #fun ul {
    flex-wrap: wrap;
    justify-content: center;
    width: 66%;
    margin: 0 auto;
  }

  #fun ul li {
    margin-bottom: 1.2em;
  }
}

/*CM*/

#cm {
  
background: url(../img/top/bg_green.png);
padding: 10rem 0 6rem 0;
  
}

#cm .inner {
    max-width: 1750px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 0;
}

#cm ul{
  
 display:flex;
justify-content: center;
  flex-wrap:wrap;
  gap: 4vw;
  padding:9rem 0;
}

#cm .youtube_box {
    width: 100%;
    position: relative;
    margin: 0px auto;
}

#cm ul li{
  
width:30%;
text-align:center;
}

#cm ul li .youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}

#cm ul li .youtube iframe {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 100% !important;
    height: 100% !important;
}


#cm ul li .movie_name{
  background:#fff;
 font-weight:bold;
  border:solid 2px #2f241f;
  text-align:center;
  display:inline-block;
  margin:1.5rem auto 0 auto;
  font-size:1.1vw;
  padding:0.5rem 2rem;
}

@media screen and (max-width: 767px) {
  
  #cm {padding: 5rem 5% 0 5%;}  
  
 #cm  h3 img {
        width: 45%;
    }
  
#cm ul {
    padding: 5rem 0;
}  
  
 #cm ul li {
    width: 90%;
} 
  
#cm ul li .movie_name {
    font-size: 4vw;
    margin: 1.5rem auto 2.5rem auto;
}  
  
}


/*====================================================
RECIPE
====================================================*/
#recipe {
  background-image: url(../img/top/recipe_bg02.png), url(../img/top/recipe_bg01.png);
  background-size: auto 81.75%, cover;
  background-position: center top 15rem, center top;
  background-repeat: no-repeat;
  padding: 11.7rem 0 8.7rem;
}
#recipe .recipe__ttl {
  text-align: center;
  margin-bottom: -3.5rem;
}
#recipe .recipe__ttl_img {
  width: 63.2rem;
}
#recipe .recipe__list_wrap {
  margin-bottom: 1.2rem;
}
#recipe .recipe__item {
  width: 32.52173913%;
}
#recipe .recipe__item:nth-child(1) {
  margin-top: 1.7rem;
}
#recipe .recipe__item:nth-child(2) {
  margin-top: 7.9rem;
}
#recipe .recipe__txt {
  display: flex;
  flex-direction: column;
  text-align: center;
  gap: 3.2rem 0;
  width: fit-content;
  margin: 0 auto;
  background-color: #fff;
  padding: 4.4rem 5.4rem 3.6rem;
  align-items: center;
}
#recipe .recipe__list_note {
  padding-left: 8%;
  font-size: 1.4rem;
  position: relative;
  top: -4rem;
}
#recipe .recipe__btn_img {
  width: 30.1rem;
}
@media screen and (min-width: 1441px) {
  #recipe {
    background-position: center top 15rem, center;
      background-size: auto, cover;
  }
}
@media screen and (min-width: 768px) and (max-width: 1150px) {
  #recipe .recipe__list_note {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 767px) {
  #recipe {
    background-image: url(../img/top/recipe_bg_sp.jpg);
    background-size: cover;
    background-position: center top;
    padding: 7.2vw 0 61.2vw;
  }
  #recipe .recipe__list_wrap {
    margin-bottom: 6vw;
  }
  #recipe .recipe__ttl {
    margin-bottom: 8vw;
  }
  #recipe .recipe__ttl_img {
    width: 89.6vw;
  }
  #recipe .recipe__list {
    flex-direction: column;
  }
  #recipe .recipe__item {
    width: 64.26666667vw;
    position: relative;
  }
  #recipe .recipe__item:nth-child(1) {
    order: 1;
    margin-top: -36vw;
    left: -5vw;
  }
  #recipe .recipe__item:nth-child(2) {
    order: 2;
    margin-left: auto;
    margin-top: -2.6vw;
    right: 3vw;
  }
  #recipe .recipe__item:nth-child(3) {
    order: 0;
    margin-left: auto;
    right: -8vw;
  }
  #recipe .recipe__list_note {
    top: auto;
    text-align: center;
    padding-left: 0;
    font-size: 3.2vw;
    margin-top: 3.8vw;
  }
  #recipe .recipe__txt {
    padding: 8vw 7.2vw 7vw;
    gap: 7vw 0;
  }
  #recipe .recipe__txt_img {
    width: 75.33333333vw;
  }
  #recipe .recipe__btn_img {
    width: 63.2vw;
  }
}
