@charset "utf-8";

/* ========================================
独自スタイル - レイアウト
=========================================== */

/* システムで出力されるテキストリンク */
a.fs-c-textLink {
  text-decoration: underline;
}
a.fs-c-textLink:hover {
  text-decoration: none;
}

/* ページ遷移時にフェードイン */
/* body.fs-body-product {
  -webkit-animation: fadeIn 1.2s ease 0s 1 normal;
  animation: fadeIn 1.2s ease 0s 1 normal;
}
@keyframes fadeIn {
  0% { opacity: 0 }
  100% { opacity: 1 }
}
@-webkit-keyframes fadeIn {
  0% { opacity: 0 }
  100% { opacity: 1 }
} */

/* 要素ごとのフェードイン */
.fadein {
  opacity : 0;
  transition: all 1.2s;
}

/* 下方向からのフェードイン */
.fadeBottom {
  transform: translateY(20px);
}

/* 左方向からのフェードイン */
.fadeLeft {
  transform: translateX(-40px);
}

/* 右方向からのフェードイン */
.fadeRight {
  transform: translateX(40px);
}

/* フェードイン 200msのdelayをかける */
.delay1 {
  -moz-transition-delay: 200ms;
  -webkit-transition-delay: 200ms;
  -o-transition-delay: 200ms;
  -ms-transition-delay: 200ms;
}

/* フェードイン 400msのdelayをかける */
.delay2 {
  -moz-transition-delay: 400ms;
  -webkit-transition-delay: 400ms;
  -o-transition-delay: 400ms;
  -ms-transition-delay: 400ms;
}

/* フェードイン 600msのdelayをかける */
.delay3 {
  -moz-transition-delay: 600ms;
  -webkit-transition-delay: 600ms;
  -o-transition-delay: 600ms;
  -ms-transition-delay: 600ms;
}

/* フェードイン 800msのdelayをかける */
.delay4 {
  -moz-transition-delay: 800ms;
  -webkit-transition-delay: 800ms;
  -o-transition-delay: 800ms;
  -ms-transition-delay: 800ms;
}

/* フェードイン 1sのdelayをかける */
.delay5 {
  -moz-transition-delay: 1s;
  -webkit-transition-delay: 1s;
  -o-transition-delay: 1s;
  -ms-transition-delay: 1s;
}

/* JSで背景遅延のパララックス効果を付与 */
.parallax {
  min-height: 600px;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
}

/* 背景画像指定 */
.parallax.bg1 {
  background-image: url();
}

/* 特定の要素に100msのdelayをかける */
.fadein.gg-image__item {
  -moz-transition-delay: 100ms;
  -webkit-transition-delay: 100ms;
  -o-transition-delay: 100ms;
  -ms-transition-delay: 100ms;
}

/* 要素をバウンドさせる */
.bounce {
  animation: key1 .6s ease infinite alternate;
}
@keyframes key1{
  0% {transform: translateY(0px);}
  100% {transform: translateY(-5px);}
}

/* スマホで全体幅100%表示にしたときだけ左右に余白追加 */
.fs-l-productLayout__item--1,
.fs-l-productLayout__item--2 {
  padding: 0 8px;
}
@media screen and (min-width: 960px) {
  .fs-l-productLayout__item--1,
  .fs-l-productLayout__item--2 {
    padding: 0;
  }
}

/* コラム リンク下線 */
.fs-pt-column a:hover {
  text-decoration: none;
}

/* コラムで追加したバナー hover時の設定 */
.fs-pt-column a:hover img {
  transition: all .3s;
  opacity: 0.7;
}

/* コラム本文 中央寄せ */
.fs-pt-column__description {
  text-align: center;
}

/* 前のページに戻るボタン */
.gg-historyBack {
  margin-top: 32px;
}

/* 独自画像をサムネイルにして、クリックで動画再生 */
.youtube_movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube_player,
.youtube_thumb {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.youtube_thumb:hover {
  cursor: pointer;
}
.youtube_movie iframe {
  position:absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* PC・スマホで表示内容を切り替える */
.pc-only {
  display: none;  
}
@media screen and (min-width: 768px) {
  .pc-only {
    display: block;  
  }
}
.sp-only {
  display: block;  
}
@media screen and (min-width: 768px) {
  .sp-only {
    display: none;
  }
}


/* ========================================
独自スタイル - ヘッダー
=========================================== */

/* ヘッダー最上部告知 テキストリンク */
.gg-headerInformationText {
  margin: 0;
  padding: 0;
  color: #fff;
  text-align: center;
  font-size: 1.2rem;
  line-height: 3rem;
  background: #a3d3d3;
  z-index: 101;
}
@media screen and (min-width: 768px) {
  .gg-headerInformationText {
    font-size: 1.6rem;
    line-height: 4rem;
  }
}

/* ヘッダー最上部告知 テキストリンク リンク設定 */
.gg-headerInformationText a {
  color: #fff;
  display: block;
  width: 100%;
  height: 100%;
}
.gg-headerInformationText a:visited {
  color: #fff;
}
.gg-headerInformationText a:hover {
  color: #fff;
  opacity: 0.7;
  text-decoration: none;
}
.gg-headerInformationText a:active {
  color: #fff;
}

/* ヘッダー最上部告知 バナーリンク */
.gg-headerInformationBanner {
  background: #a3d3d3;
  font-size: 1rem;
  line-height: 1;
  text-align: center;
}

/* ヘッダー最上部告知 バナーリンク リンク設定 */
.gg-headerInformationBanner a:hover img {
  opacity: 0.7;
}

/* ヘッダーサブコンテンツ flexboxで横並びにする */
.gg-headerTop {
  display: none;
}
@media screen and (min-width: 768px) {
  .gg-headerTop {
    display: flex;
    flex-wrap:wrap;
    align-items: center;
    justify-content: space-between;
    margin: 8px 0 0;
  }
}

/* ヘッダーサブコンテンツ ECサイト概要 */
.gg-headerMsg {
  color: #999;
  font-size: 1.2rem;
  margin: 0;
  padding: 0 0 0 16px;
}
@media screen and (min-width: 1024px) {
  .gg-headerMsg {
    font-size: 1.4rem;
  }
}

/* ヘッダーサブナビゲーション */
.gg-headerTopNav {
  margin: 0;
  padding: 0 16px 0 0;
}

/* ヘッダー検索フォーム */
.fs-l-header__utility .fs-p-searchForm {
  width: 240px;
  padding: 0 12px 0 0;
}

/* ヘッダーポイント表示 */
.fs-l-header__utility .fs-p-memberInfo {
  margin: 0 0 0 2rem;
}

/* ヘッダー検索ボタン */
.gg-headerSearchButton {
  display: block;
  -ms-grid-row: 1;
  grid-row: 1;
  -ms-grid-column: 3;
  grid-column: 3;
  align-self: center;
  padding: 0 0 0 8px;
}
@media screen and (min-width: 768px) {
  .gg-headerSearchButton {
    display: none;
  }
}

/* ヘッダーカートボタン */
.gg-headerCartButton {
  display: block;
  -ms-grid-row: 1;
  grid-row: 1;
  -ms-grid-column: 1;
  grid-column: 4;
  align-self: center;
  padding: 0 8px 0 0;
}
@media screen and (min-width: 768px) {
  .gg-headerCartButton {
    display: none;
  }
}

/* ヘッダー検索ボタンラベル */
.fs-p-headerNavigation__searchButton__label {
  display: none;
}

/* ヘッダーカートボタンラベル */
.fs-p-headerNavigation__viewCartButton__label {
  display: none;
}
@media screen and (min-width: 768px) {
  .fs-p-headerNavigation__viewCartButton__label {
    display: block;
  }
}

/* ヘッダーサブナビゲーション リンク表示切り替え */
/* ログアウト時 */
.fs-p-headerNavigation__register.is-loggedIn--false {
  display: block;
}
.fs-p-headerNavigation__mypage.is-loggedIn--false {
  display: none;
}
.fs-p-headerNavigation__login.is-loggedIn--false {
  display: block;
}
.fs-p-headerNavigation__logout.is-loggedIn--false {
  display: none;
}

/* ログイン時 */
.fs-p-headerNavigation__register.is-loggedIn--true {
  display: none;
}
.fs-p-headerNavigation__mypage.is-loggedIn--true {
  display: block;
}
.fs-p-headerNavigation__login.is-loggedIn--true {
  display: none;
}
.fs-p-headerNavigation__logout.is-loggedIn--true {
  display: block;
}

/* カートボタン個数バッジログイン中も表示 */
.fs-p-headerNavigation .fs-p-cartItemNumber:not(.is-ready) {
  display: block !important;
}


/* ========================================
独自スタイル - ヘッダーメニュー
=========================================== */

/* ヘッダーメニューエリア PC表示時に固定 */
.gg-headerMenuArea {
  display: none;
}
@media screen and (min-width: 768px) {
  .gg-headerMenuArea {
    display: block;
    position: sticky;
    top: 0;
    z-index: 101;
  }
}

/* ヘッダーメニュー */
.gg-headerMenu {
  background: #fff;
  box-shadow: 0 0 3px 0 rgb(0 0 0 / 10%);
}
.gg-headerMenu__list {
  display: flex;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
}

/* ヘッダーメニュー スタートアップテーマ上書き */
.gg-headerMenu .fs-pt-menu a {
  margin: 0;
  padding: 0;
}
.gg-headerMenu .fs-pt-menu__item {
  position: static;
}
.gg-headerMenu .fs-pt-menu__link {
  align-items: center;
  justify-content: center;
}

/* ヘッダーメニュー 親要素 */
.gg-headerMenu li {
  text-align: center;
  transition: all .3s;
}
.gg-headerMenu .fs-pt-menu__item--lv1 {
  width: calc(100% / 8); /* ヘッダーメニュー8等分 */
  height: 64px;
  transition: all 0s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 2px solid #fff;
}
.gg-headerMenu .fs-pt-menu__item--lv1:hover {
  border-bottom: 2px solid #515151;
  cursor: pointer;
}
.gg-headerMenu .fs-pt-menu__item--lv1 a:hover {
  color: inherit;
}
.gg-headerMenu .fs-pt-menu__link--lv1 {
  font-size: 1.2rem;
  font-weight: bold;
}
@media screen and (min-width: 960px) {
  .gg-headerMenu .fs-pt-menu__link--lv1 {
    font-size: 1.6rem;
  }
}

/* ヘッダーメニュー 子要素 */
.gg-headerMenu__list > li:hover .fs-pt-menu__submenu {
  max-height: 9999px;
  opacity: 1;
}
.gg-headerMenu .fs-pt-menu__submenu {
  background: #fff;
  box-shadow: 0px 1px 2px 0px #b2b2b2;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  padding: 0 32px;
  width: 100%;
  position: absolute;
  top: 64px;
  left: 0;
  transition: all .3s;
  z-index: 101;
  display: flex;
  flex-wrap: wrap;
}
/* 特定のカテゴリのみ余白調整 */
.gg-headerMenu .fs-pt_menu__item--playmat .fs-pt-menu__submenu {
  padding: 0 16px;
}

/* サブメニュー3等分 */
.gg-headerMenu .fs-pt-menu__submenu li {
  width: calc(100% / 3);
  padding: 32px 16px;
  font-size: 1.3rem;
  line-height: 1.5;
}
/* 特定のカテゴリのみサブメニュー4等分 */
.gg-headerMenu .fs-pt_menu__item--brand .fs-pt-menu__submenu li,
.gg-headerMenu .fs-pt_menu__item--playmat .fs-pt-menu__submenu li {
  width: calc(100% / 4);
  padding: 32px 8px;
}

/* ヘッダーメニュー 子要素の内部 */
.gg-headerMenu .fs-pt-menu__heading--lv2 a {
  color: inherit;
  display: block;
  position: relative;
}
.gg-headerMenu .fs-pt-menu__heading--lv2 a:hover {
  color: inherit;
  opacity: 0.7;
  transition: all 0.3s;
}

/* ヘッダーメニュー 子要素 サムネイル画像 */
.gg-headerMenu .fs-pt-menu__heading--lv2 a::before {
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 33%;
  display: block;
  margin: 0 0 4px;
  background: center center / cover no-repeat;
}
.gg-headerMenu .fs-pt-menu__heading--lv2 a::after {
  position: absolute;
  content: "";
  top: 0;
  left:0;
  display: block;
  width: 100%;
  height: 200px;/*どれだけデカくなってもはみ出ないであろう高さを指定*/
  background-size: contain;
  background-repeat: no-repeat;
}

/* ヘッダーメニュー 子要素 サムネイル画像URL */
.gg-headerMenu .fs-pt_menu__item--ggumbi a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-brand-ggumbi.gif");
}
.gg-headerMenu .fs-pt_menu__item--licoco a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-brand-licoco.gif");
}
.gg-headerMenu .fs-pt_menu__item--licoco-plus a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-brand-licocoplus.gif");
}
.gg-headerMenu .fs-pt_menu__item--luvhueit a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-brand-luvhueit.gif");
}
.gg-headerMenu .fs-pt_menu__item--famiya a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-brand-famiya.gif");
}
.gg-headerMenu .fs-pt_menu__item--sove a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-brand-sove.gif");
}
.gg-headerMenu .fs-pt_menu__item--organicground a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-brand-organic.gif");
}
.gg-headerMenu .fs-pt_menu__item--babaditto a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-brand-babaditto.gif");
}
.gg-headerMenu .fs-pt_menu__item--kidsmio-original a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-brand-kidsmio.gif");
}
.gg-headerMenu .fs-pt_menu__item--cm_set a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-cm-set.jpg");
}
.gg-headerMenu .fs-pt_menu__item--cm_single a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-cm-single.jpg");
}
.gg-headerMenu .fs-pt_menu__item--cm_option a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-cm-option.jpg");
}
.gg-headerMenu .fs-pt_menu__item--gu_high a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-gu-high.jpg?1");
}
.gg-headerMenu .fs-pt_menu__item--gu_pe a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-gu-matset.jpg");
}
.gg-headerMenu .fs-pt_menu__item--gu_wooden a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-gu-wooden.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pm_rollmat a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pm-rollmat.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pm_verymat a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pm-verymat.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pm_onepiece a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pm-onepiece.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pm_freecut a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pm-freecut.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pm_tpupuzzle a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pm-tpupuzzle.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pm_puzzle a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pm-puzzle.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pm_pvc a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pm-pvc.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pm_option a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pm-option.jpg");
}
.gg-headerMenu .fs-pt_menu__item--baby a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-slippers.jpg");
}
.gg-headerMenu .fs-pt_menu__item--yogamat a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-yogamat.jpg");
}
.gg-headerMenu .fs-pt_menu__item--bedding a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-bedding.jpg");
}
.gg-headerMenu .fs-pt_menu__item--skincare a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-skincare.jpg");
}
.gg-headerMenu .fs-pt_menu__item--laundry a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-laundry.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pet_selfmat a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pet-selfmat.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pet_puzzle a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pet-puzzle.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pet_reversible a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pet-reversible.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pet_collar a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pet-collar.jpg");
}
.gg-headerMenu .fs-pt_menu__item--pet_etc a::after {
  background-image: url("https://ggumbi.itembox.design/item/banner/cat-pet-etc.jpg");
}


