@charset “UTF-8”;
/* ==============================================================================

CSS Information

 File name:	main.css

 Style Info:	メイン設定
 
 ※ スマフォファースト。CSSの上書きはPC側(device.css)で。

============================================================================== */
/*-------------------------------------------------------------------------------

 共通部分 / 汎用パーツ

-------------------------------------------------------------------------------*/
/* contents
-----------------------------------------------------------*/
.contents {
  clear: both;
  overflow: hidden;
  zoom: 100%;
  padding: 20px 0;
}
/* bg */
.contents.bg01 {
  margin: 30px 0;
  background: #333;
  color: #FFF;
}
.contents.bg02 {
  padding: 30px 0;
  background: #edeae6;
}
.contents.bg01 a {
  color: #FFF;
}
.contents.bg01 a:hover {
  color: #999;
}
.contents_inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}
.content_box {
  margin-bottom: 40px;
}
/* 見出し
-----------------------------------------------------------*/
.title_block {
  margin-bottom: 15px;
  text-align: center;
}
.contents.bg .title_block {
  margin-bottom: 15px;
}
.title_block h1 > em, .title_block h2 > em {
  display: block;
  padding-left: .05em;
  font-size: 2.25rem;
  font-weight: normal;
  letter-spacing: .05em;
}
/* title min */
.title_min {
  margin-bottom: 40px;
  font-size: 1.25rem;
  font-weight: 500;
}
/* テーブル
-----------------------------------------------------------*/
.tbl {
  margin: 10px;
  border-collapse: collapse;
  text-align: left;
}
.tbl th {
  padding: 5px;
  background: #EEE;
  border: 1px solid #999;
}
.tbl td {
  padding: 5px;
  border: 1px solid #999;
}
/* link btn
-----------------------------------------------------------*/
/* btn */
.btn_box {
  clear: both;
  margin: 0;
  padding: 10px 0;
  text-align: center;
}
.btn_box a {
  position: relative;
  display: inline-block;
  width: 400px;
  max-width: 80%;
  padding: 6px 15px;
  border: 1px solid #333;
  font-size: 1.25rem;
  text-align: left;
  text-decoration: none;
}
.btn_box a::after {
  position: absolute;
  content: '';
  top: 50%;
  right: 10px;
  width: 16px;
  height: 12px;
  margin-top: -6px;
  background: url('data:image/svg+xml,%3Csvg%20enable-background%3D%22new%200%200%2010%207.1%22%20viewBox%3D%220%200%2010%207.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m6.4%200-.3.4%202.9%202.9h-9v.5h9l-2.9%203%20.3.3%203.4-3.3.2-.2z%22%20fill%3D%22%23333%22%2F%3E%3C%2Fsvg%3E') no-repeat;
  background-size: 100% auto;
  transition: all, 0.25s;
}
.btn_box a:hover {
  background: #EEE;
}
.btn_box a:hover::after {
  right: 10px;
}
.btn_box a span {
  display: inline-block;
}
/* black */
.btn_box.btn_bl a {
  border: 1px solid #FFF;
}
/* center */
.btn_box.btn_center a {
  width: 240px;
  max-width: 50%;
  text-align: center;
}
.btn_box.btn_center a::after {
  content: none;
}
/* item list
----------------------------------------------------------- */
.item_list {
  margin: 0 -10px;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
}
.item_list > li {
  position: relative;
  flex-grow: 0;
  width: 100%;
}
/* 5分割 */
.item_list05 > li {
  width: 50%;
}
.item_list > li > div {
  margin: 0 10px 20px;
}
.item_list a {
  position: relative;
  display: block;
  text-decoration: none;
}
.item_list .thumb {
  position: relative;
  display: block;
  font-style: normal;
  text-align: center;
}
.item_list span {
  display: inline-block;
}
.item_list .price {
  display: block;
  padding-top: 1.2em;
}
/* iframe
----------------------------------------------------------- */
.news_iframe {
  width: 100% !important;
  height: 145vw;
}
.info_iframe {
  width: 100% !important;
  height: 12em;
}
/* entry list
----------------------------------------------------------- */
.entry_list {
  overflow-y: auto;
  height: 10em;
}
.entry_list a, .entry_list a:visited {
  display: -webkit-flex;
  display: flex;
  color: #FFF;
  text-decoration: none;
}
.entry_list li {
  margin: 6px;
}
.entry_list li .data {
  display: block;
  width: 8em;
}
.entry_list li .title {
  display: block;
  margin: 0;
  flex: 1;
}
/* アーカイブ一覧表示 block
-----------------------------------------------------------*/
.entryblock_list {
  margin: 0 -10px -5px;
}
.entryblock_list li {
  flex-grow: 0;
  width: 100%;
}
.entryblock_list li > div {
  padding: 0 10px 20px;
}
.entryblock_list a {
  display: -webkit-flex;
  display: flex;
  text-decoration: none;
}
.entryblock_list .thumb {
  position: relative;
  display: block;
  width: 38%;
  margin-right: 15px;
}
.entryblock_list .thumb img {
  display: block;
  width: 100%;
  height: auto !important;
}
.entryblock_list .entry_txt {
  flex: 1;
}
.entryblock_list .entry_txt em {
  display: block;
  position: relative;
  overflow: hidden;
  height: 2.8em;
  font-weight: normal;
  line-height: 1.4;
}
.entryblock_list .entry_txt .data {
  margin-bottom: 0;
}
/*-------------------------------------------------------------------------------

 index

-------------------------------------------------------------------------------*/
/* cover
----------------------------------------------------------- */
.cover_swiper_pc, .cover_swiper_sp {
  overflow: hidden;
  position: relative;
  z-index: 1;
  margin: 0 auto;
}
.cover_container .swiper-slide {
  text-align: center;
}
.cover_swiper_pc a, .cover_swiper_sp a {
  display: block;
  background: #000;
}
.cover_swiper_pc img, .cover_swiper_sp img {
  width: auto;
  max-width: 100%;
  height: auto;
}
.cover_swiper_pc .swiper-button-next, .cover_swiper_pc .swiper-button-prev {
  width: 20px;
  height: 36px;
  margin-top: -13px;
  background-size: cover;
}
.cover_swiper_pc .swiper-button-prev {
  left: 15px;
}
.cover_swiper_pc .swiper-button-next {
  right: 15px;
}
/* category list
----------------------------------------------------------- */
.category_list {
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  margin: 0 -8px;
}
.category_list li {
  flex-grow: 0;
  width: 50%;
}
.category_list li > div {
  position: relative;
  margin: 0 8px 16px;
}
.category_list a {
  background: #666;
  color: #FFF;
  text-align: center;
  text-decoration: none;
}
.category_list .zoom {
  overflow: hidden;
}
.category_list .zoom img {
  width: 100%;
  transition: all, 0.25s;
}
.category_list a:hover .zoom img {
  transform: scale(1.1);
}
.category_list .text {
  position: absolute;
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(51, 51, 51, .4);
}
.category_list a:hover .text {
  background: rgba(51, 51, 51, .2);
}
.category_list a .inner .name {
  display: block;
  font-size: 2rem;
  font-weight: normal;
}
.category_list a .inner .text {
  display: block;
  font-size: 1.25rem;
}
/* brand list
-----------------------------------------------------------*/
.brand_list {
  margin-bottom: -40px;
}
.brand_list li {
  margin-bottom: 40px;
}
.brand_list .flex_block {
  position: relative;
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.brand_list .flex_block.reverse {
  flex-direction: row-reverse;
}
.brand_list .text_box {
  width: 30%;
}
.brand_list .fig_box {
  display: block;
  width: 65%;
}
.brand_list .flex_block .inner {
  position: absolute;
  top: 12%;
  left: 0;
  width: 65%;
}
.brand_list .flex_block.reverse .inner {
  left: auto;
  right: -8px;
}
.brand_list .text_box h3 {
  margin-bottom: 10px;
  font-size: 2.5rem;
  font-weight: normal;
  text-align: center;
}
.brand_list .text_box .btn_box {
  margin-top: 15px;
}
.brand_list .text_box .btn_box a {
  width: 100%;
  max-width: 100%;
}
.brand_list li > .btn_area {
  margin-top: 15px;
}
.brand_list li > .btn_area a {
  width: 60%;
}
.brand_list li:last-child .fig_box {
  margin-right: -15%;
}
/*-------------------------------------------------------------------------------

 faq / フリーページ

-------------------------------------------------------------------------------*/
/* guide
------------------------------------------------------------- */
.content_guide .fs-c-documentArticle__heading, .content_faq .fs-c-documentArticle__heading {
  text-align: left;
}
.content_guide h3 {
  margin-bottom: 10px;
}
.content_guide ul {
  margin-bottom: 30px;
  padding-left: 20px;
  text-align: left;
}
.content_guide ul li {
  list-style-type: disc;
}
.content_guide ol {
  margin-bottom: 30px;
  padding-left: 30px;
  text-align: left;
}
.content_guide ol li {
  list-style-type: decimal;
}
/* faq
------------------------------------------------------------- */
.content_faq hr {
  margin-bottom: 2em;
}
.faq_block {
  position: relative;
  margin-bottom: 15px;
  padding: 10px 0 15px 40px;
  border-bottom: 1px solid #666;
  box-sizing: border-box;
}
.content_faq .faq_block:last-child {
  border-bottom: none;
}
.faq_block .caption {
  position: relative;
  display: block;
  margin-bottom: 8px;
  padding-top: 8px;
  padding-bottom: 8px;
  font-weight: bold;
}
.faq_block .txt {
  position: relative;
  height: auto;
  opacity: 1;
  padding-top: 4px;
  padding-bottom: 8px;
  text-align: left;
  transition: 0.4s;
}
.faq_block .caption::after, .faq_block .txt::after {
  position: absolute;
  top: 0;
  left: -40px;
  width: 30px;
  height: 30px;
  border-radius: 4px;
  background: #666;
  color: #FFF;
  font-size: 1.5rem;
  font-weight: normal;
  text-align: center;
  line-height: 26px;
}
.faq_block .caption::after {
  content: 'Q';
  background: #cc6666;
}
.faq_block .txt::after {
  content: 'A';
}
.faq_inner h3 {
  font-weight: bold;
}
.faq_inner {
  padding: 15px 0;
}
.faq_inner .fig_block {
  text-align: center;
}
/*-------------------------------------------------------------------------------

 fs 全般

-------------------------------------------------------------------------------*/
/* ページタイトル */
.fs-c-heading--page {
  margin-bottom: 20px;
  padding: .5em 0;
  border-bottom: none;
  color: initial;
}
/* サブタイトル */
.fs-c-subSection__title {
  margin-bottom: 30px;
  border-bottom: none;
  color: #333;
  font-size: 1.25rem;
  font-weight: normal;
}
/* テーブルセル：会員登録/ログインなどフォーム共通 */
.fs-c-inputTable__headerCell, .fs-c-inputTable__dataCell {
  padding-bottom: 15px;
  font-size: .875rem;
  font-weight: normal;
}
[type="text"], .fs-c-inputGroup--vertical > [type="password"], [type="search"], [type="tel"], [type="url"], [type="email"], [type="password"], [type="datetime"], [type="date"], [type="month"], [type="week"], [type="time"], [type="datetime-local"], [type="number"], select, textarea {
  box-sizing: border-box;
  padding: 8px;
  border: 2px solid #CCC;
  border-radius: 0;
}
/* ご利用ガイドなどサブタイトル */
.fs-c-documentArticle__heading {
  padding: 15px 10px;
}
.fs-c-documentColumn__heading {
  padding: 4px 6px;
}
/* ログインの目アイコン */
.fs-c-button--particular.fs-c-button--displayPassword {
  margin-right: 8px;
}
/* ラジオボタンを横並びに */
.fs-c-radioGroup {
  display: block;
}
.fs-c-radioGroup .fs-c-radio {
  display: inline-block;
  min-height: auto;
  margin-right: 8px;
}
/*** ボタン一般 ***/
.fs-c-button--primary, .fs-c-button--secondary {
  box-sizing: border-box;
  border: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: .8em 1em;
  font-size: 1rem;
}
.fs-c-button--standard {
  box-sizing: border-box;
  font-size: 1rem;
}
.fs-c-inputInformation__button {
  margin-top: 10px;
}
.fs-c-button--plain {
  color: #333;
}
.fs-c-dropdown::after {
  box-sizing: border-box;
}
/* 商品アイコン */
.fs-c-mark, .fs-c-productMark__mark {
  margin: 0 4px 4px 0;
  padding: 8px 12px;
}
/* 「価格」の文字
.fs-c-productPrice__main__label {
  display: none;
} */
/*-------------------------------------------------------------------------------

 商品一覧 / fs

-------------------------------------------------------------------------------*/
.contents_cate_title {
  margin-bottom: 40px;
  font-size: 1.16666rem;
}
.contents_cate_title h1 {
  margin: 20px 0;
  font-size: 1.5rem;
  font-weight: bold;
}
/* カテゴリリスト
----------------------------------------------------------- */
/* 商品一覧リスト
----------------------------------------------------------- */
.fs-c-productList__list .fs-c-productName__copy {
  display: none;
}
.fs-c-productList__list__item {
  border-bottom: none;
}
/*-------------------------------------------------------------------------------

 商品詳細 / fs

-------------------------------------------------------------------------------*/
.fs-c-productNameHeading {
  display: block;
  font-size: 1.33333rem;
  font-weight: normal;
}
.fs-c-productNameHeading__copy {
  display: block;
  margin-bottom: 15px;
  font-size: 1.33333rem;
}
.fs-c-productNameHeading__name {
  display: block;
  margin-bottom: 15px;
  font-size: 2rem;
}
.fs-c-variationCart--withImage > li {
  position: relative;
  padding-right: 40px;
  -ms-grid-columns: ;
  grid-template-columns: auto 1fr 2em 170px;
}
.fs-c-button--primary.fs-c-button--addToCart--variation {
  position: relative;
  text-align: left;
}
.fs-c-button--primary.fs-c-button--addToCart--variation::before {
  position: absolute;
  content: '';
  right: 10px;
  top: 50%;
  width: 16px;
  height: 12px;
  margin-top: -6px;
  background: url('data:image/svg+xml,%3Csvg%20enable-background%3D%22new%200%200%2010%207.1%22%20viewBox%3D%220%200%2010%207.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m6.4%200-.3.4%202.9%202.9h-9v.5h9l-2.9%203%20.3.3%203.4-3.3.2-.2z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E') center center no-repeat;
  background-size: 100% auto;
}
.fs-l-productLayout .fs-c-button--particular.fs-c-button--addToWishList--icon, .fs-l-productLayout .fs-c-button--particular.fs-c-button--removeFromWishList--icon, .fs-l-productLayout .fs-c-button--particular.fs-c-button--displayPassword, .fs-l-productLayout .fs-c-button--particular.fs-c-button--hidePassword {
  position: absolute;
  top: 4px;
  right: 4px;
}
/* 商品画像サムネイル */
.fs-c-productThumbnail {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  flex-wrap: nowrap;
}
.fs-c-productThumbnail__image {
  flex-basis: max-content;
  min-width: 0;
}
/* pop up image */
.fs-c-productImageModal {
  z-index: 999999;
}
.fs-c-productImageModal__inner {
  height: 100%;
}
/*-------------------------------------------------------------------------------

 カート / fs

-------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------

 会員登録 / fs

-------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------

 ログイン / fs

-------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------

 マイページ / fs

-------------------------------------------------------------------------------*/
/* /////////////////////////////////////////////////////////////////////////////

 汎用CSS

///////////////////////////////////////////////////////////////////////////// */
/* テキスト関係 --------------------- */
.attention { /* 注意色(基本赤) */
  color: #CC0000;
}
.attentionB { /* 注意色(基本赤) */
  color: #CC0000;
  font-weight: bold;
}
.bold {
  font-weight: bold;
}
.text_SS {
  font-size: 75%;
}
.text_S {
  font-size: 86%;
}
.text_L {
  font-size: 120%;
}
.text_LL {
  font-size: 150%;
}
.text_LLL {
  font-size: 180%;
}
/* テキスト位置設定 ---------------- */
.entry_content p.center, .center {
  margin: auto;
  text-align: center;
}
.left {
  text-align: left;
}
.right {
  text-align: right;
}
/* マージン関係 ------------------- */
.m0 {
  margin: 0;
}
.m10 {
  margin: 10px;
}
.mT10 {
  margin-top: 10px;
}
.mT20 {
  margin-top: 20px;
}
.mB5 {
  margin-bottom: 5px;
}
.mB10 {
  margin-bottom: 10px;
}
.mB20 {
  margin-bottom: 20px;
}
.mR5 {
  margin-right: 5px;
}
.mR10 {
  margin-right: 10px;
}
.mR20 {
  margin-right: 20px;
}
.mL5 {
  margin-left: 5px;
}
.mL10 {
  margin-left: 10px;
}
.mL20 {
  margin-left: 20px;
}
.mRL10 {
  margin: auto 10px;
}
/*　パディング関係 ------------------ */
.p0 {
  padding: 0;
}
.p10 {
  padding: 10px;
}
.pT5 {
  padding-top: 5px;
}
.pT10 {
  padding-top: 10px;
}
.pB10 {
  padding-bottom: 10px;
}
.pR10 {
  padding-right: 10px;
}
.pL10 {
  padding-left: 10px;
}
.pB20 {
  padding-bottom: 20px;
}
.pRL10 {
  padding: auto 10px;
}
/* フロート関係 ------------------- */
.floatLeft {
  float: left;
}
.floatRight {
  float: right;
}
.clear, .clearBoth {
  clear: both;
}
.clearfix {
  /zoom: 1; /* IE6-7 */
}
.clearfix:after { /* modern */
  content: '';
  display: block;
  clear: both;
  height: 0;
}
/* 画像関係
-----------------------------------------------------------*/
.figOne {
  margin-bottom: 40px;
}
.figLeft, .figRight {
  display: block;
  margin: 0 auto 15px;
  text-align: center;
}
.fig_list {
  margin: 0 -10px 20px;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.fig_list li {
  flex-grow: 0;
  width: 33.33333%;
}
.fig_list li div {
  padding: 0 10px 20px;
}