@charset "UTF-8";
/* ==========================================
  ドッグフード工房（dfk）全ページ共通
 ============================================ */
/** -------------------- 変数定義 -------------------- **/
:root {
  /* カラー定義 */
  --c_text: #2B2B2B;
  --c_wht: #fff;
  --c_blue: #61C1BE;
  --c_orange: #D97757;
  --c_yellow: #F5C542;
  --c_gray: #ADADAD;
  --c_bg_gray: #EEEEEE;
  --c_bg_wht: #FAF9F6;
  --c_bg_beige: #EFDCD3;
  /* フォント定義 */
  --font_ja: "Zen Kaku Gothic New", sans-serif;
  --font_roboto: "Roboto", sans-serif;
  --font_baby: "Oooh Baby", cursive;
  /* transition定義 */
  --anim: all 0.3s ease-out;
  /*---------- filter定義
  https://codepen.io/sosuke/pen/Pjoqqp ---------- */
  --filter_wht: brightness(0) invert(1);
  --filter_text: brightness(0) saturate(100%) invert(9%) sepia(0%) saturate(3883%) hue-rotate(182deg) brightness(98%) contrast(81%);
  --filter_blue: brightness(0) saturate(100%) invert(70%) sepia(12%) saturate(1354%) hue-rotate(129deg) brightness(96%) contrast(93%);
  --filter_orange: brightness(0) saturate(100%) invert(55%) sepia(21%) saturate(1176%) hue-rotate(328deg) brightness(95%) contrast(93%);
  --filter_yellow: brightness(0) saturate(100%) invert(83%) sepia(25%) saturate(1195%) hue-rotate(346deg) brightness(99%) contrast(95%);
  --filter_bg_gray: brightness(0) saturate(100%) invert(100%) sepia(2%) saturate(639%) hue-rotate(254deg) brightness(113%) contrast(87%);
  /* 波線マスク */
  --mask_height: 36px;
  --mask_width: 182px;
  /* ヘッダー高さ */
  --header_height: 135px;
}

body {
  font-family: var(--font_ja);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0;
  color: var(--c_text);
}
body * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

div, form, h1, h2, h3, h4, ul, li, dl, dt, dd, p,
table, th, td {
  line-height: revert;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 500;
}

img {
  max-width: 100%;
  display: block;
}

.clearfix {
  clear: both;
}

a {
  color: var(--c_text);
  -webkit-transition: var(--anim);
  transition: var(--anim);
  text-decoration: none;
}
a:hover {
  opacity: 0.7;
}

mark {
  color: currentColor;
}

/* アニメーション */
.anim {
  -webkit-transition: all 0.7s ease-out;
  transition: all 0.7s ease-out;
}

.anim.fadeUp {
  opacity: 0;
  -webkit-transform: translateY(40px);
          transform: translateY(40px);
}
.anim.fadeUp.is-show {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

/** -------------------- 共通スタイル -------------------- **/
.allWrap {
  padding-top: var(--header_height);
}

#Wrap {
  width: 100%;
  margin: 0;
}

.inner.inner--narrow {
  max-width: 1080px;
}

.ttlH2, #dvUserBox h2, #CartList h2 {
  font-family: var(--font_ja);
  font-size: 36px;
  font-weight: 700;
  line-height: 1;
  color: var(--c_text);
  padding: 80px 0 100px;
  margin: 0;
}

.sTtl {
  font-size: 24px;
  font-weight: 500;
  line-height: normal;
  margin: 50px 0 30px !important;
  padding: 0;
  border: 0;
}
.sTtl:first-child {
  margin-top: 0 !important;
}
.sTtl:last-child {
  margin-bottom: 0 !important;
}

.dark {
  background-color: var(--c_blue);
  border-color: var(--c_blue);
}

.fred, .necessary {
  color: var(--c_orange);
}

.notes {
  font-size: 14px;
  line-height: normal;
}

.error_inline {
  font-size: 14px;
  line-height: normal;
  color: var(--c_orange) !important;
  padding: 0 !important;
}
.error_inline:empty {
  display: none;
}

.completeInfo {
  margin: 30px 0;
}
.completeInfo:first-child {
  margin-top: 0;
}
.completeInfo:last-child {
  margin-bottom: 0;
}

.receptionInfo {
  margin: 30px 0;
}
.receptionInfo:first-child {
  margin-top: 0;
}
.receptionInfo:last-child {
  margin-bottom: 0;
}

.social-login {
  width: 296px;
  border-radius: 5px;
  border: none;
  text-align: center;
  text-decoration: none;
  display: inline-block;
}

.social-login-registinput {
  width: 280px;
  border-radius: 5px;
  border: none;
  text-align: center;
  text-decoration: none;
  display: inline-block;
}

.social-login-lpinputform {
  width: 280px;
  border-radius: 5px;
  border: none;
  text-align: center;
  text-decoration: none;
  display: inline-block;
}

.facebook-color {
  background-color: #1877F2;
}

.twitter-color {
  background-color: #1D9BF0;
}

.yahoo-color {
  background-color: #FF0033;
}

.line-color {
  background-color: #06C755;
}

.line-hover-color:hover {
  background-color: rgba(0, 0, 0, 0.1);
}

.line-active-color:active {
  background-color: rgba(0, 0, 0, 0.3);
}

.google-color {
  background-color: #FFFFFF;
  -webkit-box-shadow: 1px 1px 2px #666666;
          box-shadow: 1px 1px 2px #666666;
}

.social-icon-width {
  width: 54px;
  float: left;
}

.facebook-icon {
  padding: 7px 10px;
  height: 26px;
}

.facebook-icon-registinput {
  padding: 9px 10px;
  height: 26px;
}

.twitter-icon {
  padding: 12px 10px;
  height: 16px;
}

.twittericon-registinput {
  padding: 14px 10px;
  height: 16px;
}

.yahoo-icon {
  padding: 11px 11px;
  height: 18px;
}

.yahoo-icon-registinput {
  padding: 13px 11px;
  height: 18px;
}

.google-icon {
  padding: 8px 10px;
  height: 24px;
}

.google-icon-registinput {
  padding: 10px 10px;
  height: 24px;
}

.line-icon {
  padding: 7px 10px;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
}

.line-icon-registinput {
  padding: 9px 10px;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
}

.social-login-label {
  color: #FFFFFF;
  font-size: 16px;
  padding: 12px 0;
  text-align: center;
}

.social-login-label-registinput {
  color: #FFFFFF;
  font-size: 16px;
  padding: 14px 0;
  text-align: center;
}

.social-login-wording-landing {
  color: #FFFFFF;
  font-size: 16px;
  text-align: center;
  padding: 10px 0;
}

.google-label {
  color: #757575;
  font-size: 16px;
  padding: 12px 0;
  text-align: center;
}

.google-label-registinput {
  color: #757575;
  font-size: 16px;
  text-align: center;
  padding: 14px 0;
}

.google-label-landing {
  color: #757575;
  font-size: 16px;
  text-align: center;
  padding: 10px 0;
}

.itemlist .oneitem .price {
  color: var(--c_blue);
}

.orderBox div.list dt {
  background: var(--c_bg_wht);
}

