@charset "UTF-8";

/**
 * フォント
 */
html {
  font-size: 2.0833333333vw; /* SP 16px */
  /* font-size: 1.8229166666vw; SP 14px futureshopシステムページが壊れるため不採用 */
}
body {
  font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
  font-size: 1.6rem;
  font-weight: normal;
  color: #2E292A;
}
.f-f-mincho {
  font-family: '游明朝体', YuMincho, '游明朝 Medium', 'Yu Mincho Medium', '游明朝', 'Yu Mincho', 'Hiragino Mincho Pro', 'ヒラギノ明朝 Pro W3', HiraMinProN-W3, serif;
}
.f-f-gothic {
  font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}

.f-s-inherit { font-size: inherit!important; }
.f-s-1_8rem  { font-size: 1.8rem!important; }
.f-s-1_25em  { font-size: 1.25em!important; }
.f-s-1_5em   { font-size: 1.5em!important; }
.f-s-1_8em   { font-size: 1.8em!important; }

.f-w-bold { font-weight: bold!important; }

@media screen and (min-width: 480px) {
  html {
    font-size: 62.5%;
  }
}

/**
 * テキスト
 */
.t-a-center { text-align: center!important; }
.t-a-left   { text-align: left!important; }
.t-a-right  { text-align: right!important; }

/**
 * インデント
 */
.indent {
  padding-left: 1em;
  text-indent: -1em;
}

/**
 * 背景
 */
