/*========= レイアウト（基本）=========*/
table, tr, th, td {
  border-collapse:collapse;
  padding:0;
}

.left { float:left; }
.right { float:right; }
.center { margin:0 auto; }
.clear { clear:both; }
.clearfix {
overflow:hidden;
_zoom:1;/*ie6*/
}

/* display */
.d_i { display: inline !important; }
.d_ib { display: inline-block !important; }
.d_b { display: block !important; }

/*マージン：パディング*/
.m_auto { margin: 0 auto; }

.mt00 { margin-top: 0px!important; }
.mt03 { margin-top: 3px!important; }
.mt05 { margin-top: 5px!important; }
.mt10 { margin-top:10px!important; }
.mt15 { margin-top:15px!important; }
.mt20 { margin-top:20px!important; }
.mt25 { margin-top:25px!important; }
.mt30 { margin-top:30px!important; }
.mt35 { margin-top:35px!important; }
.mt40 { margin-top:40px!important; }
.mt45 { margin-top:45px!important; }
.mt50 { margin-top:50px!important; }
.mt55 { margin-top:55px!important; }
.mt60 { margin-top:60px!important; }
.mt70 { margin-top:70px!important; }

.mb00 { margin-bottom: 0px!important; }
.mb03 { margin-bottom: 3px!important; }
.mb05 { margin-bottom: 5px!important; }
.mb10 { margin-bottom:10px!important; }
.mb15 { margin-bottom:15px!important; }
.mb20 { margin-bottom:20px!important; }
.mb25 { margin-bottom:25px!important; }
.mb30 { margin-bottom:30px!important; }
.mb35 { margin-bottom:35px!important; }
.mb40 { margin-bottom:40px!important; }
.mb45 { margin-bottom:45px!important; }
.mb50 { margin-bottom:50px!important; }
.mb55 { margin-bottom:55px!important; }
.mb60 { margin-bottom:60px!important; }
.mb70 { margin-bottom:70px!important; }

.ml00 { margin-left: 0px!important; }
.ml03 { margin-left: 3px!important; }
.ml05 { margin-left: 5px!important; }
.ml10 { margin-left:10px!important; }
.ml15 { margin-left:15px!important; }
.ml20 { margin-left:20px!important; }
.ml25 { margin-left:25px!important; }
.ml30 { margin-left:30px!important; }
.ml35 { margin-left:35px!important; }
.ml40 { margin-left:40px!important; }
.ml45 { margin-left:45px!important; }
.ml50 { margin-left:50px!important; }
.ml55 { margin-left:55px!important; }
.ml60 { margin-left:60px!important; }
.ml70 { margin-left:70px!important; }

.mr00 { margin-right: 0px!important; }
.mr03 { margin-right: 3px!important; }
.mr05 { margin-right: 5px!important; }
.mr10 { margin-right:10px!important; }
.mr15 { margin-right:15px!important; }
.mr20 { margin-right:20px!important; }
.mr25 { margin-right:25px!important; }
.mr30 { margin-right:30px!important; }
.mr35 { margin-right:35px!important; }
.mr40 { margin-right:40px!important; }
.mr45 { margin-right:45px!important; }
.mr50 { margin-right:50px!important; }
.mr55 { margin-right:55px!important; }
.mr60 { margin-right:60px!important; }
.mr70 { margin-right:70px!important; }

.pt00 { padding-top: 0px!important; }
.pt03 { padding-top: 3px!important; }
.pt05 { padding-top: 5px!important; }
.pt10 { padding-top:10px!important; }
.pt15 { padding-top:15px!important; }
.pt20 { padding-top:20px!important; }
.pt25 { padding-top:25px!important; }
.pt30 { padding-top:30px!important; }
.pt35 { padding-top:35px!important; }
.pt40 { padding-top:40px!important; }
.pt45 { padding-top:45px!important; }
.pt50 { padding-top:50px!important; }
.pt55 { padding-top:55px!important; }
.pt60 { padding-top:60px!important; }
.pt70 { padding-top:70px!important; }