#dvUserBox {
  margin: 0 auto;
}

.modalArea {
  z-index: 1000;
}

.modalContents > a.dfk-btn {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

/* 重要なお知らせなし */
.is-headerNotiveHidden {
  --header_height: 105px;
}
.is-headerNotiveHidden header.dfk-header #js-headerNotice {
  display: none !important;
}

/* ボタン */
.dfk-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
  font-family: var(--font_ja);
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  color: var(--c_blue);
  border: 1px solid var(--c_blue);
  border-radius: 8px;
  padding: 19px 30px;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
  -webkit-transition: var(--anim);
  transition: var(--anim);
  cursor: pointer;
}
.dfk-btn:after {
  content: "";
  width: 14px;
  height: 14px;
  background: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/chevron.png) no-repeat center/contain;
  -webkit-filter: var(--filter_blue);
          filter: var(--filter_blue);
  -webkit-transition: var(--anim);
  transition: var(--anim);
}
.dfk-btn:hover {
  opacity: 1;
  background: var(--c_blue);
  color: var(--c_wht);
  text-decoration-color: currentColor;
}
.dfk-btn:hover:after {
  -webkit-filter: var(--filter_wht);
          filter: var(--filter_wht);
}
.dfk-btn[disabled], .dfk-btn.disabled {
  pointer-events: none;
  background: var(--c_bg_gray) !important;
  border-color: var(--c_bg_gray) !important;
  color: var(--c_gray) !important;
}
.dfk-btn.dfk-btn--filled {
  background: var(--c_blue);
  color: var(--c_wht);
}
.dfk-btn.dfk-btn--filled:after {
  -webkit-filter: var(--filter_wht);
          filter: var(--filter_wht);
}
.dfk-btn.dfk-btn--filled:hover {
  color: var(--c_blue);
  background: transparent;
}
.dfk-btn.dfk-btn--filled:hover:after {
  -webkit-filter: var(--filter_blue);
          filter: var(--filter_blue);
}
.dfk-btn.dfk-btn--noarw:after {
  display: none;
}
.dfk-btn.dfk-btn--small {
  font-size: 18px;
  font-weight: 500;
  border-radius: 5px;
  padding: 8px 15px;
}
.dfk-btn.dfk-btn--small:after {
  display: none;
}
.dfk-btn.dfk-btn--gray {
  color: var(--c_gray);
  border-color: var(--c_gray);
}
.dfk-btn.dfk-btn--gray:hover {
  background: var(--c_gray);
  color: var(--c_wht);
}
.dfk-btn.dfk-btn--orange {
  background: var(--c_orange);
  border-color: var(--c_orange);
  color: var(--c_wht);
}
.dfk-btn.dfk-btn--orange:after {
  -webkit-filter: var(--filter_wht);
          filter: var(--filter_wht);
}
.dfk-btn.dfk-btn--orange:hover {
  color: var(--c_orange);
  background: transparent;
}
.dfk-btn.dfk-btn--orange:hover:after {
  -webkit-filter: var(--filter_orange);
          filter: var(--filter_orange);
}

input.dfk-btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
}

/* リンク */
.dfk-link-underline {
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-thickness: 1px;
}

/* 文字色 */
.dfk-color-blue {
  color: var(--c_blue) !important;
}

.dfk-color-orange {
  color: var(--c_orange) !important;
}

.dfk-color-yellow {
  color: var(--c_yellow) !important;
}

.dfk-color-gray {
  color: var(--c_gray) !important;
}

.dfk-color-black {
  color: var(--c_text) !important;
}

.dfk-color-white {
  color: var(--c_wht) !important;
}

.js-dragScroll {
  cursor: -webkit-grab;
  cursor: grab;
}
.js-dragScroll:active {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* 背景 */
.dfk-bg-img {
  background: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/bg.jpg) repeat-y top center/100%;
}

.dfk-bg-gray {
  background-color: var(--c_bg_gray);
}

.dfk-bg-white {
  background-color: var(--c_bg_wht);
}

/* 見出し */
.dfk-h1 {
  font-size: 44px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  margin: 80px 0;
}

/* 汎用お知らせボックス */
.dfk-attention {
  margin: 60px 0;
  padding: 40px 30px;
  border: 1px solid var(--c_orange);
}
.dfk-attention:first-child {
  margin-top: 0;
}
.dfk-attention:last-child {
  margin-bottom: 0;
}

.ttlH2 + .dfk-attention, #dvUserBox h2 + .dfk-attention {
  margin-top: 0;
}

.dfk-attention-txt {
  line-height: normal;
  text-align: left;
  margin: 24px 0;
}
.dfk-attention-txt:first-child {
  margin-top: 0;
}
.dfk-attention-txt:last-child {
  margin-bottom: 0;
}

/** -------------------- 固定バナー -------------------- **/
.dfk-trial {
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 100;
}

.dfk-trial-bnr {
  position: relative;
}

.dfk-trial-bnr-link {
  display: block;
  width: 334px;
}

.dfk-trial-bnr-img {
  border-radius: 20px 0 0 0;
  background: var(--c_wht);
}

.dfk-trial-bnr-close {
  width: 25px;
  height: 25px;
  background: rgba(255, 255, 255, 0.95);
  border-radius: 50%;
  position: absolute;
  left: -9px;
  top: -9px;
  cursor: pointer;
}
.dfk-trial-bnr-close:before, .dfk-trial-bnr-close:after {
  content: "";
  width: 10px;
  height: 1px;
  background: var(--c_text);
  border-radius: 100px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.dfk-trial-bnr-close:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.is-trialBnrHidden #js-trialBnr {
  display: none !important;
}

