@charset "UTF-8";

/* ----------------------------------
layout
---------------------------------- */
.pane-main { margin: 0; padding: 0;}

[data-browse-mode="S"] .next-date-info { margin: 20px 0px 20px;}
[data-browse-mode="S"] .next-date-info__body { text-align: center; font-size: 1.1em;}

[data-browse-mode="P"] .shop-list-container { overflow: visible !important;}
[data-browse-mode="P"] .pane-left-menu { display: none;}
[data-browse-mode="P"] .page-event .pane-contents .container { width: 100%; margin: 0; padding: 0; min-width: unset; max-width: unset;}
[data-browse-mode="P"] .page-event .pane-contents .container .pane-main { width: 100%; margin: 0;}
[data-browse-mode="P"] #header.pane-header { margin: 0;}

#wine20th h1,
#wine20th h2,
#wine20th h3 { margin: 0; font-weight: inherit;}
#wine20th a { color: inherit; transition: all .3s;}
#wine20th a:hover { opacity: 0.8;}
#wine20th a:hover img { opacity: 1;}
#wine20th img { vertical-align: bottom;}
#wine20th button { margin: 0; padding: 0; color: inherit; background: none; border: none; cursor: pointer;}
#wine20th *::-webkit-scrollbar { width: 8px; height: 8px; background: #DCDCDC; border-radius: 20px;}
#wine20th *::-webkit-scrollbar-track { background: #DCDCDC; border-radius: 20px;}
#wine20th *::-webkit-scrollbar-thumb { background: #CC0000; border-radius: 20px;}

@media (min-width: 769px) {
	#wine20th .for-sp { display: none;}
}
@media (max-width: 768px) { #shop_header { background: #FFF;}
  #wine20th .for-pc { display: none;}
  #wine20th *::-webkit-scrollbar { background: none;}
  #wine20th *::-webkit-scrollbar-track { background: none;}
  #wine20th *::-webkit-scrollbar-thumb { background: #DCDCDC;}
}

/* ----------------------------------
common
---------------------------------- */
#wine20th .inner { max-width: 1230px; margin: 0 auto; padding: 0 15px;}
#wine20th .contents-box { position: relative; margin: 0 0 50px; padding: 60px; background: #FFFFFF; border-radius: 10px; box-shadow: 0px 0px 30px rgba(0, 0, 0, .1);}
#wine20th .contents-box > *:last-child,
#wine20th .contents-box:last-of-type { margin-bottom: 0;}
#wine20th .contents-box::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 8px; border-radius: 8px 8px 0 0; background: linear-gradient(to left,#4DD6FF 0%, #F5FF7B 37.33%, #206DD6 77.58%, #002A76 100%);}

@media (max-width: 768px) {
  #wine20th .contents-box { margin: 0 0 25px; padding: 38px 15px; box-shadow: none;}
}

/* Title */
#wine20th .title-head { width: fit-content; margin-inline: auto; padding-inline: 200px; position: relative;}
#wine20th .title-head:before, 
#wine20th .title-head:after {
  position: absolute;
  display: block;
  content: "";
}
#wine20th .title-head:before { left: 0; }
#wine20th .title-head:after { right: 0; }
#wine20th h2.title { padding: 0; margin: 0 0 10px; border: none; font-size: 38px; font-weight: 700; text-align: center; letter-spacing: .05em; line-height: 1.0; color: #002A76;}
#wine20th h3.subtitle { padding: 0; margin: 0 0 10px; border: none; font-size: 32px; font-weight: 700; text-align: center; letter-spacing: .05em; line-height: 1.0;}
#wine20th p.sub-eng { width: fit-content; margin: 20px auto 55px; padding: 5px 22px; font-size: 22px; font-weight: 500; text-align: center; letter-spacing: .05em; background: #FFFF00; font-family: "Poppins", sans-serif; color: #002A76;}
#wine20th p.pop-top { margin: 0 0 10px; font-size: 18px; font-weight: 700; text-align: center; line-height: 1.2; color: #002A76;}
#wine20th p.pop-top span { padding: 0 15px; font-size: 18px; font-weight: 700; line-height: 1.0; position: relative;}
#wine20th .sec-main #type_meat_amount .category-tab p.pop-top span { font-size: 12px;}
#wine20th p.pop-top span::before,
#wine20th p.pop-top span::after  { content: ''; height: 100%; border-left: #002A76 1px solid; display: block; position: absolute; top: 0;}
#wine20th .sec-main #type_meat_amount .category-tab p.pop-top span::before,
#wine20th .sec-main #type_meat_amount .category-tab p.pop-top span::after  { border-color: #FFF;}
#wine20th p.pop-top span::before { left: 0; transform: rotate(-45deg);}
#wine20th p.pop-top span::after  { right: 0; transform: rotate(45deg);}

