.fs-l-main{padding: 0;}
/*スライドショーバナー*/   
/*TOPカルーセル*/
.top_carousel{width: 100%;position: relative;padding-bottom: 29.81949%;/* (826/2770)*100% */}
.sp_img {display: none !important;}
.pc_img {display: block !important;}
@media screen and (max-width: 767px) {
.top_carousel {width: 100%;position: relative;padding-bottom: 111.111111%;/* (1000/900)*100% */}
.sp_img {display: block !important;}
.pc_img {display: none !important;}}
.top_carousel img { animation: fade 9s infinite;/*合計時間*/-webkit-animation: fade 9s infinite;-moz-animation: fade 9s infinite;width: 100%;height: 100%;opacity: 0;position: absolute;top: 0;left: 0;}
@keyframes fade {
  0% {opacity: 0;}
  30% {opacity: 1;}
  35% {opacity: 1;}
  50% {opacity: 0;}
  100% {opacity: 0;}
}
@-webkit-keyframes fade {
  0% {opacity: 0;}
  30% {opacity: 1;}
  35% {opacity: 1;}
  50% {opacity: 0;}
  100% {opacity: 0;}
}
@-moz-keyframes fade {
  0% {opacity: 0;}
  30% {opacity: 1;}
  35% {opacity: 1;}
  50% {opacity: 0;}
  100% {opacity: 0;}
}
.top_carousel img:nth-of-type(1) {animation-delay: 0s;-webkit-animation-delay: 0s;-moz-animation-delay: 0s;}
.top_carousel img:nth-of-type(2) {animation-delay: 3s;-webkit-animation-delay: 3s;-moz-animation-delay: 3s;}
.top_carousel img:nth-of-type(3) {animation-delay: 6s;-webkit-animation-delay: 6s;-moz-animation-delay: 6s;}
.concept picture img {vertical-align: bottom;}        
    
 /*画像バナー差し込み*/