.pb00 { padding-bottom: 0px!important; }
.pb03 { padding-bottom: 3px!important; }
.pb05 { padding-bottom: 5px!important; }
.pb10 { padding-bottom:10px!important; }
.pb15 { padding-bottom:15px!important; }
.pb20 { padding-bottom:20px!important; }
.pb25 { padding-bottom:25px!important; }
.pb30 { padding-bottom:30px!important; }
.pb35 { padding-bottom:35px!important; }
.pb40 { padding-bottom:40px!important; }
.pb45 { padding-bottom:45px!important; }
.pb50 { padding-bottom:50px!important; }
.pb55 { padding-bottom:55px!important; }
.pb60 { padding-bottom:60px!important; }
.pb70 { padding-bottom:70px!important; }

.pl00 { padding-left: 0px!important; }
.pl03 { padding-left: 3px!important; }
.pl05 { padding-left: 5px!important; }
.pl10 { padding-left:10px!important; }
.pl15 { padding-left:15px!important; }
.pl20 { padding-left:20px!important; }
.pl25 { padding-left:25px!important; }
.pl30 { padding-left:30px!important; }
.pl35 { padding-left:35px!important; }
.pl40 { padding-left:40px!important; }
.pl45 { padding-left:45px!important; }
.pl50 { padding-left:50px!important; }
.pl55 { padding-left:55px!important; }
.pl60 { padding-left:60px!important; }
.pl70 { padding-left:70px!important; }

.pr00 { padding-right: 0px!important; }
.pr03 { padding-right: 3px!important; }
.pr05 { padding-right: 5px!important; }
.pr10 { padding-right:10px!important; }
.pr15 { padding-right:15px!important; }
.pr20 { padding-right:20px!important; }
.pr25 { padding-right:25px!important; }
.pr30 { padding-right:30px!important; }
.pr35 { padding-right:35px!important; }
.pr40 { padding-right:40px!important; }
.pr45 { padding-right:45px!important; }
.pr50 { padding-right:50px!important; }
.pr55 { padding-right:55px!important; }
.pr60 { padding-right:60px!important; }
.pr70 { padding-right:70px!important; }

.t10 {font-size:10px !important;}
.t11 {font-size:11px !important;}
.t12 {font-size:12px !important;}
.t13 {font-size:13px !important;}
.t14 {font-size:14px !important;}
.t15 {font-size:15px !important;}
.t16 {font-size:16px !important;}
.t17 {font-size:17px !important;}
.t18 {font-size:18px !important;}
.t19 {font-size:19px !important;}
.t20 {font-size:20px !important;}
.t21 {font-size:21px !important;}
.t22 {font-size:22px !important;}
.t23 {font-size:23px !important;}
.t24 {font-size:24px !important;}
.t25 {font-size:25px !important;}
.t26 {font-size:26px !important;}
.t27 {font-size:27px !important;}
.t28 {font-size:28px !important;}
.t29 {font-size:29px !important;}
.t30 {font-size:30px !important;}
.t_large { font-size:1.2em; }
.t_small { font-size:0.9em; }