@media (max-width: 768px) {
  #wine20th .title-head { max-width: 430px; width: 100%; margin-inline: auto; padding-inline: 0;}
	#wine20th h2.title { font-size: clamp(20px, 5.5813953488372094vw, 24px);}
	#wine20th h3.subtitle { font-size: clamp(18px, 5.128205128205128vw, 20px);}
  #wine20th p.sub-eng { margin-block: 15px 30px; font-size: 14px; letter-spacing: 0;}
	#wine20th p.pop-top { margin: 0 0 5px; font-size: 16px;}
	#wine20th p.pop-top span { padding: 0 10px; font-size: 14px;}
  #wine20th .sec-main #type_meat_amount .category-tab p.pop-top span { font-size: clamp(8px, 2.13vw, 10px);}
}

/* Button */
#wine20th .more-btn { width: 340px; max-width: 90%; margin: 0 auto 50px; display: none;}
#wine20th .more-btn a {
  width: 100%;
  height: 50px;
  border-radius: 100px;
  font-size: 16px;
  font-weight: 700;
	line-height: 1.2;
  color: #002A76;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #FFFF00;
  transition: 0.3s;
}
#wine20th .more-btn a:hover { color: #FFF; background: #002A76; opacity: 1;}
#wine20th .more-btn.top { margin-top: 24px;}
#wine20th .more-btn.top a { background: #FFF; color: #CC0000;}
#wine20th .more-btn.top a:hover { color: #FFF; background: #CC0000; opacity: 1;}
#wine20th .more-btn.bottom { width: 600px; margin-block: 60px 0; display: block;}
#wine20th .more-btn.bottom a { position: relative; height: 72px; border: #002A76 1px solid; background: #002A76; color: #FFF; font-size: 20px; text-align: center;}
#wine20th .more-btn.bottom a:after {
  position: absolute;
  display: block;
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #FFF;
  border-right: 2px solid #FFF;
  top: 50%;
  right: 30px;
  transform: translateY(-50%) rotate(45deg);
}
#wine20th .more-btn.bottom a:hover {
  color: #002A76; background: #FFF; opacity: 1;
}
#wine20th .more-btn.bottom a:hover:after { border-color: #002A76;}
#wine20th .pickup-contents .more-btn { display: block;}

@media (max-width: 768px) {
  #wine20th .more-btn { width: 90%; max-width: 400px; margin: 0 auto 50px;}
  #wine20th .more-btn a { height: 50px; font-size: 18px;}
  #wine20th .more-btn.top { margin-top: 60px;}
	#wine20th .more-btn.bottom { margin-top: 40px; display: block;width: 100%; }
	#wine20th .more-btn.bottom a { height: 80px; font-size: 18px;}
  #wine20th .more-btn.bottom a:after {
    width: 8px;
    height: 8px;
    right: 25px;
  }
}

#wine20th a.read-more {
  width: 340px;
  height: 50px;
  max-width: 90%;
  margin: 0px auto 10px;
	border-radius: 50px;
  font-size: 16px;
  font-weight: 700;
	color: #002A76;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #FFFF00;
  transition: 0.3s;
}
#wine20th a.read-more:hover { color: #FFF; background: #002A76; opacity: 1;}
#wine20th .pickup-contents a.read-more { display: none;}

@media (max-width: 768px) {
  #wine20th a.read-more { font-size: 18px;}
}

/* ----------------------------------
event
---------------------------------- */
#wine20th .block-top-event--header { display: none;}

/* ----------------------------------
MainVisual
.---------------------------------- */
#wine20th .sec-mv img { width: 100%;}
 
/* ----------------------------------
Intro
---------------------------------- */
#wine20th .sec-intro {
  padding: 100px 0 120px;
  background-image: linear-gradient(135deg,rgba(77, 214, 255, 0.15) 0%, rgba(245, 255, 123, 0.15) 50%, rgba(40, 208, 175, 0.15) 90%, rgba(0, 100, 118, 0.15) 100%), url(/img/usr/event/2026/wine20th/202607/intro_bg01.png), url(/img/usr/event/2026/wine20th/202607/intro_bg02.png);
	background-repeat: no-repeat;
	background-position: center, left 15px top 35px, right 20px bottom 60px;
	background-size: cover, 345px auto, 340px auto;
  overflow: hidden;
}
#wine20th .sec-intro p { font-size: 24px; font-weight: 700; text-align: center; letter-spacing: .05em; line-height: 2.0; color: #000;}
#wine20th .sec-intro p.ttl { position: relative; margin-bottom: 90px; font-size: 50px; font-weight: 700; line-height: 1.2; color: #002A76; }
#wine20th .sec-intro p.ttl:before,
#wine20th .sec-intro p.ttl:after {
  position: absolute;
  display: block;
  content: "";
}
#wine20th .sec-intro p.ttl:before {
  background: url(/img/usr/event/2026/wine20th/202607/intro_ttl.png) no-repeat center / 100% auto;
  width: 100%;
  aspect-ratio: 1200 / 144;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#wine20th .sec-intro p.ttl:after {
  background: url(/img/usr/event/2026/wine20th/202607/intro_ttl-line.png) no-repeat center / 100% auto;
  width: 333px;
  aspect-ratio: 333 / 53;
  top: calc(100% + 10px);
  left: 50%;
  transform: translateX(-64%);
}
#wine20th .sec-intro p.small { margin-top: 40px; font-size: 13px; font-weight: 500; letter-spacing: 0em; text-align: left;}
#wine20th .sec-intro p .marker { background: linear-gradient(transparent 60%, #FBDE30 60%);}