/* ========================================
独自スタイル - ドロワーメニュー
=========================================== */

/* 背景を暗くする */
#overlay-close {
  display: none;
  position: fixed;
  z-index: 102;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
}

/*チェックが入ったらコンテンツ外を暗くする*/
#fs_p_ctrlDrawer:checked ~ #overlay-close {
  display: block;
  opacity: .6;
}

/* 会員登録ボタン */
.gg-drawerRegisterButton {
  background: #515151;
  color: #fff;
}
.gg-drawerRegisterButton:hover {
  background: #515151;
}
a.gg-drawerRegisterButton,
a.gg-drawerRegisterButton:hover {
  color: #fff;
}

/* メニュー */
.gg-sideMenu {
  border: 1px solid #e1e1e1;
  border-bottom: none;
  font-size: 1.3rem;
}

/* メニュー間余白 */
h2.fs-p-drawer__heading + div {
  margin-bottom: 32px;
}

/* カテゴリメニュー アコーディオン初期状態 */
#gg_sideCatMenu .fs-pt-menu__submenu {
  display: none;
}

/* アコーディオンに連動する矢印 */
#gg_sideCatMenu .fs-pt-menu__heading--lv1 {
  position: relative;
  transition: 0.5s;
}
#gg_sideCatMenu .fs-pt-menu__heading--lv1::before,
#gg_sideCatMenu .fs-pt-menu__heading--lv1::after {
  content: "";
  display: block;
  width: 12px;
  height: 2px;
  background: #515151;
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
}
#gg_sideCatMenu .fs-pt-menu__heading--lv1::after {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}
#gg_sideCatMenu .fs-pt-menu__heading--lv1.open::after {
  transform: rotate(0);
  transition: 0.5s;
}

/* 子カテゴリがない場合は矢印を表示しない */
#gg_sideCatMenu .fs-pt_menu__item--XXX .fs-pt-menu__heading--lv1::before,
#gg_sideCatMenu .fs-pt_menu__item--XXX .fs-pt-menu__heading--lv1::after {
  display: none;
}
/* 子カテゴリがない場合はリンクを全体に広げる */
.fs-pt_menu__item--XXX a {
  display: block;
  width: 100%;
}

/* アコーディオン開いた状態で文字スタイル変更 */
#gg_sideCatMenu .fs-pt-menu__heading--lv1.open {
  font-weight: bold;
  transition: 0s;
}

/* アコーディオンパネル背景色 */
#gg_sideCatMenu .fs-p-sideMenu .fs-pt-menu__heading--lv2 {
  background: #f5f5f5;
}

/* ブランドメニュー */
#gg_sideBrandMenu .fs-pt-menu__heading--lv1 {
  display: none;
}

/* サイズメニュー */
#gg_sideSizeMenu .fs-pt-menu__heading--lv1 {
  display: none;
}

/* ショップインフォメニュー */
#gg_sideMenu .fs-pt-menu__heading--lv1 {
  display: block;
}

/* ドロワー内 SNSアカウントリンク */
.fs-p-drawer .fs-p-footerSnsLink {
  margin: 0 0 32px;
  justify-content: flex-start;
}

/* ドロワー内 電話注文バナー */
.fs-p-drawer .fs-p-phoneOrder {
  border: 1px solid #e1e1e1;
  padding: 8px;
}


/* ========================================
独自スタイル - コンテンツエリア
=========================================== */

/* パンくずリスト リンク */
.fs-c-breadcrumb__list a {
  color: #888;
  text-decoration: underline;
}

.fs-c-breadcrumb__list {
  padding: 2px !important;
}

.fs-c-breadcrumb__list a:hover {
  text-decoration: none;
}

/* 商品画像パーツ 余白 */
@media screen and (min-width: 960px) {
  .fs-c-productCarouselMainImage {
    margin-bottom: 32px !important;
  }
}


/* ========================================
独自スタイル - フッター
=========================================== */

/* フッター告知バナー 見出し */
.gg-footer__heading {
  font-size:  2rem;
  font-weight: bold;
  margin: 80px auto 24px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .gg-footer__heading {
    font-size:  3.4rem;
    margin: 160px auto 40px;
  }
}

/* フッター告知バナー 枠 */
.fs-l-footer .fs-p-bannerGroup {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  margin: 0 auto;
}
@media screen and (min-width: 600px) {
  .fs-l-footer .fs-p-bannerGroup {
    flex-direction: row;
  }
}
@media screen and (min-width: 768px) {
  .fs-l-footer .fs-p-bannerGroup {
    margin: 0 auto 80px;
  }
}

/* フッター告知バナー */
.fs-l-footer .fs-p-banner {
  border: none;
}
@media screen and (min-width: 600px) {
  .fs-l-footer .fs-p-banner {
    flex-basis: 50%;
  }
}
@media screen and (min-width: 1024px) {
  .fs-l-footer .fs-p-banner {
    flex-basis: 25%;
  }
}

/* フッター告知バナー リンク */
.fs-p-banner__link {
  justify-content: flex-start;
  min-width: 240px;
}

/* フッター告知バナー アイコン */
.gg-banner__icon img {
  width: 80px;
  height: auto;
}
@media screen and (min-width: 960px) {
  .gg-banner__icon img {
    width: 96px;
    height: auto;
  }
}

