@charset "Shift_JIS";

/* --------------------------------------------------------------------
【PC】「秋冬スイーツ特集」ページ用CSS / .mainframe_ > .sweets-aw
--------------------------------------------------------------------- */

/* スイーツについて（#sweets_seasonal）
================================================== */
.mainframe_ .sweets-aw #sweets_seasonal {
  margin-top: 40px;
}

/* タブ切り替えコンテンツ（.js-tab-switch）(JS連動コンテンツ) */
.mainframe_ .sweets-aw #sweets_seasonal .js-tab-switch div {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: auto;
}

.mainframe_ .sweets-aw #sweets_seasonal .js-tab-switch button {
  width: 100%;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  outline: none;
}

/* 子要素のイベント伝播OFF */
.mainframe_ .sweets-aw #sweets_seasonal .js-tab-switch button * {
  pointer-events: none;
}

.mainframe_ .sweets-aw #sweets_seasonal .js-tab-switch button a {
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  height: 80px;
  border-bottom: 4px solid #efefef;
  font-size: 2.6rem;
  font-weight: bold;
  color: #ccc;
  text-decoration: none;
  opacity: 1;
  letter-spacing: 0.08em;
  transition: border-bottom 0.3s ease, color 0.3s ease;
}

/* アクティブ状態の管理（秋スイーツ） */
.mainframe_ .sweets-aw #sweets_seasonal .js-tab-switch button#autumn.active-item a {
  border-color: #983f24;
  color: #4c3b2b;
}

.mainframe_ .sweets-aw #sweets_seasonal .js-tab-switch button#autumn.active-item a > span {
  color: #983f24;
}

.mainframe_ .sweets-aw #sweets_seasonal .js-tab-switch button#winter.active-item a {
  border-color: #405B9E;
  color: #4c3b2b;
}

.mainframe_ .sweets-aw #sweets_seasonal .js-tab-switch button#winter.active-item a > span {
  color: #405B9E;
}

/* スイーツについて（#sweets_seasonal > .about_sweets）
================================================== */

/* 背景（秋スイーツ） */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.autumn .txt_wrap {
  background: linear-gradient(0deg, rgb(255, 255, 255, 0%) 0%, rgb(255, 243, 227, 100%) 100%);
}