/** -------------------- ヘッダー -------------------- **/
header.dfk-header {
  -webkit-box-shadow: 0px 0px 14px 0px rgba(0, 0, 0, 0.04);
          box-shadow: 0px 0px 14px 0px rgba(0, 0, 0, 0.04);
  background: var(--c_wht);
  -webkit-transition: var(--anim);
  transition: var(--anim);
}
header.dfk-header .dfk-header-notice {
  background: var(--c_blue);
  color: var(--c_wht);
  position: relative;
  padding: 4px 36px;
  text-align: center;
}
header.dfk-header .dfk-header-notice-close {
  position: absolute;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 16px;
  height: 16px;
  cursor: pointer;
}
header.dfk-header .dfk-header-notice-close:before, header.dfk-header .dfk-header-notice-close:after {
  content: "";
  width: 100%;
  height: 1px;
  background: var(--c_wht);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
header.dfk-header .dfk-header-notice-close:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
header.dfk-header .dfk-header-notice-txt {
  text-align: center;
  font-size: 16px;
  line-height: 22px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
}
header.dfk-header .dfk-header-notice-link {
  color: var(--c_wht);
  text-decoration: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
header.dfk-header .dfk-header-notice-link:hover {
  opacity: 1;
  text-decoration-color: currentColor;
}
header.dfk-header .dfk-header-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
  padding: 24px 22px 24px 40px;
}
header.dfk-header .dfk-header-logo {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 80px;
          flex: 0 1 80px;
  margin-right: 6px;
}
header.dfk-header .dfk-header-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-column-gap: 28px;
     -moz-column-gap: 28px;
          column-gap: 28px;
  margin-right: auto;
  -webkit-transition: var(--anim);
  transition: var(--anim);
}
header.dfk-header .dfk-header-nav-item {
  font-size: 14px;
  line-height: 1;
}
header.dfk-header .dfk-header-nav-link {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
}
header.dfk-header .dfk-header-nav-link:hover {
  opacity: 1;
  color: var(--c_blue);
  text-decoration-color: var(--c_blue);
}
header.dfk-header .dfk-header-tel {
  margin-left: auto;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 234px;
          flex: 0 0 234px;
}
header.dfk-header .dfk-header-tel-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2px 5px;
  text-align: center;
  line-height: 1;
  background: var(--c_bg_wht);
  border-radius: 1000px;
  padding: 6px 12px 9px;
}
header.dfk-header .dfk-header-tel-ico {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 15px;
          flex: 0 1 15px;
}
header.dfk-header .dfk-header-tel-num {
  color: var(--c_blue);
  font-size: 28px;
  font-weight: 700;
}
header.dfk-header .dfk-header-tel-txt {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
  font-size: 12px;
}
header.dfk-header .dfk-header-tel-txt--small {
  font-size: 10px;
}
header.dfk-header .dfk-header-user {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
}
header.dfk-header .dfk-header-user-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 56px;
          flex: 0 0 56px;
  -webkit-transition: var(--anim);
  transition: var(--anim);
}
header.dfk-header .dfk-header-user-link {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 10px;
  text-align: center;
  font-size: 14px;
  line-height: 1;
  white-space: nowrap;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
}
header.dfk-header .dfk-header-user-link:hover {
  opacity: 1;
  color: var(--c_blue);
  text-decoration-color: currentColor;
}
header.dfk-header .dfk-header-user-link:hover .dfk-header-user-ico {
  -webkit-filter: var(--filter_blue);
          filter: var(--filter_blue);
}
header.dfk-header .dfk-header-user-ico {
  width: 23px;
  -webkit-filter: var(--filter_text);
          filter: var(--filter_text);
  -webkit-transition: var(--anim);
  transition: var(--anim);
}
header.dfk-header .dfk-header-trigger {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50px;
          flex: 0 0 50px;
  cursor: pointer;
  -webkit-transition: var(--anim);
  transition: var(--anim);
}
header.dfk-header .dfk-header-menu {
  position: fixed;
  right: 0;
  top: 0;
  width: 720px;
  height: 100%;
  z-index: 1000;
  background: var(--c_bg_wht);
  -webkit-box-shadow: 0px 0px 14px 4px rgba(0, 0, 0, 0.05);
          box-shadow: 0px 0px 14px 4px rgba(0, 0, 0, 0.05);
  line-height: 1;
  -webkit-transition: var(--anim);
  transition: var(--anim);
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
header.dfk-header .dfk-header-menu.is-show {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
header.dfk-header .dfk-header-menu-close {
  width: 60px;
  height: 60px;
  background: var(--c_wht);
  border-radius: 50%;
  position: absolute;
  top: 30px;
  right: 30px;
  cursor: pointer;
  z-index: 5;
}
header.dfk-header .dfk-header-menu-close:before, header.dfk-header .dfk-header-menu-close:after {
  content: "";
  width: 20px;
  height: 1px;
  background: var(--c_text);
  border-radius: 100px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
header.dfk-header .dfk-header-menu-close:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
header.dfk-header .dfk-header-menu-scroll {
  width: 100%;
  max-height: 100%;
  padding: 110px 86px 110px 90px;
  overflow-y: auto;
  overflow-x: hidden;
}
header.dfk-header .dfk-header-menu-scroll::-webkit-scrollbar {
  width: 4px;
}
header.dfk-header .dfk-header-menu-scroll::-webkit-scrollbar-track {
  background: var(--c_bg_wht);
}
header.dfk-header .dfk-header-menu-scroll::-webkit-scrollbar-thumb {
  background: var(--c_bg_gray);
  border-radius: 100px;
}
header.dfk-header .dfk-header-menu-link {
  line-height: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
}
header.dfk-header .dfk-header-menu-link:after {
  content: "";
  width: 8px;
  height: 8px;
  background: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/chevron.png) no-repeat center/contain;
}
header.dfk-header .dfk-header-menu-link:hover {
  opacity: 1;
  text-decoration-color: currentColor;
}
header.dfk-header .dfk-header-menu-user {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 13px 1fr 13px 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 13px;
  margin-bottom: 23px;
}
header.dfk-header .dfk-header-menu-user-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 14px;
  text-align: center;
  background: var(--c_blue);
  color: var(--c_wht);
  line-height: 1;
  border-radius: 10px;
  padding: 20px 12px;
}
header.dfk-header .dfk-header-menu-user-link:hover {
  opacity: 1;
}
header.dfk-header .dfk-header-menu-user-link:hover .dfk-header-menu-user-txt {
  text-decoration-color: currentColor;
}
header.dfk-header .dfk-header-menu-user-ico {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 20px;
          flex: 0 1 20px;
  -webkit-filter: var(--filter_wht);
          filter: var(--filter_wht);
}
header.dfk-header .dfk-header-menu-user-txt {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
  -webkit-transition: var(--anim);
  transition: var(--anim);
}
header.dfk-header .dfk-header-menu-search {
  position: relative;
  margin-bottom: 48px;
}
header.dfk-header .dfk-header-menu-search-input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  background: var(--c_bg_gray);
  border: 0;
  border-radius: 10px;
  font-family: var(--font_ja);
  padding: 17px 54px 17px 32px;
  margin: 0;
  -webkit-transition: var(--anim);
  transition: var(--anim);
}
header.dfk-header .dfk-header-menu-search-input::-webkit-input-placeholder {
  color: rgba(43, 43, 43, 0.4) !important;
}
header.dfk-header .dfk-header-menu-search-input:focus, header.dfk-header .dfk-header-menu-search-input:focus-visible {
  -webkit-box-shadow: 0px 0px 12px 0px rgba(97, 193, 190, 0.6);
          box-shadow: 0px 0px 12px 0px rgba(97, 193, 190, 0.6);
  outline: 0;
}
header.dfk-header .dfk-header-menu-search-input:not(:-moz-placeholder) {
  background: var(--c_wht);
}
header.dfk-header .dfk-header-menu-search-input:not(:-ms-input-placeholder) {
  background: var(--c_wht);
}
header.dfk-header .dfk-header-menu-search-input:not(:placeholder-shown) {
  background: var(--c_wht);
}
header.dfk-header .dfk-header-menu-search-btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: 0;
  width: 21px;
  height: 21px;
  position: absolute;
  right: 30px;
  top: 0;
  bottom: 0;
  margin: auto;
}
header.dfk-header .dfk-header-menu-category {
  margin: 40px 0;
}
header.dfk-header .dfk-header-menu-category-all {
  margin-bottom: 13px;
  line-height: 1;
}
header.dfk-header .dfk-header-menu-category-type01 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 20px 1fr 20px 1fr 20px 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-bottom: 20px;
}
header.dfk-header .dfk-header-menu-category-type01-link {
  position: relative;
  display: block;
  color: var(--c_wht);
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
header.dfk-header .dfk-header-menu-category-type01-link:hover {
  opacity: 1;
}
header.dfk-header .dfk-header-menu-category-type01-link:hover .dfk-header-menu-category-type01-img:before {
  opacity: 0.15;
}
header.dfk-header .dfk-header-menu-category-type01-link:hover .dfk-header-menu-category-type01-txt {
  text-decoration-color: currentColor;
}
header.dfk-header .dfk-header-menu-category-type01-img {
  position: relative;
  display: block;
  border-radius: 20px;
  overflow: hidden;
}
header.dfk-header .dfk-header-menu-category-type01-img:before {
  content: "";
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: var(--anim);
  transition: var(--anim);
}
header.dfk-header .dfk-header-menu-category-type01-txt {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
  -webkit-transition: var(--anim);
  transition: var(--anim);
}
header.dfk-header .dfk-header-menu-category-type02 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 13px 1fr 13px 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 13px;
  margin-bottom: 20px;
}
header.dfk-header .dfk-header-menu-category-type02-link {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1;
  background: var(--c_wht);
  border: 1px solid var(--c_blue);
  border-radius: 10px;
  padding: 16px 8px;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
}
header.dfk-header .dfk-header-menu-category-type02-link:hover {
  opacity: 1;
  text-decoration-color: currentColor;
}
header.dfk-header .dfk-header-menu-category-type03 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 20px 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
header.dfk-header .dfk-header-menu-category-type03-link {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  line-height: 1;
  background: var(--c_blue);
  border-radius: 10px;
  color: var(--c_wht);
  padding: 9px;
}
header.dfk-header .dfk-header-menu-category-type03-link:hover {
  opacity: 1;
}
header.dfk-header .dfk-header-menu-category-type03-link:hover .dfk-header-menu-category-type03-txt {
  text-decoration-color: currentColor;
}
header.dfk-header .dfk-header-menu-category-type03-img {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 41px;
          flex: 0 1 41px;
}
header.dfk-header .dfk-header-menu-category-type03-txt {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
  -webkit-transition: var(--anim);
  transition: var(--anim);
}
header.dfk-header .dfk-header-menu-subpage {
  margin-top: 40px;
}
header.dfk-header .dfk-header-menu-subpage-item {
  margin-bottom: 20px;
  line-height: 1;
}
header.dfk-header .dfk-header-menu-subpage-item:last-child {
  margin-bottom: 0;
}
@media (max-width: 1324px) {
  header.dfk-header .dfk-header-container {
    padding: 24px 20px;
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
  }
  header.dfk-header .dfk-header-logo {
    margin-right: 0;
  }
  header.dfk-header .dfk-header-nav {
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
  }
  header.dfk-header .dfk-header-user {
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
  }
}