/* フッター告知バナー ラベル */
.gg-banner__label {
  font-size: 1.4rem;
  font-weight: bold; 
  margin-left: 16px;
}
@media screen and (min-width: 600px) {
  .gg-banner__label {
    font-size: 1.2rem;
    margin-left: 8px;
  }
}
@media screen and (min-width: 960px) {
  .gg-banner__label {
    font-size: 1.6rem;
  }
}

/* フッター告知バナー ラベル強調部分 */
.gg-banner__label--emphasis {
  display: block;
  font-size: 1.6em;
}

/* フッター告知バナー ラベル強調部分 注釈 */
.gg-banner__label--emphasis small {
  color: #999;
  display: block;
  font-size: 1.3rem;
  font-weight: normal;
}

/* フッター 背景色付きエリア */
.gg-footer {
  background: #f4f4f4;
  padding: 24px 0 0;
}
@media screen and (min-width: 768px) {
  .gg-footer {
    padding: 40px 0 0;
  }
}

/* フッター 背景色付きエリア 見出し */
.gg-footer .gg-footer__heading {
    font-size: 1.6rem;
    margin: 16px auto;
}
@media screen and (min-width: 768px) {
  .gg-footer .gg-footer__heading {
    text-align: left;
  }
}

/* フッターコンテンツ */
.fs-l-footer__contents {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .fs-l-footer__contents {
    flex-direction: row;
  }
}

/* フッターコンテンツ カラム間に線をひく */
@media screen and (min-width: 768px) {
  .fs-l-footer__contents > div {
    border-left: 1px solid #ccc;
    padding: 16px;
  }
}
@media screen and (min-width: 1024px) {
  .fs-l-footer__contents > div {
    padding: 32px 48px;
  }
}

/* フッターコンテンツ 最初のブロックだけ特別なスタイル */
.fs-l-footer__contents > div:first-child {
  border-left: none;
}

/* フッターコンテンツ カラム順序 */
.fs-l-footer__contents > *:nth-child(1) {
  order: 2;
}
.fs-l-footer__contents > *:nth-child(2) {
  order: 3;
}
.fs-l-footer__contents > *:nth-child(3) {
  order: 1;
}
/* Googleカレンダーを入れるときは30%,30%,40%がバランス良いです */
@media screen and (min-width: 768px) {
  .fs-l-footer__contents > *:nth-child(1) {
    flex-basis: 33.333%;
    order: 1;
  }
  .fs-l-footer__contents > *:nth-child(2) {
    flex-basis: 33.333%;
    order: 2;
  }
  .fs-l-footer__contents > *:nth-child(3) {
    flex-basis: 33.333%;
    order: 3;
  }
}

/* フッターコンテンツ 連絡先 ショップロゴサイズ */
.fs-l-footer .fs-p-logo__image {
  max-height: 72px;
}
@media screen and (min-width: 1024px) {
  .fs-l-footer .fs-p-logo__image {
    max-height: 100%;
  }
}

/* フッターコンテンツ 連絡先 ショップロゴ位置 */
@media screen and (min-width: 768px) {
  .fs-l-footer .fs-p-logo {
    align-items: flex-start;
  }
}

/* フッターコンテンツ 連絡先 電話注文バナー */
.fs-l-footer .fs-p-phoneOrder {
  text-align: center;
  margin: 32px auto;
}
@media screen and (min-width: 768px) {
  .fs-l-footer .fs-p-phoneOrder {
    text-align: left;
    margin: 24px auto;
  }
}

/* フッターコンテンツ 連絡先 電話注文バナー 文字サイズ */
.fs-l-footer .fs-p-phoneOrder__phoneLabel {
  font-size: 1.4rem;
}
.fs-l-footer .fs-p-phoneOrder__phoneNum {
  font-size: 3rem
}
@media screen and (min-width: 768px) {
  .fs-l-footer .fs-p-phoneOrder__phoneNum {
    font-size: 2.6rem
  }
}
.fs-l-footer .fs-p-phoneOrder__addition {
  font-size: 1.4rem;
}

/* フッターコンテンツ 連絡先 お問い合わせボタン枠 */
.gg-contactButton {
  margin: 0 16px 32px;
  text-align: center;
}
@media screen and (min-width: 768px) {
 .gg-contactButton {
    margin: 0;
  }
}

/* フッターコンテンツ 連絡先 お問い合わせボタン */
.fs-l-footer a.gg-button--contact {
  background: #515151;
  border: 1px solid #515151;
  border-radius: 3px;
  box-shadow: 0 0 2px #b2b2b2;
  color: #fff;
  display: block;
  font-size: 1.4rem;
  margin: 0 auto 12px;
  max-width: 240px;
  padding: 12px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .fs-l-footer a.gg-button--contact {
    max-width: 100%;
  }
}

.fs-l-footer a.gg-button--contact:hover {
  opacity: 0.7;
  text-decoration: none;
}

/* フッターコンテンツ 連絡先 お問い合わせボタン アイコン */
.gg-button--contact::before {
  content: "\e920";
}

/* フッターコンテンツ 連絡先 お問い合わせ注意事項 */
.fs-l-footer .gg-note {
  color: #515151;
  font-size: 1.4rem;
  padding: 0;
  text-indent: 0;
}

/* フッター メニュー配置 */
.gg-footerUtilityInner {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .gg-footerUtilityInner {
    flex-direction: row;
  }
  /* メニュー2列表示にするとき使用
  .gg-footerUtilityInner > nav {
    flex-basis: 50%;
  } */
}

/* フッター メニュー間の線を重ねる */
.gg-footerUtilityMenu + .gg-footerUtilityMenu {
  margin-top: -1px;
}

/* フッターコンテンツ メニュー */
.gg-footerUtilityMenu__list {
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .gg-footerUtilityMenu__list {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #ccc;
  }
}

/* フッターコンテンツ メニュー リスト部分 */
@media screen and (max-width: 767px) {
  .gg-footerUtilityMenu__list li {
    border-bottom: 1px solid #ccc;
    flex-basis: 50%;
    padding: 8px;
  }
}

/* フッターコンテンツ メニュー 奇数番目のみの設定 */
@media screen and (max-width: 767px) {
  .gg-footerUtilityMenu__list li:nth-child(odd) {
    border-right: 1px solid #ccc;
  }
}

/* フッターコンテンツ メニュー アニメーション削除 */
.gg-footerUtilityMenu__list.fs-pt-menu * {
  transition-property: none;
  transition-duration: 0;
  transition-timing-function: ease;
  transition-delay: 0;
}

/* フッターコンテンツ メニュー リンク */
@media screen and (max-width: 767px) {
  .gg-footerUtilityMenu__list li a {
    display: block;
    font-size: 1.3rem;
    line-height: 1;
    padding: 12px 16px 12px 8px;
    position: relative;
  }
}

