@charset "UTF-8";
/* body {
  font-family: "Darumadrop One", "Caveat", "Yomogi", "Noto Sans JP", sans-serif;
} */
:root {
  --header-height: clamp(60px, 16vw, 100px); /* ヘッダー高さを横幅に応じてスムーズに変化 */
}
/******************************
-------------------------------
  common styles
-------------------------------
*****************************/
body {
  width: 100%;
  color: #565151;
  background-color: #FBFBFB;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(16px, 3.7vw, 18px);
  letter-spacing: 0.1em;  /* 10%指定 */
}
a {
  display: inline-block;
  width: 100%;
  height: 100%;
}
img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* オンラインショップボタン */
.go__online {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.5em;
  font-size: clamp(14px, 1.17vw, 18px);
  padding: 0.5em 2em;
  width: 100%;
  min-width: 160px;
  max-width: 280px;
  text-align: center;
  background-color: #F6EFEF;
  cursor: pointer;
  border: 1px solid #a4a4a4;
  box-shadow: 0 2px 4px rgba(0,0,0,0.3);
}
/* もっと見るボタン */
.more__button {
  width: 100%;
  max-width: 500px;
  min-height: 55px;
  display: block;
  cursor: pointer;
  text-align: center;
  border: 1px solid #333333;
  font-size: clamp(16px, 4.5vw, 20px);
  letter-spacing: 0.1em;
  margin: 0 auto;
}
/******************************
-------------------------------
  SP styles
-------------------------------
*****************************/
.title__wrap {
  text-align: center;
  margin-bottom: 35px;
}
.titleJP {
  font-family: "Darumadrop One", sans-serif;
  font-weight: 400;
  letter-spacing: 0.15em;
  font-size: clamp(28px, 6.5vw, 38px);
}
.subtitleEN {
  font-family: "Caveat", cursive;
  letter-spacing: 0.15em;
  font-size: clamp(14px, 3.2vw, 24px);
  padding-top: 5px;
}
/******************************
-------------------------------
  header section
-------------------------------
*****************************/
#header {
  width: 100%;
  height: var(--header-height);
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(251, 251, 251,0.7);
  /* background-color: #FBFBFB; */
  z-index: 99;
  border-bottom: dotted 1px #a4a4a4;
  display: flex;
  align-items: center;
}
.header__section {
  width: 92%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
}
.header__titile--container {

}
.header__title--wrap {

}
.header__section.forPC {
  display: none;
}
.header__title {
  font-family: "Darumadrop One", sans-serif;
  font-weight: 400;
  font-size: clamp(34px, 7.5vw, 46px);
  letter-spacing: 0.15em; /* 15%は0.15emに相当 */
}
.title__icon {
  display: none;
}
.title__des {
  display: none;
}
.header__menu {

}
.header__menu.forSP {
  display: block;
  width: 12%;
  max-width: 74px;
}
.header__menu.forPC {
  display: none;
}
/******************************
-------------------------------
  hamburger part
-------------------------------
*****************************/
.hamburger__container {

}
/* ハンバーガーボタン */
.hamburger {
  width: 100%;
  cursor: pointer;
}
.hamburger__icon {
  width: 100%;
  margin: 0 auto;
}
.hamburger__icon img {
  aspect-ratio: 500 / 410;
}
.hamburger__label {
  width: 100%;
  font-family: "Yomogi", cursive;
  font-size: clamp(12px, 3.2vw, 20px);
  font-weight: 400;
  font-style: normal;
  display: inline-block;
  text-align: center;
}
/* メニュー全体 */
.hamburger__menu {
  position: fixed;
  top: 0;
  left: -78%;
  width: 78%;
  height: 100%;
  background: #fff;
  box-shadow: 2px 0 5px rgba(0,0,0,0.2);
  transition: 0.5s;
  z-index: 100;
  padding-top: 60px;
}
.hamburger__menu.active {
  left: 0;
}
.hamburger__menu ul {
  width: 92%;
  list-style: none;
  margin: 0 auto;
  padding: 0;
}
.hamburger__menu li {
  border-bottom: 1px solid #eee;
  /* position: relative; */
  min-height: 50px;
}
/* 親リンク＋三角ボタンをまとめる */
.menu__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
/* 親リンク */
.menu__item a {
  flex: 1;
  padding: 15px;
  text-decoration: none;
  color: #565151;
}
.toggle__wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 15px;
  cursor: pointer;
}
/* 三角ボタン（CSS三角形） */
.toggle__btn {
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 8px solid #333; /* 下向き三角 */
  /* cursor: pointer; */
  /* margin-right: 15px; */
  transition: transform 0.3s;
}
/* サブメニュー開閉時に回転 */
.has__sub.open .toggle__btn {
  transform: rotate(180deg); /* 上向きに回転 */
}
/* サブメニュー */
.hamburger__menu .sub__menu {
  display: none;
  flex-direction: column;
}
.hamburger__menu .sub__menu li {
  border-bottom: none; /* 子メニュー下線なし */
}
.hamburger__menu .sub__menu li a {
  display: block;
  padding-left: 30px;
  padding-top: 12px;
  padding-bottom: 12px;
  font-size: 0.9em;
  text-decoration: none;
  color: #6d6767;
}
/* width100% - ハンバーガーメニュー80% = 20%部分clickでメニュー閉じる */
.overlay {
  display: none;
  /* pointer-events: none; */
}
.overlay.active {
  display: block;
  position: fixed;
  top: var(--header-height);
  right: 0;
  width: 20%;
  height: 100%;
  background-color: transparent;
  pointer-events: auto;
  z-index: 101;
}
/******************************
-------------------------------
  main section
-------------------------------
*****************************/
#main {
  padding-top: var(--header-height);
}
/****************************************
-----------------------------------------
  +++++ index.html +++++
-----------------------------------------
****************************************/
/******************************
  top visual section
*****************************/
.top__container {
  width: 100%;
  height: calc(100vh - var(--header-height));
  display: flex;
  flex-direction: column;
  margin-bottom: 150px;
  position: relative;
}
.main__visual {
  width: 100%;
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url(../img/top-catchSP.png);
  opacity: 0.8;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.visual__txt {
  width: 68%;
  min-width: 250px;
  max-width: 350px;
  height: clamp(250px, 68vw, 350px);
  border-radius: 68%;
  background-color: rgba(251, 251,251, 0.85);
  line-height: 3.4;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 0 10px 10px rgba(251, 251, 251, 0.85);
}
.top__caution {
  width: 92%;
  font-size: clamp(10px, 2.6vw, 12px);
  padding: 5px;
  margin: 0 auto;
}
/******************************
  news section
*****************************/
.news__container {
  width: 80%;
  margin: 0 auto;
  padding-bottom: 150px;
}
.news__contents--wrap {
  width: 100%;
  margin-bottom: 50px;
}
.news__area {
  padding: 15px 0;
  border-top: 1px dotted #333333;
  border-bottom: 1px dotted #333333;
}
.news__img {
  width: 100%;
  /* height: clamp(195px, 52vw, 430px); */
  margin-bottom: 5px;
}
.news__img img {
  width: 100%;
  height: 100%;
  aspect-ratio: 1092 / 710;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.area__title {
  font-size: clamp(18px, 4.8vw, 22px);
  letter-spacing: 0.15em;
}
.area__title a {
  display: inline-block;
  width: auto;
  padding: 0.45em 0.45em 0.45em 0;
}
.area__desc {
  display: none;
}
.area__category {
  text-align: right;
  padding-top: 5px;
}
/******************************
  products section
*****************************/
.products__container {
  width: 100%;
  background-color: #FFFBF3;
  /* padding-bottom: 150px; */
  /* margin-bottom: 60px; */
}
.products__wrap {
  width: 80%;
  margin: 0 auto;
  padding: 60px 0 150px;
  /* padding-bottom: 150px; */
}
.products__title {
  /* padding-top: 60px; */
}
.products__pic {
  width: 70%;
  max-width: 350px;
  margin: 0 auto;
  padding-bottom: 30px;
}
.products__pic img {
  aspect-ratio: 1 / 1;
  object-fit: contain;
}
.products__contents--wrap {
  width: 100%;
}
.tabs__wrap {
  width: 100%;
}
/* PC用 */
.item__contents--wrap {
  display: none;
}
/* タブ部分 */
#tabs {
  width: 100%;
  margin-bottom: 50px;
}
#tabs .tabs-nav {
  height: clamp(60px, 16vw, 80px);
  border-bottom: none;
  display: flex;
  gap: 2px;
}
#tabs .tabs-nav li {
  width: calc((100% - 2px) / 2);
  padding: 0;
  margin: 0 0 2px 0;
  border-bottom: none;
  font-family: "Caveat", cursive;
  letter-spacing: 0.15em;
  font-size: clamp(30px, 8vw, 36px);
  border-radius: 10px 10px 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
