body {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  color: #000;
  font-size: clamp(0.875rem, -0.012rem + 3.78vw, 1.313rem); /*14～21*/
  line-height: 1.8;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
}
.wrapBg {
  background: url("../images/bg.png"), #f5efda;
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: contain;
  background-attachment: fixed;
}
.wrapContent {
  max-width: 560px;
  margin: 0 auto;
}
@media screen and (min-width:768px) {
  .wrapContent {
    box-shadow: 0 0 20px rgb(0, 0, 0, .5);
  }
}
img {
  max-width: 100%;
}
a:hover {
  opacity: .8;
}
:root {
  /*色*/
  --bg: #F2EBE3;
  --bg-dark: #684C2E;
  /*---▽▽▽ 以下375～560px(1.5倍)間で可変 ▽▽▽---*/
  /*余白*/
  --space60: clamp(3.75rem, -0.051rem + 16.22vw, 5.625rem); /*60～90px*/
  --space40: clamp(2.5rem, -0.034rem + 10.81vw, 3.75rem);/*40～60px*/
  --space30: clamp(1.875rem, -0.025rem + 8.11vw, 2.813rem); /*30～45px*/
  --space20: clamp(1.25rem, -0.017rem + 5.41vw, 1.875rem); /*20～30px*/
  --space10: clamp(0.625rem, -0.008rem + 2.7vw, 0.938rem); /*20～30px*/
  /*フォントサイズ*/
/*  --fs22: clamp(1.375rem, -0.019rem + 5.95vw, 2.063rem); 22～33px*/
  --fs18: clamp(1.125rem, -0.775rem + 8.11vw, 2.063rem);/*18～33*/
  --fs16: clamp(1rem, -0.014rem + 4.32vw, 1.5rem); /*16～24px*/
  --fs12: clamp(0.75rem, -0.01rem + 3.24vw, 1.125rem);/*12～18px*/
  --fs10: clamp(0.625rem, -0.008rem + 2.7vw, 0.938rem); /*10～15px*/
}
/*------------------------
ttl-large
---------------------------*/
.ttl-large {
  text-align: center;
/*  font-size: var(--fs22);*/
  font-size: var(--fs18);
  line-height: 1.6;
}
.ttl-large-icon {
  margin-bottom: var(--space20);
  max-width: clamp(2.438rem, 0.03rem + 10.27vw, 3.625rem);
}

.ttl-medium{
	font-size: var(--fs16);
	text-align: center;
}
.ttl-circle-icon{
	text-indent: -1em;
	padding-left: 1em;
}

.ttl-circle-icon span{
	display: inline-block;
	width: 12px;
	height: 12px;
	background: #F8D36C;
	border-radius: 999px;
	margin-right: 0.5em;
	
}
/*------------------------
pageLink
---------------------------*/
.pageLink {
  background: var(--bg);
  padding: var(--space20);
}
/*------------------------
fv
---------------------------*/
.fv img{
	width: 560px;
}
/*------------------------
introduction
---------------------------*/
.introduction {
/*
  background-image: url("../images/bg-dark-left.png"), url("../images/bg-dark-right.png");
  background-size: clamp(1.875rem, -0.025rem + 8.11vw, 2.813rem);
*/
  background-color: var(--bg-dark);
  background-position: top left, top right;
  background-repeat: no-repeat;
  padding: var(--space60) var(--space20) 0;
  color: #fff;
}
.introduction__img {
  margin-top: var(--space30);
}
.introduction__txt {
  margin-top: var(--space30);
}
.introduction__txt p + p {
  margin-top: 1em;
}
.introduction__graph {
  margin-top: var(--space30);
}

.introduction__memo{
	font-size: var(--fs10);
	display: flex;
	margin-top: var(--space10);
}

.introduction__memo dt{
	flex-shrink: 0;
}

.introduction__memo a{
	text-decoration: underline;
}

.introduction__memo a img{
	width: 0.8em;
	vertical-align: baseline;
	margin-left: .5em;;
}

/*------------------------
threePillars
---------------------------*/
.threePillars {
  background: var(--bg-dark);
  padding: var(--space60) var(--space20);
  color: #fff;
}
.threePillars__txt {
  padding-top: var(--space30);
}
.threePillars__graph {
  padding-top: var(--space30);
}
.threePillars__cnt {
  margin-top: var(--space30);
}
.threePillars__cntIem + .threePillars__cntIem {
  margin-top: var(--space20);
  ;
}
.threePillars__cntBody {
  background: #fff;
  padding-top: var(--space20);
  padding-bottom: var(--space20); 
/*  padding: var(--space20); */
  border-radius: 0 0 clamp(0.625rem, -0.008rem + 2.7vw, 0.938rem) clamp(0.625rem, -0.008rem + 2.7vw, 0.938rem);
  color: #000;
}