.t_wht { color:#fff; }
.t_yel { color:#f90; }
.t_red { color:#f00; }
.t_gry { color:#666; }
.t_grn { color:#060; }
.t_brw { color:#600; }
.t_blu { color:#06f; }

.t_left { text-align:left; }
.t_right { text-align:right; }
.t_center { text-align:center; }

.t_bold { font-weight:bold; }
.t_normal { font-weight:normal; }
.t_u { text-decoration:underline; }
.t_s { text-decoration:line-through; }

.tm_yel { background: linear-gradient(transparent 60%, #FFDD00 30%); }
.tm_gry { background: linear-gradient(transparent 60%, #c4b9b1 30%); }

.t_indent {
  text-indent:-1em;
  margin-left:1em;
}

/* gridまたはflex */
.grid_flex {
  display: flex;
  flex-wrap: wrap;
}
.v_center { align-items: center; }/* grid_flexで縦の中央指定したい際に使用 grid_flexを付与している要素に一緒に付与 */
.w_center { justify-content:center; }/* grid_flexで横の中央指定したい際に使用 grid_flexを付与している要素に一緒に付与 */

/* ページリンク */
html{ scroll-behavior: smooth; }

/* =========================
  PC・スマホ切り替え
========================= */
.pc_on_b,{display: block;}
.sp_on_b,{display: none;}

@media (max-width: 768px) {
 .pc_on_b,{display: none;}
 .sp_on_b,{display: block;}
}

/* =========================
  FS全体制御
========================= */
main .fs-c-documentArticle__heading { margin: 0; }
main .fs-c-documentColumn__content { gap: 10px; }
main .fs-c-documentColumn__heading { margin-bottom: 0; }


/* =========================
  ヘッダー
========================= */
.fs-l-header__contents {
    grid-template-columns: 25% 25% 50%;
}

/* ECサイトロゴ（フリーパーツ）*/
.fs-l-header__logo {
    grid-row: 1;
    grid-column: 1;
}

.fs-p-logo {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    padding: 15px 5px;
    height:85px;
}


/* ウェルカムメッセージ（フリーパーツ ）*/
.fs-l-header__leftContainer {
    grid-row: 1;
    grid-column: 2;
    align-items: stretch;
    align-self: center;
    text-align: left;
}

/* ドロワーメニューアイコン（フリーパーツ）*/
.fs-l-header__utility {
    grid-row: 1;
    grid-column: 3;
    align-self: center;
}

/* ===ヘッダーコンテンツ（フリーパーツ）===*/
.fs-l-header__contents{
  max-width: 1250px;
  margin: 0 auto;
  }

/* ===ヘッダーナビゲーションメニュー（PC）（フリーパーツ）===*/
.fs-l-header__utility {grid-template-rows: 1fr;}
.fs-p-headerUtilityMenu__list .fs-pt-menu__item.fs-pt-menu__item--lv1 a::before {display:none;}

.fs-p-headerUtilityMenu__list .fs-pt-menu__item.fs-pt-menu__item--lv1 img {
  vertical-align:bottom;
  margin-right: 5px;
  }

.fs-p-headerUtilityMenu__list .fs-pt-menu__item.fs-pt-menu__item--lv1 span {
  font-size:14px;
  display: inline-block;
  vertical-align: super;
  font-weight: 600;
}

/* ===カートの商品のカウント===*/
.fs-pt-menu__heading.fs-pt-menu__heading--lv1 p {
  font-size:10px;
  top: -10px;
  right: -2px;
}

/* スマホ用*/
@media (max-width: 768px){
  .fs-p-headerNavigation__listItem cart_sp{width: 82px;}

  .fs-clientInfo.is-ready {
    top:-7px;
    right: 26%;
  }
}

.fs-p-headerUtilityMenu__list > li + li {margin-left: 22px;}

/*ナビゲーション*/
.fs-p-headerNavigation__listItem img {margin:0 10px 0 0;}

/*キーワード検索*/
.fs-p-headerNavigation__search.fs-p-searchForm span{border:solid 2px #666;}
.fs-p-headerNavigation__search.fs-p-searchForm span,
.fs-p-headerNavigation__search.fs-p-searchForm input,
.fs-p-headerNavigation__search.fs-p-searchForm button{
  border-radius: 15px;
}

.fs-p-headerNavigation__search.fs-p-searchForm input{
  border: none;
  box-shadow:none;
}

.fs-p-headerNavigation__search.fs-p-searchForm span,
.fs-p-headerNavigation__search.fs-p-searchForm button{background: #fff;}
.fs-p-headerNavigation__search.fs-p-searchForm button::before{color:#666;}

@media (max-width: 1200px){
 .fs-l-header__contents {grid-template-columns: 8% 32% 60%;}
 .fs-p-welcomeMsg{text-align: center;}
 .fs-l-header__logo {grid-column: 2;}
 .fs-l-header__leftContainer{grid-column: 1;}
 .fs-l-header__drawerOpener{text-align: center;}
}


/* === SP時設定 === */
@media (max-width: 768px) {
 .fs-p-logo{text-align: center;}
 .fs-l-header__contents {grid-template-columns: 20% 60% 20%;}
 .fs-l-header__logo {grid-column: 2;}
 .fs-l-header__leftContainer {grid-column: 1;}
 .fs-l-header__drawerOpener {text-align: center;}

  .cart_sp{
   grid-row: 1;
   grid-column: 3;
  }

  .fs-p-headerNavigation__listItem img {margin:0 0 5px 0;}
}


/* =========================
  カート
========================= */
#fs_orderTotalContainer::after {
  content:"送料に「後ほどご連絡いたします」と表示された場合、「注文を確定する」ボタンをクリックしても注文はまだ確定されません。";
  color:#f00;
  font-size:12px;
}

/* =========================
  サイドバー
========================= */

.fs-p-sideMenu .fs-pt-menu__heading--lv1{
  border:none;
  background: #e6e9e9;
  font-family: auto;
  font-weight: 500;
  font-size: 16px;
  margin: 12px 0;
  color: #3d4e51;
  border-radius: 5px;
}

.fs-pt-menu a{
  padding: 10px 15px;
  border-radius: 5px;
}


/* =========================
  フッター
========================= */
.fs-l-footer h2 {
  font-size: 1.6rem;
  font-weight: bold;
  border-bottom: 1px dotted #666;
}
.fs-l-footer__contents > ul > li {
  margin-bottom: 30px;
}
.fs-l-footer ul {
  padding: 0;
  list-style-type: none;
}
.footer_cardIcon.fs-c-creditCardIcons > * + *  { margin-left:0px; }
.footer_cardIcon .fs-c-creditCardIcons__image { width: auto; }

/* お客様情報入力 メルマガ欄非表示 */
/*div.fs-c-agreementConfirmation:has(#fs_input_newsletterAgree){ display:none;}*/



/* === SP時設定 === */
@media (max-width: 768px) {

  #footer_contents {
    width: 90%;
    margin: 0 auto;
  }

  .fs-l-footer__contents > ul > li.g03{
    width: 100%;
  }

}

/* === PC時設定 === */
@media (min-width: 769px) {
}



/* =========================
  フッターカレンダー
========================= */
#calendar { margin-bottom: 5px; }
#calendar .calendar-container {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  font-family: Arial, sans-serif;
}

#calendar .calendar h3 {
  margin: 0 0 5px 0;
}

#calendar table {
  border-collapse: collapse;
  width: 100%;
}

#calendar th, #calendar td {
  width: 14%;
  text-align: center;
  padding: 8px;
}
#calendar th { padding: 0 8px; }

#calendar td {
  border: 1px solid #ddd;
}

#calendar .closed {
  background-color: #f8d7da;
  color: #999;
}

#calendar .open {
  background-color: #ffffff;
}

/* #calendar .today {
  background-color: #ffeeba;
  font-weight: bold;
} */

#calendar_sup {
  display: flex;
  gap: 8px;
}
#calendar_sup > li {
  display: flex;
  align-items: center;
}
#calendar_sup > li::before {
  display: block;
  height: 1em;
  width: 1em;
  border: #ddd 1px solid;
  margin-right: 4px;
  content: ' ';
}
#calendar_sup > li#calendar_today::before { background-color: #ffeeba; }
#calendar_sup > li#calendar_eigyo::before { background-color: #fff; }
#calendar_sup > li#calendar_holiday::before { background-color: #f8d7da; }

/* #calendar .sat { color: blue; }

#calendar .sun { color: red;} */

/* === SP時設定 === */
@media (max-width: 768px) {

  #calendar .calendar { width: 100%; }
}

/* === PC時設定 === */
@media (min-width: 769px) {
}



/* =========================
検索画面
========================= */
#kensaku_box {
  background-color:#f5f5f5;
  padding: 10px;
}
#kensaku_box .kensaku_box_contents > p { margin: 0; }
#kensaku_box .kensaku_box_contents ul {
  padding: 0;
  margin: 0;
}
#kensaku_box .kensaku_box_contents ul li {
  display: inline-block;
  margin-right: 25px;
}
#kensaku_box .kensaku_box_contents ul li label input { margin-right: 5px; }