@media (max-width: 768px) {
	#wine20th .sec-intro { 
    padding-block: 80px 100px;
    background-position: center, left -5.348837209302325vw top 1.8604651162790697vw, right -1.8604651162790697vw bottom 9.30232558139535vw;
    background-size: cover, 33.48837209302326vw auto, 33.48837209302326vw auto;
  }
  #wine20th .sec-intro p.ttl {
    width: fit-content;
    margin-inline: auto;
  }
  #wine20th .sec-intro p.ttl:before {
    background-image: url(/img/usr/event/2026/wine20th/202607/intro_ttl_sp.png);
    width: min(117px, 27.209302325581397vw);
    aspect-ratio: 234 / 106;
    top: auto;
    left: auto;
    bottom: 100%;
    right: 0;
    transform: translate(0);
  }
  #wine20th .sec-intro p.ttl:after {
    background-image: url(/img/usr/event/2026/wine20th/202607/intro_ttl-line_sp.png);
    width: min(198px, 46.04651162790698vw);
    aspect-ratio: 397 / 56;
    top: calc(100% + 5px);
    left: 50%;
    transform: translateX(-64%);
  }
  #wine20th .sec-intro p { font-size: clamp(13px, 3.7209302325581395vw, 16px); letter-spacing: 0; line-height: 1.8;}
  #wine20th .sec-intro p + p { margin-top: 10px;}
  #wine20th .sec-intro p.ttl { margin-bottom: 40px; font-size: clamp(22px, 6.046511627906977vw, 26px); line-height: 1.2;}
	#wine20th .sec-intro p.small { margin-top: 15px; font-size: 12px;}
}

/* ----------------------------------
Campaign
---------------------------------- */
#wine20th .sec-campaign { padding-bottom: 100px;}
#wine20th .sec-campaign .about { padding: 0 45px; text-align: center; background: #fff;}
#wine20th .sec-campaign .about .img { margin: 0 0 40px;}
#wine20th .sec-campaign .about .img img { transform: translateY(-45px);}
#wine20th .sec-campaign .about .schedule { position: relative; font-family: "Source Han Sans JP", "源ノ角ゴシック JP", sans-serif; display: flex; align-items: center; border: 2px solid #C00; border-radius: 40px; overflow: hidden;}
#wine20th .sec-campaign .about .schedule dt { width: 190px; padding: 13px 0 13px 10px; font-size: 26px; font-weight: 500; letter-spacing: 0.1em; color: #FFF; background: #C00; text-align: center;}
#wine20th .sec-campaign .about .schedule dd { color: #C00; font-size: 26px; font-weight: bold; text-align: center; flex: 1;}
#wine20th .sec-campaign .about .schedule dd span { font-size: 34px;}
#wine20th .sec-campaign .about .schedule.next { margin-top: 20px; border: 2px solid #666;}
#wine20th .sec-campaign .about .schedule.next dt { background: #666;}
#wine20th .sec-campaign .about .schedule.next dd { color: #666;}
#wine20th .sec-campaign .about .textRed { margin-bottom: 40px; font-size: 30px; font-weight: 700; text-align: center; color: #cc0000;}

#wine20th .sec-campaign .next-p { margin-top: 10px; font-size: 18px; font-weight: normal; color: #666;}
#wine20th .sec-campaign .next-date-info { border: 3px solid #6b4542; margin: 30px 0 0; padding: 10px;}
#wine20th .sec-campaign .next-date-info__head .date-info__label { padding: 10px; display: block; font-size: 20px; color: white; background-color: #6b4542 !important; margin: 0 auto;}
#wine20th .sec-campaign .next-date-info__body { text-align: center; font-size: 1.5em; font-weight: 500; margin: 10px 0 0;}

[data-browse-mode="S"] #wine20th .next-date-info { margin: 20px 0px 20px;}
[data-browse-mode="S"] #wine20th .next-date-info__body { text-align: center; font-size: 1.1em;}
[data-browse-mode="S"] #wine20th .sec-campaign .next-date-info__head .date-info__label { font-size: 1.1em;}