/* 背景（冬スイーツ） */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.winter .txt_wrap {
  background: linear-gradient(0deg, rgb(255, 255, 255, 100%) 0%, rgb(237, 245, 255, 100%) 100%);
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets .txt_wrap {
  padding-top: 50px;
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets .txt_wrap .txt {
  position: relative;
  width: fit-content;
  margin: auto;
  text-align: center;
}

/* 背景の装飾（共通設定） */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.autumn .txt::before,
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.autumn .txt::after,
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.winter .txt::before,
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.winter .txt::after {
  content: '';
  position: absolute;
  top: 50%;
  z-index: 1;
  width: 70px;
  aspect-ratio: 1;
  transform: translateY(-50%);
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.autumn .txt::before,
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.winter .txt::before {
  top: 10px;
  left: -80px;
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.autumn .txt::after,
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.winter .txt::after {
  top: 60px;
  right: -80px;
}

/* 背景の装飾（秋スイーツ） */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.autumn .txt::before {
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg01.png") center center/ contain no-repeat;
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.autumn .txt::after {
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg02.png") center center/ contain no-repeat;
}

/* 背景の装飾（冬スイーツ） */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.winter .txt::before {
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg03.png") center center/ contain no-repeat;
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.winter .txt::after {
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg04.png") center center/ contain no-repeat;
}

/* タイトルの装飾 */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets .txt {
  color: #4c3b2b;
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets .txt .lead_txt {
  font-size: 2rem;
  font-weight: bold;
}

/* 挿し色（秋スイーツ） */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.autumn .lead_txt span {
  color: #fb700d;
}

/* 挿し色（冬スイーツ） */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.winter .lead_txt span {
  color: #ea5506;
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets .txt .desc_txt {
  margin-top: 5px;
}

/* ナビメニュー(.navi_menu)
================================================== */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets .navi_menu {
  margin-top: 40px;
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets .navi_menu ul {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, 1fr);
  width: 70%;
  margin: auto;
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets .navi_menu ul li a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 70px;
  padding: 10px 0 15px;
  background: #68410a;
  border: 1px solid #68410a;
  border-radius: 3px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  color: #fff;
  box-shadow: 0 2px 3px 0 rgb(61, 61, 61, 15%);
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets .navi_menu ul li a > span:first-child {
  font-size: 1.6rem;
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets .navi_menu ul li a::after {
  content: '';
  position: absolute;
  bottom: 8px;
  width: 8px;
  height: 8px;
  border-right: solid 1px #fff;
  border-bottom: solid 1px #fff;
  transform: rotate(45deg);
}

/* 秋スイーツ */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.autumn .navi_menu ul li a {
  background: #895243;
  border: 1px solid #895243;
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.autumn .navi_menu ul li a:hover {
  background: #fff;
  color: #895243;
  opacity: 1;
  border-color: #895243;
}

/* マウスオーバー */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.autumn .navi_menu ul li a:hover::after {
  border-color: #895243;
}

/* 冬スイーツ */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.winter .navi_menu ul li a {
  background: #8d92bf;
  border: 1px solid #8d92bf;
}

.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.winter .navi_menu ul li a:hover::after {
  border-color: #8d92bf;
}

/* マウスオーバー */
.mainframe_ .sweets-aw #sweets_seasonal .about_sweets.winter .navi_menu ul li a:hover {
  background: #fff;
  color: #8d92bf;
  opacity: 1;
  border-color: #8d92bf;
}

/* --------------------------------------------------------------------
イベント出力コンテンツ（.event_）
--------------------------------------------------------------------- */

/* 各イベントブロックの余白 */
.mainframe_ .event_ .free_space5 {
  margin: 40px 0 20px;
  padding: 20px 0 0;
}

.mainframe_ .event_ .free_space5#marron,
.mainframe_ .event_ .free_space5#winterwagashi {
  margin-top: 20px;
}

.mainframe_ .event_ .free_space5 .goods_title {
  position: relative;
  text-align: center;
  color: #4c3b2b;
}

/* タイトル */
.mainframe_ .event_ .free_space5 .goods_title h2 {
  position: relative;
  display: inline-block;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.1rem;
}

.mainframe_ .event_ .free_space5 .goods_title h2 span {
  font-size: 2.2rem;
}

/* タイトルのリード文 */
.mainframe_ .event_ .free_space5 .goods_title p {
  margin: 10px 0 0;
  font-size: 1.6rem;
  line-height: 1.4;
  text-align: center;
}

/* 【PC】商品カード(.event_  .goods_  ul.StyleS_Frame_) 商品表示モード：リスト */
.mainframe_ .event_ .goods_  ul.StyleS_Frame_ {
  display: grid;
  gap: 20px 15px;
  grid-template-columns: repeat(4, 1fr);
}

.mainframe_ .event_ .goods_  ul.StyleS_Frame_ li {
  display: flex;
  flex-direction: column;
  min-height: 340px;
  border: none;
}

.mainframe_ .event_ .goods_  ul.StyleS_Frame_ li img {
  width: 100%;
}

/* 商品名 */
.mainframe_ .event_ .goods_  ul.StyleS_Frame_ li .name_ {
  display: block;
  margin-top: 10px;
  font-size: 1.5rem;
  line-height: 1.4;
  color: #000;
}

.mainframe_ .event_ .goods_  ul.StyleS_Frame_ li .name_ a {
  text-decoration: none;
}

/* 値段 */
.mainframe_ .event_ .goods_  ul.StyleS_Frame_ li .price_ {
  display: flex;
  justify-content: flex-end;
  align-items: end;
  flex-grow: 1;
  margin-top: 10px;
  font-size: 1.6rem;
  text-align: right;
  color: #000;
}

.mainframe_ .event_ .goods_  ul.StyleS_Frame_ li .price_::after {
  content: '(税込)';
  font-size: 1.4rem;
  color: #000;
}

/* コメント文 */
.mainframe_ .event_ .goods_  ul.StyleS_Frame_ li .small_ {
  display: none;
}

/* --------------------------------------------------------------------
/* 【PC】下部回遊エリア(フリースペース2・4)
--------------------------------------------------------------------- */

/* 商品一覧への回遊(.season_items)
================================================== */
.mainframe_ .season_items {
  margin: 40px 0 0;
}

/* 冬スイーツ：クリスマス菓子 */
.mainframe_ .season_items .christmas_food {
  max-width: 420px;
  margin: auto;
}

.mainframe_ .season_items .christmas_food p {
  margin: 0 0 10px;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  color: #4c3b2b;
}

.mainframe_ .season_items .christmas_food a {
  display: block;
  width: 100%;
  margin: 0 0 40px;
}

.mainframe_ .season_items .christmas_food img {
  width: 100%;
  height: auto;
}

.mainframe_ .season_items .item_all_wrap {
  position: relative;
  padding: 40px 0 60px;
}

/* 背景（秋スイーツ） */
.mainframe_ .season_items .item_all_wrap.autumn {
  background: linear-gradient(180deg, rgb(255, 255, 255, 0%) 0%, rgb(255, 243, 227, 100%) 100%);
  border-bottom: 4px solid #b46e52;
}

/* 背景（冬スイーツ） */
.mainframe_ .season_items .item_all_wrap.winter {
  background: linear-gradient(180deg, rgb(255, 255, 255, 100%) 0%, rgb(237, 245, 255, 100%) 100%);
  border-bottom: 4px solid #405B9E;
}


/* 全商品一覧ボタン(.season_items > .item_all_wrap)
================================================== */
.mainframe_ .season_items .item_all_wrap .btn_item {
  position: relative;
}

.mainframe_ .season_items .item_all_wrap .btn_item p {
  position: relative;
  margin: 0 0 5px;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  color: #4c3b2b;
}

/* 背景装飾（共通設定） */
.mainframe_ .season_items .item_all_wrap .btn_item::before,
.mainframe_ .season_items .item_all_wrap .btn_item::after {
  content: '';
  position: absolute;
  width: 70px;
  aspect-ratio: 1;
}

.mainframe_ .season_items .item_all_wrap .btn_item::before {
  top: 10%;
  left: 15%;
}

.mainframe_ .season_items .item_all_wrap .btn_item::after {
  right: 15%;
  bottom: 10%;
}

/* 背景装飾（秋スイーツ） */
.mainframe_ .season_items .item_all_wrap.autumn .btn_item::before {
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg01.png") center center/ contain no-repeat;
}

.mainframe_ .season_items .item_all_wrap.autumn .btn_item::after {
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg02.png") center center/ contain no-repeat;
}

/* 背景装飾（冬スイーツ） */
.mainframe_ .season_items .item_all_wrap.winter .btn_item::before {
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg03.png") center center/ contain no-repeat;
}

.mainframe_ .season_items .item_all_wrap.winter .btn_item::after {
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg04.png") center center/ contain no-repeat;
}

/* ボタン：すべての商品を見る */
.mainframe_ .season_items .item_all_wrap .btn_item a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 70px;
  max-width: 400px;
  margin: 0 auto;
  border-radius: 60px;
  font-size: 16px;
  line-height: 1.4;
  text-align: center;
  color: #f7f7f7;
  text-decoration: none;
  box-shadow: 0 2px 3px 0 rgb(61, 61, 61,15%);
}

.mainframe_ .season_items .item_all_wrap .btn_item a > span {
  font-weight: bold;
}

.mainframe_ .season_items .item_all_wrap .btn_item a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 20px;
  width: 10px;
  height: 10px;
  border-right: solid 1px #fff;
  border-bottom: solid 1px #fff;
  transform: translateY(-50%) rotate(-45deg);
}

/* ボタン（秋スイーツ） */
.mainframe_ .season_items .item_all_wrap.autumn .btn_item a {
  background: #895243;
  border: 1px solid #895243;
}

/* マウスオーバー */
.mainframe_ .season_items .item_all_wrap.autumn .btn_item a:hover {
  background: #fff;
  color: #895243;
  opacity: 1;
  border-color: #895243;
}

.mainframe_ .season_items .item_all_wrap.autumn .btn_item a:hover::after {
  border-color: #895243;
}

/* ボタン（冬スイーツ） */
.mainframe_ .season_items .item_all_wrap.winter .btn_item a {
  background: #8d92bf;
  border: 1px solid #8d92bf;
}

/* マウスオーバー */
.mainframe_ .season_items .item_all_wrap.winter .btn_item a:hover {
  background: #fff;
  color: #8d92bf;
  opacity: 1;
  border-color: #8d92bf;
}

.mainframe_ .season_items .item_all_wrap.winter .btn_item a:hover::after {
  border-color: #8d92bf;
}

/* 別タブへの遷移ボタン(.season_items > .item_all_wrap > .tab-switch)
================================================== */
.mainframe_ .season_items .item_all_wrap .tab-switch {
  position: absolute;
  right: 0;
  bottom: 0;
  display: inline-block;
  margin: 20px;
}

.mainframe_ .season_items .item_all_wrap .tab-switch button {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
}

.mainframe_ .season_items .item_all_wrap .tab-switch button a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
  color: #4c3b2b;
  text-decoration: none;
}

.mainframe_ .season_items .item_all_wrap .tab-switch button a::after {
  content: '▲';
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30px;
  aspect-ratio: 1;
  margin-left: 10px;
  background: #f7f7f7;
  border-radius: 999px;
  text-align: center;
  color: #555;
  transition: all 0.3s ease;
}

/* 別タブへ（秋スイーツ） */
.mainframe_ .season_items .item_all_wrap.autumn .tab-switch button a:hover::after {
  background: #405B9E;
  color: #f7f7f7;
}

/* 別タブへ（冬スイーツ） */
.mainframe_ .season_items .item_all_wrap.winter .tab-switch button a:hover::after {
  background: #895243;
  color: #f7f7f7;
}

/* //TOPページ */

/* --------------------------------------------------------------------
【PC】商品一覧ページ（.sweets-aw_itemlist）
--------------------------------------------------------------------- */

/* 一番上のタイトルを消す */
.mainframe_ .m-title01_.m-title01_ev_ {
  display: none;
}

/* 余白を消す */
.mainframe_ #event_wrapper_top {
  margin-bottom: 0 !important;
}


/* ヘッダー(.head)
================================================== */
.mainframe_ .sweets-aw_itemlist .head {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 120px;
}

/* 背景（秋スイーツ） */
.mainframe_ .sweets-aw_itemlist.autumn .head {
  background: linear-gradient(0deg, rgb(255, 255, 255, 0%) 0%, rgb(255, 243, 227, 100%) 100%);
  border-top: 4px solid #b46e52;
}

/* 背景（冬スイーツ） */
.mainframe_ .sweets-aw_itemlist.winter .head {
  background: linear-gradient(0deg, rgb(255, 255, 255, 100%) 0%, rgb(237, 245, 255, 100%) 100%);
  border-top: 4px solid #405B9E;
}


.mainframe_ .sweets-aw_itemlist .head .txt {
  position: relative;
  line-height: 1;
  text-align: center;
}

/* タイトル装飾（共通設定） */
.mainframe_ .sweets-aw_itemlist .head .txt::before,
.mainframe_ .sweets-aw_itemlist .head .txt::after {
  content: '';
  position: absolute;
  top: 50%;
  width: 80px;
  height: auto;
  aspect-ratio: 1;
  transform: translate(0, -50%);
}

/* タイトル装飾（秋スイーツ） */
.mainframe_ .sweets-aw_itemlist.autumn .head .txt::before {
  left: -120px;
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg01.png") center center / cover no-repeat;
}

.mainframe_ .sweets-aw_itemlist.autumn .txt::after {
  right: -120px;
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg02.png") center center / cover no-repeat;
}

/* タイトル装飾（冬スイーツ） */
.mainframe_ .sweets-aw_itemlist.winter .head .txt::before {
  left: -120px;
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg03.png") center center / cover no-repeat;
}

.mainframe_ .sweets-aw_itemlist.winter .txt::after {
  right: -120px;
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg04.png") center center / cover no-repeat;
}

/* タイトルテキスト（共通設定） */
.mainframe_ .sweets-aw_itemlist .head .txt span.txt_main {
  display: block;
  font-size: 3.2rem;
  font-weight: bold;
  color: #222;
}

/* タイトルテキスト（秋スイーツ） */
.mainframe_ .sweets-aw_itemlist.autumn .head .txt span.txt_main > span {
  color: #983f24;
}

/* タイトルテキスト（冬スイーツ） */
.mainframe_ .sweets-aw_itemlist.winter .head .txt span.txt_main > span {
  color: #405B9E;
}

/* トップに戻る(#around_button_wrap)
================================================== */
.mainframe_ .sweets-aw_itemlist #around_button_wrap .btn_top {
  position: relative;
}

.mainframe_ .sweets-aw_itemlist #around_button_wrap .btn_top a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 80px;
  max-width: 400px;
  margin: 0 auto;
  background: #673a3a;
  border: 1px solid #673a3a;
  border-radius: 60px;
  font-size: 16px;
  line-height: 1.4;
  color: #f7f7f7;
  text-decoration: none;
  box-shadow: 0 2px 3px 0 rgb(61, 61, 61,15%);
}

.mainframe_ .sweets-aw_itemlist #around_button_wrap .btn_top a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 20px;
  width: 10px;
  height: 10px;
  border-right: solid 1px #fff;
  border-bottom: solid 1px #fff;
  transform: translateY(-50%) rotate(-45deg);
}

.mainframe_ .sweets-aw_itemlist #around_button_wrap .btn_top a > span > span {
  font-weight: bold;
}

/* マウスオーバー */
.mainframe_ .sweets-aw_itemlist #around_button_wrap .btn_top a:hover {
  background: #f7f7f7;
  color: #673a3a;
  opacity: 1;
}

