/** Shopify CDN: Minification failed

Line 10:0 All "@import" rules must come first

**/
.page-width{ max-width: 1240px; }
.none{ display: none; }

/* font */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
body *{ color: #4E4E4E; font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-style: normal; }
.font-2{ color: #04361C; }
.font-c{ text-align: center; }
.font-s18{ font-size: 18px; }
.common-shadow{ box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25); }
.common-flex{ display: flex; align-items: center; }
.common-flex-b{ display: flex; align-items: center; justify-content: space-between; margin-bottom: 5px; }
.common-flex-c{ display: flex; align-items: center; justify-content: center; }
.common-flex-s{ display: flex; align-items: center; justify-content: start; }
.common-flex-50{ width: 49%; }
.common-flex-33{ width: 33%; }
.max-100{ max-width: 100%; }
.common-mb-12{ margin-bottom: 12px; }
.common-mb-20{ margin-bottom: 20px; }
.common-grid{ display: grid; }
.common-grid-row{ text-align: center; align-content: start; justify-items: center; display: grid; }

/* DAWN reset */
.image-with-text__media, .product-media-container{ border: none; }
a{ text-decoration: none; }

/* header */
.header .field__input:not(:placeholder-shown){ padding: 1.5rem !important; }
.header-wrapper--border-bottom{ border-bottom: none; }
header{ max-width: 1440px !important; }
header .header__inline-menu{ text-align: right; column-gap: 1rem; }
header .header__inline-menu ul{ column-gap: 1rem; }
.header__icons>*{ max-width: 20px; }
.header__icons{ min-width: 20px; }
.custom-header-search{ max-width: 155px; }
.custom-header-search .field__label{ display: none; }
.custom-header-search .field{ align-items: center; }
.custom-header-search .field__input:focus-visible, .custom-header-search .field__input:focus{ box-shadow: unset !important; padding: 1.5rem !important; }
.custom-header-search .field:after{ border-radius: 10px !important; border: 2px solid #04361C; box-shadow: unset !important; }
.custom-header-search .search__input.field__input{ padding-right: 1.5rem; }
.custom-header-search .search-modal__content{ padding: 0 !important; }
.add-icon-search{ padding-left: 10px; }
.custom-login{ max-width: unset; background-color: #04361C; border-radius: 9999px; display: flex; align-items: center; padding: 5px 15px; }
.custom-login__wrapper{ display: flex; align-items: center; column-gap: 0.5rem; }
.custom-login__content{ color: #fff; display: flex; align-items: center; }
.custom-login__content--name{ color: #fff; max-width: 90px; display: inline-block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

@media screen and (min-width: 990px) {
  .header--middle-left{ grid-template-areas: "heading navigation custom-header-search icons custom-login"; grid-template-columns: 1fr 4fr auto auto auto; column-gap: 3rem; }
}

.cart-count-bubble{ left: 1.2rem; }
.cart-count-bubble span{ color: #fff; }

/* header-submenu */
.header-submenu__wrapper{ background-color: #04361C; display: flex; justify-content: space-between; align-items: center; padding: 2.5rem 2rem; position: relative; }
.header-submenu__left, .header-submenu__right, .header-submenu__left--icon{ display: flex; align-items: center; }
.header-submenu__left--link, .header-submenu__right--link{ color: #fff; }
.header-submenu__left--content{ display: flex; align-items: center; column-gap: 10px; padding: 0 2rem; border-right: 1px solid #fff; }
.header-submenu__right{ column-gap: 2rem; padding-right: clamp(16px, -124.800px + 14.222vw, 80px); }
.header-submenu__right a:not(:last-child){ margin-right: 2rem; }
.header-news{ background-color: #F6D089; }
.header-news__wrapper{ display: flex; align-items: center; justify-content: center; padding: 1rem 0; }
.header-news__wrapper a{ text-decoration: underline; }

/* mega-submenu */
.header-submenu__megamenu{ position: absolute; width: 100%; z-index: 10; background-color: #fff; top: 70px; left: 0; opacity: 0; visibility: hidden; transition: all ease 0.5s; }
.header-submenu__megamenu.active{ opacity: 1; visibility: visible; transition: all ease 0.5s; }
.header-submenu__collection{ display: none; }
.header-submenu__collection.active{ display: grid; gap: 10px 10px; grid-template-columns: repeat(4, 1fr); }
.header-submenu__megamenu--item{ display: flex; align-items: center; }
.header-submenu__megamenu--item--img{ max-width: 80px; }
.megamenu-content{ background-color: rgb(215, 215, 215); }
.megamenu-content__wrapper{ display: flex; align-items: center; justify-content: space-between; background-color: #fff; padding: 1rem 1.5rem; border-radius: 5px; margin: 0 auto; max-width: 280px; box-sizing: border-box; }
.megamenu-content__wrapper--icon{ padding: 0 8px 0 0; position: relative; display: flex; align-items: center; justify-content: center; width: 70px; height: auto; }
.megamenu-content__wrapper--icon--img{ max-width: 70px; height: auto; display: block; }
.megamenu-content__wrapper--text{ color: #04361C; font-weight: 500; line-height: 1.4em; }
.header-submenu .megamenu-content{ display: flex; flex-wrap: wrap; justify-content: center; column-gap: 20px; row-gap: 20px; padding: 2.5rem; }
.header-submenu .megamenu-content__wrapper{ min-height: 98px; min-width: 240px; flex: 0 1 auto; margin: 0; }
.megamenu-content__wrapper--arrow{ display: flex; }
.sp-menu__body .megamenu-content__wrapper{ margin-bottom: 5px; }
.sp-menu__body .megamenu-content{ display: none; opacity: 0; transition: all 1s ease; border-radius: 5px 0 0 5px; padding: 20px; position: relative; left: 2rem; }
.megamenu-content.open{ opacity: 1; display: block; padding: 20px 20px 15px 20px; transition: all 0.5s ease; }
.sp-menu__topmenu--link .sp-menu__topmenu--arrow svg{ rotate: 0deg; transition: all 0.5s ease; }
.sp-menu__topmenu--link.open .sp-menu__topmenu--arrow svg{ rotate: 90deg; transition: all 0.5s ease; }

/* footer */
.footer__shopname{ font-weight: 400; font-size: clamp(17px, 11.718px + 1.408vw, 32px); color: #fff !important; margin-bottom: 5rem; }
.footer-block__details-content .list-menu__item--active{ text-decoration: none !important; }
.footer__blocks-wrapper{ justify-content: space-between; }
.footer__blocks-wrapper .footer-block{ max-width: 260px; }
.footer__blocks-wrapper .footer-block:has(.footer-block__custom-code){ max-width: 300px; }
.footer__copyright.caption small, .footer-block__heading, .footer__shopname a, .footer-block__custom-code--text, .footer-block__custom-code--heading, .footer__content-mid p{ color: #fff; }
.footer-block__custom-code--heading{ text-align: center; }
.footer-block__custom-code--text{ font-size: 12px; }
.footer-block__heading{ border-bottom: solid 1px #fff !important; margin: 0 0 5px 0; padding-bottom: 5px; display: flex; align-items: center; column-gap: 5px; }
.footer-block__details-content li{ border-bottom: dotted 1px #fff; padding-left: 30px; }
.footer-block__details-content.no-heading li{ border-bottom: unset; padding-left: 0; }
.footer-block__details-content.no-heading li a{ padding: 0; }
.footer-block__details-content.no-heading li::marker{ color: #fff; }
.footer__content-top{ padding-bottom: 0 !important; }
.footer__content-bottom{ border-top: none !important; }

@media screen and (min-width: 750px) {
  .footer .page-width{ padding: 0 2rem; }
}
@media screen and (max-width: 450px) {
  .footer__blocks-wrapper .footer-block{ max-width: unset; }
}

/* card__custominfo */
.card__custominfo{ border-radius: 5px; }
.card__custominfo__tag{ column-gap: 5px; flex-wrap: wrap; row-gap: 5px; }
.category-section__product--tags--tag{ color: #04361C; background-color: #DCDEBF; border-radius: 5px; padding: 5px; min-width: 45px; text-align: center; font-size: 10px; }
.category-section__product--tags{ flex-wrap: wrap; row-gap: 5px; }
.card__link{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* cart */
cart-note{ visibility: hidden !important; height: 0; }

/* sp/pc toggle */
.sp, .sp-menu-btn{ display: none; }

@media screen and (max-width: 1130px) {
  .common-flex-33{ width: 100%; }
  .pc, .header .custom-header-search, .header .custom-login{ display: none !important; }
  .sp, .sp-menu-btn{ display: block; }
  .header{ grid-template-areas: "heading icons sp-menu-btn"; grid-template-columns: 5fr 3fr auto; align-items: center; padding: 10px 1rem !important; }
  .header__icons{ padding-right: 9rem; min-width: 30px; }
  .header__icons svg{ min-width: 30px; }
  .footer__content-top{ padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
  .reccomend-beer, .rankingranking-collection{ overflow-x: auto; white-space: nowrap; width: 100%; }
  .reccomend-beer .custom-grid__wrapper, .rankingranking-collection .custom-grid__wrapper{ grid-auto-flow: column; grid-template-columns: none !important; grid-auto-columns: 80%; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .category-section__product{ width: 31% !important; }
  .category-section__wrapper, .category-section__list{ margin-bottom: 4rem !important; }
  .category-section__description--content.element-2{ background-repeat: no-repeat; background-size: 145%; background-position: center; }
  #section-news-list{ padding-top: 15px; padding-bottom: 15px; }
  .section-news-list__inner{ display: none !important; }
  #section-news-list .container{ display: block !important; background-color: #04361c; border-radius: 30px !important; }
  #section-news-list .news-list-heading{ justify-content: space-around !important; flex-direction: row !important; }
  .news-list-heading--h2{ writing-mode: unset !important; margin: 0 !important; align-self: unset !important; }
  .news-list-heading--p, ul.news-list{ width: unset !important; }
  .shopify-section:has(.section-news-list__outer){ padding: 0; }
  .news-list-heading *{ font-size: 30px !important; }
  .custom-about__heading, .custom-about__wrapper p{ text-align: center; }
  .footer-block.grid__item, .category-section__description--content.element-1{ margin-right: auto !important; margin-left: auto !important; }
  .footer__shopname{ text-align: center; }
}

@media screen and (min-width: 750px) {
  .pc{ display: block; }
}

/* other options */
.set-product__list--title{ font-size: 15px !important; }
.gs__form-options-wrapper{ padding-bottom: 2em; }

/* add-recommend / custom-grid 共通スタイル */
.custom-grid{ position: relative !important; }
.custom-grid__wrapper{ display: grid; gap: 20px 20px; padding-bottom: 20px; }
.custom-grid__content a{ display: block !important; width: 100% !important; height: 100%; padding: 0 !important; box-shadow: none !important; border-radius: 0 !important; background-color: transparent !important; text-decoration: none !important; box-sizing: border-box !important; }
.custom-grid__content--img{ width: 100% !important; max-width: 100% !important; height: auto !important; display: block !important; }

/* blog / special-contents スライド設定 */
@media screen and (min-width: 1131px) {
  .reccomend-beer, .special-contents{ width: 100% !important; overflow: hidden !important; }
  .reccomend-beer .custom-grid__wrapper, .special-contents .custom-grid__wrapper{ display: grid !important; grid-auto-flow: column !important; grid-template-columns: none !important; grid-auto-columns: calc((100% - 60px) / 4) !important; gap: 20px !important; overflow-x: auto !important; -webkit-overflow-scrolling: touch !important; scrollbar-width: none !important; padding-bottom: 10px !important; }
  .reccomend-beer .custom-grid__wrapper::-webkit-scrollbar, .special-contents .custom-grid__wrapper::-webkit-scrollbar{ display: none !important; }
}

.special-contents .custom-grid__content, .reccomend-beer .custom-grid__content{ min-width: 0 !important; margin: 0 !important; padding: 0 !important; box-sizing: border-box !important; }
.special-contents .custom-grid__content--img, .reccomend-beer .custom-grid__content--img{ aspect-ratio: 1 / 1 !important; object-fit: cover !important; margin: 0 0 8px 0 !important; border-radius: 0 !important; }
.special-contents__date, .special-contents__title{ writing-mode: horizontal-tb !important; white-space: normal !important; word-break: break-word !important; margin: 0 !important; padding: 0 !important; }
.special-contents__date{ font-size: 12px !important; color: #888888 !important; font-weight: normal !important; }
.special-contents__title{ font-size: 15px !important; font-weight: bold !important; color: #333333 !important; line-height: 1.4 !important; margin-top: 2px !important; }

@media screen and (max-width: 1130px) {
  .reccomend-beer, .special-contents{ width: 100% !important; overflow: visible !important; }
  .reccomend-beer .custom-grid__wrapper, .special-contents .custom-grid__wrapper{ display: grid !important; grid-auto-flow: column !important; grid-template-columns: none !important; grid-auto-columns: 80% !important; gap: 15px !important; overflow-x: auto !important; -webkit-overflow-scrolling: touch !important; scrollbar-width: none !important; padding: 0 !important; margin: 0 !important; }
  .reccomend-beer .custom-grid__wrapper::-webkit-scrollbar, .special-contents .custom-grid__wrapper::-webkit-scrollbar{ display: none !important; }
  .reccomend-beer .custom-grid__content, .special-contents .custom-grid__content{ width: 100% !important; }
}

/* PC用 左右矢印ボタン */
@media screen and (min-width: 1131px) {
  .custom-grid, .special-contents, .reccomend-beer{ position: relative !important; }
  .scroll-btn{ display: flex !important; align-items: center !important; justify-content: center !important; position: absolute !important; top: 50% !important; transform: translateY(-50%) !important; width: 44px !important; height: 44px !important; background-color: #004d3d !important; border: 1px solid #e0e0e0 !important; border-radius: 50% !important; cursor: pointer !important; z-index: 2 !important; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15) !important; font-size: 14px !important; color: #ffffff !important; transition: all 0.2s ease !important; outline: none !important; padding: 0 !important; }
  .scroll-btn:hover{ background-color: #ffffff !important; color: #333333 !important; border-color: #004d3d !important; box-shadow: 0 6px 14px rgba(0, 0, 0, 0.25) !important; }
  .prev-btn{ left: 10px !important; }
  .next-btn{ right: 10px !important; }
}

@media screen and (max-width: 1130px) {
  .scroll-btn{ display: none !important; }
}

/* スクロール端での非表示設定 */
.scroll-btn.is-hidden{ opacity: 0 !important; pointer-events: none !important; visibility: hidden !important; transition: opacity 0.3s ease, visibility 0.3s ease !important; }