#tabs .tabs-nav li.selected {
  border: none;
  margin-bottom: 0;
}
#tabs .tabs-nav li.veggies__tab {
  background-color: rgba(119, 164, 169, 0.3);
  color: #77A4A9;
}
#tabs .tabs-nav li.fruits__tab {
  background-color: rgba(168, 125, 156, 0.3);
  color: #A87D9C;
}
/* タブのパネル部分 */
#tabs .tabs-panel {
  padding: 50px 0;
  display: flex;
  flex-direction: column;
  gap: 25px;
  border-radius: 0 0 10px 10px;
}
#tabs .tabs-panel.veggies__panel {
  background-color: rgba(119, 164, 169, 0.3);
}
#tabs .tabs-panel.fruits__panel {
  background-color: rgba(168, 125, 156, 0.3);
}
.tabs-panel .tab__img {
  width: 82%;
  min-width: 250px;
  max-width: 400px;
  aspect-ratio: 1 /1 ;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto;
  transition: transform 0.3s;
}
.tab__img.active1 {
  background-color: skyblue;
  transform: scale(1.1,1.1);
  transition: transform 1s;
}
.tab__img.active2 {
  background-color: rgb(143, 235, 135);
  transform: translateY(-5px);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.5);
  transition: transform 1s;
}
.tab__img.active3 {
  background-color: rgb(235, 225, 135);
  transform: rotate(30deg);
  transition: transform 1s;
}
.tab__img.active4 {
  background-color: rgb(235, 135, 150);
  transform: rotateY(360deg);
  transition: transform 1s;
}
.tabs-panel .tab__img img {
  object-fit: cover;
}
/******************************
  profile section
*****************************/
.profile__container {
  width: 100%;
}
.profile__wrap {
  width: 80%;
  margin: 0 auto;
  padding: 60px 0 150px;
}
.profile__img {
  margin-bottom: 35px;
}
.profile__text {
  padding-left: 5px;
}
.profile__text.profile__forPC {
  display: none;
}
.profile__address {
  margin-bottom: 40px;
}
.profile__other {
  margin-bottom: 50px;
}
.profile__address p,
.profile__other p {
  padding-bottom: 10px;
}
.profile__other p:nth-child(2) {
  padding-bottom: 2px;
}
/******************************
-------------------------------
  footer section
-------------------------------
*****************************/
#footer {
  width: 100%;
}
/******************************
  footer swiper part
*****************************/
/* swiper */
.footer__swiper {
  width: 100%;
  padding: 3px 0;
  background-color: rgba(211, 223, 210, 0.7);
  margin-bottom: 30px;
}
/* スライドの動き等速 */
.swiper-wrapper {
  transition-timing-function: linear;
}
.footer__swiper .swiper-slide {
  height: auto;
  display: flex;
  align-items: flex-end;
}
/* 画像のサイズ調整 */
.footer__swiper .swiper-slide img {
  height: auto;
  width: 100%;
}
/******************************
  footer text part
*****************************/
.footer__text--part {
  width: 80%;
  margin: 0 auto;
}
.footer__menu ul {
  display: flex;
  flex-direction: column;
}
.footer__menu--wrap {
  padding: 40px 0;
  margin-bottom: 15px;
  border-bottom: 1px solid rgba(146, 186, 142, 0.64);
}
.footer__menu--item {
  display: flex;
  justify-content: left;
  gap: 1em;
  flex-direction: column;
  margin-bottom: 0.4em;
}
.footer__menu--item a {
  align-self: flex-start;
  font-weight: bold;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.6em;
  padding: 0.6em 0.6em;
  width: auto;
}
.footer__menu--item a span {
  display: inline-block;
  width: 0.6em;
  height: 0.6em;
  border-radius: 50%;
  background-color: #77A4A9;
}
.footer__sub--menu {
  /* display: flex;  .footer__menu ul で指定済み*/
  /* flex-direction: column;  .footer__menu ul で指定済み */
  gap: 0.6em;
  margin-left: 3em;
}
.footer__sub--menu li a {
  align-self: flex-start;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.6em;
  padding: 0.6em 0.6em;
  width: auto;
}
/* footer text caution */
.footer__caution {
  font-size: clamp(10px, 2.6vw, 12px);
  margin-bottom: 20px;
}
.footer__copyright {
  font-size: clamp(10px, 2.6vw, 12px);
  text-align: center;
  margin-bottom: 20px;
}




