@charset "UTF-8";
/*--------------------
共通設定
----------------------*/
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

a {
  text-decoration: none;
  color: #171717;
  transition: .4s; }
  a:hover {
    color: #171717; }
  a:visited {
    color: transparent; }
  a.disabled {
    pointer-events: none;
    text-decoration: none; }

ul, ol {
  list-style: none; }

.pc {
  display: block; }
  @media screen and (max-width: 1080px) {
    .pc {
      display: none; } }

.sp {
  display: none; }
  @media screen and (max-width: 1080px) {
    .sp {
      display: block; } }

p {
  margin: 0;
  padding: 0; }

/*--------------------- ここから ----------------------*/
main {
  width: 90%;
  margin: 0 auto 15%;
  padding-top: 60px;
  overflow-x: hidden;
  max-width: 1500px; }
  @media screen and (max-width: 1920px) {
    main {
      max-width: 1200px; } }
  @media screen and (max-width: 600px) {
    main {
      margin-bottom: 15%;
      width: 94%; } }

.fs-c-button--primary {
  color: #fff !important; }

.fs-c-button--standard {
  color: #212121 !important; }

.fs-c-checkout-communicationTextarea, .fs-c-dropdown__menu, .fs-c-dropdown__menu {
  border: 1px solid #737373; }

/*--------------------
会員規約について
--------------------*/
.fs-p-memberAgreement, .fs-p-returnPolicy {
  margin: 24px auto; }
  .fs-p-memberAgreement .block, .fs-p-returnPolicy .block {
    margin-bottom: 48px; }
  .fs-p-memberAgreement h3, .fs-p-returnPolicy h3 {
    border-bottom: 1px solid #171717;
    font-size: 1.2em;
    padding: 0.3em;
    margin-bottom: 16px;
    letter-spacing: 0.1em; }
  .fs-p-memberAgreement h4, .fs-p-returnPolicy h4 {
    font-weight: 600px;
    margin: 24px 0 16px; }
  .fs-p-memberAgreement p, .fs-p-returnPolicy p {
    font-size: 1.0em;
    margin-bottom: 16px; }
    @media screen and (max-width: 600px) {
      .fs-p-memberAgreement p, .fs-p-returnPolicy p {
        font-size: 3.2vw; } }
  .fs-p-memberAgreement ol, .fs-p-returnPolicy ol {
    list-style: none;
    padding: 0;
    margin: 0; }
    .fs-p-memberAgreement ol.list, .fs-p-returnPolicy ol.list {
      margin-left: 1.0em; }
    .fs-p-memberAgreement ol li, .fs-p-returnPolicy ol li {
      margin-bottom: 8px;
      font-size: 1.0em; }
      @media screen and (max-width: 600px) {
        .fs-p-memberAgreement ol li, .fs-p-returnPolicy ol li {
          font-size: 3.2vw; } }

/*-----------------------
プライバシーポリシー
------------------------*/
.fs-p-privacyPolicy .fs-c-documentArticle__heading {
  background: none;
  color: #171717;
  text-align: left;
  font-size: 1.5em; }
  @media screen and (max-width: 600px) {
    .fs-p-privacyPolicy .fs-c-documentArticle__heading {
      font-size: 4.0vw; } }
.fs-p-privacyPolicy .fs-c-documentColumn__heading {
  color: #171717;
  border-color: #171717;
  border-width: 0 0 1px 0;
  font-size: 1.2em;
  padding-left: 8px; }
  @media screen and (max-width: 600px) {
    .fs-p-privacyPolicy .fs-c-documentColumn__heading {
      font-size: 3.7vw; } }
.fs-p-privacyPolicy .fs-c-documentColumn__content p {
  font-size: 1.0em;
  line-height: 1.8; }
  @media screen and (max-width: 600px) {
    .fs-p-privacyPolicy .fs-c-documentColumn__content p {
      font-size: 3.2vw; } }

/*-----------------------
送料とお支払方法について
------------------------*/
.fs-c-documentArticle .fs-c-documentArticle__heading, .fs-p-aboutPoints .fs-c-documentArticle__heading {
  background: none;
  color: #171717;
  text-align: left;
  font-size: 1.5em; }
  @media screen and (max-width: 600px) {
    .fs-c-documentArticle .fs-c-documentArticle__heading, .fs-p-aboutPoints .fs-c-documentArticle__heading {
      font-size: 4.0vw; } }
.fs-c-documentArticle .fs-c-documentColumn__heading, .fs-p-aboutPoints .fs-c-documentColumn__heading {
  color: #171717;
  border-color: #171717;
  border-width: 0 0 1px 0;
  font-size: 1.2em; }
  @media screen and (max-width: 600px) {
    .fs-c-documentArticle .fs-c-documentColumn__heading, .fs-p-aboutPoints .fs-c-documentColumn__heading {
      font-size: 3.7vw; } }
.fs-c-documentArticle .fs-c-documentColumn__content p, .fs-p-aboutPoints .fs-c-documentColumn__content p {
  font-size: 1.0em; }
  @media screen and (max-width: 600px) {
    .fs-c-documentArticle .fs-c-documentColumn__content p, .fs-p-aboutPoints .fs-c-documentColumn__content p {
      font-size: 3.2vw; } }

/*-----------------------
特定商取引法に基づく表示
------------------------*/
.fs-c-list li::before, .fs-c-localNavigation__list li::before {
  background: #171717;
  border: 1px solid #171717;
  margin: auto 4px 3px -8px; }

.fs-p-aboutTerms p {
  font-size: 1.0em; }
  @media screen and (max-width: 600px) {
    .fs-p-aboutTerms p {
      font-size: 3.0vw; } }
@media screen and (max-width: 600px) {
  .fs-p-aboutTerms .fs-c-explainList tabel {
    width: 100%; } }
.fs-p-aboutTerms li, .fs-p-aboutTerms dd, .fs-p-aboutTerms dt {
  font-size: 1.0em; }
  @media screen and (max-width: 600px) {
    .fs-p-aboutTerms li, .fs-p-aboutTerms dd, .fs-p-aboutTerms dt {
      font-size: 3.0vw; } }

/*-----------------------
メンテナンス
------------------------*/
#close_inner {
  width: fit-content;
  margin: 36px auto;
  text-align: center; }
  #close_inner img {
    margin-bottom: 36px; }
  #close_inner h3 {
    text-align: left;
    margin: 16px 0;
    font-size: 1.0em;
    font-weight: 600; }
    @media screen and (max-width: 600px) {
      #close_inner h3 {
        font-size: 3.2vw; } }
  #close_inner p {
    text-align: left;
    font-size: 1.0em; }
    @media screen and (max-width: 600px) {
      #close_inner p {
        font-size: 3.2vw; } }

/*-----------------------
404 Not Found
------------------------*/
.fs-p-pageNotFound {
  width: fit-content;
  margin: 24px auto; }
  @media screen and (max-width: 600px) {
    .fs-p-pageNotFound {
      margin: 48px auto; } }
  .fs-p-pageNotFound img {
    display: block;
    margin: 0 0 16px; }
  .fs-p-pageNotFound h2 {
    font-size: 1.5em;
    text-align: left; }
    @media screen and (max-width: 600px) {
      .fs-p-pageNotFound h2 {
        font-size: 4.2vw; } }
  .fs-p-pageNotFound p {
    text-align: left;
    font-size: 1.0em;
    margin: 24px auto; }
    @media screen and (max-width: 600px) {
      .fs-p-pageNotFound p {
        font-size: 3.2vw; } }