/** -------------------- パンくず -------------------- **/
#breadcrumb {
  margin: 40px 0 0;
  padding: 0 20px;
  font-size: 12px;
  line-height: 1;
  color: var(--c_text);
}
#breadcrumb.breadcrumb-low {
  margin: 0;
  padding: 14px 20px;
}
#breadcrumb ul {
  max-width: 1340px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
}
#breadcrumb ul li {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  line-height: normal;
}
#breadcrumb ul li:after {
  content: "";
  width: 8px;
  height: 8px;
  background: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/chevron.png) no-repeat center/contain;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-filter: var(--filter_text);
          filter: var(--filter_text);
}
#breadcrumb ul li:last-child {
  overflow: hidden;
  -ms-flex-negative: 1;
      flex-shrink: 1;
}
#breadcrumb ul li:last-child:after {
  display: none;
}
#breadcrumb ul li:last-child a {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
#breadcrumb span {
  display: none;
}
#breadcrumb a {
  color: var(--c_text);
  padding: 0;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
}
#breadcrumb a:hover {
  opacity: 1;
  text-decoration-color: currentColor;
}

/** -------------------- フッター -------------------- **/
.dfk-footer {
  padding-top: var(--mask_height);
  margin-top: 200px;
}
.dfk-footer .dfk-footer-sec01 {
  background: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/bg.jpg) repeat-y top center/100%;
  -webkit-mask-image: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/wave_mask.svg), -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(transparent), color-stop(#000), to(#000));
  -webkit-mask-image: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/wave_mask.svg), linear-gradient(to bottom, transparent 0%, transparent var(--mask_height), #000 var(--mask_height), #000 100%);
          mask-image: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/wave_mask.svg), -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(transparent), color-stop(#000), to(#000));
          mask-image: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/wave_mask.svg), linear-gradient(to bottom, transparent 0%, transparent var(--mask_height), #000 var(--mask_height), #000 100%);
  -webkit-mask-size: var(--mask_width);
          mask-size: var(--mask_width);
  margin-top: calc(-1 * var(--mask_height));
  padding: 80px 0 135px;
}
.dfk-footer .dfk-footer-sec01-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 80px 20px;
}
.dfk-footer .dfk-footer-guide {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 26px 1fr 26px 1fr 26px 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 26px;
}
.dfk-footer .dfk-footer-guide-item {
  background: var(--c_wht);
  padding: 20px;
  border-radius: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.dfk-footer .dfk-footer-guide-ico {
  width: 50px;
  margin: 0 auto 10px;
}
.dfk-footer .dfk-footer-guide-ttl {
  text-align: center;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 13px;
}
.dfk-footer .dfk-footer-guide-txt {
  font-size: 14px;
  line-height: 1.6;
  text-align: center;
  margin: 0 -5px 15px;
}
.dfk-footer .dfk-footer-guide-txt--large {
  font-size: 16px;
}
.dfk-footer .dfk-footer-guide-link {
  margin: auto 0 0 auto;
  font-size: 14px;
  line-height: 1;
}
.dfk-footer .dfk-footer-guide-link-txt {
  color: var(--c_blue);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
}
.dfk-footer .dfk-footer-guide-link-txt:after {
  content: "";
  width: 8px;
  height: 8px;
  background: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/chevron.png) no-repeat center/contain;
  -webkit-filter: var(--filter_blue);
          filter: var(--filter_blue);
}
.dfk-footer .dfk-footer-guide-link-txt:hover {
  opacity: 1;
  text-decoration-color: currentColor;
}
.dfk-footer .dfk-footer-sitemap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-column-gap: 86px;
     -moz-column-gap: 86px;
          column-gap: 86px;
}
.dfk-footer .dfk-footer-sitemap-parent {
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 22px;
}
.dfk-footer .dfk-footer-sitemap-item {
  font-size: 16px;
  line-height: 1;
  margin-bottom: 18px;
}
.dfk-footer .dfk-footer-sitemap-item:last-child {
  margin-bottom: 0;
}
.dfk-footer .dfk-footer-sitemap-link {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
}
.dfk-footer .dfk-footer-sitemap-link:hover {
  opacity: 1;
  text-decoration-color: currentColor;
}
.dfk-footer .dfk-footer-contact-ttl {
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 13px;
}
.dfk-footer .dfk-footer-contact-tel {
  margin-bottom: 18px;
}
.dfk-footer .dfk-footer-contact-tel-num {
  font-size: 34px;
  line-height: 1;
}
.dfk-footer .dfk-footer-contact-tel-txt {
  margin-top: 10px;
  font-size: 14px;
  line-height: 1;
}
.dfk-footer .dfk-footer-sec02 {
  background: var(--c_wht);
  margin-top: -55px;
  padding: 32px 70px 65px;
  border-radius: 50px 50px 0 0;
  position: relative;
}
.dfk-footer .dfk-footer-sec02-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}
.dfk-footer .dfk-footer-subpage {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px 30px;
}
.dfk-footer .dfk-footer-subpage-item {
  font-size: 16px;
  line-height: 1;
}
.dfk-footer .dfk-footer-subpage-link {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
}
.dfk-footer .dfk-footer-subpage-link:hover {
  opacity: 1;
  text-decoration-color: currentColor;
}
.dfk-footer .dfk-footer-sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 10px;
}
.dfk-footer .dfk-footer-sns-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 24px;
          flex: 0 1 24px;
}
.dfk-footer .dfk-footer-sns-item--sitelogo {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 86px;
          flex: 0 1 86px;
}