/* フッターコンテンツ メニュー リンクに矢印 */
@media screen and (max-width: 767px) {
  .gg-footerUtilityMenu__list li a::after {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-top: 1px solid #515151;
    border-right: 1px solid #515151;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 8px;
    margin: auto;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}

/* フッター カレンダー */
.gg-calendar {
  text-align: center;
  margin: 0 8px 48px;
  /* max-width: 240px; */
}
@media screen and (min-width: 480px) {
  .gg-calendar {
    margin: 0 auto 48px;
    max-width: 400px;
  }
}
@media screen and (min-width: 768px) {
  .gg-calendar {
    margin: 0;
    max-width: none;
  }
}


/* ========================================
独自スタイル - 商品詳細ページ
=========================================== */

/* ページ上部に共通バナー */
.product-banner + .fs-c-productCarouselMainImage {
  margin-top: 16px;
}

/* パンくずリスト 商品詳細ページでサブグループ1個目(ブランド)非表示 */
.fs-body-product div.fs-c-breadcrumb ol:first-child {
  display: none;
}

/* 商品説明(小) */
.fs-body-product .fs-p-productDescription--short {
  font-weight: bold;
  font-size: 1.3rem;
  text-align: center;
  margin: 0 8px 24px;
}
@media screen and (min-width: 768px) {
  .fs-body-product .fs-p-productDescription--short {
    font-size: 1.6rem;
    margin: 0 auto 64px;
  }
}

/* 商品説明(大) */
.fs-body-product .fs-p-productDescription--full {
  margin: 40px 8px 24px;
}
@media screen and (min-width: 768px) {
  .fs-body-product .fs-p-productDescription--full {
    margin: 40px auto;
  }
}

/* スマホで全体幅100%表示にしたときだけ左右に余白追加 */
.gg-detailArea {
  margin-top: 24px;
  padding: 0 8px;
}
@media screen and (min-width: 960px) {
.gg-detailArea {
    margin-top: 48px;
    padding: 0;
  }
}

/* ブランド名テキストリンク */
.gg-productTextLink a {
  text-decoration: underline;
}
.gg-productTextLink a:hover {
  text-decoration: none;
}

/* ブランド紹介バナー */
.gg-productLink {
  margin: 60px 8px 0;
}
@media screen and (min-width: 768px) {
  .gg-productLink {
    margin: 120px 0 0;
  }
}

/* 商品個別送料 */
.fs-c-productPostage__value {
  font-size: 1.4rem;
}
@media screen and (min-width: 768px) {
  .fs-c-productPostage__value {
    font-size: 1.6rem;
  }
}

/* 価格 */
.fs-c-productPrice__main__price {
  margin-right: 4px;
}

/* 通常価格ラベル */
.fs-c-productPrice--listed .fs-c-productPrice__main__label {
  font-size: 1.2rem;
}

/* 通常価格に打ち消し線 */
.fs-c-productPrice--listed .fs-c-productPrice__main__price {
  font-size: 1.6rem;
  text-decoration: line-through;
}

/* 販売価格ラベル */
.fs-c-productPrices--productDetail .fs-c-productPrice--selling .fs-c-productPrice__main__label {
  color: #515151;
  font-weight: bold;
}

/* 会員価格 */
.fs-c-productPrices--member {
  margin-top: 16px;
}

/* 会員価格 ラベル */
.fs-c-productPrice--member .fs-c-productPrice__main__label {
  font-weight: bold;
}

/* 会員価格 */
.fs-c-productPrice--stageUndetermined,
.fs-c-productPrice--stageUndetermined .fs-c-productPrice__main__price {
  color: #f7b622 !important;
  font-weight: bold;
}
.fs-c-productPrice--stage1,
.fs-c-productPrice--stage1 .fs-c-productPrice__main__price,
.fs-c-productPrice--stage2,
.fs-c-productPrice--stage2 .fs-c-productPrice__main__price {
  color: #f7b622 !important;
  font-weight: bold;
}

/* スライド サムネイル キャプション */
.fs-c-productCarouselMainImage__thumbnail__caption {
  color: #999;
  font-size: 1.2rem;
  text-align: center;
}

/* バリエーション名 */
.fs-c-variationCart__variationName__name {
  font-size: 1.2rem;
}
@media screen and (min-width: 480px) {
  .fs-c-variationCart__variationName__name {
    font-size: 1.4rem;
  }
}

/* バリエーション 在庫切れ */
.fs-c-variationCart__variationName__stock--outOfStock {
  color: #515151;
}


/* 数量セレクト ラベル */
.fs-c-quantity::before {
  display: inline-block;
  content: "数量";
  font-size: 1.2rem;
  font-weight: bold;
  padding: 4px 0;
}
.fs-body-cart .fs-c-quantity::before {
  display: none;
}

/* 商品個別送料 補足説明 */
.gg-productPostage__comment {
  font-size: 1.2rem;
  margin-top: 8px;
}
.gg-productPostage__comment a {
  text-decoration: underline;
}
.gg-productPostage__comment a:hover {
  text-decoration: none;
}

/* 予約時コメント表示 */
.gg-restock {
  background: #ffe297;
  color: #515151;
  font-size: 1.4rem;
  text-align: center;
  margin: 64px -8px -32px !important;
}
@media screen and (min-width: 768px) {
  .gg-restock {
    font-size: 1.5rem;
    margin: 64px 0 -32px !important;
  }
}

/* 予約商品のみ表示するコメント */
span.yoyaku-on {
	display: block;
	padding: 10px 0;
}
span.yoyaku-on::before {
	content: "【予約】こちらの商品は";
}
span.yoyaku-on::after {
	content: "順次発送予定です\A（配送日時の指定はお受けできません）";
	white-space: pre;
}

/* カートボタン */
.fs-c-variationCart .fs-c-button--primary {
  font-size: 1.2rem;
  min-width: 100%;
  padding: 0.8em;
}
@media screen and (min-width: 480px) {
  .fs-c-variationCart .fs-c-button--primary {
    font-size: 1.5rem;
    width: 100%;
  }
}

/* カート変更時(セレクトボックス＆ラジオパーツ) ボタン余白 */
.fs-c-button--addToCart--detail.fs-c-button--primary {
  font-size:  1.6rem;
  padding: 1em 1.6em 1em;
}

/* 商品個別送料ラベル */
.fs-c-productPostage__label {
  display: block;
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: 4px;
}
 
/* バリエーション補足説明 */
.gg-productVariationNotice {
  background: #f4f4f4;
  margin: 32px -8px 0 !important;
  padding: 8px 16px 8px;
}
@media screen and (min-width: 768px) {
  .gg-productVariationNotice {
    margin: 32px 0  0 !important;
    padding: 16px 24px 8px;
  }
}

.gg-productVariationNotice__heading {
  background: #fff;
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 16px;
  padding: 12px 16px;
}
@media screen and (min-width: 768px) {
  .gg-productVariationNotice__heading {
    font-size: 1.5rem;
    padding: 12px 24px;
  }
}

.gg-productVariationNotice__heading span {
  flex: 1;
}

.gg-productVariationNotice__heading span:hover {
  cursor: pointer;
}

/* バリエーション補足説明にアイコンを付ける */
.gg-productVariationNotice i {
  color: #515151;
  font-size: 2rem;
  margin-right: 8px;
  padding: 0;
}
@media screen and (min-width: 768px) {
  .gg-productVariationNotice i {
    font-size: 2.4rem;
  }
}

/* バリエーション補足説明 アコーディオン初期状態 */
.gg-productVariationNotice__item {
  display: none;
}

/* バリエーション補足説明 アコーディオンパネル */
.gg-productVariationNotice__item .fs-p-card {
  background: transparent;
  border: none;
  font-size: 1.3rem;
  padding: 8px 0 16px;
}
@media screen and (min-width: 768px) {
  .gg-productVariationNotice__item .fs-p-card {
    font-size: 1.4rem;
  }
}

.gg-productVariationNotice__item .fs-p-card a {
  text-decoration: underline;
}
.gg-productVariationNotice__item .fs-p-card a:hover {
  text-decoration: none;
}

/* アコーディオンに連動する矢印 */
.gg-productVariationNotice__heading::after {
  content: "";
  transition: all 0.3s;
  display: block;
  width: 8px;
  height: 8px;
  border-top: solid 1px #515151;
  border-right: solid 1px #515151;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  margin-right: 8px;
  margin-bottom: 4px;
}
.gg-productVariationNotice__heading.open::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  margin-bottom: -4px;
}

/* お問い合わせパーツ */
.fs-c-inquiryAboutProduct {
  background: #f4f4f4;
  margin: 0 -8px 0 !important;
  padding: 8px 16px 20px;
}
@media screen and (min-width: 768px) {
  .fs-c-inquiryAboutProduct {
    font-size: 1.5rem;
    margin: 0 !important;
    padding: 8px 24px 20px;
  }
}

/* お問い合わせパーツ ボタン */
.fs-c-button--inquiryAboutProduct {
  background: #fff;
  border-radius: 100px;
  display: flex;
  padding: 12px 16px;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .fs-c-button--inquiryAboutProduct {
    padding: 12px 24px;
  }
}

/* お問い合わせパーツ ボタン リンク装飾 */
.fs-c-button--inquiryAboutProduct:hover {
  text-decoration: none;
}

/* お問い合わせパーツ ボタンにアイコンを付ける */
.fs-c-button--inquiryAboutProduct::before {
  font-family: 'fs-icon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e920";
  color: #515151;
  font-size: 2rem;
  margin-right: 8px;
  padding: 0;
}
@media screen and (min-width: 768px) {
  .fs-body-product .fs-c-button--inquiryAboutProduct::before {
    font-size: 2.4rem;
  }
}

/* 別窓お問い合わせフォーム 送信ボタン */
.fs-c-modal .fs-c-button--standard {
  font-size: 1.3rem;
}

/* レビューパーツ */
.fs-c-productReview {
  text-align: right;
  padding: 0 8px;
}
@media screen and (min-width: 768px) {
  .fs-c-productReview {
    padding: 0;
  }
}

/* レビューパーツ ボタン */
.fs-c-productReview__allReviews,
.fs-c-productReview__addReview {
  display: inline-block;
  font-size: 1.3rem;
  margin: 0;
  padding: 0;
}
@media screen and (min-width: 768px) {
  .fs-c-productReview__allReviews,
  .fs-c-productReview__addReview {
    font-size: 1.5rem;
  }
}

/* レビューパーツ ボタン間の余白 */
.fs-c-productReview__allReviews + .fs-c-productReview__addReview {
  border-left: 1px solid #ccc;
}

/* レビューパーツ 直下に入るバナーとの間の余白 */
.fs-c-productReview__addReview + div {
  margin-top: 16px;
}

/* レビューパーツ ボタン 装飾 */
a.fs-c-button--viewAllReviews,
a.fs-c-button--addReview--detail {
  color: #515151;
  padding: 0 8px;
}
a.fs-c-button--viewAllReviews:hover,
a.fs-c-button--addReview--detail:hover {
  opacity: 0.7;
  text-decoration: underline;
}

/* 共通見出し */
.gg-productTitle {
  color: #515151;
  font-family: 'Montserrat', 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
  margin: 60px auto 0;
  padding-top: 32px;
}
@media screen and (min-width: 768px) {
  .gg-productTitle {
    font-size: 4.8rem;
    margin: 120px auto 0;
    padding-top: 64px;
  }
}

/* 共通見出し キャプション */
.gg-productTitle span {
  display: block;
  font-size: 1.4rem;
  margin: 8px auto 32px;
}
@media screen and (min-width: 768px) {
  .gg-productTitle span {
    font-size: 1.6rem;
    margin: 8px auto 48px;
  }
}

/* 共通見出し タブ内 最初のひとつだけ余白調整 */
.tab-main-inner h2:first-child {
  margin-top: 0;
  padding-top: 0;  
}

/* おすすめ商品スライド 商品名 */
.fs-c-productListCarousel .fs-c-productListItem__productName {
  font-size:  1.2rem;
  margin-top: 8px;
}
@media screen and (min-width: 768px) {
  .fs-c-productListCarousel .fs-c-productListItem__productName {
    font-size:  1.3rem;
  }
}

/* おすすめ商品スライド 商品名 文字色変更 */
.fs-c-productListCarousel .fs-c-productListItem__productName a,
.fs-c-productListCarousel .fs-c-productListItem__productName a:hover {
  color: #888;
}

/* おすすめ商品スライド 販売価格非表示 */
.fs-c-productListCarousel .fs-c-productPrice {
  display: none;
}

/* おすすめ商品スライド お気に入りボタン非表示 */
.fs-c-productListCarousel .fs-c-productListItem__control {
  display:  none;
}

/* おすすめ商品スライド 商品マーク非表示 */
.fs-c-productListCarousel .fs-c-productMarks {
  display:  none;
}

/* 商品リスト サムネイル hover時に透過 */
.fs-c-productListItem__image a:hover img {
  opacity: 0.7;
  transition: all 0.3s;
}

/* カート展開ボタン 表示切り替え */
.gg-variationAndActions.close {
  display: none;
}
@media screen and (min-width: 768px) {
  .gg-variationAndActions.close {
    display: block !important;
  }
}

/* カート展開ボタン */
.gg-openCartButton {
  cursor: pointer;
  font-size: 1.6rem;
  width: 100%;
  margin: 32px 0 0;
  padding: 1.3em 1.6em;
}
.gg-openCartButton:hover {
  cursor: pointer;
}

/* カート展開ボタン ボタン装飾 アイコン */
.gg-openCartButton .fs-p-scrollingCartButton__icon {
  font-size: 1.6rem;
}

/* カート位置へ移動するボタン */
.gg-gotoCartButton {
  background: #fff;
  box-shadow: 0px 4px 4px 4px #b2b2b2;
  width: 100%;
  padding: 8px;
  text-align: center;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 98;
}
@media screen and (min-width: 768px) {
  .gg-gotoCartButton {
    display: none;
  }
}