@media (max-width: 768px) {
	#wine20th .sec-campaign { padding-bottom: 40px;}
  #wine20th .sec-campaign .about { margin: 0; padding: 0 15px;}
  #wine20th .sec-campaign .about .img img { transform: translateY(-10%); }
  #wine20th .sec-campaign .about .schedule { padding: 25px 5px 17px; border-width: 2px; border-radius: 12px; overflow: visible;}
  #wine20th .sec-campaign .about .schedule dt { position: absolute; top: -17px; left: 50%; transform: translateX(-50%); width: 126px; padding: 5px 0; font-size: 3.8vw; border-radius: 30px;}
  #wine20th .sec-campaign .about .schedule dd { font-size: clamp(14px, 3.72vw, 16px);}
  #wine20th .sec-campaign .about .schedule dd span { font-size: clamp(20px, 5.58vw, 24px);}
  #wine20th .sec-campaign .navi { flex-direction: column; gap: 15px; margin: 40px 0 0;}
  #wine20th .sec-campaign .navi li a { width: 340px; max-width: 90%; height: 50px; margin: 0 auto; font-weight: 500; font-size: 18px;}
  #wine20th .sec-campaign .navi li a span { font-size: 14px;}
  #wine20th .sec-campaign .navi li a::after { right: 20px;}
	#wine20th .sec-campaign .about .textRed { font-size: 17px;}
	#wine20th .sec-campaign .about .img:has(+ .textRed) { margin: 0;}
}

/* ----------------------------------
main
---------------------------------- */
#wine20th .sec-wrapper { background: url(/img/usr/event/2026/wine20th/202607/bg.png) no-repeat center bottom / cover;}
#wine20th .sec-main { padding: 75px 0; position: relative;}
#wine20th .sec-main .shop-list-container { padding-bottom: 30px; overflow-x: auto;}
#wine20th .sec-main .shop-list { display: grid; grid-auto-flow: column; grid-template-rows: repeat(2, auto); grid-auto-columns: 246px; gap: 26px 32px; width: max-content; margin: 24px auto 0;}
#wine20th .sec-main .shop-list li { position: relative;}
#wine20th .sec-main .shop-list li a { display: block;}
#wine20th .sec-main .shop-list li figure { display: block; border: 1px solid #D5D5D5;}
#wine20th .sec-main .shop-list li figure img { max-width: 100%; max-height: 100%; display: block;}
#wine20th .sec-main .shop-list li .name { font-size: 12px; margin: 5px 0 0;}
#wine20th .sec-main .shop-list li .js { display: block !important;}
#wine20th .sec-main .shop-list li .label {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  font-size: 16px;
  font-weight: bold;
  color: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(-45deg, #AC0F14 0%, #AC0F14 50%, #CC090F 50%, #CC090F 100%);
  position: absolute;
  top: -24px;
  right: -24px;
  z-index: 1;
}
#wine20th .sec-main .category-list   { display: flex; gap: 48px;}
#wine20th .sec-main .category-box    { margin: 40px 0 0;}
#wine20th .sec-main .category-tab    { margin: 25px auto 30px; display: flex; flex-wrap: wrap; justify-content: center; position: relative; gap: 10px;}
#wine20th .sec-main .category-tab li { width: calc((100% - 10px * 4)/5);}
#wine20th .sec-main .category-tab li button { 
	width: 100%;
	min-height: 56px;
	border-radius: 10px;
  padding: 0;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
	display: flex;
  flex-direction: column;
	justify-content: center;
	align-items: center;
	background: #E5E9F1;
  color: #002A76;
  position: relative;
	cursor: pointer;
}
#wine20th .sec-main .category-tab li.active button { color: #FFF; background: #002A76; cursor: inherit; pointer-events: none;}
#wine20th .sec-main #type_alcohol_set .category-tab li { width: calc((100% - 10px * 3) / 4);}
#wine20th .sec-main .category-wrap .event_pick_frame { display: none;}
#wine20th .sec-main .category-wrap .event_pick_frame.active { display: block;}
#wine20th .head-intro-space          { margin: 40px 0; display: flex; justify-content: space-between; gap: 35px;}
#wine20th .head-intro-space .image   { width: calc(50% - 17.5px);}
#wine20th .head-intro-space .desc    { width: calc(50% - 17.5px); font-size: 18px; font-weight: 500;}
#wine20th .search-contents-list      { display: flex; flex-wrap: wrap; justify-content: center; gap: 30px; max-width: 710px; margin: 0 auto;}
#wine20th .search-contents-list li   { width: calc((100% - 30px) / 2);}
#wine20th .search-contents-list li a { font-size: 18px; font-weight: bold; color: #FFF; text-align: center; background: #C00; border-radius: 5px; display: block; padding: 16px;}

