/* [テキスト] textStyle01
----------------------------------------------------------*/
.textStyle01 {margin:0 0 5px; padding:10px; border:2px solid #EAEAEA; color:#545454; font-size:14px;}
.textStyle01 h4{margin:0 0 4px; padding:0 0 3px; border-bottom:1px dotted #545454; font-weight:bold; font-size:15px; color:#660000;}
.textStyle01 .attention {color:#545454; font-size:14px;}
.textStyle01 .point {background-color: #ffff66; color: #ff3333; font-weight:bold;}
.textStyle01 .point2 {color:#f00; font-size:14px;}


p.fs-p-logo__lead {
  font-weight:nomal;
  font-size: 1.2em;
}


/* [サイドバナー] 
----------------------------------------------------------*/
.fs-p-sideMenu {
  font-weight: bold;
}



/* [サイドバー従来のもの] 
----------------------------------------------------------*/
/* sidebar
----------------------------------------------------------*/
/* .スクロール追従バナー
----------------------------------------------------------*/

a.Side_Banner {
 position: fixed;
 display: inline-block;
 transition: all .2s ease;
 z-index: 9999;
}

/* 右側 */
a.Side_Banner.right { right: -110px;} /*マウスを乗せた時に出てくる幅*/
a.Side_Banner.right:hover{ right: 0;}

/* 左側 */
a.Side_Banner.left { left: -20px;} /*マウスを乗せた時に出てくる幅*/
a.Side_Banner.left:hover{ left: 0;}

/* 並び位置 */
a.Side_Banner.top1 { top: 100px; }
a.Side_Banner.top2 { top: 320px; }
a.Side_Banner.top3 { top: 540px; }
a.Side_Banner.top4 { top: 760px; }
a.Side_Banner.top5 { top: 900px; }

#container {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media only screen and (min-width: 768px) and (max-width: 960px) {
  #container {
    padding-top: 80px;
  }
}
@media only screen and (max-width: 768px) {
  #container {
    padding-top: 80px;
  }
}

#contents {
  flex: 1 0 auto;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 2;
  -webkit-order: 2;
  order: 2;
  margin-left: 0;
  width: calc(100% - 260px);
  background: #fffbf3;
}

#sidebar {
  width: 260px;
  background: #f0ebe4;
  -webkit-box-ordinal-group: 1;
  -ms-flex-order: 1;
  -webkit-order: 1;
  order: 1;
}
@media only screen and (min-width: 768px) and (max-width: 960px) {
  #sidebar {
    position: absolute;
    top: -100%;
    left: 0;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  #sidebar.active {
    top: 140px;
  }
}
@media only screen and (max-width: 768px) {
  #sidebar {
    position: fixed;
    top: 65px;
    width: 300px;
    width: 90%;
    height: 90%;
    right: -100%;
    z-index: 10000;
    overflow-y: scroll;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  #sidebar.active {
    right: 0;
  }
}
#sidebar .list-snav {
  position: -webkit-sticky;
  position: sticky;
  top: 80px;
  z-index: 10000;
  padding: 60px 0 60px 0;
  padding: 30px 0 30px 0;
  height: auto;
}
@media only screen and (max-width: 768px) {
  #sidebar .list-snav {
    top: 20px;
    padding: 0;
  }
}
#sidebar .list-snav__item span {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  padding: 4px 10px 4px 20px;
  color: #333;
}
#sidebar .list-snav__item span:hover {
  font-weight: 700;
}
@media only screen and (max-width: 768px) {
  #sidebar .list-snav__item span {
    position: relative;
    padding: 5px 10px;
  }
  #sidebar .list-snav__item span:after {
    content: "";
    position: absolute;
    right: 10px;
    top: 50%;
    display: block;
    margin-top: -5px;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 9px 9px 0 9px;
    border-color: #666 transparent transparent transparent;
    z-index: 0;
  }
}
@media only screen and (max-width: 768px) {
  #sidebar .list-snav__item span.open:after {
    border-width: 0 9px 9px 9px;
    border-color: transparent transparent #666 transparent;
  }
}
#sidebar .list-snav__item span:hover {
  background: #e6e1db;
}
#sidebar .list-snav__item a {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  padding: 4px 10px 4px 20px;
  color: #333;
}
#sidebar .list-snav__item a:hover {
  font-weight: 700;
}
@media only screen and (max-width: 768px) {
  #sidebar .list-snav__item a {
    position: relative;
    padding: 5px 10px;
  }
}
#sidebar .list-snav .list-page {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  padding: 10px;
}
#sidebar .list-snav .list-page__item {
  flex: 0 0 49%;
  margin-bottom: 1%;
  background: #becda2;
}
#sidebar .list-snav__icon {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
}
#sidebar .list-snav__icon img {
  margin-right: 10px;
  padding: 5px;
}
#sidebar .list-snav .list-snav__secondary a {
  padding: 10px 10px 10px 20px;
  color: #333;
}
@media only screen and (max-width: 768px) {
  #sidebar .list-snav .list-snav__secondary a {
    padding: 5px 5px 5px 30px;
  }
}
@media only screen and (min-width: 961px) {
  #sidebar .list-snav .list-snav__secondary {
    position: absolute;
    top: 0;
    left: 100%;
    width: 0;
    height: 100%;
    min-width: 0%;
    opacity: 0;
    overflow: hidden;
    background: #e6e1db;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
}
@media only screen and (min-width: 768px) and (max-width: 960px) {
  #sidebar .list-snav .list-snav__secondary {
    position: absolute;
    top: 0;
    left: 100%;
    width: 0;
    height: 100%;
    min-width: 0%;
    opacity: 0;
    overflow: hidden;
    background: #e6e1db;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
}
@media only screen and (max-width: 768px) {
  #sidebar .list-snav .list-snav__secondary {
    display: none;
  }
  #sidebar .list-snav .list-snav__secondary.active {
    display: block;
  }
}
@media only screen and (min-width: 961px) {
  #sidebar .list-snav .list-snav__item:hover .list-snav__secondary {
    width: 200%;
    opacity: 1;
    min-height: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 960px) {
  #sidebar .list-snav .list-snav__item:hover .list-snav__secondary {
    width: 200%;
    opacity: 1;
    min-height: 100%;
  }
}
#sidebar .list-snav .list-subnav {
  display: block;
  width: auto;
  padding: 40px 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
  #sidebar .list-snav .list-subnav {
    display: block;
    padding: 5px;
  }
}
#sidebar .list-snav .list-subnav__title {
  flex: 0 0 100%;
  margin: 0 0 20px 20px;
  font-weight: 700;
}
@media only screen and (max-width: 768px) {
  #sidebar .list-snav .list-subnav__title {
    display: none;
  }
}
#sidebar .list-snav .list-subnav__item {
  flex: 0 0 50%;
}
#sidebar .list-snav .list-subnav__item a {
  display: block;
}