/* カート位置へ移動するボタン ボタン装飾 */
.gg-gotoCartButton .fs-c-button--primary {
  background: #515151;
  border:  1px solid #515151;
  box-shadow: none;
  font-size: 1.5rem;
}
/* カート位置へ移動するボタン ボタン装飾 アイコン */
.gg-gotoCartButton .fs-p-scrollingCartButton__icon {
  font-size: 1.5rem;
}


/* ========================================
独自スタイル - 商品詳細ページ タブ表示
=========================================== */

/* タブ設置枠 */
.gg-tabArea {
  margin-bottom: 0 !important;
}
.gg-tabContainer {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
}

/* 上部・下部タブ共通 */
.tab {
  display: block;
  cursor: pointer;
}
.topTabContainer,
.bottomTabContainer {
  margin-top: 0;
  margin-bottom: 0 !important;
  padding: 0;
  border-top: 1px solid #515151;
  border-bottom: 1px solid #515151;
}

/* 上部タブのみ余白追加 */
.topTabContainer {
  margin-top: 60px;
}
@media screen and (min-width: 960px) {
  .topTabContainer {
    margin-top: 120px;
  }
}

/* 上部・下部タブ サイズ */
.tab {
  position: relative;
  width: calc( 100% / 3);
}
.tab:not(:first-child) {
  border-left: 1px solid #515151;
}
@media screen and (min-width: 960px) {
  .tab {
    width: 22%;
  }
  .tab:not(:first-child) {
    border-left: none;
  }
}

/* 上部・下部タブ 装飾 */
.tab .tab-inner {
  color: #515151;
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1;
  margin: 0;
  padding: 16px;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media screen and (min-width: 768px) {
  .tab .tab-inner {
    color: #aaa;
    font-size: 2.4rem;
    height: 80px;
    line-height: 74px;
    margin: 0 24px;
    padding: 0;
  }
  .topTabContainer .tab .tab-inner {
    border-bottom: 6px solid #fff;
  }
  .bottomTabContainer .tab .tab-inner {
    border-top: 6px solid #fff;
  }
}

/* 上部タブ 表示中のタブ */
.topTabContainer .tab.select .tab-inner {
  background: #515151;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .topTabContainer .tab.select .tab-inner {
    background: #fff;
    border-bottom: 6px solid #515151;
    color: #515151;
    font-weight: bold;
  }
}

/* 上部タブ 表示中のタブに矢印追加 */
.topTabContainer .tab.select::before {
  content: "";
  position: absolute;
  bottom: -18px;
  left: calc(50% - 9px);
  border: 9px solid transparent;
  border-top: 9px solid #515151;
}

/* 下部タブ 表示中のタブ */
.bottomTabContainer .tab.select .tab-inner {
  background: #515151;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .bottomTabContainer .tab.select .tab-inner {
    background: #fff;
    border-top: 6px solid #515151;
    color: #515151;
    font-weight: bold;
  }
}

/* 下部タブ 表示中のタブに矢印追加 */
.bottomTabContainer .tab.select::before {
  content: "";
  position: absolute;
  top: -18px;
  left: calc(50% - 9px);
  border: 9px solid transparent;
  border-bottom: 9px solid #515151;
}

/* タブ切り替えで表示するコンテンツ */
.gg-tabContents {
  margin: 0 !important;
}

.tab-main {
  display: none;
  min-height: 300px;
}

/* スマホで全体幅100%表示にしたときだけ左右に余白追加 */
.tab-main-inner {
  padding: 0 8px;
}
@media screen and (min-width: 960px) {
.tab-main-inner {
    padding: 0;
  }
}

/* 表示中のコンテンツ */
.tab-main.is-show {
  display: block;
  padding: 48px 0;
}
@media screen and (min-width: 768px) {
  .tab-main.is-show {
    padding: 96px 0;
  }
}


/* ========================================
独自スタイル - 商品詳細ページ 商品詳細
=========================================== */

/* 見出しにマーカー */
.c-marker {
  background: -webkit-linear-gradient(left, rgb(255,250,153) 50%, transparent 50%);
  background: -moz-linear-gradient(left, rgb(255,250,153) 50%, transparent 50%);
  background: linear-gradient(left, rgb(255,250,153) 50%, transparent 50%);
  background-repeat: no-repeat;
  background-size: 200% .8em; 
  background-position: 100% .5em;
  transition: 1.5s;
}
.c-marker.is-active{
  background-position: 0% .5em;
}

/* タブ上 共通説明 */
.gg-overProductDetail {
  margin-bottom: 48px;
}
@media screen and (min-width: 768px) {
  .gg-overProductDetail {
    margin-bottom: 96px;
  }
}

/* タブ内 特長 */
.gg-productFeature {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 8px;
}
@media screen and (min-width: 768px) {
  .gg-productFeature {
    margin: 0;
  }
}

/* タブ内 特長 丸で囲う見出し */
.gg-productFeature h3 {
  background: #a3d3d3;
  border-radius: 50%;
  color: #fff;
  display: inline-block;
  font-size: 2rem;
  font-family: 'Montserrat', 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
  font-weight: bold;
  width: 100px;
  height: 100px;
  line-height: 100px;
  margin:  80px auto 32px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .gg-productFeature h3 {
    font-size: 4rem;
    width: 160px;
    height: 160px;
    line-height: 160px;
    margin:  160px auto 80px;
  }
}

/* タブ内 特長 チェックマーク付きリスト */
.gg-productFeature ul {
  margin: 0 auto 60px;
  padding: 0;
  list-style-type: none;
  max-width: 600px;
}
@media screen and (min-width: 768px) {
  .gg-productFeature ul {
    margin: 0 auto 160px;
  }
}

/* タブ内 特長 チェックマーク付きリスト */
.gg-productFeature ul li {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 0 40px 32px;
}
@media screen and (min-width: 768px) {
  .gg-productFeature ul li {
    font-size: 3rem;
    margin: 0 0 48px 48px;
  }
}

/* タブ内 特長 リスト先頭にチェックマークを付ける */
.gg-productFeature li::after {
  content: "";
  display: block;
  position: absolute;
  top: .5em;
  left: -24px;
  width: 10px;
  height: 5px;
  border-left: 3px solid #a3d3d3;
  border-bottom: 3px solid #a3d3d3;
  transform: rotate(-45deg);
}
@media screen and (min-width: 768px) {
  .gg-productFeature li::after {
    left: -40px;
    width: 18px;
    height: 9px;
    border-left: 5px solid #a3d3d3;
    border-bottom: 5px solid #a3d3d3;
  }
}

/* タブ内 商品詳細画像 */
.gg-image {
  font-size: 1.4rem;
  margin: 0 auto;
  max-width: 860px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .gg-image {
    font-size: 1.6rem;
  }
}

/* タブ内 商品詳細画像 ブロック間の余白 */
.gg-image + .gg-image {
  margin-top: 48px;
}
@media screen and (min-width: 768px) {
  .gg-image + .gg-image {
    margin-top: 96px;
  }
}

/* タブ内 商品詳細画像 テーブル */
.gg-image table {
  width: 100% !important;
}
@media screen and (min-width: 768px) {
  .gg-image table {
    width: 720px !important;
    margin: 0 auto;
  }
}

/* タブ内 商品詳細画像 画像下の余白を削除 */
.gg-image img {
  vertical-align: bottom;
}

/* タブ内 商品詳細画像 幅いっぱいに表示 画像間の余白 */
.gg-image.full img + img {
  margin-top: 48px;
}
@media screen and (min-width: 768px) {
  .gg-image.full img + img {
    margin-top: 96px;
  }
}

/* タブ内 商品詳細画像 カラム表示にする */
.gg-image.col {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .gg-image.col {
    flex-direction: row;
  }
}

/* タブ内 商品詳細画像 見出し */
.gg-image__heading {
  display: inline-block;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 1px;
  margin: 64px auto 32px;
  padding: 0 6px;
}
@media screen and (min-width: 768px) {
  .gg-image__heading {
    font-size: 3.4rem;
    margin: 128px auto 64px;
  }
}
@media screen and (min-width: 1024px) {
  .gg-image__heading {
    font-size: 4.4rem;
  }
}

/* タブ内 商品詳細画像 キャプション余白 */
.gg-image__caption {
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .gg-image__caption {
    margin-top: 24px;
  }
}

/* タブ内 商品詳細画像 キャプション 中央寄せ */
.gg-image p {
  font-size:  1.4rem;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .gg-image p {
    font-size: 1.8rem;
    margin: 2rem 0;
  }
}

/* タブ内 商品詳細画像 キャプション 長文は左寄せ */
.gg-image .gg-image__item p {
  text-align: left;
  margin: 2rem 0;
}
@media screen and (min-width: 768px) {
  .gg-image .gg-image__item p {
    font-size: 1.8rem;
    margin: 4rem 0;
  }
}

/* タブ内 商品詳細画像 キャプション強調部分 */
.gg-image__caption div {
  background: #f4f4f4;
  border-radius: 4px;
  color: #666;
  line-height: 1.6;
  margin: 2rem 8px;
  padding: 16px 8px;
}
@media screen and (min-width: 768px) {
  .gg-image__caption div {
    border-radius: 6px;
    margin: 3rem 8px;
    padding: 16px;
  }
}

/* タブ内 商品詳細画像 注意事項 */
.gg-image__caption div.caution {
  background: #fffbde;
  color: #b09d75;
}

/* タブ内 商品詳細画像 キャプション強調部分 見出し */
.gg-image__caption div h4 {
  color: #86b6b6;
  font-size: 1.4rem;
  font-weight: bold;
  margin: 0 0 8px;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .gg-image__caption div h4 {
    font-size: 1.8rem;
  }
}

/* タブ内 商品詳細画像 キャプション強調部分 見出し先頭マーク */
.gg-image__caption h4 span {
  background: #86b6b6;
  border-radius: 100px;
  color: #fff;
  font-weight: normal;
  font-size: 1.2rem;
  padding: 2px 8px;
  margin-right: 4px;
}
@media screen and (min-width: 768px) {
  .gg-image__caption h4 span {
    font-size: 1.4rem;
    margin-right: 6px;
  }
}

/* タブ内 商品詳細画像 注意事項 見出し */
.gg-image__caption div.caution h4 {
  color: #b09d75;
  text-align: center;
}