.bg-image01{display: flex;justify-content: center;margin-right: calc(50% - 50vw);margin-left: calc(50% - 50vw);background-color: #7C2628;margin-top: 0px;flex-direction: column;align-items: center;}

/* 768px以上に適用されるCSS（PC用）*/ 
@media screen and (min-width: 768px) {
.bg-image01{display: flex;justify-content: center;margin-right: calc(50% - 50vw);margin-left: calc(50% - 50vw);background-color: #7C2628;/*margin-top: 55px;/*560px*/flex-direction: column;align-items: center;}}     
/*背景設定*/ 
.section-common{max-width: 1462px;margin-top: 30px;}
/*共通*/
.wrapper{padding-right: calc(50vw - 50%);padding-left: calc(50vw - 50%);display: inline-block;} 
.section1{margin-right: calc(50% - 50vw);margin-left: calc(50% - 50vw);background-color: var(--bg-color);} 
    
/*竈専用背景設定*/ 
.section-bg-image-o1{margin-right: calc(50% - 50vw);margin-left: calc(50% - 50vw);background-image: url(https://ginnomori.itembox.design/item/okudo/bg_sozaihonryu.jpg);background-size: cover; background-position: center;background-repeat: no-repeat;padding: 60px 0;margin-top: 0;margin-bottom: 30px;}   
/*.section-bg-image-o1,*/.top--inner{max-width: 1462px;width: 90%;margin-left: auto;margin-right: auto;padding-left: 10px;padding-right: 10px;}
.section-bg-image-o2{margin-right: calc(50% - 50vw);margin-left: calc(50% - 50vw);background-image: url(https://ginnomori.itembox.design/item/okudo/bg_kodawarisozai.jpg);background-size: cover; background-position: center;background-repeat: no-repeat;padding: 60px 0;margin-top: 60px;}  

/*背景に入れる文字設定*/ 
.t-lead{text-align: center;font-size:  var(--font-size-M);line-height: 1.8;margin: 30px auto 15px auto;color: var(--font-color);}
.t-lead img{width: 40%}
.t-lead01{text-align: center;font-size:  var(--font-size-M);line-height: 1.8;margin: 30px auto 15px auto;color: var(--font-color);
text-shadow:2px 2px 0 #FFF, -2px -2px 0 #FFF,-2px 2px 0 #FFF, 2px -2px 0 #FFF,0px 2px 0 #FFF,  0-2px 0 #FFF,-2px 0 0 #FFF, 2px 0 0 #FFF;}
.t-lead img{width: 40%}
/* PC（768px以上）用のスタイル */
@media screen and (min-width: 768px) { 
.t-lead{text-align: center;font-size:var(--font-size-L);line-height: 2.0;margin: 30px auto 15px auto;}
.t-lead01{text-align: center;font-size:var(--font-size-L);line-height: 2.0;margin: 30px auto 15px auto;}
.t-lead img{width: 20%}}        

 /* おすすめ商品 */
#recommend-list{display: flex; overflow-x: auto; /* 横スクロール */-webkit-overflow-scrolling: touch; /* IOS横スクロール */scroll-snap-type: x mandatory; /* スナップポイントを設定 */padding: 10px 0;/* スクロールバー色指定 */scrollbar-color: #7C2628 #f0f0f0;scrollbar-width: thin;width: 100%;white-space: nowrap;
}
/* WebKit系のブラウザ（Chrome, Safariなど）用 */
#recommend-list::-webkit-scrollbar {height: 10px;}
#recommend-list::-webkit-scrollbar-track {background: #f0f0f0; border-radius: 10px;}
#recommend-list::-webkit-scrollbar-thumb {background-color: #7C2628;border-radius: 10px;}
.recommend-item{flex: 0 0 auto;width: 40%;max-width: 200px; /* 最大幅 */margin: 0 5px; text-align: center;padding: 2px;position: relative;scroll-snap-align: start; /* スクロール開始位置 */flex-shrink: 0; /* 追加: アイテムが縮小しないようにする */}
.recommend-item img{max-width: 100%;height: auto;display: block;margin: 0 auto 10px;}
/* おすすめ */ 
.recommend-item:nth-of-type(1) .item-number {background: url("https://ginnomori.itembox.design/item/okudo/popularity_okudo01.svg") no-repeat center center;background-size: contain;}/*
/* 商品名 */
.recommend-name{display: -webkit-box;-webkit-line-clamp: 4; -webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;margin-bottom: 5px;text-align: center;
font-size: var(--font-size-S);color:var(--font-color);}
/* 価格 */
.recommend-price{font-weight: bold;color:var(--main-red);text-align: right;font-size: var(--font-size-S);}
/* 税込 */
.recommend-price small{font-weight: normal;font-size: var(--font-size-SS);}
/* 768px以上のブレークポイント */
@media (min-width: 768px) {
#recommend-list{display: grid; grid-template-columns: repeat(5, 1fr); /* 2列指定 */gap: 20px; overflow-x: visible; /* 横スクロール無効 */justify-content: center;margin: 20px auto;padding: 0; max-width: var(--pc-size);}
.recommend-item{width: auto;margin: 0;flex: unset;max-width: 300px; /* 最大幅を設定 */}
 /* ランキング上位 */
/*.item-number{position: absolute;top: -10px;left: 7px;
background-size: contain;color: white;width: 50px;height: 50px;display: flex;justify-content: center;align-items: center;font-family: var(--serif);font-weight: bold;font-size: var(--font-size-L);}*/
/* 価格 */
.recommend-price{font-weight: bold;color: #cc0000;text-align: right;font-size: var(--font-size-M);}
/* 税込 */
.recommend-price small{font-weight: normal;font-size: var(--font-size-S);}}   
  
/* こだわりの素材 */
.content-box{padding: 30px 20px;max-width: 95%;background-color: rgba(255, 255, 255, 0.85); box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);text-align: center; font-size: var(--font-size-SM);color: var(--font-color);margin: 0 auto;}
.guide-link{font-size: var(--font-size-SM);}
.content-box p {margin-bottom: 25px;}
/* 768px以上のブレークポイント */
@media (min-width: 768px) {
.content-box {max-width: 1462px;padding: 60px 200px; font-size: var(--font-size-M);}
.guide-link{font-size: var(--font-size-S);}}
 
/*こだわりの素材3種類*/   
.product-list {display: flex; justify-content: center; align-items: center;padding: 20px;}
.product-item {flex: 0 0 30%;text-align: center; margin: 0 1%;}
.product-item img {width: 100%; height: auto;display: block; margin-bottom: 10px;}
.product-txt {font-size: var( --font-size-S);line-height: 1.5;padding: 5px 0;color: var(--font-color);}
/* 768px以上のブレークポイント */
@media (min-width: 768px) {
.product-item {margin-bottom: 20px;}
.product-txt {font-size: var( --font-size-M);}}   
  
/*商品一覧*/
#line-up-list{display: flex; overflow-x: auto; /* 横スクロール */-webkit-overflow-scrolling: touch; /* IOS横スクロール */scroll-snap-type: x mandatory; /* スナップポイントを設定 */padding: 10px 0;
/* スクロールバー色指定 */
scrollbar-color: #7C2628 #f0f0f0;scrollbar-width: thin;width: 100%;white-space: nowrap;}
/* WebKit系のブラウザ（Chrome, Safariなど）用 */
#line-up-list::-webkit-scrollbar {height: 10px;}
#line-up-list::-webkit-scrollbar-track {background: #f0f0f0; border-radius: 10px;}
#line-up-list::-webkit-scrollbar-thumb {background-color: #7C2628;border-radius: 10px;}
.line-up-item{flex: 0 0 auto;width: 40%;max-width: 200px; /* 最大幅 */margin: 0 5px; text-align: center;padding: 2px;position: relative;scroll-snap-align: start; /* スクロール開始位置 */}
.line-up-item img{max-width: 100%;height: auto;display: block;margin: 0 auto 10px;border-radius: 20px;}
/* 商品名 */
.line-up-name{height: 5em;display: -webkit-box;-webkit-line-clamp: 4; -webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;margin-bottom: 5px;text-align: center;
font-size: var(--font-size-S);color:var(--font-color);}
/* 768px以上のブレークポイント */
@media (min-width: 768px) {
#line-up-list{display: grid; grid-template-columns: repeat(5, 1fr); /* 2列指定 */gap: 20px; overflow-x: visible; /* 横スクロール無効 */justify-content: center;margin: 20px auto;padding: 0; max-width: var(--pc-size);}
.line-up-item{width: auto;margin: 0;flex: unset;max-width: 300px; /* 最大幅を設定 */}
/* 商品名 */
.line-up-name{display: -webkit-box;-webkit-line-clamp: 2; -webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;margin-bottom: 5px;text-align: center;font-size: var(--font-size-M);}}    
 /*レシピリスト */
#recipes-list{display: flex; overflow-x: auto; /* 横スクロール */-webkit-overflow-scrolling: touch; /* IOS横スクロール */scroll-snap-type: x mandatory; /* スナップポイントを設定 */padding: 10px 0;/* スクロールバー色指定 */scrollbar-color: #7C2628 #f0f0f0;scrollbar-width: thin;width: 100%;white-space: nowrap;}
/* WebKit系のブラウザ（Chrome, Safariなど）用 */
#recipes-list::-webkit-scrollbar {height: 10px;}
#recipes-list::-webkit-scrollbar-track {background: #f0f0f0; border-radius: 10px;}
#recipes-list::-webkit-scrollbar-thumb {background-color: #7C2628;border-radius: 10px;}
.recipes-item{flex: 0 0 auto;width: 40%;max-width: 200px; /* 最大幅 */margin: 0 5px; text-align: center;padding: 2px;position: relative;scroll-snap-align: center; /* スクロール開始位置 */}
.recipes-item img{max-width: 100%;height: auto;display: block;margin: 0 auto 10px;border-radius: 20px;}
/* レシピ名 */
.recipes-name{display: -webkit-box;-webkit-line-clamp: 4; -webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;margin-bottom: 5px;font-size: var(--font-size-S);color:var(--font-color);}

/* 768px以上のブレークポイント */
@media (min-width: 768px) {
#recipes-list {display: grid; grid-template-columns: repeat(4, 1fr); /* 2列指定 */gap: 20px; overflow-x: visible; /* 横スクロール無効 */justify-content: center;margin: 20px auto;padding: 0; max-width: var(--pc-size);}
.recipes-item{width: auto;margin: 0;flex: unset;max-width: 300px; /* 最大幅を設定 */}

/* レシピ名 */
.recipes-name{display: -webkit-box;-webkit-line-clamp: 2; -webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;margin-bottom: 5px;text-align: center;font-size: var(--font-size-M);}}

/* 画像にトランジションを設定し、ホバー時の動きを滑らかにする */
/*.recommend-item img,*/
.line-up-item img,
.recipes-item img {transition: opacity 0.3s ease;}

/* <a> にホバーした際、中の <img> の透明度を下げる */
/*.recommend-item a:hover img,*/
.line-up-item a:hover img,
.recipes-item a:hover img 
{opacity: 0.8;}
/*.item-number{opacity: 1 !important;}*/

/*竈バナー*/
.banner-container{display: flex;flex-direction: column;align-items: center;gap: 20px;/*padding: 20px;*/ justify-content: center;background-color: #E8CE8A;margin-top: 60px;}
.o_box1 img{width: 100%;height: auto;display: block;}
.o_box2{color: var(--font-color);line-height: 1.8;font-size: var(--font-size-M);text-align: center;
width: 90%;margin-bottom: 20px;}
.insta-logo{width: 50%;text-align: center;margin: 0 auto;margin-top: 0;}
.o-subtitle,.o-description{color: var(--font-color);font-size: var(--font-size-S);text-align: center;}
.o-description{font-size: var(--font-size-M)}
/* PC（768px以上）用のスタイル */
@media screen and (min-width: 768px){
.banner-container{flex-direction: row;gap: 0;padding: 0;}
.o_box1{width: 50%;flex-grow: 0;}
.o_box2{width: 50%;flex-grow: 0;text-align: center;padding: 20px;margin-bottom: 0px;}
.insta-logo{width: 50%;margin: 0 auto;}} 

/*遷移ボタン*/
.store-button-o{display: inline-block;background-color: #CC0000;padding: 10px 40px;transition: background-color 0.3s;}
.store-button-o span{color: var(--main-white);}
.store-button-o a:hover{background-color: #004d00;text-decoration: none;}
.store-button-o:after{content: ".";color: rgba(199, 1117, 193, 0);text-align: center;display: inline-block;width: 15px;height: auto;margin-left: 6px;background-position: center;background-image: url(https://ginnomori.itembox.design/item/top_img/icon_externallink.svg);background-size: contain;background-repeat: no-repeat;border: none;
}
/* 768px以上のブレークポイント */
@media (min-width: 768px) {
.store-button{padding: 20px 40px; width: auto;min-width: 150px;text-align: center;}} 
 
/* 店舗案内 */
.sec-store{display: flex;flex-direction: column;align-items: center;gap: 40px;justify-content: center;} 
.store-block-img{width: 80%}
.store-block-img,.store-block-txt{flex-grow:1;}
.store-block-txt{color: var(--font-color);line-height: 1.8;font-size: var(--font-size-M);}   
/* PC（768px以上）用のスタイル */
@media screen and (min-width: 768px) { 
.sec-store{display: flex;flex-direction: row;gap: 40px;align-items: center;justify-content: center;} 
.store-block-img{width: 30%}}