.wrap{
    padding-left: var(--space20);
	padding-right: var(--space20);;
}

.threePillars__cntTtl {
  font-size: var(--fs16);
  text-align: center;
}
.threePillars__cntTxt {
  margin-top: var(--space20);
 padding-bottom: var(--space20);
}

.text-left{
	text-align: left;
}
/*------------------------
foodtec
---------------------------*/
.foodtec__cnt{
	margin-top: var(--space30);	
}

.foodtec__list{
	margin-top: var(--space20);

}

.foodtec__list li{
	margin-top: .5em;
	text-indent: -1em;
	padding-left: 1em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	border-top: solid 1px #B08966;
}

.foodtec__list li:last-of-type{
	border-bottom: solid 1px #B08966;
}

.foodtec__txt{
	margin-top: var(--space30);
}

mark{
background: linear-gradient(transparent 80%, #F8D36C 0%);
font-weight: 700;
}

.foodtec__pic{
	margin-top: var(--space30);
}



.foodtec__result{
	margin-top: var(--space20);
}

.foodtec__resultTxt{
	background: var(--bg);
	border-radius: 5px;
	padding: 10px;
	margin-top: var(--space10);
	font-weight: 700;
}

.foodtec__slick{
	margin-top: var(--space20);
}

.foodtec__storeImg{
	margin-top: var(--space30);
}

.foodtec__link{
	margin-top: var(--space10);
}

.foodtec__link a{
	display: block;
}

.foodtec__link a + a{
	margin-top: var(--space20);
}

.caution {
  font-size: var(--fs10);
}

/*slick調整*/
.slick-dots li button:before {
	font-size: 40px;
}

/*------------------------
chef
---------------------------*/
.chefOverview{
	background: var(--bg);
	padding-top: var(--space30);
	margin-top: var(--space20);
}

.chefOverview__cnt{
	margin-top: var(--space30);
}

.chef__ttlL{
	text-align: center;
	border-bottom: solid 1px #B08966;
	padding-bottom: .3em;
	font-size: var(--fs16);
	color: var(--bg-dark);
}

.chef__ttlL--noBorder{
	text-align: center;
	padding-bottom: .3em;
	font-size: var(--fs16);
	color: var(--bg-dark);	
}

.chef__ttlL span{
	display: inline-block;
	width: 13px;
	height: 13px;
	background: #F8D36C;
	border-radius: 999px;
	margin:0 .5em;
}

.chef__ttlL--noBorder span{
	display: inline-block;
	width: 13px;
	height: 13px;
	background: #F8D36C;
	border-radius: 999px;
	margin:0 .5em;
}

.chef__ttlM{
	display: flex;
	justify-content: center;
	font-size: var(--fs14);
	align-items: center;
	margin: var(--space10) 0;
}

.chefIcon{
		margin: 0 var(--space10);
}

.ingredients{
	background: #fff;
	padding: var(--space10) var(--space20);
	margin-top: var(--space10);
	border-radius: 10px ;
	display: flex;
	font-size: var(--fs12);
}

/*--------.chefVoice-------------*/

.chefVoice{
	padding-top: var(--space30);
}

.chefVoice > * + *{
	margin-top: var(--space40);
}

.chefVoice__pic{
	margin-top: var(--space10);
	display: block;
}

.chefVoice__txt{
	background: #F2EBE3;
	border-radius: 10px;
	position: relative;
	padding: var(--space30) var(--space20);
	margin-top: var(--space40);
}

.chefVoice__icon{
	position: absolute;
	top:-9%;
	left: 50%;
	width: clamp(2.875rem, -0.039rem + 12.43vw, 4.313rem);
	transform: translateX(-50%);
}

@media (min-width: 650px){
	.chefVoice__icon {
		top:-10%;
	}
}

/*------tourResult-------*/
.tourResult{
	text-align: center;
	margin-top: var(--space60);
}

.tourResult__headline{
	margin-top: var(--space30);
}

.tourResult__txt{
	margin: var(--space30) 0;

}
.tourResult__txt span{
	background:linear-gradient(transparent 70%, #F8D36C 70%);
	font-weight: 700;
}

/*------------------------
fes
---------------------------*/
.fes {
/*
  background-image: url("../images/bg-left.png"), url("../images/bg-right.png");
  background-size: clamp(1.875rem, -0.025rem + 8.11vw, 2.813rem);
  background-color: var(--bg);
*/
  background-position: top left, top right;
  background-repeat: no-repeat;
/*  padding: var(--space60) var(--space20) 0;*/
  padding: var(--space20) 0 0;
}
.fes__Ttl {
  text-align: center;
}
.fes__subTtl {
  margin-bottom: var(--space20);
  display: block;
  font-size: var(--fs14);
}
.fes__image {
  margin-top: var(--space20);
}
.fes__detail {
  margin-top: var(--space30);
}
.fes__detailTxt {
  text-align: center;
  font-size: var(--fs16);
  margin-top: var(--space20);
  font-weight: 700;
}
.fes__detailTxt span {
  font-weight: 400;
}
.fes__mesage {
  margin-top: var(--space30);
  border-top: solid 1px #B08966;
  padding-top: var(--space30);
}
.fes__mesageTtl {
  font-size: var(--fs16);
}
.fes__mesageImg {
  margin-top: var(--space30);
}
.fes__mesageTxt {
  margin-top: var(--space30);
}

.fes__end{
	text-align: center;
	color: #DB003A;
	border:4px solid #DB003A;
	width: 100%;
	padding: 10px;
	font-weight: 700;
	margin-top: var(--space20);
}
/*------------------------
ippin
---------------------------*/
/*
.ippin {
  background-color: var(--bg);
  padding: var(--space60) var(--space20) 0;
}
*/
.ippin__cnt {
  margin-top: var(--space30);
}
.ippin__cntItem + .ippin__cntItem {
  margin-top: var(--space20);
}
.ippin__caution {
  font-size: var(--fs10);
  margin-top: 2em;
}
.ippn_coupon {
  margin-top: var(--space30);
}
/*------------------------
online
---------------------------*/
.online {
  background-color: var(--bg);
  padding: var(--space60) var(--space20) var(--space30);
}
.online__ttl {
  text-align: center;
}
.online__subTtl {
  display: block;
  margin-bottom: var(--space30);
  font-size: var(--fs16);
}
.online__img {
  margin-top: var(--space30);
}
.online__txt {
  margin-top: var(--space30);
}
.online__cv {
  margin-top: var(--space30);
}
/*------------------------
footer
---------------------------*/
.footer__cnt {
  border-top: solid 5px #684C2E;
  background: #E1DBD5;
  padding: var(--space30) var(--space20) var(--space30);
}
.footer__logoList {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space10);
}
.footer__sponsor {
  display: flex;
  margin-top: var(--space30);
}
.footer__txt {
  margin-top: var(--space20);
  font-size: var(--fs10);
}
.footer__link {
  margin-top: var(--space20);
}
.footer__link a {
  text-decoration: underline;
  display: block;
}
.footer__link a + a {
  margin-top: 1em;
}
.footer__copy {
  background: var(--bg-dark);
  padding: var(--space10);
  text-align: center;
  color: #fff;
  font-size: var(--fs10);
}
/*------------------------
ページトップへ戻るボタン
---------------------------*/
.pagetop {
  position: fixed;
  bottom: 10px;
  right: 10px;
  z-index: 9999;
  width: clamp(2.813rem, 0.025rem + 11.89vw, 4.188rem); /*45～67px*/
}
@media screen and (min-width:768px) {
  .pagetop {
    bottom: 40px;
    right: 40px;
  }
}

/*------------------------
アコーディオン
---------------------------*/
.accordion {
  position: relative;
}
/* ボタン */
.accordion-btn {
  background-color: var(--bg);
  border: 2px solid var(--bg-dark);
  border-radius: 999px;
  bottom: 0;
  color: var(--bg-dark);
  cursor: pointer;
  display: inline-block;
  left: 0;
  margin: auto;
  padding: 10px;
  position: absolute;
  right: 0;
  text-align: center;
  transition: all .2s;
  width: 100%;
  z-index: 1;
}

.chef-accordion-btn{
	width: calc(100% - (var(--space20)*2));
}

.accordion-btn::after {
  content: "続きを見る";
	font-weight: 700;
}

.accordion-btn:hover {
  background-color: var(--bg-dark);
  color: #fff;
}
.accordion-text {
  overflow: hidden; /* テキストを隠す */
  position: relative;
}
/* 最初に見えてるテキストエリアの高さ */
.accordion-text.is-hide {
  height: 100px;
}
/* テキストをグラデーションで隠す */
.accordion-text::before {
  background:#fff;
  bottom: 0;
  content: "";
  height: 60px; /* グラデーションで隠す高さ */
  position: absolute;
  width: 100%;
}
/* 閉じるボタンの位置 */
.accordion-btn.is-show::after {
  content: "詳細を閉じる";
  font-weight: 700;
}

.accordion-btn.is-show + .accordion-text::before {
  display: none;
}

.js-accordion-text {
  overflow: hidden; /* はみ出た分を隠す */
}

.js-accordion-text.is-hide {
  height: 50px;
}


.js-accordion-text.is-open {
  height: auto; 
}

.is-show + .js-accordion-text{
  padding-bottom: 4em;	
}