/* タブ内 商品詳細画像 注意事項 見出し先頭にびっくりマーク */
.gg-image__caption div.caution h4::before {
  background: #b09d75;
  border-radius: 50%;
  color: #fff;
  content: "!";
  display: inline-block;
  width: 16px;
  height: 16px;
  line-height: 16px;
  margin-right: 4px;
}
@media screen and (min-width: 768px) {
  .gg-image__caption div.caution h4::before {
    width: 22px;
    height: 22px;
    line-height: 22px;
    margin-right: 6px;
  }
}

/* タブ内 商品詳細画像 キャプション強調部分 段落 */
.gg-image .gg-image__item .gg-image__caption div p {
  margin: 0;
}

/* タブ内 リンクボタン */
.gg-image a.fs-c-button--secondary {
  border: 1px solid #515151;
  border-radius: 100px;
  color: #515151;
  font-size: 1.4rem;
  margin: 0 auto;
  padding: 12px;
}
@media screen and (min-width: 768px) {
  .gg-image a.fs-c-button--secondary {
    font-size: 1.8rem;
    padding: 24px 12px;
    min-width: 480px;
  }
}

/* タブ内 商品詳細画像 動画埋め込み */
.gg-image.movie {
  padding: 0 8px;
}
@media screen and (min-width: 960px) {
.gg-image.movie {
    padding: 0;
  }
}

/* 動画埋め込み キャプション */
.gg-image.movie p {
  margin-top: 16px;
}
@media screen and (min-width: 768px) {
  .gg-image.movie p {
    margin-top: 24px;
  }
}

/* 拡大表示リンク */
.gg-image .zoom {
  font-weight: bold;
}

/* 補足 注意事項 */
.gg-note {
  color: #888;
  font-size: 1.2rem;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 768px) {
  .gg-note {
    font-size: 1.4rem;
  }
}

/* 補足 注意事項 連続する場合の余白を調整 */
.gg-note + .gg-note {
  margin-top: 0;
}

/* おすすめ商品 余白 */
.fs-c-featuredProduct {
  margin-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .fs-c-featuredProduct {
    margin-bottom: 120px;
  }
}


/* ========================================
独自スタイル - 商品詳細ページ スライド
=========================================== */

/* 商品詳細スライド 枠 */
.carousel-container {
  background: #f4f4f4;
  padding: 32px 0 16px;
}
@media screen and (min-width: 768px) {
  .carousel-container {
    padding: 60px 0 32px;
  }
}
@media screen and (min-width: 1024px) {
  .carousel-container {
    margin: 0 auto;
    width: calc( 100% - 128px );
  }
}

/* 商品詳細スライド 矢印サイズ */
@media screen and (min-width: 1024px) {
  .carousel-productDetail.fs-c-slick .slick-prev,
  .carousel-productDetail.fs-c-slick .slick-next {
    border-radius: 20px;
    height: 40px;
    width: 40px;
  }
}

/* 商品詳細スライド 矢印 */
@media screen and (min-width: 1024px) {
  .carousel-productDetail.fs-c-slick .slick-prev:before,
  .carousel-productDetail.fs-c-slick .slick-next:before {
    color: #fff;
    font-size: 40px;
  }
}

/* 商品詳細スライド 矢印を外に出す */
.carousel-productDetail.fs-c-slick .slick-prev {
  left: 0;
}
.carousel-productDetail.fs-c-slick .slick-next {
  right: 0;
}
@media screen and (min-width: 1024px) {
  .carousel-productDetail.fs-c-slick .slick-prev {
    left: -64px;
  }
  .carousel-productDetail.fs-c-slick .slick-next {
    right: -64px;
  }
}

/* 商品詳細スライド パネル */
.carousel-productDetail .slick-slide {
  margin: 0 24px;
}
@media screen and (min-width: 1280px) {
  .carousel-productDetail .slick-slide {
    margin: 0 64px;
  }
}

/* 商品詳細スライド 画像サイズ */
.carousel-productDetail.fs-pt-carousel img {
  max-width: calc( 100vw - 40px );
}
@media screen and (min-width: 960px) {
  .carousel-productDetail.fs-pt-carousel img {
    max-width: 100vw;
  }
}

/* 商品詳細スライド キャプションを画像幅に合わせる */
.carousel-productDetail figure {
  display: table !important;
}

/* 商品詳細スライド キャプション */
.carousel-productDetail .fs-pt-carousel__slide__caption {
  background: transparent;
  color: #515151;
  font-size: 1.4rem;
  line-height:  1.8;
  position: static;
  display: table-caption;
  caption-side: bottom;
  margin: 16px 4px;
  padding: 0;
}
@media screen and (min-width: 768px) {
  .carousel-productDetail .fs-pt-carousel__slide__caption {
    font-size: 1.6rem;
    margin: 32px 8px 40px;
  }
}


/* ========================================
独自スタイル - 商品詳細ページ サイズ・仕様など
=========================================== */

/* スペック表 */
.gg-specTable {
  margin: 0 auto 40px;
  max-width: 860px;
}
@media screen and (min-width: 768px) {
  .gg-specTable {
    margin: 0 auto 80px;
  }
}

/* スペック表 上部ブロックとの余白 */
.gg-image + .gg-specTable {
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  .gg-image + .gg-specTable {
    margin-top: 80px;
  }
}

/* スペック表 テーブル */
.gg-specTable table {
  width: 100%;
  border-bottom: 1px solid #ccc;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 1.3rem;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .gg-specTable table {
    border: 1px solid #ccc;
    font-size: 1.6rem;
  }
}
.gg-specTable table tr {
  border-top: 1px solid #ccc;
}
.gg-specTable table th {
  font-weight: bold;
  padding: 4px 8px;
  text-align: center;
  vertical-align: middle;
  width: 20%;
}
@media screen and (min-width: 768px) {
  .gg-specTable table th {
    border-right: 1px solid #ccc;
    padding: 16px;
    width: 25%;
  }
}
.gg-specTable table td {
  padding: 4px 8px;
  text-align: left;
  vertical-align: top;
}
@media screen and (min-width: 768px) {
  .gg-specTable table td {
    padding: 16px;
  }
}

/* カラーバリエーション 注釈 */
.gg-specColorNotice {
  margin: 0 auto;
  max-width: 860px;
}
@media screen and (min-width: 768px) {
  .gg-specColorNotice {
    margin: 16px auto 0;
  }
}

/* 組み立て方法 注釈 */
.gg-specHowtoNotice {
  margin: 0 auto;
  max-width: 860px;
}
@media screen and (min-width: 768px) {
  .gg-specHowtoNotice {
    margin: 16px auto 0;
  }
}


/* ========================================
独自スタイル - 商品詳細ページ 比較表
=========================================== */

/* 比較表 見出し */
h2#conpare {
  font-size: 2rem;
  margin-bottom: 24px;
}
@media screen and (min-width: 768px) {
  h2#conpare {
    font-size: 2.6rem;
  }
}

/* 比較表 */
.gg-compareTable.fs-c-specTable {
  font-size: 1.4rem;
  margin: 0 8px;
}
@media screen and (min-width: 768px) {
  .gg-compareTable.fs-c-specTable {
    font-size: 1.6rem;
    margin: 0;
  }
}

/* テーブル枠線 */
.gg-compareTable .fs-c-specTable,
.gg-compareTable .fs-c-specTable__headerCell,
.gg-compareTable .fs-c-specTable__dataCell {
  border: 1px solid #ddd;
}

/* th */
.gg-compareTable .fs-c-specTable__headerCell {
  font-size: 1.2rem;
  padding: 8px;
}
@media screen and (min-width: 768px) {
  .gg-compareTable .fs-c-specTable__headerCell {
    font-size: 1.4rem;
  }
}

/* th改行しない */
@media screen and (min-width: 768px) {
  .gg-compareTable .fixedCell br {
    display: none;
  }
}


/* th商品名 */
.gg-compareTable .fs-c-specTable__headerCell span {
  display: block;
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .gg-compareTable .fs-c-specTable__headerCell span {
    font-size: 1.6rem;
  }
}

/* th画像サイズ */
.gg-compareTable .fs-c-specTable__headerCell img {
  max-width: 120px;
  height: auto;
}
@media screen and (min-width: 768px) {
  .gg-compareTable .fs-c-specTable__headerCell img {
    max-width: 160px;
    height: auto;
  }
}

/* th ボタン */
.gg-compareTable .fs-c-button--standard {
  font-size: 1.2rem;
  margin: 8px auto;
}
@media screen and (min-width: 768px) {
  .gg-compareTable .fs-c-button--standard {
    font-size: 1.3rem;
  }
}

/* セル固定 */
.fixedCell {
  position: sticky;
  left: 0;
}
.fixedCell:before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 100%;
  height: 100%;
  border: 1px solid #ddd;
}


/* ========================================
独自スタイル - 商品詳細ページ よくあるご質問
=========================================== */

/* よくあるご質問 枠 */
.gg-productFaqArea {
  margin-bottom: 24px;
}
@media screen and (min-width: 768px) {
  .gg-productFaqArea {
    margin-bottom: 48px;
  }
}

/* よくあるご質問 */
.gg-productFaq {
  background: #f2f2f2;
  border-radius: 6px;
  margin: 16px 8px 0;
}
@media screen and (min-width: 768px) {
  .gg-productFaq {
    border-radius: 8px;
    margin: 32px 8px 0;
  }
}
@media screen and (min-width: 960px) {
  .gg-productFaq {
    margin: 32px 0 0;
  }
}

/* よくあるご質問 質問・回答 段落 */
.gg-productFaq > div p {
  display: block;
  position: relative;
  margin: 0;
}

/* よくあるご質問 質問・回答の先頭に余白 */
.gg-productFaq > div p:first-child {
    padding-left: 28px;
}
@media screen and (min-width: 768px) {
  .gg-productFaq > div p:first-child {
      padding-left: 48px;
  }
}

/* よくあるご質問 質問の先頭にQアイコン */
.gg-productFaq > div p:first-child::before {
  content: "Q";
  display: block;
  background: #515151;
  border-radius: 10px;
  color: #fff;
  font-family: Arial, sans-serif;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 20px;
  margin-top: 2px;  
  margin-right: 8px;
  text-align: center;
  width: 20px;
  height: 20px;
  position: absolute;
  left: 0;
}
@media screen and (min-width: 768px) {
  .gg-productFaq > div p:first-child::before {
    border-radius: 16px;
    font-size: 1.6rem;
    line-height: 32px;
    width: 32px;
    height: 32px;
  }
}