@media (max-width: 768px) {
  #wine20th .sec-wrapper {background-position: left bottom;}
	#wine20th .sec-main { padding: 50px 0;}
  #wine20th .sec-main .shop-list-container { padding-bottom: 20px;}
	#wine20th .sec-main .shop-list { grid-template-rows: repeat(3, auto); grid-auto-columns: calc(130 / 430 * 100vw); margin: 15px auto 0; padding: 0px 15px; gap: 20px 20px;}
  #wine20th .sec-main .shop-list li .label { top: -15px; right: -15px; width: 40px; height: 40px; font-size: 14px;}
	#wine20th .sec-main .shop-list li .name { font-size: 10px;}
  #wine20th .sec-main .category-list   { gap: 16px; padding: 0 15px;}
  #wine20th .sec-main .category-box    { margin: 30px 0 0;}
  #wine20th .sec-main .category-tab    { margin: 18px auto 25px; justify-content: flex-start; gap: 5px;}
	#wine20th .sec-main .category-tab li { width: calc((100% - 10px) / 3);}
  #wine20th .sec-main .category-tab li button { padding: 0 12px; font-size: clamp(11px,2.93vw,15px);}
  #wine20th .sec-main #type_meat_amount .category-tab li button {min-height: 70px;}
  #wine20th .sec-main #type_meat_amount .category-tab { gap: 15px;}
  #wine20th .sec-main #type_alcohol_set .category-tab li, #wine20th .sec-main #type_meat_amount .category-tab li { width: calc((100% - 15px) / 2);}
	#wine20th .head-intro-space          { margin: 30px 0; flex-wrap: wrap; justify-content: center; align-items: center; flex-direction: column; gap: 20px;}
	#wine20th .head-intro-space .image   { width: 100%; margin: 0 auto;}
	#wine20th .head-intro-space .desc    { width: 100%; font-size: 14px; text-align: left;}
  #wine20th .search-contents-list      { gap: 12px 8px;}
  #wine20th .search-contents-list li   { width: calc((100% - 8px) / 2);}
  #wine20th .search-contents-list li a { font-size: 17px; font-size: clamp(0.813rem, -0.892rem + 7.27vw, 1.063rem); padding: 11px 0;}
}

/* ショップの倍率から探す
---------------------------------- */
#wine20th #sec_cate_mileup { 
  background: url(/img/usr/event/2026/wine20th/202607/bg_mileup-shop.png) no-repeat center / cover;
}
#wine20th #sec_cate_mileup .title-head:before {
  width: 162px;
  height: 84px;
  background: url(/img/usr/event/2026/wine20th/202607/img_mileup-ttl01.png) no-repeat center / contain;
  top: -10px;
}
#wine20th #sec_cate_mileup .title-head:after {
  width: 161px;
  height: 71px;
  background: url(/img/usr/event/2026/wine20th/202607/img_mileup-ttl02.png) no-repeat center / contain;
  top: -10px;
}
#wine20th #sec_cate_mileup .tab-head { margin: 0 0 30px; border-bottom: #002A76 2px solid; display: flex; justify-content: space-between; gap: 0 15px;}
#wine20th #sec_cate_mileup .tab-head li {
  width: calc(50% - 7.5px);
  height: 50px;
	padding: 2px 10px 0 0;
  border-radius: 4px 4px 0 0;
	font-size: 22px;
	font-weight: 700;
	color: #002A76;
  display: flex;
  justify-content: center;
  align-items: center;
  background: rgba(0, 42, 118, 0.1);
}
#wine20th #sec_cate_mileup .tab-head li:not(.is-active) { cursor: pointer;}
#wine20th #sec_cate_mileup .tab-head li.is-active { color: #FFF; background: #002A76;}
#wine20th #sec_cate_mileup .tab-head li span { font-size: 22px; font-weight: 700; color: #002A76;}
#wine20th #sec_cate_mileup .tab-head li.is-active span { color: #FFF;}
#wine20th #sec_cate_mileup .shop-box#shop_alcohol { display: none;}

@media (max-width: 768px) {
  #wine20th #sec_cate_mileup { 
    background-image: url(/img/usr/event/2026/wine20th/202607/bg_mileup-shop_sp.png);
  }
  #wine20th #sec_cate_mileup .title-head:before {
    width: min(62px, 14.651162790697676vw);
    height: min(59px, 13.72093023255814vw);
    background-image: url(/img/usr/event/2026/wine20th/202607/img_mileup-ttl01_sp.png);
    top: 5px;
    left: -10px;
  }
  #wine20th #sec_cate_mileup .title-head:after {
    width: min(60px, 13.953488372093023vw);
    height: min(52px, 12.093023255813954vw);
    background-image: url(/img/usr/event/2026/wine20th/202607/img_mileup-ttl02_sp.png);
    top: 5px;
    right: -10px;
  }
	#wine20th #sec_cate_mileup .tab-head { gap: 0 8px;}
	#wine20th #sec_cate_mileup .tab-head li { width: calc(50% - 4px);}
	#wine20th #sec_cate_mileup .tab-head li,
	#wine20th #sec_cate_mileup .tab-head li span { height: 40px; font-size: calc(16 / 375 * 100vw);}
}

