@charset "utf-8";
/* CSS Document */
/**リセットCSS**/
body{
  position:relative;
  margin:0; padding:0;
  background:#fff;
  list-style: none;
  text-decoration: none;
  font-size:16px;
  line-height:1.5;
  font-family:"Noto Serif JP","游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;/*旧フォント-apple-system, BlinkMacSystemFont, "source-han-sans-japanese", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;*/
}
*, *:before, *:after{-webkit-box-sizing:border-box;/* Safari,Google Chrome用 */ -moz-box-sizing:border-box; /* Firefox用 */ -o-box-sizing:border-box;-ms-box-sizing:border-box;/* IE 10 */box-sizing:border-box;}	
a{text-decoration: none;}
a:visited{text-decoration:none;}
a:hover, a:active, a:focus {text-decoration:none;}

/* ここからSPヘッダーのON/OFF(孝橋) */
@media screen and (min-width: 768px) {
  #sp_head { display:none; }
 body { padding-top:37px; }
}
@media screen and (max-width: 767px) {
  body { padding-top:52px; }
  .header { display:none; }
}
.top_bb {margin: 5px 0;text-align: center;}
 
@media screen and (max-width: 767px) {
.top_bb{margin: 5px -8px;}
}

/*全環境に共通のデザイン*/
.fs-l-main{margin: 0 auto;font-size: 14px;font-family: font-family: "Noto Serif JP","游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;margin-bottom: 20px;}
html{scroll-behavior: smooth;}


/*全環境に共通のデザイン 768pxの範囲に収めるデザインはこの中に記述*/
@media screen and (min-width: 768px){
.fs-l-main{margin: 0 auto;font-size: 16px;margin-bottom: 20px;}}

/*商品一覧ページ*/
/* 各ページtopバナー */
/* 各ページtopバナー */
@media screen and (max-width: 767px) {
.sp_img{display: block !important;margin: 0 auto;}
.pc_img{display: none !important;}
}
@media screen and (min-width: 768px) {
.sp_img{display: none !important;}	
.pc_img{display: block !important;margin: 0 auto;}
}


/** ボタンの記述 各種ページに適応（各色指定は各CSSで）**/
/** SPボタンの記述 **/
.category_box{margin:30px 0;display: flex;flex-wrap: wrap;justify-content: center; align-items: stretch;}
.category_box>div{margin:2px 2px;text-align: center;padding: 10px 0;width:30%;width: calc(50% - 14px); /* margin padding分を引く */border:1px solid #014725;background:#014725;}
.category_list:nth-child(1n) {flex-grow:2;} .category_list:nth-child(2n) {flex-grow:2;} .category_list:nth-child(3n) {flex-grow:2;} .category_list:nth-child(4n) {flex-grow:2;}.category_list:nth-child(5n) {flex-grow:2;} .category_list:nth-child(6n) {flex-grow:2;}  
.category_box a{display: block;text-decoration: none;color: #FFF;font-weight: bold;font-family: "游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.arrow_category{position: relative;display: inline-block;padding-right: 10px;text-decoration: none;}
.arrow_category:before{content: '';width: 6px;height: 6px;border: 0;border-top: solid 2px #FFF;border-right: solid 2px #FFF;position: absolute;top: 50%;left: 50%;margin-top: -8px;transform: rotate(45deg);}    
.category_box>div:hover {opacity: 0.8;transition: all 0.5s 0s ease;/*transitionの記述を追加*/}
/** PCボタンの記述 ***/
@media screen and (min-width: 768px) {   
.category_box{display:flex;flex-wrap: nowrap;width:100%;margin:20px 0;}
.category_box>div{width:50%;margin:0 1%;border:1px solid #014725;background:#014725;text-align: center;padding: 1% 0;}  
.arrow_category{position: relative;display: inline-block;padding-right: 10px;text-decoration: none;}
.arrow_category:before{content: '';width: 6px;height: 6px;border: 0;border-top: solid 2px #FFF;border-right: solid 2px #FFF;position: absolute;top: 50%;left: 50%;margin-top: -8px;transform: rotate(45deg);}}  


/** ボタンひとつ（各ブランドTOPに戻る） **/
/** SPボタンの記述 **/
.p_btn_one{display:inline;margin:30px 0;}
.p_btn{width:60%;margin:5px auto;border:1px solid #014725;background:#014725;text-align: center;padding: 1% 0;}
.p_btn a{display: block;text-decoration: none;color: #FFF;font-weight: bold;font-family: "游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.arrow_sel{position: relative;display: inline-block;padding-right: 10px;text-decoration: none;}
.arrow_sel:before{content: '';width: 6px;height: 6px;border: 0;border-top: solid 2px #014725;border-right: solid 2px #014725;position: absolute;top: 50%;left: 50%;margin-top: -8px;transform: rotate(45deg);}         
/** PCボタンの記述 ***/
@media screen and (min-width: 768px) {  
.p_btn_one{margin: 40px auto;}
.p_btn{margin:30px auto;width:30%;border:1px solid #014725;background:#fff;color: #014725;text-align: center;padding: 1% 0;} 
.p_btn a{display: block;text-decoration: none;color: #014725;font-weight: bold;}}
.p_btn:hover {opacity: 0.8;transition: all 0.5s 0s ease;/*transitionの記述を追加*/}

/** ボタンひとつ（ブランドTOPページに戻るのみ）**/
/** SPボタンの記述 **/
.p_btn_t_top{display:inline;margin:30px 0;}
.p_btn_t{width:60%;margin:5px auto;border:1px solid #014725;background:#014725;text-align: center;padding: 1% 0;}
.p_btn_t a{display: block;text-decoration: none;color: #FFF;font-weight: bold;font-family: "游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.arrow_t_sel{position: relative;display: inline-block;padding-right: 10px;text-decoration: none;}
.arrow_t_sel:before{content: '';width: 6px;height: 6px;border: 0;border-top: solid 2px #fff;border-right: solid 2px #fff;position: absolute;top: 50%;left: 50%;margin-top: -8px;transform: rotate(45deg);}         
/** PCボタンの記述 ***/
@media screen and (min-width: 768px) {  
.p_btn_t_top{margin: 40px auto;}
.p_btn_t{margin:30px auto;width:30%;border:1px solid #014725;background:#014725;color:#fff;text-align: center;padding: 1% 0;} 
.p_btn_t a{display: block;text-decoration: none;color: #fff;font-weight: bold;}}
.p_btn_t:hover {opacity: 0.8;transition: all 0.5s 0s ease;/*transitionの記述を追加*/} 




/*商品一覧ページ（おせち）*/
/* 各ページtopバナー */
@media screen and (max-width: 767px) {
.sp_img02{display: block !important;margin: 0 auto;}
.pc_img02{display: none !important;}
}
@media screen and (min-width: 768px) {
.sp_img02{display: none !important;}	
.pc_img02{display: block !important;margin: 0 auto;}
}


/*システムパーツの変更*/

/** ページの見出し背景色 ***/
.fs-c-documentArticle__heading{background-color: #014725;}	

/** 商品ページ ***/
.itemDesc { margin-bottom:10px; }
.itemSpec { width:100%; margin-bottom:20px; }
.itemSpec th,
.itemSpec td { padding:5px; border:1px solid #ddd; }
.itemSpec th { width:7em; background-color:#f6f6f6; }

/* PCサイドメニューCSS(niwa)*/
.fs-p-sideMenu .fs-pt-menu__link--lv1::after {
    content: "\e933";/*矢印変更*/
}
.fs-p-sideMenu .fs-pt-menu__heading--lv1 {
    border: none;/*四角枠削除*/
  }
.fs-pt-menu a:link, .fs-pt-menu a:visited {
    color: inherit;
    align-items: center;/*矢印中央揃え*/
}

a.fs-pt-menu__link.fs-pt-menu__link--lv1:hover {
  background-color: #c0c0c0;
}
/* <main class="fs-l-main">fs-l-product4</main> */

/* あと〇円で送料無料 の文言を非表示にするCSS */
.fs-c-cartDiscountInfo {
    display: none;
}
/*商品ページ数量表示*/
.fs-c-productQuantityAndWishlist__quantity::before {
    content: "数量";
    align-items: center;
}

/*	バリエーションコメント切替用*/
.productVariationInfo [class^='volume'] {
    display: none;
}

[data-fs-variation-vertical-no='30'] .volume-30,
[data-fs-variation-vertical-no='20'] .volume-20,
[data-fs-variation-vertical-no='60'] .volume-60,
[data-fs-variation-vertical-no='100'] .volume-100,
[data-fs-variation-vertical-no='200'] .volume-200,
[data-fs-variation-vertical-no='M4'] .volume-4,
[data-fs-variation-vertical-no='M8'] .volume-8,
[data-fs-variation-vertical-no='1'] .volume-1,
[data-fs-variation-vertical-no='5'] .volume-5,
[data-fs-variation-vertical-no='3'] .volume-3,
[data-fs-variation-vertical-no='6'] .volume-6,
[data-fs-variation-vertical-no='8'] .volume-8,
[data-fs-variation-vertical-no='9'] .volume-9,
[data-fs-variation-vertical-no='12'] .volume-12,
[data-fs-variation-vertical-no='16'] .volume-16,
[data-fs-variation-vertical-no='10'] .volume-10,
[data-fs-variation-vertical-no='28'] .volume-28,
[data-fs-variation-vertical-no='15'] .volume-15{
    display: block;
}

/* 商品グループボタン件数削除 */
.fs-c-listControl__status {
    display: none;
}
/*商品グループボタンデザイン*/
.fs-c-subgroupList__link {
background: none;
}

.fs-c-subgroupList__item {
    margin: 5px;
}		

ul.fs-c-subgroupList::after {
    content: "";
    display: block;
    width: 800px;
}
@media screen and (max-width: 767px) {
	.fs-pt-column--4 {
    grid-template-columns: 1fr 1fr;
}
  }
/*送料とお支払い方法について通常・予約販売商品文面書き換え */
.fs-c-documentContent__content p{
   display: none;   
}
.fs-c-documentContent__content::after{
   content: "お届け先ごとのご注文の商品合計金額が￥8,000(税込)以上の場合は、送料無料となります。割引対象は送料となり、クール便手数料は別途かかります。"
;}



/* 送料とお支払い方法ページの表示テキスト変更 (石松記述20250819)*/
#fs_anchor_deliveryService_courier106 .fs-c-list li{
    display:none;
}
#fs_anchor_deliveryService_courier106 .fs-c-list:after {
    font-size: 1.5rem;
    color: #FF0000;
    content:'早期予約商品（8月予約受付の栗きんとん、柿栗くらべ、栗きんとんくらべ）に対しての送料一覧となります。表の送料にクール代手数料330円が追加されます。'
}



/** spヘッダーのアイコン表示 ***/
.sp_top_icon{display: block !important;margin: 10px auto;}
@media screen and (min-width: 768px) {
.sp_top_icon{display: none !important;}}






/*ここからは要確認*/
/* フッターデザイン削除 
.fs-l-footer {
    border-top: none;
    margin-top: 40px;
}*/

/*ここからは新規オンラインショップのTOPページ記述*/

:root {
  --serif: "Noto Serif JP","游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;/* 文字フォント */
  --title: "Cormorant Garamond", serif;/* TOPページタイトルフォント */
  --font-size-SS: 0.7em;/* 文字サイズS */
  --font-size-S: 0.8em;/* 文字サイズS */
  --font-size-SM: 0.9em;/* 文字サイズSM */
  --font-size-M: 1.1em;/* 文字サイズM */
  --font-size-L: 1.4em;/* PCサイズL */
  --font-size-LL: 2.5em;/* タイトル */
  --font_size_subtitle: 1.2em; /* サブタイトル（例として値を設定） */
  --font-color: #331D01;/* 全体フォント指定色 */
  --main-color: #006934; /* メインカラー */
  --accent-color-p: #EBBE97; /* アクセントカラーピンク */
  --accent-color-g: #B8C8AF; /* アクセントカラーグリーン */
  --main-white: #FFF;/* 白色指定 */
  --main-red: #C53203;/* 赤色指定 */
  --bg-color: rgba(253, 241, 210, 0.3);/* TOPページ背景色 */
  --pc-size: 1462px; /* PC表示での最大幅*/
  --pickup-pc-size: 1300px;
}

body{font-family: var(--serif);/*max-width: 1878px;*/}
/*.fs-l-main{max-width: 1462px;}
.fs-l-main2025{max-width: 1462px;margin: 0 auto;}*/
/*背景色*/
.bg-top-color{background-color: var(--bg-color);padding: 50px 0;}
/*SPのみ改行*/
.spbr{display: block;}
@media (min-width: 768px){
.spbr{display: none;}
}
/*<br class="spbr">に適応*/
/*PCのみ改行*/
.pcbr{display: none;}
@media (min-width: 768px){
.pcbr{display: block;}
}
/*<br class="pcbr">に適応*/
/*遷移ボタン　共通*/  
.guide-link{width: fit-content;margin: 20px 0;padding: 10px 20px;border: 1px solid var(--font-color);border-radius: 9999px;color: #333;font-size: var(--font-size-S);font-weight: 400;line-height: 1;text-align: center;white-space: nowrap;cursor: pointer;position: relative;padding-right: 45px;background-color: var(--main-white);}
.guide-link::after{content: ".";color: rgba(199, 1117, 193, 0);position: absolute;right: 15px;top: 50%;transform: translateY(-50%);line-height: 1;background-image: url(https://ginnomori.itembox.design/item/common/icon_arrow.svg);background-size: contain;background-repeat: no-repeat;border: none;width: 26px;height: auto;}
.guide-link:hover{opacity: 0.8;text-decoration: none;}
/* TOPカルーセル */
.top-mv--SP {display: block;margin: 0 auto;}
.top-mv--PC {display: none;}
/* PC（768px以上）用のスタイル */
@media screen and (min-width: 768px) {
.top-mv--SP {display: none; }
.top-mv--PC {display: block;}}



/*メインスライド*/
/* 下地の丸 */
.fs-c-slick .slick-prev, .fs-c-slick .slick-next {
    background: rgba(255, 255, 255, 0.8);
    border-radius: 50%;
    width: 30px;
    height: 30px;
    --angle: 30deg; /* 矢印の角度 */
    --thickness: 2px; /* 矢印の太さ */
    --color: #555; /* 矢印の色 */
}
/* 前への矢印を作る */
.fs-c-slick .slick-prev::before, .fs-c-slick .slick-prev::after {
    content: "";
    position: absolute;
    top: 50%; /* 丸内の矢印の位置調整 */
    left: 51%; /* 丸内の矢印の位置調整 */
    width: 14px; /* 矢印の長さ */
    height: var(--thickness);
    background-color: var(--color);
    transform-origin: center left;
}
/* 次への矢印を作る */
.fs-c-slick .slick-next::before, .fs-c-slick .slick-next::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 100%;
    width: 14px;
    height: var(--thickness);
    background-color: var(--color);
    transform-origin: center left;
}
/* 矢印を作る2本の線をそれぞれ傾ける */
.fs-c-slick .slick-prev::before {
    transform: translate(-50%, -50%) rotate(var(--angle));
}
.fs-c-slick .slick-prev::after {
    transform: translate(-50%, -50%) rotate(calc(0deg - var(--angle)));
}
.fs-c-slick .slick-next::before {
    transform: translate(-50%, -50%) rotate(var(--angle)) rotateY(180deg);
}
.fs-c-slick .slick-next::after {
    transform: translate(-50%, -50%) rotate(calc(0deg - var(--angle))) rotateY(180deg);
}
/* ブラウザ上の位置1300px以上 PC */
.fs-c-slick .slick-prev {
    left: 50%; /* 画面の中心からX-622px,Y-50%の位置へ移動 */
    transform: translate(-622px, -50%);
}
.fs-c-slick .slick-next {
    right: 50%; /* 画面の中心からX622px,Y-50%の位置へ移動 */
    transform: translate(622px, -50%);
}
/* スライドの隙間*/
.fs-pt-carousel__slide {
    padding: 0 7px;
}

/* ブラウザ上の位置1300px以下 PC */
@media screen and (max-width:1300px) {
    .fs-c-slick .slick-prev {
        transform: translate(-44vw, -50%);
    }
    .fs-c-slick .slick-next {
        transform: translate(44vw, -50%);
    }
    .fs-pt-carousel img {
        max-width: 84vw;
    }
    /* スライドの隙間*/
    .fs-pt-carousel__slide {
        padding: 0 0.6vw;
    }
}

/* ブラウザ上の位置 Tablet */
@media screen and (max-width:768px) {
    .fs-c-slick .slick-prev {
        transform: translate(-45vw, -50%);
    }
    .fs-c-slick .slick-next {
        transform: translate(45vw, -50%);
    }
    .fs-pt-carousel__slide {
        padding: 0 6px;
    }
}
/* ブラウザ上の位置 SP */
@media screen and (max-width:430px) {
    .fs-c-slick .slick-prev {
        transform: translate(-46.5vw, -50%);
    }
    .fs-c-slick .slick-next {
        transform: translate(46.5vw, -50%);
    }
    .fs-pt-carousel img {
        max-width: 82vw;
    }
}

/*TOPタイトル*/
.top--inner{text-align: center;margin: 20px 0 20px 0;color: var(--font-color);}
.top--title{font-family: var(--title);font-weight: 500;letter-spacing: 0.08em;margin-bottom: 10px;font-size: var(--font-size-L);}
.top--inner span{font-family: var(--serif);font-size: var(--font-size-M); letter-spacing: 0;}
@media (min-width: 768px) {
.top--inner{text-align: center;margin: 40px 0 40px 0;}
.top--title{font-size: var(--font-size-LL);}
.top--inner span{ffont-size: var(--font-size-L);}}


/*人気キーワードサーチ*/
/*全体*/    
.keyword-section{display: flex;flex-direction: column; align-items: flex-start;gap: 15px;padding: 15px; background-color: var(--bg-color);}
/*タイトル*/
.keyword-heading{font-family: var(--serif);font-size: var(--font-size-S);color: var(--font-color);padding: 6px 12px;white-space: nowrap;}
/*キーワードタグ全体*/  
.keyword-tags{display: flex;flex-wrap: wrap;flex-direction: row;gap: 8px;justify-content: center;padding-bottom: 5px;cursor: grab;color: var(--main-color);}
/*キーワードタグ*/  
.keyword-tag{flex-shrink: 0;display: inline-flex;align-items: center;padding: 7px 14px;border: 1px solid var(--font-color);border-radius: 20px;background-color: var(--main-white);text-decoration: none;font-family: var(--serif);font-size: var(--font-size-S);white-space: nowrap;transition: background-color 0.3s, border-color 0.3s, color 0.3s;}
/*キーワードタグ色*/      
.keyword-tag span{color: var(--main-color);}
/*キーワードタグホバー時色*/
.keyword-tag:hover{background-color: var(--accent-color-g);border-color: var(--main-color);color: var(--main-white);}
.keyword-tag span:hover{color: var(--main-white);}
/* 外部リンクアイコン */
.keyword-tag .external-link-icon {display: inline-block;width: 1em;height: 1em;margin-left: 0.3em;vertical-align: middle;background-image: url('https://ginnomori.itembox.design/item/top_img/icon_externallink02.svg');background-size: contain;background-repeat: no-repeat;background-position: center;}
/* 外部リンクアイコンホバー時のアイコン色 */
.keyword-tag:hover .external-link-icon {background-image: url('https://ginnomori.itembox.design/item/top_img/icon_externallink02.svg');}
/* 768px以上のブレークポイント */
@media (min-width: 768px) {
/*全体*/ 
.keyword-section {flex-direction: row;align-items: center;gap: 20px;padding: 20px;margin: -10px auto;display: flex;justify-content: center;}
/*タイトル*/
.keyword-heading {font-family: var(--serif);font-size: var(--font-size-M);color: var(--font-color);padding: 6px 12px;white-space: nowrap;}
/*キーワードタグ全体*/ 
.keyword-tags {flex-wrap: wrap;justify-content: flex-start; gap: 10px;}
/*キーワードタグ*/ 
.keyword-tag{flex-shrink: 1;  font-size: var(--font-size-M);padding: 8px 15px;}}


/*注目トピック*/
#pickup-list{display: flex;overflow-x: auto; /* 横スクロール */-webkit-overflow-scrolling: touch;scroll-snap-type: x mandatory;padding: 10px 0;}
.pickup-item{flex: 0 0 auto;width: 40%;max-width: 200px; /* 最大幅 */margin: 0 5px;text-align: center;padding: 2px;position: relative;scroll-snap-align: start;}
.pickup-item img {max-width: 100%;height: auto;display: block;margin: 0 auto 10px;border-radius: 20px;}
/*説明文*/
.pickup-heading{font-size:var(--font-size-S);color:var(--font-color);}
/* 768px以上のブレークポイント */
@media (min-width: 768px) {
#pickup-list{display: grid;grid-template-columns: repeat(4, 1fr); /* 4列に設定 */gap: 20px;overflow-x: visible;justify-content: center;margin: 20px auto;padding: 0;justify-items: center;max-width: var(--pickup-pc-size);}
.pickup-item {width: auto;margin: 0;flex: unset;max-width: 300px;}
/* 5番目以降のアイテムを非表示 */.pickup-item:nth-of-type(n+5) {display: none;}
/*説明文*/
.pickup-heading{font-size: var(--font-size-M);}
}


/* TOPページランキング */
#rank-list{display: flex; overflow-x: auto; /* 横スクロール */-webkit-overflow-scrolling: touch; /* IOS横スクロール */scroll-snap-type: x mandatory; /* スナップポイントを設定 */padding: 10px 0;}
.rank-item{flex: 0 0 auto;width: 40%;max-width: 200px; /* 最大幅 */margin: 0 5px; text-align: center;padding: 2px;position: relative;scroll-snap-align: start; /* スクロール開始位置 */}
.rank-item img{max-width: 100%;height: auto;display: block;margin: 0 auto 10px;}
/* ランキング上位 */    
.item-number{position: absolute;top: -10px;left: 4px;background: url("https://ginnomori.itembox.design/item/top_img/ranking_green.svg") no-repeat center center;
background-size: contain;color: var(--main-white);width: 40px;height: 40px;display: flex;justify-content: center;align-items: center;font-family: var(--serif);font-weight: bold;font-size: var(font-size-S);}

/* ランキング1～3位背景画像*/
.rank-item:nth-of-type(1) .item-number {background: url("https://ginnomori.itembox.design/item/top_img/ranking_gold.svg") no-repeat center center;background-size: contain;}
.rank-item:nth-of-type(2) .item-number {background: url("https://ginnomori.itembox.design/item/top_img/ranking_sliver.svg") no-repeat center center;background-size: contain;}
.rank-item:nth-of-type(3) .item-number {background: url("https://ginnomori.itembox.design/item/top_img/ranking_sliver.svg") no-repeat center center;background-size: contain;}   
/* 商品名 */
.rank-name{height: 3em;display: -webkit-box;-webkit-line-clamp: 4; -webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;margin-bottom: 5px;text-align: start;
font-size: var(--font-size-S);color:var(--font-color);}
/* 価格 */
.rank-price{font-weight: bold;color:var(--main-red);text-align: right;font-size: var(--font-size-M);}
/* 税込 */
.rank-price small{font-weight: normal;font-size: var(--font-size-SS);}

/* 768px以上のブレークポイント */
@media (min-width: 768px) {
#rank-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);}
.rank-item{width: auto;margin: 0;flex: unset;max-width: 300px; /* 最大幅を設定 */}
 /* ランキング上位 */
.item-number{position: absolute;top: -10px;left: 7px;background: url("https://ginnomori.itembox.design/item/top_img/ranking_green.svg") no-repeat center center;
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);}
/* 商品名 */
.rank-name{display: -webkit-box;-webkit-line-clamp: 2; -webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;margin-bottom: 5px;text-align: start;font-size: var(--font-size-M);}
/* 価格 */
.rank-price{font-weight: bold;color: #cc0000;text-align: right;font-size: var(--font-size-L);}
/* 税込 */
.rank-price small{font-weight: normal;font-size: var(--font-size-S);}}


/* TOPページカテゴリー */
.category-section{max-width: 1000px;margin: 20px auto; padding: 0 10px;}
/*列の並び*/
.category-list{display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px 10px;
justify-items: center; align-items: center;}
/*アイテム*/
.category-item{display: flex; flex-direction: column;align-items: center; text-align: center;
box-sizing: border-box; padding: 5px;max-width: 120px;}
.category-item img {width: 50px;height: auto;margin-bottom: 5px;}
.category-item a:hover{text-decoration: none;}
.category-item span{line-height: 1.3; color: var(--font-color);font-size: var(--font-size-S);font-family: var(--serif);white-space: nowrap;}
/*.spbr{display: block;}*/
/* 特定のアイコン適用スタイル（和菓子） */
.category-item-icon-small {display: flex; flex-direction: column;align-items: center; text-align: center;box-sizing: border-box; padding: 5px;max-width: 120px;}
.category-item-icon-small img {width: 30px;height: auto;margin-bottom: 5px;}
.category-item-icon-small span{line-height: 1.3; color: var(--font-color);font-size: var(--font-size-S);font-family: var(--serif);white-space: nowrap;}

/* 768px以上のブレークポイント */
@media (min-width: 768px){
.category-section{padding: 0;}
/*列の並び*/
.category-list{grid-template-columns: repeat(3, 1fr);gap: 50px 10px;justify-items: center;}
/*アイテム*/
.category-item{flex-direction: column;justify-content: center;text-align: center;max-width: 150px;padding: 0;}
.category-item img{width: 80px;margin-right: 0;margin-bottom: 5px;}  
.category-item span{font-size: var(--font-size-L);white-space: nowrap;}
/* 特定のアイコン適用スタイル（和菓子） */   
.category-item-icon-small{flex-direction: column;justify-content: center;text-align: center;max-width: 150px;padding: 0;}
.category-item-icon-small img{width: 50px;margin-right: 0;margin-bottom: 5px;}
.category-item-icon-small span{font-size: var(--font-size-L);white-space: nowrap;}
}


/*お知らせ*/
.top-newslist{max-width: 1220px;margin: 0 auto;padding: 15px;margin-bottom: 20px;}
/*並び方*/
.newslist{display: flex;align-items: center;padding: 15px 0;border-bottom: 1px solid #331D01;color: var(--font-color);font-family: var(--serif);font-size: var(--font-size-S);}
.info-item{flex-direction: column;align-items: flex-start;}
.date-container{display: flex;align-items: center;margin-bottom: 10px;}
/*装飾など*/
.date{font-weight: bold;margin-right: 20px;color:var(--font-color);}
.label{padding: 4px 12px;border-radius: 20px;color: #fff;white-space: nowrap;}
.campaign-label,.mainte-label{color: var(--main-white);font-weight: bold;}              
.campaign-label {background-color: var(--accent-color-p);}
.mainte-label {background-color: var(--accent-color-g);}
.title{margin-top: 5px;color:var(--font-color);}
/* 768px以上のブレークポイント */
@media (min-width: 768px) {
.top-newslist{font-size: var(--font-size-L);margin-bottom: 50px;}
.info-item{display: flex;align-items: center;flex-direction: row;}
.date-container{margin-right: 20px;margin-bottom: 0;}
.date {}
.label {margin-right: 10px;}
.title {margin-top: 0;}
}


/*恵那銀の森について*/
/*文字指定*/
.intro-section{text-align: center; margin: 0 auto;}
.intro-heading,.intro-txt p{font-family: var(--serif);font-size: var(--font-size-M);color:var(--font-color);}
.intro-txt p{font-size: var(--font-size-S);line-height: 2;margin: 0 auto;margin: 10px 0;}
/*画像指定*/
.store-img-gallery{display: flex;justify-content: center;gap: 20px;margin: 60px 0;padding: 0 10px;}
.store-img{position: relative;width: 200px; /* 画像の幅を調整 */height: auto;overflow: hidden;}
.store-img img{width: 100%;height: 100%;object-fit: cover;display: block;}
/*遷移ボタン*/
.store-button{display: inline-block;background-color:  var(--main-color);padding: 10px 20px;transition: background-color 0.3s;}
.store-button span{color: var(--main-white);}
.store-button a:hover{background-color: #004d00;text-decoration: none;color: var(--main-white);}
.store-button: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) {
/*文字指定*/
.intro-section{max-width: var(--pc-size);}
.intro-heading,.intro-txt p{font-size: var(--font-size-L);}
.intro-txt p{font-size: var(--font-size-M);line-height: 2;margin: 0 auto;margin: 20px 0;}
/*遷移ボタン*/
.store-button{padding: 20px 40px;}} 


/* ブランドスライダー */
/* スライダー調整 */
.brand-slider{width: 100%;overflow: hidden;position: relative;}
.slider-wrapper{display: flex;transition: transform 0.5s ease;}
/*slider-item*/
.slider-item{flex-shrink: 0;box-sizing: border-box;padding: 0 5px;display: flex;flex-direction: column;}
.slider-item img{width: 100%;height: auto;display: block;border-radius: 20px 20px 0 0;}
.slider-controls{position: absolute;top: 50%;width: 100%;display: flex;justify-content: space-between;transform: translateY(-50%);padding: 0 10px;box-sizing: border-box;}

/* スライダー矢印 */
.slider-controls button{background: rgba(255, 255, 255, 0.8);border-radius: 50%;width: 30px;height: 30px;--angle: 30deg;--thickness: 2px;--color: #555;}

/* カード装飾 */
.card-container{width: auto;height: 100%;border-radius: 0 0 20px 20px;overflow: hidden;display: flex;flex-direction: column;}
.card-content{color: var(--main-white);text-align: center;position: relative;z-index: 1;padding: 10px;background-size: cover;background-position: center;background-repeat: no-repeat;flex-grow: 1;display: flex;flex-direction: column;justify-content: space-between;align-items: center;font-family: var(--serif);}
.card-content::before {content: '';position: absolute;top: 0;left: 0;width: 100%;height: 100%;background-color: var(--accent-color-g);z-index: -1;border-radius: 0 0 20px 20px;}
.card-image{width: 100%;height: auto;display: block;border-radius: 20px 20px 0 0;}
.card-title{font-size: var(--font-size-SM);font-weight: bold;margin-bottom: 10px;flex-shrink: 0;color:var(--main-white);}
.card-text {font-size: var(--font-size-S);line-height: 1.5;margin-bottom: 20px;color:var(--main-white);flex-grow: 1; /*高さ統一*/}
/* モバイル（767px以下ブレークポイント） */
@media (max-width: 767px) {
.brand-slider{margin: 0 auto 20px;}
.slider-item{width: 50%; /*2分割 */}}

/* 768px以上のブレークポイント */
@media (min-width: 768px) {
.brand-slider{max-width: var(--pc-size);margin: 0 auto 50px;}
.slider-item{width: 25%; /*4分割 */}
.card-container{margin: 0 5px;}
.card-title{font-size: var(--font-size-M);}
.card-text{font-size: var(--font-size-SM);}
}


/*お買い物ガイド*/
.guide-section{display: grid; grid-template-columns: repeat(2, 1fr);gap: 10px;padding: 10px;margin: 0 auto;}
.guide-item{padding: 20px;border-radius: 20px;text-align: center;background-color: var(--main-white);display: flex;flex-direction: column;color: var(--font-color);}
.guide-icon-wrapper{margin: 30px auto;width: 80px;height: 80px;display: flex;align-items: center;justify-content: center;}
.guide-icon-wrapper img{width: 100%;height: 100%;object-fit: contain;}
 
/*文字指定共通*/
.guide-item-title{margin-top: 0;font-size:var(--font-size-SM);}
.guide-item-description{flex-grow: 1;min-height: 60px; /* 固定値に設定 */display: flex;justify-content: center;align-items: flex-start;margin-bottom: 10px;font-size: var(--font-size-S);}
/*会員ステージタイトルのみの文字指定*/
.guide-item:nth-of-type(4) .guide-item-title{font-size: 0.85em}  
/*サービスガイド*/     
.guide-section-service{display: flex;flex-direction: column;gap: 5px;padding: 10px;color: var(--font-color);}
.guide-item-service{background-color: var(--main-white);border-radius: 20px;padding: 30px;display: flex;align-items: center;}  
.guide-item-service .guide-text-content{text-align: center;}
.guide-service-wrapper{margin: 30px auto;width: 120px;height: 120px;}
.guide-service-wrapper img{width: 100%;height: 100%;object-fit: contain;}
/*文字指定*/
.guide-service-description{flex-grow: 1;min-height: 40px;/* 固定値に設定 */ display: flex;justify-content: center;align-items: flex-start;margin-bottom: 10px;font-size: var(--font-size-S);}   
/*画像指定*/
.guide-item-service:nth-of-type(1) .guide-text-content,.guide-item-service:nth-of-type(2) .guide-text-content{margin-left: 15px;}
.guide-service-smalltxt{font-size:var(--font-size-SS);
;padding-bottom: 5px;}

/* バナー画像 */
.guide-item-service:nth-of-type(3),.guide-item-service:nth-of-type(4) {
background-color: transparent;padding: 0;box-shadow: none;}
.guide-item-service:nth-of-type(3) img,.guide-item-service:nth-of-type(4) img {width: 100%;}   
/* 768px以上のブレークポイント */
@media (min-width: 768px){
/*お買い物ガイド*/
.guide-section{max-width: 1462px;grid-template-columns: repeat(4, 1fr);gap: 20px;grid-column: 1 / 4;}
.guide-item{padding: 30px;height: auto; /* 自動高さ調整 */}
/*会員ステージタイトルのみの文字指定*/
.guide-item:nth-of-type(4) .guide-item-title {font-size:var(--font-size-SM);}  
/*サービスガイド*/     
.guide-section-service{max-width: 1462px;display: grid;grid-template-columns: repeat(2, 1fr);gap: 20px;margin: 0 auto;} 
.guide-item-description{min-height: 60px; /* PC用のmin-height設定 */height: auto;display: flex;justify-content: center;align-items: flex-start;}
.guide-item-title{font-size: var(--font-size-M);}
.guide-service-description,.guide-item-description{font-size: var(--font-size-SM);}
}


/* フッター */
#footer{padding: 20px;font-family:  var(--serif);color: var(--font-color); }
/*ロゴ*/
.ft-logo{text-align: center;margin: 10px auto;width: 50%;height: auto;}
/*フッターコンテンツ*/
.ft-main-content{display: flex;flex-direction: column-reverse;}
.ft-navlist:nth-of-type(1){display: none;}
/*フッターコンテンツ中身*/    
.ft-navlistTtl{font-family:  var(--title);color: var(--main-color);font-weight: bold;margin-bottom: 1em;letter-spacing: 0.08em;text-align: center;margin:15px 0px;font-size:var(--font-size-SM);} 
.ft-link-list{list-style-type: none;padding-left: 0;text-align: left;line-height: 2;gap: 5px;grid-template-columns: repeat(2, 1fr);display: grid;font-size:var(--font-size-S);}    
.ft-link-list li::before {content: "・";margin-right: .2em;color: var(--main-color);}
/*連絡先*/    
.ft-navlist:nth-of-type(4){flex: 0 0 220px;padding: 20px;border-radius: 20px;background-color: var(--accent-color-g);text-align: center;}    
.ft-navlist-order span{background-color: var(--main-color);color: var(--main-white);padding: 5px 10px;}
.number,.hours{font-size:var(--font-size-M);}    
.ft-navlist:nth-of-type(4) .number,
.ft-navlist:nth-of-type(4) .hours {color: var(--main-white);}
/*SNS*/        
.ft-sub-content{border-top: 1px solid var(--font-color);display: flex;align-items: center;justify-content: center;margin: 0 0 70px 0;}
.ft-content-inner01{margin: 10px 0;}
.ft-content-inner02{display: flex;align-items: center;justify-content: center;font-size:var(--font-size-S);}      
.ft-nav-txt{font-family:var(--title);color: var(--main-color);font-size:var(--font-size-SM);font-weight: bold;}
/*SNSアイコン*/
.ft-nav-sns{display: flex;list-style-type: none;}
.ft-nav-sns img{width: 30px;height: auto;margin: 0 5px;}      

/* 1201px以上 (PC向け) */
@media (min-width: 1201px) {
/*ロゴ*/
.ft-logo{margin: 10px auto 60px;}
/*フッターコンテンツ*/
#footer{margin: 50px auto;}    
.ft-main-content{max-width: var(--pc-size);display: flex;flex-direction: row;justify-content: center;margin: 0 auto;gap: 20px;}
/*フッターコンテンツ中身*/    
.ft-navlistTtl{text-align: left;margin:5px 0px;font-size: var(--font-size-M);}    
.ft-link-list{text-align: left;display: grid;grid-template-columns: repeat(1, 1fr);margin: 0 40px;font-size: var(--font-size-SM);}
.ft-navlist:nth-of-type(1){display: block;}
.ft-navlist:nth-of-type(4){display: block;}
/*連絡先*/
.ft-navlist:nth-of-type(4){flex: 0 0 250px;padding: 40px;}
.ft-navlist-order span{padding: 5px 10px;}
/*SNS*/
.ft-sub-content{margin: 0;}
.ft-content-inner01{margin: 10px 0;display: flex;justify-content: space-around;}
.ft-content-inner02{display: flex;align-items: center;margin: 0 50px;}
}

/*SPのみボトムナビゲーション*/
.fixed-menu-navi{position: fixed;left: 0;bottom: 0;background-color: var(--main-color);width: 100%;display: flex;padding-left: 0;margin: 0;z-index: 2147483647;align-items: center;    height: 10%;}
.fixed-menu-navi li {width: 100%;padding: 5px;list-style: none;text-align: center;padding: 5px 0px;}
.fixed-menu-navi li img{margin-bottom: 2px;}
.iconname{font-family: var(--serif);}
.fixed-menu-navi li+li{position: relative;}
.fixed-menu-navi li+li::before{content: "";display: block;height: 2em;border-left: 1px solid #fff;position: absolute;top: 0;bottom: 0;margin: auto;} 
/*文字・画像サイズ設定*/
.fixed-menu-navi a span {display: block;font-size:var(--font-size-SS);
;color: var(--main-white);}  
.fixed-menu-navi li img {width: 20px; height: 20px;}
/* 768px以上のブレークポイント */
@media(min-width: 768px) {.fixed-menu-navi {display: none;}}

/* おせちカルーセル修正 */
@media screen and (max-width: 767px) {
    .fs-pt-carousel--fitImage .fs-pt-carousel__slide img {
      max-width: 100%;
    }
}

/*ヘッダー*/
@media (min-width: 768px) {
body {padding-top: 0px;}
/*全体*/
#headerarea{display: block !important;position: relative;max-width: 1878px;height: auto;margin: 0 auto;}
.header-content-wrapper{padding-top: 30px;display: flex;justify-content: center;}
/* 上部メッセージ */
.header-shippingfee{position: absolute;top: 0;left: 50%;transform: translateX(-50%);width: 100vw;text-align: center;background-color: var(--main-color);color: var(--main-white);font-weight: bold;/*padding-block: .25em;*/z-index: 2;}
/* 上部メッセージ文字 */
.shippingfeetax{font-size: var(--font-size-M);}
.shippingfeearrow {position: relative;display: inline-block; font-size: var(--font-size-S);}
.shippingfeearrow::after {content: '';display: inline-block;width: 30px;height: 20px;margin-left: 5px;margin-bottom: 5px;vertical-align: middle;background-image: url('https://ginnomori.itembox.design/item/common/icon_arrow_w.svg');background-size: contain;background-repeat: no-repeat;background-position: center;}        
/* ロゴ設定 */ 
.logo{display: flex;align-items: center;margin-right: 20px;}
.logo-image{width: 90%;height: auto;margin: 5px 0;}
.logo-text{font-size: 14px;line-height: 1.2;}   
/* 右コンテナ */
.header-container{padding-top: 25px;}
/* 右コンテナ　上 */
.header-global-nav{display: flex;list-style-type: none;font-size: var(--font-size-M);}
.header-global-icon{display: flex;list-style-type: none;font-size: var(--font-size-S);}
/* 各li要素余白 */
.header-global-nav li {margin-right: 15px;white-space: nowrap;}
.header-global-icon li {margin-left: 8px;white-space: nowrap;}
/* 上部ナビゲーション */
.header-top{display: flex;padding: 10px 20px;align-items: center;justify-content: center;}
.header-right{display: flex;align-items: center;}
/* 検索ワード */   
.search-box{display: flex;border: 1px solid #ccc;border-radius: 5px;overflow: hidden;margin-right: 20px;}
.search-box input{border: none;padding: 5px 10px;outline: none;}
.search-box button{border: none;background-color: #fff;padding: 5px 10px;cursor: pointer;}
.fs-p-searchForm__inputGroup fs-p-inputGroup{border: 1px solid var(--font-color);background: ;}
.fs-p-searchForm__button::before {background-color: var(--main-color); }  
.fs-p-inputGroup {display: flex;align-items: stretch;border: 1px solid  var(--main-color);background:  var(--main-color);}      
/* アイコンナビ */  
.search-icon, .icon-user{
display: block;width: 24px;height: 24px;margin: 0 auto;margin-bottom: 2px;}
.user-name{font-size: var(--font-size-S);font-family: var(--serif);color: var(--main-color);
}
/*ドロップダウンメニュー*/
.dropdown-menu > ul {display: flex; gap: 40px; list-style-type: none;font-size:var(--font-size-M);}

/* 各メニュー項目*/
.dropdown-menu > ul > li {position: relative;padding: 10px;}
/* 子メニュー */
.dropdown-menu .submenu {position: absolute;top: 100%;left: 0;min-width: 200px;background-color: #fff;border: 1px solid #ddd;box-shadow: 0 2px 5px rgba(0,0,0,0.1);z-index: 1000;/visibility: hidden;opacity: 0;transform: translateY(-10px); transition: all 0.3s ease-out;padding-left: 5px;}
/* 親メニューホバー */
.dropdown-menu li:hover > .submenu {
visibility: visible;opacity: 1;transform: translateY(0);list-style-type: none;white-space: nowrap;} 
.submenu li{margin: 5px;padding: 7px;border-bottom: 1px solid var(--font-color);list-style-type: none;margin-left: 0;}
/* 最後のsubmenu liの下線を消す */
.submenu li:last-child {border-bottom: none;}    
/* 通常時の文字色 */
.submenu a{color: var(--font-color);}
/* ホバー時の文字色 */
.submenu a:hover{color: var(--main-color);}
/* 親メニュースタイル */
.parent-menu {position: relative;padding-bottom: 5px;transition: color 0.3s ease;
color: var(--font-color);}  
.parent-menu:hover::after {background-color: var(--main-color);} 
/* 下線を作成 */
.parent-menu::after {content: '';position: absolute;left: 0;bottom: 0;width: 100%;height: 2px;background-color: transparent;transition: background-color 0.3s ease;}
/* ホバー時のスタイル  */
.parent-menu:hover {color: var(--main-color);
}
/* 親メニューのli要素全体にホバーを適用 */
.dropdown-menu > ul > li:hover > .submenu {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
    
}
/* ホバー時の親メニューのテキスト色変更を、親li要素のホバーに合わせる */
.dropdown-menu > ul > li:hover > .parent-menu {
    color: var(--main-color);
}}
/* 768px以上、1200px以下のブレークポイント */
@media (min-width: 768px) and (max-width: 1200px) {
.header-content-wrapper {padding-top: 30px;display: flex;flex-direction: column;align-content: center;align-items: center;}
.dropdown-menu > ul {gap: 20px; /* メニュー間の間隔を狭める */}}
/* 768px以下のブレークポイント */
@media screen and (max-width: 767px) 
{#headerarea{display:none;}}

.fs-l-header {
    display: block;
    padding-top: 0px;
}