/* デフォルトの三角マーカーを非表示 */
#kensaku_box_block summary {
  list-style: none;
  cursor: pointer;
  position: relative;
  padding: 5px 10px 5px 30px;
  background-color: #999;
  color: #fff;
}

/* Safari用 */
#kensaku_box_block summary::-webkit-details-marker {
  display: none;
}

/* 閉じている状態：＋アイコン */
#kensaku_box_block summary::before {
  content: "+";
  position: absolute;
  left: 10px;
  top: 5px;
  font-weight: bold;
}

/* 開いている状態：?アイコン */
#kensaku_box_block[open] summary::before {
  content: "?";
}

/* 開閉のアニメーション */
#kensaku_box_block > div {
  overflow: hidden;
  transition: max-height 1s ease, opacity 1s ease;
}
#kensaku_box_block:not([open]) > div {
  max-height: 0;
  opacity: 0;
}
#kensaku_box_block[open] > div {
  max-height: 1000px;
  opacity: 1;
}

/* === SP時設定 === */
@media screen and (max-width: 767px) {
  #kensaku_box_block > div { width: 100%; }

}

/* === PC時設定 === */
@media screen and (min-width: 768px) {
  #kensaku_box_block > div { width: 898px; }
}



/*=========スマホレイアウト=========*/
@media screen and (max-width: 767px) {
  .pc_on_b,.pc_on_i,.pc_on_ib { display: none !important; }
  .sp_on_b { display: block !important; }
  .sp_on_i { display: inline !important; }
  .sp_on_ib { display: inline-block !important; }
  .sp_t_left { text-align: left; }
  .sp_clear{clear:both;}

  .grid_flex .g01 {width:33.333%;}
  .grid_flex .g02 {width:33.333%;}
  .grid_flex .g03 {width:50%;}
  .grid_flex .g04 {width:100%;}
  .grid_flex .g05 {width:100%;}
  .grid_flex .g06 {width:100%;}
  .grid_flex .g07 {width:100%;}
  .grid_flex .g08 {width:100%;}
  .grid_flex .g09 {width:100%;}
  .grid_flex .g10 {width:100%;}
  .grid_flex .g11 {width:100%;}
  .grid_flex .g12 {width:100%;}

  .grid_flex .g01,.grid_flex .g02,.grid_flex .g03 {
    padding:0 5px;
  }
}