.mainframe_ .sweets-aw_itemlist #around_button_wrap .btn_top a:hover::after {
  border-color: #555;
}

/* //PC ここまで */

/* --------------------------------------------------------------------
【SP】「秋冬スイーツ特集」ページ用CSS / .wrapper_:not(:has(.mainframe_)) > .sweets-aw
--------------------------------------------------------------------- */

/* スイーツについて（#sweets_seasonal）
================================================== */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal {
  padding-top: 40px;
}

/* タブ切り替えコンテンツ（.js-tab-switch）(JS連動コンテンツ) */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .js-tab-switch div {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: auto;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .js-tab-switch button {
  width: 100%;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  outline: none;
}

/* 子要素のイベント伝播OFF */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .js-tab-switch button * {
  pointer-events: none;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .js-tab-switch button a {
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  height: 80px;
  border-bottom: 4px solid #efefef;
  font-size: 2.4rem;
  font-weight: bold;
  color: #ccc;
  text-decoration: none;
  opacity: 1;
  letter-spacing: 0.08em;
  transition: border-bottom 0.3s ease, color 0.3s ease;
}

/* アクティブ状態の管理（秋スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .js-tab-switch button#autumn.active-item a {
  border-color: #983f24;
  color: #4c3b2b;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .js-tab-switch button#autumn.active-item a > span {
  color: #983f24;
}

/* アクティブ状態の管理（冬スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .js-tab-switch button#winter.active-item a {
  border-color: #405B9E;
  color: #4c3b2b;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .js-tab-switch button#winter.active-item a > span {
  color: #405B9E;
}

/* スイーツについて（#sweets_seasonal > .about_sweets）
================================================== */

/* 背景（秋スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.autumn .txt_wrap {
  background: linear-gradient(0deg, rgb(255, 255, 255, 0%) 0%, rgb(255, 243, 227, 100%) 100%);
}

/* 背景（冬スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.winter .txt_wrap {
  background: linear-gradient(0deg, rgb(255, 255, 255, 100%) 0%, rgb(237, 245, 255, 100%) 100%);
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets .txt_wrap {
  padding-top: 40px;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets .txt_wrap .txt {
  position: relative;
  width: fit-content;
  margin: auto;
  text-align: center;
}

/* 背景の装飾（共通設定） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.autumn .txt::before,
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.autumn .txt::after,
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.winter .txt::before,
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.winter .txt::after {
  content: '';
  position: absolute;
  top: 50%;
  z-index: 1;
  width: 50px;
  aspect-ratio: 1;
  transform: translateY(-50%);
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.autumn .txt::before,
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.winter .txt::before {
  top: 60px;
  left: -25px;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.autumn .txt::after,
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.winter .txt::after {
  top: 80px;
  right: -25px;
}

/* 背景の装飾（秋スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.autumn .txt::before {
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg01.png") center center/ contain no-repeat;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.autumn .txt::after {
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg02.png") center center/ contain no-repeat;
}

/* 背景の装飾（冬スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.winter .txt::before {
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg03.png") center center/ contain no-repeat;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.winter .txt::after {
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg04.png") center center/ contain no-repeat;
}

/* タイトルの装飾 */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets .txt .lead_txt {
  margin-top: 10px;
  font-size: 2rem;
  font-weight: bold;
  color: #4c3b2b;
}

/* 挿し色（秋スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.autumn .lead_txt span {
  color: #fb700d;
}

/* 挿し色（冬スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.winter .lead_txt span {
  color: #ea5506;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets .txt .desc_txt {
  margin-top: 5px;
}

/* ナビメニュー(.navi_menu)
================================================== */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets .navi_menu {
  margin-top: 30px;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets .navi_menu ul {
  display: grid;
  gap: 5px;
  grid-template-columns: repeat(2, 1fr);
  margin: 0 3%;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets .navi_menu ul li a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 70px;
  padding: 10px 0 15px;
  background: #68410a;
  border: 1px solid #68410a;
  border-radius: 3px;
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  color: #fff;
  box-shadow: 0 2px 3px 0 rgb(61, 61, 61, 15%);
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets .navi_menu ul li a > span:first-child {
  font-size: 1.4rem;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets .navi_menu ul li a::after {
  content: '';
  position: absolute;
  bottom: 8px;
  width: 8px;
  height: 8px;
  border-right: solid 1px #fff;
  border-bottom: solid 1px #fff;
  transform: rotate(45deg);
}

/* 秋スイーツ */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.autumn .navi_menu ul li a {
  background: #895243;
  border: 1px solid #895243;
}

/* 冬スイーツ */
.wrapper_:not(:has(.mainframe_)) .sweets-aw #sweets_seasonal .about_sweets.winter .navi_menu ul li a {
  background: #8d92bf;
  border: 1px solid #8d92bf;
}

/* --------------------------------------------------------------------
イベント出力コンテンツ（.event_）
--------------------------------------------------------------------- */

/* 各イベントブロックの余白 */
.wrapper_:not(:has(.mainframe_)) .event_ .free_space5 {
  margin: 40px 0 20px;
  padding-top: 20px;
}

.wrapper_:not(:has(.mainframe_)) .event_ .free_space5#marron,
.wrapper_:not(:has(.mainframe_)) .event_ .free_space5#winterwagashi {
  margin-top: 20px;
}

.wrapper_:not(:has(.mainframe_)) .event_ .free_space5 .goods_title {
  position: relative;
  text-align: center;
  color: #4c3b2b;
}

/* タイトル */
.wrapper_:not(:has(.mainframe_)) .event_ .free_space5 .goods_title h2 {
  position: relative;
  display: inline-block;
  font-size: 2.6rem;
  font-weight: bold;
  line-height: 1.2;
  color: #4c3b2b;
  letter-spacing: 0.1rem;
}

.wrapper_:not(:has(.mainframe_)) .event_ .free_space5 .goods_title h2 span {
  font-size: 1.8rem;
}

/* タイトルのリード文 */
.wrapper_:not(:has(.mainframe_)) .event_ .free_space5 .goods_title p {
  margin: 10px 0 0;
  font-size: 1.6rem;
  line-height: 1.4;
  text-align: center;
  color: #4c3b2b;
}

/* 【SP】商品カード(.event_  .goods_  ul.goods_p_.goods_list_wrapper_) 商品表示モード：なし */
.wrapper_:not(:has(.mainframe_)) .event_ .goods_  ul.goods_p_.goods_list_wrapper_ {
  display: grid;
  gap: 30px 10px;
  grid-template-columns: repeat(2, 1fr);
  padding: 0 3%;
  border: none;
}

.wrapper_:not(:has(.mainframe_)) .event_ .goods_  ul.goods_p_.goods_list_wrapper_ li {
  padding: 0;
  border: none;
}

.wrapper_:not(:has(.mainframe_)) .event_ .goods_  ul.goods_p_.goods_list_wrapper_ li  a {
  padding: 0;
}

.wrapper_:not(:has(.mainframe_)) .event_ .goods_  ul.goods_p_.goods_list_wrapper_ .img_,
.wrapper_:not(:has(.mainframe_)) .event_ .goods_  ul.goods_p_.goods_list_wrapper_ img {
  display: block;
  width: 100%;
}

.wrapper_:not(:has(.mainframe_)) .event_ .goods_  ul.goods_p_.goods_list_wrapper_ .desc_ {
  display: block;
  padding: 0;
}

/* 商品名 */
.wrapper_:not(:has(.mainframe_)) .event_ .goods_  ul.goods_p_.goods_list_wrapper_ .desc_ .name_ {
  margin-top: 10px;
  font-size: 1.5rem;
  line-height: 1.4;
  color: #000;
  text-decoration: none;
}

/* 値段 */
.wrapper_:not(:has(.mainframe_)) .event_ .goods_  ul.goods_p_.goods_list_wrapper_ .desc_  .price_box .price_ {
  margin-top: 10px;
  font-size: 1.6rem;
  text-align: right;
  color: #000;
}

.wrapper_:not(:has(.mainframe_)) .event_ .goods_  ul.goods_p_.goods_list_wrapper_ .desc_  .price_box .price_::after {
  content: '(税込)';
  font-size: 1.4rem;
  color: #000;
}

/* コメント文 */
.wrapper_:not(:has(.mainframe_)) .event_ .goods_  ul.goods_p_.goods_list_wrapper_ .desc_ .small_ {
  display: none;
}

/* アイコン */
.wrapper_:not(:has(.mainframe_)) .event_ .goods_  ul.goods_p_.goods_list_wrapper_ .desc_  .icon_ {
  display: none;
}

/* --------------------------------------------------------------------
/* 【SP】下部回遊エリア(フリースペース2・4)
--------------------------------------------------------------------- */

/* 商品一覧への回遊(.season_items)
================================================== */
.wrapper_:not(:has(.mainframe_)) .season_items {
  margin: 40px 0 0;
}

/* 冬スイーツ：クリスマス菓子 */
.wrapper_:not(:has(.mainframe_)) .season_items .christmas_food {
  margin: 0 3%;
}

.wrapper_:not(:has(.mainframe_)) .season_items .christmas_food p {
  margin: 0 0 10px;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  color: #4c3b2b;
}

.wrapper_:not(:has(.mainframe_)) .season_items .christmas_food a {
  display: block;
  width: 100%;
  margin: 0 0 40px;
}

.wrapper_:not(:has(.mainframe_)) .season_items .christmas_food img {
  width: 100%;
  height: auto;
}

.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap {
  position: relative;
  padding: 40px 0 70px;
}

/* 背景（秋スイーツ） */
.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap.autumn {
  background: linear-gradient(180deg, rgb(255, 255, 255, 0%) 0%, rgb(255, 243, 227, 100%) 100%);
  border-bottom: 4px solid #b46e52;
}

/* 背景（冬スイーツ） */
.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap.winter {
  background: linear-gradient(180deg, rgb(255, 255, 255, 100%) 0%, rgb(237, 245, 255, 100%) 100%);
  border-bottom: 4px solid #405B9E;
}


/* 全商品一覧ボタン(.season_items > .item_all_wrap)
================================================== */
.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap .btn_item {
  position: relative;
  width: 90%;
  margin: 0 auto;
}

.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap .btn_item p {
  position: relative;
  margin: 0 0 5px;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  color: #4c3b2b;
}

/* ボタン：すべての商品を見る */
.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap .btn_item a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 70px;
  max-width: 400px;
  margin: 0 auto;
  border-radius: 60px;
  font-size: 1.6rem;
  line-height: 1.4;
  text-align: center;
  color: #f7f7f7;
  text-decoration: none;
  box-shadow: 0 2px 3px 0 rgb(61, 61, 61,15%);
}

.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap .btn_item a > span {
  font-weight: bold;
}

.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap .btn_item a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 20px;
  width: 10px;
  height: 10px;
  border-right: solid 1px #fff;
  border-bottom: solid 1px #fff;
  transform: translateY(-50%) rotate(-45deg);
}

/* ボタン装飾（共通設定） */
.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap .btn_item a::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 20px;
  height: 80%;
  aspect-ratio: 1;
  transform: translateY(-50%);
}