/****************************************
-----------------------------------------
  +++++ products.html +++++ 
-----------------------------------------
****************************************/
.onsale__container {
  width: 100%;
  margin-top: 50px;
}
.onsale__wrap {

}
.onsale__top--visual {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.onsale__top--visual::after {
  content: "";
  width: 80%;
  height: 80%;
  position: absolute;
  /* top: -10%; */
  /* right: -20%; */
  right: -150px;
  background-image: url(../img/tomato-icon.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0.2;
}
.onsale__message {
  width: 80%;
  background-image: url(../img/products-material3.png);
  aspect-ratio: 700 / 540;
  background-size: contain;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 2em;
  max-width: 360px;
}
.onsale__message h2 {
  white-space: pre-line;
  color: transparent;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  /* font-size: clamp(16px, 3.7vw, 18px); */
  letter-spacing: 0.1em;  /* 10%指定 */
  /* line-height: 2rem; */
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.onsale__message h2::before {
  content: "今は、\Aこんな野菜&フルーツ\Aおいてます";
  display: block;
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  font-size: clamp(16px, 3.7vw, 18px);
  letter-spacing: 0.1em;  /* 10%指定 */
  line-height: 2rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: max-content;
}
.online__wrap {
  width: 80%;
  margin-bottom: 2em;
  text-align: center;
}
.online__wrap p {
  font-size: clamp(12px, 1.1vw, 16px);
  padding: 1em 0.5em;
}
.onsale__container .go__online {
  width: 68%;
  padding: 0.5em;
  font-size: clamp(12px, 1.1vw, 16px);
  padding: 0;
}
.onsale__caution {
  width: 80%;
  max-width: 1440px;
  font-size: clamp(10px, 2.6vw, 12px);
  margin-bottom: 1em;
}
/******************************
  onsale contents part
*****************************/
.onsale__section {
  width: 80%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 7em;
}
.onsale__contents {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 3em;
}
.onsale__card--wrap {
  width: 50%;
  max-width: 330px;
  padding: 20px 0;
  border-bottom: 1px solid #a4a4a4;
  display: flex;
  justify-content: left;
}
.onsale__contents .onsale__card--wrap:nth-of-type(2n) {
  justify-content: right;
}
.onsale__card {
  width: 96%;
  aspect-ratio: 140 / 220;
  border-radius: 20px;
  /* margin-bottom: 20px; */
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.veggies__color {
  background-color: rgba(119, 164, 169, 0.3);
}
.fruits__color {
  background-color: rgba(168, 125, 156, 0.3);
}
.card__contents {
  width: 80%;
  margin: 0 auto;
}
.card__contents .tab__img {
  aspect-ratio: 1 /1 ;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto;
  transition: transform 0.3s;
  margin-bottom: 1em;
}
.onsale__card--title {
  text-align: center;
  font-family: "Darumadrop One", sans-serif;
  font-weight: 400;
  letter-spacing: 0.15em;
  font-size: clamp(20px, 5.3vw, 32px);
  margin-bottom: 0.5em;
}
.onsale__card--text {
  display: none;
}
.card__data {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(14px, 3.7vw, 22px);
  letter-spacing: 0.1em;  /* 10%指定 */
}
.onsale__card--price {
  text-align: center;
}
.onsale__card--quantity {
  display: none;
}
/******************************
  pagination part
*****************************/
.pagination {
  max-width: 600px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-around;
}
.pagination__item--link {
  width: 1.5em;
  height: 1.5em;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  transition: all 0.15s linear;
}
.pagination__item--link.icon__wrap {
  width: 2.5em;
  height: 2.5em;
  border: 1px solid #a4a4a4;
  border-radius: 50%;
}
.pagination__item--icon {
  width: 1.5em;
}
.pagination__item--link.isActive {
  color: #cdcdcd;
  pointer-events: none;
}
.pagination__item--link:not(.isActive):hover {
  color: #cdcdcd;
}
.pagination__item--link.icon__wrap:hover {
  border: 1px solid #cdcdcd;;
}




/****************************************
-----------------------------------------
  +++++ single-product.html +++++
-----------------------------------------
****************************************/
.single__container {
  width: 100%;
  margin-top: 3em;
  margin-bottom: 7em;
}
.single__wrap {
  width: 100%;
}

.single__contents--wrap {
  width: 80%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  /* align-items: stretch; */
  align-items: start;
  gap: 2em;
  border-top: 1px dotted #333333;
  border-bottom: 1px dotted #333333;
  padding: 30px 0;
}
.single__content {
  height: 100%;
}
.single__card {
  /* width: 90%; */
  height: 100%;
  background-color: red;
}
/* single content card */

/* single image */
.single__img {

}
.main__img {
  width: 100%;
  height: auto;
  overflow: hidden;
  border-radius: 2em;
  margin-bottom: 2em;
  cursor: default;
}
.single__card img {
  aspect-ratio: 10 / 7;
}
.sub__images {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.sub__img {
  width: 20%;
  border-radius: 1em;
  overflow: hidden;
  cursor: pointer;
}
.sub__img.is-selected,
.sub__img.is-noimage {
  opacity: 0.4;
  cursor: default;
}
.sub__img:not(.is-selected):not(.is-noimage) img:hover {
  opacity: 0.4;
}

/* single descriptiion */
.single__description {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 2em;
}
.des__title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
}
.single__card--text {
  /* display: block; */
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(16px, 4.2vw, 20px);
  line-height: 2.4;
  /* background-image: linear-gradient(
    to bottom,
      transparent calc(2.4em - 1px),
      #a4a4a4 calc(2.4em - 1px),
      #a4a4a4 2.4em
  ); */
  /* background-size: 100% 2.4em; */
}
.single__card--data {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(16px, 4.2vw, 20px);
  letter-spacing: 0.1em;  /* 10%指定 */
  display: flex;
  justify-content: flex-end;
}
.single__card--price {

}
.single__card--quantity {

}

/* memo part */
.single__memo {
  /* position: relative; */
}
.memo__tape {
  width: 8em;
  height: 6em;
  background-color: rgba(188, 200, 190, 0.3);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  top: 1em;
  left: 50%;
  transform: translateX(-50%) rotate(-3deg);
  z-index: 2;
}
.tape__text {
  font-family: "Darumadrop One", sans-serif;
  font-weight: 400;
  letter-spacing: 0.15em;
  font-size: clamp(30px, 2.3vw, 36px);
}
.tape__text p:nth-of-type(1) {
  color: rgba(253, 161, 161, 0.8);
  text-shadow: 2px 2px 2px #565151;
}
.tape__text p:nth-of-type(2) {
  color: #565151;
}
.memo__recipe {
  font-family: "Yomogi", sans-serif;
  font-size: clamp(14px, 3.7vw, 18px);
  color: #333333;
  letter-spacing: 0.1em;
  line-height: 2.4;
  background-color: #FFCFCF;
  border-radius: 10px;
  position: relative;
  top: -1em;
  z-index: 1;
}
.memo__recipe ul {
  width: 100%;
  padding: 1.6em;
  list-style-type: disc;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 300px;
}
.memo__recipe ul li {
  margin-left: 0.6em;
}

/* goOnline part */
.single__goOnline {
  min-height: 260px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.single__goOnline--img {
  width: 80%;
  max-width: 460px;
  position: absolute;
}
.single__goOnline--img img {
  aspect-ratio: 543 / 276;
}
.single__content .go__online {
  margin-bottom: 10%;
  width: 80%;
}

/* single pagination */
.single__button {
  /* min-width: 300px; */
  border: none;
}




/****************************************
-----------------------------------------
  +++++ news.html +++++ 
-----------------------------------------
****************************************/
#news .news__container {
  margin-top: 3em;
  margin-bottom: 7em;
  padding-bottom: 0;
}





/****************************************
-----------------------------------------
  +++++ single-article.html +++++ 
-----------------------------------------
****************************************/
.single__article--wrap {
  width: 80%;
  margin: 0 auto;
}
.article__contents--wrap {
  margin-bottom: 3em;
}
.news__title--wrap {
  margin-bottom: 1em;
}
#single__news .area__title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  font-size: clamp(18px, 4.8vw, 24px);
}
#single__news .area__category {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(16px, 4.2vw, 20px);
}
#single__news .news__img {
  margin-bottom: 1em;
}
#single__news .area__desc {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(16px, 4.2vw, 20px);
  line-height: 2.4;
}