/*=========PCレイアウト=========*/
@media screen and (min-width: 768px) {
  .pc_on_b { display: block !important; }
  .pc_on_i { display: inline !important; }
  .pc_on_ib { display: inline-block !important; }
  .sp_on_b,.sp_on_i,.sp_on_ib { display: none !important; }

  .grid_flex .g01 {width:8.333%;}
  .grid_flex .g02 {width:16.666%;}
  .grid_flex .g03 {width:25%;}
  .grid_flex .g04 {width:33.333%;}
  .grid_flex .g05 {width:41.666%;}
  .grid_flex .g06 {width:50%;}
  .grid_flex .g07 {width:58.333%;}
  .grid_flex .g08 {width:66.666%;}
  .grid_flex .g09 {width:75%;}
  .grid_flex .g10 {width:83.33%;}
  .grid_flex .g11 {width:91.666%;}
  .grid_flex .g12 {width:100%;}

  .grid_flex .g01,.grid_flex .g02,.grid_flex .g03,.grid_flex .g04,.grid_flex .g05,.grid_flex .g06,
  .grid_flex .g07,.grid_flex .g08,.grid_flex .g09,.grid_flex .g10,.grid_flex .g11,.grid_flex .g12 {
    padding:0 5px;
  }
}

/* =========================
トップページ メインブロック
========================= */

.fs-c-slick .slick-slide img {
    margin: 0 10px;
}

/* ===トップページアイコン === */
.top_icon_block{text-align:center;}

.top_icon_block ul{
  list-style: none;
  padding-inline-start: 0;
}

.top_icon_block ul li{margin:0 auto 20px;}