/* ボタン（秋スイーツ） */
.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap.autumn .btn_item a {
  background: #895243;
  border: 1px solid #895243;
}

/* ボタン（冬スイーツ） */
.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap.winter .btn_item a {
  background: #8d92bf;
  border: 1px solid #8d92bf;
}


/* 別タブへの遷移ボタン(.season_items > .item_all_wrap > .tab-switch)
================================================== */
.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap .tab-switch {
  position: absolute;
  right: 0;
  bottom: 0;
  display: inline-block;
  margin: 20px;
}

.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap .tab-switch button {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
}

.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap .tab-switch button a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
  color: #4c3b2b;
  text-decoration: none;
}

.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap .tab-switch button a::after {
  content: '▲';
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30px;
  aspect-ratio: 1;
  margin-left: 10px;
  background: #f7f7f7;
  border-radius: 999px;
  text-align: center;
  color: #555;
  transition: all 0.3s ease;
}

/* 別タブへ（秋スイーツ） */
.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap.autumn .tab-switch button a::after {
  background: #405B9E;
  color: #f7f7f7;
}

/* 別タブへ（冬スイーツ） */
.wrapper_:not(:has(.mainframe_)) .season_items .item_all_wrap.winter .tab-switch button a::after {
  background: #895243;
  color: #f7f7f7;
}

