@charset "euc-jp";


/* ##############################################################################

    RESET

############################################################################## */
  body, div, dl, dt, dd, ul, ol, li,
  h1, h2, h3, h4, h5, h6, pre, code,
  form, fieldset, legend, input, textarea,
  p, blockquote, th, td {
    margin: 0;
    padding: 0;
  }
  .none_border_table,
  .product_option_table table {
    border-spacing: 0;
    border-collapse: collapse;
  }
  fieldset,
  img {
    border: 0;
  }
  address, caption, cite, code,
  dfn, em, strong, th, var {
    font-weight: normal;
    font-style: normal;
  }

  ol, ul {
    list-style: none;
  }

  caption, th {
    text-align: left;
  }
  h1, h2, h3, h4, h5, h6 {
    font-weight: normal;
    font-size: 100%;
  }
  q::before,
  q::after {
    content: '';
  }
  abbr, acronym {
    border: 0;
    font-variant: normal;
  }
  sup {
    vertical-align: text-top;
  }
  sub {
    vertical-align: text-bottom;
  }
  input,
  textarea,
  select {
    font-weight: inherit;
    font-size: inherit;
    font-family: inherit;
  }
  input,
  textarea,
  selec,
  button {
    outline: none;
  }
  legend {
    color: #2F2F2F;
  }
  img {
    max-width: 100%;
    height: auto;
  }
  *,
  *::after,
  *::before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }

  /* font size */
  body {
    font: 14px/1.231 'YuGothic', '游ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', sans-serif;
    font-weight: 500;
    font-feature-settings: "palt";
    line-height: 1.8;
    letter-spacing: .08em;
    *font-size: small;
    *font: x-small;
    color: #2F2F2F;
    background-color: #F4F4F4;
    -webkit-font-smoothing: antialiased;
  }
  @media all and (-ms-high-contrast:none) {
    body {
      font-family: 'メイリオ', 'Meiryo', 'Lato', 'YuGothic', '游ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
    }
  }
  table {
    font: 100%;
    font-size: inherit;
  }
  pre, code, kbd, samp, tt {
    font-family: monospace;
    line-height: 100%;
    *font-size: 108%;
  }

  /* common */
  a {
    color: #3579bf;
    text-decoration: none;
    transition: all .4s ease-out;
    outline : none;
  }
  input[type="text"],
  textarea,
  select {
    min-height: 32px;
    border: 1px solid #888;
    padding: 0 4px;
    border-radius: 2px;
    color: #575757;
    background-color: #fff;
    letter-spacing: .07em;
    cursor: pointer;
  }
  /* clearfix */
  .clearfix {
    *zoom: 1;
  }
    .clearfix::before, .clearfix::after {
      display: table;
      content: "";
    }
    .clearfix::after {
      clear: both;
    }

  /* icons */
  .icon::before,
  .ie_icon {
    display: block;
    float: left;
    margin-right: 6px;
    transform: translateY(4px);
    width: 16px;
    height: 16px;
    background-image: url(https://img.shop-pro.jp/tmpl_img/63/icons16.png);
    background-repeat: no-repeat;
    content: "";
  }
    .icon_myaccount::before,
    .ie_icon_myaccount {
      background-position: left -96px;
    }
    .icon_regist::before,
    .ie_icon_regist {
      background-position: left -192px;
    }
    .icon_login::before,
    .ie_icon_login {
      background-position: left -224px;
    }
    .icon_logout::before,
    .ie_icon_logout {
      background-position: left -208px;
    }
    .icon_search::before,
    .ie_icon_search {
      background-position: left -16px;
    }
    .icon_viewcart::before,
    .ie_icon_viewcart {
      background-position: left -0px;
    }
    .icon_sort::before,
    .ie_icon_sort {
      background-position: left -112px;
    }
    .icon_prev::before,
    .ie_icon_prev {
      margin-right: 0;
      background-position: left -32px;
    }
    .icon_next::before,
    .ie_icon_next {
      float: right;
      margin-right: 0;
      background-position: right -48px;
    }
    .icon_prev_dis::before,
    .ie_icon_prev_dis {
      margin-right: 0;
      background-position: left -64px;
    }
    .icon_next_dis::before,
    .ie_icon_next_dis {
      float: right;
      margin-right: 0;
      background-position: right -80px;
    }
    .icon_lst::before,
    .ie_icon_lst {
      margin-right: 0;
      background-position: left -176px;
    }
      .footer_lst .icon_lst::before,
      .footer_lst .ie_icon_lst {
        margin-left: -16px;
      }
    .icon_down::before,
    .ie_icon_down {
      display: none;
    }
    .icon_category_lst::before,
    .ie_icon_category_lst {
      display: none;
    }
    .icon_review::before,
    .ie_icon_review {
      background-position: left -240px;
    }
    .icon_review_post::before,
    .ie_icon_review_post {
      background-position: left -256px;
    }

  /* layout */
  .layout_wrapper {
    margin: 0 auto;
    width: 94%;
    max-width: 1200px;
  }
  .layout_header,
  .layout_container,
  .layout_footer {
    margin: 0 auto;
  }


/* ##############################################################################

    COMMON

############################################################################## */

  html {
    height: 100%;
    overflow-y: scroll;
  }
  body {
    height: 100%;
  }

/* layout
**************************************** */

  /* --- inner --- */
  .inner {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
  }
  .inner-sm { max-width: 880px; }
  .inner-lg { max-width: calc(100% - 112px); }

  /* --- section_pdg --- */
  .section_pdg {
    padding-top: 80px;
    padding-bottom: 80px;
  }

  /* --- float --- */
  .flt-rgt { float: right; }
  .flt-lft { float: left; }

  /* --- position --- */
  .pos_rel {
    position: relative;
    z-index: 0;
  }

  /* --- margin --- */
  .mgn-btm8 { margin-bottom: 8px; }
  .mgn-btm16 { margin-bottom: 16px; }
  .mgn-btm24 { margin-bottom: 24px; }
  .mgn-btm32 { margin-bottom: 32px; }
  .mgn-btm40 { margin-bottom: 40px; }
  .mgn-btm48 { margin-bottom: 48px; }
  .mgn-btm56 { margin-bottom: 56px; }
  .mgn-btm64 { margin-bottom: 64px; }
  .mgn-btm72 { margin-bottom: 72px; }
  .mgn-btm80 { margin-bottom: 80px; }

  /* --- pc or sp --- */
  .pc-none,
  .pc-none-inline,
  .pc-none-table,
  .pc-none-flex { display: none; }
  .sp-none { display: block; }
  .sp-none-inline { display: inline; }
  .sp-none-table { display: table; }
  .sp-none-flex {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }

  @media screen and  (max-width: 767px) {
    .inner { width: 86%; }
    .mgn-btm16 { margin-bottom: 8px; }
    .mgn-btm24 { margin-bottom: 16px; }
    .mgn-btm32 { margin-bottom: 16px; }
    .mgn-btm40 { margin-bottom: 24px; }
    .mgn-btm48 { margin-bottom: 24px; }
    .mgn-btm56 { margin-bottom: 32px; }
    .mgn-btm64 { margin-bottom: 32px; }
    .mgn-btm72 { margin-bottom: 40px; }
    .mgn-btm80 { margin-bottom: 40px; }
    .sp-none,
    .sp-none-inline,
    .sp-none-table,
    .sp-none-flex { display: none; }
    .pc-none { display: block; }
    .pc-none-inline { display: inline; }
    .pc-none-table { display: table; }
    .pc-none-flex {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
    }
  }

/* flex
**************************************** */

  .flex {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }

  .flex-inline {
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }

  .flex-reverse {
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  .flex-column {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .flex-j-start {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .flex-j-end {
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .flex-j-ctr {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .flex-j-between {
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .flex-j-around {
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }

  .flex-a-start {
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .flex-a-end {
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
  .flex-a-ctr {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .flex-a-baseline {
    -webkit-align-items: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
  }
  .flex-a-stretch {
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }

  .flex-c-nowrap {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  .flex-c-wrap {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .flex-c-reverse {
    -webkit-flex-wrap: wrap-reverse;
    -ms-flex-wrap: wrap-reverse;
    flex-wrap: wrap-reverse;
  }
  .flex-c-start {
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
  }
  .flex-c-start {
    -webkit-align-items: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
  }
  .flex-c-end {
    -webkit-align-content: flex-end;
    -ms-flex-line-pack: end;
    align-content: flex-end;
  }
  .flex-c-ctr {
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
  }
  .flex-c-baseline {
    -webkit-align-content: baseline;
    -ms-flex-line-pack: baseline;
    align-content: baseline;
  }
  .flex-c-stretch {
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
  }

  .flex-col2,
  .flex-col3,
  .flex-col4 {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .flex-col2 > * {
    width: 48.5%;
    margin-right: 3%;
    margin-bottom: 3%;
  }
  .flex-col2:not(.flex-reverse) > *:nth-child(even) { margin-right: 0; }
  .flex-col2.flex-reverse > *:nth-child(odd) { margin-right: 0; }
  .flex-col3 > * {
    width: 31.33%;
    margin-right: 3%;
    margin-bottom: 3%;
  }
  .flex-col3 > *:nth-child(3n+3) { margin-right: 0; }
  .flex-col4>* {
    width: 23.5%;
    margin-right: 2%;
    margin-bottom: 2%;
  }
  .flex-col4 > *:nth-child(4n+4) { margin-right: 0; }

  @media screen and (max-width: 768px) {

    .flex-sp-block {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }

    .flex-sp-block.flex-col2 > *,
    .flex-sp-block.flex-col3 > * {
      width: 100%;
      margin-right: 0;
      margin-bottom: 24px;
    }
    .flex-sp-block.flex-col2 > *:last-child {
      margin-bottom: 0;
    }

    .flex-sp-col2 > *,
    .flex-sp-col2.flex-col3 > *:nth-child(3n+3) {
      width: 48.5%;
      margin-right: 3%;
      margin-bottom: 3%;
    }
    .flex-sp-col2 > *:nth-child(even) { margin-right: 0; }
    .flex-sp-col3 > *,
    .flex-sp-col3.flex-col4 > *:nth-child(4n+4) {
      width: 31.33%;
      margin-right: 3%;
      margin-bottom: 3%;
    }
    .flex-sp-col3 > *:nth-child(3n+3) { margin-right: 0; }

  }

/* ttl
**************************************** */

  /* --- page_ttl --- */
  .page_ttl {
    background: #eee;
    padding: 80px 0;
    text-align: center;
  }
  .page_ttl-jp,
  .page_ttl-en { display: block; }
  .page_ttl-jp {
    font-size: 320%;
  }
  .page_ttl-en {
    font-size: 120%;
    text-transform: uppercase;
  }

  /* --- section_ttl --- */
  .section_ttl {
    font-size: 220%;
    font-weight: normal;
    line-height: 1.6;
    letter-spacing: .1em;
  }
  .section_ttl-sm { font-size: 267%; }
  .section_catch {
    text-align: center;
    font-size: 120%;
    font-weight: 700;
  }

  /* --- heading --- */
  .heading-1,
  .heading-2,
  .heading-3,
  .heading-4 {
    font-weight: bold;
    letter-spacing: .15em;
  }
  .heading-1,
  .ttl_h2 {
    position: relative;
    margin-bottom: 40px;
    font-size: 193%;
    line-height: 1.4;
    text-align: center;
  }
  .heading-1::before,
  .heading-1::after,
  .ttl_h2::before,
  .ttl_h2::after {
    content: "";
    position: absolute;
    top: calc(50% - 2px);
    display:block;
    width: calc(50% - 140px);
    height: 5px;
    background-image: url(https://file003.shop-pro.jp/PA01440/484/common/line.png);
  }
  .heading-1::before,
  .ttl_h2::before {
    left: 0;
  }
  .heading-1::after,
  .ttl_h2::after {
    right: 0;
  }
  .heading-1 span,
  .ttl_h2 span {
    display: block;
    letter-spacing: .1em;
    font-size: 75%;
  }
  .heading-2 {
    padding-bottom: 10px;
    margin-bottom: 20px;
    border-bottom-width: 3px;
    border-bottom-style: double;
    font-size: 129%;
    line-height: 1.6;
  }
  .heading-2 span {
    display: block;
    letter-spacing: .1em;
    font-size: 78%;
  }
  .ttl_h3,
  .heading-3 {
    padding: 16px 0;
    margin-bottom: 22px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 115%;
  }
  .heading-3.big {
    font-size: 172%;
  }
  .heading-3.no_bdr {
    border: none;
    margin-bottom: 0;
  }
  .heading-4 {
    margin-bottom: 12px;
    font-size: 100%;
  }
  .heading-5 {
    position: relative;
    margin-bottom: 22px;
    padding-left: 28px;
    font-size: 172%;
    line-height: 1.3;
    letter-spacing: .1em;
    transform: translateY(-6px);
  }
  .heading-5::before {
    content: "";
    position: absolute;
    top: 18px;
    left: 0;
    display: inline-block;
    width: 12px;
    border-bottom-width: 2px;
    border-bottom-style: solid;
  }
  @media screen and (max-width: 767px) {
    .heading-1,
    .ttl_h2 {
      margin-bottom: 24px;
      font-size: 172%;
    }
    .heading-1::before,
    .heading-1::after,
    .ttl_h2::before,
    .ttl_h2::after {
      width: calc(50% - 120px);
    }
    .ttl_h3,
    .heading-3 {
      padding: 14px 0;
      margin-bottom: 18px;
    }
    .heading-3.big {
      font-size: 150%;
    }
    .heading-5 {
      margin-bottom: 28px;
    }
  }

/* txt
**************************************** */
  .txt-lg { font-size: 107%; }
  .txt-sm { font-size: 93%; }
  .txt-ctr { text-align: center; }
  .txt-rgt { text-align: right; }
  .txt-attention {
    font-size: 88%;
    color: #999;
  }
  .txt-attention-kome {
    position: relative;
    padding-left: 1.4em;
  }
  .txt-attention-kome::before {
    content: '※';
    position: absolute;
    left: 0;
    top: 0;
  }
  .txtarea p:not(:last-child) { margin-bottom: 1em; }

/* font
**************************************** */
  .ttl_h1,
  .ttl_h2,
  .ttl_h3,
  .font-jp { font-family: "A1 Mincho"; transform: rotate(0.05deg); }
  .font-jp2 { font-family: "Hiragino Mincho W3 JIS2004"; transform: rotate(0.05deg); }
  .font-en { font-family: 'Cardo', serif; font-weight: 500; }

/* table
**************************************** */
  table { width: 100%; }

  /* --- table_default --- */
  .table_default {
    margin: 0 auto;
    border-top: 1px solid #DCDCDC;
    border-spacing: 0;
    border-collapse: collapse;
  }
  .table_default th {
    padding: 1em .5em 1em 1em;
    border-right: 1px solid #DCDCDC;
    border-bottom: 1px solid #DCDCDC;
  }
  .table_default td {
    padding-top: 1em;
    padding-bottom: 1em;
    padding-left: 1em;
    border-bottom: 1px solid #DCDCDC;
  }

  /* --- table_line --- */
  .table_line th,
  .table_line td {
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 24px;
    padding-right: 24px;
  }
  .table_line th {
    background-color: #DCDCDC;
    border: 1px solid #DCDCDC;
    color: #fff;
    font-size: 107%;
  }
  .table_line td {
    border: 1px solid #DCDCDC;
    font-size: 93%;
  }

/* btn
**************************************** */
  .btn:not(.txt-ctr) {
    text-align: right;
  }
  .btn > * {
    position: relative;
    display: inline-block;
    padding: 10px 32px 12px 32px;
    font-size: 93%;
    line-height: 1;
    border-radius: 2px;
    color: #fff;
    background-color: #1e2235;
    letter-spacing: .15em;
  }
  .btn.big > * {
    padding: 14px 40px 16px 40px;
    font-size: 144%;
  }
  .btn > *::before {
    content: "";
    position: absolute;
    top: calc(50% - 4px);
    right: 12px;
    transform: rotate(45deg);
    display: block;
    width: 6px;
    height: 6px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
  }
  @media all and (-ms-high-contrast:none) {
    .btn > * {
      padding: 12px 32px 10px 32px;
    }
  }
  @media screen and (max-width: 767px) {
    .btn.big > * {
      padding: 14px 32px 16px 32px;
      font-size: 107%;
      line-height: 1.5;
    }
  }

/* item_list
*************************************************** */
  .item_list li {
    counter-increment: number;
  }
  .item_list a {
    display: block;
    color: #2F2F2F;
  }
  .item_list a:hover {
    opacity: .8;
    text-decoration: none;
  }
  .item_list .imgarea {
    width: 100%;
    margin-bottom: 16px;
    background-position: center;
    background-size: cover;
  }
  .item_list .imgarea::before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 100%;
  }
  .item_list .name {
    margin-bottom: 8px;
    color: #2F2F2F;
    font-size: 122%;
    letter-spacing: .12em;
    line-height: 1.4;
  }
  .item_list .price {
    margin-bottom: 16px;
    color: #5D5D5D;
    font-size: 108%;
    letter-spacing: .12em;
  }
  .item_list .txt {
    color: #A0A0A0;
  }
  .item_list .txt + .btn {
    margin-top: 32px;
  }
  .item_list .num {
    margin-bottom: 12px;
  }
  .item_list .num::before {
    content: counter(number);
    display: block;
    text-align: center;
    font-size: 179%;
    line-height: 1;
    color: #9B9081;
  }
  .item_list li:nth-of-type(1) .num::before {
    color: #C6AF79;
  }
  .item_list li:nth-of-type(2) .num::before {
    color: #98ADCA;
  }
  .noimage {
    background-image: url(https://file003.shop-pro.jp/PA01440/484/common/logo-footer.png);
    background-color: #E1E1E1;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 70% auto!important;
  }
  @media screen and (max-width: 767px) {
    .item_list .price {
      margin-bottom: 12px!important;
    }
    .item_list .txt {
      font-size: 93%;
    }
    .item_list .txt + .btn {
      margin-top: 20px;
    }
  }


/* ##############################################################################

    HEADER

############################################################################## */

/* header_main
**************************************** */
  .header_main {
    position: relative;
    height: 112px;
    padding: 30px;
    background-image: url(https://file003.shop-pro.jp/PA01440/484/common/hero_ptn01.jpg);
    background-position: bottom center;
    overflow: hidden;
  }
  .header_main::before,
  .header_main::after {
    content: "";
    position: absolute;
    top: 0;
    z-index: 1;
    display: block;
    width: 808px;
    height: 112px;
    pointer-events: none;
  }
  .header_main::before {
    left: 0;
    background-image: url(https://file003.shop-pro.jp/PA01440/484/common/header-bg-deco01.png);
  }
  .header_main::after {
    right: 0;
    background-image: url(https://file003.shop-pro.jp/PA01440/484/common/header-bg-deco02.png);
  }

  /* --- header--logo --- */
  .header--logo {
    position: absolute;
    top: 30px;
    left: calc(50% - 133px);
    z-index: 2;
  }

  /* --- header--link --- */
  .header--link {
    position: relative;
    z-index: 2;
    font-size: 93%;
  }
  .header--link li {
    margin-left: 1.5em;
  }
  .header--link a {
    color :#6A6A6A;
  }
  .header--link img {
    display: inline-block;
    margin-right: 6px;
  }

  @media screen and (max-width: 1310px) {
    .header--link .sp-none {
      display: none;
    }
  }

  @media screen and (max-width: 1070px) {
    .header--link {
      opacity: 0;
      pointer-events: none;
    }
  }

  @media screen and (max-width: 767px) {
    .header_main {
      height: auto;
      padding: 18px 0 12px;
    }
    .header_main .layout_wrapper.flex-j-end {
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
    }
    .header_main::before {
      opacity: .4;
    }
    .header_main::after {
      display: none;
    }

    /* --- header--logo --- */
    .header--logo {
      position: static;
      width: 100%;
      margin-bottom: 12px;
      text-align: center;
    }
    .header--logo img {
      width: 200px;
    }

    /* --- header--link --- */
    .header--link {
      opacity: 1;
      pointer-events: auto;
    }
    .header--link li:first-of-type {
      margin-left: 0;
    }
  }

  @media screen and (max-width: 375px) {
    .header--link li {
      margin-left: .8em;
    }
    .header--link img {
      margin-right: 2px;
    }
  }


/* header--search
**************************************** */
  .header--search {
    padding: 20px 0;
    background-color: #fff;
  }
  .search_area {
    width: calc(100% - 456px);
  }
  .header--search + #wrapper {
    margin-top: 56px;
  }

  /* --- search_area--cat --- */
  .search_area--cat {
    position: relative;
    width: 156px;
    margin-right: 4px;
  }
  .search_area--cat .prd_search_select {
    width: 100%;
    height: 32px;
    padding: 0 4px;
    border: solid 1px #888;
    border-radius: 2px;
    color: #575757;
    background-color: #fff;
    letter-spacing: .07em;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
  .search_area--cat::before {
    content: "";
    position: absolute;
    top: calc(50% - 5px);
    right: 14px;
    display: block;
    width: 6px;
    height: 6px;
    transform: rotate(135deg);
    border-top-width: 1px;
    border-top-style: solid;
    border-right-width: 1px;
    border-right-style: solid;
  }

  /* --- search_area--form --- */
  .search_area--form {
    position: relative;
    width: calc(100% - 160px);
  }
  .search_area--form .prd_search_keyword {
    position: relative;
    width: 100%;
    height: 32px;
    padding: 0 72px 0 8px;
    color: #575757;
    border: 1px solid #888888;
    border-radius: 2px 4px 4px 2px;
    cursor: text;
  }
  .prd_search_btn {
    position: absolute;
    top: 0;
    right: 0;
    width: 64px;
    height: 32px;
    border: none;
    background-color: #3B3B3B;
    background-image: url(https://file003.shop-pro.jp/PA01440/484/common/header_search.png);
    background-repeat: no-repeat;
    background-size: 29px auto;
    background-position: center;
    border-radius: 0 4px 4px 0;
    cursor: pointer;
    transition: all .4s ease-out;
  }
  .prd_search_btn:hover {
    background-color: #111;
  }

  /* --- hot_words --- */
  .hot_words {
    width: 440px;
    height: 32px;
    margin-left: 16px;
    overflow: hidden;
  }
  .hot_words dt{
    font-size: 115%;
    letter-spacing: .19em;
    color :#BD9D69;
  }
  .hot_words dt img{
    display: inline-block;
    margin-right: 4px;
    transform: translateY(4px);
  }
  .hot_words a {
    display: block;
    margin-left: 8px;
    margin-bottom: 5px;
    padding: 6px 16px;
    line-height: 1;
    font-size: 93%;
    color: #575757;
    border: 1px solid #3B3B3B;
    border-radius: 2px;
  }
  .hot_words a:hover {
    color: #fff;
    background-color: #3B3B3B;
  }

  @media all and (-ms-high-contrast:none) {
    .hot_words a {
      font-size: 86%;
    }
    .search_area--cat::before {
      display: none;
    }
  }

  @media screen and (max-width: 767px) {
    .header--search {
      padding: 24px 0;
    }
    .header--search + #wrapper {
      margin-top: 32px;
    }
    .search_area {
      width: 100%;
      font-size: 16px;
    }

    /* --- search_area--cat --- */
    .search_area--cat {
      width: 140px;
    }
    .header--search .search_area--cat::before {
      right: 6px;
    }

    /* --- search_area--form --- */
    .search_area--form {
      width: calc(100% - 144px);
    }
    .prd_search_btn {
      background-image: url(https://file003.shop-pro.jp/PA01440/484/common/header_search@2x.png);
    }

    /* --- hot_words --- */
    .hot_words {
      width: 100%;
      margin-left: 0;
    }
  }

 @media screen and (max-width: 375px) {
    .search_area--cat {
      width: 100px;
    }
   .search_area--form {
      width: calc(100% - 100px);
    }
  }

/* hero
**************************************** */
  .hero {
    margin-bottom: 56px;
  }
  .hero li{
    text-align: center;
  }

  /* --- slick --- */
  .slick-arrow {
    position: absolute;
    top: calc(50% - 45px);
    z-index: 10;
    width: 30px;
    height: 30px;
    border: none;
    border-top: solid 1px #fff;
    border-left: solid 1px #fff;
    background: none;
    font-size: 0;
    cursor: pointer;
  }
  .slick-prev {
    left: 14%;
    transform: rotate(-45deg);
  }
  .slick-next {
    right: 14%;
    transform: rotate(135deg);
  }
  .slick-dots {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .slick-dots button {
    width: 8px;
    height: 8px;
    padding: 0;
    margin: 24px 8px;
    border: none;
    font-size: 0;
    border-radius: 4px;
    background-color: #DCDCDC;
    cursor: pointer;
  }
  .slick-dots .slick-active button {
    background-color: #3B3B3B;
  }

  @media screen and (max-width: 767px) {
    .hero {
      margin-bottom: 16px;
    }

    /* --- slick --- */
    .slick-dots button {
      margin: 16px 8px;
    }
  }

/* カラーミーデフォ
**************************************** */
  .header_btn {
    font-size: 92.307%;
    line-height: 1.5;
  }
    .header_btn a {
      color: #444;
    }
  .viewcart_btn {
    float: right;
    margin-bottom: .5em;
    margin-left: 1.063%;
  }
  .header_headline_nav {
    display:none;
  }
  .header_member_nav {
    float: right;
    width: 29.787%;
  }
    .header_member_nav li {
      float: right;
      white-space: nowrap;
      margin-left: 3.571%;
    }
    .member_login_name {
      float: right;
      clear: right;
      margin-bottom: .5em;
      text-align: right;
      line-height: 1.5;
    }

  /* delivery price */
  .header_delivery_price {
    padding: .5em 1em .3em;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    background-color: #df7676;
    color: #fff;
    line-height: 1.5;
    float: right;
    clear: right;
  }

  /* product search form */
  .prd_search_block {
    position: relative;
    float: left;
    margin: -6px 0 0 0;
    padding: 6px 0 0 1px;
    width: 30.212%;
    font-size: 92.307%;
  }
    .prd_search_block.open {
      padding: 5px 0;
      border: 1px solid #888;
    }
    .prd_search_form_btn {
      cursor: pointer;
      display: inline-block;
      margin-left: 5px;
      padding: .3em .5em;
      border: 1px solid #a0a0a0;
      -webkit-border-radius: 4px;
      border-radius: 4px;
    }
    .prd_search_form {
      -webkit-box-sizing: content-box;
      -moz-box-sizing: content-box;
      box-sizing: content-box;
      overflow: hidden;
    }
    .prd_search_optioncategory {
      margin-top: 10px;
      line-height: 1.5;
    }
    .prd_search_select option {
      word-break: break-all;
    }

  /* shopname logo */
  .shop_name {
    clear: both;
    padding: 1em 10% 2em;
    text-align: center;
    line-height: 1.5;
    margin-top: 2em;
    border-bottom: 1px solid #888;
  }

    .shop_name a {
      color: #444;
      text-decoration: none;
    }
      .shop_name a:hover {
        text-decoration: underline;
      }
    .shop_name p {
      margin-bottom: 10px;
      text-align: center;
      font-size: 246.153%;
    }
    .shop_name img {
      max-width: 100%;
      height: inherit;
    }

  /* header global nav */
  .header_global_nav {
    background-color: #1E2235;
  }
  .header_nav_lst {
    font-size: 108%;
    letter-spacing: .19em;
    text-align: center;
  }
  .header_nav_lst li {
    flex: auto;
  }
  .header_nav_lst a {
    display: block;
    padding: 9px 0 11px;
    color: #fff;
  }
  .header_nav_lst a:hover {
    background-color: #040509;
  }
  .header_nav_menu {
    position: relative;
    display: inline;
    margin: 0 1em;
    padding: 0 1em;
    text-align: center;
    font-weight: bold;
    line-height: 4;
  }
  .header_nav_menu a,
  .header_nav_menu span {
    display: inline;
    color: #fff;
    text-decoration: none;
    cursor: pointer;
  }
  .header_nav_menu_category img {
    position: relative;
    width: 16px;
    height: 16px;
  }
  .header_category_lst {
    position: absolute;
    left: 0;
    z-index: 101;
    display: none;
    min-width: 100%;
    width: auto;
    border-top: 1px solid #aaa;
    background-color: #fff;
  }
  .header_category_lst li {
    display: block;
    float: none;
    border-right: 1px solid #888;
    border-bottom: 1px solid #888;
    border-left: 1px solid #888;
    text-align: left;
    white-space: nowrap;
    word-break: break-all;
    line-height: 1.4;
  }
  .header_category_lst a {
    display: block !important;
    padding: 1em;
    background-color: #fff;
  }

  @media all and (-ms-high-contrast:none) {
    .header_nav_lst li {
      width: calc(99% / 7);
    }
  }

  @media screen and (max-width: 767px) {
    .header_nav_lst {
      width: 100%;
      height: auto;
      line-height: 1.6;
      font-size: 100%;
    }
    .header_nav_lst li {
      width: calc(100% / 3);
      height: auto;
    }
    .header_nav_lst li:nth-of-type(1), 
    .header_nav_lst li:nth-of-type(2) {
      width: 50%;
      border-bottom: solid 1px #4f515a;
    }
    .header_nav_lst li:not(:nth-of-type(2)):not(:nth-of-type(7)) { border-right: solid 1px #4f515a; }
    .header_nav_lst a {
      display: flex;
      align-items: center;
      justify-content: center;
      height: 100%;
      padding: 8px 18px;
    }
    .header_nav_lst span {
      display: none;
    }
  }

/* カラーミーデフォ
**************************************** */

  /* topicpath */
  .topicpath_nav {
    margin-bottom: 24px;
    font-size: 93%;
  }
    .topicpath_nav li {
      display: inline;
      margin-right: .2em;
    }
    .topicpath_nav li a {
      margin-left: .2em;
      color: #444;
      text-decoration: none;
    }
    .topicpath_nav li a:hover {
      text-decoration: underline;
    }

  /* prduct list */
  .prd_lst {
    position: relative;
    clear: both;
  }
  .prd_lst_unit {
    float: left;
    margin-bottom: 32px!important;
    word-break: break-all;
  }
    .prd_lst_unit_s {
      width: 22.916%;
    }
    .prd_lst_unit_m {
      width: 31.25%;
    }
    .prd_lst_unit a {
      color: #000;
      text-decoration: none;
    }
    .prd_lst_img {
      display: block;
      margin: 0 auto 20px;
      max-width: 100%;
      height: inherit;
    }
    .prd_lst_span {
      display: block;
    }
    .prd_lst_exp {
      color: #666;
    }
    .prd_lst_price,
    .prd_lst_soldout {
      font-weight: bold;
      font-size: 92.307%;
    }
    .prd_lst_regular {
      color: #666;
      text-decoration: line-through;
    }
    .prd_lst_none {
      clear: both;
      text-align: center;
      font-size: 123.076%;
      line-height: 16;
    }
  .prd_lst_sort {
    float: right;
    margin: 20px 0;
  }
    .prd_lst_sort a {
      color: #444;
      text-decoration: underline;
    }
    .prd_lst_pager {
      position: relative;
      overflow: hidden;
      margin-top: 2em;
    }
    .prd_lst_pager ul {
      position: relative;
      left: 50%;
      float: left;
    }
    .prd_lst_pager li {
      position: relative;
      left: -50%;
      float: left;
    }
    .prd_lst_pager .prd_lst_pager_prev,
    .prd_lst_pager .prd_lst_pager_next {
      padding: .5em 0;
      width: 8em;
    }
    .prd_lst_pager .prd_lst_pager_next {
      text-align: right;
    }
    .icon_prev_dis,
    .icon_next_dis {
      display: block;
      color: #aaa;
    }
    .prd_lst_pager a {
      color: #444;
      text-decoration: none;
    }
    .prd_lst_pager a:hover {
      text-decoration: underline;
    }
  .prd_lst_pos b {
    padding: 0 8px;
    font-size: 143%;
  }


/* ##############################################################################

    MAIN / SIDE

############################################################################## */

/* main_column
**************************************** */
  .main_column {
    width: calc(100% - 280px);
  }

  @media screen and (max-width: 767px) {
    .main_column {
      width: 100%;
      margin-bottom: 56px;
    }
  }

/* side_column
**************************************** */
  .side_column {
    width: 240px;
  }
  .side_section {
    padding: 28px 20px;
    margin-bottom: 20px;
    background-color: #fff;
  }

  /* --- side--search  --- */
  .side--search .search_area {
    width: 100%;
    margin-bottom: 26px;
  }
  .side--search .search_area--cat {
    margin-bottom: 8px;
  }
  .side--search .search_area--form {
    width: 100%;
  }
  .side--search .prd_search_btn {
    width: 36px;
    background-image: url(https://file003.shop-pro.jp/PA01440/484/common/icon-search_side.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 14px auto;
    background-color: transparent;
  }

  /* --- side--info  --- */
  .side--info .heading-2 {
    margin-bottom: 2px;
  }
  .side--link_list a {
    padding-top: 16px;
    padding-bottom: 16px;
    color: #2F2F2F;
  }
  .side--link_list li:last-of-type a {
    padding-bottom: 4px;
  }
  .side--link_list li:not(:last-of-type) a {
    border-bottom: solid 1px #DCDCDC;
  }
  .side--link_list a:hover {
    opacity: .5;
  }
  .side--link_list a:not(.flex) {
    display: block;
  }
  .side--link_list img {
    display: inline-block;
    margin-right: 8px;
    border-radius: 50%;
  }

  @media screen and (max-width: 767px) {
    .side_column{
      width: 100%;
    }
    .side--link_list,
    .side--info {
      display: none;
    }

    /* --- side--search  --- */
    .side--search .search_area--cat {
      width: 100%;
    }
    .side--search .search_area--cat {
      margin-bottom: 8px;
    }
    .side--search .prd_search_btn {
      background-image: url(https://file003.shop-pro.jp/PA01440/484/common/icon-search_side@2x.png);
    }
  }


/* ##############################################################################

    SUBPAGE

############################################################################## */
  .subpege_content {
    padding: 40px 24px;
    background-color: #fff;
  }

/* about
**************************************** */
  .about_section01 .txtarea {
    width: calc(100% - 356px);
  }
  .about_section02 .heading-1::before,
  .about_section02 .heading-1::after {
    width: calc(50% - 180px);
  }

@media screen and (max-width: 767px) {
  .about_section01 .txtarea {
    width: 100%;
  }
  .about_section02 .flex dt {
    order: 2;
    margin-bottom: 24px!important;
  }
  .about_section02 .flex dd {
    order: 1;
    margin-bottom: 24px!important;
  }
}


/* ##############################################################################

    FOOTER

############################################################################## */

#footer {
  margin-top: 120px;
}

@media screen and (max-width: 767px) {
  #footer {
    margin-top: 80px;
  }
}

/* カラーミーデフォ
**************************************** */
  .footer_section {
    float: left;
    margin-top: 1em;
    margin-right: 1.5%;
    margin-bottom: 15px;
    width: 23%;
  }
    .footer_section .ttl_h2 {
      margin-top: 0;
    }
  .footer_nav {
    position: relative;
    clear: both;
    padding: 2em 0;
    border-top: 1px solid #d8d8d8;
  }
  .footer_lst {
    font-size: 92.307%;
    line-height: 1.5;
  }
    .footer_lst li {
      word-break: break-all;
      margin-bottom: .5em;
      padding-left: 16px;
    }
    .footer_lst .footer_category_img {
      display: block;
      margin-bottom: .3em;
      max-width: 100%;
      height: auto;
    }
    .footer_lst a {
      color: #444;
      text-decoration: none;
    }
      .footer_lst a:hover {
        text-decoration: underline;
      }

/* footer--nav
**************************************** */
  .footer--nav {
    padding: 64px 0 16px;
    color: #2f2f2f;
    background-color: #E1E1E1;
  }
  .footer--nav_child {
    width: calc(33.333% - 40px);
    margin-bottom: 48px;
  }
  .footer--nav_child .heading-3 {
    margin-bottom: 18px;
    border-bottom: 3px double #1E2235;
  }
  .footer--nav_child li {
    width: 50%;
  }
  .footer--nav_child li a {
    display: block;
    padding: 4px 0;
    color: #2F2F2F;
  }
  .footer--nav_child li a:hover {
    opacity: .5;
  }
  .footer--nav_child li a::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 1px;
    margin-right: 10px;
    transform: translateY(-4px);
    background-color: #4F4F4F;
  }

  @media screen and (max-width: 767px) {
    .footer--nav {
      padding: 48px 8px 32px;
    }
    .footer--logo img {
      width: 200px;
    }
    .footer--nav_child {
      width: 100%;
      margin-bottom: 12px;
    }
    .footer--nav_child .heading-3 {
      margin-bottom: 14px;
    }
  }

/* footer--info
**************************************** */
  .footer--info {
    padding: 98px 0 58px;
    color: #fff;
    background-color: #1E2235;
  }
  .footer--info_child {
    width: calc(50% - 16px);
    margin-bottom: 48px;
  }
  .footer--info_child:nth-of-type(1) { order: 1; }
  .footer--info_child:nth-of-type(2) { order: 3; }
  .footer--info_child:nth-of-type(3) { order: 3; }
  .footer--info_child:nth-of-type(4) { order: 2; }
  .footer--info_child .txt {
    padding-right: 56px;
    color: #ADAFB9;
  }
  .footer--info_child .txt:not(:last-of-type) {
    margin-bottom: 24px;
  }
  .footer--info_child a {
    color: #ADAFB9;
    text-decoration: underline;
  }

  /* --- postage_table  --- */
  .postage_table {
    border-collapse: collapse;
    border-spacing: 0;
  }
  .postage_table th,
  .postage_table td {
    padding: 4px 8px;
    border: solid 1px #ADAFB9;
  }
  .postage_table th {
    background-color: #333748;
  }
  .postage_table th:first-of-type {
    width: 5em;
  }
  .postage_table th:last-of-type {
    width: 5.5em;
  }

  /* --- copyright  --- */
  .copyright {
    height: 40px;
    background-color: #0F0F11;
    color: rgba(255, 255, 255, .6);
    font-size: 86%;
  }
  .copyright * {
    margin: 0 12px;
  }

  @media all and (-ms-high-contrast:none) {
    .postage_table th:last-of-type {
      width: 6.5em;
    }
  }

  @media screen and (max-width: 767px) {
    .footer--info {
      padding: 32px 8px;
    }
    .footer--info_child {
      width: 100%;
      margin-bottom: 24px;
    }
    .footer--info_child:nth-of-type(1) { order: 1; }
    .footer--info_child:nth-of-type(2) { order: 2; }
    .footer--info_child:nth-of-type(3) { order: 3; }
    .footer--info_child:nth-of-type(4) { order: 4; }
    .footer--info_child .txt {
      padding-right: 0;
    }

    /* --- copyright  --- */
    .copyright * {
      margin: 0 8px;
    }
  }

/* カラーミーデフォ
**************************************** */
  /* list */
  .def_lst {
    border-top: 1px solid #eee;
  }
    .def_lst_dt {
      padding-top: 1em;
      padding-bottom: 1em;
      font-weight: bold;
      float: left;
      clear: both;
      width: 30%;
      word-break: break-all;
    }
    .def_lst_dd {
      padding-top: 1em;
      padding-bottom: 1em;
      padding-left: 35%;
      border-bottom: 1px solid #eee;
    }
      .def_lst_dd img {
        max-width: 100%;
        width: inherit;
        height: auto;
      }

  /* product option */
  .product_option_table {
    margin: 3em 0;
  }
    .product_option_table table {
      width: 100%;
      border-bottom: 1px solid #dadada;
      border-left: 1px solid #dadada;
    }
    .product_option_table th,
    .product_option_table td {
      padding: .8em .5em;
      border-top: 1px solid #dadada;
      border-right: 1px solid #dadada;
    }
    .product_option_table th {
      text-align: center;
    }
    .product_option_table td {
      vertical-align: top;
      text-align: center;
    }

  /* policy */
  #policy p {
    margin: 1em 0;
    color: #666;
    line-height: 1.8;
  }
  .policy_lead {
    padding-bottom: 1em;
    border-bottom: 1px solid #eee;
  }

  /* for ie7 - 8 */
  .ie_wrapper .header_global_nav {
    position: relative;
    z-index: 101;
  }
  .ie_wrapper .header_nav_menu {
    z-index: 60;
  }
  .ie_wrapper .header_nav_menu_category {
    z-index: 100;
  }
  .ie_wrapper .header_category_lst {
    top: 3em;
  }
  /* for ie7 */
  .ie.icon_prev,
  .ie.icon_prev_dis {
    margin-right: 2em;
  }
  .ie_wrapper .header_category_lst {
    top: 2.7em;
  }

  @media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 1.5) {
    .icon::before {
      background-image: url(https://img.shop-pro.jp/tmpl_img/63/icons16_2x.png) !important;
      -webkit-background-size: 16px 320px;
      background-size: 16px 320px;
    }
  }


@media screen and (max-width: 767px) {
  /* list */
    .def_lst_dt {
      padding-left: 8px;
      padding-right: 8px;
      padding-bottom: .3em;
      float: none;
      width: 100%;
    }
    .def_lst_dd {
      padding-top: 0;
      padding-left: 8px;
      padding-right: 8px;
      padding-bottom: 1em;
    }
}


/* ##############################################################################

    print

############################################################################## */
@media print {
  body {
    width: 1280px;
    transform: scale(0.8);
    -moz-transform: scale(0.8);
    -webkit-transform: scale(0.8);
    transform-origin: 0 0;
  }
}