/* ワイン・お酒
---------------------------------- */
#wine20th #sec_cate_alcohol {
  padding-top: 0;
}
#wine20th #sec_cate_alcohol .title-head:before {
  width: 155px;
  height: 102px;
  background: url(/img/usr/event/2026/wine20th/202607/alcohol_icon01.png) no-repeat center / contain;
  top: -10px;
}
#wine20th #sec_cate_alcohol .title-head:after {
  width: 104px;
  height: 87px;
  background: url(/img/usr/event/2026/wine20th/202607/alcohol_icon02.png) no-repeat center / contain;
  top: -10px;
}

@media (max-width: 768px) {
  #wine20th #sec_cate_alcohol .title-head:before {
    width: min(96px, 22.325581395348838vw);
    height: min(74px, 17.209302325581397vw);
    background-image: url(/img/usr/event/2026/wine20th/202607/alcohol_icon01_sp.png);
  }
  #wine20th #sec_cate_alcohol .title-head:after {
    width: min(81px, 18.83720930232558vw);
    height: min(68px, 15.813953488372093vw);
  }
  #wine20th #sec_cate_alcohol .category-tab {
    justify-content: center;
  }
}

/* カテゴリから探す */

/* 価格帯で選ぶ */
#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab { padding: 0 20%;}
#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab li { width: calc(50% - 5px);}
#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab li button { min-height: 65px; flex-direction: column; justify-content: center; align-items: center;}
#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab li button p.pop-top { margin: 0 0 5px;}
#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab li button p span { font-size: 14px;}
#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab li.active button p.pop-top { color: #FFF;}
#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab li.active button p.pop-top span::before,
#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab li.active button p.pop-top span::after { border-left: #FFF 1px solid;}
#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab li.active button p { color: #FFF;}
#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab li.active button p span { color: #FFF;}

@media (max-width: 768px) {
	#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab { padding: 0;}
	#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab li { width: calc(50% - 5px);}
	#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab li button { min-height: 70px;}
	#wine20th #sec_cate_alcohol #type_alcohol_price .category-tab li button p span { font-size: 10px;}
}

/* お肉
---------------------------------- */
#wine20th #sec_cate_gourmet .title-head:before {
  width: 165px;
  height: 100px;
  background: url(/img/usr/event/2026/wine20th/202607/gourmet_icon01.png) no-repeat center / contain;
  top: -10px;
}
#wine20th #sec_cate_gourmet .title-head:after {
  width: 175px;
  height: 108px;
  background: url(/img/usr/event/2026/wine20th/202607/gourmet_icon02.png) no-repeat center / contain;
  top: -10px;
}

@media (max-width: 768px) {
	#wine20th #sec_cate_gourmet .title-head { max-width: 330px;}
  #wine20th #sec_cate_gourmet .title-head:before {
    width: min(90px, 20.930232558139537vw);
    height: min(55px, 12.790697674418606vw);
    top: 0;
  }
  #wine20th #sec_cate_gourmet .title-head:after {
    width: min(97px, 22.55813953488372vw);
    height: min(55px, 13.72093023255814vw);
    top: 0;
  }
}

/* 種類から探す */
#wine20th #sec_cate_gourmet #type_meat_kinds .category-tab { padding: 0 20%;}
#wine20th #sec_cate_gourmet #type_meat_kinds .category-tab li { width: calc((100% - 10px * 2)/3);}

@media (max-width: 768px) {
	#wine20th #sec_cate_gourmet #type_meat_kinds .category-tab { padding: 0;}
	#wine20th #sec_cate_gourmet #type_meat_kinds .category-tab li { width: calc(50% - 5px);}
}

/* ----------------------------------
Category
---------------------------------- */
#wine20th .sec-category {
  padding: 75px 0;
	background-image: url(/img/usr/event/2026/wine20th/202607/category_bg.png);
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: cover;
	background-size: cover;
  position: relative;
  overflow: hidden;
}
#wine20th .sec-category .list { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between;}
#wine20th .sec-category .list li { width: calc((100% - 40px)/2);}

@media (max-width: 768px) {
	#wine20th .sec-category { padding: 40px 0; background-image: url(/img/usr/event/2026/wine20th/202607/category_bg_sp.png);}
	#wine20th .sec-category .list { flex-direction: column; gap: 15px;}
	#wine20th .sec-category .list li { width: 100%;}
}