/* //TOPページ */

/* --------------------------------------------------------------------
【SP】商品一覧ページ（.sweets-aw_itemlist）
--------------------------------------------------------------------- */

/* 一番上のタイトルを消す */
.wrapper_:not(:has(.mainframe_)) .m-title01_.m-title01_ev_ {
  display: none;
}

/* ヘッダー(.head)
================================================== */
.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist .head {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 120px;
}

/* 背景（秋スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist.autumn .head {
  background: linear-gradient(0deg, rgb(255, 255, 255, 0%) 0%, rgb(255, 243, 227, 100%) 100%);
  border-top: 4px solid #b46e52;
}

/* 背景（冬スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist.winter .head {
  background: linear-gradient(0deg, rgb(255, 255, 255, 100%) 0%, rgb(237, 245, 255, 100%) 100%);
  border-top: 4px solid #405B9E;
}


.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist .head .txt {
  position: relative;
  line-height: 1;
  text-align: center;
}

/* タイトル装飾（共通設定） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist .head .txt::before,
.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist .head .txt::after {
  content: '';
  position: absolute;
  top: 50%;
  width: 60px;
  height: auto;
  aspect-ratio: 1;
  transform: translate(0, -50%);
}

/* タイトル装飾（秋スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist.autumn .head .txt::before {
  left: -80px;
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg01.png") center center / cover no-repeat;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist.autumn .txt::after {
  right: -80px;
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg02.png") center center / cover no-repeat;
}

/* タイトル装飾（冬スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist.winter .head .txt::before {
  left: -80px;
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg03.png") center center / cover no-repeat;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist.winter .txt::after {
  right: -80px;
  background: url("/contents/proper/foods/event/sweets-aw/2025/img/title-bg04.png") center center / cover no-repeat;
}

/* タイトルテキスト（共通設定） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist .head .txt span.txt_main {
  display: block;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.4;
  color: #222;
}

/* タイトルテキスト（秋スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist.autumn .head .txt span.txt_main > span {
  color: #983f24;
}

/* タイトルテキスト（冬スイーツ） */
.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist.winter .head .txt span.txt_main > span {
  color: #405B9E;
}

/* トップに戻る(#around_button_wrap)
================================================== */
.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist #around_button_wrap .btn_top {
  position: relative;
  z-index: 1;
  width: 90%;
  margin: 0 auto;
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist #around_button_wrap .btn_top a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 80px;
  max-width: 400px;
  margin: 0 auto;
  background: #673a3a;
  border: 1px solid #673a3a;
  border-radius: 60px;
  font-size: 16px;
  line-height: 1.4;
  color: #f7f7f7;
  text-decoration: none;
  box-shadow: 0 2px 3px 0 rgb(61, 61, 61,15%);
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist #around_button_wrap .btn_top a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 20px;
  width: 10px;
  height: 10px;
  border-right: solid 1px #fff;
  border-bottom: solid 1px #fff;
  transform: translateY(-50%) rotate(-45deg);
}

.wrapper_:not(:has(.mainframe_)) .sweets-aw_itemlist #around_button_wrap .btn_top a > span > span {
  font-weight: bold;
}

/* //SP ここまで */