/** -------------------- 商品レビュー　BodyProductReview.ascx -------------------- **/
#dfk-product-review .dfk-product-review-ttl {
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 60px;
}
#dfk-product-review .dfk-product-review-list-item {
  -webkit-box-shadow: 0px 0px 14px 4px rgba(0, 0, 0, 0.04);
          box-shadow: 0px 0px 14px 4px rgba(0, 0, 0, 0.04);
  padding: 30px 60px;
  border-radius: 20px;
  margin-bottom: 30px;
}
#dfk-product-review .dfk-product-review-list-item:last-child {
  margin-bottom: 0;
}
#dfk-product-review .dfk-product-review-list-star {
  margin-bottom: 10px;
}
#dfk-product-review .dfk-product-review-list-ttl {
  margin-bottom: 8px;
  font-weight: 700;
  line-height: normal;
}
#dfk-product-review .dfk-product-review-list-date {
  font-size: 14px;
  line-height: 1;
  margin-bottom: 8px;
}
#dfk-product-review .dfk-product-review-list-name {
  font-size: 14px;
  line-height: 1;
}
#dfk-product-review .dfk-product-review-list-body {
  margin-top: 10px;
}
#dfk-product-review #pagination {
  padding: 0;
  margin: 30px 0;
}
#dfk-product-review #pagination:empty {
  display: none;
}
#dfk-product-review .dfk-product-review-input {
  margin-top: 60px;
  text-align: center;
}
#dfk-product-review .dfk-product-review-input .dfk-btn:after {
  display: none;
}
#dfk-product-review .tblReviewInput {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  font-size: 16px;
  line-height: 1.5;
}
#dfk-product-review .tblReviewInput th {
  text-align: right;
  padding: 8px 16px 8px 0;
  font-weight: 500;
}
#dfk-product-review .tblReviewInput input[type=text] {
  width: 100%;
  font-family: var(--font_ja);
  font-size: 16px;
}
#dfk-product-review .tblReviewInput textarea {
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 10px;
  margin: 5px 0;
  font-family: var(--font_ja);
  font-size: 16px;
}
#dfk-product-review .dfk-product-review-confirm-txt {
  margin-bottom: 30px;
}
#dfk-product-review .dfk-product-review-confirm-action {
  margin-top: 30px;
}

/* レビュー星 */
.dfk-product-review-star {
  width: 75px;
  height: 12px;
  display: -ms-grid;
  display: grid;
}
.dfk-product-review-star:before, .dfk-product-review-star:after {
  content: "";
  height: 100%;
  background: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/review_star.png) space left center/auto 100%;
}
.dfk-product-review-star:after {
  -webkit-filter: var(--filter_bg_gray);
          filter: var(--filter_bg_gray);
}
.dfk-product-review-star[data-star="5"] {
  -ms-grid-columns: 100%;
  grid-template-columns: 100%;
}
.dfk-product-review-star[data-star="5"]:after {
  display: none;
}
.dfk-product-review-star[data-star="4"] {
  -ms-grid-columns: 80% 20%;
  grid-template-columns: 80% 20%;
}
.dfk-product-review-star[data-star="3"] {
  -ms-grid-columns: 60% 40%;
  grid-template-columns: 60% 40%;
}
.dfk-product-review-star[data-star="2"] {
  -ms-grid-columns: 40% 60%;
  grid-template-columns: 40% 60%;
}
.dfk-product-review-star[data-star="1"] {
  -ms-grid-columns: 20% 80%;
  grid-template-columns: 20% 80%;
}
.dfk-product-review-star[data-star="0"] {
  -ms-grid-columns: 100%;
  grid-template-columns: 100%;
}
.dfk-product-review-star[data-star="0"]:before {
  display: none;
}