/* ----------------------------------
pickup
---------------------------------- */
#wine20th .sec-pickup { position: relative; padding: 80px 0 90px; background: #F0FEFF;}
#wine20th .sec-pickup .pickup-shop { display: flex; gap: 50px; margin: 0 0 60px;}
#wine20th .sec-pickup .pickup-shop .img { display: flex; align-items: center; justify-content: center; width: 320px; position: relative;}
#wine20th .sec-pickup .pickup-shop .img img { display: block; max-width: 95%; max-height: 95%; margin: auto;}
#wine20th .sec-pickup .pickup-shop .img .label {
  width: 55px;
  height: 55px;
	padding: 0 0 2px;
  border-radius: 50%;
  font-size: 14px;
  font-weight: bold;
  color: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(-45deg, #AC0F14 0%, #AC0F14 50%, #CC090F 50%, #CC090F 100%);
  position: absolute;
  top: -25px;
  right: -20px;
  z-index: 1;
	box-sizing: border-box;
}
#wine20th .sec-pickup .pickup-shop .img .label .inner { display: flex; position: relative; align-items: flex-end; line-height: 1.0; top: -2px;}
#wine20th .sec-pickup .pickup-shop .img .label span { font-size: 24px; line-height: 1.0; letter-spacing: 0.05em; position: relative; top: 0px;}
#wine20th .sec-pickup .pickup-shop .info { flex: 1;}
#wine20th .sec-pickup .pickup-shop h3 { margin: 0 0 14px; font-size: 24px; font-weight: bold; color: var(--textColor);}
#wine20th .sec-pickup .pickup-shop .info p { font-size: 16px; line-height: 1.625; letter-spacing: 0.05em;}

html[data-browse-mode="S"] #wine20th .sec-pickup .pickup-shop .img .label {
  width: 48px;
  height: 48px;
  padding: 0 0 2px;
  border-radius: 50%;
  font-size: 14px;
  font-weight: bold;
  color: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(-45deg, #AC0F14 0%, #AC0F14 50%, #CC090F 50%, #CC090F 100%);
  position: absolute;
  top: -25px;
  right: -20px;
  z-index: 1;
  box-sizing: border-box;
}
html[data-browse-mode="S"] #wine20th .sec-pickup .pickup-shop .img .label .inner {
  display: flex;
  position: relative;
  align-items: flex-end;
  line-height: 1.0;
  top: 0px;
}
html[data-browse-mode="S"] #wine20th .sec-pickup .pickup-shop .img .label span {
  font-size: 18px;
  line-height: 1.0;
  letter-spacing: -0.05em;
  position: relative;
  top: 0px;
}

@media (max-width: 768px) {
	#wine20th .sec-pickup { padding: 50px 0;}
  #wine20th .sec-pickup::before { top: -16px; height: 33px; background-position: left  -18px top; background-size: 108px;}
  #wine20th .sec-pickup .pickup-shop { flex-direction: column; gap: 10px; margin: 0 0 10px;}
  #wine20th .sec-pickup .pickup-shop .img { width: 90%; height: auto; aspect-ratio: auto; margin-inline: auto;}
  #wine20th .sec-pickup .pickup-shop .img img { max-width: 100%; max-height: unset; }
	#wine20th .sec-pickup .pickup-shop .img .label { font-size: 12px; top: -25px !important; right: -15px; width: 38px !important; height: 38px !important;}
	#wine20th .sec-pickup .pickup-shop .img .label span { margin-right: 3px; font-size: 18px;}
  #wine20th .sec-pickup .pickup-shop h3 { margin: 0 0 12px; font-size: 16px; text-align: center;}
  #wine20th .sec-pickup .pickup-shop .info p { font-size: 14px; line-height: 1.57; letter-spacing: 0;}
  .pickup-contents p.for-sp { margin-bottom: 30px;}
}

/* ----------------------------------
feature
---------------------------------- */
#wine20th .sec-feature { padding: 80px 0; background: #FFFFFF; position: relative;}
#wine20th .sec-feature .feature-list { display: flex; flex-direction: column; gap: 40px;}

@media (max-width: 768px) {
  #wine20th .sec-feature h2.title {
    font-size: clamp(20px, 5.116279069767442vw, 22px);
  }
	#wine20th .sec-feature { padding: 55px 0 30px; background: #FFF;}
  #wine20th .sec-feature .feature-list { padding-inline: 15px; gap: 20px;}
}

/* ----------------------------------
detail
---------------------------------- */
#wine20th .sec-detail { padding: 0 0 80px; background: #FFF;}
#wine20th .sec-detail-wrap { padding: 60px 60px 90px; margin-bottom: 50px; background: #F0FEFF; border-radius: 20px;}
#wine20th .sec-detail dl:not(:last-child) { margin: 0 0 40px;}
#wine20th .sec-detail dt { margin: 0 0 12px; font-weight: bold; font-size: 20px; letter-spacing: 0.06em; display: flex; align-items: center; gap:10px;}
#wine20th .sec-detail dt:before {
  content: "";
  width: 18px;
  aspect-ratio: 1 / 1;
  border: 5px solid #002A76;
  border-radius: 50%;
  flex-shrink: 0;
}
#wine20th .sec-detail dd { font-size: 16px; letter-spacing: 0.05em; line-height: 1.875;}
#wine20th .sec-detail dd span { font-weight: 700;}
#wine20th .sec-detail .more-btn { display: block;}