/* よくあるご質問 回答の先頭にAアイコン */
.gg-productFaq .gg-productFaq__item p:first-child::before {
  content: "A";
  background: #a3d3d3;
}

/* よくあるご質問 質問 */
.gg-productFaq__heading {
  position: relative;
  transition: 0.5s;
  padding: 16px 32px 16px 12px;
}
@media screen and (min-width: 768px) {
  .gg-productFaq__heading {
    padding: 24px 64px 24px 24px;
  }
}
/* よくあるご質問 質問 Qアイコンと行間を揃える */
.gg-productFaq__heading p {
  line-height: 20px;
}
@media screen and (min-width: 768px) {
  .gg-productFaq__heading p {
    font-size: 1.8rem;
    line-height: 32px;
  }
}

/* よくあるご質問 回答 */
.gg-productFaq__item {
  display: none; /* アコーディオン初期状態 */
  border-top: 1px solid #fff;
  padding: 18px 12px;
}
@media screen and (min-width: 768px) {
  .gg-productFaq__item {
    border-top: 2px solid #fff;
    padding: 40px 64px 40px 24px;
  }
}

/* よくあるご質問 回答 */
.gg-productFaq__item p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .gg-productFaq__item p {
    font-size: 1.6rem;
  }
}

/* よくあるご質問 回答 行間調整 */
.gg-productFaq__item p + p {
  margin-top: 1em;
}

/* よくあるご質問 回答内のリンク */
.gg-productFaq__item p a {
  font-weight: bold;
  text-decoration: underline;
  margin: 0 2px;
}
.gg-productFaq__item p a:hover {
  text-decoration: none;
}

/* アコーディオンに連動する矢印 */
.gg-productFaq__heading:hover {
  cursor: pointer;
}
.gg-productFaq__heading::before,
.gg-productFaq__heading::after {
  content: "";
  display: block;
  width: 12px;
  height: 2px;
  background: #999;
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .gg-productFaq__heading::before,
  .gg-productFaq__heading::after {
    width: 16px;
    right: 32px;  
   }
}
.gg-productFaq__heading::after {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}
.gg-productFaq__heading.open::after {
  transform: rotate(0);
  transition: 0.5s;
}

/* よくあるご質問 画像入りブロック上の見出し */
.gg-productFaq__item h4 {
  background: #ccc;
  color: #fff;
  font-size: 1.3rem;
  font-weight: normal;
  margin: 0;
  padding: 6px 0;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .gg-productFaq__item h4 {
    font-size: 1.5rem;
    padding: 8px 0;
  }
}

/* よくあるご質問 段落と見出し間の余白 */
.gg-productFaq__item p + h4 {
  margin-top: 8px;
}
@media screen and (min-width: 768px) {
  .gg-productFaq__item p + h4 {
    margin-top: 32px;
  }
}

/* よくあるご質問 画像入りブロック */
.gg-faqDetail {
  border: 1px solid #ccc;
  background: #fff;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  font-size: 1.3rem;
  line-height: 1.8;
  margin: 0 0 16px;
  padding: 8px;
}
@media screen and (min-width: 768px) {
  .gg-faqDetail {
    flex-direction: row;
    font-size: 1.5rem;
    margin: 0 0 32px;
  }
}

/* よくあるご質問 画像入りブロック 左右ブロック */
.gg-faqDetail > div {
  text-align: center;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .gg-faqDetail > div {
    padding: 16px;
  }
}

@media screen and (min-width: 768px) {
  .gg-faqDetail > div.gg-faqDetail__image {
    width: 35%;
  }
}

@media screen and (min-width: 768px) {
  .gg-faqDetail > div.gg-faqDetail__text {
    width: 65%;
  }
}

/* よくあるご質問 画像入りブロック 画像 */
.gg-faqDetail__image img {
  width: 60%;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .gg-faqDetail__image img {
    width: 100%;
  }
}

/* よくあるご質問 画像入りブロック 拡大表示リンク */
.gg-faqDetail__image .zoom {
  font-size: 1.3rem;
  font-weight: bold;
}

/* よくあるご質問 画像入りブロック 定義リスト */
.gg-faqDetail__text dl {
  margin: 0;
  text-align: left;
}
.gg-faqDetail__text dt {
  font-weight: bold;
}
.gg-faqDetail__text dt::before {
  content: "◎";
}
.gg-faqDetail__text dd {
  margin-left: 1em;
}
.gg-faqDetail__text dt + dd {
  margin-bottom: 8px;
}
@media screen and (min-width: 768px) {
  .gg-faqDetail__text dt + dd {
    margin-bottom: 16px;
  }
}

/* よくあるご質問 画像入りブロック 定義リスト内リンク */
.gg-faqDetail__text dl a {
  text-decoration: underline;
}
.gg-faqDetail__text dl a:hover {
  text-decoration: none;
}


/* ========================================
独自スタイル - 商品詳細ページ バナー枠
=========================================== */

/* スマホ表示のみ左右に余白追加 */
.product-banner {
  margin: 0 4px;
}
@media screen and (min-width: 768px) {
  .product-banner {
    margin: 0;
  }
}

/* バナー枠が連続する場合の余白調整 */
.product-banner + .product-banner {
  margin-top: -8px;
}


/* ========================================
独自スタイル - フローティングバナー
=========================================== */

/* フローティングバナー 位置 */
.floating-banner {
  display: none;/*初期表示は非表示*/
  position: fixed;
  left: 4px;
  bottom: 16px;
  z-index: 99;
}
@media screen and (min-width: 768px) {
  .floating-banner {
    left: 16px;
    bottom: 24px;
  }
}
/* 商品詳細ページのみ位置をずらす */
.fs-body-product .floating-banner {
  bottom: 60px;
}
@media screen and (min-width: 768px) {
  .fs-body-product .floating-banner {
    bottom: 16px;
  }
}

/* フローティングバナー 閉じるボタン */
.floating-banner .close {
  top: -12px;
  right: -12px;
  position: absolute;
}

/* フローティングバナー 閉じるボタン 余白 */
.floating-banner .close i {
  line-height: 22px;
}

/* フローティングバナー 閉じるボタン リンク設定 */
.floating-banner .close a {
  border: 1px solid #666;
  background: #fff;
  border-radius: 12px;
  color: #666;
  display: block;
  line-height: 1;
  width: 24px;
  height: 24px;
  text-align: center;
  text-decoration: none;
  transition: .3s;
}
.floating-banner .close a:hover{
  color: #666;
}

/* フローティングバナー 余白 */
.floating-banner div {
  padding: 2px;
  line-height: 1;
}
@media screen and (min-width: 768px) {
	.floating-banner div {
	  padding: 4px 2px;
	}
}

/* フローティングバナー 画像サイズ */
.floating-banner img {
  width: 60px;
  height: auto;
}
@media screen and (min-width: 768px) {
  .floating-banner img {
    width: 120px;
    height: auto;
  }
}


/* ========================================
独自スタイル - 商品グループ一覧ページ
=========================================== */

/* 商品グループ サブグループ件数非表示 */
.fs-c-subgroup .fs-c-listControl {
  display: none;
}

/* 商品グループ サムネイル hover時に拡大 */
.fs-c-productList__list .fs-c-productListItem__image {
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.fs-c-productList__list .fs-c-productListItem__image a img {
  display: block;
  transition-duration: .6s;
}
.fs-c-productList__list .fs-c-productListItem__image a img:hover {
  transform: scale(1.1);
  transition-duration: .6s;
  opacity: 1;
}

/* 商品グループ 在庫切れ表示 */
.fs-c-productList__list .fs-c-productListItem__lowInStock,
.fs-c-productList__list .fs-c-productListItem__outOfStock,
.fs-c-productList__list .fs-c-productListItem__numberOfStock {
  border: 1px solid #f33;
  color: #f33;
}

/* 商品グループ 各商品ページへのリンク */
.fs-c-productList__list .fs-c-productList__list__item {
  border-bottom: none;
  display: flex;
  padding: 24px 8px;
}
@media screen and (min-width: 768px) {
  .fs-c-productList__list .fs-c-productList__list__item {
    padding: 40px 16px;
  }
}

/* 商品グループ 各商品ページへのリンク カートボタンの位置を下揃えにする */
.fs-c-productList__list .fs-c-productListItem form {
  display: flex;
  flex-direction: column;
}

/* 商品グループ 独自コメント1の画像をサムネイルに使用 */
.gg-productListItem__imageContainer {
  margin-bottom: 16px;
}

/* 商品グループ 商品マーク */
.fs-c-productList__list .fs-c-productMark__mark {
  font-size: 1.1rem;
}

/* 商品グループ 価格 */
.fs-c-productList__list .fs-c-productListItem__prices {
  margin-bottom: 12px;
}
@media screen and (min-width: 768px) {
  .fs-c-productList__list .fs-c-productListItem__prices {
    margin-bottom: 16px;
  }
}

/* 商品グループ 通常価格 */
.fs-c-productList__list .fs-c-productPrice--listed .fs-c-productPrice__main__price {
  font-size: 1.2rem;
  text-decoration: line-through;
  margin-right: 2px;
}
@media screen and (min-width: 768px) {
  .fs-c-productList__list .fs-c-productPrice--listed .fs-c-productPrice__main__price {
    font-size: 1.4rem;
  }
}

/* 商品グループ 販売価格ラベル */
.fs-c-productList__list .fs-c-productPrice--selling .fs-c-productPrice__main__label {
  font-size: 1.2rem;
}

/* 商品グループ 会員価格ラベル */
.fs-c-productList__list .fs-c-productPrice--member .fs-c-productPrice__main__label {
  font-size: 1.2rem;
}

/* 商品グループ 販売価格 */
.fs-c-productList__list .fs-c-productPrice--selling .fs-c-productPrice__main__price {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.3;
  margin-right: 2px;
}
@media screen and (min-width: 768px) {
  .fs-c-productList__list .fs-c-productPrice--selling .fs-c-productPrice__main__price {
    font-size: 2rem;
  }
}

/* 商品グループ 会員価格 */
.fs-c-productList__list .fs-c-productPrice--member .fs-c-productPrice__main__price {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.3;
  margin-right: 2px;
}
@media screen and (min-width: 768px) {
  .fs-c-productList__list .fs-c-productPrice--member .fs-c-productPrice__main__price {
    font-size: 2rem;
  }
}

/* 商品グループ 税込表示 */
.fs-c-productList__list .fs-c-productPrice__addon {
  font-size: 1rem;
}

/* 商品グループ ボタンパーツ余白 */
.fs-c-productList__list .fs-c-productListItem__control {
  border: 1px solid #ddd;
  margin-top: auto;
  padding: 0;
}

/* 商品グループ カートボタン */
.fs-c-productList__list .fs-c-productListItem__control .fs-c-button--plain {
  font-size: 1.1rem;
  flex: 1;
  padding: 4px;
  border: none;
  border-right: 1px solid #ddd;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .fs-c-productList__list .fs-c-productListItem__control .fs-c-button--plain {
    font-size: 1.4rem;
  }
}