.top_icon_block ul li img{
  border-radius: 80px;
  width: 95px;
}

.top_icon_block ul li a{text-decoration:none;}
.top_icon_block ul li p{margin: 0px auto;}

/* === おすすめ商品 === */
.fs-p-heading--lv2{
  text-align: center;
  margin-top: 60px;
  font-weight: bold;
  font-size: 22px;
  padding-bottom: 5px;
}

.ichiran_link a{
  background-color: #a3b0b1 !important;
  width: 70%;
  display: inline-block;
  padding: 10px 0;
  border-radius: 10px;
  font-size: 1.2em;
  margin: 20px auto;
  font-family: monospace;
}

.ichiran_link a:link,.ichiran_link a:visited {color: #fff;}
.ichiran_link a::after{
    content: "\e90c";
    font-family: "fs-icon" !important;
    speak: none;
    font-size: 1.5em;
    vertical-align: middle;
}

.fs-c-productListCarousel__list__item .fs-c-productListItem__image.fs-c-productImage img {
   border-radius: 10px;
}

/* =========================
【追加】ナビゲーション カラー等変更
========================= */

/* =====ナビ===== */
  .fs-p-headerNavBar {
     background: #eaeef1;
     border-bottom: 3px solid #f4d321;
     padding:10px 0;
 }

.fs-p-headerNavigation__list > li {
    font-family: Lato, 'Noto Sans JP', sans-serif;
    font-weight: 600;
}

.fs-p-headerNavigation__link,
.fs-p-headerNavigation__link:link,
.fs-p-headerNavigation__link:visited {
    color: #414d51;
}

@media screen and (min-width: 768px) {
.fs-p-headerNavigation__listItem {
        min-width: 128px;
    }
}

.fs-p-headerNavigation__link{font-size:14.5px;}
@media screen and (max-width: 768px) {.fs-p-headerNavigation__link{font-size:13px;}}

/* =====キーワード検索===== */
.fs-p-inputGroup {
    display: flex;
    align-items: stretch;
    border:none;
}
@media screen and (max-width: 768px) {
  .fs-p-headerNavigation__search {
      flex-grow: 1;
      padding: 5px 20px;
  }
}

/* =========================
【追加】ご利用ガイド ご購入方法について
========================= */

/* =====見出し===== */
.guide_h2{
    font-size:1.8em;
    border-bottom: solid 5px #51667d;
    padding: 10px;
    width: 370px;
    margin: 0 auto;
    border-radius: 2px;
    color: #51667d;
  }

.fs-c-documentColumn__heading.guide_h3{
    color: #51667d;
    border-color: #51667d;
    font-weight: 600;
    font-size: 2.2rem;
  }

.buy_guide{
    margin:10px auto;
    width: 100%;
    padding: 0 10px;
    background:#eeeeee;
    border-radius: 2px;
  }

.buy_guide ul{
    display: inline;
  }

.buy_guide ul li{
    list-style-type: none;
    margin:0;
    color:#555;
  }

/* =====ページ内リンク===== */
.page_link{
    margin: 0 auto;
    text-align: center;
    margin-block-start: 0;
    padding-inline-start: 0;
    }

.page_link li {
    margin: 10px auto;
    display: inline-block;
    width: 220px;
    height: auto;
    font-size: 16px;
    vertical-align: middle;
    line-height: 1.2em;
    text-align: center;
    border: solid 2px #51667d;
    font-weight: 600;
    text-decoration: none;
    padding: 10px;
    border-radius: 10px;
    }

.page_link li a,
.page_link li a:link,
.page_link li a:visited,
.page_link li a:active{
    color: #51667d;
    text-decoration: none;
    }

.page_link li span {
    text-align: center;
    margin: 5px auto 0;
    display: block;
    vertical-align: middle;
    color: #51667d;
    line-height: 1;
    width: 0.5em;
    height: 0.5em;
    border: 0.2em solid currentColor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: translateY(-25%) rotate(135deg);
}

@media screen and (max-width: 768px) {
   .page_link li {
       width: 150px;
    }
}