li{
list-style: none;
}

/*新着商品箇所のアイコン指定*/
.fs-icon--newProduct:before {
  content: "\e93b";
}


/*ヘッダーロゴ*/
.fs-l-header__logo {
 width: 100%;
}


/*グループの登録商品がありませんの文言を非表示*/
.fs-body-category-oteire .fs-c-noResultMessage {
    display: none;
}

.fs-body-category-disease-carrier .fs-c-noResultMessage {
    display: none;
}

.fs-body-category-starter .fs-c-noResultMessage {
    display: none;
}

/*商品カテゴリー内のバナーを横並びにする*/
.fs-pt-column--4-2{
    display: flex;
    justify-content: space-between;
    max-width: 700px;
    margin: 0 auto;
}
.fs-pt-column--4-1{
    display: flex;
    justify-content: space-between;
    max-width: 700px;
    margin: 0 auto;
}
.fs-pt-column__item{
   padding: 8 4 0 4;
}
/*SPでカテゴリーを横並びのままにする*/
.category01{
    display: flex;
    justify-content: space-between;
    max-width: 1000px;
    margin: 0 auto;
}
.category02{
    display: flex;
    justify-content: space-between;
    max-width: 1000px;
    margin: 0 auto;
}

/*よみものコンテンツを横並びにする*/
.fs-pt-column-yomi-2{
    display: flex;
    justify-content: space-between;
    max-width: 700px;
    margin: 0 auto;
}
.fs-pt-column-yomi-1{
    display: flex;
    justify-content: space-between;
    max-width: 700px;
    margin: 0 auto;
}


/*SPのみ表示*/
@media only screen and (max-width: 768px) {
  .fs-pt-column--4{
    display: none;
}

}
/*ｐｃのみ表示*/
@media only screen and (min-width: 769px) {
.fs-pt-column-yomi-1{
  display: none;
}
.fs-pt-column-yomi-2{
  display: none;
}
}

/*サブグループ一覧で画像サイズを制限する*/
.fs-c-subgroupList__image > img {
    max-width: 50px;
    max-height: 50px;
    object-fit: cover;
}