@media (max-width: 768px) {
	#wine20th .sec-detail { padding: 0 15px; background: #FFF;}
  #wine20th .sec-detail .inner { padding: 0;}
  #wine20th .sec-detail-wrap { padding: 40px 30px; margin-bottom: 0;}
  #wine20th .sec-detail dl:not(:last-child) { margin: 0 0 30px;}
  #wine20th .sec-detail dt { margin: 0 0 8px; font-size: 16px; letter-spacing: 0;}
  #wine20th .sec-detail dd { font-size: 14px; letter-spacing: 0;}
  #wine20th .sec-detail dd span { font-size: 12px; font-weight: 500;}
}

html[data-browse-mode="S"] #wine20th .sec-detail-wrap { margin-bottom: 50px;}

/* ----------------------------------
simplebar-track
---------------------------------- */
.simplebar-track.simplebar-horizontal {
  height: 6px;
  background: #DCDCDC;
  max-width: 100%;
  margin: 0 auto;
  right: 0;
  border-radius: 3px;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  height: 6px;
  background: #111;
  top: 0;
  border-radius: 3px;
  display: block !important;
}
.simplebar-scrollbar:before {
  opacity: 1 !important;
  background: #111;
}
html[data-browse-mode="S"] .category-box .simplebar-track.simplebar-horizontal { margin-bottom: 20px;}
html[data-browse-mode="S"] .sec-pickup .simplebar-track.simplebar-horizontal { margin-bottom: 20px;}
html[data-browse-mode="S"] #wine20th *::-webkit-scrollbar {
  width: 8px;
  height: 6px;
  background: #DCDCDC;
  border-radius: 3px;
  display: none;
}
[data-browse-mode="S"] #wine20th .block-thumbnail-t--items li { flex-shrink: 0; width: 35.6vw; margin: 0;}


/* ----------------------------------
textRed
---------------------------------- */
.textRed {
  text-align: center;
  font-size: 30px !important;
  font-weight: bold;
  color: #cc0000;
  margin-bottom: 40px;
}
html[data-browse-mode="S"] .textRed {
  font-size: 17px !important;
  margin-bottom: 20px;
}

/* ----------------------------------
#special
---------------------------------- */
#special .brand-list { background-color: #FFF;}
.brand-list li { list-style: none; display: flex; justify-content: center; align-items: center; margin: 10px;}
#aer img { height: 40px;}
#on img { height: 80px;}
#opus img { height: 140px;}
html[data-browse-mode="S"] #aer img { height: 30px; width: auto;}
html[data-browse-mode="S"] #on img { height: 60px; width: auto;}
html[data-browse-mode="S"] #opus img { height: 100px; width: auto;}

@media (max-width: 767px) {
  #special .brand-list {
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: repeat(3, auto);
    grid-template-columns: none !important;
    gap: 5px;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 8px;
    margin-top: -30px;
    margin-bottom: 0;
  }
  #special .brand-list li { width: 100px;}
  #special .brand-list img { width: 100%; height: auto; display: block;}
}

#special .ranking-wrap .read-more { display: none !important;}
#special .pickup-caption.-morgan { font-size: 25px;}

@media screen and (max-width: 767px) {
  #special .pickup-caption.-morgan { font-size: min(15px, calc(15 / 430 * 100vw));}
}
@media only screen and (max-width: 767px) {
  #special .block-ranking-r--description,
  #special .block-thumbnail-t--goods-description { position: relative;}
}

html[data-browse-mode="P"] #special .medama-tab {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 10px;
}
html[data-browse-mode="P"] #special .medama-tab > li {
  display: flex;
  flex-direction: column;
  width: 246px;
}
html[data-browse-mode="P"] #special .sec-search {
  background-color: #67CDD9;
  background-image: url(/img/usr/event/2026/special/04/bg_camping.png);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: 100%;
  padding-block: 200px;
}
html[data-browse-mode="S"] #special .sec-search {
  padding-block: 100px;
  padding-inline: min(15px, calc(15 / 430 * 100vw));
}
#special .js-tab-menu:has(li.active[data-filter-item="outdoor"])
+ .js-tab-contents .shop-list {
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(1, auto);
  grid-auto-columns: 246px;
  gap: 26px 32px;
  width: max-content;
  margin: 24px auto 0;
}
#special .shop-list-container { padding-bottom: 30px; overflow: visible;}
#special .block-thumbnail-t {
  column-gap: 35px;
  flex-wrap: nowrap;
  margin-bottom: 0;
  overflow: visible;
  padding-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  #special .block-thumbnail-t { display: block; margin-bottom: 0; overflow: visible; padding-bottom: 0;}
  #special .block-thumbnail-t--items {
    column-gap: calc(18 / 430 * 100vw);
    flex-wrap: nowrap;
    overflow: visible;
    padding-inline: 0;
    padding-bottom: calc(20 / 430 * 100vw);
  }
}