/****************************************
-----------------------------------------
  +++++ about.html +++++ 
-----------------------------------------
****************************************/
.about__container {
  width: 100%;
  margin-top: 3em;
  margin-bottom: 7em;
}
.about__wrap {
  width: 80%;
  margin: 0 auto;
}
.about__contents--wrap {

}
.about__card {
  margin-bottom: 2.4em;
}
.about__title--wrap {
  width: 100%;
  max-width: 850px;
  margin-bottom: 1.2em;
}
.about__card--title {
  color: #565151;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  font-size: clamp(16px, 3.7vw, 18px);
  letter-spacing: 0.1em;
  line-height: 1.8;
}
.about__card--title:nth-of-type(1) {
  width: 100%;
  text-align: left;
}
.about__card--title:nth-of-type(2) {
  width: 100%;
  text-align: right;
}
.about__stc--wrap {
  width: 100%;
  margin: 0 auto;
}
.about__stc {
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(16px, 3.7vw, 18px);
  letter-spacing: 0.1em;
  line-height: 2.4;
  margin-bottom: 2.4em;
}
/* Q and A part */
.question__container {
  margin-bottom: 7em;
}
.question__contents--wrap {
  width: 80%;
  margin: 0 auto;
}
/* アコーディオン */
.accordion {
    /* max-width: 500px; */
    margin-bottom: 7px;
    border: 1px solid #565151;
    border-radius: 5px;
}
.accordion summary {
    display: flex;
    justify-content: space-between;
    /* align-items: center; */
    flex-direction: column;
    position: relative;
    padding: 2em 2em;
    color: #333333;
    cursor: pointer;
}
.accordion summary::-webkit-details-marker {
  display: none;
}
.accordion summary span {
  font-weight: 600;
}
.accordion summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 10px;
    height: 10px;
    margin-left: 10px;
    border-bottom: 1px solid #333333;
    border-right: 1px solid #333333;
    content: '';
    position: absolute;
    bottom: 1em;
    right: 1em;
    transition: transform .3s;
}
.accordion[open] summary::after {
    transform: rotate(225deg);
}
.accordion p {
    /* transform: translateY(-10px); */
    opacity: 0;
    margin: 0;
    padding: 1.5em 2em 2em;
    color: #333333;
    background-color: rgba(146, 186, 142, 0.64);
    transition: transform .5s, opacity .5s;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    line-height: 1.6;
}
.accordion p span {
  font-weight: 600;
}
.accordion[open] p {
    transform: none;
    opacity: 1;
}



  /****************************************
  -----------------------------------------
            responsive
  -----------------------------------------
  ****************************************/

  /******************************
  -------------------------------
    TB画面 for 横幅 600px〜
  -------------------------------
  *****************************/
  @media screen and (min-width: 600px) {
    /****************************************
    -----------------------------------------
      +++++ about.html +++++ 
    -----------------------------------------
    ****************************************/
    .about__card--title:nth-of-type(1) {
      /* width: 60%; */
      width: 55%;
      text-align: right;
      margin-right: auto;
    }
    .about__card--title:nth-of-type(2) {
      /* width: 60%; */
      width: 55%;
      text-align: left;
      margin-left: auto;
    }
  }

  /******************************
  -------------------------------
    TB画面 for 横幅 826px〜
  -------------------------------
  *****************************/
  @media screen and (min-width: 826px) {
    /****************************************
    -----------------------------------------
      +++++  products.html +++++ 
    -----------------------------------------
    ****************************************/
    .onsale__message {
      width: 50%;
      max-width: 800px;
    }
    .onsale__message h2::before {
      font-size: clamp(18px, 1.8vw, 26px);
      line-height: 2.4em;
    }
    .onsale__caution {
      padding-left: 1.5em;
    }
    .onsale__card--wrap {
      width: 33.33%;
      max-width: 400px;
    }
    .onsale__card {
      width: 90%;
    }
    .onsale__card--title {
      font-size: clamp(30px, 2.6vw, 40px);
    }
    .onsale__contents .onsale__card--wrap,
    .onsale__contents .onsale__card--wrap:nth-of-type(2n) {
      justify-content: center;
    }
    .footer__swiper .swiper-slide img {
      width: 75%;
    }




    /****************************************
    -----------------------------------------
      +++++ about.html +++++ 
    -----------------------------------------
    ****************************************/
    .about__img .swiper-slide img {
        width: 100%;
    }


  }









  /******************************
  -------------------------------
    PC画面 for 横幅 1024px〜
  -------------------------------
  *****************************/
  @media screen and (min-width: 1024px) {
      :root {
        /* --header-height: clamp(120px, 10.2vw, 160px); */
        --header-height: clamp(100px, 9.5vw, 130px);
      }
    /******************************
    -------------------------------
      common styles
    -------------------------------
    *****************************/
    body {
      font-size: clamp(14px, 1.17vw, 18px);
    }
    .title__wrap {
      max-width: 1800px;
      margin: 0 auto 3em;
    }
    /******************************
    -------------------------------
      PC styles
    -------------------------------
    *****************************/
    .titleJP {
      font-size: clamp(42px, 3.5vw, 52px);
    }
    .subtitleEN {
      font-size: clamp(22px, 1.75vw, 26px);
      padding-top: 10px;
    }
    /******************************
    -------------------------------
      PC header section
    -------------------------------
    *****************************/
    #header {

    }
    .header__section {
      max-width: 1800px;
    }
    .header__section.forSP {
      display: none;
    }
    .header__section.forPC {
      width: 92%;
      display: flex;
      justify-content: space-between;
      align-items: stretch;
      margin: 0 auto;
    }
    /* ヘッダータイトルまとめ */
    .header__title--container {
      margin-right: 2%;
    }
    .header__title--wrap a{
      display: flex;
      align-items: center;
    }
    .header__title {
      font-size: clamp(44px, 3.5vw, 52.8px);
      padding-right: 20px;
    }
    .title__icon {
      display: block;
      width: 12%;
      max-width: 80px;
      margin: auto 0;
    }
    .title__icon img {
      aspect-ratio: 500 / 410;
    }
    .title__des {
      display: block;
      padding-top: 10px;
    }
    /* ヘッダーコンテンツまとめ */
    .header__contents {
      text-align: right;
    }
    .forPC .go__online {
      width: 48%;
      margin-left: auto;
    }
    .header__menu.forPC {
      display: flex;
      flex-direction: column;
    }
    .header__menu.forSP {
      display: none;
    }
    /******************************
      navigation part
    *****************************/
    .header__nav {
      padding-top: 25px;
    }
    .nav__menu {
      display: flex;
      gap: 3em;
    }
    .nav__menu > li {
      position: relative;
      padding-right: 20px;
    }
    .nav__menu > li > a {
      white-space: nowrap;
    }
    .nav__menu .sub__menu {
      display: none;
      position: absolute;
      top: 130%;
      left: 0;
      padding: 10px 0;
      background-color: #fff;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
      min-width: 180px;
      z-index: 102;
      text-align: left;
    }
    .nav__menu li:last-child .sub__menu {
      left: auto;
      right: 20px;
    }
    .nav__menu .sub__menu li a {
      padding: 10px 20px;
      font-size: 0.9em;
      color: #6d6767;
    }
    .nav__menu .sub__menu a:hover {
      background-color: #f5f5f5;
    }
    .nav__menu > li:hover > .sub__menu {
      display: block;
    }
    /******************************
    -------------------------------
      PC main section
    -------------------------------
    *****************************/

    /****************************************
    -----------------------------------------
      +++++ index.html +++++
    -----------------------------------------
    ****************************************/

    /******************************
      top visual section
    *****************************/
    .main__visual {
      background-image: url(../img/top-catchPC.png);
    }
    .visual__txt {
      display: none;
    }
    .top__container:after {
      content: '';
      width: 16%;
      aspect-ratio: 1 / 1;
      max-width: 300px;
      background-image: url(../img/tomato-symbol.png);
      background-size: cover;
      position: absolute;
      right: 5%;
      bottom: -5%;
    }
    /******************************
      news section
    *****************************/
    .news__area {
      padding: 50px 0;
    }
    .news__contents {
      display: flex;
      justify-content: space-between;
    }
    .news__img {
      width: 22%;
      margin-bottom: 0;
    }
    .news__text--wrap {
      width: 75%;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }
    .area__title {

    }
    .area__desc {
      display: -webkit-box; /* 特殊なレイアウトモードに切り替え */
      -webkit-box-orient: vertical; /* 縦方向に行を並べる */
      -webkit-line-clamp: 3; /* 表示する行数を指定 */
      overflow: hidden;
      line-height: 1.5em;
    }
    .area__category {
      margin-bottom: 1em;
    }

    /******************************
      products section
    *****************************/
    .products__wrap {
      width: 100%;
      position: relative;
    }
    .products__title {
      margin-bottom: 100px;
    }
    .products__pic {
      position: absolute;
      top: 3%;
      right: 3%;
      margin-bottom: 0;
      max-width: 300px;
    }
    /* スマホ用タブ部分 */
    .tabs__wrap {
      display: none;
    }
    /* PC用 */
    .item__contents--wrap {
      width: 100%;
      display: block;
      margin-bottom: 50px;
    }
    /* タブのパネル部分 */
    .items__panel {
      /* width: calc(100% - (100% - 980px) / 4); */
      width: calc(100% - (100% - 70%) / 4);
      padding: 50px 0;
      position: relative;
    }
    .items__panel.veggies__panel {
      background-color: rgba(119, 164, 169, 0.3);
      border-radius: 0 999px 999px 0;
      margin-bottom: 30px;
      padding-left: calc((100% - 70%) / 4);
    }
    .items__panel.fruits__panel {
      background-color: rgba(168, 125, 156, 0.3);
      border-radius: 999px 0 0 999px;
      margin-left: auto;
      padding-right: calc((100% - 70%) / 4);
    }
    .panel__wrap {
      width: 70%;
      display: flex;
      justify-content: space-between;
      margin: 0 auto;
    }
    .panel__text {
      font-family: "Caveat", cursive;
      letter-spacing: 0.15em;
      font-size: clamp(38px, 3.5vw, 52px);
      width: 20%;
      position: absolute;
      text-align: center;
    }
    .veggies__panel--text {
      color: #77A4A9;
      left: calc((100% - 70%) / 8);
      top: calc(100% - 50% - 0.5em);
    }
    .fruits__panel--text {
      color: #A87D9C;
      right: calc((100% - 70%) / 8);
      top: calc(100% - 50% - 0.5em);
    }
    .panel__img--wrap {
      /* width: 100%; */
      width: 90%;
      display: flex;
      justify-content: center;
      margin: 0 auto;
      gap: 4%;
    }
    .veggies__panel .panel__img--wrap {
    }
    .fruits__panel .panel__img--wrap {
    }
    .panel__img--wrap .item__img {
      width: 32%;
      min-width: 180px;
      max-width: 300px;
      aspect-ratio: 1 /1 ;
      border-radius: 50%;
      overflow: hidden;
      cursor: pointer;
    }
    .panel__img--wrap .item__img img {
      object-fit: cover;
    }
    /* パネルのホバーアニメーションをランダムで変える */
    .item__img {
      transition: transform 0.3s;
    }
    .item__img.active1 {
      background-color: skyblue;
      transform: scale(1.1,1.1);
      transition: transform 1s;
    }
    .item__img.active2 {
      background-color: rgb(143, 235, 135);
      transform: translateY(-5px);
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.5);
      transition: transform 1s;
    }
    .item__img.active3 {
      background-color: rgb(235, 225, 135);
      transform: rotate(30deg);
      transition: transform 1s;
    }
    .item__img.active4 {
      background-color: rgb(235, 135, 150);
      transform: rotateY(360deg);
      transition: transform 1s;
    }
    /******************************
      profile section
    *****************************/
    .profile__text.profile__forSP {
      display: none;
    }
    .profile__text.profile__forPC {
      display: block;
    }
    .profile__contents {
      display: flex;
      justify-content: center;
      flex-direction: row-reverse;
      gap: 10%;
      margin-bottom: 50px;
    }
    .profile__text--wrap {
      display: flex;
      flex-direction: column;
      justify-content: center;
    }
    .profile__img {
      max-width: 450px;
    }
    /******************************
      panel part
    *****************************/

    /******************************
    -------------------------------
      PC footer section
    -------------------------------
    *****************************/
    .footer__text--part {
      max-width: 1800px;
    }
    .footer__menu ul {
      flex-direction: row;
      justify-content: space-between;
      width: 100%;
      max-width: 1260px;
      margin: 0 auto;
    }
    .footer__menu--wrap {
      /* padding: 40px 0;
      margin-bottom: 15px; */
      border-bottom: none;
      border-left: 1px solid rgba(146, 186, 142, 0.64);
      width: 26%;
      max-width: 300px;
    }
    .footer__menu--wrap:last-of-type {
      border-right: 1px solid rgba(146, 186, 142, 0.64);
    }
    .footer__menu--wrap:last-of-type li {
      /* padding-right: 30px; */
    }
    ul.footer__sub--menu {
      display: flex;
      flex-direction: column;
      margin-left: 0.6em;
    }
    #footer .go__online {
      margin-left: 0.6em;
      width: 92%;
    }
    #footer .go__online .online__txt {
      font-size: clamp(12px, 1.1vw, 16px);
    }
    #footer .go__online .material-symbols-outlined {
      font-size: clamp(14px, 11.7vw, 17.6px);
    }
    .footer__caution {
      max-width: 1800px;
      padding-left: 0.6em;
    }




    /****************************************
    -----------------------------------------
      +++++ single-product.html +++++
    -----------------------------------------
    ****************************************/
    .single__contents--wrap {
      grid-template-columns: repeat(2, 1fr);
    }
    .des__title {
      font-family: "Noto Sans JP", sans-serif;
      font-weight: bold;
      font-size: clamp(24px, 1.9vw, 28px);
    }
    .single__card--text {
      font-size: clamp(16px, 3.7vw, 18px);
    }
    .single__card--data {
      font-size: clamp(16px, 3.7vw, 22px);
    }
    .memo__recipe {
      font-size: clamp(16px, 3.7vw, 22px);
    }
    .single__goOnline--img {
      width: 100%;
      top: 58%;
      transform: translateY(-50%);
    }



    /****************************************
    -----------------------------------------
      +++++ single-article.html +++++ 
    -----------------------------------------
    ****************************************/
    .news__title--wrap {
      margin-bottom: 2em;
    }
    #single__news .news__img {
      width: 100%;
      margin-bottom: 2em;
    }
    #single__news .area__title {
      font-size: clamp(24px, 2.3vw, 30px);
    }
    #single__news .area__category {
      font-size: clamp(16px, 1.6vw, 20px);
    }
    #single__news .area__desc {
      font-size: clamp(16px, 1.6vw, 20px);
      /* line-height: 2.4; */
    }




    /****************************************
    -----------------------------------------
      +++++ about.html +++++ 
    -----------------------------------------
    ****************************************/
    .about__wrap {
      max-width: 1800px;
    }
    .about__card {
      margin-bottom: 3em;
    }
    .about__title--wrap {
      max-width: 1800px;
    }
    .about__card--title {
      font-size: clamp(18px, 1.7vw, 24px);
    }
    .about__text--wrap {
      font-size: clamp(16px, 1.7vw, 20px);
    }
    .qestion__wrap {
      width: 80%;
      margin: 0 auto;
      max-width: 1800px;
    }



    
  }


  /******************************
  -------------------------------
    PC画面 for 横幅 1502px〜
  -------------------------------
  *****************************/

  /****************************************
  -----------------------------------------
    +++++ products.html +++++
  -----------------------------------------
  ****************************************/
  @media screen and (min-width: 1502px) {
    .onsale__caution {
      padding-left: 1em;
    }
    .onsale__card--wrap {
      width: 25%;
      max-width: 360px;
    }




    /****************************************
    -----------------------------------------
      +++++ about.html +++++ 
    -----------------------------------------
    ****************************************/
    .about__stc {
      width: 68%;
      margin: 0 auto 2.4em;
    }
    .about__img {
      width: 68%;
      margin: 0 auto;
    }
    .question__wrap {
      width: 68%;
      margin: 0 auto;
    }
  }