/* 商品グループ カートボタン リンク設定 */
.fs-c-productList__list .fs-c-productListItem__control .fs-c-button--plain:hover {
  text-decoration: none;
}

/* 商品グループ お気に入りボタン 登録 */
.fs-c-productList__list .fs-c-button--particular.fs-c-button--addToWishList--icon {
  padding: 4px 8px;
}
.fs-c-productList__list .fs-c-button--particular.fs-c-button--addToWishList--icon::before {
  font-size: 1.4rem;
  color: #515151;
}
@media screen and (min-width: 768px) {
  .fs-c-productList__list .fs-c-button--particular.fs-c-button--addToWishList--icon::before {
    font-size: 1.6rem;
  }
}

/* 商品グループ お気に入りボタン 解除 */
.fs-c-productList__list .fs-c-button--particular.fs-c-button--removeFromWishList--icon {
  padding: 4px 8px;
}
.fs-c-productList__list .fs-c-button--particular.fs-c-button--removeFromWishList--icon::before {
  font-size: 1.4rem;
}
@media screen and (min-width: 768px) {
  .fs-c-productList__list .fs-c-button--particular.fs-c-button--removeFromWishList--icon::before {
    font-size: 1.6rem;
  }
}


/* ========================================
独自スタイル - ページ
=========================================== */

/* フリーページ アドレス */
.fs-c-address {
  font-style: normal;
}

/* ページ 段落 */
.fs-c-documentArticle__content p,
.fs-c-documentColumn__content p,
.fs-p-announcement p {
  line-height: 1.8;
  margin: 1rem 0 2rem;
}

/* ページ 段落 強調部分 */
.fs-c-documentArticle__content span.caution,
.fs-c-documentColumn__content span.caution {
  color: #fc6f65;
}

/* ページ リンク */
.fs-c-documentArticle__content p a,
.fs-c-documentColumn__content p a,
.fs-c-documentColumn__content li a,
.fs-p-announcement p a {
  color: #3ab7b7;
  text-decoration: underline;
  padding: 0 2px;
}
.fs-c-documentArticle__content p a:hover,
.fs-c-documentColumn__content p a:hover,
.fs-c-documentColumn__content li a:hover,
.fs-p-announcement p a:hover {
  color: #3ab7b7;
  cursor: pointer;
  opacity: 0.7;
  text-decoration: none;
}

/* リスト 余白 */
.fs-c-documentColumn__content .fs-c-list {
  margin: 2rem 0;
}

/* フォームラベル リンク色 */
.fs-c-checkbox__labelText a {
  color: #1f5da0;
  text-decoration: underline;
  padding: 0 2px;
}
.fs-c-checkbox__labelText a:hover {
  color: #1f5da0;
  opacity: 0.7;
  text-decoration: none;
}

/* 送料について 余白修正 */
#fs_anchor_aboutPostage {
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  #fs_anchor_aboutPostage {
    margin-top: 0;
  }
}

#fs_anchor_aboutPostage h2 + section.fs-c-documentColumn {
  margin-top: -48px;
}

/* 送料について 見出し削除 */
#fs_anchor_aboutPostage .fs-c-documentArticle__heading {
  display: none;
}
#fs_anchor_aboutPostage .fs-c-documentArticle__content > .fs-c-documentColumn__heading {
  display: none;  
}

/* レビューキャンペーン */
.review-campaign {
  width: 100%;
  margin: 0 0 32px;
  padding: 8px;
  background: #7dd1cd;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .review-campaign {
    flex-direction: row;
    padding: 16px;
  }
}
.review-campaign > div {
  padding: 8px;
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .review-campaign > div:first-child {
    flex-basis: 40%;
  }
}
.review-campaign-text {
  background: #fff;
  border-radius: 10px;
  padding: 16px;
}
.review-campaign-text h3 {
  font-weight: bold;
}


/* ========================================
独自スタイル - レビュー
=========================================== */

/* レビュー対象商品 販売価格 */
.fs-c-productReviewed .fs-c-productPrice--selling .fs-c-productPrice__main__price {
  font-size: 1.8rem;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .fs-c-productReviewed .fs-c-productPrice--selling .fs-c-productPrice__main__price {
    font-size: 2rem;
  }
}

/* レビュー対象商品 会員価格 */
.fs-c-productReviewed .fs-c-productPrice--member .fs-c-productPrice__main__price {
  font-size: 1.8rem;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .fs-c-productReviewed .fs-c-productPrice--member .fs-c-productPrice__main__price {
    font-size: 2rem;
  }
}

/* レビュー対象商品 商品名 */
.fs-c-reviewProduct__info a {
  color: #999;
  font-size: 1.3rem;
}
.fs-c-reviewProduct__info a:hover {
  color: #999;
}

/* レビュー一覧 前のページに戻るボタン */
.fs-body-reviews-product .fs-c-button--standard {
  font-size: 1.3rem;
}

/* レビューログインページ 会員登録誘導 */
.fs-body-review-login .fs-c-newUsers {
  margin-top: 48px;
}
@media screen and (min-width: 768px) {
  .fs-body-review-login .fs-c-newUsers {
    margin-top: 0;
  }
}

/* レビューログインページ 会員登録誘導メッセージ */
.fs-c-newUsers__message {
  margin-bottom: 24px;
}

/* ========================================
独自スタイル - カート
=========================================== */

/* 次の画面に移るボタン */
.fs-c-purchaseHere__message {
  margin-bottom: 32px;
}
@media screen and (min-width: 768px) {
  .fs-c-purchaseHere__message {
    margin-bottom: 0;
  }
}

/* 買い物を続けるボタン */
.fs-c-continueShopping {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .fs-c-continueShopping {
    text-align: left;
  }
}
.fs-c-continueShopping .fs-c-button--standard {
  font-size: 1.4rem;
  min-width: 240px;
}

/* カート PRバナーを入れる際の余白調整 */
.fs-c-continueShopping + .fs-pt-column {
    margin: 48px 0 0;
}
@media screen and (min-width: 768px) {
  .fs-c-continueShopping + .fs-pt-column {
    margin: 64px 0 0;
  }
}

/* カート内の通常ボタン 文字サイズ */
.fs-body-checkout .fs-c-button--standard {
  font-size: 1.4rem;
}
@media screen and (min-width: 768px) {
  .fs-body-checkout .fs-c-button--standard {
    font-size: 1.5rem;
  }
}

/* 返品交換リンク */
.fs-c-returnedSpecialContract__link a {
background: #ebebeb;
  border: 1px solid #bbbbbb;
  border-radius: 3px;
  color: #3e3e3e;
  cursor: pointer;
  display: inline-block;
  font-size: 1.4rem;
  line-height: 1;
  text-decoration: none;
  text-align: center;
  padding: 0.8em 1.6em 0.6em;
  box-shadow: 0 0 2px #b2b2b2;
}
.fs-c-returnedSpecialContract__link a:hover {
  opacity: 0.8;
}
@media screen and (min-width: 768px) {
  .fs-c-returnedSpecialContract__link a {
    font-size: 1.5rem;
  }
}


/* カート内 告知 */
.fs-body-cart .fs-p-messageBoard {
  margin-bottom: 32px;
}
@media screen and (min-width: 768px) {
  .fs-body-cart .fs-p-messageBoard {
    margin-bottom: 64px;
  }
}

/* クーポンコード入力フォーム */
input#fs_couponCode {
  font-size: 2rem;
}


/* ========================================
独自スタイル - インスタ投稿一覧
=========================================== */

/* インスタグラム投稿一覧 */
.gg-instagram {
  margin: 80px 0;
}
@media screen and (min-width: 768px) {
  .gg-instagram {
    margin: 80px 0 160px;
  }
}

/* インスタグラム投稿一覧 見出し */
.gg-instagram h2.gg-footer__heading {
  line-height: 1;
}

/* インスタグラム投稿一覧 見出し アイコン */
.gg-instagram h2.gg-footer__heading img {
  width: auto;
  height: 2rem;
  vertical-align: bottom;
  margin-right: 4px;
}
@media screen and (min-width: 768px) {
  .gg-instagram h2.gg-footer__heading img {
    height: 3.4rem;
    margin-right: 8px;
  }
}

/* インスタグラム投稿一覧 リンク */
.gg-instagram h2.gg-footer__heading a {
  text-decoration: none;
}

/* インスタグラム投稿一覧 リンク */
.gg-instagram h2.gg-footer__heading a:hover {
  opacity: 0.7;
}

/* インスタグラム投稿一覧 リスト */
.instagram-posts {
  margin: 0 4px;
  max-width: 1200px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: baseline;
}
@media screen and (min-width: 768px) {
  .instagram-posts {
    margin: 0 auto;
  }
}

/* インスタグラム投稿一覧 サムネイル */
.instagram-posts li {
  background: #000;
  line-height: 0;
  width: calc((100% / 3) - 8px);
  margin: 4px;
}
@media screen and (min-width: 768px) {
  .instagram-posts li {
  width: calc((100% / 5) - 8px);
  }
}

/* インスタグラム投稿一覧 サムネイル リンク */
.instagram-posts li a:hover img {
  opacity: 0.7;
  transition-duration: .3s;
}

/* インスタグラム投稿一覧 並べる数の調整 */
.gg-instagram .fs-pt-list__item:nth-child(n+11) {
  display: none;
}
@media screen and (max-width: 767px) {
  .gg-instagram .fs-pt-list__item:nth-child(n+10) {
    display: none;
  }
}