.bg-207094 { background: #207094!important; }
.bg-213753 { background: #213753!important; }
.bg-5a5b26 { background: #5a5b26!important; }
.bg-7d0a82 { background: #7d0a82!important; }
.bg-820a66 { background: #820a66!important; }
.bg-82220a { background: #82220a!important; }
.bg-8e6f3e { background: #8e6f3e!important; }
.bg-a2545f { background: #a2545f!important; }
.bg-aa3c0d { background: #aa3c0d!important; }
.bg-af4c07 { background: #af4c07!important; }
.bg-b18f52 { background: #b18f52!important; }
.bg-c32f33 { background: #c32f33!important; }
.bg-ca9823 { background: #ca9823!important; }
.bg-e9f5f7 { background: #e9f5f7!important; }
.bg-ea5662 { background: #ea5662!important; }
.bg-f3c61b { background: #f3c61b!important; }
.bg-f4f5fc { background: #f4f5fc!important; }
.bg-f7f7f4 { background: #f7f7f4!important; }
.bg-fbfbfb { background: #fbfbfb!important; }
.bg-fcf1ed { background: #fcf1ed!important; }
.bg-fcf4f4 { background: #fcf4f4!important; }

/**
 * 水平線
 */
.hr {
  height: 1px;
  margin-right: 16px;
  margin-left: 16px;
  background-color: #292A2B;
  border: none;
}

/**
 * 画像
 */
.img-fluid {
  min-width: auto;
  max-width: 100%!important;
  display: inline;
  height: auto;
  vertical-align: bottom;
}
.img-fit {
  min-width: 100%!important;
  max-width: 100%!important;
  display: block;
  height: auto;
}
@media screen and (min-width: 768px) {
  .img-md-fit {
    min-width: 100%!important;
    max-width: 100%!important;
    display: block;
    height: auto;
  }
}

/**
 * ポジション
 */
.position-relative {
  position: relative!important;
}

/**
 * 表示／非表示
 */
.d-none   { display: none!important; }
.d-block  { display: block!important; }
.d-inline { display: inline!important; }

.o-7 {
  opacity: .7;
}
@media screen and (min-width: 480px) {
  .d-xs-none   { display: none!important; }
  .d-xs-block  { display: block!important; }
  .d-xs-inline { display: inline!important; }
}
@media screen and (min-width: 600px) {
  .d-sm-none   { display: none!important; }
  .d-sm-block  { display: block!important; }
  .d-sm-inline { display: inline!important; }
}
@media screen and (min-width: 768px) {
  .d-md-none   { display: none!important; }
  .d-md-block  { display: block!important; }
  .d-md-inline { display: inline!important; }
}
@media screen and (min-width: 960px) {
  .d-lg-none   { display: none!important; }
  .d-lg-block  { display: block!important; }
  .d-lg-inline { display: inline!important; }
}
@media screen and (min-width: 1200px) {
  .d-xl-none   { display: none!important; }
  .d-xl-block  { display: block!important; }
  .d-xl-inline { display: inline!important; }
}

/**
 * マージン・パディング
 */
.m-0       { margin: 0!important; }
.m-0_5em   { margin: .5em!important; }
.m-1em     { margin: 1em!important; }

.mx-auto   { margin-right: auto!important;  margin-left: auto!important; }
.mx-0_5em  { margin-right: .5em!important;  margin-left: .5em!important; }
.mx-1em    { margin-right: 1em!important;   margin-left: 1em!important; }

.my-0      { margin-top: 0!important;      margin-bottom: 0!important; }
.my-0_5em  { margin-top: .5em!important;   margin-bottom: .5em!important; }
.my-1em    { margin-top: 1em!important;    margin-bottom: 1em!important; }
.my-1_5em  { margin-top: 1.5em!important;  margin-bottom: 1.5em!important; }
.my-2em    { margin-top: 2em!important;    margin-bottom: 2em!important; }
.my-2_5em  { margin-top: 2.5em!important;  margin-bottom: 2.5em!important; }
.my-3em    { margin-top: 3em!important;    margin-bottom: 3em!important; }
.my-3_75em { margin-top: 3.75em!important; margin-bottom: 3.75em!important; }
.my-5em    { margin-top: 5em!important;    margin-bottom: 5em!important; }

.mt-0      { margin-top: 0!important; }
.mt-0_5em  { margin-top: .5em!important; }
.mt-1em    { margin-top: 1em!important; }
.mt-1_5em  { margin-top: 1.5em!important; }
.mt-2em    { margin-top: 2em!important; }
.mt-2_5em  { margin-top: 2.5em!important; }
.mt-3em    { margin-top: 3em!important; }
.mt-3_75em { margin-top: 3.75em!important; }
.mt-4em    { margin-top: 4em!important; }
.mt-5em    { margin-top: 5em!important; }
.mt-6em    { margin-top: 6em!important; }
.mt-6_25em { margin-top: 6.25em!important; }
.mt-7em    { margin-top: 7em!important; }
.mt-7_5em  { margin-top: 7.5em!important; }
.mt-8em    { margin-top: 8em!important; }

.mb-0      { margin-bottom: 0!important; }
.mb-0_5em  { margin-bottom: .5em!important; }
.mb-1em    { margin-bottom: 1em!important; }
.mb-2em    { margin-bottom: 2em!important; }
.mb-3em    { margin-bottom: 3em!important; }
.mb-5em    { margin-bottom: 5em!important; }

.ml-0_25em { margin-left: .25em!important; }
.ml-0_5em  { margin-left: .5em!important; }
.ml-1em    { margin-left: 1em!important; }

.mr-0_25em { margin-right: .25em!important; }
.mr-0_5em  { margin-right: .5em!important; }
.mr-1em    { margin-right: 1em!important; }

.px-1em    { padding-right: 1em!important; padding-left: 1em!important; }
.px-2em    { padding-right: 2em!important; padding-left: 2em!important; }

.py-0      { padding-top: 0!important;   padding-bottom: 0!important; }
.py-3em    { padding-top: 3em!important; padding-bottom: 3em!important; }

.pt-0      { padding-top: 0!important; }

@media screen and (min-width: 768px) {
  .mt-md-5em {
    margin-top: 5em!important;
  }
}

/**
 * 枠線
 */
.border-8e6f3e { border: 1px solid #8e6f3e }

/**
 * リスト
 */
.l-s-disc { list-style: disc!important; margin-left: 1.25em!important; padding-left: .25em!important; }

/**
 * コンテナー
 */
.container {
  padding: 0 1em;
}

/**
 * フレーム(md等のサイズ指定をしない場合、画面幅毎に設定)
 */
.fr-350px,
.fr-400px,
.fr-500px,
.fr-700px {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 450px) {
  .fr-350px { width: 350px; }
  .fr-400px { width: 400px; }
}
@media screen and (min-width: 600px) {
  .fr-500px { width: 500px; }
}
@media screen and (min-width: 768px) {
  .fr-700px { width: 700px; }
}

/**
 * 最大横幅
 */
.m-w-none  { max-width: none!important; }
.m-w-928px { max-width: 928px!important; }

/**
 * 配置位置(フレックス)
 */
.x-cc {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  align-items: center;
  justify-content: center;
}
.x-cl {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  align-items: center;
  justify-content: left;
}
.y-cc {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

/**
 * フレックスボックス
 */
.flexbox *, .flexbox ::after, .flexbox ::before {
  box-sizing: border-box;
}
.flexbox {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding: 8px;
}
.flexbox > .row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -8px;
  margin-left: -8px;
  box-sizing: border-box;
}
.flexbox > .row > * {
  width: 100%;
  padding: 8px; /* デフォルトパディング */
}
.flexbox > .row > .col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}
.flexbox > .row > .col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}
.flexbox > .row > .col-8 {
  flex: 0 0 66.666667%;
  max-width: 66.666667%;
}
.flexbox > .row > .col-7 {
  flex: 0 0 58.333333%;
  max-width: 58.333333%;
}
.flexbox > .row > .col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}
.flexbox > .row > .col-5 {
  flex: 0 0 41.666667%;
  max-width: 41.666667%;
}
.flexbox > .row > .col-4 {
  flex: 0 0 33.333333%;
  max-width: 33.333333%;
}
.flexbox > .row > .col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}
.flexbox > .row > .col-2_4 {
  flex: 0 0 20%;
  max-width: 20%;
}
.flexbox > .row > .col-2 {
  flex: 0 0 16.666667%;
  max-width: 16.666667%;
}

.flexbox > .row > .order-1  { order:  1; }
.flexbox > .row > .order-2  { order:  2; }
.flexbox > .row > .order-3  { order:  3; }
.flexbox > .row > .order-4  { order:  4; }
.flexbox > .row > .order-5  { order:  5; }
.flexbox > .row > .order-6  { order:  6; }
.flexbox > .row > .order-7  { order:  7; }
.flexbox > .row > .order-8  { order:  8; }
.flexbox > .row > .order-9  { order:  9; }
.flexbox > .row > .order-10 { order: 10; }
.flexbox > .row > .order-11 { order: 11; }
.flexbox > .row > .order-12 { order: 12; }

.flexbox.stretch > .row {
  align-items: stretch;
}
.flexbox.stretch > .row > * {
  height: 100%;
}
.flexbox.gutter-1em {
  padding: 1em;
}
.flexbox.gutter-1em > .row {
  margin: -1em;
}
.flexbox.gutter-1em > .row > * {
  padding: 1em;
}
.flexbox.gutter-2em {
  padding: 2em;
}
.flexbox.gutter-2em > .row {
  margin: -2em;
}
.flexbox.gutter-2em > .row > * {
  padding: 2em;
}
@media screen and (min-width: 480px) {
  .flexbox > .row > .col-xs-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .flexbox > .row > .col-xs-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .flexbox > .row > .col-xs-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .flexbox > .row > .col-xs-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .flexbox > .row > .col-xs-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .flexbox > .row > .col-xs-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .flexbox > .row > .col-xs-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .flexbox > .row > .col-xs-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .flexbox > .row > .col-xs-2_4 {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .flexbox > .row > .col-xs-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .flexbox > .row > .order-xs-1  { order:  1; }
  .flexbox > .row > .order-xs-2  { order:  2; }
  .flexbox > .row > .order-xs-3  { order:  3; }
  .flexbox > .row > .order-xs-4  { order:  4; }
  .flexbox > .row > .order-xs-5  { order:  5; }
  .flexbox > .row > .order-xs-6  { order:  6; }
  .flexbox > .row > .order-xs-7  { order:  7; }
  .flexbox > .row > .order-xs-8  { order:  8; }
  .flexbox > .row > .order-xs-9  { order:  9; }
  .flexbox > .row > .order-xs-10 { order: 10; }
  .flexbox > .row > .order-xs-11 { order: 11; }
  .flexbox > .row > .order-xs-12 { order: 12; }
}
@media screen and (min-width: 600px) {
  .flexbox > .row > .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .flexbox > .row > .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .flexbox > .row > .col-sm-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .flexbox > .row > .col-sm-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .flexbox > .row > .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .flexbox > .row > .col-sm-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .flexbox > .row > .col-sm-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .flexbox > .row > .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .flexbox > .row > .col-sm-2_4 {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .flexbox > .row > .col-sm-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .flexbox > .row > .order-sm-1  { order:  1; }
  .flexbox > .row > .order-sm-2  { order:  2; }
  .flexbox > .row > .order-sm-3  { order:  3; }
  .flexbox > .row > .order-sm-4  { order:  4; }
  .flexbox > .row > .order-sm-5  { order:  5; }
  .flexbox > .row > .order-sm-6  { order:  6; }
  .flexbox > .row > .order-sm-7  { order:  7; }
  .flexbox > .row > .order-sm-8  { order:  8; }
  .flexbox > .row > .order-sm-9  { order:  9; }
  .flexbox > .row > .order-sm-10 { order: 10; }
  .flexbox > .row > .order-sm-11 { order: 11; }
  .flexbox > .row > .order-sm-12 { order: 12; }
}
@media screen and (min-width: 768px) {
  .flexbox > .row > .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .flexbox > .row > .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .flexbox > .row > .col-md-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .flexbox > .row > .col-md-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .flexbox > .row > .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .flexbox > .row > .col-md-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .flexbox > .row > .col-md-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .flexbox > .row > .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .flexbox > .row > .col-md-2_4 {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .flexbox > .row > .col-md-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .flexbox > .row > .order-md-1  { order:  1; }
  .flexbox > .row > .order-md-2  { order:  2; }
  .flexbox > .row > .order-md-3  { order:  3; }
  .flexbox > .row > .order-md-4  { order:  4; }
  .flexbox > .row > .order-md-5  { order:  5; }
  .flexbox > .row > .order-md-6  { order:  6; }
  .flexbox > .row > .order-md-7  { order:  7; }
  .flexbox > .row > .order-md-8  { order:  8; }
  .flexbox > .row > .order-md-9  { order:  9; }
  .flexbox > .row > .order-md-10 { order: 10; }
  .flexbox > .row > .order-md-11 { order: 11; }
  .flexbox > .row > .order-md-12 { order: 12; }

  .flexbox.gutter-md-0_5em {
    padding: .5em;
  }
  .flexbox.gutter-md-0_5em > .row {
    margin: -.5em;
  }
  .flexbox.gutter-md-0_5em > .row > * {
    padding: .5em;
  }
}
@media screen and (min-width: 960px) {
  .flexbox > .row > .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .flexbox > .row > .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .flexbox > .row > .col-lg-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .flexbox > .row > .col-lg-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .flexbox > .row > .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .flexbox > .row > .col-lg-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .flexbox > .row > .col-lg-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .flexbox > .row > .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .flexbox > .row > .col-lg-2_4 {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .flexbox > .row > .col-lg-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .flexbox > .row > .order-lg-1  { order:  1; }
  .flexbox > .row > .order-lg-2  { order:  2; }
  .flexbox > .row > .order-lg-3  { order:  3; }
  .flexbox > .row > .order-lg-4  { order:  4; }
  .flexbox > .row > .order-lg-5  { order:  5; }
  .flexbox > .row > .order-lg-6  { order:  6; }
  .flexbox > .row > .order-lg-7  { order:  7; }
  .flexbox > .row > .order-lg-8  { order:  8; }
  .flexbox > .row > .order-lg-9  { order:  9; }
  .flexbox > .row > .order-lg-10 { order: 10; }
  .flexbox > .row > .order-lg-11 { order: 11; }
  .flexbox > .row > .order-lg-12 { order: 12; }

  .flexbox.gutter-lg-1em {
    padding: 1em;
  }
  .flexbox.gutter-lg-1em > .row {
    margin: -1em;
  }
  .flexbox.gutter-lg-1em > .row > * {
    padding: 1em;
  }
}
@media screen and (min-width: 1200px) {
  .flexbox > .row > .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .flexbox > .row > .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .flexbox > .row > .col-xl-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .flexbox > .row > .col-xl-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .flexbox > .row > .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .flexbox > .row > .col-xl-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .flexbox > .row > .col-xl-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .flexbox > .row > .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .flexbox > .row > .col-xl-2_4 {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .flexbox > .row > .col-xl-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .flexbox > .row > .order-xl-1  { order:  1; }
  .flexbox > .row > .order-xl-2  { order:  2; }
  .flexbox > .row > .order-xl-3  { order:  3; }
  .flexbox > .row > .order-xl-4  { order:  4; }
  .flexbox > .row > .order-xl-5  { order:  5; }
  .flexbox > .row > .order-xl-6  { order:  6; }
  .flexbox > .row > .order-xl-7  { order:  7; }
  .flexbox > .row > .order-xl-8  { order:  8; }
  .flexbox > .row > .order-xl-9  { order:  9; }
  .flexbox > .row > .order-xl-10 { order: 10; }
  .flexbox > .row > .order-xl-11 { order: 11; }
  .flexbox > .row > .order-xl-12 { order: 12; }
}

/**
 * ボタン共通
 */
a.finished {
  pointer-events: none!important;
  opacity: .1!important;
}
.btn-00829a, a.btn-00829a {
  background: #00829A;
  color: #FFF;
}
.btn-1544ae, a.btn-1544ae {
  background: #1544AE;
  color: #FFF;
}
.btn-2e0e69, a.btn-2e0e69 {
  background: #2E0E69;
  color: #FFF;
}
.btn-4d4a4a, a.btn-4d4a4a {
  background: #4D4A4A;
  color: #FFF;
}
.btn-ae2415, a.btn-ae2415 {
  background: #AE2415;
  color: #FFF;
}
.btn-ad2414, a.btn-ad2414 {
  background: #AD2414;
  color: #FFF;
}
.btn-b18f52, a.btn-b18f52 {
  background: #B18F52;
  color: #FFF;
}
.btn-f0ede5, a.btn-f0ede5 {
  background: #F0EDE5;
  color: #2E292A;
}

/**
 * btn001
 */
.btn001 {
  display: block;
  width: 250px;
  max-width: calc(100% - 1em);
  margin: .5em;
  padding: .625em 1.5em;
  border-radius: 2em;
  font-weight: bold;
  text-align: center;
}
.btn001:hover {
  text-decoration: none;
}

/**
 * btn002
 */
.btn002 {
  display: block;
  width: 90%;
  text-align: center;
  margin: 1.5em auto 0 auto;
  border-radius: 1.25em;
  padding: .75em 0;
  font-size: 1.1rem;
  font-weight: bold;
  line-height: 1;
}
.btn002:hover {
  text-decoration: none;
}

/**
 * btn003
 */
.btn003 {
  display: block;
  border-radius: 1.25em;
  padding: .5em 2em;
}
.btn003:hover {
  text-decoration: none;
}

/**
 * btn004
 */
.btn004 {
  display: block;
  min-width: 80%;
  max-width: 100%;
  border-radius: 1.25em;
  padding: .5em 1em;
  font-weight: bold;
  text-align: center;
  word-wrap: nowrap;
}
.btn004:hover {
  text-decoration: none;
}

/**
 * btn005
 */
.btn005 {
  border-radius: 1.25em;
  padding: .5em 2em;
  font-weight: bold;
}
.btn005:hover {
  text-decoration: none;
}

/**
 * btn006
 */
.btn006 {
  display: block;
  margin: .5em;
  padding: .625em 1.5em;
  font-weight: bold;
  text-align: center;
}
.btn006:hover {
  text-decoration: none;
}

/**
 * btn007
 */
.btn007 {
  display: block;
  margin: 1.5em .5em .5em;
  padding: .375em 1.5em;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
}
.btn007:hover {
  opacity: .7;
  text-decoration: none;
}

/**
 * btn008
 */
.btn008 {
  display: block;
  margin: 1.5em .5em .5em;
  padding: .5em 1.5em;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}
.btn008:hover {
  opacity: .7;
  text-decoration: none;
}

/**
 * btn009
 */
.btn009 {
  display: inline-block;
  font-size: 1.4rem;
  line-height: 1;
  text-decoration: none;
  text-align: center;
  margin: 1.5em .5em .5em;
  padding: 0.8em 1.6em 0.6em;
  box-shadow: 0 0 2px #b2b2b2;
  min-width: 240px;
}
.btn009:hover {
  opacity: .7;
  text-decoration: none;
}

/**
 * btn010
 */
.btn010 {
  width: 70%;
  text-align: center;
  margin: 1.5em auto;
  border-radius: 1.5em;
  padding: .75em 0;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1;
}
@media screen and (min-width: 480px) {
  .btn010 {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 600px) {
  .btn010 {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 768px) {
  .btn010 {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 960px) {
  .btn010 {
    font-size: 2rem;
  }
}

/**
 * 全体
 */
.logout.my-false {
  display: none;
}
.login.my-true {
  display: none;
}
.fs-p-heading--lv2 {
  margin-top: 2em;
  margin-bottom: 1.5em;
}
.fs-p-heading--lv2:not(:first-child) {
  margin-top: 3em;
}

/**
 * slick
 */
/* スクロールバー分を調整できないため保留。
.fs-c-productListCarousel__list__item {
  flex-basis: calc((100vw - 96px) / 2 - 8px);
  max-width: calc((100vw - 96px) / 2 - 8px);
  min-width: calc((100vw - 96px) / 2 - 8px);
  margin: 0 8px;
}
@media screen and (min-width: 480px) {
  .fs-c-productListCarousel__list__item {
    flex-basis: calc((100vw - 96px) / 2 - 16px);
    max-width: calc((100vw - 96px) / 2 - 16px);
    min-width: calc((100vw - 96px) / 2 - 16px);
    margin: 0 8px;
  }
}
@media screen and (min-width: 600px) {
  .fs-c-productListCarousel__list__item {
    flex-basis: calc((100vw - 128px) / 2 - 16px);
    max-width: calc((100vw - 128px) / 2 - 16px);
    min-width: calc((100vw - 128px) / 2 - 16px);
    margin: 0 8px;
  }
}
@media screen and (min-width: 768px) {
  .fs-c-productListCarousel__list__item {
    flex-basis: calc((100vw - 128px) / 3 - 16px);
    max-width: calc((100vw - 128px) / 3 - 16px);
    min-width: calc((100vw - 128px) / 3 - 16px);
    margin: 0 8px;
  }
}
@media screen and (min-width: 960px) {
  .fs-c-productListCarousel__list__item {
    flex-basis: calc((100vw - 128px) / 4 - 16px);
    max-width: calc((100vw - 128px) / 4 - 16px);
    min-width: calc((100vw - 128px) / 4 - 16px);
    margin: 0 8px;
  }
}
@media screen and (min-width: 1200px) {
  .fs-c-productListCarousel__list__item {
    flex-basis: 192px;
    max-width: 192px;
    min-width: 192px;
    margin: 0 8px;
  }
}
*/

/**
 * ヘッダー
 */
.fs-l-header {
  border-top: .25em solid #2E0E69;
  padding-top: 0;
}
.fs-l-header.tm-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  background-color: #ffffff;
}
.fs-l-header.tm-shadow {
  box-shadow: 0 4px 8px rgba(0,0,0,.15);
}
.fs-l-header__contents {
  max-width: 1216px;
  margin: 0 auto;
}
.fs-l-header__leftContainer {
  margin-top: 10px;
}
.fs-l-header__logo {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: auto;
  margin-left: auto;
  height: 100%;
}
.fs-p-logo__lead {
  font-size: 1.6rem;
  white-space: nowrap;
}
.fs-l-header__utility {
  display: none;
  justify-content: flex-end;
  align-items: center;
  align-self: center;
}
.tm-order {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-end;
  padding: 4px 0;
}
.tm-order > div {
  text-align: center;
}
.tm-order-phone {
  font-size: 1.6rem;
  font-weight: bold;
}
.tm-order-phone i {
  margin-right: .5em;
}
.tm-order-hours {
  margin-bottom: 2px;
  font-size: 1.5rem;
}
.tm-order-email {
  display: block;
  background-color: #2E292A;
  padding: .625em 1em;
  border-radius: .5rem;
  font-size: 1.6rem;
  font-weight: bold;
  color: #FFFFFF;
  line-height: 1;
  text-decoration: none;
}
.tm-order-email:hover {
  opacity: .6;
  text-decoration: none;
}
.tm-order-email:visited {
  color: #FFFFFF;
}
.tm-order-email i {
  margin-left: .5em;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px) {
  .fs-l-header__contents {
    -ms-grid-columns: 25% 50% 25%;
    grid-template-columns: 25% 50% 25%;
  }
  .fs-l-header__welcomeMsg.is-ready {
    display: none;
  }
  .fs-p-logo__image {
    width: 220px;
    max-width: 100%;
  }
}
@media screen and (min-width: 960px) {
  .fs-l-header__contents {
    -ms-grid-columns: 33.3333333333% 33.3333333333% 33.3333333333%;
    grid-template-columns: 33.3333333333% 33.3333333333% 33.3333333333%;
  }
  .fs-l-header__leftContainer {
    align-self: center;
  }
  .fs-l-header__utility {
    display: flex;
  }
}
@media screen and (min-width: 1200px) {
  .fs-l-header__leftContainer {
    align-self: start;
  }
  .fs-l-header__welcomeMsg.is-ready {
    display: block;
  }
}

/**
 * ヘッダー (注目メッセージ)
 */
.fs-l-header__attention {
  padding: .125em 0;
  background: #B5922A;
  font-size: 2.5vw;
  color: #FFF;
  text-align: center;
}
@media screen and (min-width: 480px) {
  .fs-l-header__attention {
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 600px) {
  .fs-l-header__attention {
    font-size: 1.3rem;
  }
}
@media screen and (min-width: 768px) {
  .fs-l-header__attention {
    font-size: 1.5rem;
  }
}

/**
 * ヘッダー (グランドナビ)
 */
.fs-p-headerNavBar {
  /* background: #E2E3E6; */
  background: rgba(126, 126, 126, 0.08);
  border-bottom: none;
  color: #2E292A;
}
.fs-p-headerNavigation__listItem {
  justify-content: center;
  width: 20%!important;
  min-width: 5em;
}
.fs-p-headerNavigation__link {
  flex-direction: column!important;
  width: 100%;
  padding: 6px 0!important;
  font-size: 1.2rem!important;
  font-weight: bold;
  color: #2E292A;
  transition: .5s;
}
.fs-p-headerNavigation__link:link,
.fs-p-headerNavigation__link:visited {
  color: #2E292A;
}
.fs-p-headerNavigation__link:hover {
  background-color: #646464;
  color: #ffffff;
}
.fs-p-headerNavigation__link > i {
  padding-right: 0;
  font-size: 2rem!important;
  line-height: 1.5;
}
.fs-p-headerNavigation__search {
  flex-grow: 1;
  padding-right: 8px;
  padding-bottom: 4px;
  padding-left: 8px;
}
.fs-p-headerNavBar .fs-p-cartItemNumber {
  padding: .25em .5em;
  font-size: 1.2rem;
}
.fs-p-searchForm__button {
  padding-left: 1.5em;
  font-weight: bold;
  text-indent: 0;
  width: 5em;
  height: 2em;
}
.fs-p-searchForm__button::before {
  line-height: 1.5;
  right: auto;
  left: .375em;
}
.fs-p-searchForm__inputGroup {
  border: 1px solid #2E292A;
  background-color: #2E292A;
  font-size: 1.4rem;
}
.fs-p-searchForm__button {
  background-color: #2E292A;
}
.fs-p-searchForm__button::before {
  font-size: 2rem;
}
@media screen and (min-width: 768px) {
  .fs-p-headerNavigation__list {
    width: 100%;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .fs-p-searchForm__button {
    padding-top: .375em;
  }
}
@media screen and (min-width: 960px) {
  .fs-p-headerNavigation__list {
    width: auto;
  }
  .fs-p-headerNavigation__listItem {
    width: 6.5em!important;
  }
  .fs-p-headerNavigation__search {
    flex-grow: 0;
    padding-bottom: 0;
  }
}

/**
 * フッター（ナビゲーション）
 */
.fs-p-footerNavigation {
  grid-gap: .5em;
}
.fs-p-footerNavigationItem__title {
  border-bottom: none;
  font-size: 1.6rem;
  font-weight: normal;
  text-align: left;
}
.fs-p-footerNavigationItem__body {
  padding: 4px;
}
.fs-p-footerNavigationItem__nav {
  margin-left: .25em;
  line-height: 2;
}
.fs-p-footerNavigationItem__ctrl:checked ~ .fs-p-footerNavigationItem__title {
  font-weight: bold;
}
.fs-p-footerNavigationItem__ctrl:checked ~ .fs-p-footerNavigationItem__ctrlIcon + .fs-p-footerNavigationItem__body {
  display: block;
}
.fs-p-footerNavigationItem__ctrlIcon::before {
  font-family: "Font Awesome 5 Free" !important;
  font-size: 1.4rem;
  font-weight: 900;
  color: #909090;
  content: "\f067";
  transform: rotate(0deg);
  transition-duration: .5s;
  margin-top: -1.5em;
  margin-right: .75em;
}
.fs-p-footerNavigationItem__ctrl:checked ~ .fs-p-footerNavigationItem__ctrlIcon::before {
  content: "\f068";
  transform: rotate(720deg);
}
@media screen and (min-width: 480px) {
  .fs-p-footerNavigation {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
  .fs-p-footerNavigation > *:nth-child(1) {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .fs-p-footerNavigation > *:nth-child(2) {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .fs-p-footerNavigation > *:nth-child(3) {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 2;
    grid-row: 2;
  }
  .fs-p-footerNavigation > *:nth-child(4) {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 2;
    grid-row: 2;
  }
  .fs-p-footerNavigation > *:nth-child(5) {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 3;
    grid-row: 3;
  }
  .fs-p-footerNavigationItem__nav {
    line-height: 1.5;
  }
  .fs-p-footerNavigationItem__title {
    font-weight: bold;
    text-decoration: underline;
    cursor: default;
  }
  .fs-p-footerNavigationItem__ctrlIcon {
    display: none;
  }
  .fs-p-footerNavigationItem__body {
    display: block;
  }
}
@media screen and (min-width: 768px) {
  .fs-p-footerNavigation {
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
  }
  .fs-p-footerNavigation > *:nth-child(1) {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .fs-p-footerNavigation > *:nth-child(2) {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 2;
    grid-row: 2;
  }
  .fs-p-footerNavigation > *:nth-child(3) {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1 / 3;
  }
  .fs-p-footerNavigation > *:nth-child(4) {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .fs-p-footerNavigation > *:nth-child(5) {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 2;
    grid-row: 2;
  }
}
@media screen and (min-width: 960px) {
  .fs-p-footerNavigation {
    -ms-grid-columns: 1fr 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .fs-p-footerNavigation > *:nth-child(1) {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .fs-p-footerNavigation > *:nth-child(2) {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 2;
    grid-row: 2;
  }
  .fs-p-footerNavigation > *:nth-child(3) {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1 / 3;
  }
  .fs-p-footerNavigation > *:nth-child(4) {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row:  1 / 3;
  }
  .fs-p-footerNavigation > *:nth-child(5) {
    -ms-grid-column: 4;
    grid-column: 4;
    -ms-grid-row:  1;
    -ms-grid-row-span: 2;
    grid-row:  1 / 3;
  }
}

/**
 * フッター（ページ上部へ）
 */
.fs-l-footer .fs-p-footerPageTop {
  z-index: 2;
  position: fixed;
  top: auto;
  bottom: 0;
  left: auto;
  right: 0;
  justify-content: center;
  align-items: center;
  padding: 0;
  margin: 16px 56px 86px 16px;
  width: 0;
  height: 0;
  opacity: 0;
  transition: .5s;
  visibility: hidden;
}
.fs-l-footer .fs-p-footerPageTop.fixed {
  margin: 16px 16px 56px 16px;
  width: 60px;
  height: 60px;
  opacity: .7;
  visibility: visible;
}
.fs-l-footer .fs-p-footerPageTop.fixed:hover {
  opacity: 1;
}
.fs-l-footer .fs-p-footerPageTop__link {
  display: flex;
  justify-content: center;
  align-items: center;
  text-indent: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #234393;
  font-size: 1.2rem;
  font-weight: bold;
  color: #FFFFFF;
}
.fs-l-footer .fs-p-footerPageTop__link::before {
  content: "";
}
@media screen and (min-width: 480px) {
  .fs-l-footer .fs-p-footerPageTop {
    margin: 16px 56px 96px 16px;
  }
  .fs-l-footer .fs-p-footerPageTop.fixed {
    margin: 16px 16px 56px 16px;
    width: 80px;
    height: 80px;
  }
}

/**
 * フッター ( ユーティリティのメニュー )
 */
.fs-p-footerUtilityMenu__list > li:not(:first-child) a {
    border-top: none;
}

/**
 * フッター ( コピーライト )
 */
.fs-p-footerCopyright {
  padding: .5em;
  background-color: #2E0E69;
}
.fs-p-footerCopyright__text {
  font-size: 1.6rem;
}

/**
 * パンくず
 */
.fs-c-breadcrumb {
  max-width: 1216px;
  margin-right: auto;
  margin-left: auto;
  padding-right: .5em;
  padding-left: .5em;
  font-size: 1.4rem;
}

/**
 * ドロワーメニュー - 商品カテゴリー
 */
.fs-p-drawer {
  max-width: 300px;
  z-index: 4;
}
.fs-p-sideMenu .fs-pt-menu__item + .fs-pt-menu__item {
  margin-top: 0;
}
.fs-p-sideMenu .fs-pt-menu__item--lv1 + .fs-pt-menu__item--lv1 {
  margin-top: 8px;
}
.fs-p-sideMenu a {
  margin: 0;
  padding: 0;
}
.fs-p-sideMenu .fs-pt-menu__submenu {
  transition: 1s;
}
.fs-p-sideMenu .fs-pt-menu__submenu.tm-closed {
  opacity: 0;
  height: 0;
}
.fs-p-sideMenu .fs-pt-menu__heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
}
.fs-p-sideMenu .fs-pt-menu__heading--lv1 { padding: 0;   border: 1px solid #2E292A; }
.fs-p-sideMenu .fs-pt-menu__heading--lv2 { padding: 1px; border-bottom: none; }
.fs-p-sideMenu .fs-pt-menu__heading--lv3 { padding: 1px; }
.fs-p-sideMenu .fs-pt-menu__heading--lv4 { padding: 1px; }
.fs-p-sideMenu .fs-pt-menu__heading--lv5 { padding: 1px; }

.fs-p-sideMenu .fs-pt-menu__link {
  width: 100%;
  height: 100%;
  padding: .5em;
}
.fs-p-sideMenu .fs-pt-menu__link--lv1 { padding-left:  .5em; }
.fs-p-sideMenu .fs-pt-menu__link--lv2 { padding-left:  .5em; }
.fs-p-sideMenu .fs-pt-menu__link--lv3 { padding-left: 1.5em; }
.fs-p-sideMenu .fs-pt-menu__link--lv4 { padding-left: 2.5em; }
.fs-p-sideMenu .fs-pt-menu__link--lv5 { padding-left: 3.5em; }

.fs-p-sideMenu .fs-pt-menu__link--lv1::before { content: normal; }
.fs-p-sideMenu .fs-pt-menu__link--lv2::before { content: normal; }
.fs-p-sideMenu .fs-pt-menu__link--lv3::before { content: normal; }
.fs-p-sideMenu .fs-pt-menu__link--lv4::before { content: normal; }
.fs-p-sideMenu .fs-pt-menu__link--lv5::before { content: normal; }

.fs-p-sideMenu .fs-pt-menu__link--lv1::after { content: normal; }

.fs-p-sideMenu .fs-pt-menu__heading span {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  padding: .5em;
  text-align: center;
  line-height: 1.5;
  cursor: pointer;
}
.fs-p-sideMenu .fs-pt-menu__heading .fas {
  display: inline;
  min-width: 16px;
  color: #909090;
  transition: .5s;
}
.fs-p-sideMenu .fs-pt-menu__heading .fa-minus {
  transform: rotate( 720deg );
}
@media screen and (min-width: 1200px) {
  .fs-p-drawer {
    max-width: 20%;
    z-index: 2;
  }
}

/**
 * ドロワーメニュー - バナー
 */
.tm-drawer-banner {
  padding-left: 0;
  list-style: none;
}
.tm-drawer-banner > li:nth-of-type(n+2) {
  padding-top: 8px;
}
.tm-drawer-banner > li a {
  transition: .5s;
}
.tm-drawer-banner > li a:hover {
  opacity: .6;
}
.tm-drawer-banner > li > a > img {
  display: block;
  min-width: 100%;
}
.tm-drawer-banner > li.tm-sns-icons {
  display: flex;
  justify-content: center;
}
.tm-drawer-banner > li.tm-sns-icons > div {
  padding: 1em;
}

/**
 * トップ ( キービジュアルslick )
 */
.fs-c-slick .slick-dots li {
  width: auto;
  height: auto;
}
.fs-c-slick .slick-dots li button {
  width: auto;
  height: auto;
  padding: 0;
}
.fs-c-slick .slick-dots li button::before {
  content: '';
  width: auto;
  height: auto;
}
.fs-c-slick .slick-dots li button img {
  opacity: .5;
  width: calc(15vw - 3px - 3px);
}
.fs-c-slick .slick-dots li.slick-active button img {
  opacity: 1;
}
@media screen and (min-width: 1200px) {
  .fs-c-slick .slick-dots li button img {
    width: calc(10vw - 3px - 3px);
  }
}

/**
 * トップ コラム(WEB限定キャンペーン、特集等)
 */
.tm-column img {
  min-width: 100%;
}
.tm-column a {
  color: #2E292A;
  transition: .5s;
}
.tm-column a:hover {
  color: #2E292A;
  text-decoration: none;
  opacity: .6;
}
.tm-column .fs-pt-column__heading {
  display: block;
  margin: .5em 8px 0;
}
.tm-column .fs-pt-column__description {
  margin: .5em 8px 0;
}
.tm-web-special {
  margin-top: 2em;
  margin-bottom: 3em;
}

/**
 * トップ (最新情報)
 */
.fs-body-top .tm-p-dateList {
  margin: 2em .5em 0;
  padding: .5em;
  border: 1px solid #999999;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -ms-flex-direction: column;
  flex-direction: column;
  overflow-y: scroll;
  max-height: 400px;
  scrollbar-width: thin; /* FF */
  scrollbar-color: #7c8790 #E2E3E6; /* FF */
  -ms-scrollbar-highlight-color: #E2E3E6; /* IE11(廃止可能性高) */
  -ms-scrollbar-face-color: #7c8790; /* IE11(廃止可能性高) */
  -ms-scrollbar-arrow-color: #7c8790; /* IE11(廃止可能性高) */
}
.fs-body-top .tm-p-dateList::-webkit-scrollbar { /* webkit系 */
  width: 8px;
}
.fs-body-top .tm-p-dateList::-webkit-scrollbar-thumb { /* webkit系 */
  background-color: #7c8790;
  /* border-radius: 4px; */
}
.fs-body-top .tm-p-dateList::-webkit-scrollbar-track { /* webkit系 */
  background-color: #E2E3E6;
}
.fs-body-top .tm-p-dateList > li {
  padding: 1em 1em 0;
  line-height: 1.5;
}
.fs-body-top .tm-p-dateList > li + li {
  margin-top: 1em;
  border-top: 1px solid #999999;
}
.fs-body-top .tm-p-dateList > li:last-child {
  padding-bottom: 1em;
}

/**
 * トップ（ランキング）
 */
.tm-ranking-header {
  background: rgba(126, 126, 126, 0.08);
  padding-top: .25em;
  padding-bottom: .25em;
  font-weight: bold;
  text-align: center;
}
.tm-ranking .flexbox {
  max-width: 266px;
}
@media screen and (min-width: 480px) {
  .tm-ranking .flexbox {
    max-width: 432px;
  }
}
@media screen and (min-width: 768px) {
  .tm-ranking .flexbox {
    max-width: 648px;
  }
}
@media screen and (min-width: 960px) {
  .tm-ranking .flexbox {
    max-width: 100%;
  }
}

/**
 * トップ（新規会員登録と送料無料についてのご案内）
 */
.tm-new-member {
  grid-gap: normal;
}
.tm-new-member > div {
  padding: .5em;
}
.tm-new-member .fs-p-card {
  height: 100%;
}

/**
 * 商品一覧
 */
@media screen and (min-width: 960px) {
  .fs-c-productList__list {
    -ms-grid-columns: calc(25% - 0px) calc(25% - 0px) calc(25% - 0px) calc(25% - 0px);
    grid-template-columns: calc(25% - 0px) calc(25% - 0px) calc(25% - 0px) calc(25% - 0px);
  }
  .fs-c-productList__list > *:nth-child(4n+1) { -ms-grid-column: 1; grid-column: 1; }
  .fs-c-productList__list > *:nth-child(4n+2) { -ms-grid-column: 2; grid-column: 2; }
  .fs-c-productList__list > *:nth-child(4n+3) { -ms-grid-column: 3; grid-column: 3; }
  .fs-c-productList__list > *:nth-child(4n+4) { -ms-grid-column: 4; grid-column: 4; }

  .fs-c-productList__list > *:nth-child(n +   1):nth-child(-n +   4) { -ms-grid-row:  1; grid-row:  1; }
  .fs-c-productList__list > *:nth-child(n +   5):nth-child(-n +   8) { -ms-grid-row:  2; grid-row:  2; }
  .fs-c-productList__list > *:nth-child(n +   9):nth-child(-n +  12) { -ms-grid-row:  3; grid-row:  3; }
  .fs-c-productList__list > *:nth-child(n +  13):nth-child(-n +  16) { -ms-grid-row:  4; grid-row:  4; }
  .fs-c-productList__list > *:nth-child(n +  17):nth-child(-n +  20) { -ms-grid-row:  5; grid-row:  5; }
  .fs-c-productList__list > *:nth-child(n +  21):nth-child(-n +  24) { -ms-grid-row:  6; grid-row:  6; }
  .fs-c-productList__list > *:nth-child(n +  25):nth-child(-n +  28) { -ms-grid-row:  7; grid-row:  7; }
  .fs-c-productList__list > *:nth-child(n +  29):nth-child(-n +  32) { -ms-grid-row:  8; grid-row:  8; }
  .fs-c-productList__list > *:nth-child(n +  33):nth-child(-n +  36) { -ms-grid-row:  9; grid-row:  9; }
  .fs-c-productList__list > *:nth-child(n +  37):nth-child(-n +  40) { -ms-grid-row: 10; grid-row: 10; }
  .fs-c-productList__list > *:nth-child(n +  41):nth-child(-n +  44) { -ms-grid-row: 11; grid-row: 11; }
  .fs-c-productList__list > *:nth-child(n +  45):nth-child(-n +  48) { -ms-grid-row: 12; grid-row: 12; }
  .fs-c-productList__list > *:nth-child(n +  49):nth-child(-n +  52) { -ms-grid-row: 13; grid-row: 13; }
  .fs-c-productList__list > *:nth-child(n +  53):nth-child(-n +  56) { -ms-grid-row: 14; grid-row: 14; }
  .fs-c-productList__list > *:nth-child(n +  57):nth-child(-n +  60) { -ms-grid-row: 15; grid-row: 15; }
  .fs-c-productList__list > *:nth-child(n +  61):nth-child(-n +  64) { -ms-grid-row: 16; grid-row: 16; }
  .fs-c-productList__list > *:nth-child(n +  65):nth-child(-n +  68) { -ms-grid-row: 17; grid-row: 17; }
  .fs-c-productList__list > *:nth-child(n +  69):nth-child(-n +  72) { -ms-grid-row: 18; grid-row: 18; }
  .fs-c-productList__list > *:nth-child(n +  73):nth-child(-n +  76) { -ms-grid-row: 19; grid-row: 19; }
  .fs-c-productList__list > *:nth-child(n +  77):nth-child(-n +  80) { -ms-grid-row: 20; grid-row: 20; }
  .fs-c-productList__list > *:nth-child(n +  81):nth-child(-n +  84) { -ms-grid-row: 21; grid-row: 21; }
  .fs-c-productList__list > *:nth-child(n +  85):nth-child(-n +  88) { -ms-grid-row: 22; grid-row: 22; }
  .fs-c-productList__list > *:nth-child(n +  89):nth-child(-n +  92) { -ms-grid-row: 23; grid-row: 23; }
  .fs-c-productList__list > *:nth-child(n +  93):nth-child(-n +  96) { -ms-grid-row: 24; grid-row: 24; }
  .fs-c-productList__list > *:nth-child(n +  97):nth-child(-n + 100) { -ms-grid-row: 25; grid-row: 25; }
  .fs-c-productList__list > *:nth-child(n + 101):nth-child(-n + 104) { -ms-grid-row: 26; grid-row: 26; }
  .fs-c-productList__list > *:nth-child(n + 105):nth-child(-n + 108) { -ms-grid-row: 27; grid-row: 27; }
  .fs-c-productList__list > *:nth-child(n + 109):nth-child(-n + 112) { -ms-grid-row: 28; grid-row: 28; }
  .fs-c-productList__list > *:nth-child(n + 113):nth-child(-n + 116) { -ms-grid-row: 29; grid-row: 29; }
  .fs-c-productList__list > *:nth-child(n + 117):nth-child(-n + 120) { -ms-grid-row: 30; grid-row: 30; }
  .fs-c-productList__list > *:nth-child(n + 121):nth-child(-n + 124) { -ms-grid-row: 31; grid-row: 31; }
  .fs-c-productList__list > *:nth-child(n + 125):nth-child(-n + 128) { -ms-grid-row: 32; grid-row: 32; }
  .fs-c-productList__list > *:nth-child(n + 129):nth-child(-n + 132) { -ms-grid-row: 33; grid-row: 33; }
  .fs-c-productList__list > *:nth-child(n + 133):nth-child(-n + 136) { -ms-grid-row: 34; grid-row: 34; }
  .fs-c-productList__list > *:nth-child(n + 137):nth-child(-n + 140) { -ms-grid-row: 35; grid-row: 35; }
  .fs-c-productList__list > *:nth-child(n + 141):nth-child(-n + 144) { -ms-grid-row: 36; grid-row: 36; }
  .fs-c-productList__list > *:nth-child(n + 145):nth-child(-n + 148) { -ms-grid-row: 37; grid-row: 37; }
  .fs-c-productList__list > *:nth-child(n + 149):nth-child(-n + 152) { -ms-grid-row: 38; grid-row: 38; }
  .fs-c-productList__list > *:nth-child(n + 153):nth-child(-n + 156) { -ms-grid-row: 39; grid-row: 39; }
  .fs-c-productList__list > *:nth-child(n + 157):nth-child(-n + 160) { -ms-grid-row: 40; grid-row: 40; }
  .fs-c-productList__list > *:nth-child(n + 161):nth-child(-n + 164) { -ms-grid-row: 41; grid-row: 41; }
  .fs-c-productList__list > *:nth-child(n + 165):nth-child(-n + 168) { -ms-grid-row: 42; grid-row: 42; }
  .fs-c-productList__list > *:nth-child(n + 169):nth-child(-n + 172) { -ms-grid-row: 43; grid-row: 43; }
  .fs-c-productList__list > *:nth-child(n + 173):nth-child(-n + 176) { -ms-grid-row: 44; grid-row: 44; }
  .fs-c-productList__list > *:nth-child(n + 177):nth-child(-n + 180) { -ms-grid-row: 45; grid-row: 45; }
  .fs-c-productList__list > *:nth-child(n + 181):nth-child(-n + 184) { -ms-grid-row: 46; grid-row: 46; }
  .fs-c-productList__list > *:nth-child(n + 185):nth-child(-n + 188) { -ms-grid-row: 47; grid-row: 47; }
  .fs-c-productList__list > *:nth-child(n + 189):nth-child(-n + 192) { -ms-grid-row: 48; grid-row: 48; }
  .fs-c-productList__list > *:nth-child(n + 193):nth-child(-n + 196) { -ms-grid-row: 49; grid-row: 49; }
  .fs-c-productList__list > *:nth-child(n + 197):nth-child(-n + 200) { -ms-grid-row: 50; grid-row: 50; }
}

/**
 * 商品詳細 (レイアウト)
 */
.fs-l-productLayout {
  display: flex;
  flex-wrap: wrap;
}
.tm-l-productLayout__item--1 {
  width: 100%;
  margin-top: 0;
}
.tm-l-productLayout__item--2,
.tm-l-productLayout__item--3,
.tm-l-productLayout__item--4,
.tm-l-productLayout__item--5 {
  width: 100%;
  margin-top: 2em;
}
@media screen and (min-width: 960px) {
  .tm-l-productLayout__item--1 {
    width: 516px;
    margin-top: 0;
    padding-right: 1em;
  }
  .tm-l-productLayout__item--2 {
    width: calc(100% - 516px);
    margin-top: 0;
    padding-left: 1em;
  }
  .tm-l-productLayout__item--3,
  .tm-l-productLayout__item--4,
  .tm-l-productLayout__item--5 {
    padding: 0 .5em;
  }
}

/**
 * 商品詳細 (画像)
 */
.fs-c-productCarouselMainImage__carousel .slick-arrow {
  display: none!important;
}
.fs-c-productCarouselMainImage__thumbnailList {
  justify-content: center;
  overflow-x: auto;
  overflow-y: hidden;
}
.fs-c-productCarouselMainImage__thumbnail__img {
  cursor: pointer;
}

/**
 * 商品詳細 (商品番号 ～ カートに入れる等)
 */
.fs-c-productNumber {
  min-width: 100%;
  font-size: 1.6rem;
  font-weight: bold;
}
.fs-c-productMarks {
  margin-top: 0.67em;
}
.fs-c-productNameHeading {
  margin: 1.34em 0;
}
.fs-c-productNameHeading__copy {
  display: block;
  font-size: 1.3rem;
  margin-bottom: 0.67em;
}
.fs-c-productNameHeading__name {
  display: block;
  font-size: 2.5rem;
}
.fs-c-productPrice__main__label {
  font-size: 1.8rem;
  font-weight: bold;
}
.fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price {
  margin-left: 8px;
  font-size: 2rem;
  font-weight: bold;
  color: #AB2F37;
}
.fs-c-productPrice__addon {
  margin-left: 8px;
  font-size: 1.6rem;
  font-weight: bold;
}
.fs-c-productPointDisplay {
  min-width: 100%;
  padding: 5px 8px;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.5;
}
.fs-c-productPostage {
  display: none;
}
.fs-c-requiredMark::before {
  color: #FF0000;
}
.fs-c-productQuantityAndWishlist {
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
}
.fs-c-button--addToCart--detail {
  width: 338px;
  min-width: auto;
  max-width: 100%;
  background: #AB2F37;
  border: 1px solid #AB2F37;
  padding: .5em 0;
  font-weight: bold;
  line-height: 1.5;
}
.fs-c-productNotice--outOfStock {
  background: #fff;
  margin-bottom: 8px;
  border: 1px solid #AB2F37;
  padding: 4px;
  color: #AB2F37;
}
.fs-p-productDescription--short .box {
  padding: 1em 0;
  border-bottom: 1px dotted #707070;
}
.fs-p-productDescription--short .list {
  margin: 0;
  padding-left: 1.5em;
}
.fs-c-buttonContainer--inquiryAboutProduct {
  justify-content: center;
  padding: 8px 0 0;
}
.fs-c-returnedSpecialContract__link {
  text-align: center;
}

/**
 * 商品詳細 (画面右下固定の「カートに入れる」)
 */
.tm-p-jumpAddToCart {
  z-index: 2;
  position: fixed;
  top: auto;
  bottom: 0;
  left: auto;
  right: 0;
  justify-content: center;
  align-items: center;
  padding: 0;
  margin: 16px 56px 162px 16px;
  width: 0;
  height: 0;
  opacity: 0;
  transition: .5s;
  visibility: hidden;
}
.tm-p-jumpAddToCart.fixed {
  margin: 16px 16px 132px 16px;
  width: 60px;
  height: 60px;
  opacity: .7;
  visibility: visible;
}
.tm-p-jumpAddToCart.fixed:hover {
  opacity: 1;
}
a.tm-p-jumpAddToCart__link {
  display: flex;
  justify-content: center;
  align-items: center;
  text-indent: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #AB2F37;
  font-size: 1.2rem;
  font-weight: bold;
  color: #FFFFFF;
  text-align: center;
}
a.tm-p-jumpAddToCart__link:hover {
  color: #FFFFFF;
  text-decoration: none;
}
a.tm-p-jumpAddToCart__link::before {
  content: '';
}
@media screen and (min-width: 480px) {
  .tm-p-jumpAddToCart {
    margin: 16px 56px 192px 16px;
  }
  .tm-p-jumpAddToCart.fixed {
    margin: 16px 16px 152px 16px;
    width: 80px;
    height: 80px;
  }
}

/**
 * 商品詳細 (レビュー)
 */
.fs-c-productReview__aggregateRating {
  justify-content: center;
  border: 1px solid #B5B5B5;
  padding: .5em;
  background: #EDEDEF;
  text-align: center;
}
.fs-c-aggregateRating__rating {
  justify-content: center;
  flex-wrap: nowrap;
  flex: 0 0 auto;
  font-size: 1.4rem;
  font-weight: bold;
}
.fs-c-aggregateRating__rating::before {
  content: "平均評価";
  flex: 0 0 auto;
  padding-right: 1em;
  font-size: 1.4rem;
}
.fs-c-rating__value {
/*  display: none; */
  font-weight: normal;
  color: #2E292A;
}
.fs-c-aggregateRating__count {
  display: none;
}
.fs-c-productReview__reviewList {
  max-height: 400px;
  margin-bottom: 0;
  overflow-y: auto;
  background: #EDEDEF;
  border: 1px solid #B5B5B5;
  scrollbar-width: thin; /* FF */
  scrollbar-color: #7C8790 #EDEDEF; /* FF */
  -ms-scrollbar-highlight-color: #EDEDEF; /* IE11(廃止可能性高) */
  -ms-scrollbar-face-color: #7C8790; /* IE11(廃止可能性高) */
  -ms-scrollbar-arrow-color: #7C8790; /* IE11(廃止可能性高) */
}
.fs-c-productReview__reviewList::-webkit-scrollbar { /* webkit系 */
  width: 8px;
}
.fs-c-productReview__reviewList::-webkit-scrollbar-thumb { /* webkit系 */
  background-color: #7C8790;
/*  border-radius: 4px; */
}
.fs-c-productReview__reviewList::-webkit-scrollbar-track { /* webkit系 */
  background-color: #EDEDEF;
}
.fs-c-reviewList__item {
  padding: 1em 1.5em;
}
.fs-c-reviewList__item:first-child {
  border-top: none;
}
.fs-c-reviewList__item:last-child {
  border-bottom: none;
}
.fs-c-reviewer__name {
  font-size: 1.4rem;
}
.fs-c-reviewer__name::before {
  content: "投稿者：";
}
.fs-c-reviewer__name > a {
  color: #2E292A;
  text-decoration: none;
}
.fs-c-reviewer__name__reviewNumber {
  display: none;
}
.fs-c-reviewer__profile__status {
  display: none;
}
.fs-c-reviewer__profile > span {
  margin-left: .5em;
}
.fs-c-reviewInfo__date {
  font-size: 1.4rem;
}
.fs-c-reviewList__item__body {
  border: 1px solid #a9a9a9;
  background: #fff;
  font-size: 1.4rem;
}
.fs-c-productReview__allReviews {
  justify-content: flex-end;
}
.fs-c-productReview__addReview {
  justify-content: center;
}
.fs-c-button--addReview--detail {
  border: 1px solid #192448;
  padding: .5em 3.5em;
}
.fs-c-button--addReview--detail:hover {
  background: #192448;
  text-decoration: none;
}
.fs-c-button--addReview--detail::before {
  font-size: 1.4rem;
  font-weight: bold;
  color: #2E292A;
}
.fs-c-button--addReview--detail:hover::before {
  color: #fff;
}
.fs-c-button--addReview--detail > span {
  font-size: 1.4rem;
  font-weight: bold;
  color: #2E292A;
}
.fs-c-button--addReview--detail:hover > span {
  color: #fff;
}

/**
 * カート
 */
.fs-l-cart .fs-c-listedOptionPrice {
  display: block;
}
.fs-l-cart .fs-c-listedOptionPrice__option__label {
  font-weight: 600;
}
.fs-l-cart .fs-c-listedOptionPrice__option__value {
  padding-left: .25em;
}
.fs-l-cart .fs-c-listedOptionPrice__price {
  display: block;
  text-align: right;
  padding-top: .25em;
}
.fs-l-cart .tm-c-button--registeredUserPurchase {
  background: #AE2415;
  border: 1px solid #AE2415;
}

/**
 * ご注文手続き
 */
#fs_button_changeShippingAddress .fs-c-button__label {
  font-size: 0;
}
#fs_button_changeShippingAddress .fs-c-button__label::before {
  content: 'お届け先を変更';
  font-size: 1.2rem;
}
#fs_button_changeDeliveryMethod .fs-c-button--standard {
  border: none;
  background-color: #AE2415;
  color: #FFF;
}
#fs_button_changeDeliveryMethod .fs-c-button__label {
  font-size: 0;
}
#fs_button_changeDeliveryMethod .fs-c-button__label::before {
  content: '配送日時を指定する';
  font-size: 1.2rem;
}
@media screen and (min-width: 960px) {
  [class^="fs-body-checkout"] .fs-l-checkout__sideColumn {
    position: sticky;
    position: -webkit-sticky;
    top: 8px;
  }
}

/**
 * お客様情報入力
 */
.tarakomentaiko #fs_registrationUncheckedMessage + .fs-c-agreementConfirmation__checkbox > .fs-c-checkbox__label {
  align-items: normal;
}
.tarakomentaiko #fs_registrationUncheckedMessage + .fs-c-agreementConfirmation__checkbox > .fs-c-checkbox__label > .fs-c-checkbox__checkMark {
  margin: 4px 4px 0 0;
}

/**
 * ログイン
 */
.tarakomentaiko .fs-c-loginForm {
  display: block;
  max-width: none;
}
.tarakomentaiko .fs-c-subSection__title {
  padding-bottom: .75em;
  text-align: center;
}
.tarakomentaiko .fs-c-registeredUsers {
  flex-basis: 100%;
  margin-top: 5em;
}
.tarakomentaiko .fs-c-anotherLogin__message--amazon {
  padding: 0 1em;
  text-align: center;
}
.tarakomentaiko .fs-c-anotherLogin__message--amazon p {
  width: 100%;
}
.tarakomentaiko .fs-c-newUsers {
  margin-top: 5em;
}
.tarakomentaiko .fs-c-newUsers__message {
  margin-top: 2em;
  margin-bottom: 2em;
  text-align: center;
}
.tarakomentaiko .fs-c-newUsers .fs-c-button--memberRegister {
  border: none;
  background-color: #AD2414;
}
.tarakomentaiko .tm-c-newUsers__benefit {
  padding: 0 .5em;
}
.tarakomentaiko .tm-c-newUsers__benefit h3 {
  margin-top: 2em;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}
.tarakomentaiko .tm-c-newUsers__benefit .box {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 600px;
  margin-right: auto;
  margin-left: auto;
  border: 1px solid #AD2414;
  padding: 1em;
}
.tarakomentaiko .tm-c-newUsers__benefit .box ul {
  padding-left: 1.5em;
}
.tarakomentaiko .fs-c-guestPurchase {
  display: none;
}

@media screen and (min-width: 960px) {
  .tarakomentaiko .fs-c-loginForm {
    display: flex;
    justify-content: center;
    gap: 32px;
    flex-wrap: nowrap;
  }
  .tarakomentaiko .fs-c-loginForm > * {
    flex-basis: calc(50% - 40px);
    margin-left: 0;
    margin-right: 0;
  }
  .tarakomentaiko .fs-c-registeredUsers {
    flex-grow: 0;
    flex-basis: calc(50% - 20px);
  }
}

/**
 * パスワード再設定
 */
.tm-reset-password-flow {
  width: 100%;
  margin-right: 0;
  margin-bottom: 3em;
  margin-left: 0;
  text-align: center;
}
.tm-reset-password-flow img {
  max-width: 100%;
}
.fs-c-inputInformation .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(255, 255, 255, .75);
  padding: .5em;
}
.fs-c-inputInformation .popup {
  width: 100%;
  max-width: 1200px;
  background-color: #FFF;
  border: 1px solid #AD2414;
  padding: 2em 1em;
  font-size: 1.8rem;
  font-weight: bold;
  color: #AE2415;
  text-align: center;
}
.fs-c-inputInformation .popup .btn {
  margin-top: 1.5em;
}
.fs-c-inputInformation .popup .btn a {
  background-color: #AE2415;
  padding: .5em 5em;
  font-size: 1.6rem;
  color: #FFF;
  text-align: center;
}
.fs-c-inputInformation .popup .btn a:hover {
  text-decoration: none;
  opacity: .7;
}

/**
 * フリーページ共用
 */
.tm-l-main {
  margin: 24px auto;
  padding: 8px 0;
  max-width: 1216px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.tm-c-freepage {
  padding: 8px 0;
}
.tm-c-freepage p {
  margin: 1em 0;
}
.tm-c-freepage small {
  font-size: 1.4rem;
}
.tm-c-freepage a:hover {
  opacity: .7;
  transition: .5s;
}
.tm-c-freepage ul {
  margin: 0;
  padding: 0;
}
.tm-c-freepage ul > li {
  list-style: none;
}
.tm-c-freepage ul.disc {
  margin-left: 1em;
}
.tm-c-freepage ul.disc > li {
  list-style: disc outside;
}
.tm-c-freepage figure {
  margin: 0;
}
.tm-c-freepage .heading {
  font-size: 2.4rem;
  font-weight: bold;
}
.tm-c-freepage .title {
  font-size: 2rem;
  font-weight: bold;
}
.tm-c-freepage i.fa-angle-right,
.tm-c-freepage i.fa-angle-double-right {
  margin-left: .5em;
}

/**
 * フリーページ - 新着情報(一時的)
 */
.tm-p-dateList > li {
  padding: 2em 1em 0;
  line-height: 1.5;
}
.tm-p-dateList > li + li {
  margin-top: 2em;
  border-top: 1px solid #999999;
}
.tm-p-dateList > li:last-child {
  padding-bottom: 2em;
}
.tm-p-dateList > li > .header {
  margin-bottom: .5em;
}
.tm-p-dateList > li > .header > time:first-child {
  font-weight: bold;
}
.tm-p-dateList > li > .body > .title {
  margin: 0;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.5;
}
.tm-p-dateList > li > .body > .text {
  margin-top: 1em;
  line-height: 1.75;
}

/**
 * box000
 *  ・会社概要ページ - 上部記述
 */
.box000 {
  overflow: hidden;
}

/**
 * box001
 *  ・フリーページ - タイトル
 */
.box001 > .title {
  position: relative;
}
.box001 > .title > h1 {
  position: absolute;
  bottom: 1.5em;
  left: 0;
  min-width: 100%;
  margin: 0;
  padding: .5em 0;
  background: #FFF;
  opacity: .8;
  font-size: 6vw;
  font-weight: bold;
  text-align: center;
}
.box001 > .text {
  font-size: 4.5vw;
  text-align: center;
  padding: 2.222em 0;
}
@media screen and (min-width: 480px) { .box001 > .title > h1 { font-size: 2.88rem;  } .box001 > .text { font-size: 2.16rem; } }
@media screen and (min-width: 600px) { .box001 > .title > h1 { font-size: 3.21rem;  } .box001 > .text { font-size: 2.32rem; } }
@media screen and (min-width: 768px) { .box001 > .title > h1 { font-size: 3.672rem; } .box001 > .text { font-size: 2.54rem; } }
@media screen and (min-width: 960px) { .box001 > .title > h1 { font-size: 4.2rem;   } .box001 > .text { font-size: 2.8rem;  } }

/**
 * box002
 *  ・海千についてページ - 海千の商品特徴
 */
.box002 > .title {
  text-align: center;
  margin-bottom: 1.5em;
}
.box002 > .text {
  text-align: center;
}

/**
 * box003
 *  ・海千についてページ - 海千の商品特徴の3点
 */
.box003 .heading {
  margin-bottom: 1.5em;
  text-align: center;
}
.box003 .flexbox li.row + li.row {
  margin-top: 5em;
}
.box003 .title {
  margin-top: 0;
}
.box003 .link {
  margin-top: .75em;
  text-align: right;
}
.box003 .link a {
  text-decoration: none;
}
.box003 .link a:hover {
  border-bottom: 1px solid #3790e8;
}
.box003.counter {
  counter-reset: counter;
}
.box003.counter .title::before {
  counter-increment: counter;
  content: counter(counter) ". ";
}
@media screen and (min-width: 768px) {
  .box003 .heading {
    margin-bottom: 2.5em;
  }
  .box003 .title {
    margin-top: .25em;
  }
  .box003 .flexbox li.row + li.row {
    margin-top: 2.5em;
  }
}

/**
 * box004
 *  ・海千についてページ - 海千の明太子について
 */
.box004 .heading {
  margin-bottom: 1.5em;
  text-align: center;
}
.box004 .flexbox > .row > li > div {
  display: flex;
  align-items: stretch;
  height: 100%;
  padding: 1.5em;
}
.box004 .flexbox > .row > li > div > div:nth-of-type(1) {
  width: 50%;
  padding-right: .75em;
}
.box004 .flexbox > .row > li > div > div:nth-of-type(2) {
  position: relative;
  width: 50%;
  padding-left: .75em;
}

/**
 * box005
 *  ・会社概要ページ - 会社概要(表)
 *  ・会社概要ページ - 沿革・あゆみ(表)
 */
.box005 table {
  width: 100%;
  border-collapse: collapse;
}
.box005 th, .box005 td {
  display: block;
  width: 100%;
  padding: .5em;
  vertical-align: middle;
}
.box005 th {
  border: 1px solid #ccc;
  background: rgba(126, 126, 126, 0.08);
  text-align: left;
  font-weight: normal;
}
.box005 td {
  border-right: 1px solid #ccc;
  border-left: 1px solid #ccc;
}
.box005 tr:last-of-type {
  border-bottom: 1px solid #ccc;
}
@media screen and (min-width: 768px) {
  .box005 th, .box005 td {
    display: table-cell;
    width: auto;
    border: 1px solid #ccc;
  }
  .box005 tr:last-of-type {
    border-bottom: none;
  }
}

/**
 * box006
 */
.box006 {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
}
@media screen and (min-width: 480px) {
  .box006 {
    flex-direction: row;
  }
}

/**
 * box007
 *  ・明太子ができるまでページ - 下部
 *  ・安心・安全への取り組みページ - 下部
 */
.box007 .flexbox > .row > * {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: center;
  justify-content: center;
}
.box007 a {
  display: block;
}
.box007 figure > figcaption {
  margin-top: .5em;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  color: #6F7070;
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .box007 .flexbox > .row > * {
    display: block;
  }
}

/**
 * box008
 *  ・メディア情報ページ - 一覧
 */
.box008 table {
  border-collapse: collapse;
}
.box008 tr {
  display: block;
  margin-top: 1em;
  border: 1px solid #707070;
}
.box008 th {
  display: block;
  width: 100%;
  padding: .625em 1em;
  background: #B18F52;
}
.box008 th > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
.box008 th > div > .date {
  font-weight: bold;
  color: #FFF;
}
.box008 th > div > .category {
  width: 6em;
  border: 1px solid #707070;
  background: #FFF;
  text-align: center;
}
.box008 td {
  display: block;
  width: 100%;
  padding: 1em;
}
.box008 td > a {
  text-decoration: underline;
  color: #2E292A;
}
.box008 .more {
  margin-top: 3em;
  text-align: right;
}
.box008 .more > a {
  color: #2E292A;
}
.box008 .more > a:hover {
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .box008 tr {
    display: table-row;
    margin-top: 0;
    border: none;
  }
  .box008 th {
    display: table-cell;
    width: 17em;
    height: 5em;
    border: 1px solid #707070;
  }
  .box008 td {
    display: table-cell;
    width: auto;
    padding: 1em;
    border: 1px solid #707070;
  }
}

/**
 * box009
 *  ・メディア情報ページ - メディア掲載商品紹介
 */
.box009 .heading {
  padding: .5em;
  background: #DBDBDB;
}
.box009 .card {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row; /* columnではIE11がバグるためrow指定。 */
  border: 1px solid #707070;
  height: 100%;
  width: 100%;
}
.box009 .card > * {
  width: 100%;
}
.box009 .title {
  margin: 1em .8em .375em;
  font-weight: bold;
  color: #AE2415;
}
.box009 .sub {
  margin: 0 1.325em;
  border-bottom: 1px dotted #707070;
  padding: .75em 0;
  font-size: 1.2rem;
}
.box009 .text {
  margin: 1em 1em 0;
}
.box009 .footer {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  margin: 1.5em 0 1em;
}

/**
 * box010
 *  ・メディア情報ページ - お問い合わせ窓口
 */
.box010 > div {
  margin: 0 auto;
  width: 350px;
  max-width: 100%;
  border: 2px solid #1544AE;
  padding: 1.5em;
  text-align: center;
}
.box010 .footer {
  margin-top: 1em;
  text-align: center;
}

/**
 * box011
 *  ・宗像プロジェクトページ - しいちゃん
 */
.box011 {
  width: 90vw;
  margin: 0 auto;
  padding: 1em;
  background: #F2F2F2;
}
.box011 .title {
  text-align: center;
}
.box011 .body {
  display: flex;
  justify-content: center;
}
.box011 .body .img {
  width: 30%;
  padding-right: .5em;
}
.box011 .body .text {
  width: 70%;
  padding-left: .5em;
}
@media screen and (min-width: 480px) {
  .box011 {
    width: 450px;
  }
}

/**
 * box012
 *  ・宗像プロジェクトページ - 商品一覧
 */
.box012 .flexbox {
  max-width: 450px;
  margin-top: 1.5em;
}
.box012 .card {
  height: 100%;
  border: 1px solid #707070;
  padding: 1em;
}
.box012 .title {
  margin-top: .5em;
  text-align: center;
}
.box012 .body {
  display: flex;
  justify-content: center;
}
.box012 .img {
  position: relative;
  width: 50%;
  padding-right: .5em;
}
.box012 .img .badge {
  position: absolute;
  top: -.625em;
  left: -.625em;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6.5em;
  height: 6.5em;
  border-radius: 50%;
  background: #FECD01;
  font-size: 1.2rem;
  font-weight: bold;
  text-align: center;
}
.box012 .text {
  width: 50%;
  padding-left: .5em;
}
.box012 .footer {
  display: flex;
  justify-content: center;
  margin-top: 1em;
}
@media screen and (min-width: 960px) {
  .box012 .flexbox {
    max-width: 900px;
  }
}

/**
 * box013
 *  ・明太子ができるまでページ - 製品ができるまで
 *  ・明太子ができるまでページ - 海千の明太子について
 *  ・安心・安全への取り組みページ
 */
.box013 .heading {
  margin-bottom: 1.5em;
  text-align: center;
}
.box013 .flexbox {
  max-width: 482px;
  margin: 0 auto;
}
.box013 .flexbox li.row + li.row {
  margin-top: 5em;
}
.box013 .title {
  margin-top: 0;
}
.box013 .link {
  margin-top: .75em;
  text-align: right;
}
.box013 .link a {
  text-decoration: none;
}
.box013 .link a:hover {
  border-bottom: 1px solid #3790e8;
}
.box013.counter {
  counter-reset: counter;
}
.box013.counter .title::before {
  counter-increment: counter;
  content: counter(counter) ". ";
}
@media screen and (min-width: 768px) {
  .box013 .heading {
    margin-bottom: 2.5em;
  }
  .box013 .title {
    margin-top: .25em;
  }
  .box013 .flexbox {
    max-width: none;
  }
  .box013 .flexbox li.row + li.row {
    margin-top: 2.5em;
  }
}

/**
 * box014
 *  ・レシピページ
 */
.box014 {
  background: url(https://tarakomentaiko.itembox.design/item/img/recipe/bg.png) center;
}
.box014 .heading {
  padding: 3.125em 1em;
  text-align: center;
}
.box014 .flexbox {
  max-width: 464px;
}
.box014 .card {
  position: relative;
  display: block;
}
.box014 .card:hover {
  text-decoration: none;
}
.box014 figcaption {
  padding: 1em 0;
  color: #C64C34;
  text-align: center;
}
.box014 .badge {
  position: absolute;
  top: 0;
  right: 0;
  padding: 1em;
  background: #24a0cfcc;
  color: white;
}
@media screen and (min-width: 960px) {
  .box014 .flexbox {
    max-width: 864px;
  }
}

/**
 * box015
 *  ・レシピ詳細ページ
 */
.box015 {
  background: url(https://tarakomentaiko.itembox.design/item/img/recipe/bg.png) center;
}
.box015 ul > li {
  display: flex;
  justify-content: space-between;
  padding: .5em 1em;
}
.box015 ul > li:nth-child(odd) {
  background: #FFF;
}
.box015 ul > li > span:nth-of-type(2) {
  text-align: right;
}
.box015 ol {
  counter-reset: counter-box015;
  list-style: none;
  padding-left: 0;
}
.box015 ol > li {
  position: relative;
  padding: .5em 1em .5em 2em;
}
.box015 ol > li + li {
  border-top: 1px solid #ccc;
}
.box015 ol > li:before {
  content: counter(counter-box015);
  counter-increment: counter-box015;
  background-color: #946a30;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 1.6666666667em;
  width: 1.6666666667em;
  color: #FFF;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  margin-top: .8333333333em;
  position: absolute;
  top: 0;
  left: 0;
}
.box015 .footer > div {
  max-width: 752px;
  margin: 0 auto;
  padding: 2em 1em;
}
.box015 .footer > div > a {
  display: block;
}

/**
 * box016
 *  ・よくあるご質問ページ
 */
.box016 {
  padding: 0 1em;
}
.box016 .inner {
  padding: 1em;
}
.box016 dl > dt {
  position: relative;
  padding: .5em 0 .5em 2em;
}
.box016 dl > dt:before {
  content: 'Q';
  margin-top: .5em;
  background-color: #AE2415;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 1.5em;
  width: 1.5em;
  color: #FFF;
  font-weight: bold;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
}
.box016 dl > dt > label {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.box016 dl > dt > label > i {
  margin-left: .5em;
  color: #909090;
  transform: rotate(0deg);
  transition: .5s;
}
.box016 dl > dd {
  display: none;
  position: relative;
  margin: 1em 0 3em;
  padding: 0 1em 0 2em;
}
.box016 dl > dd:before {
  content: 'A';
  background-color: #1544AE;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 1.5em;
  width: 1.5em;
  color: #FFF;
  font-weight: bold;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
}
.box016 .controller {
  display: none;
}
.box016 .controller:checked + dl > dd {
  display: block;
}
.box016 .controller:checked + dl > dt > label > i {
  transform: rotate(540deg);
}

/**
 * box017
 *  ・お客様の声ページ
 */
.box017 {
  padding: 0 1em;
}
.box017 > dl {
  border: 1px solid #999999;
  padding: 2em 2em 1.75em;
  background: rgba(126, 126, 126, 0.08);
}
.box017 > dl + dl {
  margin-top: 2em;
}
.box017 dt {
  font-weight: bold;
}
.box017 dd {
  margin-left: 0;
}
.box017 dd > p:first-of-type {
  margin: .5em 0;
}
.box017 dd > p:last-of-type {
  margin: 0;
  text-align: right;
}

/**
 * box018
 *  ・ご利用ガイドトップページ
 */
.box018 .flexbox {
  max-width: 392px;
}
.box018 .card {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 1.5em 1em 1.5em 1.25em;
  background: #F0EDE5;
  color: #2E292A;
  text-decoration: none;
  transition: .5s;
  box-shadow: .25em .25em .5em 0 rgba(0, 0, 0, 0.25);
}
.box018 .card .body {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.box018 .card:hover {
  transform: translateY(-.25em);
  opacity: 1;
}
.box018 .title {
  font-size: 1.8rem;
  text-align: center;
}
.box018 .text {
  width: 100%;
  margin-top: .75em;
  font-size: 1.5rem;
}
.box018 .card i {
  margin-left: .625em;
  font-size: 2.4rem;
  opacity: .5;
}
@media screen and (min-width: 768px) {
  .box018 .flexbox {
    max-width: none;
  }
}

/**
 * box019
 *  ・会員登録についてページ
 */
.box019 {
  text-align: center;
}
.box019 .heading-sub {
  margin-top: 1.5em;
}
.box019 .flexbox {
  max-width: 462px;
  margin-top: 1.5em;
  padding: 0 2em;
}
.box019 .card {
  padding: 1em;
  background: #F8F2E7;
}
.box019 .badge {
  display: flex;
  justify-content: center;
}
.box019 .badge div {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 6.5em;
  height: 6.5em;
  border-radius: 50%;
  padding-top: .5em;
  background: #2E292A;
  font-size: 1.2rem;
  color: #FFF;
}
.box019 .badge div span {
  font-size: 2rem;
}
.box019 .title {
  font-size: 1.6rem;
}
.box019 .img {
  margin-top: .5em;
}
.box019 .text {
  margin-top: 1em;
}
@media screen and (min-width: 960px) {
  .box019 .flexbox {
    max-width: 924px;
  }
}

/**
 * box020
 *  ・会員登録についてページ - ポイントについて
 */
.box020 .img {
  text-align: center;
}
.box020 .heading {
  background: #F8F2E7;
  font-size: 1.8rem;
  padding: .75em 1.5em;
}
.box020 .text {
  padding: 0 1.5em;
}
.box020 dt {
  margin-top: 1.5em;
  font-weight: bold;
}
.box020 dd {
  margin: 0;
}
.box020 ul {
  margin-left: 1em;
}
.box020 ul > li {
  margin-top: 1.5em;
  list-style: disc;
}

/**
 * box021
 *  ・ガイド詳細ページ
 */
.box021 {
  padding: 0 1em;
}
.box021 .fs-c-documentColumn__heading {
  margin-bottom: 1.5em;
}
.box021 .title {
  font-size: 1.6rem;
  margin: 2em 0 .75em;
}
.box021 ul {
  margin-left: 1.5em;
}
.box021 ul > li {
  list-style: disc;
}
.box021 .detail-link {
  text-align: center;
}
.box021 .detail-link > a {
  font-weight: bold;
  color: #2E292A;
}
.box021 .detail-link > a:hover {
  text-decoration: none;
}
.box021 .detail-link > a > i {
  margin-left: 1em;
}
.box021 .emphasis {
  background: #F7F7F7;
  padding: 1.5em;
}
.box021 .commission {
  width: 100%;
  border-collapse: collapse;
}
.box021 .commission th {
  width: 40%;
  padding: .5em;
  border: 1px solid #707070;
  background: #DBDBDB;
}
.box021 .commission td {
  padding: .5em;
  border: 1px solid #707070;
}
.box021 .tel {
  width: 400px;
  max-width: calc(100% - 1em);
  margin: 2em auto 0;
  padding: 1.5em;
  background: rgba(126, 126, 126, 0.08);
  text-align: center;
  font-weight: bold;
}
.box021 .tel-title {
  font-size: 2.2rem;
}
.box021 .tel-number {
  margin-top: .5em;
  font-size: 2.4rem;
  color: #AE2415;
}
.box021 .tel-number > i {
  margin-right: .5em;
}
.box021 .tel-time {
  margin-top: .5em;
}
.box021 .fax {
  width: 400px;
  max-width: calc(100% - 1em);
  margin: 2em auto 0;
  padding: 1.5em;
  background: rgba(126, 126, 126, 0.08);
  text-align: center;
  font-weight: bold;
}
.box021 .fax-title {
  font-size: 2.2rem;
}
.box021 .fax-number {
  margin-top: .5em;
  font-size: 2.4rem;
  color: #1544AE;
}
.box021 .fax-number > i {
  margin-right: .5em;
}
.box021 .fax-time {
  margin-top: .5em;
}
.box021 .order-sheet {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: 2em;
  margin-bottom: 2em;
}
.box021 .order-sheet > p {
  margin-bottom: .25em;
}
.box021 table.shipping {
  width: 100%;
  border-collapse: collapse;
}
.box021 table.shipping tr:first-of-type {
  height: 3.125em;
}
.box021 table.shipping tr + tr {
  height: 3.75em;
}
.box021 table.shipping th {
  border: 1px solid #707070;
  background: #DBDBDB;
  text-align: center;
  vertical-align: middle;
}
.box021 table.shipping th > img {
  vertical-align: middle;
}
.box021 table.shipping th > img + img {
  margin-left: .625em;
}
.box021 table.shipping td {
  border: 1px solid #707070;
  text-align: center;
  vertical-align: middle;
}
.box021 .recommended > dt {
  margin-left: 1em;
}
.box021 .recommended > dd {
  margin-left: 2em;
}
/**
 * box022
 *  ・404ページ
 */
.box022 {
  margin-top: 6.25em;
  text-align: center;
}
.box022 .heading {
  font-size: 3rem;
  font-weight: bold;
}
.box022 .sub {
  margin-top: 1em;
  font-size: 3rem;
  font-weight: bold;
  color: #2E0E69;
}
.box022 .text {
  margin-top: 2em;
  font-size: 1.6rem;
  font-weight: bold;
}

/**
 * box023
 *  ・店舗メンテナンス中ページ
 */
.box023 {
  display: block;
  max-width: 1200px;
  margin: 0 auto;
}
.box023 .heading {
  font-size: 3rem;
  font-weight: bold;
}
.box023 .text {
  font-size: 1.6rem;
}
.box023 .remark {
  font-size: 1.6rem;
}
.box023 .btn008 {
  margin: .5em;
}
.box023 .frame {
  width: 600px;
  max-width: calc(100vw - 4em);
  margin: 1em auto 5em;
  border: 1px solid #707070;
}
.box023 .frame .title {
  font-size: 1.8rem;
  font-weight: bold;
  color: #2E0E69;
}

/**
 * box025
 *  ・店舗紹介ページ
 */
.box025 {
  padding: 0 1em;
}
.box025 .title {
  margin-bottom: 0;
  padding: .75em 1.5em;
  background: #2E0E69;
  font-size: 1.6rem;
  font-weight: bold;
  color: #FFF;
  text-align: center;
}
.box025 table {
  width: 100%;
  border-collapse: collapse;
}
.box025 thead {
  display: none;
}
.box025 th {
  border: 1px solid #2E292A;
  padding: .5em;
  background: #F7F7F7;
}
.box025 td {
  display: flex;
  max-width: 450px;
  margin-right: auto;
  margin-left: auto;
  font-size: 1.4rem;
}
.box025 td:first-of-type {
  align-items: center;
  justify-content: center;
  margin-top: 1em;
  text-align: center;
  border-top: 1px solid #707070;
  border-right: 1px solid #707070;
  border-left: 1px solid #707070;
  padding: 1.5em 1.5em 1em;
}
.box025 td:nth-of-type(n+2):nth-of-type(-n+4) {
  border-right: 1px solid #707070;
  border-left: 1px solid #707070;
  padding: .25em 1.5em;
}
.box025 td:last-of-type {
  border-right: 1px solid #707070;
  border-bottom: 1px solid #707070;
  border-left: 1px solid #707070;
  padding: .25em 1.5em 1.5em;
}
.box025 td:nth-of-type(n+2)::before {
  content: attr(data-label);
  width: 6em;
  display: flex;
  align-items: center;
}
.box025 td a {
  display: block;
}
.box025 td a:hover {
  text-decoration: none;
}
.box025 td img {
  max-width: 100%;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  .box025 thead {
    display: table-header-group;
  }
  .box025 td {
    display: table-cell;
    width: auto;
  }
  .box025 td:first-of-type {
    margin-top: 0;
    border: 1px solid #2E292A;
    padding: .5em;
  }
  .box025 td:nth-of-type(n+2):nth-of-type(-n+4) {
    border: 1px solid #707070;
    padding: .5em;
  }
  .box025 td:last-of-type {
    border: 1px solid #2E292A;
    padding: .5em;
  }
  .box025 td:nth-of-type(n+2)::before {
    content: normal;
  }
  .box025 td img {
    max-width: 100px;
  }
}

/**
 * box026
 *  ・店舗詳細ページ
 */
.box026 {
  padding: 0 1em;
  counter-reset: counter-box026;
}
.box026 .heading {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}
.box026 table {
  width: 100%;
  border-collapse: collapse;
}
.box026 th {
  border: 1px solid #707070;
  background: #F7F7F7;
  padding: .5em;
}
.box026 td {
  border: 1px solid #707070;
  padding: .5em;
}
.box026 td small {
  display: block;
  margin-top: .75em;
}
.box026 dl {
  margin: 0 0 2em;
}
.box026 dt {
  position: relative;
  padding-left: 1.25em;
  font-weight: bold;
}
.box026 dt:before {
  content: counter(counter-box026);
  counter-increment: counter-box026;
  margin-top: .3333333333em;
  border: 1.825px solid #2E292A;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 1.3333333333em;
  width: 1.3333333333em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
}
.box026 dd {
  margin-left: .25em;
}
.box026 figcaption {
  text-align: center;
  margin: .5em 0 1em;
}
.box026 .map {
  padding: 1em;
}
.box026 .map > iframe {
  width: 100%;
}
@media screen and (min-width: 450px) {
  .box026 .flexbox {
    max-width: 482px;
  }
}
@media screen and (min-width: 768px) {
  .box026 .flexbox {
    max-width: none;
  }
  .box026 dl {
    margin: 0;
  }
  .box026 figcaption {
    margin: 0;
  }
}

/**
 * box027
 *  ・店舗詳細ページ - 下部回遊リンク
 */
.box027 .heading {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}
.box027 a {
  display: block;
}
.box027 figcaption {
  margin-top: .25em;
  text-align: center;
}

/**
 * box028
 *  ・お問い合わせページ - 上部説明
 */
.box028 .tel,
.box028 .fax {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
}

/**
 * box029
 *  ・お問い合わせページ - フォーム
 */
.box029 .fs-c-requiredMark {
  color: #FF0000;
}
.box029 .fs-c-inputField__field--zipCode {
  align-items: center;
}
.box029 .fs-c-input--zipCode:nth-of-type(1) {
  margin-right: .5em;
  min-width: 3em;
  max-width: 3em;
}
.box029 .fs-c-input--zipCode:nth-of-type(2) {
  margin-left: .5em;
  min-width: 4em;
  max-width: 4em;
}
.box029 .fs-c-inputField__field--phoneNumber {
  display: flex;
  align-items: center;
}
.box029 .fs-c-input--phoneNumber {
  min-width: 4em;
  max-width: 4em;
}
.box029 .fs-c-input--phoneNumber:not(:last-of-type) {
  margin-right: .5em;
}
.box029 .fs-c-input--phoneNumber:not(:first-of-type) {
  margin-left: .5em;
}

/**
 * box030
 *  ・冬の味便り 2021 WINTER
 */
.box030 {
  padding: 8px;
  background: #F5ECEC;
  overflow: hidden;
}
.box030 .heading {
  margin-top: 0;
  margin-bottom: 0;
}
.box030 .subheading {
  padding: 1em 0;
  font-size: 4.1666666667vw;
  color: #9B7D47;
  text-align: center;
}
.box030.pickup {
  padding: 8px;
}
.box030.pickup .heading {
  padding-top: 1em;
  padding-bottom: 1em;
  background: #FFF;
}
.box030.pickup .heading .year {
  display: block;
  font-size: 3.75vw;
  font-weight: normal;
  color: #9B7D47;
  text-align: center;
}
.box030.pickup .heading .main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 80%;
  margin: .25em auto 0 auto;
  font-size: 4.1666666667vw;
  font-weight: normal;
  color: #9B7D47;
  text-align: center;
}
.box030.pickup .heading .main:before,
.box030.pickup .heading .main:after {
  border-top: 1px solid #9B7D47;
  content: '';
  width: 2em;
}
.box030.pickup .swiper-container {
  margin: 1em 0;
}
.box030.pickup .swiper-slide a {
  display: block;
  color: #2E292A;
  text-align: center;
}
.box030.pickup .swiper-slide a:hover {
  text-decoration: none;
}
.box030.pickup .swiper-slide .title {
  margin: 0 0 8px;
  padding: .5em 0;
  background: #FFF;
  font-weight: normal;
}
.box030.pickup .swiper-slide figcaption {
  margin-top: 8px;
  padding: .5em 0;
  background: #FFF;
}
.box030.pickup .swiper-slide .price {
  margin-top: 8px;
  padding: .5em 0;
  background: #FFF;
}
.box030.pickup .swiper-button-prev,
.box030.pickup .swiper-button-next {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #2E0E69;
}
.box030.pickup .swiper-button-next::after,
.box030.pickup .swiper-button-prev::after {
  font-size: 1.2rem;
  font-weight: bold;
  color: #FFF;
}
@media screen and (min-width: 480px) {
  .box030 .subheading {
    font-size: 2rem;
  }
  .box030.pickup .heading .year {
    font-size: 1.8rem;
  }
  .box030.pickup .heading .main {
    width: 75%;
    font-size: 2rem;
  }
  .box030.pickup .heading .main:before,
  .box030.pickup .heading .main:after {
    border-top: 1px solid #9B7D47;
    content: '';
    width: 3em;
  }
}
@media screen and (min-width: 600px) {
  .box030 .subheading {
    font-size: 2.5rem;
  }
  .box030.pickup .heading .year {
    font-size: 2.2rem;
  }
  .box030.pickup .heading .main {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 768px) {
  .box030 .subheading {
    font-size: 3rem;
  }
  .box030.pickup .heading .year {
    font-size: 2.6rem;
  }
  .box030.pickup .heading .main {
    font-size: 3rem;
  }
}
@media screen and (min-width: 960px) {
  .box030 .subheading {
    font-size: 4rem;
  }
  .box030.pickup .swiper-button-prev,
  .box030.pickup .swiper-button-next {
    display: none;
  }
  .box030.pickup .heading .year {
    font-size: 3.2rem;
  }
  .box030.pickup .heading .main {
    font-size: 4rem;
  }
}
@media screen and (min-width: 1200px) {
  .box030 {
    padding: 0;
  }
}

/**
 * box031
 *  ・2021年歳暮ページ - 特選冬ギフト
 */
.box031 {
  padding: 8px;
  background: #F5ECEC;
  overflow: hidden;
}
.box031 .heading {
  margin: 0 4px 4px 0;
  padding-top: .625em;
  padding-bottom: .625em;
  background: #FFF;
  font-size: 4.1666666667vw;
  font-weight: normal;
  text-align: center;
  box-shadow: 4px 4px 0px 0 #9B7D47;
}
.box031 .block {
  position: relative;
}
.box031 .block a {
  position: relative;
  display: block;
  color: #080808;
}
.box031 .block a:hover {
  text-decoration: none;
}
.box031 img {
  display: block;
}
.box031 .caption {
  position: absolute;
  top: 0;
  right: auto;
  left: 1em;
  display: inline-block;
  height: 100%;
  box-sizing: border-box;
  background: rgba(255, 255, 255, .75);
  font-size: 4.1666666667vw;
  text-align: center;
  letter-spacing: .375em;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  z-index: 1;
}
.box031 .caption.right {
  top: 0;
  right: 1em;
  left: auto;
}
.box031 .caption > span {
  display: block;
  padding: .625em;
}
.box031 .badge {
  position: absolute;
  right: auto;
  bottom: 1em;
  left: 1em;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20vw;
  height: 20vw;
  border-radius: 50%;
  font-size: 3.3333333333vw;
  color: #FFF;
  text-align: center;
}
.box031 .badge.right {
  right: 1em;
  bottom: 1em;
  left: auto;
}
.box031 .badge .large {
  font-size: 4.1666666667vw;
}
@media screen and (min-width: 480px) {
  .box031 .heading,
  .box031 .caption,
  .box031 .badge .large {
    font-size: 2rem;
  }
  .box031 .badge {
    width: 100px;
    height: 100px;
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 600px) {
  .box031 .heading {
    margin: 0 8px 8px 0;
    box-shadow: 8px 8px 0px 0 #9B7D47;
  }
  .box031 .caption {
    letter-spacing: .5em;
  }
  .box031 .heading,
  .box031 .caption,
  .box031 .badge .large {
    font-size: 2.5rem;
  }
  .box031 .badge {
    width: 120px;
    height: 120px;
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 768px) {
  .box031 .heading,
  .box031 .caption,
  .box031 .badge .large {
    font-size: 3rem;
  }
  .box031 .badge {
    width: 140px;
    height: 140px;
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 960px) {
  .box031 .heading,
  .box031 .caption,
  .box031 .badge .large {
    font-size: 3.6rem;
  }
  .box031 .badge {
    width: 160px;
    height: 160px;
    font-size: 2.2rem;
  }
}

/**
 * box032
 *  ・2021年歳暮ページ - 定番ギフト
 *  ・2021年歳暮ページ - 海千ならではのギフト
 */
.box032 {
  padding: 8px;
  background: #F5ECEC;
  overflow: hidden;
}
.box032 .heading {
  margin: 0 4px 4px 0;
  padding-top: .625em;
  padding-bottom: .625em;
  background: #FFF;
  font-size: 4.1666666667vw;
  font-weight: normal;
  text-align: center;
  box-shadow: 4px 4px 0px 0 #9B7D47;
}
.box032 .card {
  display: block;
  padding: 8px;
  background: #FFF;
  color: #2E292A;
}
.box032 .card:hover {
  text-decoration: none;
}
.box032 .title {
  margin-top: .75em;
  margin-bottom: .75em;
  font-size: 3.75vw;
  font-weight: normal;
  text-align: center;
}
@media screen and (min-width: 480px) {
  .box032 .heading {
    font-size: 2rem;
  }
  .box032 .title {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 600px) {
  .box032 .heading {
    margin: 0 8px 8px 0;
    box-shadow: 8px 8px 0px 0 #9B7D47;
    font-size: 2.5rem;
  }
  .box032 .title {
    font-size: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .box032 .heading {
    font-size: 3rem;
  }
  .box032 .title {
    font-size: 2.4rem;
  }
}
@media screen and (min-width: 960px) {
  .box032 .heading {
    font-size: 3.6rem;
  }
  .box032 .title {
    font-size: 2.8rem;
  }
}

/**
 * box033
 *  ・2021年歳暮ページ - 価格帯で選ぶ
 */
.box033 {
  padding: 8px;
  background: #F5ECEC;
  overflow: hidden;
}
.box033 .heading {
  margin: 0 4px 4px 0;
  padding-top: .625em;
  padding-bottom: .625em;
  background: #FFF;
  font-size: 4.1666666667vw;
  font-weight: normal;
  text-align: center;
  box-shadow: 4px 4px 0px 0 #9B7D47;
}
.box033 .flexbox {
  padding: 1.5em;
  background: #FFF;
}
.box033 .card {
  display: block;
  padding-top: .5em;
  padding-bottom: .5em;
  background: #B18F52;
  font-weight: bold;
  color: #FFF;
  text-align: center;
}
.box033 .card:hover {
  text-decoration: none;
}
@media screen and (min-width: 480px) {
  .box033 .heading {
    font-size: 2rem;
  }
}
@media screen and (min-width: 600px) {
  .box033 .heading {
    margin: 0 8px 8px 0;
    box-shadow: 8px 8px 0px 0 #9B7D47;
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 768px) {
  .box033 .heading {
    font-size: 3rem;
  }
  .box033 .card {
    font-size: 2rem;
  }
}
@media screen and (min-width: 960px) {
  .box033 .heading {
    font-size: 3.6rem;
  }
}

/**
 * box034
 *  ・年末年始の営業時間について
 */
.box034 {
  padding: 0 .5em;
}
.box034 > .inner {
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}
.box034 h2 {
  margin-top: 2em;
  font-size: 1.6rem;
}
.box034 .img {
  text-align: center;
  max-width: 950px;
  margin-right: auto;
  margin-left: auto;
}
.box034 p {
  margin-top: .5em;
  margin-bottom: .5em;
  padding-right: .5em;
  padding-left: .5em;
}
.box034 p strong {
  font-size: 1.8rem;
  font-weight: bold;
}
.box034 ul {
  padding-left: 1.75em;
}
.box034 ul li {
  list-style-type: disc;
}
.box034 .box {
  max-width: 900px;
  margin-right: auto;
  margin-left: auto;
  border: 2px solid #AE2415;
  padding: .5em;
}
.box034 .box > .inner {
  max-width: 700px;
  margin-right: auto;
  margin-left: auto;
}
.box034 .box h2 {
  margin-top: .5em;
  margin-bottom: .5em;
}

/**
 * box035
 *  ・周年祭 - メインビジュアル・見出し
 */
.box035 .part1 .heading {
  margin: 0;
}
.box035 .part1 img {
  display: block;
  width: 100%;
}
.box035 .part2 .heading {
  max-width: 340px;
  margin: 0 auto;
  padding: 2em 1em .625em;
}
.box035 .part2 .heading img {
  width: 100%;
}
.box035 .part2 .cards {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  max-width: 400px;
  margin: 0 auto;
  padding: .5em;
}
.box035 .part2 .card {
  width: 50%;
  padding-right: .5em;
  padding-left: .5em;
}
.box035 .part2 .card a {
  display: block;
}
.box035 .part2 .card a:hover {
  text-decoration: none;
}
.box035 .part2 .card img {
  display: block;
  border-radius:50%;
}
.box035 .part2 .card h3 {
  margin: 20px 0 30px;
  font-size: 1.25em;
  color: #2E292A;
  text-align: center;
}
.box035 .part2 .card h3 span {
  border-bottom: 3px dotted #C5A343;
  padding-right: .25em;
  padding-left: .25em;
}
@media screen and (min-width: 600px) {
  .box035 .part2 .heading {
    max-width: 360px;
    margin: 0 auto;
    padding: 2.5em 0 1.25em;
  }
  .box035 .part2 .cards {
    max-width: none;
    padding: 1.875em .5em;
  }
  .box035 .part2 .card {
    width: 25%;
  }
  .box035 .part2 .card h3 {
    margin: 20px 0 20px;
    font-size: 1.5em;
  }
}
@media screen and (min-width: 960px) {
  .box035 .part2 .heading {
    max-width: 420px;
  }
}

/**
 * box036
 *  ・周年祭 - 商品別
 */
.box036 .part1 {
  padding: 0 .5em;
}
.box036 .part1 .heading {
  margin-top: 2.25em;
  margin-bottom: 1em;
  font-size: 1.625em;
  font-weight: normal;
  text-align: center;
}
.box036 .part1 .heading span {
  display: inline-block;
  border-bottom: 3px dotted #C5A343;
  padding-bottom: .5em;
  padding-left: .5em;
  letter-spacing: .5em;
}
.box036 .part1 > a {
  display: block;
  padding-bottom: 1.5em;
  color: #2E292A;
}
.box036 .part1 > a:hover {
  text-decoration: none;
}
.box036 .part1 .text {
  margin: 1.5em 0;
  font-size: 1.125em;
  text-align: center;
}
.box036 .part1 .button {
  margin-top: 1.875em;
}
.box036 .part1 .button > div {
  max-width: 60%;
  margin: 0 auto;
  background-color: #FD8C91;
  border-radius: 1.5em;
  padding: .75em;
  font-size: 1em;
  color: #FFF;
  text-align: center;
}
.box036 .part2 {
  padding: 0 .5em;
}
.box036 .part2 .card {
  display: block;
  max-width: 500px;
  margin: 1.5em auto;
  background-color: #E9F0EF;
}
.box036 .part2 .card > a {
  display: block;
  color: #2E292A;
  padding: 1.5em 1em;
}
.box036 .part2 .card > a:hover {
  text-decoration: none;
}
.box036 .part2 .card > a > figure,
.box036 .part2 .card > a > div {
  width: 100%;
}
.box036 .part2 .card img {
  display: block;
}
.box036 .part2 .card .text {
  background-color: #FFF;
  padding: .75em 1em;
  font-size: 1.25em;
  line-height: 1.75;
}
.box036 .part2 .card .button {
  margin-top: .75em;
  background-color: #FD8C91;
  padding: .5em;
  font-size: 1.25em;
  color: #FFF;
  text-align: center;
}
.box036 .part3 {
  padding: .5em;
}
.box036 .part3 > div {
  background-color: #FFF;
  padding: 2em 0;
}
.box036 .part3 .text {
  margin-bottom: 1em;
  font-size: 1.125em;
  text-align: center;
}
.box036 .part3 .button > a {
  display: block;
  max-width: 60%;
  margin: 0 auto;
  background-color: #FD8C91;
  border-radius: 1.5em;
  padding: .75em;
  font-size: 1em;
  color: #FFF;
  text-align: center;
}
.box036 .part3 .button a {
  text-decoration: none;
}
@media screen and (min-width: 480px) {
  .box036 .part1 .button > div {
    max-width: 280px;
  }
  .box036 .part3 .button > a {
    max-width: 280px;
  }
}
@media screen and (min-width: 600px) {
  .box036 .part1 .text {
    font-size: 1.375em;
  }
  .box036 .part1 .button > div {
    max-width: 380px;
    font-size: 1.25em;
  }
  .box036 .part3 .text {
    font-size: 1.375em;
  }
  .box036 .part3 .button > a {
    max-width: 380px;
    font-size: 1.25em;
  }
}
@media screen and (min-width: 768px) {
  .box036 .part2 .card {
    max-width: none;
  }
  .box036 .part2 .card > a {
    display: flex;
    justify-content: center;
    padding: 0 .75em;
  }
  .box036 .part2 .card > a > figure,
  .box036 .part2 .card > a > div {
    width: 50%;
    padding: 1.5em .75em;
  }
  .box036 .part2 .card .text {
    min-height: calc(100% - 20px - 80px);
  }
  .box036 .part2 .card .button {
    margin-top: 20px;
    border-radius: 4em;
  }
  .box036 .part3 > div {
    padding: 3.25em 0;
  }
}

/**
 * box037
 *  ・キャンペーン終了ページ
 */
.box037 .part1 {
  margin: 40px auto;
}
.box037 .part1 .heading {
  margin: 40px auto;
  font-size: 2em;
  text-align: center;
}
.box037 .part1 .text {
  margin: 40px auto 60px;
  font-size: 1em;
  text-align: center;
}
.box037 .part1 .button {
  text-align: center;
}
.box037 .part1 .button a {
  background-color: #AB2F37;
  padding: .5em 1.5em;
  font-size: 1.5em;
  font-weight: bold;
  color: #FFF;
}
.box037 .part1 .button a:hover {
  text-decoration: none;
}

/**
 * box038
 *  ・緊急キャンペーン - メインビジュアル・見出し
 */
.box038 .part1 .heading {
  margin: 0;
}
.box038 .part1 img {
  display: block;
  width: 100%;
}
.box038 .part2 .heading {
  max-width: 340px;
  margin: 0 auto;
  padding: 2em 1em .625em;
}
.box038 .part2 .heading img {
  width: 100%;
}
.box038 .part2 .cards {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  max-width: 400px;
  margin: 0 auto;
  padding: .5em;
}
.box038 .part2 .card {
  width: 50%;
  padding-right: .5em;
  padding-left: .5em;
}
.box038 .part2 .card a {
  display: block;
}
.box038 .part2 .card a:hover {
  text-decoration: none;
}
.box038 .part2 .card img {
  display: block;
  border-radius:50%;
}
.box038 .part2 .card h3 {
  margin: 20px 0 30px;
  font-size: 1.25em;
  color: #2E292A;
  text-align: center;
}
.box038 .part2 .card h3 span {
  border-bottom: 3px dotted #C5A343;
  padding-right: .25em;
  padding-left: .25em;
}
@media screen and (min-width: 600px) {
  .box038 .part2 .heading {
    max-width: 360px;
    margin: 0 auto;
    padding: 2.5em 0 1.25em;
  }
  .box038 .part2 .cards {
    max-width: none;
    padding: 1.875em .5em;
  }
  .box038 .part2 .card {
    width: 25%;
  }
  .box038 .part2 .card h3 {
    margin: 20px 0 20px;
    font-size: 1.5em;
  }
}
@media screen and (min-width: 960px) {
  .box038 .part2 .heading {
    max-width: 420px;
  }
}

/**
 * box039
 *  ・緊急キャンペーン - 商品別
 */
.box039 .part1 {
  padding: 0 .5em;
}
.box039 .part1 .heading {
  margin-top: 2.25em;
  margin-bottom: 1em;
  font-size: 1.625em;
  font-weight: normal;
  text-align: center;
}
.box039 .part1 .heading span {
  display: inline-block;
  border-bottom: 3px dotted #C5A343;
  padding-bottom: .5em;
  padding-left: .5em;
  letter-spacing: .5em;
}
.box039 .part1 > a {
  display: block;
  padding-bottom: 1.5em;
  color: #2E292A;
}
.box039 .part1 > a:hover {
  text-decoration: none;
}
.box039 .part1 .text {
  margin: 1.5em 0;
  font-size: 1.125em;
  text-align: center;
}
.box039 .part1 .button {
  margin-top: 1.875em;
}
.box039 .part1 .button > div {
  max-width: 60%;
  margin: 0 auto;
  background-color: #FD8C91;
  border-radius: 1.5em;
  padding: .75em;
  font-size: 1em;
  color: #FFF;
  text-align: center;
}
.box039 .part2 {
  padding: 0 .5em;
}
.box039 .part2 .card {
  display: block;
  max-width: 500px;
  margin: 1.5em auto;
  background-color: #E9F0EF;
}
.box039 .part2 .card > a {
  display: block;
  color: #2E292A;
  padding: 1.5em 1em;
}
.box039 .part2 .card > a:hover {
  text-decoration: none;
}
.box039 .part2 .card > a > figure,
.box039 .part2 .card > a > div {
  width: 100%;
}
.box039 .part2 .card img {
  display: block;
}
.box039 .part2 .card .text {
  background-color: #FFF;
  padding: .75em 1em;
  font-size: 1.25em;
  line-height: 1.75;
}
.box039 .part2 .card .button {
  margin-top: .75em;
  background-color: #FD8C91;
  padding: .5em;
  font-size: 1.25em;
  color: #FFF;
  text-align: center;
}
.box039 .part3 {
  padding: .5em;
}
.box039 .part3 > div {
  background-color: #FFF;
  padding: 2em 0;
}
.box039 .part3 .text {
  margin-bottom: 1em;
  font-size: 1.125em;
  text-align: center;
}
.box039 .part3 .button > a {
  display: block;
  max-width: 60%;
  margin: 0 auto;
  background-color: #FD8C91;
  border-radius: 1.5em;
  padding: .75em;
  font-size: 1em;
  color: #FFF;
  text-align: center;
}
.box039 .part3 .button a {
  text-decoration: none;
}
@media screen and (min-width: 480px) {
  .box039 .part1 .button > div {
    max-width: 280px;
  }
  .box039 .part3 .button > a {
    max-width: 280px;
  }
}
@media screen and (min-width: 600px) {
  .box039 .part1 .text {
    font-size: 1.375em;
  }
  .box039 .part1 .button > div {
    max-width: 380px;
    font-size: 1.25em;
  }
  .box039 .part3 .text {
    font-size: 1.375em;
  }
  .box039 .part3 .button > a {
    max-width: 380px;
    font-size: 1.25em;
  }
}
@media screen and (min-width: 768px) {
  .box039 .part2 .card {
    max-width: none;
  }
  .box039 .part2 .card > a {
    display: flex;
    justify-content: center;
    padding: 0 .75em;
  }
  .box039 .part2 .card > a > figure,
  .box039 .part2 .card > a > div {
    width: 50%;
    padding: 1.5em .75em;
  }
  .box039 .part2 .card .text {
    min-height: calc(100% - 20px - 80px);
  }
  .box039 .part2 .card .button {
    margin-top: 20px;
    border-radius: 4em;
  }
  .box039 .part3 > div {
    padding: 3.25em 0;
  }
}

/**
 * box040
 */
.box040 .heading {
  margin: 0;
}
.box040 .heading picture,
.box040 .heading source,
.box040 .heading img {
  display: block;
  width: 100%;
}

/**
 * box041
 */
.box041 .heading {
  margin: 1.714286em .333333em .857143em .333333em;
  border-bottom: 1px solid #707070;
  padding: .285714em .571429em;
  font-size: 1.5em;
  font-weight: bold;
  line-height: 1.5;
}
.box041 .part1 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 1.5em 0;
}
.box041 .part1 > * {
  display: flex;
  justify-content: left;
  align-items: center;
  flex: 1 1 auto;
  order: 2;
  padding: 0 1em;
}
.box041 .part1 > figure {
  justify-content: center;
  flex: 0 1 auto;
  order: 1;
}
.box041 .part1 > div p {
  margin: 1.5em 0;
}
.box041 .part2 {
  padding: 1em .5em;
}
.box041 .part2 .button {
  display: flex;
  justify-content: center;
  align-items: center;
}
.box041 .part2 .button > a {
  display: block;
  flex-basis: 350px;
  max-width: 90%;
  margin: 1.5em 0;
  background-color: #FBEEAF;
  border-radius: 1.5em;
  padding: 0.75em;
  font-size: 1.125em;
  color: #2E292A;
  text-align: center;
  text-decoration: none;
}
.box041 .part2 .instagram {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #2E292A;
  text-decoration: none;
}
.box041 .part2 .instagram > div {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 350px;
  border: 1px solid #707070;
}
.box041 .part2 .instagram > div > * {
  padding: .5em 1em;
}
.box041 .part2 .instagram img {
  display: block;
}
@media screen and (min-width: 768px) {
  .box041 .heading {
    font-size: 1.75em;
  }
  .box041 .part1 {
    flex-direction: row;
  }
  .box041 .part1 > * {
    flex: 1 1 auto;
    order: 0;
    padding: 1em;
  }
  .box041 .part1 > figure {
    flex: 0 0 auto;
    order: 0;
  }
  .box041 .part2 .button > a {
    flex-basis: 450px;
    font-size: 1.375em;
  }
  .box041 .part2 .instagram > div {
    flex-basis: 450px;
  }
}
@media screen and (min-width: 1200px) {
  .box041 .heading {
    margin: 1.714286em 0 .857143em 0;
  }
  .box041 .part2 {
    padding: 1em;
  }
}

/**
 * box042
 */
.box042 {
  margin: 2.5em .5em;
}
.box042 .inner {
  max-width: 520px;
  margin: 0 auto;
  padding: 3em 1em;
}
.box042 .text {
  margin: 0;
  font-size: 1.375em;
  font-weight: bold;
  text-align: center;
  line-height: 1.625;
}
.box042 .annotation {
  margin: 1em 0 0 0;
  font-size: 1.125em;
  font-weight: bold;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .box042 .inner {
    max-width: 920px;
  }
  .box042 .text {
    font-size: 1.8em;
  }
  .box042 .annotation {
    font-size: 1.5em;
  }
}

/**
 * box043
 */
.box043 {
  margin: 3.75em .5em;
}
.box043 .inner {
  max-width: 520px;
  margin: 0 auto;
  padding: 3em 1.5em;
}
.box043 .title {
  margin: 0;
  font-size: 1.375em;
  font-weight: bold;
}
.box043 .text {
  margin: 1em 0 .5em;
  font-size: 1.125em;
}
.box043 .list {
  margin-top: .5em;
  font-size: 1.125em;
}
.box043 .list > li {
  list-style: disc;
  margin-left: 1.25em;
  padding-left: .25em;
}
.box043 .text-under {
  font-size: 1.125em;
}
.box043 .annotation {
  padding-left: 1em;
  text-indent: -1em;
  font-size: 1.125em;
  font-weight: bold;
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .box043 .inner {
    max-width: 920px;
    padding: 3em 2em;
  }
  .box043 .title {
    font-size: 1.5em;
  }
  .box043 .text {
    font-size: 1.25em;
  }
  .box043 .list {
    font-size: 1.25em;
  }
  .box043 .text-under {
    font-size: 1.25em;
  }
  .box043 .annotation {
    font-size: 1.25em;
  }
}

/**
 * box044
 */
.box044 {
  margin: 5em .5em;
}
.box044 .inner {
  max-width: 520px;
  margin: 0 auto;
  padding: .625em;
}
.box044 .title {
  flex-basis: 60%;
  margin: 0;
  padding: .625em;
}
.box044 .title > img {
  display: block;
  margin: 0 auto;
}
.box044 .text-button {
  display: flex;
  flex-direction: column;
  flex-basis: 40%;
  padding: .625em;
}
.box044 .text {
  padding: .5em .5em 1.5em;
  font-size: 1.25em;
  line-height: 2;
}
.box044 .button {
  margin-top: auto;
  margin-bottom: 2px;
}
.box044 .button > a {
  display: block;
  max-width: 360px;
  margin: 0 auto;
  padding: 1.4em 0;
  background-color: #FFF;
  font-size: 1.25em;
  color: #292A2B;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .box044 .inner {
    display: flex;
    justify-content: center;
    max-width: 920px;
  }
  .box044 .text {
    padding: .5em .5em 0;
  }
  .box044 .button > a {
    max-width: 100%;
  }
}
@media screen and (min-width: 960px) {
  .box044 .text {
    padding: 2em .5em 0;
  }
}

/**
 * box045
 */
.box045 .img {
  margin: 0;
}
.box045 .img picture,
.box045 .img source,
.box045 .img img {
  display: block;
  width: 100%;
}
.box045 .box {
  margin: 60px 16px;
}
.box045 .heading {
  margin-bottom: 24px;
  font-size: 1.75em;
  font-weight: bold;
  text-align: center;
  line-height: 1.25;
}
.box045 .text {
  max-width: 896px;
  margin: 24px auto 0;
  font-size: 1.25em;
  line-height: 1.5;
  text-align: start;
}
@media screen and (min-width: 768px) {
  .box045 .heading {
    font-size: 2em;
  }
  .box045 .text {
    font-size: 1.375em;
  }
}
@media screen and (min-width: 960px) {
  .box045 .text {
    text-align: center;
  }
}

/**
 * box046
 */
.box046 .inner {
  margin: 60px 16px;
}
.box046 .heading {
  display: flex;
  justify-content: center;
  margin: 56px 0 60px;
  font-size: 1.5em;
  text-align: center;
  line-height: 1.75;
}
.box046 .heading > span {
  display: block;
  border-bottom: 1px solid #292A2B;
  padding: 0 .25em;
}
.box046 .heading-text {
  margin-top: 56px;
  font-size: 1.125em;
  line-height: 1.75;
}
.box046 .box {
  margin: 40px 0 60px;
}
.box046 .img img {
  display: block;
  width: 100%;
}
.box046 .text {
  margin: 24px 0 20px;
  font-size: 1em;
  line-height: 1.625;
}
.box046 .button {
  margin-top: 20px;
}
.box046 .button a {
  display: block;
  width: 80%;
  margin: 0 auto;
  border-radius: 45px;
  font-size: 1.125em;
  font-weight: bold;
  text-align: center;
  color: #FFF;
  line-height: 2.444444;
}
.box046 .button a:hover {
  text-decoration: none;
}
.box046 .button2 {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}
.box046 .button2 a {
  display: block;
  border-radius: .5em;
  padding: 0 2em;
  font-size: 1.125em;
  font-weight: bold;
  text-align: center;
  color: #FFF;
  line-height: 2.444444;
}
.box046 .button2 a:hover {
  text-decoration: none;
}
@media screen and (min-width: 480px) {
  .box046 .button a {
    width: 300px;
  }
}
@media screen and (min-width: 768px) {
  .box046 .heading {
    font-size: 1.75em;
  }
  .box046 .heading-text {
    font-size: 1.25em;
  }
  .box046 .text {
    font-size: 1.125em;
  }
  .box046 .button a {
    width: 384px;
    font-size: 1.375em;
    line-height: 2;
  }
  .box046 .button2 a {
    font-size: 1.375em;
    line-height: 2;
  }
}

/**
 * box047
 */
.box047 .inner {
  margin: 56px 16px;
}
.box047 .heading {
  display: flex;
  justify-content: center;
  margin: 56px 0;
  font-size: 1.5em;
  text-align: center;
  line-height: 1.75;
}
.box047 .heading > span {
  display: block;
  border-bottom: 1px solid #292A2B;
  padding: 0 .25em;
}
.box047 .heading-text {
  margin: 56px 0 40px;
  font-size: 1.125em;
  line-height: 1.25;
}
.box047 .card {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  max-width: 440px;
  margin: 24px auto;
  background-color: #FFF;
  border-radius: 20px;
  padding: 40px 24px;
}
.box047 .card .img,
.box047 .card .box {
  flex-basis: 100%;
  padding: 0;
}
.box047 .card .img img {
  display: block;
}
.box047 .card .title {
  margin-top: 40px;
  margin-bottom: 16px;
  padding: 0 24px;
  font-size: 1.5em;
  line-height: 1.25;
  text-align: center;
}
.box047 .card .text {
  margin: 20px 0 28px;
  padding: 24px 10px;
  border-top: 1px solid #292A2B;
  border-bottom: 1px solid #292A2B;
}
.box047 .card .button a {
  display: block;
  width: 90%;
  margin: 28px auto 0;
  border-radius: 45px;
  font-size: 1.125em;
  font-weight: bold;
  text-align: center;
  color: #FFF;
  line-height: 2.444444;
}
.box047 .card .button a:hover {
  text-decoration: none;
}
@media screen and (min-width: 480px) {
  .box047 .card .button a {
    width: 300px;
  }
}
@media screen and (min-width: 768px) {
  .box047 .heading {
    font-size: 1.75em;
  }
}
@media screen and (min-width: 960px) {
  .box047 .card {
    flex-wrap: nowrap;
    max-width: none;
    padding: 16px 8px;
  }
  .box047 .card .img,
  .box047 .card .box {
    flex-basis: 50%;
    padding: 24px 16px;
  }
  .box047 .card .title {
    margin-top: 0;
    margin-bottom: 20px;
    text-align: start;
  }
  .box047 .card .text {
    padding: 40px 10px;
  }
  .box047 .card .button a {
    width: 320px;
    margin: 40px auto 0;
    font-size: 1.375em;
    line-height: 2;
  }
}

/**
 * box048
 */
.box048 .inner {
  margin: 56px 32px;
}
.box048 .heading {
  margin: 56px 0;
  font-size: 1.75em;
  text-align: center;
  line-height: 1.25;
}
.box048 .box .img img {
  display: block;
  width: 100%;
  margin: 16px 0;
}
.box048 .box .button a {
  display: block;
  width: 80%;
  margin: 16px auto 64px;
  border-radius: 45px;
  font-size: 1.125em;
  font-weight: bold;
  text-align: center;
  color: #FFF;
  line-height: 2.444444;
}
.box048 .box .button a:hover {
  text-decoration: none;
}
@media screen and (min-width: 480px) {
  .box048 .box .button a {
    width: 300px;
  }
}
@media screen and (min-width: 768px) {
  .box048 .heading {
    font-size: 2em;
  }
  .box048 .box .button a {
    width: 384px;
    font-size: 1.375em;
    line-height: 2;
  }
}

/**
 * box049
 */
.box049 .inner {
  margin: 56px 32px;
}
.box049 .heading {
  margin: 56px 0;
  font-size: 1.75em;
  text-align: center;
  line-height: 1.25;
}
.box049 .heading-text {
  margin: 56px 0 40px;
  font-size: 1.125em;
  line-height: 1.25;
}
.box049 .button {
  margin: 24px 0;
}
.box049 .button a {
  display: block;
}
.box049 .button a:hover {
  text-decoration: none;
}
.box049 .button img {
  display: block;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .box049 .heading {
    font-size: 2em;
  }
  .box049 .heading-text {
    font-size: 1.25em;
  }
}

/**
 * box050
 */
.box050 .inner {
  margin: 56px 16px;
}
.box050 .heading {
  display: flex;
  justify-content: center;
  margin: 56px 0 52px;
  font-size: 1.5em;
  text-align: center;
  line-height: 1.75;
}
.box050 .heading > span {
  display: block;
  border-bottom: 1px solid #292A2B;
  padding: 0 .25em;
}
.box050 .box {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.box050 .box li {
  display: block;
  flex-basis: 50%;
  padding: 10px 2px;
}
.box050 .box li a {
  display: block;
  text-align: center;
  border: 2px solid #207094;
  background-color: #FFF;
  font-size: 1.25em;
  font-weight: bold;
  line-height: 1;
  padding: 21px 0;
  color: #207094;
}
.box050 .box li a:hover {
  opacity: 1;
  background-color: #207094;
  text-decoration: none;
  color: #FFF;
}
.box050.type-8e6f3e .box li a {
  border: 2px solid #8e6f3e;
  background-color: #8e6f3e;
  color: #FFF;
}
.box050.type-8e6f3e .box li a:hover {
  background-color: #FFF;
  color: #8e6f3e;
}
@media screen and (min-width: 768px) {
  .box050 .heading {
    font-size: 1.75em;
  }
  .box050 .box {
    flex-wrap: nowrap;
    padding: 0;
  }
  .box050 .box li {
    flex-basis: 25%;
    padding: 4px;
  }
}

/**
 * box051
 */
.box051 {
  margin: 0 -8px;
}
.box051 * {
  line-height: 2;
}
.box051 .featured-image {
  display: block;
}
.box051 .featured-image > img,
.box051 .featured-image > source {
  display: block;
  width: 100%;
}
.box051 .featured {
  margin: 4em 0;
}
.box051 .heading {
  margin: 1em 0;
  font-size: 1.375em;
  text-align: center;
}
.box051 .text {
  margin: 1em 0;
  font-size: 1.125em;
  text-align: center;
}
.box051 .anchors {
  margin: 4em 0 8em;
}
.box051 .anchors .title {
  position: relative;
  margin: 1em 0;
  font-size: 1.25em;
  text-align: center;
}
/*
.box051 .anchors .title::after {
  content: "";
  display: block;
  height: 1px;
  background-color: #292A2B;
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
}
*/
.box051 .anchors ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 1em auto;
  max-width: 75%;
  padding: 0;
  list-style-type: none;
}
.box051 .anchors li {
  display: block;
  flex-basis: 100%;
  padding: .5em;
}
.box051 .anchors a {
  display: block;
  position: relative;
}
.box051 .anchors a:hover {
  opacity: .7;
}
.box051 .anchors img {
  display: block;
  width: 100%;
}
.box051 .anchors span {
  position: absolute;
  display: blcok;
  right: 0;
  bottom: 6px;
  padding: 0 16px;
  background-color: #FFF;
  font-size: 3.75vw;
  color: #5E5958;
  line-height: 1.75;
}
@media screen and (min-width: 480px) {
  .box051 .anchors ul {
    max-width: 600px;
  }
  .box051 .anchors li {
    flex-basis: 50%;
  }
  .box051 .anchors span {
    font-size: 3vw;
  }
}
@media screen and (min-width: 600px) {
  .box051 .heading {
    font-size: 1.5em;
  }
  .box051 .text {
    font-size: 1.25em;
  }
  .box051 .anchors .title {
    font-size: 1.375em;
  }
  .box051 .anchors span {
    font-size: 1.125em;
  }
}
@media screen and (min-width: 960px) {
  .box051 .anchors ul {
    max-width: 100%;
  }
  .box051 .anchors li {
    flex-basis: 33.333333%;
  }
}

/**
 * box052
 */
.box052 {
  margin: 4em 0;
  padding: 0 8px;
}
.box052 * {
  line-height: 2;
}
.box052 .heading {
  border-bottom: 1px solid #292A2B;
  font-size: 1.125em;
  padding-left: 1.125em;
  text-indent: -1.125em;
}
.box052 .heading::before {
  content: "■";
  margin-right: .125em;
}
.box052 .inner {
  max-width: 600px;
  margin: 0 auto;
}
.box052 .item {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  flex-direction: row;
  margin: 0 -8px;
}
.box052 .item.reverse {
  flex-direction: row-reverse;
}
.box052 .item > * {
  display: block;
  flex-basis: 100%;
  margin: 0;
  padding: 8px;
}
.box052 .description {
  display: flex;
  align-items: center;
  font-size: 1em;
}
.box052 .image img {
  display: block;
  width: 100%;
}
@media screen and (min-width: 480px) {
  .box052 .heading {
    font-size: 1.25em;
  }
  .box052 .description {
    font-size: 1.125em;
  }
}
@media screen and (min-width: 600px) {
  .box052 .heading {
    font-size: 1.375em;
  }
  .box052 .description {
    font-size: 1.25em;
  }
}
@media screen and (min-width: 960px) {
  .box052 .inner {
    max-width: none;
  }
  .box052 .item {
    max-width: 100%;
    margin: 0;
  }
  .box052 .item > * {
    flex-basis: 50%;
    padding: 16px;
  }
}

/**
 * box053
 */
.box053 * {
  line-height: 2;
}
.box053 .heading {
  padding: 1em 0;
  font-size: 1.25em;
  text-align: center;
}
@media screen and (min-width: 600px) {
  .box053 .heading {
    font-size: 1.375em;
  }
}

/**
 * box054
 */
.box054 {
  margin: 5em 0 0;
  line-height: 1.5;
}
.box054 a:hover {
  text-decoration: none;
  opacity: .7;
}
.box054 .phone {
  display: block;
  max-width: 400px;
  margin: 1.5em auto;
  border: 1px solid #707070;
  padding: 1em;
  color: #292A2B;
  text-align: center;
}
.box054 .phone:hover {
  text-decoration: none;
  opacity: .7;
}
.box054 .phone .heading {
  margin: .4em 0;
  font-size: 1.25em;
  font-weight: bold;
}
.box054 .phone .number {
  margin: .4em 0;
  font-size: 1.25em;
  font-weight: bold;
}
.box054 .phone .number i {
  margin-right: .5em;
}
.box054 .phone .opening-hours {
  margin: .666667em 0;
  font-size: .75em;
}
.box054 .email {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin: 1.5em 0;
}
.box054 .email .heading {
  margin: 0;
}
.box054 .email .heading a {
  display: block;
  border-radius: .5em;
  background-color: #292A2B;
  padding: .5em 1em;
  font-size: 2rem;
  font-weight: bold;
  color: #FFF;
}
.box054 .email .text {
  margin-top: .6em;
  font-size: .875em;
  text-align: center;
}
.box054 .email .text a {
  border-bottom: 1px solid #707070;
  color: #292A2B;
}

/**
 * box055
 */
.box055 {
  margin: 0 -8px;
}
.box055 * {
  line-height: 2;
}
.box055 h1 {
  margin: 0;
}
.box055 .featured-image {
  display: block;
}
.box055 .featured-image > img,
.box055 .featured-image > source {
  display: block;
  width: 100%;
}
.box055 .featured {
  margin: 4em 0;
}
.box055 .text {
  margin: 3.333333em 0;
  font-size: 1.25em;
  text-align: center;
}
.box055 .items {
  max-width: 600px;
  margin: 0 auto;
}
.box055 .item {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  flex-direction: row;
  margin: 5em .5em;
  padding: .5em;
}
.box055 .item .image,
.box055 .item .description {
  flex-basis: 100%;
  margin: 0;
  padding: 1.6rem;;
}
.box055 .item .image img {
  display: block;
  width: 100%;
}
.box055 .item .description {
  display: flex;
  align-items: center;
  font-size: 1.125em;
}
@media screen and (min-width: 600px) {
  .box055 .text {
    font-size: 1.5em;
  }
}
@media screen and (min-width: 960px) {
  .box055 .items {
    max-width: none;
  }
  .box055 .item .image,
  .box055 .item .description {
    flex-basis: 50%;
    margin: 0;
    padding: 1.6rem;;
  }
}

/**
 * box056
 */
.box056 {
  margin: 0 0 6.25em;
  line-height: 2;
}
.box056 .img {
  margin: 0;
}
.box056 .img picture,
.box056 .img source,
.box056 .img img {
  display: block;
  width: 100%;
}
.box056 .item {
  margin: 7.5em 0 0;
}
.box056 .heading {
  margin: 0 0 .75em;
  font-size: 1.75em;
  font-weight: bold;
  text-align: center;
}
.box056 .text {
  margin: .916667em auto 0;
  font-size: 1.25em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .box056 .heading {
    font-size: 2em;
  }
  .box056 .text {
    font-size: 1.375em;
  }
}

/**
 * box057
 */
.box057 {
  margin: 6.25em 0 7.5em;
  line-height: 2;
}
.box057 .inner {
  padding: 0 1em;
}
.box057 .item {
  margin: 5em 0;
}
.box057 .item:first-of-type {
  margin-top: 0;
}
.box057 .item:last-of-type {
  margin-bottom: 0;
}
.box057 .img img {
  display: block;
  width: 100%;
}
.box057 .description {
  margin: 1.333333em 0;
  font-size: 1em;
  text-align: center;
}
.box057 .button {
  display: flex;
  justify-content: center;
  margin-top: 1.090909em;
}
.box057 .button a {
  display: block;
  margin: 0 auto;
  padding: .136364em 1.818182em;
  border-radius: 2.272727em;
  font-size: 1.125em;
  font-weight: bold;
  text-align: center;
  color: #FFF;
}
.box057 .button a:hover {
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .box057 .inner {
    padding: 0 2em;
  }
  .box057 .description {
    font-size: 1.125em;
  }
  .box057 .button a {
    font-size: 1.375em;
  }
}

/**
 * box058
 */
.box058 {
  margin: 5em 0;
  line-height: 2;
}
.box058 .inner {
  max-width: 500px;
  margin: 0 auto;
  padding: 0 1em;
}
.box058 .heading {
  margin: 2.5em 0;
  font-size: 1.75em;
  text-align: center;
}
.box058 .item {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin: 5em auto;
}
.box058 .img,
.box058 .clump {
  flex-basis: 100%;
  padding: 1em 0;
}
.box058 .img img {
  display: block;
}
.box058 .clump {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.box058 .title {
  flex-basis: 100%;
  margin: 0 0 .833333em;
  font-size: 1.5em;
  text-align: center;
}
.box058 .text {
  flex-basis: 100%;
  padding: 1.75em 1em;
  border-top: 1px solid #292A2B;
  border-bottom: 1px solid #292A2B;
}
.box058 .button {
  flex-basis: 100%;
  display: flex;
  justify-content: center;
  margin: 2.5em 0 0;
}
.box058 .button a {
  display: block;
  border-radius: 2.090909em;
  padding: 1px 1.818182em;
  font-size: 1.125em;
  font-weight: bold;
  text-align: center;
  color: #FFF;
}
.box058 .button a:hover {
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .box058 .heading {
    font-size: 2em;
  }
}
@media screen and (min-width: 960px) {
  .box058 .inner {
    max-width: none;
    padding: 0 2em;
  }
  .box058 .item {
    flex-wrap: nowrap;
  }
  .box058 .img,
  .box058 .clump {
    flex-basis: 50%;
    padding: 1em;
  }
  .box058 .button a {
    font-size: 1.375em;
  }
}

/**
 * box059
 */
.box059 {
  margin: 56px auto;
}
.box059 .inner {
  margin: 0 16px;
}
.box059 .heading {
  display: flex;
  justify-content: center;
  margin: 100px 0 40px;
  font-size: 1.5em;
  text-align: center;
  line-height: 1.75;
}
.box059 .heading > span {
  display: block;
  border-bottom: 1px solid #292A2B;
  padding: 0 .25em;
}
.box059 .cells {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 -16px;
}
.box059 .cell {
  display: flex;
  justify-content: center;
  flex: 0 0 100%;
  max-width: 472px;
  padding: 20px 16px;
}
.box059 .card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 0 0 100%;
  max-width: 100%;
  background-color: #E1E3E5;
}
.box059 .card-img img {
  display: block;
  width: 100%;
}
.box059 .card-text {
  line-height: 1.75;
  padding: 20px;
}
.box059 .card-button {
  display: flex;
  justify-content: center;
  margin-top: auto;
  padding: 0 20px 20px;
}
.box059 .card-button a {
  display: block;
  text-align: center;
  border-radius: 100vh;
  padding: 2px 2em;
  font-size: 1.125em;
  font-weight: bold;
  color: #FFF;
  line-height: 2;
}
.box059 .card-button a:hover {
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .box059 .heading {
    font-size: 1.75em;
  }
}
@media screen and (min-width: 960px) {
  .box059 .cell {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

/**
 * box060
 */
.box060 {
  line-height: 2;
}
.box060 .heading {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #2E0E69;
  height: 48.333333vw;
}
.box060 .heading h1 {
  text-align: center;
  font-size: 1.75em;
  font-weight: bold;
  color: #FFF;
}
.box060 .text {
  margin: 60px 16px;
  font-size: 1.25em;
}
.box060 .table {
  width: 100%;
  border-collapse: collapse;
}
.box060 .table th,
.box060 .table td {
  border: 1px solid #707070;
  padding: .4em;
  text-align: left;
  vertical-align: top;
  line-height: 2;
  font-weight: normal;
}
@media screen and (min-width: 480px) {
  .box060 .heading {
    height: 232px;
  }
  .box060 .heading h1 {
    font-size: 2em;
  }
}

/**
 * box061
 */
.box061 {
  margin: 60px 16px;
  line-height: 2;
}
.box061 .heading {
  margin: 20px 0;
  font-size: 1.375em;
}
.box061 .heading > span {
  display: inline-block;
  border-bottom: 1px solid #292A2B;
}
.box061 .heading > span::before {
  content: '■';
}
.box061 .text {
  font-size: 1.125em;
}
.box061 .borderbox {
  margin: 20px 0;
  border: 1px solid #A1181C;
  padding: 16px;
  font-size: 1.125em;
}
.box061 .noborderbox {
  margin: 20px 0;
  padding: 16px;
  background-color: #EEEEEF;
}
.box061 .noborderbox-title {
  font-size: 1.5em;
  margin: 0 0 20px;
}
.box061 .noborderbox-text {
  font-size: 1.25em;
}

/**
 * box062
 */
.box062 {
  max-width: 980px;
  margin: 0 auto;
}
.box062 > .heading {
  margin: 0;
}
.box062 > .heading picture, .box062 > .heading source, .box062 > .heading img {
  display: block;
  width: 100%;
}
.box062-1 {
  width: 100%;
  max-width: 500px;
  margin: 4rem auto 6.8rem;
  padding: 0;
}
.box062-1 > .heading {
  display: flex;
  padding-left: 2rem;
}
.box062-1 > .heading > h2 {
  margin: 0;
  padding: .6rem 1.6rem;
  font-size: 2.4rem;
  font-weight: bold;
  color: #FFF;
  line-height: 1.5em;
}
.box062-1 > .list {
  padding: 4rem;
  list-style-type: none;
  font-size: 2rem;
  line-height: 1.5em;
}
.box062-1 > .list > li {
  padding-left: 1em;
  text-indent: -1em;
}
.box062-1 > .list > li::before {
  content: '●';
}
.box062-1-1 {
  margin: 0 0 3.2rem; 
}
.box062-1-1 > .card {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  column-gap: 0;
  margin-bottom: 0; 
  padding: 1.6rem 3.2rem;
}
.box062-1-1 > .card > div {
  flex-basis: 100%;
  width: 100%;
}
.box062-1-1 > .card img {
  display: block;
  width: 100%;
}
.box062-1-1 > .card .text {
  padding: 3.2rem 2rem;
  background-color: #FFF;
  font-size: 2.2rem;
  line-height: 1.5em;
}
.box062-2 {
  max-width: 752px;
  margin: 0 auto;
  padding: 3.2rem 1.6rem;
}
.box062-2 > .heading {
  font-size: 2.4rem;
}
.box062-2 .link, 
.box062-2 .link > img {
  display: block;
}
@media screen and (min-width: 600px) {
  .box062-1 {
    max-width: none;
    padding: 0 2rem;
  }
  .box062-1 > .heading {
    padding: 0;
  }
  .box062-1 > .list {
    padding: 4rem 2rem;
    font-size: 2.4rem;
  }
  .box062-1-1 {
    margin: 0 2rem 3.2rem; 
  }
  .box062-1-1 > .card {
    flex-direction: row;
    column-gap: 4rem;
    margin-bottom: 3.2rem; 
    padding: 2rem;
  }
  .box062-1-1 > .card > div {
    flex-basis: 50%;
  }
  .box062-1-1 > .card .text {
    padding: 0;
    background-color: transparent;
  }
}

/**
 * box063
 */
.box063 {
  font-size: 1.6rem;
  line-height: 2;
  overflow: hidden;
}
.box063 > .heading {
  margin: 0;
}
.box063 > .heading picture,
.box063 > .heading source,
.box063 > .heading img {
  display: block;
  width: 100%;
}
.box063-1 {
  margin: 60px 10px 100px;
}
.box063-1 > .heading {
  margin: 0 0 60px;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  text-decoration: underline;
  line-height: 1.5;
}
.box063-1-1 {
  display: flex;
  flex-wrap: wrap;
  gap: 60px;
  margin: 0 20px;
  overflow: hidden;
}
.box063-1-1 > .card {
  flex: 0 0 100%;
  overflow: hidden;
}
.box063-1-1 > .card > .title {
  margin: 0;
  padding: .8em 1em;
  font-size: 2rem;
  font-weight: bold;
}
.box063-1-1 > .card > .text,
.box063-1-1 > .card > .list,
.box063-1-1 > .card > .img {
  margin: 1em;
}
.box063-1-1 > .card > .list > li {
  list-style-type: disc;
  margin-left: 1em;
}
.box063-1-1 > .card > .img:last-child {
  margin-bottom: 2.5em;
}
.box063-1-1 > .card > .img picture,
.box063-1-1 > .card > .img source,
.box063-1-1 > .card > .img img {
  display: block;
  width: 100%;
}
.box063-1-1 > .card > .btn {
  margin: 2.5em 1em;
}
.box063-1-1 > .card > .btn:first-child {
  margin-top: 0;
}
.box063-1-1 > .card > .btn > a {
  display: block;
  width: 95%;
  margin: 0 auto;
  padding: 1em;
  border-radius: 1.25em;
  text-align: center;
  font-weight: bold;
}
.box063-1-1 > .card > .btn > a:hover {
  text-decoration: none;
  opacity: .7;
}
.box063-1-1 > .card > .btn > .attention {
  text-align: center;
}

@media screen and (min-width: 480px) {
.box063-1-1 > .card > .btn > a {
    width: 340px;
  }
}
@media screen and (min-width: 768px) {
  .box063-1-1.maxcol-2 {
    gap: 20px;
    margin: 0;
  }
  .box063-1-1.maxcol-2 > .card {
    flex: 0 0 calc((100% - 20px) / 2);
  }
  .box063-1-1.maxcol-2 > .card > .title {
    padding: .8em 1em;
  }
  .box063-1-1.maxcol-2 > .card > .text, 
  .box063-1-1.maxcol-2 > .card > .img {
    margin: 1em;
  }
  .box063-1-1.maxcol-2 > .card > .btn {
    margin: 2.5em 1em;
  }
  .box063-1-1.maxcol-2 > .card > .btn > a {
    width: 70%;
    padding: .5em;
    border-radius: .75em;
  }
  .box063-1-1.maxcol-3 {
    gap: 20px;
    margin: 0;
  }
  .box063-1-1.maxcol-3 > .card {
    flex: 0 0 calc((100% - 20px - 20px) / 3);
  }
  .box063-1-1.maxcol-3 > .card > .title {
    padding: .8em 1em;
  }
  .box063-1-1.maxcol-3 > .card > .text,
  .box063-1-1.maxcol-3 > .card > .img {
    margin: 1em;
  }
  .box063-1-1.maxcol-3 > .card > .btn {
    margin: 2em 1em;
  }
  .box063-1-1.maxcol-3 > .card > .btn > a {
    width: 70%;
    padding: .5em;
    border-radius: .75em;
  }
}

/**
 * box064
 */
.box064 {
  max-width: 980px;
  margin: 20px auto;
}
.box064-1 {
  overflow: hidden;
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
}
.box064-1-1 > .card {
  margin: 20px 0;
}
.box064-1-1 > .card + .card {
  margin-top: 40px;
}
.box064-1-1 > .card .card-title {
  margin: .909091em .363637em;
  padding: 0 .5em;
  border-bottom: 1px solid #707070;
  font-size: 2.2rem;
  line-height: 1.5;
}
.box064-1-1 > .card .card-box {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  column-gap: 0;
  margin: 1.25em 1em;
  font-size: 1.6rem;
}
.box064-1-1 > .card .card-box + .card-box {
  margin-top: 2.5em;
}
.box064-1-1 > .card .card-img {
  flex-basis: 100%;
  flex-shrink: 1;
  width: 100%;
}
.box064-1-1 > .card .card-img > img {
  display: block;
  width: 100%;
}
.box064-1-1 > .card .card-text {
  flex-basis: 100%;
  flex-shrink: 1;
  width: 100%;
  font-size: 1.6rem;
  line-height: 1.5em;
}
.box064-1-1 > .card .card-text:not(:only-child) {
  margin-top: 1.25em;
}
.box064 a {
  color: #2E292A;
  text-decoration: underline;
}
@media screen and (min-width: 600px) {
  .box064-1 {
    max-width: none;
  }
  .box064-1-1 > .card .card-box {
    justify-content: left;
    flex-direction: row;
    column-gap: 2em;
  }
  .box064-1-1 > .card .card-img {
    flex-basis: content;
  }
  .box064-1-1 > .card .card-text {
    flex-basis: content;
  }
  .box064-1-1 > .card .card-text:not(:only-child) {
    margin-top: 0;
  }
}
@media screen and (min-width: 960px) {
  .box064-1-1 > .card .card-img {
    flex-shrink: 0;
  }
}