/** -------------------- 横スクロール系商品ブロック（共通） -------------------- **/
/* おすすめのおやつ、最近チェックした商品　共通 */
.dfk-product-scroll {
  margin: 80px 0 60px;
  overflow: hidden;
}
.dfk-product-scroll .dfk-product-scroll-ttl {
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 60px;
}
.dfk-product-scroll .dfk-product-scroll-list {
  overflow-y: hidden;
  overflow-x: auto;
  padding: 0 calc((100% - 1200px) / 2) 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 20px;
}
.dfk-product-scroll .dfk-product-scroll-list::-webkit-scrollbar {
  display: none;
}
.dfk-product-scroll .dfk-product-scroll-list-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc((100% - 60px) / 4);
          flex: 0 0 calc((100% - 60px) / 4);
}
.dfk-product-scroll .dfk-product-scroll-list-item .thumb {
  margin-bottom: 10px;
  position: relative;
}
.dfk-product-scroll .dfk-product-scroll-list-item .thumb img {
  aspect-ratio: 1/1;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 20px;
}
.dfk-product-scroll .dfk-product-scroll-list-item .sold {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  border-radius: 20px;
  color: var(--c_wht);
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: var(--font_roboto);
  font-size: 28px;
  font-weight: 700;
}
.dfk-product-scroll .dfk-product-scroll-list-item .name {
  font-size: 16px;
  line-height: 1.4;
  margin: 10px 0;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 3px;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price:last-child {
  margin-bottom: 0;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price .label {
  font-size: 12px;
  line-height: 1;
  padding: 3px 5px;
  background: var(--c_bg_gray);
  border: 1px solid var(--c_bg_gray);
  border-radius: 5px;
  margin-right: 8px;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price .num {
  font-size: 22px;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price .tax {
  font-size: 12px;
  font-weight: 500;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price--regular:not(:last-child) {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price--regular:not(:last-child) .num {
  font-size: 14px;
  text-decoration: line-through;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price--regular:not(:last-child) .yen {
  text-decoration: line-through;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price--regular:not(:last-child) .tax {
  font-size: 14px;
  text-decoration: line-through;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price--regular:last-child .label {
  display: none;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price--teiki .label {
  color: var(--c_blue);
  border-color: var(--c_blue);
  background: transparent;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price--member .label {
  color: var(--c_blue);
  border-color: var(--c_blue);
  background: transparent;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price--sale .label {
  color: var(--c_orange);
  border-color: var(--c_orange);
  background: transparent;
}
.dfk-product-scroll .dfk-product-scroll-list-item .price--special .label {
  color: var(--c_orange);
  border-color: var(--c_orange);
  background: transparent;
}

/** -------------------- 商品　キャンペーンアイコン -------------------- **/
.dfk-product-icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  padding: 6px 5px;
  border: 1.5px solid var(--c_orange);
  color: var(--c_orange);
  border-radius: 5px;
}
.dfk-product-icon img {
  display: none;
}
.dfk-product-icon:empty {
  display: none;
}

.dfk-product-icon--1:before {
  content: "グループ会員限定";
}

.dfk-product-icon--2:before {
  content: "単品";
}

.dfk-product-icon--3:before {
  content: "定期便";
}

.dfk-product-icon--4 {
  background: var(--c_yellow);
  border-color: var(--c_yellow);
  color: var(--c_text);
}
.dfk-product-icon--4:before {
  content: "限定商品";
}

.dfk-product-icon--5 {
  background: var(--c_yellow);
  border-color: var(--c_yellow);
  color: var(--c_text);
}
.dfk-product-icon--5:before {
  content: "NEW";
}

.dfk-product-icon--6 {
  background: var(--c_yellow);
  border-color: var(--c_yellow);
  color: var(--c_text);
}
.dfk-product-icon--6:before {
  content: "キャンペーン対象";
}

.dfk-product-icon--7 {
  background: var(--c_yellow);
  border-color: var(--c_yellow);
  color: var(--c_text);
}
.dfk-product-icon--7:before {
  content: "予約";
}

.dfk-product-icon--8:before {
  content: "1袋コース";
}

.dfk-product-icon--9:before {
  content: "3袋コース";
}

.dfk-product-icon--10:before {
  content: "送料無料";
}

/** -------------------- ソートコントロール -------------------- **/
.dfk-product-sort {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-column-gap: 14px;
     -moz-column-gap: 14px;
          column-gap: 14px;
}
.dfk-product-sort .dfk-product-sort-label {
  font-size: 16px;
  line-height: 1.5;
}
.dfk-product-sort .dfk-product-sort-select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  min-width: 214px;
  font-family: var(--font_ja);
  font-size: 16px;
  line-height: 1.5;
  padding: 9px 15px;
  border: 1px solid var(--c_bg_gray);
  border-radius: 5px;
  background: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/selectbox_arrow.png) no-repeat right 15px center/6px, var(--c_wht);
  color: var(--c_text);
  margin: 0;
}

/** -------------------- ページャー -------------------- **/
#dfk-controller {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2fr 1fr;
  grid-template-columns: 1fr 2fr 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#dfk-controller .dfk-controller-status {
  font-size: 16px;
  line-height: 1.5;
}
#dfk-controller .dfk-controller-pager {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 40px;
     -moz-column-gap: 40px;
          column-gap: 40px;
}
#dfk-controller .dfk-controller-pager-prev a,
#dfk-controller .dfk-controller-pager-next a {
  width: 40px;
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/chevron.png) no-repeat center/16px;
  -webkit-filter: var(--filter_blue);
          filter: var(--filter_blue);
}
#dfk-controller .dfk-controller-pager-prev a {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
#dfk-controller .dfk-controller-pager-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 40px;
     -moz-column-gap: 40px;
          column-gap: 40px;
  font-size: 24px;
  line-height: 1.4;
  text-align: center;
}
#dfk-controller .dfk-controller-pager-list .is-current {
  width: 40px;
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: var(--c_blue);
  color: var(--c_wht);
  border-radius: 5px;
}
#dfk-controller .dfk-controller-pager-list a {
  color: var(--c_blue);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}

/** -------------------- ランキング -------------------- **/
.dfk-ranking-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 25px 1fr 25px 1fr 25px 1fr 25px 1fr;
  grid-template-columns: repeat(5, 1fr);
  gap: 25px;
}

.dfk-ranking-list-item {
  counter-increment: rank;
}
.dfk-ranking-list-item:first-child .dfk-ranking-list-item-link:before {
  content: "";
  width: 46px;
  border: 0;
  border-radius: 0;
  background: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/ranking_no1.png) no-repeat center/contain;
}
.dfk-ranking-list-item:nth-child(2) .dfk-ranking-list-item-link:before {
  background: #8A8A8A;
  border-color: #8A8A8A;
  color: var(--c_wht);
}
.dfk-ranking-list-item:nth-child(3) .dfk-ranking-list-item-link:before {
  background: #D97A4A;
  border-color: #D97A4A;
  color: var(--c_wht);
}

.dfk-ranking-list-item-link {
  display: block;
  padding: 20px 15px;
  background: var(--c_wht);
  -webkit-box-shadow: 0px 0px 14px 4px rgba(0, 0, 0, 0.04);
          box-shadow: 0px 0px 14px 4px rgba(0, 0, 0, 0.04);
  border-radius: 20px;
  position: relative;
  height: 100%;
}
.dfk-ranking-list-item-link:hover {
  opacity: 1;
}
.dfk-ranking-list-item-link:hover .dfk-ranking-list-item-ttl {
  text-decoration-color: currentColor;
}

.dfk-ranking-list-item-link:before {
  content: counter(rank);
  width: 36px;
  height: 36px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--c_blue);
  background: var(--c_wht);
  border: 1px solid var(--c_blue);
  border-radius: 50%;
  font-family: var(--font_roboto);
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  position: absolute;
  top: 20px;
  left: 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 5;
}

.dfk-ranking-list-item-img {
  margin-bottom: 12px;
  position: relative;
}

.dfk-ranking-list-item .sold {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  color: var(--c_wht);
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: var(--font_roboto);
  font-size: 28px;
  font-weight: 700;
}

.dfk-ranking-list-item-ttl {
  font-size: 14px;
  line-height: 1.2;
  margin-bottom: 10px;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
  -webkit-transition: var(--anim);
  transition: var(--anim);
}

.dfk-ranking-list-item-price {
  font-size: 14px;
  line-height: 1.2;
}

.dfk-ranking-list-item-price--regular:not(:last-child) {
  text-decoration: line-through;
}

.dfk-ranking-list-item-price--regular:last-child .label {
  display: none;
}

.dfk-ranking-list-item-price--teiki {
  color: var(--c_blue);
}

.dfk-ranking-list-item-price--member {
  color: var(--c_blue);
}

.dfk-ranking-list-item-price--special {
  color: var(--c_orange);
}

.dfk-ranking-list-item-price--sale {
  color: var(--c_orange);
}

/** -------------------- ニュース　新着情報 -------------------- **/
.dfk-news-item {
  margin-bottom: 18px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 124px 1fr;
  grid-template-columns: 124px 1fr;
}
.dfk-news-item:last-child {
  margin-bottom: 0;
}

.dfk-news-item-date {
  font-size: 20px;
  line-height: 1.4;
}

.dfk-news-item-txt {
  font-size: 16px;
  line-height: 1.6;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}
.dfk-news-item-txt a {
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
}
.dfk-news-item-txt a:hover {
  opacity: 1;
  text-decoration-color: currentColor;
}

/* PCのみ
  ------------------------ */
@media (min-width: 769px) {
  body {
    min-width: 1240px;
  }
}
@media (min-width: 1201px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
/* スマホ
  ------------------------ */
@media (max-width: 768px) {
  :root {
    --mask_height: 18px;
    --mask_width: 91px;
    --header_height: 85px;
  }
  body {
    font-size: 16px;
  }
  .anim.fadeUp {
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  /** -------------------- 共通スタイル -------------------- **/
  .ttlH2, #dvUserBox h2, #CartList h2 {
    font-size: 26px;
    padding: 50px 0 60px;
  }
  .sTtl {
    font-size: 18px;
    margin: 40px 0 20px !important;
  }
  .inner {
    padding: 0 20px;
  }
  /* 重要なお知らせなし */
  .is-headerNotiveHidden {
    --header_height: 55px;
  }
  /* ボタン */
  .dfk-btn {
    -webkit-column-gap: 8px;
       -moz-column-gap: 8px;
            column-gap: 8px;
    font-size: 16px;
    line-height: 1.2;
    padding: 13px 17px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
  }
  .dfk-btn:after {
    width: 10px;
    height: 10px;
  }
  .dfk-btn.dfk-btn--small {
    font-size: 16px;
    padding: 4px 9px;
  }
  /* 見出し */
  .dfk-h1 {
    margin: 40px 0;
    font-size: 28px;
  }
  /* 汎用お知らせボックス */
  .dfk-attention {
    padding: 20px;
  }
  /** -------------------- 固定バナー -------------------- **/
  .dfk-trial-bnr-link {
    width: 250px;
  }
  .dfk-trial-bnr-close {
    width: 20px;
    height: 20px;
    top: -4px;
    left: -4px;
  }
  .dfk-trial-bnr-close:before, .dfk-trial-bnr-close:after {
    width: 8px;
  }
  /** -------------------- ヘッダー -------------------- **/
  header.dfk-header .dfk-header-notice {
    padding: 8px 34px 8px 1px;
  }
  header.dfk-header .dfk-header-notice-close {
    width: 12px;
    height: 12px;
    right: 10px;
  }
  header.dfk-header .dfk-header-notice-txt {
    font-size: 14px;
    line-height: 1;
    padding: 0;
  }
  header.dfk-header .dfk-header-container {
    height: 55px;
    padding: 4px 20px;
    -webkit-column-gap: 14px;
       -moz-column-gap: 14px;
            column-gap: 14px;
  }
  header.dfk-header .dfk-header-logo {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 55px;
            flex: 0 1 55px;
    margin-right: auto;
  }
  header.dfk-header .dfk-header-nav,
  header.dfk-header .dfk-header-tel {
    display: none;
  }
  header.dfk-header .dfk-header-user {
    -webkit-column-gap: 14px;
       -moz-column-gap: 14px;
            column-gap: 14px;
  }
  header.dfk-header .dfk-header-user-item {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
  header.dfk-header .dfk-header-user-link {
    row-gap: 4px;
    font-size: 10px;
  }
  header.dfk-header .dfk-header-user-ico {
    width: 16px;
  }
  header.dfk-header .dfk-header-trigger {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 30px;
            flex: 0 0 30px;
  }
  header.dfk-header .dfk-header-menu {
    width: 280px;
  }
  header.dfk-header .dfk-header-menu::-webkit-scrollbar {
    width: 2px;
  }
  header.dfk-header .dfk-header-menu-close {
    width: 50px;
    height: 50px;
    border-radius: 10px 0 0;
    top: auto;
    bottom: 0;
    right: 0;
  }
  header.dfk-header .dfk-header-menu-scroll {
    padding: 20px 18px 20px 20px;
  }
  header.dfk-header .dfk-header-menu-scroll::-webkit-scrollbar {
    width: 2px;
  }
  header.dfk-header .dfk-header-menu-link {
    font-size: 14px;
  }
  header.dfk-header .dfk-header-menu-user {
    gap: 5px;
    margin-bottom: 16px;
  }
  header.dfk-header .dfk-header-menu-user-link {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 8px 0;
    padding: 12px 0 11px;
    font-size: 14px;
  }
  header.dfk-header .dfk-header-menu-user-ico {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
    width: 16px;
  }
  header.dfk-header .dfk-header-menu-search {
    margin-bottom: 24px;
  }
  header.dfk-header .dfk-header-menu-search-input {
    padding: 12px 40px 12px 16px;
    height: 50px;
  }
  header.dfk-header .dfk-header-menu-search-btn {
    width: 16px;
    height: 16px;
    right: 16px;
  }
  header.dfk-header .dfk-header-menu-category {
    margin: 24px 0;
  }
  header.dfk-header .dfk-header-menu-category-all {
    margin-bottom: 10px;
  }
  header.dfk-header .dfk-header-menu-category-type01 {
    -ms-grid-columns: 1fr 10px 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    margin-bottom: 10px;
  }
  header.dfk-header .dfk-header-menu-category-type01-img {
    border-radius: 10px;
  }
  header.dfk-header .dfk-header-menu-category-type01-img img {
    aspect-ratio: 115/80;
    -o-object-fit: cover;
       object-fit: cover;
  }
  header.dfk-header .dfk-header-menu-category-type02 {
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
    gap: 7px 0;
    margin-bottom: 7px;
  }
  header.dfk-header .dfk-header-menu-category-type02-link {
    font-size: 14px;
    padding: 14px 8px;
  }
  header.dfk-header .dfk-header-menu-category-type03 {
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
    gap: 7px 0;
  }
  header.dfk-header .dfk-header-menu-category-type03-link {
    font-size: 14px;
    padding: 4px;
  }
  header.dfk-header .dfk-header-menu-category-type03-img {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 36px;
            flex: 0 1 36px;
  }
  header.dfk-header .dfk-header-menu-subpage {
    margin-top: 24px;
  }
  header.dfk-header .dfk-header-menu-subpage-item {
    margin-bottom: 16px;
  }
  /** -------------------- パンくず -------------------- **/
  #breadcrumb {
    margin: 30px 0 0;
    font-size: 10px;
  }
  #breadcrumb.breadcrumb-low {
    padding: 7px 20px;
  }
  #breadcrumb ul {
    -webkit-column-gap: 6px;
       -moz-column-gap: 6px;
            column-gap: 6px;
  }
  #breadcrumb ul li {
    -webkit-column-gap: 6px;
       -moz-column-gap: 6px;
            column-gap: 6px;
  }
  #breadcrumb ul li:after {
    width: 6px;
    height: 6px;
  }
  /** -------------------- フッター -------------------- **/
  .dfk-footer {
    margin-top: 100px;
  }
  .dfk-footer .dfk-footer-sec01 {
    padding: 43px 0 118px;
  }
  .dfk-footer .dfk-footer-sec01-container {
    display: block;
  }
  .dfk-footer .dfk-footer-guide {
    -ms-grid-columns: 1fr 15px 1fr;
    grid-template-columns: repeat(2, 1fr);
    -ms-grid-rows: 1fr 15px 1fr;
    grid-template-rows: repeat(2, 1fr);
    gap: 15px;
    margin-bottom: 20px;
  }
  .dfk-footer .dfk-footer-guide > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .dfk-footer .dfk-footer-guide > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .dfk-footer .dfk-footer-guide > *:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .dfk-footer .dfk-footer-guide > *:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .dfk-footer .dfk-footer-guide-item {
    padding: 20px 10px;
  }
  .dfk-footer .dfk-footer-guide-ico {
    width: 30px;
    margin-bottom: 8px;
  }
  .dfk-footer .dfk-footer-guide-ttl {
    font-size: 14px;
    margin-bottom: 8px;
  }
  .dfk-footer .dfk-footer-guide-txt {
    font-size: 12px;
    line-height: 1.4;
    text-align: left;
    margin: 0 0 13px;
  }
  .dfk-footer .dfk-footer-guide-txt--large {
    font-size: 14px;
  }
  .dfk-footer .dfk-footer-guide-link {
    font-size: 12px;
  }
  .dfk-footer .dfk-footer-guide-link-txt:after {
    width: 6px;
    height: 6px;
  }
  .dfk-footer .dfk-footer-sitemap {
    display: block;
    margin-bottom: 40px;
  }
  .dfk-footer .dfk-footer-sitemap-parent {
    padding: 10px 12px 10px 0;
    position: relative;
    border-bottom: 1px solid var(--c_blue);
    margin: 0;
  }
  .dfk-footer .dfk-footer-sitemap-parent:after {
    content: "";
    width: 8px;
    height: 8px;
    background: url(../../Contents/ImagesPkg/dogfoodkoubou2026/common/chevron.png) no-repeat center/contain;
    -webkit-filter: var(--filter_blue);
            filter: var(--filter_blue);
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    -webkit-transition: var(--anim);
    transition: var(--anim);
  }
  .dfk-footer .dfk-footer-sitemap-parent.is-open:after {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
  .dfk-footer .dfk-footer-sitemap-children {
    padding: 10px 0;
    display: none;
  }
  .dfk-footer .dfk-footer-sitemap-item {
    font-size: 14px;
    margin-bottom: 12px;
  }
  .dfk-footer .dfk-footer-contact-tel {
    margin-bottom: 30px;
  }
  .dfk-footer .dfk-footer-sec02 {
    margin-top: -85px;
    padding: 24px 20px 15px;
    border-radius: 30px 30px 0 0;
  }
  .dfk-footer .dfk-footer-sec02-container {
    display: block;
  }
  .dfk-footer .dfk-footer-subpage {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 8px 24px;
  }
  .dfk-footer .dfk-footer-subpage-item {
    font-size: 12px;
    line-height: 1.4;
  }
  .dfk-footer .dfk-footer-sns {
    margin-top: 13px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .dfk-footer .dfk-footer-sns-item {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 18px;
            flex: 0 1 18px;
  }
  .dfk-footer .dfk-footer-sns-item--sitelogo {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 50px;
            flex: 0 1 50px;
  }
  /** -------------------- 商品レビュー　BodyProductReview.ascx -------------------- **/
  #dfk-product-review .dfk-product-review-ttl {
    font-size: 22px;
    line-height: 1.4;
    margin-bottom: 24px;
  }
  #dfk-product-review .dfk-product-review-list-item {
    margin-bottom: 20px;
    padding: 30px 20px;
  }
  #dfk-product-review .dfk-product-review-list-date {
    font-size: 12px;
  }
  #dfk-product-review .dfk-product-review-list-name {
    font-size: 12px;
  }
  #dfk-product-review #pagination {
    margin: 20px 0;
  }
  #dfk-product-review .dfk-product-review-input {
    margin-top: 50px;
  }
  #dfk-product-review .tblReviewInput th {
    display: block;
    text-align: left;
    padding: 0;
    margin-top: 12px;
  }
  #dfk-product-review .tblReviewInput td {
    display: block;
  }
  #dfk-product-review .tblReviewInput td.review-action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 12px;
    max-width: 400px;
    margin: 0 auto;
  }
  #dfk-product-review .tblReviewInput td.review-action .btn-inverse {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
    margin: 0;
  }
  /* レビュー星 */
  .dfk-product-review-star {
    width: 64px;
    height: 10px;
  }
  /** -------------------- 横スクロール系商品ブロック（共通） -------------------- **/
  /* おすすめのおやつ、最近チェックした商品　共通 */
  .dfk-product-scroll .dfk-product-scroll-ttl {
    font-size: 22px;
    line-height: 1.4;
    margin-bottom: 24px;
  }
  .dfk-product-scroll .dfk-product-scroll-list {
    padding: 0 20px 20px;
  }
  .dfk-product-scroll .dfk-product-scroll-list-item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 180px;
            flex: 0 0 180px;
  }
  .dfk-product-scroll .dfk-product-scroll-list-item .thumb {
    margin-bottom: 5px;
  }
  .dfk-product-scroll .dfk-product-scroll-list-item .sold {
    font-size: 24px;
  }
  .dfk-product-scroll .dfk-product-scroll-list-item .name {
    font-size: 14px;
    margin: 5px 0;
  }
  .dfk-product-scroll .dfk-product-scroll-list-item .price {
    font-size: 12px;
  }
  .dfk-product-scroll .dfk-product-scroll-list-item .price .num {
    font-size: 20px;
  }
  .dfk-product-scroll .dfk-product-scroll-list-item .price .tax {
    font-size: 10px;
  }
  /** -------------------- ページャー -------------------- **/
  #dfk-controller {
    display: block;
  }
  #dfk-controller .dfk-controller-status {
    text-align: center;
  }
  #dfk-controller .dfk-controller-pager {
    margin-top: 16px;
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
  }
  #dfk-controller .dfk-controller-pager-prev a,
  #dfk-controller .dfk-controller-pager-next a {
    width: 36px;
    height: 36px;
  }
  #dfk-controller .dfk-controller-pager-list {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
    font-size: 22px;
  }
  #dfk-controller .dfk-controller-pager-list .is-current {
    width: 36px;
    height: 36px;
  }
  /** -------------------- ランキング -------------------- **/
  .dfk-ranking {
    overflow-x: auto;
    overflow-y: hidden;
    margin: -14px -20px 0;
    padding: 14px 20px;
  }
  .dfk-ranking-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
  }
  .dfk-ranking-list:after {
    content: "";
    width: 4px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .dfk-ranking-list-item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 200px;
            flex: 0 0 200px;
  }
  .dfk-ranking-list-item:first-child .dfk-ranking-list-item-link:before {
    width: 37px;
    height: 29px;
  }
  .dfk-ranking-list-item-link {
    padding: 20px;
  }
  .dfk-ranking-list-item-link:before {
    width: 30px;
    height: 30px;
    font-size: 14px;
    top: 20px;
    left: 20px;
  }
  /** -------------------- ニュース　新着情報 -------------------- **/
  .dfk-news-item {
    margin-bottom: 16px;
    display: block;
  }
  .dfk-news-item-date {
    font-size: 16px;
    margin-bototm: 6px;
  }
  .dfk-news-item-txt {
    font-size: 14px;
  }
}