@charset "UTF-8";
/*!
Expansion Modules Index
------------------------------
- Base

- BaseScriptStyles

- Headline

- CommonModules
--- CommonModules/Header
--- CommonModules/Footer
--- CommonModules/Navigation
--- CommonModules/Contact

- Modules
--- Modules/Text
--- Modules/Link
--- Modules/Button
--- Modules/List
--- Modules/Box
--- Modules/Panel
--- Modules/Media
--- Modules/Support
--- Modules/Table
--- Modules/Form
--- Modules/Layout
--- Modules/GeneralSearch
--- Modules/JavaScript - Gallery
--- Modules/JavaScript - Carousel
--- Modules/MyPageOnly
*/
/*! = Base */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  position: relative;
  min-width: 320px;
  background: #fff;
  color: #222;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: normal;
  line-height: 1.5;
  overflow-wrap: break-word;
}

a {
  color: #0f6bff;
  text-decoration: underline;
}

button,
input,
select,
textarea {
  color: #222;
}

/* サイト全体に関わる囲み要素用スタイル */
[class^=str-outer] {
  padding: 0 20px;
  overflow: hidden;
}
[class^=str-outer] .str-outer {
  display: contents;
}
[class^=str-outer] .str-outer > .str-inner {
  display: contents;
}

[class^=str-outer].var-02 {
  padding-top: 40px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  background: #f4f4f4;
}
[class^=str-outer].var-02 .str-inner {
  position: relative;
}
[class^=str-outer].var-02 .str-inner > [class^=mod-hdg]:first-child,
[class^=str-outer].var-02 .str-inner > .component:first-child [class^=mod-hdg] {
  margin-top: 0;
}

@media screen and (min-width: 768px), print {
  [class^=str-outer] {
    padding: 0 20px;
  }
}
@media screen and (min-width: 992px), print {
  [class^=str-outer] {
    padding: 0 40px;
  }
}
.str-inner {
  display: flow-root;
  max-width: 1120px;
  margin: 0 auto;
}

.component[class*=col-]:not([class*=mod-]) {
  position: static;
}
.component[class*=col-]:not([class*=mod-]) .component-content {
  display: flow-root;
}

.component:not([class*=col-]) {
  display: flow-root;
  width: 100%;
}

.str-module-root,
[data-module-root] {
  display: flow-root;
  width: 100%;
}

.sr-label {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  border: 0 !important;
  font-size: 1.8rem;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}

/* Grobal focus style */
:focus {
  outline: none;
}

:focus:not(:focus-visible) {
  outline: none;
}

:focus-visible,
button:focus-visible,
input:focus-visible,
a:focus-visible {
  outline: 2px solid #222;
  outline-offset: 2px;
}

/* Skip Nav */
#skipnav-content {
  display: block;
  position: relative;
  height: 1px;
  margin-top: -1px;
  overflow: hidden;
  outline: none;
  background-color: #771f1f;
  color: #fff;
  font-size: 1.4rem;
  line-height: 2.143em;
  text-align: center;
}
#skipnav-content:focus {
  height: 2.143em;
}

/* UtilityClass/MaxWidth */
.max-w-400 {
  max-width: 400px !important;
}

.max-w-500 {
  max-width: 500px !important;
}

.max-w-600 {
  max-width: 600px !important;
}

.max-w-700 {
  max-width: 700px !important;
}

.max-w-800 {
  max-width: 800px !important;
}

.max-w-900 {
  max-width: 900px !important;
}

/*! = BaseScriptStyles */
html[data-script-enabled=true] .mod-box-productItems > .inner > .item .box .body > .image [role=tab] {
  cursor: default;
}

html[data-script-enabled=true] .mod-box-productItems > .inner > .item .box .body > .image .tab-panel[aria-hidden=true] {
  display: none;
}

html[data-script-enabled=true] .mod-box-productItems > .inner > .item .box .body > .image .tab-panel:not(:nth-of-type(1)):not([aria-hidden=false]) {
  display: none;
}

html[data-script-enabled=true] .js-tab [role=tab] {
  cursor: default;
}

html[data-script-enabled=true] .js-tab .tab-panel[aria-hidden=true] {
  display: none;
}

html[data-script-enabled=true] .js-tab .tab-panel:not(:nth-of-type(1)):not([aria-hidden=false]) {
  display: none;
}

html[data-script-enabled=true] .mod-tab-galley .gallery-container {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}

html[data-script-enabled=true] .mod-tab-galley .gallery-overview {
  margin-top: 0;
  margin-bottom: 10px;
}

html[data-script-enabled=true] .mod-tab-galley .gallery-overview > .item {
  margin-bottom: 0;
}

html[data-script-enabled=true] .mod-tab-galley .gallery-thumbnail > .list > .thumbnail {
  outline: 0;
}

html[data-script-enabled=true] .mod-tab-galley .gallery-thumbnail > .list > .thumbnail[aria-selected=true] > ::before {
  border-width: 2px;
  border-color: #c00;
  opacity: 1;
}

html[data-script-enabled=true] .mod-tab-galley .gallery-thumbnail > .list > .thumbnail:focus-visible::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  margin: auto;
  border: #222 solid 2px;
  border-radius: 4px;
  inset: 0;
}

html[data-script-enabled=true] .mod-tab-gallery .gallery-container {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}

html[data-script-enabled=true] .mod-tab-gallery .gallery-overview {
  margin-top: 0;
  margin-bottom: 10px;
}

html[data-script-enabled=true] .mod-tab-gallery .gallery-overview > .item {
  margin-bottom: 0;
}

html[data-script-enabled=true] .mod-tab-gallery .gallery-thumbnail > .list > .thumbnail {
  outline: 0;
}

html[data-script-enabled=true] .mod-tab-gallery .gallery-thumbnail > .list > .thumbnail[aria-selected=true] > ::before {
  border-width: 2px;
  border-color: #c00;
  opacity: 1;
}

html[data-script-enabled=true] .mod-tab-gallery .gallery-thumbnail > .list > .thumbnail:focus-visible::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  margin: auto;
  border: #222 solid 2px;
  border-radius: 4px;
  inset: 0;
}

html[data-script-enabled=true] .func-modal {
  display: none;
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 20px;
  -webkit-transition: 0.2s opacity ease-out;
  transition: 0.2s opacity ease-out;
  opacity: 0;
  background: rgba(0, 0, 0, 0.4);
}

html[data-script-enabled=true] .func-modal[aria-expanded=true] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

html[data-script-enabled=true] .func-modal[aria-hidden=false] {
  opacity: 1;
}

html[data-script-enabled=true] .func-modal > .modal-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  width: 100%;
  max-width: 1120px;
  padding: 0;
  overflow: hidden;
  border-radius: 6px;
  background: #fff;
  -webkit-box-shadow: 0 10px 10px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0 10px 10px 0 rgba(0, 0, 0, 0.15);
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-close {
  max-width: none;
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-inner {
  width: 100%;
  max-width: 1120px;
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-close {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto;
  margin: 20px auto 40px;
  color: #222;
  line-height: 1.65;
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-close > span {
  margin: 0 6px 0 0;
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-close > button {
  position: relative;
  width: auto;
  height: auto;
  padding-left: 36px;
  border: none;
  border-radius: 0;
  background: transparent url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAzMCAzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiIGZpbGw9Im5vbmUiLz48ZyBmaWxsPSIjYmIyNzFhIj48cGF0aCBkPSJtMjguOTY3IDFjMC0uNTUyLS40NDgtMS0xLTFoLTI2Ljk2N2MtLjU1MiAwLTEgLjQ0OC0xIDF2LjE0NmMwIC41NTIuNDQ4IDEgMSAxaDI2Ljk2N2MuNTUyIDAgMS0uNDQ4IDEtMXoiIHRyYW5zZm9ybT0ibWF0cml4KC43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyAuNzA3MTA3IDUuNTE3IDQpIi8+PHBhdGggZD0ibTI4Ljk2NyAxYzAtLjU1Mi0uNDQ4LTEtMS0xaC0yNi45NjdjLS41NTIgMC0xIC40NDgtMSAxdi4xNDZjMCAuNTUyLjQ0OCAxIDEgMWgyNi45NjdjLjU1MiAwIDEtLjQ0OCAxLTF6IiB0cmFuc2Zvcm09Im1hdHJpeCgtLjcwNzEwNyAuNzA3MTA3IC0uNzA3MTA3IC0uNzA3MTA3IDI2IDUuNTE5KSIvPjwvZz48L3N2Zz4=") left center no-repeat;
  background-size: 30px;
  color: #222;
  font-size: 1.6rem;
  font-weight: 700;
  pointer-events: auto;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-close > span {
  display: block;
  position: absolute;
  z-index: -1;
  width: 0;
  height: 0;
  overflow: hidden;
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-close > button::after,
html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-close > button::before {
  content: none;
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-close > button::before {
  content: "閉じる";
  display: block;
  position: static;
  width: auto;
  height: auto;
  margin: auto 0;
  overflow: visible;
  -webkit-transform: none;
          transform: none;
  background: transparent;
}

html[data-script-enabled=true][lang=en] .func-modal > .modal-wrapper > .modal-close > button::before {
  content: "Close";
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-inner {
  min-height: 4em;
  max-height: calc(100vh - 128px);
  max-height: calc(100dvh - 128px);
  overflow: auto;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
  background: #fff;
  -webkit-overflow-scrolling: touch;
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-inner > :first-child {
  margin-top: 0;
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-inner > :last-child {
  margin-bottom: 0;
}

html[data-script-enabled=true] .mod-modal-content {
  display: none;
  margin: 0;
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-inner .mod-modal-content {
  padding: 40px 20px 20px;
}

html[data-browser-trident=true] .func-modal > .modal-wrapper > .modal-inner {
  border: 1px dotted transparent;
  outline: 0;
}

html[data-browser-trident=true] .func-modal > .modal-wrapper > .modal-inner:focus {
  border-color: #333;
}

html[data-script-enabled=true] .func-modal .mod-modal-content {
  display: block;
}

html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-inner {
  min-width: auto;
}

@media screen and (min-width: 768px), print {
  html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-inner {
    max-height: calc(100vh - 200px);
    max-height: calc(100dvh - 200px);
  }
  html[data-script-enabled=true] .func-modal > .modal-wrapper > .modal-inner .mod-modal-content {
    padding: 40px 20px 20px;
  }
}
.func-modal.is-fading {
  will-change: opacity, background, position;
}

.mod-lyt {
  margin: 0;
  padding: 0 0 30px;
}

.mod-lyt[data-col] > .inner > .col.of-full {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-lyt[data-col] > .inner > .col.of-fillin {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: auto;
  max-width: none;
}

.mod-lyt[data-col=auto] > .inner > .col {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-lyt.align-left > .inner {
  -webkit-box-pack: start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.mod-lyt.align-center > .inner {
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
}

.mod-lyt.align-right > .inner {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}

.mod-lyt[data-col="2"] > .inner,
.mod-lyt[data-col="3"] > .inner,
.mod-lyt[data-col="4"] > .inner,
.mod-lyt[data-col="5"] > .inner,
.mod-lyt[data-col="6"] > .inner {
  margin-top: -20px;
  margin-left: -20px;
}

.mod-lyt[data-col="2"] > .inner > .col,
.mod-lyt[data-col="3"] > .inner > .col,
.mod-lyt[data-col="4"] > .inner > .col,
.mod-lyt[data-col="5"] > .inner > .col,
.mod-lyt[data-col="6"] > .inner > .col {
  padding-top: 20px;
  padding-left: 20px;
}

.mod-lyt[data-col=auto] > .inner {
  margin-left: -20px;
}

.mod-lyt[data-col=auto] > .inner > .col {
  padding-left: 20px;
}

.mod-lyt[data-col="2"] > .inner > .col {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-lyt[data-col="3"] > .inner > .col {
  -ms-flex-preferred-size: 33.3333%;
      flex-basis: 33.3333%;
  min-width: 33.3333%;
  max-width: 33.3333%;
}

.mod-lyt[data-col="4"] > .inner > .col {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-lyt[data-col="5"] > .inner > .col {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-lyt[data-col="6"] > .inner > .col {
  -ms-flex-preferred-size: 16.6667%;
      flex-basis: 16.6667%;
  min-width: 16.6667%;
  max-width: 16.6667%;
}

.mod-lyt > .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: -20px;
}

.mod-lyt > .inner > .col {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  padding-top: 20px;
}

.mod-lyt > .inner > .col > :first-child {
  margin-top: 0;
}

.mod-lyt > .inner > .col > :last-child {
  margin-bottom: 0;
}

.mod-lyt > .inner > .col > .image img {
  max-width: 100%;
}

.mod-lyt.of-narrow > .inner {
  margin-top: -20px;
  margin-left: -20px;
}

.mod-lyt.of-narrow > .inner > .col {
  padding-top: 20px;
  padding-left: 20px;
}

@media screen and (min-width: 576px), print {
  .mod-lyt[data-col-wide]:where(.of-col-wide-sm) > .inner > .col.of-full,
  .mod-lyt[data-col-wide]:where(.of-col-wide-sm) > .inner > .col.of-full-wide {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-lyt[data-col-wide]:where(.of-col-wide-sm) > .inner > .col.of-fillin,
  .mod-lyt[data-col-wide]:where(.of-col-wide-sm) > .inner > .col.of-fillin-wide {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    width: auto;
    max-width: none;
  }
  .mod-lyt[data-col-wide=auto]:where(.of-col-wide-sm) > .inner > .col {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-lyt.align-center-wide:where(.of-col-wide-sm) > .inner {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }
  .mod-lyt.align-left-wide:where(.of-col-wide-sm) > .inner {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .mod-lyt.align-right-wide:where(.of-col-wide-sm) > .inner {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .mod-lyt[data-col-wide="2"]:where(.of-col-wide-sm) > .inner,
  .mod-lyt[data-col-wide="3"]:where(.of-col-wide-sm) > .inner,
  .mod-lyt[data-col="2"]:where(.of-col-wide-sm) > .inner,
  .mod-lyt[data-col="3"]:where(.of-col-wide-sm) > .inner {
    margin-top: -20px;
    margin-left: -20px;
  }
  .mod-lyt[data-col-wide="2"]:where(.of-col-wide-sm) > .inner > .col,
  .mod-lyt[data-col-wide="3"]:where(.of-col-wide-sm) > .inner > .col,
  .mod-lyt[data-col="2"]:where(.of-col-wide-sm) > .inner > .col,
  .mod-lyt[data-col="3"]:where(.of-col-wide-sm) > .inner > .col {
    padding-top: 20px;
    padding-left: 20px;
  }
  .mod-lyt[data-col-wide="4"]:where(.of-col-wide-sm) > .inner,
  .mod-lyt[data-col-wide="5"]:where(.of-col-wide-sm) > .inner,
  .mod-lyt[data-col-wide="6"]:where(.of-col-wide-sm) > .inner,
  .mod-lyt[data-col-wide=auto]:where(.of-col-wide-sm) > .inner,
  .mod-lyt[data-col="4"]:where(.of-col-wide-sm) > .inner,
  .mod-lyt[data-col="5"]:where(.of-col-wide-sm) > .inner,
  .mod-lyt[data-col="6"]:where(.of-col-wide-sm) > .inner {
    margin-top: -20px;
    margin-left: -20px;
  }
  .mod-lyt[data-col-wide="4"]:where(.of-col-wide-sm) > .inner > .col,
  .mod-lyt[data-col-wide="5"]:where(.of-col-wide-sm) > .inner > .col,
  .mod-lyt[data-col-wide="6"]:where(.of-col-wide-sm) > .inner > .col,
  .mod-lyt[data-col-wide=auto]:where(.of-col-wide-sm) > .inner > .col,
  .mod-lyt[data-col="4"]:where(.of-col-wide-sm) > .inner > .col,
  .mod-lyt[data-col="5"]:where(.of-col-wide-sm) > .inner > .col,
  .mod-lyt[data-col="6"]:where(.of-col-wide-sm) > .inner > .col {
    padding-top: 20px;
    padding-left: 20px;
  }
  .mod-lyt[data-col-wide="2"]:where(.of-col-wide-sm) > .inner > .col {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-lyt[data-col-wide="3"]:where(.of-col-wide-sm) > .inner > .col {
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    min-width: 33.3333%;
    max-width: 33.3333%;
  }
  .mod-lyt[data-col-wide="4"]:where(.of-col-wide-sm) > .inner > .col {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-lyt[data-col-wide="5"]:where(.of-col-wide-sm) > .inner > .col {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-lyt[data-col-wide="6"]:where(.of-col-wide-sm) > .inner > .col {
    -ms-flex-preferred-size: 16.6667%;
        flex-basis: 16.6667%;
    min-width: 16.6667%;
    max-width: 16.6667%;
  }
  .mod-lyt.of-narrow:where(.of-col-wide-sm) > .inner {
    margin-top: -20px;
    margin-left: -20px;
  }
  .mod-lyt.of-narrow:where(.of-col-wide-sm) > .inner > .col {
    padding-top: 20px;
    padding-left: 20px;
  }
}
@media screen and (min-width: 768px), print {
  .mod-lyt[data-col-wide] > .inner > .col.of-full,
  .mod-lyt[data-col-wide] > .inner > .col.of-full-wide {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-lyt[data-col-wide] > .inner > .col.of-fillin,
  .mod-lyt[data-col-wide] > .inner > .col.of-fillin-wide {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    width: auto;
    max-width: none;
  }
  .mod-lyt[data-col-wide=auto] > .inner > .col {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-lyt.align-center-wide > .inner {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }
  .mod-lyt.align-left-wide > .inner {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .mod-lyt.align-right-wide > .inner {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .mod-lyt[data-col-wide="2"] > .inner,
  .mod-lyt[data-col-wide="3"] > .inner,
  .mod-lyt[data-col="2"] > .inner,
  .mod-lyt[data-col="3"] > .inner {
    margin-top: -20px;
    margin-left: -20px;
  }
  .mod-lyt[data-col-wide="2"] > .inner > .col,
  .mod-lyt[data-col-wide="3"] > .inner > .col,
  .mod-lyt[data-col="2"] > .inner > .col,
  .mod-lyt[data-col="3"] > .inner > .col {
    padding-top: 20px;
    padding-left: 20px;
  }
  .mod-lyt[data-col-wide="4"] > .inner,
  .mod-lyt[data-col-wide="5"] > .inner,
  .mod-lyt[data-col-wide="6"] > .inner,
  .mod-lyt[data-col-wide=auto] > .inner,
  .mod-lyt[data-col="4"] > .inner,
  .mod-lyt[data-col="5"] > .inner,
  .mod-lyt[data-col="6"] > .inner {
    margin-top: -20px;
    margin-left: -20px;
  }
  .mod-lyt[data-col-wide="4"] > .inner > .col,
  .mod-lyt[data-col-wide="5"] > .inner > .col,
  .mod-lyt[data-col-wide="6"] > .inner > .col,
  .mod-lyt[data-col-wide=auto] > .inner > .col,
  .mod-lyt[data-col="4"] > .inner > .col,
  .mod-lyt[data-col="5"] > .inner > .col,
  .mod-lyt[data-col="6"] > .inner > .col {
    padding-top: 20px;
    padding-left: 20px;
  }
  .mod-lyt[data-col-wide="2"] > .inner > .col {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-lyt[data-col-wide="3"] > .inner > .col {
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    min-width: 33.3333%;
    max-width: 33.3333%;
  }
  .mod-lyt[data-col-wide="4"] > .inner > .col {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-lyt[data-col-wide="5"] > .inner > .col {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-lyt[data-col-wide="6"] > .inner > .col {
    -ms-flex-preferred-size: 16.6667%;
        flex-basis: 16.6667%;
    min-width: 16.6667%;
    max-width: 16.6667%;
  }
  .mod-lyt.of-narrow > .inner {
    margin-top: -20px;
    margin-left: -20px;
  }
  .mod-lyt.of-narrow > .inner > .col {
    padding-top: 20px;
    padding-left: 20px;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-lyt[data-col-wide="2"] > .inner,
  .mod-lyt[data-col-wide="3"] > .inner,
  .mod-lyt[data-col="2"] > .inner,
  .mod-lyt[data-col="3"] > .inner {
    margin-top: -26px;
    margin-left: -26px;
  }
  .mod-lyt[data-col-wide="2"] > .inner > .col,
  .mod-lyt[data-col-wide="3"] > .inner > .col,
  .mod-lyt[data-col="2"] > .inner > .col,
  .mod-lyt[data-col="3"] > .inner > .col {
    padding-top: 26px;
    padding-left: 26px;
  }
  .mod-lyt[data-col-wide="4"] > .inner,
  .mod-lyt[data-col-wide="5"] > .inner,
  .mod-lyt[data-col-wide="6"] > .inner,
  .mod-lyt[data-col-wide=auto] > .inner,
  .mod-lyt[data-col="4"] > .inner,
  .mod-lyt[data-col="5"] > .inner,
  .mod-lyt[data-col="6"] > .inner {
    margin-top: -26px;
    margin-left: -26px;
  }
  .mod-lyt[data-col-wide="4"] > .inner > .col,
  .mod-lyt[data-col-wide="5"] > .inner > .col,
  .mod-lyt[data-col-wide="6"] > .inner > .col,
  .mod-lyt[data-col-wide=auto] > .inner > .col,
  .mod-lyt[data-col="4"] > .inner > .col,
  .mod-lyt[data-col="5"] > .inner > .col,
  .mod-lyt[data-col="6"] > .inner > .col {
    padding-top: 26px;
    padding-left: 26px;
  }
  .mod-lyt[data-col-wide="4"] > .inner > .col {
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    min-width: 25%;
    max-width: 25%;
  }
}
/* カラムレイアウト内用固有見出し
------------------------------------ */
.mod-hdg-forColumnLayout {
  position: relative;
  z-index: 0;
  margin: 0;
  border: none;
  letter-spacing: normal;
  text-align: left;
}

.mod-hdg-forColumnLayout[class^=mod-hdg] h1,
.mod-hdg-forColumnLayout[class^=mod-hdg] h2,
.mod-hdg-forColumnLayout[class^=mod-hdg] h3,
.mod-hdg-forColumnLayout[class^=mod-hdg] h4,
.mod-hdg-forColumnLayout[class^=mod-hdg] h5,
.mod-hdg-forColumnLayout[class^=mod-hdg] h6 {
  margin-top: 0;
  padding-top: 0;
}

.mod-hdg-forColumnLayout[class^=mod-hdg] h1 {
  margin-top: 0;
  padding-top: 20px;
}

.mod-hdg-forColumnLayout[class^=mod-hdg] h2 {
  margin-top: 0;
  padding-top: 20px;
}

.mod-hdg-forColumnLayout[class^=mod-hdg][id]:has(> h1, > h2) {
  --content-nav-height: 100px;
  z-index: -1 !important;
  margin-top: calc(var(--content-nav-height) * -1) !important;
  padding-top: var(--content-nav-height) !important;
  overflow: hidden !important;
}

.mod-hdg-forColumnLayout[class^=mod-hdg] h3 {
  margin-top: 0;
}

.mod-hdg-forColumnLayout[class^=mod-hdg] h4 {
  margin-top: 0;
}

.mod-hdg-forColumnLayout[class^=mod-hdg] h5 {
  margin-top: 0;
}

.mod-hdg-forColumnLayout > h1 > span,
.mod-hdg-forColumnLayout > h2 > span,
.mod-hdg-forColumnLayout > h3 > span,
.mod-hdg-forColumnLayout > h4 > span,
.mod-hdg-forColumnLayout > h5 > span,
.mod-hdg-forColumnLayout > h6 > span {
  display: block;
}

.mod-hdg-forColumnLayout > h1,
.mod-hdg-forColumnLayout > h2,
.mod-hdg-forColumnLayout > h3,
.mod-hdg-forColumnLayout > h4,
.mod-hdg-forColumnLayout > h5,
.mod-hdg-forColumnLayout > h6 {
  position: relative;
  z-index: 0;
}

.mod-hdg-forColumnLayout > h2 {
  position: relative;
  z-index: 0;
  margin: 0 0 40px;
  padding: 20px 0 12px;
  border: none;
  border-top: none;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
  text-align: left;
}
.mod-hdg-forColumnLayout > h2::before, .mod-hdg-forColumnLayout > h2::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
}
.mod-hdg-forColumnLayout > h2::before {
  background-color: #dbdbdb;
}
.mod-hdg-forColumnLayout > h2::after {
  width: 40px;
  background-color: #c00;
}

.mod-hdg-forColumnLayout > h3 {
  display: block;
  position: relative;
  z-index: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 32px;
  margin: 0 0 30px;
  padding: 0;
  padding-left: 12px;
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
}
.mod-hdg-forColumnLayout > h3::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 5px;
  height: 100%;
  background-color: #c00;
}

.mod-hdg-forColumnLayout > h4 {
  position: relative;
  z-index: 0;
  margin: 0 0 30px;
  padding: 0 0 10px;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
}
.mod-hdg-forColumnLayout > h4::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #dbdbdb;
}

.mod-hdg-forColumnLayout > h5 {
  position: relative;
  z-index: 0;
  margin: 0 0 24px;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
}

.mod-hdg-forColumnLayout > h1 > span,
.mod-hdg-forColumnLayout > h2 > span,
.mod-hdg-forColumnLayout > h3 > span,
.mod-hdg-forColumnLayout > h4 > span,
.mod-hdg-forColumnLayout > h5 > span {
  display: block;
  margin-bottom: 4px;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.3;
}

.mod-hdg-forColumnLayout > h2 > span {
  font-size: 1.6rem;
}

.mod-hdg-forColumnLayout > h3 > span {
  font-size: 1.6rem;
}

.mod-hdg-forColumnLayout > h4 > span {
  font-size: 1.4rem;
}

.mod-hdg-forColumnLayout > h5 > span {
  font-size: 1.4rem;
}

.mod-hdg-forColumnLayout > h2 > span:only-child {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
  border: none;
  border-top: none;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
  text-align: left;
}

.mod-hdg-forColumnLayout > h3 > span:only-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 32px;
  margin: 0 0 30px;
  padding: 0;
  font-size: 2.2rem;
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
}

.mod-hdg-forColumnLayout > h4 > span:only-child {
  display: block;
  position: relative;
  width: 100%;
  margin-bottom: 0;
  padding: 0;
  font-size: 2rem;
  font-weight: 700;
}

.mod-hdg-forColumnLayout > h5 > span:only-child {
  position: relative;
  z-index: 0;
  margin: 0 0 24px;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
}

.mod-hdg-forColumnLayout > h1 > span + span,
.mod-hdg-forColumnLayout > h2 > span + span,
.mod-hdg-forColumnLayout > h3 > span + span,
.mod-hdg-forColumnLayout > h4 > span + span,
.mod-hdg-forColumnLayout > h5 > span + span {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
  border: none;
  border-top: none;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
  text-align: left;
}

.mod-hdg-forColumnLayout > h2 > span + span {
  font-size: 2.4rem;
}

.mod-hdg-forColumnLayout > h3 > span + span {
  font-size: 2.2rem;
}

.mod-hdg-forColumnLayout > h4 > span + span {
  font-size: 2rem;
}

.mod-hdg-forColumnLayout > h5 > span + span {
  font-size: 1.8rem;
}

@media screen and (min-width: 768px), print {
  .mod-hdg-forColumnLayout {
    margin-bottom: 0;
    letter-spacing: normal;
  }
  .mod-hdg-forColumnLayout > h2::after {
    width: 200px;
    background-color: #c00;
  }
  .mod-hdg-forColumnLayout > h3 {
    min-height: 40px;
    margin: 0 0 30px;
    padding: 0;
    padding-left: 20px;
  }
  .mod-hdg-forColumnLayout > h2 > span {
    padding-bottom: 0;
    font-size: 1.6rem;
  }
  .mod-hdg-forColumnLayout > h3 > span {
    font-size: 1.6rem;
  }
  .mod-hdg-forColumnLayout > h4 > span {
    font-size: 1.4rem;
  }
  .mod-hdg-forColumnLayout > h5 > span {
    font-size: 1.4rem;
  }
  .mod-hdg-forColumnLayout > h2 > span:only-child {
    font-size: 3.4rem;
  }
  .mod-hdg-forColumnLayout > h3 > span:only-child {
    font-size: 2.8rem;
  }
  .mod-hdg-forColumnLayout > h4 > span:only-child {
    font-size: 2.4rem;
  }
  .mod-hdg-forColumnLayout > h5 > span:only-child {
    font-size: 2rem;
  }
  .mod-hdg-forColumnLayout > h1 > span + span,
  .mod-hdg-forColumnLayout > h2 > span + span,
  .mod-hdg-forColumnLayout > h3 > span + span,
  .mod-hdg-forColumnLayout > h4 > span + span,
  .mod-hdg-forColumnLayout > h5 > span + span {
    margin-top: 0;
  }
  .mod-hdg-forColumnLayout > h2 > span + span {
    font-size: 3.4rem;
  }
  .mod-hdg-forColumnLayout > h3 > span + span {
    font-size: 2.8rem;
  }
  .mod-hdg-forColumnLayout > h4 > span + span {
    font-size: 2.4rem;
  }
  .mod-hdg-forColumnLayout > h5 > span + span {
    font-size: 2rem;
  }
}
.c-accordion {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.c-accordion .list {
  width: 100%;
}

.c-accordion .accordion-list {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  overflow: hidden;
  -webkit-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
}

.c-accordion:where(.of-step) .accordion-list {
  border-radius: 0;
}

.c-accordion .accordion-list + .accordion-list {
  margin-top: 20px;
}

.c-accordion .accordion-list:first-child {
  margin-top: 0;
}

.c-accordion .accordion-list:last-child {
  margin-bottom: 40px;
}

.c-accordion.of-fit .accordion-list + .accordion-list {
  margin-top: 0;
  border-top: 0;
}

.c-accordion .accordion-list .accordion-title {
  display: -ms-grid;
  display: grid;
  width: 100%;
  min-height: 68px;
  padding: 20px 58px 20px 20px;
  -webkit-transition: background-color 0.3s ease-in-out, opacity 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out, opacity 0.3s ease-in-out;
  background-color: #f4f4f4;
  font-weight: 700;
  line-height: 1.3;
  cursor: pointer;
  place-items: center stretch;
}

.c-accordion .accordion-list .accordion-title > b {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
}

.c-accordion .accordion-summary .accordion-title .mod-txt {
  margin-bottom: 0;
}

.c-accordion .accordion-summary .accordion-title .mod-txt p {
  margin-bottom: 0;
}

.c-accordion:not(.of-step) .accordion-list .accordion-summary {
  padding: 0;
  outline: none;
  line-height: inherit;
  line-height: 1.3;
  text-align: inherit;
}

.c-accordion .accordion-list .accordion-summary:focus-visible {
  outline: none;
}

.c-accordion .accordion-list .accordion-summary:focus-visible::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  margin: auto;
  border: #222 solid 2px;
  border-radius: 4px;
  inset: 0;
}

.c-accordion .accordion-list .accordion-summary::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  right: 20px;
  -webkit-transition: none;
  transition: none;
}

.c-accordion .accordion-list:not(.is-opened) .accordion-summary::before {
  z-index: 1;
  top: 0;
  bottom: 0;
  width: 24px;
  height: 24px;
  margin: auto;
  -webkit-transform: none;
          transform: none;
  border: none;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgZmlsbD0iI2ZmZiIgcj0iMTIiIHRyYW5zZm9ybT0ibWF0cml4KDAgLTEgMSAwIDAgMjQpIi8+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im0tMjIzODYuMiA4NDg5LjQ1aDEwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyMjM5My4yIC04NDc3LjQ1KSIvPjxwYXRoIGQ9Im0wIDBoMTAiIHRyYW5zZm9ybT0ibWF0cml4KDAgMSAtMSAwIDEyIDcpIi8+PC9nPjwvc3ZnPg==");
}

.c-accordion .accordion-list.is-opened .accordion-summary::before {
  z-index: 1;
  top: 0;
  bottom: 0;
  width: 24px;
  height: 24px;
  margin: auto;
  -webkit-transform: none;
          transform: none;
  border: none;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgZmlsbD0iI2ZmZiIgcj0iMTIiIHRyYW5zZm9ybT0ibWF0cml4KDAgLTEgMSAwIDAgMjQpIi8+PHBhdGggZD0ibS0yMjM4Ni4yIDg0ODkuNDVoMTAiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyMjM5My4yIC04NDc3LjQ1KSIvPjwvc3ZnPg==");
}

.c-accordion.of-toggle-arrow .accordion-list .accordion-summary::before {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.c-accordion.of-toggle-arrow .accordion-list:not(.is-opened) .accordion-summary::before {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMjcgMjciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGNpcmNsZSBjeD0iMTMuNSIgY3k9IjEzLjUiIGZpbGw9IiNmZmYiIHI9IjEzLjUiIHRyYW5zZm9ybT0ibWF0cml4KDAgMSAtMSAwIDI3IDApIi8+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im0wIDAgLjAxOCA4LjUwNyIgdHJhbnNmb3JtPSJtYXRyaXgoLjcwNzEwNyAtLjcwNzEwNyAuNzA3MTA3IC43MDcxMDcgNy40NzMgMTAuNjI0KSIvPjxwYXRoIGQ9Im0wIDguNTA2LjAxOC04LjUwNiIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDcgLS43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyAxMy41MTMgMTYuNjM4KSIvPjwvZz48L3N2Zz4=");
}

.c-accordion.of-toggle-arrow .accordion-list.is-opened .accordion-summary::before {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMjcgMjciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGNpcmNsZSBjeD0iMTMuNSIgY3k9IjEzLjUiIGZpbGw9IiNmZmYiIHI9IjEzLjUiIHRyYW5zZm9ybT0ibWF0cml4KDAgMSAtMSAwIDI3IDApIi8+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im0wIDAgLjAxOCA4LjUwNyIgdHJhbnNmb3JtPSJtYXRyaXgoLjcwNzEwNyAtLjcwNzEwNyAuNzA3MTA3IC43MDcxMDcgNy40NzMgMTAuNjI0KSIvPjxwYXRoIGQ9Im0wIDguNTA2LjAxOC04LjUwNiIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDcgLS43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyAxMy41MTMgMTYuNjM4KSIvPjwvZz48L3N2Zz4=");
}

.c-accordion .accordion-summary {
  display: block;
  position: relative;
  z-index: 1;
  -webkit-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out;
  background-color: #f4f4f4;
  color: #222;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.c-accordion .accordion-summary::-webkit-details-marker {
  display: none;
}

.c-accordion .accordion-content {
  position: relative;
  z-index: 0;
  line-height: 1.65;
}

.c-accordion .accordion-summary::after {
  content: none;
}

.c-accordion .accordion-content {
  padding: 20px;
}

.c-accordion .accordion-list .accordion-container {
  display: none;
  overflow: hidden;
}

html:not([data-script-enabled=true]) .c-accordion .accordion-list .accordion-container {
  display: block;
}

@media screen and (min-width: 768px), print {
  .c-accordion .accordion-list .accordion-title {
    padding-right: 68px;
  }
}
.c-accordion .accordion-content [class^=mod-]:last-child {
  margin-bottom: 0;
}

.c-accordion .accordion-content .mod-txt:last-child p {
  margin-bottom: 0;
}

.js--scroll-hint .scroll-hint-icon {
  display: -ms-grid;
  display: grid;
  z-index: 1;
  top: calc(50% - 52px);
  left: calc(50% - 50px);
  width: 100px;
  height: 104px;
  padding: 16px 8px 10px;
  place-items: start center;
}
.js--scroll-hint .scroll-hint-icon::after {
  top: 10px;
}
@media screen and (min-width: 768px), print {
  .js--scroll-hint .scroll-hint-icon {
    top: calc(50% - 70px);
    left: calc(50% - 60px);
    width: 140px;
    height: 120px;
    padding-top: 28px;
  }
  .js--scroll-hint .scroll-hint-icon::after {
    top: 20px;
  }
}
.js--scroll-hint .scroll-hint-text {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.2;
}
@-webkit-keyframes scroll-hint-mini-appear {
  0% {
    -webkit-transform: translateX(4px);
            transform: translateX(4px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    -webkit-transform: translateX(-4px);
            transform: translateX(-4px);
    opacity: 0;
  }
}
@keyframes scroll-hint-mini-appear {
  0% {
    -webkit-transform: translateX(4px);
            transform: translateX(4px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    -webkit-transform: translateX(-4px);
            transform: translateX(-4px);
    opacity: 0;
  }
}
.js--scroll-hint.scroll-hint--mini-size .scroll-hint-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  top: calc(50% - 12px);
  left: 50%;
  width: auto;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.js--scroll-hint.scroll-hint--mini-size .scroll-hint-icon::before {
  width: 20px;
  height: 20px;
  margin-inline: 6px;
}
.js--scroll-hint.scroll-hint--mini-size .scroll-hint-icon::after {
  content: "";
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  margin-top: 12px;
  margin-inline: 12px;
  -webkit-animation: none;
          animation: none;
  background-size: contain;
}
.js--scroll-hint.scroll-hint--mini-size .scroll-hint-icon .scroll-hint-text {
  margin-top: 0;
}
.js--scroll-hint .scroll-hint-icon-wrap {
  max-height: 600px;
}
.js--scroll-hint .scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: 1;
}
.js--scroll-hint .scroll-hint-icon-wrap.is-active .scroll-hint-icon::before {
  -webkit-animation: scroll-hint-mini-appear 1.2s linear;
          animation: scroll-hint-mini-appear 1.2s linear;
  -webkit-animation-iteration-count: 2;
          animation-iteration-count: 2;
}

.hide-scroll-hint .scroll-hint-icon-wrap {
  display: none !important;
}

/*! = Headline */
[class^=mod-hdg] {
  display: flow-root;
  overflow: hidden;
}

[class^=mod-hdg] h1,
[class^=mod-hdg] h2,
[class^=mod-hdg] h3,
[class^=mod-hdg] h4,
[class^=mod-hdg] h5,
[class^=mod-hdg] h6 {
  margin-top: -50px;
  padding-top: 50px;
}

[class^=mod-hdg] h1 > strong,
[class^=mod-hdg] h2 > strong,
[class^=mod-hdg] h3 > strong,
[class^=mod-hdg] h4 > strong,
[class^=mod-hdg] h5 > strong,
[class^=mod-hdg] h6 > strong {
  display: block;
  font-weight: inherit;
}

[class^=mod-hdg] h1 > span strong,
[class^=mod-hdg] h2 > span strong,
[class^=mod-hdg] h3 > span strong,
[class^=mod-hdg] h4 > span strong,
[class^=mod-hdg] h5 > span strong,
[class^=mod-hdg] h6 > span strong {
  color: #c00;
}

.mod-hdg-al2[id],
.mod-hdg-bl2[id] {
  --content-nav-height: 100px;
  z-index: -1 !important;
  margin-top: calc(var(--content-nav-height) * -1) !important;
  padding-top: calc(var(--content-nav-height) + 20px) !important;
  overflow: hidden !important;
}

.mod-hdg-al2[id] > h1,
.mod-hdg-al2[id] > h2,
.mod-hdg-al2[id] > h3,
.mod-hdg-al2[id] > h4,
.mod-hdg-al2[id] > h5,
.mod-hdg-al2[id] > h6 {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.mod-hdg-bl2[id] > h1,
.mod-hdg-bl2[id] > h2,
.mod-hdg-bl2[id] > h3,
.mod-hdg-bl2[id] > h4,
.mod-hdg-bl2[id] > h5,
.mod-hdg-bl2[id] > h6 {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.mod-hdg-al2 > h1,
.mod-hdg-al2 > h2,
.mod-hdg-al2 > h3,
.mod-hdg-al2 > h4,
.mod-hdg-al2 > h5,
.mod-hdg-al2 > h6 {
  position: relative;
  z-index: -1;
}

.mod-hdg-al2 > h1 > span:not(:last-child),
.mod-hdg-al2 > h2 > span:not(:last-child),
.mod-hdg-al2 > h3 > span:not(:last-child),
.mod-hdg-al2 > h4 > span:not(:last-child),
.mod-hdg-al2 > h5 > span:not(:last-child),
.mod-hdg-al2 > h6 > span:not(:last-child) {
  display: block;
  margin-bottom: 4px;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.3;
}

.mod-hdg-al3 > h1,
.mod-hdg-al3 > h2,
.mod-hdg-al3 > h3,
.mod-hdg-al3 > h4,
.mod-hdg-al3 > h5,
.mod-hdg-al3 > h6 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: -1;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod-hdg-al4 > h1,
.mod-hdg-al4 > h2,
.mod-hdg-al4 > h3,
.mod-hdg-al4 > h4,
.mod-hdg-al4 > h5,
.mod-hdg-al4 > h6 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: -1;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod-hdg-al4 > h1::before,
.mod-hdg-al4 > h2::before,
.mod-hdg-al4 > h3::before,
.mod-hdg-al4 > h4::before,
.mod-hdg-al4 > h5::before,
.mod-hdg-al4 > h6::before {
  content: none;
}

.mod-hdg-al5 > h1,
.mod-hdg-al5 > h2,
.mod-hdg-al5 > h3,
.mod-hdg-al5 > h4,
.mod-hdg-al5 > h5,
.mod-hdg-al5 > h6 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: -1;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

[class^=mod-hdg-al].of-line-bottom {
  border-bottom: 1px solid #e1e1e1;
}

[class^=mod-hdg-al2].of-line-bottom {
  padding-bottom: 20px;
}

[class^=mod-hdg-al3].of-line-bottom {
  padding-bottom: 30px;
}

.mod-tbl + .mod-hdg-al3,
.mod-tbl-simple + .mod-hdg-al3 {
  margin-top: 0;
}

.mod-hdg-al3 + .pause-line {
  margin-top: 0;
}

.mod-hdg-al3.align-center > h3 {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.str-pageTitle {
  margin: 60px 0 40px;
  padding: 0 20px;
  background-color: transparent;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: left;
}

.str-pageTitle > .inner > .hdg > span {
  display: block;
}

.str-pageTitle > .inner > .hdg > .logo img {
  display: inline-block;
  width: auto;
  max-width: none;
  height: 100%;
  max-height: 44px;
  background: transparent;
  font-size: 1.6rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.str-pageTitle.var-02 > .inner > .hdg > span:not(.logo) {
  display: none;
}

.str-pageTitle > .inner > .hdg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0;
  padding: 0;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.3;
}

.str-pageTitle > .inner > .hdg > .logo {
  width: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.str-pageTitle > .inner > .hdg > .logo + span {
  margin-top: 0;
}

.str-pageTitle > .inner > .hdg > .text-unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}

.str-pageTitle > .inner > .hdg > .text-unit > .main {
  margin-bottom: 0;
}

.str-pageTitle > .inner > .hdg > .logo + .text-unit > .main {
  margin-top: 14px;
}

.str-pageTitle > .inner > .hdg > .text-unit > .main .product-name {
  margin-right: 10px;
}

.str-pageTitle > .inner > .hdg > .text-unit > .sub {
  margin-bottom: 4px;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.3;
}

.str-pageTitle > .inner > .hdg > .logo + .text-unit > .sub {
  margin-top: 14px;
  margin-bottom: -6px;
}

.str-pageTitle + .mod-link {
  margin-top: 10px;
  margin-bottom: 20px;
}

.str-outer .str-pageTitle {
  margin-right: -20px;
  margin-left: -20px;
}

@media screen and (min-width: 768px), print {
  .str-pageTitle {
    padding: 0 40px;
    background-color: transparent;
    font-size: 3.6rem;
    letter-spacing: normal;
    line-height: 1.5;
  }
  .str-outer.var-02 .str-pageTitle {
    padding: 0;
  }
  .str-pageTitle > .inner {
    display: block;
    position: relative;
    max-width: 1120px;
    margin: auto;
  }
  .str-pageTitle > .inner > .hdg {
    padding: 0;
  }
  .str-pageTitle > .inner > .hdg > .logo {
    margin: 0;
    margin-right: 16px;
    padding: 0;
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
  }
}
@media screen and (min-width: 768px) and (hover: hover) and (pointer: fine), print and (hover: hover) and (pointer: fine) {
  .str-pageTitle > .inner > .hdg > .logo[href]:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 768px), print {
  .str-pageTitle > .inner > .hdg > .logo + span {
    margin-top: 0;
  }
  .str-pageTitle > .inner > .hdg > .text-unit > .main {
    font-size: 4.4rem;
    text-align: left;
  }
  .str-pageTitle > .inner > .hdg > .text-unit > .sub {
    margin-bottom: 4px;
    text-align: left;
  }
  .str-pageTitle > .inner > .hdg span {
    text-align: left;
  }
  .str-pageTitle > .inner > .hdg span:first-child:not(.logo) {
    padding-top: 0;
    padding-right: 0;
    padding-left: 0;
  }
  .str-pageTitle > .inner > .hdg > .logo + span {
    margin: 0;
  }
  .str-pageTitle > .inner > .hdg > .logo + .main {
    margin-top: -8px;
    margin-left: 0;
  }
  .str-pageTitle > .inner > .hdg > .logo + .text-unit > .sub {
    margin-bottom: -6px;
  }
  .str-outer .str-pageTitle {
    margin-right: -40px;
    margin-left: -40px;
  }
  .str-outer:not(.var-03) .str-pageTitle {
    padding-right: 40px;
    padding-left: 40px;
  }
}
.mod-keyvisual-hdg {
  display: -ms-grid;
  display: grid;
  position: relative;
  height: 100%;
  margin-bottom: 40px;
  overflow: hidden;
}
.mod-keyvisual-hdg.of-background::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  background: -webkit-gradient(linear, left bottom, left top, from(hsla(0, 0%, 100%, 0.9)), color-stop(8.1%, hsla(0, 0%, 100%, 0.89)), color-stop(15.5%, hsla(0, 0%, 100%, 0.861)), color-stop(22.5%, hsla(0, 0%, 100%, 0.817)), color-stop(29%, hsla(0, 0%, 100%, 0.76)), color-stop(35.3%, hsla(0, 0%, 100%, 0.693)), color-stop(41.2%, hsla(0, 0%, 100%, 0.618)), color-stop(47.1%, hsla(0, 0%, 100%, 0.54)), color-stop(52.9%, hsla(0, 0%, 100%, 0.46)), color-stop(58.8%, hsla(0, 0%, 100%, 0.382)), color-stop(64.7%, hsla(0, 0%, 100%, 0.307)), color-stop(71%, hsla(0, 0%, 100%, 0.24)), color-stop(77.5%, hsla(0, 0%, 100%, 0.183)), color-stop(84.5%, hsla(0, 0%, 100%, 0.139)), color-stop(91.9%, hsla(0, 0%, 100%, 0.11)), to(hsla(0, 0%, 100%, 0.1)));
  background: linear-gradient(to top, hsla(0, 0%, 100%, 0.9) 0%, hsla(0, 0%, 100%, 0.89) 8.1%, hsla(0, 0%, 100%, 0.861) 15.5%, hsla(0, 0%, 100%, 0.817) 22.5%, hsla(0, 0%, 100%, 0.76) 29%, hsla(0, 0%, 100%, 0.693) 35.3%, hsla(0, 0%, 100%, 0.618) 41.2%, hsla(0, 0%, 100%, 0.54) 47.1%, hsla(0, 0%, 100%, 0.46) 52.9%, hsla(0, 0%, 100%, 0.382) 58.8%, hsla(0, 0%, 100%, 0.307) 64.7%, hsla(0, 0%, 100%, 0.24) 71%, hsla(0, 0%, 100%, 0.183) 77.5%, hsla(0, 0%, 100%, 0.139) 84.5%, hsla(0, 0%, 100%, 0.11) 91.9%, hsla(0, 0%, 100%, 0.1) 100%);
}
@media screen and (min-width: 768px), print {
  .mod-keyvisual-hdg.of-background::after {
    background: -webkit-gradient(linear, left top, right top, from(hsla(0, 0%, 100%, 0.9)), color-stop(8.1%, hsla(0, 0%, 100%, 0.89)), color-stop(15.5%, hsla(0, 0%, 100%, 0.861)), color-stop(22.5%, hsla(0, 0%, 100%, 0.817)), color-stop(29%, hsla(0, 0%, 100%, 0.76)), color-stop(35.3%, hsla(0, 0%, 100%, 0.693)), color-stop(41.2%, hsla(0, 0%, 100%, 0.618)), color-stop(47.1%, hsla(0, 0%, 100%, 0.54)), color-stop(52.9%, hsla(0, 0%, 100%, 0.46)), color-stop(58.8%, hsla(0, 0%, 100%, 0.382)), color-stop(64.7%, hsla(0, 0%, 100%, 0.307)), color-stop(71%, hsla(0, 0%, 100%, 0.24)), color-stop(77.5%, hsla(0, 0%, 100%, 0.183)), color-stop(84.5%, hsla(0, 0%, 100%, 0.139)), color-stop(91.9%, hsla(0, 0%, 100%, 0.11)), to(hsla(0, 0%, 100%, 0.1)));
    background: linear-gradient(to right, hsla(0, 0%, 100%, 0.9) 0%, hsla(0, 0%, 100%, 0.89) 8.1%, hsla(0, 0%, 100%, 0.861) 15.5%, hsla(0, 0%, 100%, 0.817) 22.5%, hsla(0, 0%, 100%, 0.76) 29%, hsla(0, 0%, 100%, 0.693) 35.3%, hsla(0, 0%, 100%, 0.618) 41.2%, hsla(0, 0%, 100%, 0.54) 47.1%, hsla(0, 0%, 100%, 0.46) 52.9%, hsla(0, 0%, 100%, 0.382) 58.8%, hsla(0, 0%, 100%, 0.307) 64.7%, hsla(0, 0%, 100%, 0.24) 71%, hsla(0, 0%, 100%, 0.183) 77.5%, hsla(0, 0%, 100%, 0.139) 84.5%, hsla(0, 0%, 100%, 0.11) 91.9%, hsla(0, 0%, 100%, 0.1) 100%);
  }
}
.mod-keyvisual-hdg.of-background.of-white::after {
  background: -webkit-gradient(linear, left bottom, left top, from(hsla(0, 0%, 0%, 0.9)), color-stop(8.1%, hsla(0, 0%, 0%, 0.89)), color-stop(15.5%, hsla(0, 0%, 0%, 0.861)), color-stop(22.5%, hsla(0, 0%, 0%, 0.817)), color-stop(29%, hsla(0, 0%, 0%, 0.76)), color-stop(35.3%, hsla(0, 0%, 0%, 0.693)), color-stop(41.2%, hsla(0, 0%, 0%, 0.618)), color-stop(47.1%, hsla(0, 0%, 0%, 0.54)), color-stop(52.9%, hsla(0, 0%, 0%, 0.46)), color-stop(58.8%, hsla(0, 0%, 0%, 0.382)), color-stop(64.7%, hsla(0, 0%, 0%, 0.307)), color-stop(71%, hsla(0, 0%, 0%, 0.24)), color-stop(77.5%, hsla(0, 0%, 0%, 0.183)), color-stop(84.5%, hsla(0, 0%, 0%, 0.139)), color-stop(91.9%, hsla(0, 0%, 0%, 0.11)), to(hsla(0, 0%, 0%, 0.1)));
  background: linear-gradient(to top, hsla(0, 0%, 0%, 0.9) 0%, hsla(0, 0%, 0%, 0.89) 8.1%, hsla(0, 0%, 0%, 0.861) 15.5%, hsla(0, 0%, 0%, 0.817) 22.5%, hsla(0, 0%, 0%, 0.76) 29%, hsla(0, 0%, 0%, 0.693) 35.3%, hsla(0, 0%, 0%, 0.618) 41.2%, hsla(0, 0%, 0%, 0.54) 47.1%, hsla(0, 0%, 0%, 0.46) 52.9%, hsla(0, 0%, 0%, 0.382) 58.8%, hsla(0, 0%, 0%, 0.307) 64.7%, hsla(0, 0%, 0%, 0.24) 71%, hsla(0, 0%, 0%, 0.183) 77.5%, hsla(0, 0%, 0%, 0.139) 84.5%, hsla(0, 0%, 0%, 0.11) 91.9%, hsla(0, 0%, 0%, 0.1) 100%);
}
@media screen and (min-width: 768px), print {
  .mod-keyvisual-hdg.of-background.of-white::after {
    background: -webkit-gradient(linear, left top, right top, from(hsla(0, 0%, 0%, 0.9)), color-stop(8.1%, hsla(0, 0%, 0%, 0.89)), color-stop(15.5%, hsla(0, 0%, 0%, 0.861)), color-stop(22.5%, hsla(0, 0%, 0%, 0.817)), color-stop(29%, hsla(0, 0%, 0%, 0.76)), color-stop(35.3%, hsla(0, 0%, 0%, 0.693)), color-stop(41.2%, hsla(0, 0%, 0%, 0.618)), color-stop(47.1%, hsla(0, 0%, 0%, 0.54)), color-stop(52.9%, hsla(0, 0%, 0%, 0.46)), color-stop(58.8%, hsla(0, 0%, 0%, 0.382)), color-stop(64.7%, hsla(0, 0%, 0%, 0.307)), color-stop(71%, hsla(0, 0%, 0%, 0.24)), color-stop(77.5%, hsla(0, 0%, 0%, 0.183)), color-stop(84.5%, hsla(0, 0%, 0%, 0.139)), color-stop(91.9%, hsla(0, 0%, 0%, 0.11)), to(hsla(0, 0%, 0%, 0.1)));
    background: linear-gradient(to right, hsla(0, 0%, 0%, 0.9) 0%, hsla(0, 0%, 0%, 0.89) 8.1%, hsla(0, 0%, 0%, 0.861) 15.5%, hsla(0, 0%, 0%, 0.817) 22.5%, hsla(0, 0%, 0%, 0.76) 29%, hsla(0, 0%, 0%, 0.693) 35.3%, hsla(0, 0%, 0%, 0.618) 41.2%, hsla(0, 0%, 0%, 0.54) 47.1%, hsla(0, 0%, 0%, 0.46) 52.9%, hsla(0, 0%, 0%, 0.382) 58.8%, hsla(0, 0%, 0%, 0.307) 64.7%, hsla(0, 0%, 0%, 0.24) 71%, hsla(0, 0%, 0%, 0.183) 77.5%, hsla(0, 0%, 0%, 0.139) 84.5%, hsla(0, 0%, 0%, 0.11) 91.9%, hsla(0, 0%, 0%, 0.1) 100%);
  }
}
.mod-keyvisual-hdg__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 1;
  -ms-grid-row: 1;
  grid-area: 1/-1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  width: 100%;
  max-width: 1160px;
  height: auto;
  min-height: 540px;
  margin: auto auto 0;
  padding: 60px 20px;
}
.mod-keyvisual-hdg.of-width-narrow .mod-keyvisual-hdg__container {
  max-width: 900px;
}
.mod-keyvisual-hdg__title {
  position: relative;
  padding: 24px 0 0;
}
.mod-keyvisual-hdg__title::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 70px;
  height: 4px;
  background-color: #c00;
}
.mod-keyvisual-hdg__main-text {
  display: block;
  color: #222;
  font-size: 3.4rem;
  font-weight: 700;
  line-height: 1.3;
}
.mod-keyvisual-hdg.of-white .mod-keyvisual-hdg__main-text {
  color: #fff;
}
.mod-keyvisual-hdg__sub-text {
  display: block;
  margin-top: 12px;
  color: #222;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.65;
}
.mod-keyvisual-hdg.of-white .mod-keyvisual-hdg__sub-text {
  color: #fff;
}
.mod-keyvisual-hdg__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 24px;
}
.mod-keyvisual-hdg .tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -8px;
  margin-left: -8px;
}
.mod-keyvisual-hdg .tag {
  margin-top: 8px;
  margin-left: 8px;
}
.mod-keyvisual-hdg .tag span,
.mod-keyvisual-hdg .tag a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 28px;
  padding: 4px 10px;
  border: 1px solid #c00;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}
.mod-keyvisual-hdg .tag a[href] {
  -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  border: 1px solid #c00;
  border-radius: 6px;
  background: #fff;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  color: #c00;
  font-weight: bold;
  text-decoration: none;
}
.mod-keyvisual-hdg .tag a[href]:hover {
  background: #c00;
  color: #fff;
}
.mod-keyvisual-hdg__visual {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  overflow: hidden;
  background-color: #f4f4f4;
}
.mod-keyvisual-hdg.of-white .mod-keyvisual-hdg__visual {
  background-color: #222;
}
.mod-keyvisual-hdg__visual-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1200/491;
}
@media screen and (min-width: 768px), print {
  .mod-keyvisual-hdg {
    min-height: 491px;
  }
  .mod-keyvisual-hdg__container {
    min-height: 100%;
    padding: 60px 20px 90px;
  }
  .mod-keyvisual-hdg__title {
    max-width: 640px;
  }
  .mod-keyvisual-hdg__main-text {
    font-size: 4.4rem;
  }
  .mod-keyvisual-hdg__visual-img {
    aspect-ratio: 375/540;
  }
}

.mod-keyvisual-hdg + .mod-box {
  width: calc(100% - 40px);
  max-width: 1120px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px), print {
  .mod-keyvisual-hdg + .mod-box {
    width: calc(100% - 80px);
  }
}

.mod-hdg-al2 {
  position: relative;
  z-index: 0;
  margin: 0 0 40px;
  padding: 20px 0 12px;
  border: none;
  border-top: none;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
  text-align: left;
}
.mod-hdg-al2::before, .mod-hdg-al2::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
}
.mod-hdg-al2::before {
  background-color: #dbdbdb;
}
.mod-hdg-al2::after {
  width: 40px;
  background-color: #c00;
}
.mod-hdg-al2.var-02 {
  margin-top: 0;
  padding-top: 20px;
  padding-bottom: 16px;
  border: none;
}
@media screen and (min-width: 768px), print {
  .mod-hdg-al2 {
    padding-bottom: 16px;
    font-size: 3.4rem;
  }
  .mod-hdg-al2::after {
    width: 200px;
    background-color: #c00;
  }
  .mod-hdg-al2.var-02 {
    margin-top: 0;
    padding-top: 20px;
    padding-bottom: 16px;
  }
}

.mod-hdg-al2.of-borderless {
  padding-bottom: 0;
}
.mod-hdg-al2.of-borderless::before {
  content: none;
}
.mod-hdg-al2.of-borderless::after {
  content: none;
}

.mod-hdg-al3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 32px;
  margin: 0 0 30px;
  padding: 0;
  padding-left: 12px;
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
}
.mod-hdg-al3::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 5px;
  height: 100%;
  background-color: #c00;
}

@media screen and (min-width: 768px), print {
  .mod-hdg-al3 {
    min-height: 40px;
    margin: 0 0 30px;
    padding: 0;
    padding-left: 20px;
    font-size: 2.8rem;
    letter-spacing: normal;
  }
}
.mod-hdg-al3 > h1 > .icon,
.mod-hdg-al3 > h2 > .icon,
.mod-hdg-al3 > h3 > .icon,
.mod-hdg-al3 > h4 > .icon,
.mod-hdg-al3 > h5 > .icon,
.mod-hdg-al3 > h6 > .icon {
  display: inline-block;
  position: relative;
  -ms-flex-preferred-size: 32px;
      flex-basis: 32px;
  -ms-flex-item-align: start;
      align-self: flex-start;
  min-width: 32px;
  max-width: 32px;
  min-height: 32px;
  margin: 0 8px 0 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.mod-hdg-al3 > h1 > .icon::before,
.mod-hdg-al3 > h2 > .icon::before,
.mod-hdg-al3 > h3 > .icon::before,
.mod-hdg-al3 > h4 > .icon::before,
.mod-hdg-al3 > h5 > .icon::before,
.mod-hdg-al3 > h6 > .icon::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 32px;
  height: 32px;
  border-radius: 0;
  background: transparent;
}

.mod-hdg-al3 > h1 > .icon img,
.mod-hdg-al3 > h2 > .icon img,
.mod-hdg-al3 > h3 > .icon img,
.mod-hdg-al3 > h4 > .icon img,
.mod-hdg-al3 > h5 > .icon img,
.mod-hdg-al3 > h6 > .icon img {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: auto;
  max-width: 100%;
  height: auto;
  margin: auto;
}

@media screen and (min-width: 768px), print {
  .mod-hdg-al3 > h1 > .icon,
  .mod-hdg-al3 > h2 > .icon,
  .mod-hdg-al3 > h3 > .icon,
  .mod-hdg-al3 > h4 > .icon,
  .mod-hdg-al3 > h5 > .icon,
  .mod-hdg-al3 > h6 > .icon {
    -ms-flex-preferred-size: 44px;
        flex-basis: 44px;
    min-width: 44px;
    max-width: 44px;
    min-height: 44px;
    margin-right: 16px;
    overflow: hidden;
    border-radius: 0;
  }
}
@media screen and (min-width: 768px) and (hover: hover) and (pointer: fine), print and (hover: hover) and (pointer: fine) {
  .mod-hdg-al3 > h1 > .icon[href]:hover,
  .mod-hdg-al3 > h2 > .icon[href]:hover,
  .mod-hdg-al3 > h3 > .icon[href]:hover,
  .mod-hdg-al3 > h4 > .icon[href]:hover,
  .mod-hdg-al3 > h5 > .icon[href]:hover,
  .mod-hdg-al3 > h6 > .icon[href]:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 768px), print {
  .mod-hdg-al3 > h1 > .icon::before,
  .mod-hdg-al3 > h2 > .icon::before,
  .mod-hdg-al3 > h3 > .icon::before,
  .mod-hdg-al3 > h4 > .icon::before,
  .mod-hdg-al3 > h5 > .icon::before,
  .mod-hdg-al3 > h6 > .icon::before {
    top: 0;
    left: 0;
    width: 44px;
    height: 44px;
  }
  .mod-hdg-al3 > h1 > .icon img,
  .mod-hdg-al3 > h2 > .icon img,
  .mod-hdg-al3 > h3 > .icon img,
  .mod-hdg-al3 > h4 > .icon img,
  .mod-hdg-al3 > h5 > .icon img,
  .mod-hdg-al3 > h6 > .icon img {
    width: auto;
  }
  .mod-hdg-al3 > h1 > .icon ~ *,
  .mod-hdg-al3 > h2 > .icon ~ *,
  .mod-hdg-al3 > h3 > .icon ~ *,
  .mod-hdg-al3 > h4 > .icon ~ *,
  .mod-hdg-al3 > h5 > .icon ~ *,
  .mod-hdg-al3 > h6 > .icon ~ * {
    letter-spacing: normal;
  }
}
.mod-hdg-al3.of-borderless {
  padding-left: 0;
}
.mod-hdg-al3.of-borderless::before {
  content: none;
}

.mod-hdg-al4 {
  position: relative;
  z-index: 0;
  margin: 0 0 30px;
  padding: 0 0 10px;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
}
.mod-hdg-al4::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #dbdbdb;
}

.mod-hdg-al4 > h1 > span,
.mod-hdg-al4 > h2 > span,
.mod-hdg-al4 > h3 > span,
.mod-hdg-al4 > h4 > span,
.mod-hdg-al4 > h5 > span,
.mod-hdg-al4 > h6 > span {
  display: block;
  position: relative;
  width: 100%;
  padding: 0;
}

@media screen and (min-width: 768px), print {
  .mod-hdg-al4 {
    font-size: 2.4rem;
    letter-spacing: normal;
  }
  .mod-hdg-al4 > h1 > span,
  .mod-hdg-al4 > h2 > span,
  .mod-hdg-al4 > h3 > span,
  .mod-hdg-al4 > h4 > span,
  .mod-hdg-al4 > h5 > span,
  .mod-hdg-al4 > h6 > span {
    padding-left: 0;
  }
}
.mod-hdg-al4 > h1 > .icon,
.mod-hdg-al4 > h2 > .icon,
.mod-hdg-al4 > h3 > .icon,
.mod-hdg-al4 > h4 > .icon,
.mod-hdg-al4 > h5 > .icon,
.mod-hdg-al4 > h6 > .icon {
  display: inline-block;
  position: relative;
  top: 0;
  -ms-flex-preferred-size: 30px;
      flex-basis: 30px;
  -ms-flex-item-align: start;
      align-self: flex-start;
  min-width: 30px;
  max-width: 30px;
  min-height: 30px;
  margin: 0 8px 0 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

@media (hover: hover) and (pointer: fine) {
  .mod-hdg-al4 > h1 > .icon[href]:hover,
  .mod-hdg-al4 > h2 > .icon[href]:hover,
  .mod-hdg-al4 > h3 > .icon[href]:hover,
  .mod-hdg-al4 > h4 > .icon[href]:hover,
  .mod-hdg-al4 > h5 > .icon[href]:hover,
  .mod-hdg-al4 > h6 > .icon[href]:hover {
    opacity: 0.7;
  }
}
.mod-hdg-al4 > h1 > .icon::before,
.mod-hdg-al4 > h2 > .icon::before,
.mod-hdg-al4 > h3 > .icon::before,
.mod-hdg-al4 > h4 > .icon::before,
.mod-hdg-al4 > h5 > .icon::before,
.mod-hdg-al4 > h6 > .icon::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 30px;
  height: 30px;
  border-radius: 0;
  background: transparent;
}

.mod-hdg-al4 > h1 > .icon img,
.mod-hdg-al4 > h2 > .icon img,
.mod-hdg-al4 > h3 > .icon img,
.mod-hdg-al4 > h4 > .icon img,
.mod-hdg-al4 > h5 > .icon img,
.mod-hdg-al4 > h6 > .icon img {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: auto;
}

.mod-hdg-al4 > h1 > span.icon + span,
.mod-hdg-al4 > h2 > span.icon + span,
.mod-hdg-al4 > h3 > span.icon + span,
.mod-hdg-al4 > h4 > span.icon + span,
.mod-hdg-al4 > h5 > span.icon + span,
.mod-hdg-al4 > h6 > span.icon + span {
  padding-top: 0;
  padding-left: 0;
}

@media screen and (min-width: 768px), print {
  .mod-hdg-al4 > h1 > .icon,
  .mod-hdg-al4 > h2 > .icon,
  .mod-hdg-al4 > h3 > .icon,
  .mod-hdg-al4 > h4 > .icon,
  .mod-hdg-al4 > h5 > .icon,
  .mod-hdg-al4 > h6 > .icon {
    -ms-flex-preferred-size: 40px;
        flex-basis: 40px;
    min-width: 40px;
    max-width: 40px;
    min-height: 40px;
    margin-right: 12px;
  }
  .mod-hdg-al4 > h1 > .icon::before,
  .mod-hdg-al4 > h2 > .icon::before,
  .mod-hdg-al4 > h3 > .icon::before,
  .mod-hdg-al4 > h4 > .icon::before,
  .mod-hdg-al4 > h5 > .icon::before,
  .mod-hdg-al4 > h6 > .icon::before {
    width: 40px;
    height: 40px;
  }
}
.mod-hdg-al4.of-borderless {
  padding-bottom: 0;
}
.mod-hdg-al4.of-borderless::before {
  content: none;
}

.mod-hdg-al5 {
  position: relative;
  z-index: 0;
  margin: 0 0 24px;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
}

.mod-hdg-al5 > h1 > span,
.mod-hdg-al5 > h2 > span,
.mod-hdg-al5 > h3 > span,
.mod-hdg-al5 > h4 > span,
.mod-hdg-al5 > h5 > span,
.mod-hdg-al5 > h6 > span {
  display: block;
  position: relative;
  width: 100%;
  padding: 0;
}

@media screen and (min-width: 768px), print {
  .mod-hdg-al5 {
    font-size: 2rem;
    letter-spacing: normal;
  }
}
.mod-hdg-al5 > h1 > .icon,
.mod-hdg-al5 > h2 > .icon,
.mod-hdg-al5 > h3 > .icon,
.mod-hdg-al5 > h4 > .icon,
.mod-hdg-al5 > h5 > .icon,
.mod-hdg-al5 > h6 > .icon {
  display: inline-block;
  position: relative;
  top: 0;
  -ms-flex-preferred-size: 30px;
      flex-basis: 30px;
  -ms-flex-item-align: start;
      align-self: flex-start;
  min-width: 30px;
  max-width: 30px;
  min-height: 30px;
  margin: 0 8px 0 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

@media (hover: hover) and (pointer: fine) {
  .mod-hdg-al5 > h1 > .icon[href]:hover,
  .mod-hdg-al5 > h2 > .icon[href]:hover,
  .mod-hdg-al5 > h3 > .icon[href]:hover,
  .mod-hdg-al5 > h4 > .icon[href]:hover,
  .mod-hdg-al5 > h5 > .icon[href]:hover,
  .mod-hdg-al5 > h6 > .icon[href]:hover {
    opacity: 0.7;
  }
}
.mod-hdg-al5 > h1 > .icon::before,
.mod-hdg-al5 > h2 > .icon::before,
.mod-hdg-al5 > h3 > .icon::before,
.mod-hdg-al5 > h4 > .icon::before,
.mod-hdg-al5 > h5 > .icon::before,
.mod-hdg-al5 > h6 > .icon::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 30px;
  height: 30px;
  border-radius: 0;
  background: transparent;
}

.mod-hdg-al5 > h1 > .icon img,
.mod-hdg-al5 > h2 > .icon img,
.mod-hdg-al5 > h3 > .icon img,
.mod-hdg-al5 > h4 > .icon img,
.mod-hdg-al5 > h5 > .icon img,
.mod-hdg-al5 > h6 > .icon img {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: auto;
  max-width: 100%;
  height: auto;
  margin: auto;
}

.mod-hdg-al5 > h1 > span.icon + span,
.mod-hdg-al5 > h2 > span.icon + span,
.mod-hdg-al5 > h3 > span.icon + span,
.mod-hdg-al5 > h4 > span.icon + span,
.mod-hdg-al5 > h5 > span.icon + span,
.mod-hdg-al5 > h6 > span.icon + span {
  padding-top: 0;
  padding-left: 0;
}

@media screen and (min-width: 768px), print {
  .mod-hdg-al5 > h1 > .icon,
  .mod-hdg-al5 > h2 > .icon,
  .mod-hdg-al5 > h3 > .icon,
  .mod-hdg-al5 > h4 > .icon,
  .mod-hdg-al5 > h5 > .icon,
  .mod-hdg-al5 > h6 > .icon {
    top: 0;
    margin-right: 16px;
  }
}
.mod-hdg-bl2 > h1,
.mod-hdg-bl2 > h2,
.mod-hdg-bl2 > h3,
.mod-hdg-bl2 > h4,
.mod-hdg-bl2 > h5,
.mod-hdg-bl2 > h6 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: -1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.mod-hdg-bl2 > h1 > span:last-child,
.mod-hdg-bl2 > h1 > strong:last-child,
.mod-hdg-bl2 > h2 > span:last-child,
.mod-hdg-bl2 > h2 > strong:last-child,
.mod-hdg-bl2 > h3 > span:last-child,
.mod-hdg-bl2 > h3 > strong:last-child,
.mod-hdg-bl2 > h4 > span:last-child,
.mod-hdg-bl2 > h4 > strong:last-child,
.mod-hdg-bl2 > h5 > span:last-child,
.mod-hdg-bl2 > h5 > strong:last-child,
.mod-hdg-bl2 > h6 > span:last-child,
.mod-hdg-bl2 > h6 > strong:last-child {
  position: relative;
  min-width: initial;
  padding: initial;
}
.mod-hdg-bl2 > h1 > span:last-child::first-letter,
.mod-hdg-bl2 > h1 > strong:last-child::first-letter,
.mod-hdg-bl2 > h2 > span:last-child::first-letter,
.mod-hdg-bl2 > h2 > strong:last-child::first-letter,
.mod-hdg-bl2 > h3 > span:last-child::first-letter,
.mod-hdg-bl2 > h3 > strong:last-child::first-letter,
.mod-hdg-bl2 > h4 > span:last-child::first-letter,
.mod-hdg-bl2 > h4 > strong:last-child::first-letter,
.mod-hdg-bl2 > h5 > span:last-child::first-letter,
.mod-hdg-bl2 > h5 > strong:last-child::first-letter,
.mod-hdg-bl2 > h6 > span:last-child::first-letter,
.mod-hdg-bl2 > h6 > strong:last-child::first-letter {
  color: #c00;
}

.mod-hdg-bl2 > h1 > span:not(:last-child),
.mod-hdg-bl2 > h2 > span:not(:last-child),
.mod-hdg-bl2 > h3 > span:not(:last-child),
.mod-hdg-bl2 > h4 > span:not(:last-child),
.mod-hdg-bl2 > h5 > span:not(:last-child),
.mod-hdg-bl2 > h6 > span:not(:last-child) {
  display: block;
  margin-bottom: 4px;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.3;
}

.mod-hdg-bl2 > h1 > span:first-child:not(:last-child),
.mod-hdg-bl2 > h2 > span:first-child:not(:last-child),
.mod-hdg-bl2 > h3 > span:first-child:not(:last-child),
.mod-hdg-bl2 > h4 > span:first-child:not(:last-child),
.mod-hdg-bl2 > h5 > span:first-child:not(:last-child),
.mod-hdg-bl2 > h6 > span:first-child:not(:last-child) {
  margin: 0 0 4px;
  font-size: 1.6rem;
}

.mod-hdg-bl2 > h1 > span:last-child::after,
.mod-hdg-bl2 > h1 > strong:last-child::after,
.mod-hdg-bl2 > h2 > span:last-child::after,
.mod-hdg-bl2 > h2 > strong:last-child::after,
.mod-hdg-bl2 > h3 > span:last-child::after,
.mod-hdg-bl2 > h3 > strong:last-child::after,
.mod-hdg-bl2 > h4 > span:last-child::after,
.mod-hdg-bl2 > h4 > strong:last-child::after,
.mod-hdg-bl2 > h5 > span:last-child::after,
.mod-hdg-bl2 > h5 > strong:last-child::after,
.mod-hdg-bl2 > h6 > span:last-child::after,
.mod-hdg-bl2 > h6 > strong:last-child::after {
  content: none;
}

@media screen and (min-width: 768px), print {
  .mod-hdg-bl2 {
    margin-top: 0;
    margin-bottom: 0;
    padding: 0;
    font-size: 3.4rem;
    letter-spacing: normal;
  }
  .mod-hdg-bl2 > h1 > span:last-child,
  .mod-hdg-bl2 > h1 > strong:last-child,
  .mod-hdg-bl2 > h2 > span:last-child,
  .mod-hdg-bl2 > h2 > strong:last-child,
  .mod-hdg-bl2 > h3 > span:last-child,
  .mod-hdg-bl2 > h3 > strong:last-child,
  .mod-hdg-bl2 > h4 > span:last-child,
  .mod-hdg-bl2 > h4 > strong:last-child,
  .mod-hdg-bl2 > h5 > span:last-child,
  .mod-hdg-bl2 > h5 > strong:last-child,
  .mod-hdg-bl2 > h6 > span:last-child,
  .mod-hdg-bl2 > h6 > strong:last-child {
    min-width: initial;
    max-width: 100%;
    padding-bottom: 0;
  }
  .mod-hdg-bl2 > h1 > span:last-child::after,
  .mod-hdg-bl2 > h1 > strong:last-child::after,
  .mod-hdg-bl2 > h2 > span:last-child::after,
  .mod-hdg-bl2 > h2 > strong:last-child::after,
  .mod-hdg-bl2 > h3 > span:last-child::after,
  .mod-hdg-bl2 > h3 > strong:last-child::after,
  .mod-hdg-bl2 > h4 > span:last-child::after,
  .mod-hdg-bl2 > h4 > strong:last-child::after,
  .mod-hdg-bl2 > h5 > span:last-child::after,
  .mod-hdg-bl2 > h5 > strong:last-child::after,
  .mod-hdg-bl2 > h6 > span:last-child::after,
  .mod-hdg-bl2 > h6 > strong:last-child::after {
    border-right-width: initial;
  }
}
.mod-hdg-bl2 {
  position: relative;
  z-index: 0;
  margin: 0 0 40px;
  padding: 20px 0 12px;
  border: none;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 1.3;
  text-align: left;
}
.mod-hdg-bl2::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
}
.mod-hdg-bl2::before {
  background-color: #dbdbdb;
}
.mod-hdg-bl2::after {
  content: none;
}
.mod-hdg-bl2.var-02 {
  margin-top: 0;
  padding-top: 20px;
  padding-bottom: 16px;
  border: none;
}
@media screen and (min-width: 768px), print {
  .mod-hdg-bl2 {
    padding-bottom: 16px;
    font-size: 3.4rem;
  }
  .mod-hdg-bl2::after {
    content: none;
  }
  .mod-hdg-bl2.var-02 {
    margin-top: 0;
    padding-top: 20px;
    padding-bottom: 16px;
  }
}

.mod-hdg-bl2.of-borderless {
  padding-bottom: 0;
}
.mod-hdg-bl2.of-borderless::before {
  content: none;
}
.mod-hdg-bl2.of-borderless::after {
  content: none;
}

.mod-hdg-step > h1,
.mod-hdg-step h2,
.mod-hdg-step h3,
.mod-hdg-step h4,
.mod-hdg-step h5,
.mod-hdg-step h6 {
  display: block;
  -webkit-box-pack: initial;
      -ms-flex-pack: initial;
          justify-content: initial;
  font-size: 2rem;
}

.mod-hdg-step > h1 > span,
.mod-hdg-step h2 > span,
.mod-hdg-step h3 > span,
.mod-hdg-step h4 > span,
.mod-hdg-step h5 > span,
.mod-hdg-step h6 > span {
  min-width: auto;
  padding: 0;
  border-radius: 0;
  background: transparent;
  font-size: 2rem;
  font-weight: 700;
  text-align: left;
}

@media screen and (min-width: 768px), print {
  .mod-hdg-step {
    margin-top: 0;
  }
  .mod-hdg-step > h1,
  .mod-hdg-step h2,
  .mod-hdg-step h3,
  .mod-hdg-step h4,
  .mod-hdg-step h5,
  .mod-hdg-step h6 {
    font-size: 2.2rem;
  }
  .mod-hdg-step h2 > span {
    font-size: 2.2rem;
  }
  .mod-hdg-step h3 > span {
    font-size: 2.2rem;
  }
  .mod-hdg-step h4 > span {
    font-size: 2.2rem;
  }
  .mod-hdg-step > h1 > span,
  .mod-hdg-step h2 > span,
  .mod-hdg-step h3 > span,
  .mod-hdg-step h4 > span {
    min-width: auto;
    padding-top: 0;
    padding-bottom: 0;
  }
}
.mod-hdg-step {
  margin: 0 0 12px;
}
.mod-hdg-step h1,
.mod-hdg-step h2,
.mod-hdg-step h3,
.mod-hdg-step h4,
.mod-hdg-step h5,
.mod-hdg-step h6 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  line-height: 1.3;
}
.mod-hdg-step h1 > .step, .mod-hdg-step h2 > .step, .mod-hdg-step h3 > .step, .mod-hdg-step h4 > .step, .mod-hdg-step h5 > .step, .mod-hdg-step h6 > .step {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-item-align: start;
      align-self: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto;
  min-width: 72px;
  min-height: 28px;
  margin-right: 8px;
  padding-right: 12px;
  padding-left: 12px;
  border-radius: 28px;
  background: #c00;
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 1.6rem;
  line-height: 1;
  text-transform: uppercase;
}
.mod-hdg-step h1 > .title, .mod-hdg-step h2 > .title, .mod-hdg-step h3 > .title, .mod-hdg-step h4 > .title, .mod-hdg-step h5 > .title, .mod-hdg-step h6 > .title {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
}
@media screen and (min-width: 768px), print {
  .mod-hdg-step h1 > .step, .mod-hdg-step h2 > .step, .mod-hdg-step h3 > .step, .mod-hdg-step h4 > .step, .mod-hdg-step h5 > .step, .mod-hdg-step h6 > .step {
    min-width: 100px;
    min-height: 42px;
    margin-right: 12px;
    border-radius: 42px;
    font-size: 2rem;
  }
  .mod-hdg-step h1 > .title, .mod-hdg-step h2 > .title, .mod-hdg-step h3 > .title, .mod-hdg-step h4 > .title, .mod-hdg-step h5 > .title, .mod-hdg-step h6 > .title {
    padding-top: 0.15em;
    font-size: 2.4rem;
  }
}

:is(.c-accordion .accordion-list .accordion-title) .mod-hdg-step {
  margin-bottom: 0;
}

/*! = CommonModules/Header */
.site-header {
  display: block;
  position: relative;
  z-index: 200;
  padding: 0;
  background: #fff;
  color: #222;
}
.site-header__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 3;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 70px;
  margin: 0 auto;
  padding: 0 15px;
  background: #fff;
}
.site-header__site-link {
  display: block;
  color: #141414;
  text-decoration: none;
}
.site-header__site-link[href] {
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  text-decoration: none;
}
.site-header__site-link[href]:hover {
  opacity: 0.7;
}
.site-header__title {
  margin-top: -8px;
}
.site-header__sitename {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 2px;
  margin-right: 10px;
  color: #141414;
  font-size: 1rem;
  line-height: 1.4;
}
.site-header__logo {
  display: block;
  margin-right: 10px;
  padding: 4px 0;
  font-weight: 700;
}
.site-header__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: auto;
}
.site-header__icon-button {
  display: block;
  width: 24px;
  height: 24px;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  background: center no-repeat;
  background-size: 24px;
}
@media (hover: hover) and (pointer: fine) {
  .site-header__icon-button:hover {
    opacity: 0.7;
  }
}
.site-header__icon-button[data-icon=search] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMjUgMjUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgyNXYyNWgtMjV6Ii8+PGcgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im0xNy4zIDIyLjQ5Yy0uNjI5LjE2OC0xLjI3Ni4yNTMtMS45MjcuMjUzLTQuMDQ0IDAtNy4zNzItMy4zMjgtNy4zNzItNy4zNzJzMy4zMjgtNy4zNzIgNy4zNzItNy4zNzJjNC4wNDUgMCA3LjM3MiAzLjMyOCA3LjM3MiA3LjM3MiAwIDEuOTU1LS43NzcgMy44MzEtMi4xNTkgNS4yMTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0zLjc4OCAtMy43ODcpIi8+PHBhdGggZD0ibTIxLjA2MiAyMS4wNjItNC4yNjUtNC4yNjUiLz48L2c+PC9nPjwvc3ZnPg==");
}
.site-header__icon-button[data-icon=global] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyNSAyNSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMjIyIiBmaWxsLXJ1bGU9Im5vbnplcm8iPjxwYXRoIGQ9Im03LjQ5MSAwYy0uMDAzIDAtLjAwNiAwLS4wMDkgMC00LjExNCAwLTcuNSAzLjM4Ni03LjUgNy41czMuMzg2IDcuNSA3LjUgNy41IDcuNS0zLjM4NiA3LjUtNy41YzAtNC4xMTEtMy4zOC03LjQ5NS03LjQ5MS03LjVtMC0xLjVoLjAwOWM0LjkzNyAwIDkgNC4wNjMgOSA5cy00LjA2MyA5LTkgOS05LTQuMDYzLTktOWMuMDAzLTQuOTMzIDQuMDU4LTguOTkyIDguOTkxLTl6IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1LjAxOCA1LjIzNikiLz48cGF0aCBkPSJtNC4wMzUgMGMtMi4yMjkgMC00LjAzNSAzLjM1OC00LjAzNSA3LjVzMS44MDYgNy41IDQuMDM1IDcuNSA0LjAzNS0zLjM1OSA0LjAzNS03LjUtMS44MDctNy41LTQuMDM1LTcuNW0wLTEuNWMxLjY1NSAwIDMuMTM4IDEuMDYgNC4xNzQgMi45ODYuOTMyIDEuODY2IDEuMzk5IDMuOTI5IDEuMzYxIDYuMDE0LjAzOCAyLjA4NS0uNDI5IDQuMTQ4LTEuMzYxIDYuMDEzLTEuMDM2IDEuOTI1LTIuNTE5IDIuOTg3LTQuMTc0IDIuOTg3cy0zLjEzNS0xLjA2Mi00LjE3NC0yLjk4N2MtLjkzMi0xLjg2NS0xLjM5OS0zLjkyOC0xLjM2MS02LjAxMy0uMDM4LTIuMDg1LjQyOS00LjE0OCAxLjM2MS02LjAxNCAxLjAzOS0xLjkyNiAyLjUxOC0yLjk4NiA0LjE3NC0yLjk4NnoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDguNDc0IDUuMjM2KSIvPjxwYXRoIGQ9Im0wIDE1LjcxM2MtLjQxMSAwLS43NS0uMzM5LS43NS0uNzV2LTE0Ljk2M2MwLS40MTEuMzM5LS43NS43NS0uNzVzLjc1LjMzOS43NS43NXYxNC45NjNjMCAuNDExLS4zMzkuNzUtLjc1Ljc1eiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTIuNTA5IDUuMjM2KSIvPjxwYXRoIGQ9Im0xMTguMzc5IDc5LjY4OWMtMi4xNDEuMDUzLTQuMjU3LS40NzgtNi4xMTktMS41MzUtLjIwNi0uMTM5LS4zMy0uMzczLS4zMy0uNjIyIDAtLjQxMS4zMzgtLjc1Ljc1LS43NS4xMzMgMCAuMjY1LjAzNi4zOC4xMDQgMy4zMjkgMS43MzYgNy4zMDcgMS43MzYgMTAuNjM2IDAgLjExNS0uMDY4LjI0Ny0uMTA0LjM4LS4xMDQuNDEyIDAgLjc1LjMzOS43NS43NSAwIC4yNDktLjEyNC40ODMtLjMzLjYyMi0xLjg2MiAxLjA1Ny0zLjk3NyAxLjU4OC02LjExNyAxLjUzNXoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMDUuODcgLTY5LjYzMikiLz48cGF0aCBkPSJtMTQuOTQ3Ljc1aC0xNC45NDdjLS40MTEgMC0uNzUtLjMzOS0uNzUtLjc1cy4zMzktLjc1Ljc1LS43NWgxNC45NDcuMDAzYy40MTEgMCAuNzUuMzM5Ljc1Ljc1IDAgLjQxMS0uMzM5Ljc1LS43NS43NS0uMDAxIDAtLjAwMiAwLS4wMDMgMHoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUgMTIuNzc3KSIvPjxwYXRoIGQ9Im0xMTIuNjcxIDE0OS40NjljLS40MTEgMC0uNzQ5LS4zMzktLjc0OS0uNzUgMC0uMjU3LjEzMi0uNDk3LjM0OS0uNjM0IDMuODE5LTIuMDQ1IDguNDE5LTIuMDQ1IDEyLjIzOCAwIC4yMDYuMTM5LjMzLjM3My4zMy42MjIgMCAuNDExLS4zMzguNzUtLjc1Ljc1LS4xMzMgMC0uMjY1LS4wMzYtLjM4LS4xMDQtMy4zMjktMS43MzYtNy4zMDctMS43MzYtMTAuNjM2IDAtLjEyLjA3Ni0uMjYuMTE2LS40MDIuMTE2eiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEwNS44NzkgLTEzMS4xMzUpIi8+PC9nPjwvc3ZnPg==");
}
@media screen and (min-width: 992px), print {
  .site-header__inner {
    max-width: 1220px;
    min-height: 50px;
    padding: 0 40px;
  }
  .site-header__title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 0;
  }
  .site-header__sitename {
    font-size: 1.5rem;
  }
  .site-header__logo {
    padding-right: 10px;
  }
  .site-header__menu {
    padding-left: 40px;
  }
}
.site-header__search {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.site-header__global-site {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod-header-sp-menu {
  display: block;
  position: relative;
  margin-right: -4px;
}
.mod-header-sp-menu__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mod-header-sp-menu__icon-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto;
  width: 60px;
  height: auto;
  height: 44px;
  -webkit-transition: opacity 0.2s, z-index 0.2s;
  transition: opacity 0.2s, z-index 0.2s;
  border: none;
  border-radius: 0;
  opacity: 1;
  background: no-repeat center top;
  background-size: 30px;
  text-decoration: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.mod-header-sp-menu__icon-button[data-icon=login] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGcgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im00IDIyLjhoMTEuNGwtNC44LTQuOCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLjE0OCAtNi4yKSIvPjxwYXRoIGQ9Im0yMSA5LjUzM3YtMy41MzNoMTN2MjEuMmgtMTN2LTMuNTM0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTAuMzAxIC0yLjIzOCkiLz48L2c+PC9nPjwvc3ZnPg==");
}
.mod-header-sp-menu__icon-button[data-icon=mypage] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGVsbGlwc2UgY3g9IjE0Ljk5OSIgY3k9IjkuNTAxIiByeD0iNC41IiByeT0iNSIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJtOC45MjggMzUuMjA3YzAtNS43NDggNC4wNS04IDctOGg1YzIuOTM1IDAgNyAyLjI1NyA3IDgiIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy40MjcgLTkuNzA3KSIvPjwvZz48L3N2Zz4=");
}
.mod-header-sp-menu__icon-button[data-icon=mypage-notice] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGVsbGlwc2UgY3g9IjE0Ljk5OSIgY3k9IjkuNTAxIiByeD0iNC41IiByeT0iNSIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJtOC45MjggMzUuMjA3YzAtNS43NDggNC4wNS04IDctOGg1YzIuOTM1IDAgNyAyLjI1NyA3IDgiIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy40MjcgLTkuNzA3KSIvPjwvZz48Y2lyY2xlIGN4PSIyNS41IiBjeT0iMTIuNSIgZmlsbD0iI2MwMCIgcj0iMy41Ii8+PC9zdmc+");
}
.mod-header-sp-menu__icon-button[data-icon=menu-open] {
  width: 44px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGcgc3Ryb2tlPSIjYmIyNzFhIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im00LjUgOC41aDIxIi8+PHBhdGggZD0ibTQuNSAxNWgyMSIvPjxwYXRoIGQ9Im00LjUgMjEuNWgyMSIvPjwvZz48L2c+PC9zdmc+");
  text-transform: uppercase;
}
html[data-drawer-opened] .mod-header-sp-menu__icon-button[data-icon=login], html[data-drawer-opened] .mod-header-sp-menu__icon-button[data-icon=menu-open] {
  z-index: -1;
  opacity: 0;
}
.mod-header-sp-menu__icon-label {
  color: #222;
  font-size: 1rem;
}
@media screen and (min-width: 992px), print {
  .mod-header-sp-menu {
    display: none;
  }
}

.mod-header-menu {
  display: none;
}
.mod-header-menu > * + * {
  margin-left: 12px;
}
.mod-header-menu__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mod-header-menu__item {
  position: relative;
  margin-right: 4px;
}
.mod-header-menu__pulldown {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 4px;
  color: #222;
  font-size: 1.4rem;
  text-decoration: none;
}
.mod-header-menu__pulldown:hover {
  text-decoration: underline;
}
.mod-header-menu__pulldown::after {
  content: "";
  display: block;
  width: 15px;
  height: 9px;
  margin: auto 8px;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAxNSA5IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9IiNjMDAiIGZpbGwtcnVsZT0ibm9uemVybyI+PHBhdGggZD0ibTAgOS40ODFjLS41NDkgMC0xLS40NTEtMS0xdi04LjQ4MWMwLS41NDkuNDUxLTEgMS0xczEgLjQ1MSAxIDF2OC40ODFjMCAuNTQ5LS40NTEgMS0xIDF6IiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyAxLjQxNCAxLjQxNCkiLz48cGF0aCBkPSJtMCA5LjQ4Yy0uNTQ5IDAtMS0uNDUxLTEtMXYtOC40OGMwLS41NDkuNDUxLTEgMS0xczEgLjQ1MSAxIDF2OC40OGMwIC41NDktLjQ1MSAxLTEgMXoiIHRyYW5zZm9ybT0ibWF0cml4KC0uNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLS43MDcxMDcgNy40MSA3LjQxKSIvPjwvZz48L3N2Zz4=") center no-repeat;
}
@media screen and (min-width: 992px), print {
  .mod-header-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

/* Modal: drawer */
html[data-drawer-opened] body {
  overflow: hidden !important;
}

.mod-drawer {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.mod-drawer [role=dialog] {
  outline: 0;
}
.mod-drawer__container {
  display: block;
  position: absolute;
  z-index: 0;
  top: 70px;
  right: 0;
  width: 100vw;
  min-width: 100%;
  min-height: calc(100vh - 70px);
  min-height: calc(100dvh - 70px);
  max-height: calc(100vh - 70px);
  max-height: calc(100dvh - 70px);
  overflow-y: auto;
  border-top: 1px solid #dbdbdb;
  border-radius: 0;
  background-color: #fff;
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
}
.mod-drawer__close {
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  z-index: 201;
  top: 0;
  right: 0;
  bottom: 0;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 44px;
  height: 44px;
  margin: auto 12px auto 0;
  border: none;
  border-radius: 0;
  background: #fff url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAzMCAzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiIGZpbGw9Im5vbmUiLz48ZyBmaWxsPSIjYmIyNzFhIj48cGF0aCBkPSJtMjguOTY3IDFjMC0uNTUyLS40NDgtMS0xLTFoLTI2Ljk2N2MtLjU1MiAwLTEgLjQ0OC0xIDF2LjE0NmMwIC41NTIuNDQ4IDEgMSAxaDI2Ljk2N2MuNTUyIDAgMS0uNDQ4IDEtMXoiIHRyYW5zZm9ybT0ibWF0cml4KC43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyAuNzA3MTA3IDUuNTE3IDQpIi8+PHBhdGggZD0ibTI4Ljk2NyAxYzAtLjU1Mi0uNDQ4LTEtMS0xaC0yNi45NjdjLS41NTIgMC0xIC40NDgtMSAxdi4xNDZjMCAuNTUyLjQ0OCAxIDEgMWgyNi45NjdjLjU1MiAwIDEtLjQ0OCAxLTF6IiB0cmFuc2Zvcm09Im1hdHJpeCgtLjcwNzEwNyAuNzA3MTA3IC0uNzA3MTA3IC0uNzA3MTA3IDI2IDUuNTE5KSIvPjwvZz48L3N2Zz4=") center top no-repeat;
  background-size: 30px;
  text-decoration: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.mod-drawer__close-label {
  color: #222;
  font-size: 1rem;
}
.mod-drawer__header {
  display: none;
  padding: 24px 15px 0;
}
.mod-drawer__content {
  padding: 0;
  overflow-x: hidden;
}
.mod-drawer__list {
  padding-bottom: 80px;
}
.mod-drawer__item {
  position: relative;
  border-bottom: 1px solid #dbdbdb;
  font-size: 1.5rem;
  line-height: 1.4;
}
.mod-drawer__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  min-height: 60px;
  padding: 12px 16px;
  outline: none;
  color: #222;
  font-size: 1.5rem;
  line-height: 1.4;
  text-decoration: none;
}
.mod-drawer__item a:focus-visible {
  background: #f4f4f4;
}
.mod-drawer__item a::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  margin-right: 8px;
  background: center no-repeat;
  background-size: 30px;
}
.mod-drawer__item a[data-icon=login]::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGcgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im00IDIyLjhoMTEuNGwtNC44LTQuOCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLjE0OCAtNi4yKSIvPjxwYXRoIGQ9Im0yMSA5LjUzM3YtMy41MzNoMTN2MjEuMmgtMTN2LTMuNTM0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTAuMzAxIC0yLjIzOCkiLz48L2c+PC9nPjwvc3ZnPg==");
}
.mod-drawer__item a[data-icon=register]::before {
  width: 32px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzIgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGcgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiPjxjaXJjbGUgY3g9IjE1LjAwMyIgY3k9IjkuMzA2IiByPSI0Ljc1Ii8+PHBhdGggZD0ibTguOTMgMzUuMTVjMC01Ljc0OCAzLjk1Ni04IDYuOTA2LThoNS4xODFjMi45MzUgMCA2LjkwNiAyLjI1NyA2LjkwNiA4IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy40MjcgLTkuNzA3KSIvPjxnIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiPjxwYXRoIGQ9Im0tMjIzODYuMiA4NDg5LjQ1aDgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIyNDA5LjIgLTg0NzYuNDUpIi8+PHBhdGggZD0ibTAgMGg4IiB0cmFuc2Zvcm09Im1hdHJpeCgwIDEgLTEgMCAyNyA5KSIvPjwvZz48L2c+PC9nPjwvc3ZnPg==");
  background-size: 32px 30px;
}
.mod-drawer__shop-link {
  display: block;
  margin-top: 40px;
  padding: 0 15px 30px;
}
.mod-drawer__shop-link .mod-btn {
  margin-top: 0;
  margin-bottom: 0;
}

.anime--drawer-fade {
  display: none;
}
@media screen and (min-width: 992px), print {
  .anime--drawer-fade {
    display: none !important;
  }
}
.anime--drawer-fade.is-open {
  display: block;
}
.anime--drawer-fade[aria-hidden=false] .mod-drawer__container, .anime--drawer-fade[aria-hidden=false] .mod-drawer__close {
  -webkit-animation: mod-drawer-fade-in 0.3s ease-out;
          animation: mod-drawer-fade-in 0.3s ease-out;
}
.anime--drawer-fade[aria-hidden=true] .mod-drawer__container, .anime--drawer-fade[aria-hidden=true] .mod-drawer__close {
  -webkit-animation: mod-drawer-fade-out 0.3s ease-out;
          animation: mod-drawer-fade-out 0.3s ease-out;
}
@-webkit-keyframes mod-drawer-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mod-drawer-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes mod-drawer-fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes mod-drawer-fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.anime--drawer-fade [data-drawer-slide-menu][aria-hidden=false]:first-child {
  -webkit-animation: mod-drawer-menu-fade-in 0.3s ease-out;
          animation: mod-drawer-menu-fade-in 0.3s ease-out;
}
.anime--drawer-fade [data-drawer-slide-menu][aria-hidden=true]:first-child {
  -webkit-animation: mod-drawer-menu-fade-out 0.3s ease-out;
          animation: mod-drawer-menu-fade-out 0.3s ease-out;
}
.anime--drawer-fade [data-drawer-slide-menu] ~ [data-drawer-slide-menu][aria-hidden=false] {
  -webkit-animation: mod-drawer-menu-slide-in 0.3s linear;
          animation: mod-drawer-menu-slide-in 0.3s linear;
}
.anime--drawer-fade [data-drawer-slide-menu] ~ [data-drawer-slide-menu][aria-hidden=true] {
  -webkit-animation: mod-drawer-menu-slide-out 0.3s linear;
          animation: mod-drawer-menu-slide-out 0.3s linear;
}
@-webkit-keyframes mod-drawer-menu-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mod-drawer-menu-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes mod-drawer-menu-fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes mod-drawer-menu-fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes mod-drawer-menu-slide-in {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  100% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    opacity: 1;
  }
}
@keyframes mod-drawer-menu-slide-in {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  100% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    opacity: 1;
  }
}
@-webkit-keyframes mod-drawer-menu-slide-out {
  0% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    opacity: 1;
  }
  60% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  100% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    opacity: 0;
  }
}
@keyframes mod-drawer-menu-slide-out {
  0% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    opacity: 1;
  }
  60% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  100% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    opacity: 0;
  }
}

.mod-drawer-search {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 10px 15px;
}
.mod-drawer-search label {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.mod-drawer-search__field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: block;
  position: relative;
  width: 100%;
  height: 44px;
  padding: 8px 48px 8px 10px;
  border: none;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  outline: none;
  background: #fff;
  color: #222;
  font-family: inherit;
  font-size: 1.6rem;
  line-height: 1.5;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.mod-drawer-search__field:-moz-placeholder-shown {
  background: #fafafa;
  color: #727272;
}
.mod-drawer-search__field:-ms-input-placeholder {
  background: #fafafa;
  color: #727272;
}
.mod-drawer-search__field:placeholder-shown {
  background: #fafafa;
  color: #727272;
}
.mod-drawer-search__field:focus {
  border-color: #222;
}
.mod-drawer-search__field::-webkit-input-placeholder {
  color: #767676;
}
.mod-drawer-search__field::-moz-placeholder {
  color: #767676;
}
.mod-drawer-search__field:-ms-input-placeholder {
  color: #767676;
}
.mod-drawer-search__field::-ms-input-placeholder {
  color: #767676;
}
.mod-drawer-search__field::placeholder {
  color: #767676;
}
.mod-drawer-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none !important;
}
.mod-drawer-search__button {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 44px;
  height: 44px;
  margin: auto 3px auto auto;
  border-radius: 100%;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGcgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im0xOS4xNTggMjUuMzg4Yy0uNzU1LjItMS41MzIuMzAxLTIuMzEzLjMtNC44NTItLjAwMi04Ljg0My0zLjk5NC04Ljg0My04Ljg0NiAwLTQuODUzIDMuOTkzLTguODQ2IDguODQ2LTguODQ2czguODQ2IDMuOTkzIDguODQ2IDguODQ2YzAgMi4zNDctLjkzNCA0LjU5OS0yLjU5NCA2LjI1OCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIuOTQ1IC0yLjk0NSkiLz48cGF0aCBkPSJtMjUuMjc1IDI1LjI3NC01LjExOC01LjExOCIvPjwvZz48L2c+PC9zdmc+") no-repeat center;
  background-size: 30px;
}

.mod-drawer-slide-menu {
  display: none;
  position: relative;
  width: 100%;
  padding: 0 0 80px;
}
.mod-drawer-slide-menu[aria-hidden=true] {
  display: none;
}
.mod-drawer-slide-menu[aria-hidden=false] {
  display: block;
}
.mod-drawer-slide-menu__action {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 50px;
}
.mod-drawer-slide-menu__back {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8px 16px 8px 12px;
  color: #222;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
}
.mod-drawer-slide-menu__back::before {
  content: "";
  display: block;
  z-index: 0;
  width: 7px;
  height: 11px;
  margin-right: 8px;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCA3IDExIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9IiMyMjIiIGZpbGwtcnVsZT0ibm9uemVybyI+PHBhdGggZD0ibTAgMGgxLjUxM3Y3LjU2N2gtMS41MTN6IiB0cmFuc2Zvcm09Im1hdHJpeCgtLjcwNzEwNyAtLjcwNzEwNyAuNzA3MTA3IC0uNzA3MTA3IDEuMDcgNi40MjEpIi8+PHBhdGggZD0ibTAgMGgxLjUxM3Y3LjU2N2gtMS41MTN6IiB0cmFuc2Zvcm09Im1hdHJpeCgtLjcwNzEwNyAuNzA3MTA3IC0uNzA3MTA3IC0uNzA3MTA3IDYuNDIxIDkuODkxKSIvPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
}

.mod-drawer-site-menu {
  padding-top: 20px;
  border-top: 1px solid #dbdbdb;
}
.mod-drawer__slide-action + .mod-drawer-site-menu {
  padding-top: 16px;
}
.mod-drawer-site-menu__title {
  padding: 10px 15px 14px;
  border-bottom: 1px solid #dbdbdb;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
}
.mod-drawer-site-menu__list {
  border-bottom: 1px solid #dbdbdb;
}
.mod-drawer-site-menu__list li + li {
  border-top: 1px solid #dbdbdb;
}
.mod-drawer-site-menu__list a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  min-height: 50px;
  padding: 12px 28px 12px 15px;
  padding-right: 12px;
  color: #222;
  font-size: 1.4rem;
  line-height: 1.5;
  text-decoration: none;
}
.mod-drawer-site-menu__list a::after {
  content: "";
  display: block;
  z-index: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 17px;
  height: 17px;
  margin-left: auto;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgdHJhbnNmb3JtPSJtYXRyaXgoMCAtMSAxIDAgMCAxNykiPjxwYXRoIGQ9Im0wIDBoMTd2MTdoLTE3eiIvPjxnIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLXdpZHRoPSIxLjUiPjxwYXRoIGQ9Im0xMS43ODkgMTIuNS04LTgiLz48cGF0aCBkPSJtMTEuNzg5IDEyLjUtLjAxNi03Ljc4NyIvPjxwYXRoIGQ9Im0xMS43ODkgMTIuNWgtOCIvPjwvZz48L2c+PC9zdmc+") no-repeat center;
  background-size: 17px;
}
.mod-drawer-site-menu__list a[data-slide-to-href]::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjEuNSI+PHBhdGggZD0ibS4wMTQgNi44NzgtLjAxNC02Ljg3OCIgdHJhbnNmb3JtPSJtYXRyaXgoLjcwNzEwNyAtLjcwNzEwNyAuNzA3MTA3IC43MDcxMDcgNi4wODcgMy43OTMpIi8+PHBhdGggZD0ibTcuMDY2IDBoLTcuMDY2IiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyA1Ljk2NCAxMy42NDQpIi8+PC9nPjwvZz48L3N2Zz4=");
}

.mod-drawer-category-menu__list {
  margin-top: 1px;
  padding-top: 16px;
  padding-bottom: 16px;
  background: #f4f4f4;
}
.mod-drawer-category-menu__list.of-small-padding {
  padding-top: 4px;
  padding-bottom: 4px;
}
.mod-drawer-category-menu__list a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  min-height: 50px;
  padding: 12px 15px;
  color: #222;
  font-size: 1.4rem;
  line-height: 1.5;
  text-decoration: none;
}

.mod-pulldown {
  position: relative;
  z-index: 1000;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.mod-pulldown [role=dialog] {
  outline: 0;
}

.mod-pulldown__backdrop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: rgba(0, 0, 0, 0.4);
}

.mod-pulldown__container {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 8px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
  padding: 40px;
  padding-right: 50px;
  overflow-y: auto;
  border-radius: 4px;
  background-color: #fff;
  -webkit-box-shadow: 0 10px 10px 1px rgba(0, 0, 0, 0.16);
          box-shadow: 0 10px 10px 1px rgba(0, 0, 0, 0.16);
  overscroll-behavior-y: contain;
}
.mod-pulldown__container.of--icon-button-offset {
  right: 0;
}
.mod-pulldown__container[data-col="1"] {
  width: 430px;
  max-width: 430px;
}
.mod-pulldown__container[data-col="2"] {
  width: 560px;
  max-width: 560px;
}
.mod-pulldown__container[data-col="3"] {
  width: 640px;
  max-width: 640px;
}
.mod-pulldown__container[data-category-menu=search] {
  width: 640px;
  max-width: 640px;
}
.mod-pulldown__container[data-category-menu=mypage] {
  top: 8px;
  min-width: 405px;
  max-width: 405px;
}
.mod-pulldown__container[data-balloon] {
  top: 24px;
  right: 0;
  padding: 40px 40px 30px 30px;
  overflow-y: visible;
}
.mod-pulldown__container[data-balloon]::before {
  content: "";
  position: absolute;
  top: -10px;
  right: 0;
  width: 14px;
  height: 18px;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAxNCAxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjZmZmIj48cGF0aCBkPSJtMTMtM3YxOHMtMTEuNzMyLTgtMTQtOGMxMC4zODMtMi4yNCAxNC0xMCAxNC0xMHoiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMS4wMDIwNCAzLjAxMjQ0KSIvPjxwYXRoIGQ9Im0tLjA0NCAxMC4wMzRoMTQuNDM3djguMjM2aC0xNC40Mzd6IiB0cmFuc2Zvcm09Im1hdHJpeCguOTcyNTM3IDAgMCAuOTY3NzUzIC0uMDAxMjEyIC4zMjM1NTQpIi8+PC9nPjwvc3ZnPg==") no-repeat center;
  background-size: contain;
}

.mod-pulldown__header {
  display: block;
  margin-bottom: 16px;
  padding-bottom: 8px;
  border-bottom: 1px solid #e0e0e0;
}
[data-balloon] .mod-pulldown__header {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  border: 0 !important;
  font-size: 1.8rem;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}

.mod-pulldown__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.375;
}

[data-balloon] .mod-pulldown__content {
  font-size: 1.4rem;
  line-height: 1.5714;
}

.mod-pulldown__close {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 24px;
  height: 24px;
  margin: 12px 12px 0 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PGcgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjEuNSI+PHBhdGggZD0ibTAgMHY4LjUxIiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyAyLjAwMyAyKSIvPjxwYXRoIGQ9Im0wIDguNTA5di04LjUwOSIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDcgLS43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyA3Ljk4NSA4LjAxNikiLz48cGF0aCBkPSJtMCAwdjguNTEiIHRyYW5zZm9ybT0ibWF0cml4KC0uNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLS43MDcxMDcgMi4wMDMgMTQpIi8+PHBhdGggZD0ibTAgOC41MDl2LTguNTA5IiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyA3Ljk4NSA3Ljk4MykiLz48L2c+PHBhdGggZD0ibTAgMGgxNnYxNmgtMTZ6Ii8+PC9nPjwvc3ZnPg==") center no-repeat;
  background-size: 16px;
}

.mod-pulldown-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.mod-pulldown-menu a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  padding-left: 16px;
  color: #222;
  font-size: 1.4rem;
  line-height: 1.5;
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  .mod-pulldown-menu a:hover {
    text-decoration: underline;
  }
}
.mod-pulldown-menu a::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: 0.2em;
  left: 0;
  width: 17px;
  height: 17px;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdmlld0JveD0iMCAwIDE3IDE3IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMTd2MTdoLTE3eiIvPjxnIHN0cm9rZT0iI2MwMCI+PHBhdGggZD0ibTAgMHY3LjA2OSIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDcgLS43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyA1Ljk2NSAxMy4yMTQpIi8+PHBhdGggZD0ibTAgNy4xN3YtNy4xNyIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyAtLjcwNzEwNyAxMS4wMzUgOC44NTIpIi8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
}
.mod-pulldown-menu__category {
  max-width: 400px;
  font-size: 1.4rem;
}
[data-col="1"] .mod-pulldown-menu__category {
  width: 100%;
  max-width: 100%;
}
[data-col="2"] .mod-pulldown-menu__category {
  width: 50%;
  max-width: 240px;
}
[data-col="3"] .mod-pulldown-menu__category {
  width: 33.3%;
  max-width: 220px;
}
.mod-pulldown-menu__title {
  font-size: 1.4rem;
  font-weight: 700;
}
.mod-pulldown-menu__title + .mod-pulldown-menu__title {
  margin-top: 8px;
}
.mod-pulldown-menu__category + .mod-pulldown-menu__category {
  margin-left: 20px;
}
.mod-pulldown-menu__list {
  margin-top: 12px;
  padding-left: 0;
}
.mod-pulldown-menu__list li ~ li {
  margin-top: 8px;
}
.mod-pulldown-menu__title + .mod-pulldown-menu__list {
  padding-left: 12px;
}

.mod-pulldown-search {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.mod-pulldown-search label {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.mod-pulldown-search__field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: block;
  position: relative;
  width: 100%;
  height: 60px;
  padding: 8px 64px 8px 20px;
  border: none;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  outline: none;
  background: #fff;
  color: #222;
  font-family: inherit;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.mod-pulldown-search__field:-moz-placeholder-shown {
  background: #fafafa;
  color: #727272;
}
.mod-pulldown-search__field:-ms-input-placeholder {
  background: #fafafa;
  color: #727272;
}
.mod-pulldown-search__field:placeholder-shown {
  background: #fafafa;
  color: #727272;
}
.mod-pulldown-search__field:focus {
  border-color: #222;
}
.mod-pulldown-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none !important;
}
.mod-pulldown-search__button {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 48px;
  height: 48px;
  margin: auto 7px auto auto;
  border-radius: 100%;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyOCAyOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMjIyIiBmaWxsLXJ1bGU9Im5vbnplcm8iPjxwYXRoIGQ9Im0xNi44NDYgMjYuNjkxYy01LjQwMSAwLTkuODQ1LTQuNDQ1LTkuODQ1LTkuODQ2czQuNDQ0LTkuODQ2IDkuODQ2LTkuODQ2YzUuNDAxIDAgOS44NDYgNC40NDUgOS44NDYgOS44NDYgMCAyLjYxMS0xLjAzOSA1LjExNy0yLjg4NSA2Ljk2My0uMTg4LjE5NS0uNDQ4LjMwNS0uNzE5LjMwNS0uNTQ5IDAtMS0uNDUxLTEtMSAwLS4yNzEuMTEtLjUzMS4zMDUtLjcxOSAxLjQ3LTEuNDcxIDIuMjk2LTMuNDY3IDIuMjk2LTUuNTQ2IDAtNC4zMDQtMy41NDItNy44NDYtNy44NDYtNy44NDZzLTcuODQ2IDMuNTQyLTcuODQ2IDcuODQ2IDMuNTQyIDcuODQ2IDcuODQ2IDcuODQ2aC4wMDJjLjY5NC0uMDAxIDEuMzg1LS4wOTEgMi4wNTUtLjI3LjA4NC0uMDIyLjE3MS0uMDM0LjI1OC0uMDM0LjU0OCAwIDEgLjQ1MiAxIDEgMCAuNDUyLS4zMDYuODUxLS43NDMuOTY3LS44MzkuMjIyLTEuNzAyLjMzNS0yLjU3LjMzNHoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC00LjExMSAtNC4xMSkiLz48cGF0aCBkPSJtNS4xMTggNi4xMThjLS4yNjUgMC0uNTItLjEwNi0uNzA3LS4yOTNsLTUuMTE4LTUuMTE4Yy0uMzg4LS4zODgtLjM4OC0xLjAyNiAwLTEuNDE0czEuMDI2LS4zODggMS40MTQgMGw1LjExOCA1LjExOGMuMTg3LjE4Ny4yOTMuNDQyLjI5My43MDcgMCAuNTQ5LS40NTEgMS0xIDF6IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxOC45OTEgMTguOTkxKSIvPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: 28px;
}

.mod-pulldown-global {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.mod-pulldown-global a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  padding-left: 16px;
  color: #222;
  font-size: 1.4rem;
  line-height: 1.5;
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  .mod-pulldown-global a:hover {
    text-decoration: underline;
  }
}
.mod-pulldown-global a::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: 0.2em;
  left: 0;
  width: 17px;
  height: 17px;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdmlld0JveD0iMCAwIDE3IDE3IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMTd2MTdoLTE3eiIvPjxnIHN0cm9rZT0iI2MwMCI+PHBhdGggZD0ibTAgMHY3LjA2OSIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDcgLS43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyA1Ljk2NSAxMy4yMTQpIi8+PHBhdGggZD0ibTAgNy4xN3YtNy4xNyIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyAtLjcwNzEwNyAxMS4wMzUgOC44NTIpIi8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
}
.mod-pulldown-global__detail {
  font-size: 1.4rem;
}
.mod-pulldown-global__detail + .mod-pulldown-global__detail {
  margin-top: 24px;
}
.mod-pulldown-global__title {
  font-size: 1.4rem;
  font-weight: 700;
}
.mod-pulldown-global__title + .mod-pulldown-global__title {
  margin-top: 8px;
}
.mod-pulldown-global__list {
  margin-top: 12px;
  padding-left: 12px;
}
.mod-pulldown-global__list li + li {
  margin-top: 8px;
}

.mod-pulldown-user__welcome {
  display: block;
  width: 100%;
  font-size: 1.4rem;
  font-weight: 400;
}
.mod-pulldown-user__name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 8px;
  font-size: 1.6rem;
  font-weight: 700;
}
.mod-pulldown-user__name-suffix {
  margin-left: 8px;
  font-size: 1.4rem;
  font-weight: 400;
}

.mod-pulldown-mypage-info {
  background-color: #f4f4f4;
}
.mod-pulldown-mypage-info__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  width: 100%;
  min-height: 84px;
  padding: 25px 20px;
}
.mod-pulldown-mypage-info__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-left: 30px;
}
.mod-pulldown-mypage-info__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 25px;
  height: 25px;
  background: no-repeat center;
  background-size: 25px;
}
.mod-pulldown-mypage-info__item > a[href] {
  display: block;
  color: #222;
  text-decoration: none;
}
.mod-pulldown-mypage-info__item > a[href]::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.mod-pulldown-mypage-info__item[data-icon=point] {
  min-width: 94px;
}
.mod-pulldown-mypage-info__item[data-icon=point]::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMjUgMjUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgyNXYyNWgtMjV6Ii8+PGcgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjIiPjxjaXJjbGUgY3g9IjEyLjUiIGN5PSIxMi41IiByPSI5LjUiLz48cGF0aCBkPSJtLTE2OTAwLjQtMjA3NzJ2LTcuN2gzYzEgMCAxLjkuOSAxLjkgMS45IDAgMS4xLS45IDItMS45IDJoLS4zIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNjkxMSAyMDc4OC43KSIvPjwvZz48L2c+PC9zdmc+");
}
.mod-pulldown-mypage-info__item[data-icon=coupon] {
  min-width: 70px;
}
.mod-pulldown-mypage-info__item[data-icon=coupon]::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMjUgMjUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgyNXYyNWgtMjV6Ii8+PGcgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im0xOSAxNGgtMThjLS41NDkgMC0xLS40NTEtMS0xdi0zLjcxNGMuMTEyLjAzMS4yMjguMDQ3LjM0NS4wNDcuOTU1IDAgMS43MjQtMS4wNDYgMS43MjQtMi4zMzNzLS43NjktMi4zMzMtMS43MjQtMi4zMzNjLS4xMTcgMC0uMjMzLjAxNS0uMzQ1LjA0NnYtMy43MTNjMC0uNTQ5LjQ1MS0xIDEtMWgxOGMuNTQ5IDAgMSAuNDUxIDEgMXYzLjcxM2MtLjExMi0uMDMxLS4yMjgtLjA0Ny0uMzQ1LS4wNDctLjk1MSAwLTEuNzI0IDEuMDQ3LTEuNzI0IDIuMzM0cy43NzQgMi4zMzMgMS43MjQgMi4zMzNjLjExNyAwIC4yMzMtLjAxNi4zNDUtLjA0N3YzLjcxNGMwIC41NDktLjQ1MSAxLTEgMXoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIuNSA1LjQ5OSkiLz48cGF0aCBkPSJtMTYuNDkyIDEyLjUwMnYuMDMxIiBzdHJva2UtbGluZWpvaW49Im1pdGVyIi8+PHBhdGggZD0ibTE2LjQ5MiAxNi4zMjR2LjAzMSIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIvPjxwYXRoIGQ9Im0xNi40OTIgOC42ODF2LjAzMSIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIvPjwvZz48L2c+PC9zdmc+");
}
.mod-pulldown-mypage-info__item[data-icon=mairu] {
  min-width: 87px;
}
.mod-pulldown-mypage-info__item[data-icon=mairu]::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMjUgMjUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgyNXYyNWgtMjV6Ii8+PGcgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjIiPjxlbGxpcHNlIGN4PSIxMi41IiBjeT0iNy43OTgiIHJ4PSI4IiByeT0iNC41Ii8+PHBhdGggZD0ibTI4Ljc4NyAyMi40Yy0xLjMyOCAxLjUyMS00LjM2MyAyLjU4My03Ljg5NCAyLjU4M3MtNi41MzctMS4wNTUtNy44OTMtMi41NjEiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC04LjUgLTcuOSkiLz48cGF0aCBkPSJtMjguNzg3IDMwLjRjLTEuMzI4IDEuNTIxLTQuMzYzIDIuNTgzLTcuODk0IDIuNTgzcy02LjUzNy0xLjA1NS03Ljg5My0yLjU2MSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTguNSAtMTEuMjgxKSIvPjwvZz48L2c+PC9zdmc+");
}
.mod-pulldown-mypage-info__item + .mod-pulldown-mypage-info__item {
  margin-left: 12px;
}
.mod-pulldown-mypage-info__name {
  display: block;
  color: #222;
  font-size: 1rem;
  line-height: 1.5;
}
.mod-pulldown-mypage-info__number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  font-size: 1.2rem;
  font-weight: 700;
}
a[href] .mod-pulldown-mypage-info__name {
  text-decoration: none;
}
a[href] .mod-pulldown-mypage-info__number {
  text-decoration: none;
}
a[href] .mod-pulldown-mypage-info__number::after {
  content: "";
  display: block;
  z-index: 0;
  width: 17px;
  height: 17px;
  margin: auto 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdmlld0JveD0iMCAwIDE3IDE3IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMTd2MTdoLTE3eiIvPjxnIHN0cm9rZT0iI2MwMCI+PHBhdGggZD0ibTAgMHY3LjA2OSIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDcgLS43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyA1Ljk2NSAxMy4yMTQpIi8+PHBhdGggZD0ibTAgNy4xN3YtNy4xNyIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyAtLjcwNzEwNyAxMS4wMzUgOC44NTIpIi8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
}
a[href]:hover .mod-pulldown-mypage-info__number {
  text-decoration: underline;
}

.anime--pulldown-fade {
  display: none;
}
.anime--pulldown-fade.is-open {
  display: block;
}
.anime--pulldown-fade[aria-hidden=false] .mod-pulldown__backdrop {
  -webkit-animation: mod-pulldown-fade-in 0.4s ease;
          animation: mod-pulldown-fade-in 0.4s ease;
}
.anime--pulldown-fade[aria-hidden=false] .mod-pulldown__container {
  -webkit-animation: mod-pulldown-fade-in-down 0.3s ease;
          animation: mod-pulldown-fade-in-down 0.3s ease;
}
.anime--pulldown-fade[aria-hidden=true] .mod-pulldown__backdrop {
  -webkit-animation: mod-pulldown-fade-out 0.4s ease;
          animation: mod-pulldown-fade-out 0.4s ease;
}
.anime--pulldown-fade[aria-hidden=true] .mod-pulldown__container {
  -webkit-animation: mod-pulldown-fade-out-up 0.3s ease;
          animation: mod-pulldown-fade-out-up 0.3s ease;
}
.anime--pulldown-fade .mod-pulldown__container, .anime--pulldown-fade .mod-pulldown__backdrop {
  will-change: contents;
}
@-webkit-keyframes mod-pulldown-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mod-pulldown-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes mod-pulldown-fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes mod-pulldown-fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes mod-pulldown-fade-in-down {
  from {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@keyframes mod-pulldown-fade-in-down {
  from {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes mod-pulldown-fade-out-up {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
    opacity: 0;
  }
}
@keyframes mod-pulldown-fade-out-up {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
    opacity: 0;
  }
}

.site-nav-wide {
  display: block;
}
@media screen and (max-width: 991px), print {
  .site-nav-wide {
    display: none;
  }
}

div.site-header.of-group-global-nav ~ .site-nav-wide {
  display: block;
}

div.site-header.of-group-global-nav ~ .site-nav-wide .mod-global-nav-wide .mod-global-nav-wide__title {
  -ms-flex-negative: 1;
      flex-shrink: 1;
}
div.site-header.of-group-global-nav ~ .site-nav-wide .mod-global-nav-wide .mod-global-nav-wide__menu {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 991px), print {
  div.site-header.of-group-global-nav ~ .site-nav-wide .mod-global-nav-wide {
    display: block;
  }
  div.site-header.of-group-global-nav ~ .site-nav-wide .mod-global-nav-wide .mod-global-nav-wide__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 100%;
    margin: 0 auto;
    padding: 8px 15px;
  }
  div.site-header.of-group-global-nav ~ .site-nav-wide .mod-global-nav-wide .mod-global-nav-wide__title {
    -ms-flex-negative: 1;
        flex-shrink: 1;
    color: #222;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
  }
  div.site-header.of-group-global-nav ~ .site-nav-wide .mod-global-nav-wide .mod-global-nav-wide__menu {
    display: none;
  }
}

.site-header.of-black {
  background: #222;
}
.site-header.of-black .site-header__inner {
  background: #222;
}
.site-header.of-black .site-header__site-link {
  color: #fff;
}
.site-header.of-black .site-header__site-link:focus-visible {
  outline-color: #fff;
}
.site-header.of-black .site-header__sitename {
  color: #fff;
}
.site-header.of-black .site-header__icon-button:focus-visible {
  outline-color: #fff;
}
.site-header.of-black .site-header__icon-button[data-icon=search] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMjUgMjUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgyNXYyNWgtMjV6Ii8+PGcgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im0xNy4zIDIyLjQ5Yy0uNjI5LjE2OC0xLjI3Ni4yNTMtMS45MjcuMjUzLTQuMDQ0IDAtNy4zNzItMy4zMjgtNy4zNzItNy4zNzJzMy4zMjgtNy4zNzIgNy4zNzItNy4zNzJjNC4wNDUgMCA3LjM3MiAzLjMyOCA3LjM3MiA3LjM3MiAwIDEuOTU1LS43NzcgMy44MzEtMi4xNTkgNS4yMTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0zLjc4OCAtMy43ODcpIi8+PHBhdGggZD0ibTIxLjA2MiAyMS4wNjItNC4yNjUtNC4yNjUiLz48L2c+PC9nPjwvc3ZnPg==");
}
.site-header.of-black .site-header__icon-button[data-icon=global] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyNSAyNSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9Im5vbnplcm8iPjxwYXRoIGQ9Im03LjQ5MSAwYy0uMDAzIDAtLjAwNiAwLS4wMDkgMC00LjExNCAwLTcuNSAzLjM4Ni03LjUgNy41czMuMzg2IDcuNSA3LjUgNy41IDcuNS0zLjM4NiA3LjUtNy41YzAtNC4xMTEtMy4zOC03LjQ5NS03LjQ5MS03LjVtMC0xLjVoLjAwOWM0LjkzNyAwIDkgNC4wNjMgOSA5cy00LjA2MyA5LTkgOS05LTQuMDYzLTktOWMuMDAzLTQuOTMzIDQuMDU4LTguOTkyIDguOTkxLTl6IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1LjAxOCA1LjIzNikiLz48cGF0aCBkPSJtNC4wMzUgMGMtMi4yMjkgMC00LjAzNSAzLjM1OC00LjAzNSA3LjVzMS44MDYgNy41IDQuMDM1IDcuNSA0LjAzNS0zLjM1OSA0LjAzNS03LjUtMS44MDctNy41LTQuMDM1LTcuNW0wLTEuNWMxLjY1NSAwIDMuMTM4IDEuMDYgNC4xNzQgMi45ODYuOTMyIDEuODY2IDEuMzk5IDMuOTI5IDEuMzYxIDYuMDE0LjAzOCAyLjA4NS0uNDI5IDQuMTQ4LTEuMzYxIDYuMDEzLTEuMDM2IDEuOTI1LTIuNTE5IDIuOTg3LTQuMTc0IDIuOTg3cy0zLjEzNS0xLjA2Mi00LjE3NC0yLjk4N2MtLjkzMi0xLjg2NS0xLjM5OS0zLjkyOC0xLjM2MS02LjAxMy0uMDM4LTIuMDg1LjQyOS00LjE0OCAxLjM2MS02LjAxNCAxLjAzOS0xLjkyNiAyLjUxOC0yLjk4NiA0LjE3NC0yLjk4NnoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDguNDc0IDUuMjM2KSIvPjxwYXRoIGQ9Im0wIDE1LjcxM2MtLjQxMSAwLS43NS0uMzM5LS43NS0uNzV2LTE0Ljk2M2MwLS40MTEuMzM5LS43NS43NS0uNzVzLjc1LjMzOS43NS43NXYxNC45NjNjMCAuNDExLS4zMzkuNzUtLjc1Ljc1eiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTIuNTA5IDUuMjM2KSIvPjxwYXRoIGQ9Im0xMTguMzc5IDc5LjY4OWMtMi4xNDEuMDUzLTQuMjU3LS40NzgtNi4xMTktMS41MzUtLjIwNi0uMTM5LS4zMy0uMzczLS4zMy0uNjIyIDAtLjQxMS4zMzgtLjc1Ljc1LS43NS4xMzMgMCAuMjY1LjAzNi4zOC4xMDQgMy4zMjkgMS43MzYgNy4zMDcgMS43MzYgMTAuNjM2IDAgLjExNS0uMDY4LjI0Ny0uMTA0LjM4LS4xMDQuNDEyIDAgLjc1LjMzOS43NS43NSAwIC4yNDktLjEyNC40ODMtLjMzLjYyMi0xLjg2MiAxLjA1Ny0zLjk3NyAxLjU4OC02LjExNyAxLjUzNXoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMDUuODcgLTY5LjYzMikiLz48cGF0aCBkPSJtMTQuOTQ3Ljc1aC0xNC45NDdjLS40MTEgMC0uNzUtLjMzOS0uNzUtLjc1cy4zMzktLjc1Ljc1LS43NWgxNC45NDcuMDAzYy40MTEgMCAuNzUuMzM5Ljc1Ljc1IDAgLjQxMS0uMzM5Ljc1LS43NS43NS0uMDAxIDAtLjAwMiAwLS4wMDMgMHoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUgMTIuNzc3KSIvPjxwYXRoIGQ9Im0xMTIuNjcxIDE0OS40NjljLS40MTEgMC0uNzQ5LS4zMzktLjc0OS0uNzUgMC0uMjU3LjEzMi0uNDk3LjM0OS0uNjM0IDMuODE5LTIuMDQ1IDguNDE5LTIuMDQ1IDEyLjIzOCAwIC4yMDYuMTM5LjMzLjM3My4zMy42MjIgMCAuNDExLS4zMzguNzUtLjc1Ljc1LS4xMzMgMC0uMjY1LS4wMzYtLjM4LS4xMDQtMy4zMjktMS43MzYtNy4zMDctMS43MzYtMTAuNjM2IDAtLjEyLjA3Ni0uMjYuMTE2LS40MDIuMTE2eiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEwNS44NzkgLTEzMS4xMzUpIi8+PC9nPjwvc3ZnPg==");
}

.site-header.of-black .mod-header-sp-menu__icon-button:focus-visible {
  outline-color: #fff;
}
.site-header.of-black .mod-header-sp-menu__icon-button[data-icon=login] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGcgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im00IDIyLjhoMTEuNGwtNC44LTQuOCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLjE0OCAtNi4yKSIvPjxwYXRoIGQ9Im0yMSA5LjUzM3YtMy41MzNoMTN2MjEuMmgtMTN2LTMuNTM0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTAuMzAxIC0yLjIzOCkiLz48L2c+PC9nPjwvc3ZnPg==");
}
.site-header.of-black .mod-header-sp-menu__icon-button[data-icon=mypage] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGVsbGlwc2UgY3g9IjE0Ljk5OSIgY3k9IjkuNTAxIiByeD0iNC41IiByeT0iNSIgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJtOC45MjggMzUuMjA3YzAtNS43NDggNC4wNS04IDctOGg1YzIuOTM1IDAgNyAyLjI1NyA3IDgiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy40MjcgLTkuNzA3KSIvPjwvZz48L3N2Zz4=");
}
.site-header.of-black .mod-header-sp-menu__icon-button[data-icon=mypage-notice] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGVsbGlwc2UgY3g9IjE0Ljk5OSIgY3k9IjkuNTAxIiByeD0iNC41IiByeT0iNSIgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJtOC45MjggMzUuMjA3YzAtNS43NDggNC4wNS04IDctOGg1YzIuOTM1IDAgNyAyLjI1NyA3IDgiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy40MjcgLTkuNzA3KSIvPjwvZz48Y2lyY2xlIGN4PSIyNS41IiBjeT0iMTIuNSIgZmlsbD0iI2MwMCIgcj0iMy41Ii8+PC9zdmc+");
}
.site-header.of-black .mod-header-sp-menu__icon-button[data-icon=menu-open] {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGcgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im00LjUgOC41aDIxIi8+PHBhdGggZD0ibTQuNSAxNWgyMSIvPjxwYXRoIGQ9Im00LjUgMjEuNWgyMSIvPjwvZz48L2c+PC9zdmc+");
}
.site-header.of-black .mod-header-sp-menu__icon-label {
  color: #fff;
}

.site-header.of-black .mod-header-menu__pulldown {
  color: #fff;
}
.site-header.of-black .mod-header-menu__pulldown:focus-visible {
  outline-color: #fff;
}
.site-header.of-black .mod-header-menu__pulldown::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAxNSA5IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9IiNmZmYiIGZpbGwtcnVsZT0ibm9uemVybyI+PHBhdGggZD0ibTAgOS40ODFjLS41NDkgMC0xLS40NTEtMS0xdi04LjQ4MWMwLS41NDkuNDUxLTEgMS0xczEgLjQ1MSAxIDF2OC40ODFjMCAuNTQ5LS40NTEgMS0xIDF6IiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyAxLjQxNCAxLjQxNCkiLz48cGF0aCBkPSJtMCA5LjQ4Yy0uNTQ5IDAtMS0uNDUxLTEtMXYtOC40OGMwLS41NDkuNDUxLTEgMS0xczEgLjQ1MSAxIDF2OC40OGMwIC41NDktLjQ1MSAxLTEgMXoiIHRyYW5zZm9ybT0ibWF0cml4KC0uNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLS43MDcxMDcgNy40MSA3LjQxKSIvPjwvZz48L3N2Zz4=");
}

/* Modal: drawer */
.site-header.of-black .mod-drawer__close {
  background-color: #222;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAzMCAzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiIGZpbGw9Im5vbmUiLz48ZyBmaWxsPSIjZmZmIj48cGF0aCBkPSJtMjguOTY3IDFjMC0uNTUyLS40NDgtMS0xLTFoLTI2Ljk2N2MtLjU1MiAwLTEgLjQ0OC0xIDF2LjE0NmMwIC41NTIuNDQ4IDEgMSAxaDI2Ljk2N2MuNTUyIDAgMS0uNDQ4IDEtMXoiIHRyYW5zZm9ybT0ibWF0cml4KC43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyAuNzA3MTA3IDUuNTE3IDQpIi8+PHBhdGggZD0ibTI4Ljk2NyAxYzAtLjU1Mi0uNDQ4LTEtMS0xaC0yNi45NjdjLS41NTIgMC0xIC40NDgtMSAxdi4xNDZjMCAuNTUyLjQ0OCAxIDEgMWgyNi45NjdjLjU1MiAwIDEtLjQ0OCAxLTF6IiB0cmFuc2Zvcm09Im1hdHJpeCgtLjcwNzEwNyAuNzA3MTA3IC0uNzA3MTA3IC0uNzA3MTA3IDI2IDUuNTE5KSIvPjwvZz48L3N2Zz4=");
}
.site-header.of-black .mod-drawer__close:focus-visible {
  outline-color: #fff;
}
.site-header.of-black .mod-drawer__close-label {
  color: #fff;
}

/*! = CommonModules/Footer */
.site-footer {
  --site-footer-margin-top: 80px;
  --pagetop-hover-slide: 10px;
  margin: var(--site-footer-margin-top, 80px) auto 0;
  color: #fff;
}

.site-footer :where(.site-footer__inner) a {
  color: inherit;
  text-decoration: none;
  text-underline-offset: 0.2em;
}

@media screen and (min-width: 768px), print {
  .site-footer {
    margin-top: var(--site-footer-margin-top, 80px);
  }
  .site-footer :where(.site-footer__inner) a[href]:focus,
  .site-footer :where(.site-footer__inner) a[href]:hover {
    text-decoration: none;
  }
}
/* pagetop */
.site-footer :where(.site-footer__inner) .pagetop .wrap {
  position: relative;
}

.site-footer :where(.site-footer__inner) .pagetop .wrap .link {
  position: absolute;
  z-index: 100;
  right: 0;
  bottom: 100%;
  padding: 0;
}

.site-footer :where(.site-footer__inner) .pagetop .wrap .link a {
  display: block;
  position: relative;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  width: 46px;
  height: 26px;
  margin-right: 0;
  margin-left: auto;
  padding-bottom: var(--pagetop-hover-slide);
  -webkit-transform: translateY(calc(var(--pagetop-hover-slide)));
          transform: translateY(calc(var(--pagetop-hover-slide)));
  -webkit-transition: 0.15s -webkit-transform;
  transition: 0.15s -webkit-transform;
  transition: 0.15s transform;
  transition: 0.15s transform, 0.15s -webkit-transform;
  border-radius: 6px 6px 0 0;
  background: rgba(88, 88, 88, 0.8);
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}
.site-footer :where(.site-footer__inner) .pagetop .wrap .link a:focus-visible {
  outline-color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .site-footer :where(.site-footer__inner) .pagetop .wrap .link a:hover {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

.site-footer :where(.site-footer__inner) .pagetop .wrap .link a::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 11px;
  right: 0;
  bottom: auto;
  left: 0;
  width: 11px;
  height: 11px;
  margin: auto;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 1px solid #fff;
  border-width: 2px 0 0 2px;
}

.site-footer :where(.site-footer__inner) .pagetop.js-footer-pagetop .wrap {
  z-index: 199;
  right: 0;
  bottom: 0;
  left: 0;
  margin-right: auto;
  margin-left: auto;
}

html[data-is-scrolling=true] .site-footer :where(.site-footer__inner) .pagetop.js-footer-pagetop .wrap {
  will-change: auto;
}

.site-footer :where(.site-footer__inner) .pagetop.js-footer-pagetop .wrap .link {
  padding-right: 10px;
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
  -webkit-transition: 0.15s opacity, 0.15s -webkit-transform;
  transition: 0.15s opacity, 0.15s -webkit-transform;
  transition: 0.15s transform, 0.15s opacity;
  transition: 0.15s transform, 0.15s opacity, 0.15s -webkit-transform;
}

.site-footer :where(.site-footer__inner) .pagetop.js-footer-pagetop.is-fixed .wrap {
  position: fixed;
  z-index: 999;
  width: 100%;
}

.site-footer :where(.site-footer__inner) .pagetop.js-footer-pagetop.is-invisible .wrap .link {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  opacity: 0;
  pointer-events: none;
}

.site-footer :where(.site-footer__inner) .pagetop.js-footer-pagetop.is-fixed:not(.is-invisible) .wrap .link {
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
}

@media screen and (min-width: 992px), print {
  .site-footer :where(.site-footer__inner) .pagetop > .wrap > .link {
    padding-bottom: 0;
  }
  .site-footer :where(.site-footer__inner) .pagetop.js-footer-pagetop .wrap .link {
    padding-right: 10px;
  }
  .site-footer :where(.site-footer__inner) .pagetop > .wrap > .link > a {
    width: 60px;
    height: 30px;
  }
  .site-footer :where(.site-footer__inner) .pagetop > .wrap > .link > a::after {
    top: 12px;
    width: 14px;
    height: 14px;
  }
  .site-footer :where(.site-footer__inner) .pagetop > .wrap > .link > a:focus,
  .site-footer :where(.site-footer__inner) .pagetop > .wrap > .link > a:hover {
    opacity: 1;
  }
}
/* mod-footer-menu */
.mod-footer-menu {
  padding: 36px 15px 80px;
  background: #222;
}

.mod-footer-menu > .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}
.mod-footer-menu > .row::after, .mod-footer-menu > .row::before {
  content: none;
}

.mod-footer-menu > .row[data-nav-type=site] .col,
.mod-footer-menu > .row[data-nav-type=related] .col {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 16px;
}

.mod-footer-menu > .row .col[data-col-social] {
  margin-top: 20px;
  margin-bottom: 32px;
}

.mod-footer-menu > .row[data-nav-type=site] .col:not([data-col-site-title]) {
  display: none;
}

.mod-footer-menu > .row[data-nav-type=related] .col .mod-footer-menu__list {
  display: none;
}

.mod-footer-menu__title {
  display: block;
  margin: 0;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: inherit;
  line-height: 1.4;
}

.mod-footer-menu__title a[href]:focus {
  text-decoration: underline;
}
.mod-footer-menu__title a:focus-visible {
  outline-color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .mod-footer-menu__title a[href]:hover {
    text-decoration: underline;
  }
}

.mod-footer-menu__subtitle {
  display: block;
  position: relative;
  margin: 0;
  padding-bottom: 8px;
  color: #fff;
  font-size: 1.6rem;
  line-height: 1.75;
}
.mod-footer-menu__subtitle::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #535353;
}

.mod-footer-menu__subtitle a[href]:focus {
  text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
  .mod-footer-menu__subtitle a[href]:hover {
    text-decoration: underline;
  }
}
.mod-footer-menu__subtitle a:focus-visible {
  outline-color: #fff;
}

.mod-footer-menu__list li {
  position: relative;
  color: #fff;
  font-size: 1.4rem;
}

[data-nav-type=site] .mod-footer-menu__list li {
  margin-top: 12px;
}

[data-nav-type=related] .mod-footer-menu__list li {
  margin-top: 20px;
}

.mod-footer-menu__list[data-list-level="3"] {
  margin-left: 20px;
}

.mod-footer-menu__list[data-list-level] li {
  margin-top: 4px;
}

.mod-footer-menu__list a {
  display: block;
  padding: 4px 8px 4px 0;
}
.mod-footer-menu__list a[href]:focus {
  text-decoration: underline;
}
.mod-footer-menu__list a:focus-visible {
  outline-color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .mod-footer-menu__list a[href]:hover {
    text-decoration: underline;
  }
}

.mod-footer-menu__list[data-list-level] a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  padding-left: 20px;
  font-size: 1.3rem;
  line-height: 1.8462;
}
.mod-footer-menu__list[data-list-level] a::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: 0.6em;
  left: 0;
  width: 17px;
  height: 17px;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdmlld0JveD0iMCAwIDE3IDE3IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMTd2MTdoLTE3eiIvPjxnIHN0cm9rZT0iI2MwMCI+PHBhdGggZD0ibTAgMHY3LjA2OSIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDcgLS43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyA1Ljk2NSAxMy4yMTQpIi8+PHBhdGggZD0ibTAgNy4xN3YtNy4xNyIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyAtLjcwNzEwNyAxMS4wMzUgOC44NTIpIi8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
}

[data-nav-type=site] .mod-footer-menu__title a,
[data-nav-type=related] .mod-footer-menu__title a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 12px;
}

.mod-footer-menu .mod-footer-menu__top-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  min-width: 292px;
  max-width: 100%;
  min-height: 48px;
  padding: 8px 16px;
  -webkit-transition: color 0.2s, background-color 0.2s;
  transition: color 0.2s, background-color 0.2s;
  border: 1px solid #fff;
  border-radius: 6px;
  background: transparent;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  text-decoration: none;
}
.mod-footer-menu .mod-footer-menu__top-link:focus-visible {
  outline-color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .mod-footer-menu .mod-footer-menu__top-link:hover {
    background-color: #fff;
    color: #222;
    text-decoration: none;
  }
}

@media screen and (min-width: 768px), print {
  .mod-footer-menu {
    padding: 56px 30px;
  }
  .mod-footer-menu .col[data-col-site-title] {
    -ms-grid-column-span: 3;
    grid-column: span 3;
  }
  .mod-footer-menu .col[data-col-site-title] > * {
    margin-bottom: -8px;
  }
  .mod-footer-menu > .row {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
    -webkit-box-orient: inherit;
    -webkit-box-direction: inherit;
        -ms-flex-direction: inherit;
            flex-direction: inherit;
    -webkit-box-align: inherit;
        -ms-flex-align: inherit;
            align-items: inherit;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-bottom: 52px;
    gap: 40px;
  }
  .mod-footer-menu > .row[data-nav-type=top-link] {
    padding-bottom: 16px;
  }
  .mod-footer-menu > .row .col {
    margin: 0;
  }
  [data-nav-type=site] .col,
  [data-nav-type=related] .col {
    margin-bottom: 0;
  }
  .mod-footer-menu > .row[data-nav-type=site] .col,
  .mod-footer-menu > .row[data-nav-type=related] .col {
    display: block;
  }
  .mod-footer-menu > .row[data-nav-type=site] .col {
    margin-bottom: 0;
  }
  [data-col-social] {
    margin-bottom: 0;
  }
  .mod-footer-menu > .row[data-nav-type=site] .col:not([data-col-site-title]) {
    display: block;
  }
  .mod-footer-menu > .row[data-nav-type=related] .col .mod-footer-menu__list {
    display: block;
  }
  .mod-footer-menu > .row .col[data-col-social] {
    -ms-grid-column-span: 3;
    grid-column-end: span 3;
    -ms-grid-column-align: center;
        justify-self: center;
    margin-top: 0;
    margin-bottom: 0;
  }
  .mod-footer-menu > .row[data-nav-type=top-link] .col {
    -ms-grid-column-span: 3;
    grid-column-end: span 3;
    -ms-grid-column-align: center;
        justify-self: center;
  }
  .mod-footer-menu__title {
    margin-bottom: 32px;
    font-size: 2rem;
    line-height: 1.4;
  }
  [data-nav-type=related] .mod-footer-menu__title {
    margin-bottom: 24px;
  }
  [data-nav-type=site] .mod-footer-menu__title a,
  [data-nav-type=related] .mod-footer-menu__title a {
    padding: 0;
  }
  .mod-footer-menu__subtitle + * {
    margin-top: 28px;
  }
  .mod-footer-menu .mod-footer-menu__top-link {
    min-width: 332px;
    max-width: 332px;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-footer-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column wrap;
            flex-flow: column wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding: 56px 30px;
  }
  .mod-footer-menu .col {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
  .mod-footer-menu .col[data-col-site-title] {
    grid-column-start: span 4;
  }
  .mod-footer-menu > .row {
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr);
    max-width: 1200px;
  }
  .mod-footer-menu > .row .col[data-col-social] {
    -ms-grid-column-span: inherit;
    grid-column-end: inherit;
  }
  .mod-footer-menu > .row[data-nav-type=top-link] .col {
    grid-column-start: span 4;
  }
}
.mod-footer-social-link {
  font-size: 1.2rem;
  text-align: center;
}
.mod-footer-social-link__title {
  display: none;
  margin-bottom: 12px;
  color: #fff;
  font-size: 2rem;
  line-height: 1.4;
  text-align: center;
}
.mod-footer-social-link__title a {
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  color: #fff;
}
.mod-footer-social-link__title a[href]:focus {
  text-decoration: underline;
}
.mod-footer-social-link__title a:focus-visible {
  outline-color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .mod-footer-social-link__title a[href]:hover {
    text-decoration: underline;
  }
}
.mod-footer-social-link__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0;
  font-size: 1.3rem;
}
.mod-footer-social-link__list a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  padding: 0;
  color: #fff;
  font-size: 1.2rem;
  line-height: 2;
  text-align: center;
}
.mod-footer-social-link__list a[href]:focus {
  text-decoration: underline;
}
.mod-footer-social-link__list a:focus-visible {
  outline-color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .mod-footer-social-link__list a[href]:hover {
    text-decoration: underline;
  }
}
.mod-footer-social-link__list li ~ li {
  margin-left: 20px;
}
.mod-footer-social-link__list li .label {
  display: inline-block;
  padding: 0;
  border-radius: 0;
  color: inherit;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.65;
  text-align: center;
  vertical-align: baseline;
  white-space: nowrap;
}
.mod-footer-social-link__list li .symbol svg {
  display: block;
  width: 60px;
  height: 60px;
  margin: 0 auto;
  -webkit-transition: fill 0.2s;
  transition: fill 0.2s;
  fill: #dbdbdb;
}
.mod-footer-social-link__list li a:focus .symbol svg {
  fill: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .mod-footer-social-link__list li a:hover .symbol svg {
    fill: #fff;
  }
}
@media screen and (min-width: 768px), print {
  .mod-footer-social-link {
    display: block;
    margin: 12px auto 0;
    text-align: left;
  }
  .mod-footer-social-link__title {
    display: block;
  }
  .mod-footer-social-link__list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    max-width: none;
    margin: 0;
    padding: 0;
  }
}
@media screen and (min-width: 992px), print {
  .mod-footer-social-link {
    margin: 0 auto;
  }
}

.mod-footer-infomation {
  position: relative;
  z-index: 200;
  padding: 16px 15px;
  background: #f4f4f4;
  font-size: 1.2rem;
  text-align: center;
}

.mod-footer-infomation__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 360px;
  margin: 0 auto;
}

.mod-footer-infomation__list li {
  position: relative;
  color: #222;
}

.mod-footer-infomation__list li + li {
  padding-left: 8px;
}

.mod-footer-infomation__list li + li:not(:last-child)::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 4px;
  width: 1px;
  height: 12px;
  margin: auto 0;
  background: #707070;
}

.mod-footer-infomation__list a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 2px 4px;
  color: #222;
}
@media (hover: hover) and (pointer: fine) {
  .mod-footer-infomation__list a[href]:focus, .mod-footer-infomation__list a[href]:hover {
    text-decoration: underline;
  }
}

.mod-footer-infomation__copyright {
  color: #222;
  font-size: 1.1rem;
  line-height: 2;
}

.mod-footer-infomation__copyright small {
  font-size: 100%;
}

@media screen and (min-width: 768px), print {
  .mod-footer-infomation {
    padding: 16px 30px;
  }
  .mod-footer-infomation__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    max-width: 1200px !important;
    margin: 0 auto;
  }
  .mod-footer-infomation__list {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    max-width: none;
    margin: 0;
  }
  .mod-footer-infomation__list li + li {
    padding-left: 12px;
  }
  .mod-footer-infomation__list li + li:not(:last-child)::before {
    content: none;
  }
  .mod-footer-infomation__list a {
    padding: 2px 4px;
    font-size: 1.4rem;
  }
  .mod-footer-infomation__copyright {
    margin-left: auto;
    padding-left: 40px;
    font-size: 1.5rem;
    line-height: 1.6;
  }
}
/*! = CommonModules/Navigation */
.mod-global-nav-wide {
  display: none;
  background: #f4f4f4;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.mod-global-nav-wide.of--ui-stacking {
  position: absolute;
  z-index: 10;
  top: 50px;
  right: 0;
  left: 0;
  width: 100%;
  margin: 0 auto;
  padding: 24px 0 7px;
  background: transparent;
}
.mod-global-nav-wide.of--ui-stacking::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
}
.mod-global-nav-wide.of--ui-stacking-shadow {
  position: absolute;
  z-index: 10;
  top: 50px;
  right: 0;
  left: 0;
  width: 100%;
  margin: 0 auto;
  padding: 24px 0 48px;
  background: transparent;
}
.mod-global-nav-wide.of--ui-stacking-shadow::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.52)), to(transparent));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.52), transparent);
}
.mod-global-nav-wide__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 1220px;
  margin: 0 auto;
  padding: 0 40px;
}
:where(.mod-global-nav-wide.of--ui-stacking) .mod-global-nav-wide__container {
  position: relative;
  z-index: 1;
  height: 67px;
}
:where(.mod-global-nav-wide.of--ui-stacking-shadow) .mod-global-nav-wide__container {
  position: relative;
  z-index: 1;
  height: 67px;
}
.mod-global-nav-wide__title {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  color: #222;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}
:where(.mod-global-nav-wide.of--ui-white) .mod-global-nav-wide__title {
  position: relative;
  color: #fff;
}
:where(.mod-global-nav-wide.of--ui-white) .mod-global-nav-wide__title:focus-visible {
  outline-color: #fff;
}
.mod-global-nav-wide__title a[href] {
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  color: #222;
  text-decoration: none;
}
:where(.mod-global-nav-wide.of--ui-white) .mod-global-nav-wide__title a[href] {
  position: relative;
  color: #fff;
}
:where(.mod-global-nav-wide.of--ui-white) .mod-global-nav-wide__title a[href]:focus-visible {
  outline-color: #fff;
}
.mod-global-nav-wide__title a[href]:hover {
  opacity: 0.7;
  color: inherit;
}
.mod-global-nav-wide__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: auto;
  padding-left: 24px;
}
.mod-global-nav-wide__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mod-global-nav-wide__list li {
  max-width: 15em;
}
.mod-global-nav-wide__list li ~ li {
  margin-left: 12px;
}
.mod-global-nav-wide__list a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 80px;
  padding: 4px 8px;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  color: #222;
  font-size: 1.4rem;
  line-height: 1.5;
  text-decoration: none;
}
:where(.mod-global-nav-wide.of--ui-white) .mod-global-nav-wide__list a {
  position: relative;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  color: #fff;
}
.mod-global-nav-wide__list a[data-is-current] {
  font-weight: 700;
}
@media (hover: hover) and (pointer: fine) {
  .mod-global-nav-wide__list a:hover {
    background-color: #ececec;
  }
  :where(.mod-global-nav-wide.of--ui-white) .mod-global-nav-wide__list a:hover {
    opacity: 0.6;
    background: none;
  }
  :where(.mod-global-nav-wide.of--ui-stacking) .mod-global-nav-wide__list a:hover {
    opacity: 0.6;
    background: none;
  }
}
.mod-global-nav-wide__list a:focus-visible {
  outline-offset: -3px;
  background-color: #ececec;
}
:where(.mod-global-nav-wide.of--ui-white) .mod-global-nav-wide__list a:focus-visible {
  outline-color: #fff;
  opacity: 0.6;
  background: none;
}
.mod-global-nav-wide__account {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-left: auto;
  padding-left: 24px;
  font-size: 1rem;
}
.mod-global-nav-wide__account li ~ li {
  margin-left: 20px;
}
.mod-global-nav-wide__icon-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: flex;
      -ms-flex-align: flex;
          align-items: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto;
  height: auto;
  height: 100%;
  padding-top: 30px;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  border: none;
  border-radius: 0;
  color: #222;
  font-size: 1rem;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  text-decoration: none;
}
:where(.mod-global-nav-wide.of--ui-white) .mod-global-nav-wide__icon-button {
  color: #fff;
}
:where(.mod-global-nav-wide.of--ui-white) .mod-global-nav-wide__icon-button:focus-visible {
  outline-color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  .mod-global-nav-wide__icon-button:hover {
    opacity: 0.7;
  }
}
.mod-global-nav-wide__icon-button::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  width: 30px;
  height: 30px;
  -webkit-mask: center no-repeat;
          mask: center no-repeat;
  -webkit-mask-size: 30px;
          mask-size: 30px;
  background-color: #222;
}
.mod-global-nav-wide__icon-button[data-icon=login]::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGcgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im00IDIyLjhoMTEuNGwtNC44LTQuOCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLjE0OCAtNi4yKSIvPjxwYXRoIGQ9Im0yMSA5LjUzM3YtMy41MzNoMTN2MjEuMmgtMTN2LTMuNTM0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTAuMzAxIC0yLjIzOCkiLz48L2c+PC9nPjwvc3ZnPg==");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGcgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im00IDIyLjhoMTEuNGwtNC44LTQuOCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLjE0OCAtNi4yKSIvPjxwYXRoIGQ9Im0yMSA5LjUzM3YtMy41MzNoMTN2MjEuMmgtMTN2LTMuNTM0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTAuMzAxIC0yLjIzOCkiLz48L2c+PC9nPjwvc3ZnPg==");
}
.mod-global-nav-wide.of--ui-white .mod-global-nav-wide__icon-button[data-icon=login]::before {
  background-color: #fff;
}
.mod-global-nav-wide__icon-button[data-icon=register]::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzIgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGcgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiPjxjaXJjbGUgY3g9IjE1LjAwMyIgY3k9IjkuMzA2IiByPSI0Ljc1Ii8+PHBhdGggZD0ibTguOTMgMzUuMTVjMC01Ljc0OCAzLjk1Ni04IDYuOTA2LThoNS4xODFjMi45MzUgMCA2LjkwNiAyLjI1NyA2LjkwNiA4IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy40MjcgLTkuNzA3KSIvPjxnIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiPjxwYXRoIGQ9Im0tMjIzODYuMiA4NDg5LjQ1aDgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIyNDA5LjIgLTg0NzYuNDUpIi8+PHBhdGggZD0ibTAgMGg4IiB0cmFuc2Zvcm09Im1hdHJpeCgwIDEgLTEgMCAyNyA5KSIvPjwvZz48L2c+PC9nPjwvc3ZnPg==");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzIgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGcgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiPjxjaXJjbGUgY3g9IjE1LjAwMyIgY3k9IjkuMzA2IiByPSI0Ljc1Ii8+PHBhdGggZD0ibTguOTMgMzUuMTVjMC01Ljc0OCAzLjk1Ni04IDYuOTA2LThoNS4xODFjMi45MzUgMCA2LjkwNiAyLjI1NyA2LjkwNiA4IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy40MjcgLTkuNzA3KSIvPjxnIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiPjxwYXRoIGQ9Im0tMjIzODYuMiA4NDg5LjQ1aDgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIyNDA5LjIgLTg0NzYuNDUpIi8+PHBhdGggZD0ibTAgMGg4IiB0cmFuc2Zvcm09Im1hdHJpeCgwIDEgLTEgMCAyNyA5KSIvPjwvZz48L2c+PC9nPjwvc3ZnPg==");
}
.mod-global-nav-wide.of--ui-white .mod-global-nav-wide__icon-button[data-icon=register]::before {
  background-color: #fff;
}
.mod-global-nav-wide__icon-button[data-icon=shop]::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgdmlld0JveD0iMCAwIDMwIDMwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMzB2MzBoLTMweiIvPjxnIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMSAyaDE2bDIgMTNoLTIweiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNiA5Ljk2OSkiLz48cGF0aCBkPSJtLTExNjI2LjMtMzQ0OC4zYzAtLjAxLS4xLTQuNjMgNC40LTQuNjMgNC42IDAgNC4zIDQuNjMgNC4zIDQuNjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTE2MzcgMzQ1Ny40NCkiLz48L2c+PC9nPjwvc3ZnPg==");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgdmlld0JveD0iMCAwIDMwIDMwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMzB2MzBoLTMweiIvPjxnIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMSAyaDE2bDIgMTNoLTIweiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNiA5Ljk2OSkiLz48cGF0aCBkPSJtLTExNjI2LjMtMzQ0OC4zYzAtLjAxLS4xLTQuNjMgNC40LTQuNjMgNC42IDAgNC4zIDQuNjMgNC4zIDQuNjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTE2MzcgMzQ1Ny40NCkiLz48L2c+PC9nPjwvc3ZnPg==");
}
.mod-global-nav-wide.of--ui-white .mod-global-nav-wide__icon-button[data-icon=shop]::before {
  background-color: #fff;
}
.mod-global-nav-wide__icon-button[data-icon=mypage]::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGVsbGlwc2UgY3g9IjE0Ljk5OSIgY3k9IjkuNTAxIiByeD0iNC41IiByeT0iNSIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJtOC45MjggMzUuMjA3YzAtNS43NDggNC4wNS04IDctOGg1YzIuOTM1IDAgNyAyLjI1NyA3IDgiIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy40MjcgLTkuNzA3KSIvPjwvZz48L3N2Zz4=");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGVsbGlwc2UgY3g9IjE0Ljk5OSIgY3k9IjkuNTAxIiByeD0iNC41IiByeT0iNSIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJtOC45MjggMzUuMjA3YzAtNS43NDggNC4wNS04IDctOGg1YzIuOTM1IDAgNyAyLjI1NyA3IDgiIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy40MjcgLTkuNzA3KSIvPjwvZz48L3N2Zz4=");
}
.mod-global-nav-wide.of--ui-white .mod-global-nav-wide__icon-button[data-icon=mypage]::before {
  background-color: #fff;
}
.mod-global-nav-wide__icon-button[data-icon=mypage-notice]::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGVsbGlwc2UgY3g9IjE0Ljk5OSIgY3k9IjkuNTAxIiByeD0iNC41IiByeT0iNSIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJtOC45MjggMzUuMjA3YzAtNS43NDggNC4wNS04IDctOGg1YzIuOTM1IDAgNyAyLjI1NyA3IDgiIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy40MjcgLTkuNzA3KSIvPjwvZz48Y2lyY2xlIGN4PSIyNS41IiBjeT0iMTIuNSIgZmlsbD0iI2MwMCIgcj0iMy41Ii8+PC9zdmc+");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PGVsbGlwc2UgY3g9IjE0Ljk5OSIgY3k9IjkuNTAxIiByeD0iNC41IiByeT0iNSIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJtOC45MjggMzUuMjA3YzAtNS43NDggNC4wNS04IDctOGg1YzIuOTM1IDAgNyAyLjI1NyA3IDgiIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMy40MjcgLTkuNzA3KSIvPjwvZz48Y2lyY2xlIGN4PSIyNS41IiBjeT0iMTIuNSIgZmlsbD0iI2MwMCIgcj0iMy41Ii8+PC9zdmc+");
}
.mod-global-nav-wide.of--ui-white .mod-global-nav-wide__icon-button[data-icon=mypage-notice]::before {
  background-color: #fff;
}
.mod-global-nav-wide__icon-label {
  display: block;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  line-height: 1.2;
}
@media screen and (min-width: 992px), print {
  .mod-global-nav-wide {
    display: block;
  }
}

.mod-local-nav-wide {
  display: none;
  border-bottom: 1px solid #e3e3e3;
  background: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.mod-local-nav-wide[data-nav-type=local2] {
  border-bottom: none;
  background: #5f5f5f;
}
.mod-local-nav-wide__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 1220px;
  height: 40px;
  margin: 0 auto;
  padding: 0 40px;
  overflow: hidden;
}
.mod-local-nav-wide__upper-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8px 18px 8px 0;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  color: #767676;
  font-size: 1.2rem;
  font-weight: 700;
  text-decoration: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
@media (hover: hover) and (pointer: fine) {
  .mod-local-nav-wide__upper-category:hover {
    color: #222;
  }
}
.mod-local-nav-wide__upper-category:focus-visible {
  outline-offset: -2px;
  color: #222;
}
[data-nav-type=local2] .mod-local-nav-wide__upper-category {
  color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  [data-nav-type=local2] .mod-local-nav-wide__upper-category:hover {
    color: #fff;
  }
}
[data-nav-type=local2] .mod-local-nav-wide__upper-category:focus-visible {
  outline-color: #fff;
  outline-offset: -2px;
  color: #fff;
}
.mod-local-nav-wide__upper-category::before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  margin-right: 8px;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border-radius: 16px;
  background: #222 url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PGNpcmNsZSBjeD0iOCIgY3k9IjgiIHI9IjgiLz48ZyBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMS41Ij48cGF0aCBkPSJtMCAwdjQiIHRyYW5zZm9ybT0ibWF0cml4KC43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyAuNzA3MTA3IDkuNDE0IDUuMTcyKSIvPjxwYXRoIGQ9Im0wIDR2LTQiIHRyYW5zZm9ybT0ibWF0cml4KC43MDcxMDcgLS43MDcxMDcgLjcwNzEwNyAuNzA3MTA3IDYuNTg2IDgpIi8+PC9nPjwvZz48L3N2Zz4=") center no-repeat;
  background-size: contain;
}
@media (hover: hover) and (pointer: fine) {
  .mod-local-nav-wide__upper-category:hover::before {
    background-color: #c00;
  }
}
.mod-local-nav-wide__upper-category:focus-visible::before {
  background-color: #c00;
}
.mod-local-nav-wide__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}
.mod-local-nav-wide__upper-category + .mod-local-nav-wide__menu {
  border-left: 1px solid #e3e3e3;
}
.mod-local-nav-wide__menu[data-slide-scrolling] {
  border-left: 1px solid #e3e3e3;
}
.mod-local-nav-wide__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
}
.mod-local-nav-wide__list::-webkit-scrollbar {
  display: none;
}
.mod-local-nav-wide__list li {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  letter-spacing: 0;
}
.mod-local-nav-wide__list li:last-child {
  padding-right: 30px;
}
.mod-local-nav-wide__list a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  height: 40px;
  padding: 8px 12px;
  -webkit-transition: color 0.2s, background-color 0.2s;
  transition: color 0.2s, background-color 0.2s;
  color: #767676;
  font-size: 1.2rem;
  line-height: 1.8;
  text-decoration: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
[data-nav-type=local2] .mod-local-nav-wide__list a {
  color: #fff;
}
@media (hover: hover) and (pointer: fine) {
  [data-nav-type=local] .mod-local-nav-wide__list a:hover {
    background-color: #ececec;
    color: #222;
  }
  [data-nav-type=local2] .mod-local-nav-wide__list a:hover {
    background-color: #767676;
  }
}
[data-nav-type=local] .mod-local-nav-wide__list a:focus-visible {
  outline-offset: -5px;
  background-color: #ececec;
  color: #222;
}
[data-nav-type=local2] .mod-local-nav-wide__list a:focus-visible {
  outline-color: #fff;
  outline-offset: -5px;
  background-color: #767676;
}
.mod-local-nav-wide__list a[data-is-current] {
  color: #222;
  font-weight: 700;
}
[data-nav-type=local2] .mod-local-nav-wide__list a[data-is-current] {
  background-color: rgba(34, 34, 34, 0.4);
  color: #fff;
}
.mod-local-nav-wide__list a[data-is-current]::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  margin: auto;
  background-color: #c00;
}
[data-nav-type=local] .mod-local-nav-wide__list a[data-is-current]::after {
  content: "";
}
@media screen and (min-width: 992px), print {
  .mod-local-nav-wide {
    display: block;
  }
}

.js--local-nav-slide-controller {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.js--local-nav-slide-controller [data-slide-controller-actions] {
  display: none;
  position: relative;
  height: auto;
}
.js--local-nav-slide-controller[data-slide-scrolling] [data-slide-controller-actions] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.js--local-nav-slide-controller [data-slide-controller-actions] > * {
  border-left: 1px solid #e3e3e3;
}
.js--local-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=go], .js--local-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=back] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 30px;
  height: 100%;
  -webkit-transition: stroke 0.2s;
  transition: stroke 0.2s;
  stroke: #222;
  background: #fff;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.js--local-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=go] > svg, .js--local-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=back] > svg {
  height: 100%;
}
@media (hover: hover) and (pointer: fine) {
  .js--local-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=go]:hover, .js--local-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=back]:hover {
    stroke: #c00;
  }
}
[data-nav-type=local2] .js--local-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=go], [data-nav-type=local2] .js--local-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=back] {
  stroke: #fff;
  background: #5f5f5f;
}
@media (hover: hover) and (pointer: fine) {
  [data-nav-type=local2] .js--local-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=go]:hover, [data-nav-type=local2] .js--local-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=back]:hover {
    stroke: #c00;
  }
}
.js--local-nav-slide-controller [data-slide-controller-action=back] {
  visibility: hidden;
  position: absolute;
  left: -31px;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  opacity: 0;
}
.js--local-nav-slide-controller [data-slide-controller-action=back][data-is-enabled] {
  visibility: visible;
  opacity: 1;
}

.mod-content-nav {
  --mod-cn-header-height: 50px;
  display: block;
  position: sticky;
  z-index: 100;
  top: 0;
  margin: 20px 0 40px;
  background: #fff;
}
.mod-content-nav__current {
  display: none;
  position: relative;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  width: 100%;
  height: 100%;
  padding: 0;
  background: #f4f4f4;
}
.mod-content-nav__current-label {
  display: -webkit-box;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: 1/1;
  height: auto;
  min-height: auto;
  max-height: 1.1em;
  padding: 15px 50px 8px 15px;
  overflow: hidden;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
  cursor: default;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
.mod-content-nav__menu.is-opened .mod-content-nav__current-label {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  max-height: none;
  padding-bottom: 8px;
  overflow: visible;
  -webkit-box-orient: initial;
  -webkit-line-clamp: initial;
}
.mod-content-nav__title, .mod-content-nav__menu-toggle > span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  border: 0 !important;
  font-size: 1.8rem;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}
.mod-content-nav > .inner {
  position: relative;
  z-index: 10;
  padding: 0;
}
.mod-content-nav__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 1200px;
  height: auto;
  margin: 0 auto;
  padding: 0;
}
.mod-content-nav__menu-toggle {
  display: none;
  z-index: 2;
}
@media screen and (max-width: 991px), print {
  .mod-content-nav {
    min-height: 50px;
  }
  .mod-content-nav.of--has-submenu {
    min-height: 100px;
  }
  .mod-content-nav__container {
    max-width: 100%;
  }
  .mod-content-nav__current {
    display: -ms-grid;
    display: grid;
  }
  .mod-content-nav__menu {
    display: block;
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
  }
  .mod-content-nav__menu-toggle {
    display: block;
    position: relative;
    z-index: 3;
    top: 0;
    right: 0;
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    grid-area: 1/1;
    width: 100%;
    height: 100%;
    min-height: 50px;
    overflow: hidden;
  }
  .mod-content-nav__menu-toggle:focus-visible {
    outline-offset: -4px;
  }
  .mod-content-nav__menu-toggle::after {
    content: "";
    position: absolute;
    top: 4px;
    right: 0;
    bottom: auto;
    width: 44px;
    height: 44px;
    margin: auto auto 0;
    -webkit-transition: -webkit-transform 0.2s;
    transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
    transition: transform 0.2s, -webkit-transform 0.2s;
    background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTUgMTUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgdHJhbnNmb3JtPSJtYXRyaXgoMCAxIC0xIDAgMTUgMCkiPjxjaXJjbGUgY3g9IjcuNSIgY3k9IjcuNSIgZmlsbD0iI2MwMCIgcj0iNy41Ii8+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjEuNSI+PHBhdGggZD0ibTAgMHY0LjI0NiIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDcgLS43MDcxMDcgLjcwNzEwNyAtLjcwNzEwNyA2LjM5OSAxMC41MDMpIi8+PHBhdGggZD0ibTAgNC4yNDZ2LTQuMjQ2IiB0cmFuc2Zvcm09Im1hdHJpeCgtLjcwNzEwNyAuNzA3MTA3IC0uNzA3MTA3IC0uNzA3MTA3IDkuNDAxIDcuNTAxKSIvPjwvZz48L2c+PC9zdmc+") no-repeat center;
    background-size: 16px;
  }
  .mod-content-nav__menu.is-opened .mod-content-nav__menu-toggle::after {
    -webkit-transform: rotate(-180deg);
            transform: rotate(-180deg);
  }
  .mod-content-nav__list {
    display: -ms-grid;
    display: grid;
    visibility: hidden;
    position: absolute;
    z-index: 2;
    top: auto;
    width: 100%;
    height: 0;
    max-height: 0;
    padding-bottom: 0;
    overflow: hidden;
    overflow-y: auto;
    -webkit-transition: height 0.2s, max-height 0.2s, padding 0.2s;
    transition: height 0.2s, max-height 0.2s, padding 0.2s;
    background: #f4f4f4;
    gap: 10px;
    -ms-scroll-chaining: none;
        overscroll-behavior: contain;
  }
  .mod-content-nav__list > [role=listitem] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    top: 0;
    height: 0;
    padding: 0;
    background: #f4f4f4;
  }
  .mod-content-nav__list > [role=listitem] span,
  .mod-content-nav__list > [role=listitem] a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    min-height: 40px;
    padding: 8px 40px 8px 15px;
    color: #222;
    font-size: 1.4rem;
    text-decoration: none;
  }
  .mod-content-nav__list > [role=listitem] span:focus-visible,
  .mod-content-nav__list > [role=listitem] a:focus-visible {
    outline-offset: -4px;
  }
  .mod-content-nav__list > [role=listitem][data-is-current] > span,
  .mod-content-nav__list > [role=listitem][data-is-current] > a {
    position: relative;
  }
  .mod-content-nav__list > [role=listitem][data-is-current] > span::after,
  .mod-content-nav__list > [role=listitem][data-is-current] > a::after {
    content: "";
    position: absolute;
    top: 0;
    right: 13px;
    bottom: 0;
    width: 18px;
    height: 18px;
    margin: auto;
    -webkit-transition: -webkit-transform 0.2s;
    transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
    transition: transform 0.2s, -webkit-transform 0.2s;
    background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMTggMTgiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxOHYxOGgtMTh6Ii8+PHBhdGggZD0ibTM5MS43NjIgMjY4LjYzMiAzLjYyOSAzLjQ0NiA3LjM3MS03IiBzdHJva2U9IiNjMDAiIHN0cm9rZS13aWR0aD0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzg4LjA2NiAtMjU5LjEyMSkiLz48L2c+PC9zdmc+") no-repeat center;
    background-size: 18px;
  }
  .mod-content-nav__menu.is-opened > .mod-content-nav__list {
    visibility: visible;
    height: auto;
    max-height: calc(100dvh - var(--mod-cn-header-height));
    padding-top: 8px;
    padding-bottom: 20px;
    border-top: 1px solid #dbdbdb;
  }
  .mod-content-nav__menu.is-opened > .mod-content-nav__list > [role=listitem] {
    z-index: 1;
    width: auto;
    height: auto;
  }
  .mod-content-nav__submenu {
    position: relative;
    top: 0;
    height: 50px;
    background: #fff;
  }
  .mod-content-nav__sublist {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }
  .mod-content-nav__sublist::-webkit-scrollbar {
    display: none;
  }
  .mod-content-nav__submenu-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    max-width: 100%;
    background: #fff;
  }
  .mod-content-nav__submenu {
    display: none;
  }
  .mod-content-nav__submenu a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 50px;
    padding: 16px 10px 14px;
    -webkit-transition: color 0.2s, background-color 0.2s;
    transition: color 0.2s, background-color 0.2s;
    background: #fff;
    color: #222;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
  }
  .mod-content-nav__submenu a:focus-visible {
    outline-offset: -5px;
    background-color: #f4f4f4;
  }
  .mod-content-nav__submenu [data-is-current] a {
    font-weight: 700;
  }
  .mod-content-nav__submenu [data-is-current] a::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: #c00;
  }
  .mod-content-nav__submenu[data-current-submenu] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    width: 100%;
  }
}
@media screen and (min-width: 992px), print {
  .mod-content-nav__menu {
    display: block;
    width: 100%;
    margin: auto;
  }
  .mod-content-nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: calc(100% - 80px);
    margin: auto;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    --mod-content-nav-menu-count: 2;
  }
  .mod-content-nav__list::-webkit-scrollbar {
    display: none;
  }
  .mod-content-nav__list[data-item-count="1"] {
    --mod-content-nav-menu-count: 1;
  }
  .mod-content-nav__list[data-item-count="2"] {
    --mod-content-nav-menu-count: 2;
  }
  .mod-content-nav__list[data-item-count="3"] {
    --mod-content-nav-menu-count: 3;
  }
  .mod-content-nav__list[data-item-count="4"] {
    --mod-content-nav-menu-count: 4;
  }
  .mod-content-nav__list[data-item-count="5"] {
    --mod-content-nav-menu-count: 5;
  }
  .mod-content-nav__list[data-item-count="6"] {
    --mod-content-nav-menu-count: 6;
  }
  .mod-content-nav__list[data-item-count="1"], .mod-content-nav__list[data-item-count="2"], .mod-content-nav__list[data-item-count="3"], .mod-content-nav__list[data-item-count="4"], .mod-content-nav__list[data-item-count="5"], .mod-content-nav__list[data-item-count="6"] {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[var(--mod-content-nav-menu-count)];
    grid-template-columns: repeat(var(--mod-content-nav-menu-count), 1fr);
    width: 100%;
  }
  .mod-content-nav__list > [role=listitem] {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    border: 1px solid #d9d9d9;
    letter-spacing: 0;
  }
  .mod-content-nav__list > [role=listitem] + [role=listitem] {
    border-left: none;
  }
  .mod-content-nav__list > [role=listitem] > span,
  .mod-content-nav__list > [role=listitem] > a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%;
    min-height: 44px;
    padding: 8px 20px;
    -webkit-transition: color 0.2s, background-color 0.2s;
    transition: color 0.2s, background-color 0.2s;
    color: #222;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.35;
    text-decoration: none;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
  }
  .mod-content-nav__list > [role=listitem]:not([data-is-current]) > a[href]:hover,
  .mod-content-nav__list > [role=listitem]:not([data-is-current]) > a[href]:focus {
    background-color: #e2e2e2;
  }
  .mod-content-nav__list > [role=listitem]:not([data-is-current]) > a:focus-visible {
    outline-offset: -2px;
    background-color: #e2e2e2;
  }
  .mod-content-nav__list > [role=listitem][data-is-current] > span,
  .mod-content-nav__list > [role=listitem][data-is-current] > a {
    font-weight: 700;
    cursor: default;
  }
  .mod-content-nav__list > [role=listitem][data-is-current] > span::after,
  .mod-content-nav__list > [role=listitem][data-is-current] > a::after {
    content: "";
    position: absolute;
    top: -1px;
    width: calc(100% + 2px);
    height: 2px;
    background-color: #c00;
  }
  .mod-content-nav__sublist {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }
  .mod-content-nav__sublist::-webkit-scrollbar {
    display: none;
  }
  .mod-content-nav__submenu-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
  }
  .mod-content-nav__sublist {
    background: #f4f4f4;
  }
  .mod-content-nav__submenu {
    display: none;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    max-width: calc(100% - 80px);
    margin: 0 auto;
    background: #fff;
  }
  .mod-content-nav__submenu a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 42px;
    padding: 8px 15px 9px;
    -webkit-transition: color 0.2s, background-color 0.2s;
    transition: color 0.2s, background-color 0.2s;
    background: #f4f4f4;
    color: #222;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
  }
  .mod-content-nav__submenu a[href]:hover, .mod-content-nav__submenu a[href]:focus {
    background-color: #e2e2e2;
  }
  .mod-content-nav__submenu a:focus-visible {
    outline-offset: -2px;
    background-color: #e2e2e2;
  }
  .mod-content-nav__submenu [data-is-current] a {
    font-weight: 700;
  }
  .mod-content-nav__submenu[data-current-submenu] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
  }
}

.js--content-nav-slide-controller [data-slide-controller-actions] {
  display: none;
  position: relative;
  height: auto;
}
.js--content-nav-slide-controller[data-slide-scrolling] [data-slide-controller-actions] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.js--content-nav-slide-controller [data-slide-controller-actions] > * {
  border-left: 1px solid #e3e3e3;
}
.js--content-nav-slide-controller[data-slide-scrolling] [data-slide-controller] {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.js--content-nav-slide-controller[data-slide-scrolling] [data-slide-controller] li:last-child {
  padding-right: 30px;
}
.js--content-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=go], .js--content-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=back] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 30px;
  height: 100%;
  -webkit-transition: stroke 0.2s;
  transition: stroke 0.2s;
  stroke: #222;
  background: #fff;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.js--content-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=go] > svg, .js--content-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=back] > svg {
  height: 100%;
}
@media (hover: hover) and (pointer: fine) {
  .js--content-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=go]:hover, .js--content-nav-slide-controller[data-slide-scrolling] [data-slide-controller-action=back]:hover {
    stroke: #c00;
  }
}
.js--content-nav-slide-controller [data-slide-controller-action=back] {
  visibility: hidden;
  position: absolute;
  left: -31px;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  opacity: 0;
}
.js--content-nav-slide-controller [data-slide-controller-action=back][data-is-enabled] {
  visibility: visible;
  opacity: 1;
}

.nav-location {
  overflow-x: clip;
}
.nav-location > .inner {
  overflow: visible;
}

:where(.site-footer) .nav-location {
  display: block;
  padding: 0 15px;
  overflow-x: clip;
  border-top: none;
  background-color: #2f2f2f;
  font-size: 1.2rem;
  line-height: 1.75;
}
:where(.site-footer) .nav-location a {
  display: inline;
  color: #fff;
  text-decoration: none;
}
:where(.site-footer) .nav-location a[href]:hover, :where(.site-footer) .nav-location a[href]:focus {
  text-decoration: underline;
}
:where(.site-footer) .nav-location a:focus-visible {
  outline-color: #fff;
}
:where(.site-footer) .nav-location > .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 1200px;
  min-height: 60px;
  margin: 0 auto;
  padding: 12px 0;
  overflow: visible;
}
:where(.site-footer) .nav-location > .inner > .list {
  display: block;
  margin: 0;
}
:where(.site-footer) .nav-location > .inner > .list > li {
  display: inline;
  position: static;
  padding: 0;
}
:where(.site-footer) .nav-location > .inner > .list > li::after {
  content: none;
}
:where(.site-footer) .nav-location > .inner > .list > li a::after {
  content: "";
  display: inline-block;
  z-index: 0;
  width: 8px;
  height: 8px;
  margin-top: -0.3em;
  margin-right: 0.2em;
  margin-left: 0.5em;
  background: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjguNDQ5IiB2aWV3Qm94PSIwIDAgNC45NSA4LjQ0OSIgd2lkdGg9IjQuOTUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZmZmIj48cGF0aCBkPSJtMCAwdjYiIHRyYW5zZm9ybT0ibWF0cml4KC0uNzA3MTA2NzggLS43MDcxMDY3OCAuNzA3MTA2NzggLS43MDcxMDY3OCAuMzU0IDguMDk2KSIvPjxwYXRoIGQ9Im0wIDUuOTk5di01Ljk5OSIgdHJhbnNmb3JtPSJtYXRyaXgoLS43MDcxMDY3OCAuNzA3MTA2NzggLS43MDcxMDY3OCAtLjcwNzEwNjc4IDQuNTk2IDQuNTk2KSIvPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  vertical-align: middle;
}
:where(.site-footer) .nav-location > .inner > .list > li:last-child a {
  display: inline;
  padding-right: 0;
}
:where(.site-footer) .nav-location > .inner > .list > li:last-child a::after {
  content: none;
}
:where(.site-footer) .nav-location [aria-current=page] {
  opacity: 0.6;
}
@media screen and (min-width: 768px), print {
  :where(.site-footer) .nav-location {
    min-height: 60px;
    padding: 0 30px;
    font-size: 1.5rem;
    line-height: 1.6;
  }
  :where(.site-footer) .nav-location > .inner > .list {
    display: block;
    -ms-flex-wrap: initial;
        flex-wrap: initial;
  }
  :where(.site-footer) .nav-location > .inner > .list > li a::after {
    width: 8px;
    height: 8px;
  }
}

/*! = CommonModules/Contact */
.mod-contact {
  position: relative;
  padding: 0 20px;
  background: url("/-/media/Project/Canon/CanonJP/common/image/bg-mod-contact.jpg") no-repeat center;
  background-size: cover;
}
.mod-contact::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
}
.mod-contact__container {
  display: block;
  position: relative;
  z-index: 1;
  max-width: 1120px;
  margin: auto;
  padding: 40px 0;
}
.mod-contact__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
}
.mod-contact__subtext {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 10px;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.3;
  text-align: center;
}
.mod-contact__cards {
  display: -ms-grid;
  display: grid;
  gap: 10px;
  margin-top: 30px;
}
.mod-contact .contact-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 25px 12px 30px;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  border-radius: 6px;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
}
.mod-contact .contact-card[href] {
  text-decoration: none;
}
@media screen and (hover: hover) and (pointer: fine) and (min-width: 768px), print and (hover: hover) and (pointer: fine) {
  .mod-contact .contact-card[href]:hover {
    background-color: rgb(255, 255, 255);
  }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 767px), print and (hover: hover) and (pointer: fine) {
  .mod-contact .contact-card:hover {
    background-color: rgb(255, 255, 255);
  }
}
.mod-contact .contact-card:focus-visible {
  outline-color: #fff;
}
.mod-contact .contact-card::before {
  content: "";
  display: block;
  width: 39px;
  height: 39px;
  background: no-repeat center;
}
.mod-contact .contact-card.of-mail::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzkgMzkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzOXYzOWgtMzl6Ii8+PHBhdGggZD0ibTMzLjk1NiAxOC4ydjEzLjY0NWgtMjguODI2di0xOS43MTVoMjguODI2bC0xNC40MTMgMTEuMzctMTQuNDEzLTExLjM3IiBzdHJva2U9IiNjMDAiIHN0cm9rZS13aWR0aD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLjEyNiAtLjc2OSkiLz48L2c+PC9zdmc+");
}
.mod-contact .contact-card.of-free-dial::before, .mod-contact .contact-card.of-navi-dial::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHZpZXdCb3g9IjAgMCAzOSAzOSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDM5djM5aC0zOXoiLz48cGF0aCBkPSJtMCAwaDM5djM5aC0zOXoiLz48ZyBzdHJva2U9IiNjMDAiIHN0cm9rZS13aWR0aD0iMiI+PHBhdGggZD0ibTguODk0IDcuNDUxYy0uNzUyLjEzNy0uODgxIDEuNDg1LS44MjQgMi4wNS43NTIgMTMuNjQ1IDExLjI2IDIzLjM0NSAyNC4xOTQgMjQuMS41MjUgMCAxLjUwOC0uMDgzIDEuNTA4LS42NDkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xLjY5OSAtMS4zMjEpIi8+PHBhdGggZD0ibTIwLjIxNiAyNS4wMWMxLjczOCAxLjcyMyAzLjY1MiAzLjI1OSA1LjcxIDQuNTg0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNC4wMjcgLTUuNDIpIi8+PHBhdGggZD0ibTM3LjU2MiAyOC42MTMtNy4yNjItMS42MzMtMy4wMiAyLjk5MSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC01LjM4MSAtNS43OTgpIi8+PHBhdGggZD0ibTE4LjY4NiA4IDEuNjMzIDcuMjY3LTIuOTU5IDMuMDY0IiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2UtbWl0ZXJsaW1pdD0iNCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIuODUyIC0xLjUzMykiLz48cGF0aCBkPSJtNyA2aDkiLz48cGF0aCBkPSJtMzIgMjN2OSIvPjwvZz48L2c+PC9zdmc+");
}
.mod-contact .contact-card .hdg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #222;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
}
.mod-contact .contact-card.of-mail .hdg {
  margin-top: 8px;
}
.mod-contact .contact-card .text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 10px;
  color: #767676;
  font-size: 1.4rem;
  line-height: 1.3;
  text-align: center;
}
.mod-contact .dial-number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #222;
  font-family: "Roboto", sans-serif;
  font-size: 2.8rem;
  font-weight: 500;
  text-decoration: none;
}
.mod-contact .dial-number::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.mod-contact .trademark {
  display: block;
  width: 39px;
  height: 23px;
  margin-right: 4px;
}
@media screen and (min-width: 768px), print {
  .mod-contact {
    padding-right: 40px;
    padding-left: 40px;
  }
  .mod-contact__container {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .mod-contact__title {
    font-size: 2.8rem;
  }
  .mod-contact__subtext {
    font-size: 1.6rem;
    line-height: 1.65;
  }
  .mod-contact__cards {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: 40px;
  }
  .mod-contact .contact-card {
    padding: 25px 12px 34px;
  }
  .mod-contact .contact-card::before {
    width: 39px;
    height: 39px;
  }
  .mod-contact .contact-card.of-full {
    grid-column: 1/-1;
  }
  .mod-contact .contact-card.of-mail {
    padding: 25px 48px 34px;
  }
  .mod-contact .dial-number[href^="tel:"] {
    pointer-events: none;
  }
}

/*! = CommonModules/Notice */
.mod-notice {
  margin: 0 auto 40px;
  padding: 0 20px;
}
@media screen and (min-width: 768px), print {
  .mod-notice {
    padding: 0 40px;
  }
}
.mod-notice__inner {
  max-width: 1120px;
  margin: 0 auto;
}
.mod-notice__content {
  margin: 0 auto;
  padding: 20px;
  border: 1px solid #c00;
  border-radius: 6px;
  background-color: #c00;
}
@media screen and (min-width: 768px), print {
  .mod-notice__content {
    padding: 20px 30px;
    border-radius: 8px;
  }
}
.str-outer > .str-inner .mod-notice {
  margin-top: 0;
  padding-right: 0;
  padding-left: 0;
}
.str-outer > .str-inner .mod-notice__content {
  margin-right: auto;
  margin-left: auto;
}
.mod-notice__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
}
@media screen and (min-width: 768px), print {
  .mod-notice__body {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.mod-notice__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 10px;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
}
.mod-notice__title::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGNpcmNsZSBjeD0iMTAiIGN5PSIxMCIgZmlsbD0iI2ZmZiIgcj0iMTAiLz48ZyBmaWxsPSJub25lIiBzdHJva2U9IiNjMDAiIHN0cm9rZS13aWR0aD0iMyI+PHBhdGggZD0ibTAgLjc5MXY0LjczMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAgNC41KSIvPjxwYXRoIGQ9Im0wIDB2LjUzOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAgMTQuNSkiLz48L2c+PC9zdmc+") no-repeat center;
  background-size: contain;
}
@media screen and (min-width: 768px), print {
  .mod-notice__title {
    margin-right: 20px;
    margin-bottom: 0;
  }
}
.mod-notice__text {
  -webkit-box-flex: 2;
      -ms-flex: 2 1 auto;
          flex: 2 1 auto;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 400;
}
.mod-notice__text::after {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  z-index: 0;
  top: 0.125em;
  left: 5px;
  width: 17px;
  height: 17px;
  margin: 0;
  border-radius: 0;
  background: #fff;
  -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
          mask: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.mod-notice__link {
  display: block;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
}
@media screen and (min-width: 768px), print {
  .mod-notice__link {
    border-radius: 8px;
  }
}
.mod-notice__link .mod-notice__text::after {
  content: "";
}
.mod-notice__link:hover .mod-notice__text, .mod-notice__link:focus .mod-notice__text {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.mod-notice.of-white .mod-notice__content {
  border-color: #dbdbdb;
  background-color: #fff;
}
.mod-notice.of-white .mod-notice__title {
  color: #c00;
}
.mod-notice.of-white .mod-notice__title::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGNpcmNsZSBjeD0iMTAiIGN5PSIxMCIgZmlsbD0iI2MwMCIgcj0iMTAiLz48ZyBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMyI+PHBhdGggZD0ibTAgLjc5MXY0LjczMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAgNC41KSIvPjxwYXRoIGQ9Im0wIDB2LjUzOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAgMTQuNSkiLz48L2c+PC9zdmc+");
}
.mod-notice.of-white .mod-notice__text {
  color: #222;
}
.mod-notice.of-white .mod-notice__text::after {
  background-color: #c00;
}

.mod-tag-new {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 51px;
  min-height: 21px;
  margin: 0 0 0 12px;
  padding: 0 12px;
  -webkit-transform: translateY(-0.1em);
          transform: translateY(-0.1em);
  border-radius: 20px;
  background: #ffebeb;
  color: #c00;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  vertical-align: middle;
}
:is(.mod-hdg-al2, .mod-hdg-bl2) .mod-tag-new {
  min-width: 60px;
  min-height: 26px;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-hdg-al2, .mod-hdg-bl2) .mod-tag-new {
    min-width: 70px;
    min-height: 31px;
    font-size: 2rem;
  }
}
:is(.mod-hdg-al3, .mod-hdg-al4) .mod-tag-new {
  min-width: 56px;
  min-height: 22px;
  font-size: 1.4rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-hdg-al3, .mod-hdg-al4) .mod-tag-new {
    min-width: 60px;
    min-height: 26px;
    font-size: 1.6rem;
  }
}
:is(.mod-hdg-al5) .mod-tag-new {
  min-width: 51px;
  min-height: 19px;
  font-size: 1.2rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-hdg-al5) .mod-tag-new {
    min-width: 56px;
    min-height: 22px;
    font-size: 1.4rem;
  }
}
:is(.mod-hdg-al2, .mod-hdg-bl2, .mod-hdg-al3, .mod-hdg-al4, .mod-hdg-al5) .mod-tag-new {
  -webkit-transform: translateY(-0.2em);
          transform: translateY(-0.2em);
}
@media screen and (min-width: 768px), print {
  :is(.mod-list-description) dt .mod-tag-new {
    min-width: 56px;
    min-height: 22px;
    font-size: 1.4rem;
  }
}
:is(.mod-product-info-table__header) .mod-tag-new {
  min-width: 60px;
  min-height: 26px;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-product-info-table__header) .mod-tag-new {
    min-width: 70px;
    min-height: 31px;
    font-size: 2rem;
  }
}
:is(.mod-product-info-store__header) .mod-tag-new {
  min-width: 56px;
  min-height: 22px;
  outline: 1px solid #e6c0c0;
  font-size: 1.4rem;
}
:is(.mod-product-info-card__header) .mod-tag-new {
  min-width: 51px;
  min-height: 19px;
  outline: 1px solid #e6c0c0;
  font-size: 1.2rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-product-info-card__header) .mod-tag-new {
    min-width: 56px;
    min-height: 22px;
    font-size: 1.4rem;
  }
}
:is(.mod-product-store-card__header) .mod-tag-new {
  min-width: 60px;
  min-height: 26px;
  outline: 1px solid #e6c0c0;
  font-size: 1.6rem;
}

.mod-tag-soldout {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 51px;
  min-height: 21px;
  margin: 0 0 0 12px;
  padding: 0 12px;
  -webkit-transform: translateY(-0.1em);
          transform: translateY(-0.1em);
  border-radius: 20px;
  background: #f4f4f4;
  color: #c00;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  vertical-align: middle;
}
:is(.mod-hdg-al2, .mod-hdg-bl2) .mod-tag-soldout {
  min-width: 60px;
  min-height: 26px;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-hdg-al2, .mod-hdg-bl2) .mod-tag-soldout {
    min-width: 70px;
    min-height: 31px;
    font-size: 2rem;
  }
}
:is(.mod-hdg-al3, .mod-hdg-al4) .mod-tag-soldout {
  min-width: 56px;
  min-height: 22px;
  font-size: 1.4rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-hdg-al3, .mod-hdg-al4) .mod-tag-soldout {
    min-width: 60px;
    min-height: 26px;
    font-size: 1.6rem;
  }
}
:is(.mod-hdg-al5) .mod-tag-soldout {
  min-width: 51px;
  min-height: 19px;
  font-size: 1.2rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-hdg-al5) .mod-tag-soldout {
    min-width: 56px;
    min-height: 22px;
    font-size: 1.4rem;
  }
}
:is(.mod-hdg-al2, .mod-hdg-bl2, .mod-hdg-al3, .mod-hdg-al4, .mod-hdg-al5) .mod-tag-soldout {
  -webkit-transform: translateY(-0.2em);
          transform: translateY(-0.2em);
}
@media screen and (min-width: 768px), print {
  :is(.mod-list-description) dt .mod-tag-soldout {
    min-width: 56px;
    min-height: 22px;
    font-size: 1.4rem;
  }
}
:is(.mod-product-info-table__header) .mod-tag-soldout {
  min-width: 60px;
  min-height: 26px;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-product-info-table__header) .mod-tag-soldout {
    min-width: 70px;
    min-height: 31px;
    font-size: 2rem;
  }
}
:is(.mod-product-info-store__header) .mod-tag-soldout {
  min-width: 80px;
  min-height: 22px;
  background-color: #fff;
  color: #c00;
  font-size: 1.4rem;
}
:is(.mod-product-info-card__header) .mod-tag-soldout {
  background-color: #fff;
  color: #c00;
}
:is(.mod-product-store-card__header) .mod-tag-soldout {
  min-width: 80px;
  min-height: 22px;
  background-color: #fff;
  color: #c00;
  font-size: 1.4rem;
}

.mod-tag-limited {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 51px;
  min-height: 21px;
  margin: 0 0 0 12px;
  padding: 0 12px;
  -webkit-transform: translateY(-0.1em);
          transform: translateY(-0.1em);
  border-radius: 20px;
  background: #f4f4f4;
  color: #0c9ae5;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  vertical-align: middle;
}
:is(.mod-hdg-al2, .mod-hdg-bl2) .mod-tag-limited {
  min-width: 60px;
  min-height: 26px;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-hdg-al2, .mod-hdg-bl2) .mod-tag-limited {
    min-width: 70px;
    min-height: 31px;
    font-size: 2rem;
  }
}
:is(.mod-hdg-al3, .mod-hdg-al4) .mod-tag-limited {
  min-width: 56px;
  min-height: 22px;
  font-size: 1.4rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-hdg-al3, .mod-hdg-al4) .mod-tag-limited {
    min-width: 60px;
    min-height: 26px;
    font-size: 1.6rem;
  }
}
:is(.mod-hdg-al5) .mod-tag-limited {
  min-width: 51px;
  min-height: 19px;
  font-size: 1.2rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-hdg-al5) .mod-tag-limited {
    min-width: 56px;
    min-height: 22px;
    font-size: 1.4rem;
  }
}
:is(.mod-hdg-al2, .mod-hdg-bl2, .mod-hdg-al3, .mod-hdg-al4, .mod-hdg-al5) .mod-tag-limited {
  -webkit-transform: translateY(-0.2em);
          transform: translateY(-0.2em);
}
@media screen and (min-width: 768px), print {
  :is(.mod-list-description) dt .mod-tag-limited {
    min-width: 56px;
    min-height: 22px;
    font-size: 1.4rem;
  }
}
:is(.mod-product-info-table__header) .mod-tag-limited {
  min-width: 60px;
  min-height: 26px;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px), print {
  :is(.mod-product-info-table__header) .mod-tag-limited {
    min-width: 70px;
    min-height: 31px;
    font-size: 2rem;
  }
}
:is(.mod-product-info-store__header) .mod-tag-limited {
  min-width: 80px;
  min-height: 22px;
  background-color: #fff;
  color: #0c9ae5;
  font-size: 1.4rem;
}
:is(.mod-product-info-card__header) .mod-tag-limited {
  background-color: #fff;
  color: #0c9ae5;
}
:is(.mod-product-store-card__header) .mod-tag-limited {
  min-width: 80px;
  min-height: 22px;
  background-color: #fff;
  color: #0c9ae5;
  font-size: 1.4rem;
}

/*! = Modules/Text */
[class^=mod-txt] {
  margin-bottom: 30px;
  line-height: 1.65;
}

[class^=mod-txt] > p,
[class^=mod-txt] > pre {
  margin: 0 0 24px;
  font-family: inherit;
}
[class^=mod-txt] > p:last-child,
[class^=mod-txt] > pre:last-child {
  margin-bottom: 0;
}

[class^=mod-txt] pre {
  white-space: pre-wrap;
}

[class^=mod-txt] > p a {
  color: #0f6bff;
  text-decoration: none;
}

[class^=mod-txt] > p a[href]:hover,
[class^=mod-txt] > p a[href]:focus {
  text-decoration: underline;
}

[class^=mod-txt] > p > b.lede {
  display: block;
  margin: 0 0 60px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.65;
}

@media screen and (min-width: 768px), print {
  [class^=mod-txt] > p > b.lede {
    font-size: 1.8rem;
    line-height: 1.65;
  }
}
[class^=mod-txt] strong,
.mod-list-notice strong {
  color: #c00;
}

.pause-line {
  height: 1px;
  margin: 36px 0;
  border: none;
  background-color: #c3c3c3;
}
@media screen and (min-width: 768px), print {
  .pause-line {
    margin: 48px 0;
  }
}

/*! = Modules/Link */
.mod-link {
  margin: 0 0 30px;
}

.mod-link + .mod-hdg-al3 {
  margin-top: 0;
}

.mod-link > p {
  display: flow-root;
  overflow: visible;
}

.mod-link > p > a {
  display: block;
  position: relative;
  padding: 0 0 0 34px;
  float: left;
  color: #222;
  line-height: 1.65;
  text-decoration: none;
}

.mod-link.of-caption > p > a {
  padding-left: 28px;
  color: #767676;
  font-size: 1.4rem;
}

.mod-link > p > a::after,
.mod-link > p > a::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  margin: auto 0;
}

.mod-link > p > a::before {
  z-index: 0;
  top: 0;
  bottom: auto;
  left: 0;
  width: 17px;
  height: 26.4px;
  border-radius: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  line-height: 1.65;
}

.mod-link.of-caption > p > a {
  padding-top: 0.15em;
}

.mod-link.of-icon-file a::before {
  width: 30px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYyNGgtMzB6Ii8+PHBhdGggZD0ibS0yIDFoMjJ2MjJoLTIyeiIvPjxnIHN0cm9rZS13aWR0aD0iMS41Ij48cGF0aCBkPSJtMjMuMzUzIDEyLjYzdjguNTg0YzAgMS4wNDctLjg2MSAxLjkwOC0xLjkwOCAxLjkwOGgtOS41MzdjLTEuMDQ3IDAtMS45MDgtLjg2MS0xLjkwOC0xLjkwOHYtMTQuMzA2YzAtMS4wNDcuODYxLTEuOTA4IDEuOTA4LTEuOTA4aDYuNjc2IiBzdHJva2U9IiMyMjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC03LjIzMSAtMi4wMykiLz48cGF0aCBkPSJtMzIuNzY5IDkuNzY5aC0zLjQ2OWMtLjcxMyAwLTEuMy0uNTg3LTEuMy0xLjN2LTMuNDY5IiBzdHJva2U9IiMyMjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xNi42NDcgLTIuMDMpIi8+PHBhdGggZD0ibTI4IDVjMi42MTYgMCA0Ljc2OSAyLjE1MyA0Ljc2OSA0Ljc2OSIgc3Ryb2tlPSIjMjIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTYuNjQ3IC0yLjAzKSIvPjxwYXRoIGQ9Im0wIDBoNi42NjkiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNi4wNzggMTAuNzc4KSIvPjxwYXRoIGQ9Im0wIDBoNi42NjkiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNi4wNzggMTQuMDU1KSIvPjxwYXRoIGQ9Im0wIDBoNi42NjkiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNi4wNzggMTcuMzMyKSIvPjwvZz48L2c+PC9zdmc+");
}

.mod-link.of-icon-excel a::before {
  width: 30px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgdmlld0JveD0iMCAwIDMwIDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMzB2MjRoLTMweiIvPjxwYXRoIGQ9Im0xMyAyYzAtMS4xMDQtLjg5Ni0yLTItMmgtOWMtMS4xMDQgMC0yIC44OTYtMiAydjE0YzAgMS4xMDQuODk2IDIgMiAyaDljMS4xMDQgMCAyLS44OTYgMi0yeiIgc3Ryb2tlPSIjMDA3NzQwIiBzdHJva2Utd2lkdGg9IjEuNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMyAzKSIvPjxwYXRoIGQ9Im0wIDBoNi45MDUiIHN0cm9rZT0iIzAwNzc0MCIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIgc3Ryb2tlLXdpZHRoPSIxLjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYgMTQuNSkiLz48cGF0aCBkPSJtMCAwaDYuOTA1IiBzdHJva2U9IiMwMDc3NDAiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiIHN0cm9rZS13aWR0aD0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2IDE3LjUpIi8+PC9nPjxnIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCA1KSI+PHBhdGggZD0ibTEwLjgzMyA3LjVoLTguNjY2Yy0uOTE5IDAtMS42NjctLjY3My0xLjY2Ny0xLjV2LTRjMC0uODI3Ljc0OC0xLjUgMS42NjctMS41aDguNjY2Yy45MTkgMCAxLjY2Ny42NzMgMS42NjcgMS41djRjMCAuODI3LS43NDggMS41LTEuNjY3IDEuNXoiIGZpbGw9IiMwMDc3NDAiLz48cGF0aCBkPSJtMi4xNjcgMWMtLjY0NCAwLTEuMTY3LjQ0OS0xLjE2NyAxdjRjMCAuNTUxLjUyMyAxIDEuMTY3IDFoOC42NjZjLjY0NCAwIDEuMTY3LS40NDkgMS4xNjctMXYtNGMwLS41NTEtLjUyMy0xLTEuMTY3LTF6bTAtMWg4LjY2NmMxLjE5NyAwIDIuMTY3Ljg5NSAyLjE2NyAydjRjMCAxLjEwNS0uOTcgMi0yLjE2NyAyaC04LjY2NmMtMS4xOTcgMC0yLjE2Ny0uODk1LTIuMTY3LTJ2LTRjMC0xLjEwNS45Ny0yIDIuMTY3LTJ6IiBmaWxsPSIjZmZmIi8+PC9nPjxwYXRoIGQ9Im0uMDQ4IDBoLjc2NGwuMjU2LS41OGMuMDY4LS4xNTYuMTMyLS4zMTIuMi0uNWguMDE2Yy4wOC4xODQuMTQ4LjM0LjIyLjVsLjI4LjU4aC44bC0uODI0LTEuNS43NjgtMS40NzZoLS43NTZsLS4yMTYuNTMyYy0uMDYuMTQtLjEyNC4zLS4xOTIuNDg4aC0uMDE2Yy0uMDg0LS4xOTItLjE1Mi0uMzQ4LS4yMTYtLjQ4OGwtLjI0LS41MzJoLS43OTJsLjc2OCAxLjQ0NHptMy4xMjQgMGgxLjg3MnYtLjZoLTEuMTU2di0yLjM3NmgtLjcxNnptMy4zOC4wNTZjLjA0Ni4wMDYuMDkyLjAxLjEzOC4wMS41MjYgMCAuOTY3LS40MTYuOTk4LS45NDIuMDEyLS4zNzMtLjIzLS43MS0uNTg4LS44MTZsLS4zNzItLjE0OGMtLjI2NC0uMS0uNDUyLS4xNjgtLjQ1Mi0uMzMycy4xMzYtLjI0OC4zNTYtLjI0OGMuMjI0LjAwMy40NDEuMDgzLjYxMi4yMjhsLjM1Ni0uNDQ4Yy0uMjU5LS4yNTItLjYwNy0uMzkzLS45NjgtLjM5Mi0uMDM0LS4wMDQtLjA2OS0uMDA2LS4xMDQtLjAwNi0uNTA5IDAtLjkzOC4zOTgtLjk3Ni45MDYuMDA1LjM3MS4yNDcuNy42LjgxNmwuMzguMTZjLjI1Ni4xMDguNDIuMTY0LjQyLjMzNnMtLjEyNC4yNi0uMzg4LjI2Yy0uMjY4LS4wMTYtLjUyMy0uMTIyLS43MjQtLjNsLS40LjQ5MmMuMzA2LjI3My43MDIuNDI0IDEuMTEyLjQyNHoiIGZpbGw9IiNmZmYiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMi42MzEgMTAuNSkiLz48L3N2Zz4=");
}

.mod-link.of-icon-pdf a::before {
  width: 30px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgdmlld0JveD0iMCAwIDMwIDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMzB2MjRoLTMweiIvPjxwYXRoIGQ9Im0xMyAyYzAtMS4xMDQtLjg5Ni0yLTItMmgtOWMtMS4xMDQgMC0yIC44OTYtMiAydjE0YzAgMS4xMDQuODk2IDIgMiAyaDljMS4xMDQgMCAyLS44OTYgMi0yeiIgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjEuNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMyAzKSIvPjxwYXRoIGQ9Im0wIDBoNi45MDUiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIgc3Ryb2tlLXdpZHRoPSIxLjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYgMTQuNSkiLz48cGF0aCBkPSJtMCAwaDYuOTA1IiBzdHJva2U9IiNjMDAiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiIHN0cm9rZS13aWR0aD0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2IDE3LjUpIi8+PC9nPjxnIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCA1KSI+PHBhdGggZD0ibTEwLjgzMyA3LjVoLTguNjY2Yy0uOTE5IDAtMS42NjctLjY3My0xLjY2Ny0xLjV2LTRjMC0uODI3Ljc0OC0xLjUgMS42NjctMS41aDguNjY2Yy45MTkgMCAxLjY2Ny42NzMgMS42NjcgMS41djRjMCAuODI3LS43NDggMS41LTEuNjY3IDEuNXoiIGZpbGw9IiNjMDAiLz48cGF0aCBkPSJtMi4xNjcgMWMtLjY0NCAwLTEuMTY3LjQ0OS0xLjE2NyAxdjRjMCAuNTUxLjUyMyAxIDEuMTY3IDFoOC42NjZjLjY0NCAwIDEuMTY3LS40NDkgMS4xNjctMXYtNGMwLS41NTEtLjUyMy0xLTEuMTY3LTF6bTAtMWg4LjY2NmMxLjE5NyAwIDIuMTY3Ljg5NSAyLjE2NyAydjRjMCAxLjEwNS0uOTcgMi0yLjE2NyAyaC04LjY2NmMtMS4xOTcgMC0yLjE2Ny0uODk1LTIuMTY3LTJ2LTRjMC0xLjEwNS45Ny0yIDIuMTY3LTJ6IiBmaWxsPSIjZmZmIi8+PC9nPjxwYXRoIGQ9Im0uMzY0IDBoLjU5MnYtMS4wNTJoLjRjLjYzNiAwIDEuMTQ0LS4zIDEuMTQ0LS45OCAwLS43LS41LS45MjgtMS4xNi0uOTI4aC0uOTc2em0uNTkyLTEuNTJ2LS45NzJoLjMzNmMuNDA4IDAgLjYyNC4xMTYuNjI0LjQ2cy0uMi41MTItLjYuNTEyem0yLjA3NiAxLjUyaC44NDRjLjAzOS4wMDMuMDc3LjAwNS4xMTYuMDA1LjcyOCAwIDEuMzI3LS41OTkgMS4zMjctMS4zMjcgMC0uMDU3LS4wMDQtLjExNC0uMDExLS4xNy4wMDctLjA1NC4wMS0uMTA4LjAxLS4xNjIgMC0uNzIxLS41OTQtMS4zMTYtMS4zMTYtMS4zMTYtLjA1MyAwLS4xMDYuMDA0LS4xNTguMDFoLS44MTJ6bS41OTItLjQ3NnYtMi4wMTJoLjE4NGMuNTUyIDAgLjkuMjcyLjkgMXMtLjM0OCAxLjAxMi0uOSAxLjAxMnptMi4yNjQuNDc2aC41OTJ2LTEuMmgxLjA1MnYtLjVoLTEuMDUydi0uNzcyaDEuMjMydi0uNDg4aC0xLjgyNHoiIGZpbGw9IiNmZmYiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMi40NjIgMTAuNSkiLz48L3N2Zz4=");
}

.mod-link.of-icon-zip a::before {
  width: 30px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAzMCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMCAwaDMwdjI0aC0zMHoiIGZpbGw9Im5vbmUiLz48ZyBmaWxsPSIjMjIyIiBmaWxsLXJ1bGU9Im5vbnplcm8iPjxwYXRoIGQ9Im0xMC45MjkgMGgtMTAuMDQ4Yy0uNDg0IDAtLjg4Mi4zOTgtLjg4Mi44ODIgMCAuNDgzLjM5OC44ODEuODgyLjg4MWg3LjkxOWwtMi43MjUgMi43MjVjLS4xNjUuMTY1LS4yNTguMzktLjI1OC42MjMgMCAuNDg0LjM5OC44ODIuODgyLjg4Mi4yMzMgMCAuNDU4LS4wOTMuNjIzLS4yNThsNC4yMzEtNC4yMzVjLjE2My0uMTY1LjI1NC0uMzg3LjI1NC0uNjE5IDAtLjQ4Mi0uMzk2LS44NzktLjg3OC0uODgxeiIgdHJhbnNmb3JtPSJtYXRyaXgoMCAxIC0xIDAgMTAuMzczIDMuOTQpIi8+PHBhdGggZD0ibS44ODEgMGMtLjQ4Mi4wMDItLjg3Ny4zOTktLjg3Ny44ODEgMCAuMjMyLjA5MS40NTQuMjU0LjYxOWw0LjIzMSA0LjIzYy4xNjIuMTQ4LjM3NC4yMy41OTQuMjMuNDgzIDAgLjg4MS0uMzk3Ljg4MS0uODgxIDAtLjIxOC0uMDgxLS40MjktLjIyOC0uNTkxbC00LjIzNi00LjIzYy0uMTY0LS4xNjQtLjM4Ny0uMjU3LS42MTktLjI1OHoiIHRyYW5zZm9ybT0ibWF0cml4KDAgMSAtMSAwIDE0LjYwMyA5Ljc1NykiLz48cGF0aCBkPSJtLTMzNTkuNjMgOTE1NC45MmgtMTcuMjNjLS40OSAwLS44OC0uNC0uODgtLjg5di01Ljg3YzAtLjQ4LjM5LS44OC44OC0uODguNDggMCAuODguNC44OC44OHY0Ljk5aDE1LjQ3di00Ljk5YzAtLjQ4LjQtLjg4Ljg4LS44OHMuODguNC44OC44OHY1Ljg3YzAgLjQ5LS40Ljg5LS44OC44OXoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMzNzcuNzQyIC05MTM0Ljg2MikiLz48L2c+PC9zdmc+");
}

.mod-link > p > a::after {
  content: none;
}

.mod-link[class*=text-align-] p {
  display: inline-block;
}

.mod-link[class*=text-align-] p::after {
  content: "";
  display: block;
  clear: both;
}

@media (hover: hover) and (pointer: fine) {
  .mod-link > p > a[href]:focus,
  .mod-link > p > a[href]:hover {
    text-decoration: underline;
  }
}
@media screen and (hover: hover) and (pointer: fine) and (min-width: 768px), print and (hover: hover) and (pointer: fine) {
  .mod-link > p > a[href]:focus,
  .mod-link > p > a[href]:hover {
    text-decoration: underline;
  }
}
.mod-link-list:not(.var-03) {
  display: flow-root;
  margin: 0 0 30px;
  padding: 0;
  overflow: visible;
}

.mod-link-list:not(.var-03) .list {
  margin-top: -16px;
  margin-left: -16px;
  letter-spacing: normal;
}

.mod-link-list:not(.var-03) > .list > li {
  position: relative;
  padding-top: 16px;
  padding-left: 16px;
}

.mod-link-list:not(.var-03) > .list > li::before {
  content: none;
}

.mod-link-list:not(.var-03) > .list > li > a {
  display: block;
  position: relative;
  padding: 0 0 0 34px;
  float: none;
  color: #222;
  line-height: 1.65;
  text-decoration: none;
}

.mod-link-list:not(.var-03) > .list > li > a::after,
.mod-link-list:not(.var-03) > .list > li > a::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  margin: auto 0;
}

.mod-link-list:not(.var-03) > .list > li > a::after {
  content: none;
}

.mod-link-list:not(.var-03) > .list > li > a::before {
  z-index: 0;
  top: 0;
  bottom: auto;
  left: 0;
  width: 17px;
  height: 26.4px;
  border-radius: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  line-height: 1.65;
}

.mod-link-list[data-col]:not(.var-03) .list {
  display: -ms-grid;
  display: grid;
  grid-auto-flow: column;
  -ms-grid-rows: (auto)[3];
  grid-template-rows: repeat(3, auto);
}

.mod-link-list[data-col].of-row-6:not(.var-03) .list {
  -ms-grid-rows: (auto)[6];
  grid-template-rows: repeat(6, auto);
}

.mod-link-list[data-col].of-row-12:not(.var-03) .list {
  -ms-grid-rows: (auto)[12];
  grid-template-rows: repeat(12, auto);
}

.mod-link-list[data-col=auto]:not(.var-03) .list,
.mod-link-list[data-col=auto].of-row-6:not(.var-03) .list,
.mod-link-list[data-col=auto].of-row-12:not(.var-03) .list {
  display: block;
  -ms-grid-rows: auto;
  grid-template-rows: auto;
}

.mod-link-list[data-col="1"]:not(.var-03) .list {
  -ms-grid-columns: (1fr)[1];
  grid-template-columns: repeat(1, 1fr);
}

.mod-link-list[data-col="2"]:not(.var-03) .list {
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
}

.mod-link-list[data-col="3"]:not(.var-03) .list {
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
}

.mod-link-list[data-col="4"]:not(.var-03) .list {
  -ms-grid-columns: (1fr)[4];
  grid-template-columns: repeat(4, 1fr);
}

.mod-link-list[data-col="5"]:not(.var-03) .list {
  -ms-grid-columns: (1fr)[5];
  grid-template-columns: repeat(5, 1fr);
}

.mod-link-list[data-col="6"]:not(.var-03) .list {
  -ms-grid-columns: (1fr)[6];
  grid-template-columns: repeat(6, 1fr);
}

.mod-link-list[data-col]:not(.var-03) .list > li {
  padding-right: 0;
}

.mod-link-list[data-col="1"]:not(.var-03) .list > li {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  min-width: auto;
  max-width: none;
}

.mod-link-list[data-col="2"]:not(.var-03) .list > li {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  min-width: auto;
  max-width: none;
}

.mod-link-list[data-col="3"]:not(.var-03) .list > li {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  min-width: auto;
  max-width: none;
}

.mod-link-list[data-col="4"]:not(.var-03) .list > li {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  min-width: auto;
  max-width: none;
}

.mod-link-list[data-col="5"]:not(.var-03) .list > li {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  min-width: auto;
  max-width: none;
}

.mod-link-list[data-col="6"]:not(.var-03) .list > li {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  min-width: auto;
  max-width: none;
}

.mod-link-list[data-col=auto]:not(.var-03) .list > li {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  min-width: auto;
  max-width: none;
}

@media screen and (min-width: 768px), print {
  .mod-link-list:not(.var-03) {
    margin: 0 0 30px;
  }
  .mod-link-list:not(.var-03) .list {
    margin-top: -16px;
    margin-left: -16px;
  }
  .mod-link-list:not(.var-03) > .list > li {
    padding-top: 16px;
    padding-left: 16px;
  }
  .mod-link-list:not(.var-03) > .list > li > a {
    width: auto;
    padding: 0 0 0 34px;
    border: 0;
  }
  .mod-link-list[data-col-wide]:not(.var-03) .list {
    display: -ms-grid;
    display: grid;
    grid-auto-flow: column;
    -ms-grid-rows: (auto)[3];
    grid-template-rows: repeat(3, auto);
  }
  .mod-link-list[data-col-wide].of-row-6:not(.var-03) .list {
    -ms-grid-rows: (auto)[6];
    grid-template-rows: repeat(6, auto);
  }
  .mod-link-list[data-col-wide].of-row-12:not(.var-03) .list {
    -ms-grid-rows: (auto)[12];
    grid-template-rows: repeat(12, auto);
  }
  .mod-link-list[data-col-wide=auto]:not(.var-03) .list,
  .mod-link-list[data-col-wide=auto].of-row-6:not(.var-03) .list,
  .mod-link-list[data-col-wide=auto].of-row-12:not(.var-03) .list {
    display: block;
    -ms-grid-rows: auto;
    grid-template-rows: auto;
  }
  .mod-link-list[data-col-wide="1"]:not(.var-03) .list {
    -ms-grid-columns: (1fr)[1];
    grid-template-columns: repeat(1, 1fr);
  }
  .mod-link-list[data-col-wide="2"]:not(.var-03) .list {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
  .mod-link-list[data-col-wide="3"]:not(.var-03) .list {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
  }
  .mod-link-list[data-col-wide="4"]:not(.var-03) .list {
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr);
  }
  .mod-link-list[data-col-wide="5"]:not(.var-03) .list {
    -ms-grid-columns: (1fr)[5];
    grid-template-columns: repeat(5, 1fr);
  }
  .mod-link-list[data-col-wide="6"]:not(.var-03) .list {
    -ms-grid-columns: (1fr)[6];
    grid-template-columns: repeat(6, 1fr);
  }
  .mod-link-list[data-col-wide="1"]:not(.var-03) .list > li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    min-width: auto;
    max-width: none;
  }
  .mod-link-list[data-col-wide="2"]:not(.var-03) .list > li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    min-width: auto;
    max-width: none;
  }
  .mod-link-list[data-col-wide="3"]:not(.var-03) .list > li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    min-width: auto;
    max-width: none;
  }
  .mod-link-list[data-col-wide="4"]:not(.var-03) .list > li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    min-width: auto;
    max-width: none;
  }
  .mod-link-list[data-col-wide="5"]:not(.var-03) .list > li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    min-width: auto;
    max-width: none;
  }
  .mod-link-list[data-col-wide="6"]:not(.var-03) .list > li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    min-width: auto;
    max-width: none;
  }
  .mod-link-list[data-col-wide=auto]:not(.var-03) .list > li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    min-width: auto;
    max-width: none;
  }
}
.mod-link-list > .list > li + li {
  margin-top: 0;
}

.mod-link-list > .list > li:not(:first-child) > a {
  border-top: 0;
}

@media screen and (min-width: 768px), print {
  .mod-link-list.of-horizontal-wide {
    max-width: initial;
    margin: 0 0 30px;
  }
  .mod-link-list.of-horizontal-wide > .list {
    margin-top: -16px;
    margin-left: -16px;
  }
  .mod-link-list.of-horizontal-wide > .list > li {
    margin-right: 12px;
    padding-top: 16px;
    padding-left: 16px;
  }
  .mod-link-list.of-horizontal-wide > .list > li::before {
    left: 0;
    height: auto;
    border-left: none;
  }
}
@media (hover: hover) and (pointer: fine) {
  .mod-link-list > .list > li > a[href]:focus,
  .mod-link-list > .list > li > a[href]:hover {
    text-decoration: underline;
  }
}
@media screen and (hover: hover) and (pointer: fine) and (min-width: 768px), print and (hover: hover) and (pointer: fine) {
  .mod-link-list > .list > li > a[href]:focus,
  .mod-link-list > .list > li > a[href]:hover {
    text-decoration: underline;
  }
}
.mod-link-anchorList {
  margin: 0 0 60px;
  padding: 20px;
  border: 1px solid #dbdbdb;
  border-width: 1px;
  border-radius: 8px;
}

.mod-link-anchorList > .list {
  padding: 0;
}

.mod-link-anchorList > .list > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 0;
}

.mod-link-anchorList > .list > li + li {
  margin-top: 8px;
}

.mod-link-anchorList > .list > li > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 0 0 34px;
  float: left;
  color: #222;
  line-height: 1.65;
  text-decoration: none;
}

.mod-link-anchorList > .list > li > a::after,
.mod-link-anchorList > .list > li > a::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  margin: auto 0;
}

.mod-link-anchorList > .list > li > a::before {
  z-index: 0;
  top: 0;
  bottom: auto;
  left: 0;
  width: 17px;
  height: 26.4px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  border-radius: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  line-height: 1.65;
}

.mod-link-anchorList.of-arrow-up > .list > li > a::before {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

.mod-link-anchorList > .list > li > a::after {
  content: none;
}

@media screen and (min-width: 768px), print {
  .mod-link-anchorList {
    padding: 30px 40px;
    overflow: hidden;
    border-width: 1px;
  }
  .mod-link-anchorList > .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: -10px;
    margin-left: -20px;
  }
  .mod-link-anchorList > .list > li {
    position: relative;
    padding-top: 10px;
    padding-left: 20px;
  }
  .mod-link-anchorList > .list > li:nth-child(n+2)::before {
    content: none;
  }
  .mod-link-anchorList[data-col="2"] > .list > li {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-link-anchorList[data-col="3"] > .list > li {
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%;
    min-width: 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .mod-link-anchorList > .list > li + li {
    margin-top: 0;
  }
  .mod-link-anchorList > .list > li > a[href]:focus,
  .mod-link-anchorList > .list > li > a[href]:hover {
    text-decoration: underline;
  }
}
/*! = Modules/Button */
.mod-btn {
  margin: 0 0 40px;
  overflow: visible;
}

.mod-btn a,
.mod-btn button[type] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 220px;
  max-width: 100%;
  height: auto;
  min-height: 60px;
  margin: 20px 0 0 20px;
  padding: 14px 18px;
  overflow: hidden;
  -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  color: #222;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
}

.mod-btn a[href]:focus,
.mod-btn a[href]:hover,
.mod-btn button[type]:not(:disabled):focus,
.mod-btn button[type]:not(:disabled):hover {
  background-color: #f4f4f4;
}

.mod-btn .btn.of-arrow-right a,
.mod-btn .btn.of-arrow-right button[type] {
  padding: 14px 40px 14px 18px;
}

.mod-btn .btn.of-arrow-left a,
.mod-btn .btn.of-arrow-left button[type] {
  padding: 14px 18px 14px 40px;
}

.mod-btn a::before,
.mod-btn button[type]::before,
.mod-btn a::after,
.mod-btn button[type]::after {
  content: none;
}

.mod-btn .btn.of-arrow-right a::after,
.mod-btn .btn.of-arrow-right button[type]::after,
.mod-btn .btn.of-arrow-left a::after,
.mod-btn .btn.of-arrow-left button[type]::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  width: 17px;
  height: 17px;
  margin: auto 0;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border: none;
  background-color: #c00;
  -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center center;
          mask: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center center;
}

.mod-btn .btn.of-arrow-right a::after,
.mod-btn .btn.of-arrow-right button[type]::after {
  right: 16px;
  left: auto;
}

.mod-btn .btn.of-arrow-left a::after,
.mod-btn .btn.of-arrow-left button[type]::after {
  right: auto;
  left: 16px;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.mod-btn.var-02 a,
.mod-btn.var-02 button {
  border-color: #dbdbdb;
  background: #fff;
  color: #222;
}

.mod-btn.var-02 a[href]:focus,
.mod-btn.var-02 a[href]:hover,
.mod-btn.var-02 button[type]:not(:disabled):focus,
.mod-btn.var-02 button[type]:not(:disabled):hover,
.mod-btn .btn.var-02 a[href]:focus,
.mod-btn .btn.var-02 a[href]:hover,
.mod-btn .btn.var-02 button[type]:not(:disabled):focus,
.mod-btn .btn.var-02 button[type]:not(:disabled):hover {
  background-color: #f4f4f4;
}

.mod-btn.var-02 .btn.of-arrow-right a::before,
.mod-btn.var-02 .btn.of-arrow-right button[type]::before,
.mod-btn.var-02 .btn.of-arrow-left a::before,
.mod-btn.var-02 .btn.of-arrow-left button[type]::before,
.mod-btn .btn.var-02.of-arrow-right a::before,
.mod-btn .btn.var-02.of-arrow-right button[type]::before,
.mod-btn .btn.var-02.of-arrow-left a::before,
.mod-btn .btn.var-02.of-arrow-left button[type]::before {
  background-color: #c00;
}

.mod-btn.var-02 .btn.of-arrow-right a::after,
.mod-btn.var-02 .btn.of-arrow-right button[type]::after,
.mod-btn.var-02 .btn.of-arrow-left a::after,
.mod-btn.var-02 .btn.of-arrow-left button[type]::after,
.mod-btn .btn.var-02.of-arrow-right a::after,
.mod-btn .btn.var-02.of-arrow-right button[type]::after,
.mod-btn .btn.var-02.of-arrow-left a::after,
.mod-btn .btn.var-02.of-arrow-left button[type]::after {
  background-color: #c00;
}

.mod-btn.var-03 a,
.mod-btn.var-03 button,
.mod-btn .btn.var-03 a,
.mod-btn .btn.var-03 button {
  border: 1px solid #222;
  background-color: #222;
  color: #fff;
}

.mod-btn.var-03 a[href]:focus,
.mod-btn.var-03 a[href]:hover,
.mod-btn.var-03 button[type]:not(:disabled):focus,
.mod-btn.var-03 button[type]:not(:disabled):hover,
.mod-btn .btn.var-03 a[href]:focus,
.mod-btn .btn.var-03 a[href]:hover,
.mod-btn .btn.var-03 button[type]:not(:disabled):focus,
.mod-btn .btn.var-03 button[type]:not(:disabled):hover {
  border-color: #222;
  background-color: #fff;
  color: #222;
}

.mod-btn.var-03 .btn.of-arrow-right a::after,
.mod-btn.var-03 .btn.of-arrow-right button[type]::after,
.mod-btn.var-03 .btn.of-arrow-left a::after,
.mod-btn.var-03 .btn.of-arrow-left button[type]::after,
.mod-btn .btn.var-03.of-arrow-right a::after,
.mod-btn .btn.var-03.of-arrow-right button[type]::after,
.mod-btn .btn.var-03.of-arrow-left a::after,
.mod-btn .btn.var-03.of-arrow-left button[type]::after {
  background-color: #fff;
}

.mod-btn.var-03 a[href]:focus::after,
.mod-btn.var-03 a[href]:hover::after,
.mod-btn.var-03 button[type]:not(:disabled):focus::after,
.mod-btn.var-03 button[type]:not(:disabled):hover::after,
.mod-btn .var-03 a[href]:focus::after,
.mod-btn .var-03 a[href]:hover::after,
.mod-btn .var-03 button[type]:not(:disabled):focus::after,
.mod-btn .var-03 button[type]:not(:disabled):hover::after {
  background-color: #c00;
}

.mod-btn.var-04 a,
.mod-btn.var-04 button,
.mod-btn .btn.var-04 a,
.mod-btn .btn.var-04 button {
  border: 1px solid #c00;
  border-color: #c00;
  background-color: #c00;
  color: #fff;
}

.mod-btn.var-04 a[href]:focus,
.mod-btn.var-04 a[href]:hover,
.mod-btn.var-04 button[type]:not(:disabled):focus,
.mod-btn.var-04 button[type]:not(:disabled):hover,
.mod-btn .btn.var-04 a[href]:focus,
.mod-btn .btn.var-04 a[href]:hover,
.mod-btn .btn.var-04 button[type]:not(:disabled):focus,
.mod-btn .btn.var-04 button[type]:not(:disabled):hover {
  border-color: #c00;
  background-color: #fff;
  color: #c00;
}

.mod-btn.var-04 .btn.of-arrow-right a::after,
.mod-btn.var-04 .btn.of-arrow-right button[type]::after,
.mod-btn.var-04 .btn.of-arrow-left a::after,
.mod-btn.var-04 .btn.of-arrow-left button[type]::after,
.mod-btn .btn.var-04.of-arrow-right a::after,
.mod-btn .btn.var-04.of-arrow-right button[type]::after,
.mod-btn .btn.var-04.of-arrow-left a::after,
.mod-btn .btn.var-04.of-arrow-left button[type]::after {
  background-color: #fff;
}

.mod-btn.var-04 a[href]:focus::after,
.mod-btn.var-04 a[href]:hover::after,
.mod-btn.var-04 button[type]:not(:disabled):focus::after,
.mod-btn.var-04 button[type]:not(:disabled):hover::after,
.mod-btn .var-04 a[href]:focus::after,
.mod-btn .var-04 a[href]:hover::after,
.mod-btn .var-04 button[type]:not(:disabled):focus::after,
.mod-btn .var-04 button[type]:not(:disabled):hover::after {
  background-color: #c00;
}

[class*=mod-btn].var-04 a::before,
[class*=mod-btn] .var-04 a::before,
[class*=mod-btn].var-04 .btn .icon::before,
[class*=mod-btn] .var-04.btn .icon::before,
[class*=mod-btn].var-04 button::before,
[class*=mod-btn] .var-04 button::before {
  background-color: #fff;
}

[class*=mod-btn].var-04 a::after,
[class*=mod-btn] .var-04 a::after,
[class*=mod-btn].var-04 .btn .icon::after,
[class*=mod-btn] .var-04.btn .icon::after,
[class*=mod-btn].var-04 button::after,
[class*=mod-btn] .var-04 button::after {
  border: none;
}

[class*=mod-btn].align-center .inner,
[class*=mod-btn].align-center-wide .inner {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

[class*=mod-btn][class*=align-center] .back,
[class*=mod-btn][class*=align-center] .next {
  margin: 5px 15px;
}

.mod-btn > .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: -20px;
  margin-left: -20px;
}

.mod-btn > .inner > .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0;
  letter-spacing: normal;
}

.mod-btn > .inner > .btn.search a,
.mod-btn > .inner > .btn.logoin a {
  min-width: 300px;
  padding: 14px 13px;
  background-color: #c00;
  color: #fff;
  font-weight: normal;
}

.mod-btn > .inner > .btn.search a::before {
  content: none;
}

.mod-btn > .inner > .btn.search a::after {
  content: none;
}

.mod-btn > .inner > .btn.of-noFixWidth a,
.mod-btn > .inner > .btn.of-noFixWidth button {
  width: auto;
}

/* Button Single column - base */
.of-full .mod-btn .of-single {
  margin-right: 6px;
  margin-left: 6px;
}

.mod-btn .of-single {
  display: block;
  margin-top: 0;
}

.mod-btn .of-single .btn {
  margin-right: auto;
  margin-left: auto;
  padding-top: 10px;
}

@media screen and (min-width: 768px), print {
  .mod-btn a[href],
  .mod-btn button[type]:not(:disabled) {
    -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
    transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  }
  .mod-btn.align-left-wide > .inner {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .mod-btn.align-right-wide > .inner {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .mod-btn:not([data-col-wide]).align-right-wide > .inner > .btn {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .mod-btn:not([data-col-wide]).align-left-wide > .inner > .btn {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .mod-btn > .inner > .btn.of-noFixWidth a,
  .mod-btn > .inner > .btn.of-noFixWidth button,
  .mod-btn > .inner > .btn.of-noFixWidth-middle a,
  .mod-btn > .inner > .btn.of-noFixWidth-middle button,
  .mod-btn > .inner > .btn.of-noFixWidth-wide a,
  .mod-btn > .inner > .btn.of-noFixWidth-wide button {
    width: auto;
  }
  .mod-btn.var-02 a[href]:focus,
  .mod-btn.var-02 a[href]:hover,
  .mod-btn.var-02 button[type]:not(:disabled):focus,
  .mod-btn.var-02 button[type]:not(:disabled):hover {
    background: #f4f4f4;
    color: #222;
  }
  .mod-btn.var-03 a[href]:focus,
  .mod-btn.var-03 a[href]:hover,
  .mod-btn.var-03 button[type]:not(:disabled):focus,
  .mod-btn.var-03 button[type]:not(:disabled):hover {
    background: #fff;
    color: #222;
  }
  [class*=mod-btn].var-04 a[href]:focus,
  [class*=mod-btn] .var-04 a[href]:focus,
  [class*=mod-btn].var-04 a[href]:hover,
  [class*=mod-btn] .var-04 a[href]:hover,
  [class*=mod-btn].var-04 input:focus,
  [class*=mod-btn] .var-04 input:focus,
  [class*=mod-btn].var-04 input:hover,
  [class*=mod-btn] .var-04 input:hover,
  [class*=mod-btn].var-04 button[type]:not(:disabled):focus,
  [class*=mod-btn] .var-04 button[type]:not(:disabled):focus,
  [class*=mod-btn].var-04 button[type]:not(:disabled):hover,
  [class*=mod-btn] .var-04 button[type]:not(:disabled):hover {
    border-color: #c00;
    background: #fff;
    color: #c00;
  }
  [class*=mod-btn][class*=align-center] .back,
  [class*=mod-btn][class*=align-center] .next {
    margin: 5px 10px;
  }
  .mod-btn + .mod-pnl {
    margin-top: 40px;
  }
  .mod-btn + .mod-box-02 {
    margin-top: 80px;
  }
  .mod-btn.align-left .of-single .btn {
    margin-right: auto;
    margin-left: inherit;
  }
  .mod-btn.align-right .of-single .btn {
    margin-right: inherit;
    margin-left: auto;
  }
}
/* Button BreakPoints - base */
.mod-btn > .inner > .btn.of-noFixWidth a,
.mod-btn > .inner > .btn.of-noFixWidth button {
  width: auto;
}

.mod-btn[data-col] > .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.mod-btn[data-col]:not([data-col=auto]) > .inner > .btn > a,
.mod-btn[data-col]:not([data-col=auto]) > .inner > .btn > button {
  width: 100%;
}

.mod-btn:not([data-col]).align-right > .inner > .btn {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}

.mod-btn:not([data-col]).align-left > .inner > .btn {
  -webkit-box-pack: start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.mod-btn[data-col="1"] > .inner a,
.mod-btn[data-col="1"] > .inner button[type] {
  width: 100%;
}

[class*=mod-btn][data-col=auto] > .inner > .btn {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-btn[data-col="1"] > .inner > .btn {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  min-width: 100%;
  max-width: 100%;
}

.mod-btn[data-col="2"] > .inner > .btn {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-btn[data-col="3"] > .inner > .btn {
  -ms-flex-preferred-size: 33.3333%;
      flex-basis: 33.3333%;
  min-width: 33.3333%;
  max-width: 33.3333%;
}

.mod-btn[data-col="4"] > .inner > .btn {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-btn[data-col="5"] > .inner > .btn {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-btn[data-col="6"] > .inner > .btn {
  -ms-flex-preferred-size: 16.6667%;
      flex-basis: 16.6667%;
  min-width: 16.6667%;
  max-width: 16.6667%;
}

@media screen and (min-width: 768px), print {
  .mod-btn > .inner > .btn.of-noFixWidth a,
  .mod-btn > .inner > .btn.of-noFixWidth button,
  .mod-btn > .inner > .btn.of-noFixWidth-middle a,
  .mod-btn > .inner > .btn.of-noFixWidth-middle button,
  .mod-btn > .inner > .btn.of-noFixWidth-wide a,
  .mod-btn > .inner > .btn.of-noFixWidth-wide button {
    width: auto;
  }
  .mod-btn[data-col-wide=auto] > .inner > .btn {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-btn[data-col-wide="1"] > .inner > .btn {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    min-width: 100%;
    max-width: 100%;
  }
  .mod-btn[data-col-wide="2"] > .inner > .btn {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-btn[data-col-wide="3"] > .inner > .btn {
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    min-width: 33.3333%;
    max-width: 33.3333%;
  }
  .mod-btn[data-col-wide="4"] > .inner > .btn {
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-btn[data-col-wide="5"] > .inner > .btn {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-btn[data-col-wide="6"] > .inner > .btn {
    -ms-flex-preferred-size: 16.6667%;
        flex-basis: 16.6667%;
    min-width: 16.6667%;
    max-width: 16.6667%;
  }
  .mod-btn[data-col-wide]:not([data-col-wide=auto]) > .inner > .btn a,
  .mod-btn[data-col-wide]:not([data-col-wide=auto]) > .inner > .btn button {
    width: 100%;
  }
  .mod-btn[data-col-wide][data-col-wide=auto] > .inner > .btn a,
  .mod-btn[data-col-wide][data-col-wide=auto] > .inner > .btn button {
    min-width: 220px;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-btn > .inner {
    margin-top: -26px;
    margin-left: -26px;
  }
  .mod-btn a,
  .mod-btn button[type] {
    margin: 26px 0 0 26px;
  }
}
[class*=mod-btn] a:not([href]):not([role=button]),
[class*=mod-btn] a[role=button][aria-disabled=true],
[class*=mod-btn] button:disabled {
  opacity: 0.4;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

[class*=mod-btn] > .inner > .btn.of-shop a,
[class*=mod-btn] > .inner > .btn.of-shop button[type] {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  padding-right: 18px;
  padding-left: 18px;
}

[class*=mod-btn] > .inner > .btn.of-shop a::after,
[class*=mod-btn] > .inner > .btn.of-shop button[type]::after {
  content: none;
}

[class*=mod-btn] > .inner > .btn.of-shop a::before,
[class*=mod-btn] > .inner > .btn.of-shop button[type]::before {
  content: "";
  display: block;
  position: static;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 30px;
  height: 30px;
  margin-right: 10px;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border: 0;
  background: no-repeat center;
  background-color: #222;
  -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgdmlld0JveD0iMCAwIDMwIDMwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMzB2MzBoLTMweiIvPjxnIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMSAyaDE2bDIgMTNoLTIweiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNiA5Ljk2OSkiLz48cGF0aCBkPSJtLTExNjI2LjMtMzQ0OC4zYzAtLjAxLS4xLTQuNjMgNC40LTQuNjMgNC42IDAgNC4zIDQuNjMgNC4zIDQuNjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTE2MzcgMzQ1Ny40NCkiLz48L2c+PC9nPjwvc3ZnPg==") no-repeat center;
          mask: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgdmlld0JveD0iMCAwIDMwIDMwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMzB2MzBoLTMweiIvPjxnIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMSAyaDE2bDIgMTNoLTIweiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNiA5Ljk2OSkiLz48cGF0aCBkPSJtLTExNjI2LjMtMzQ0OC4zYzAtLjAxLS4xLTQuNjMgNC40LTQuNjMgNC42IDAgNC4zIDQuNjMgNC4zIDQuNjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTE2MzcgMzQ1Ny40NCkiLz48L2c+PC9nPjwvc3ZnPg==") no-repeat center;
}

.mod-btn > .inner > .btn.of-shop.var-03 a::before,
.mod-btn > .inner > .btn.of-shop.var-03 button[type]::before,
.mod-btn.var-03 > .inner > .btn.of-shop a::before,
.mod-btn.var-03 > .inner > .btn.of-shop button[type]::before {
  background-color: #fff;
}

.mod-btn > .inner > .btn.of-shop.var-03 a[href]:hover::before,
.mod-btn > .inner > .btn.of-shop.var-03 button[type]:hover::before,
.mod-btn.var-03 > .inner > .btn.of-shop a[href]:hover::before,
.mod-btn.var-03 > .inner > .btn.of-shop button[type]:hover::before,
.mod-btn > .inner > .btn.of-shop.var-03 a[href]:focus::before,
.mod-btn > .inner > .btn.of-shop.var-03 button[type]:focus::before,
.mod-btn.var-03 > .inner > .btn.of-shop a[href]:focus::before,
.mod-btn.var-03 > .inner > .btn.of-shop button[type]:focus::before {
  background-color: #222;
}

.mod-btn > .inner > .btn.of-shop.var-04 a::before,
.mod-btn > .inner > .btn.of-shop.var-04 button[type]::before,
.mod-btn.var-04 > .inner > .btn.of-shop a::before,
.mod-btn.var-04 > .inner > .btn.of-shop button[type]::before {
  background-color: #fff;
}

.mod-btn > .inner > .btn.of-shop.var-04 a[href]:hover::before,
.mod-btn > .inner > .btn.of-shop.var-04 button[type]:hover::before,
.mod-btn.var-04 > .inner > .btn.of-shop a[href]:hover::before,
.mod-btn.var-04 > .inner > .btn.of-shop button[type]:hover::before,
.mod-btn > .inner > .btn.of-shop.var-04 a[href]:focus::before,
.mod-btn > .inner > .btn.of-shop.var-04 button[type]:focus::before,
.mod-btn.var-04 > .inner > .btn.of-shop a[href]:focus::before,
.mod-btn.var-04 > .inner > .btn.of-shop button[type]:focus::before {
  background-color: #c00;
}

[class*=mod-btn] > .inner > .btn.of-modal a,
[class*=mod-btn] > .inner > .btn.of-modal button[type] {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto;
  padding: 14px 18px;
  text-align: left;
}

[class*=mod-btn] > .inner > .btn.of-modal a::after,
[class*=mod-btn] > .inner > .btn.of-modal button[type]::after {
  content: none;
}

[class*=mod-btn] > .inner > .btn.of-modal a::before,
[class*=mod-btn] > .inner > .btn.of-modal button[type]::before {
  content: "";
  display: block;
  position: static;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-item-align: start;
      align-self: flex-start;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  width: 30px;
  height: 30px;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 10px;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border: 0;
  background: no-repeat center;
  background-color: #c00;
  -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PHBhdGggZD0ibTMuNDQxIDYuODgxLTMuNDQxLTMuNDQgMy40NDEtMy40NDEiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyA1LjI2OCAxOS44NjYpIi8+PHBhdGggZD0ibTAgMCAzLjQ0MSAzLjQ0MS0zLjQ0MSAzLjQ0IiBzdHJva2U9IiNjMDAiIHN0cm9rZS13aWR0aD0iMiIgdHJhbnNmb3JtPSJtYXRyaXgoLjcwNzEwNyAtLjcwNzEwNyAuNzA3MTA3IC43MDcxMDcgMTcuNDMzIDcuNzAxKSIvPjxwYXRoIGQ9Im0wIDMuNDQxIDMuNDQxLTMuNDQxIDMuNDQgMy40NDEiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyA1LjI2OCAxMC4xMzQpIi8+PHBhdGggZD0ibTYuODgxIDAtMy40NCAzLjQ0MS0zLjQ0MS0zLjQ0MSIgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0ibWF0cml4KC43MDcxMDcgLS43MDcxMDcgLjcwNzEwNyAuNzA3MTA3IDE3LjQzMyAyMi4yOTkpIi8+PC9nPjxwYXRoIGQ9Im02IDFoLTZjLS41NDkgMC0xLS40NTEtMS0xcy40NTEtMSAxLTFoNmMuNTQ5IDAgMSAuNDUxIDEgMXMtLjQ1MSAxLTEgMXoiIGZpbGw9IiNjMDAiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTIgMTUpIi8+PHBhdGggZD0ibTYgMWgtNmMtLjU0OSAwLTEtLjQ1MS0xLTFzLjQ1MS0xIDEtMWg2Yy41NDkgMCAxIC40NTEgMSAxcy0uNDUxIDEtMSAxeiIgZmlsbD0iI2MwMCIgZmlsbC1ydWxlPSJub256ZXJvIiB0cmFuc2Zvcm09Im1hdHJpeCgwIDEgLTEgMCAxNSAxMikiLz48L3N2Zz4=") no-repeat center;
          mask: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYzMGgtMzB6Ii8+PHBhdGggZD0ibTMuNDQxIDYuODgxLTMuNDQxLTMuNDQgMy40NDEtMy40NDEiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyA1LjI2OCAxOS44NjYpIi8+PHBhdGggZD0ibTAgMCAzLjQ0MSAzLjQ0MS0zLjQ0MSAzLjQ0IiBzdHJva2U9IiNjMDAiIHN0cm9rZS13aWR0aD0iMiIgdHJhbnNmb3JtPSJtYXRyaXgoLjcwNzEwNyAtLjcwNzEwNyAuNzA3MTA3IC43MDcxMDcgMTcuNDMzIDcuNzAxKSIvPjxwYXRoIGQ9Im0wIDMuNDQxIDMuNDQxLTMuNDQxIDMuNDQgMy40NDEiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLXdpZHRoPSIyIiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyA1LjI2OCAxMC4xMzQpIi8+PHBhdGggZD0ibTYuODgxIDAtMy40NCAzLjQ0MS0zLjQ0MS0zLjQ0MSIgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0ibWF0cml4KC43MDcxMDcgLS43MDcxMDcgLjcwNzEwNyAuNzA3MTA3IDE3LjQzMyAyMi4yOTkpIi8+PC9nPjxwYXRoIGQ9Im02IDFoLTZjLS41NDkgMC0xLS40NTEtMS0xcy40NTEtMSAxLTFoNmMuNTQ5IDAgMSAuNDUxIDEgMXMtLjQ1MSAxLTEgMXoiIGZpbGw9IiNjMDAiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTIgMTUpIi8+PHBhdGggZD0ibTYgMWgtNmMtLjU0OSAwLTEtLjQ1MS0xLTFzLjQ1MS0xIDEtMWg2Yy41NDkgMCAxIC40NTEgMSAxcy0uNDUxIDEtMSAxeiIgZmlsbD0iI2MwMCIgZmlsbC1ydWxlPSJub256ZXJvIiB0cmFuc2Zvcm09Im1hdHJpeCgwIDEgLTEgMCAxNSAxMikiLz48L3N2Zz4=") no-repeat center;
}

.mod-btn > .inner > .btn.of-modal.var-03 a::before,
.mod-btn > .inner > .btn.of-modal.var-03 button[type]::before,
.mod-btn.var-03 > .inner > .btn.of-modal a::before,
.mod-btn.var-03 > .inner > .btn.of-modal button[type]::before {
  background-color: #fff;
}

.mod-btn > .inner > .btn.of-modal.var-03 a[href]:hover::before,
.mod-btn > .inner > .btn.of-modal.var-03 a[role=button]:hover::before,
.mod-btn > .inner > .btn.of-modal.var-03 button[type]:hover::before,
.mod-btn.var-03 > .inner > .btn.of-modal a[href]:hover::before,
.mod-btn.var-03 > .inner > .btn.of-modal a[role=button]:hover::before,
.mod-btn.var-03 > .inner > .btn.of-modal button[type]:hover::before,
.mod-btn > .inner > .btn.of-modal.var-03 a[href]:focus::before,
.mod-btn > .inner > .btn.of-modal.var-03 a[role=button]:focus::before,
.mod-btn > .inner > .btn.of-modal.var-03 button[type]:focus::before,
.mod-btn.var-03 > .inner > .btn.of-modal a[href]:focus::before,
.mod-btn.var-03 > .inner > .btn.of-modal a[role=button]:focus::before,
.mod-btn.var-03 > .inner > .btn.of-modal button[type]:focus::before {
  background-color: #222;
}

.mod-btn > .inner > .btn.of-modal.var-04 a::before,
.mod-btn > .inner > .btn.of-modal.var-04 button[type]::before,
.mod-btn.var-04 > .inner > .btn.of-modal a::before,
.mod-btn.var-04 > .inner > .btn.of-modal button[type]::before {
  background-color: #fff;
}

.mod-btn > .inner > .btn.of-modal.var-04 a[href]:hover::before,
.mod-btn > .inner > .btn.of-modal.var-04 a[role=button]:hover::before,
.mod-btn > .inner > .btn.of-modal.var-04 button[type]:hover::before,
.mod-btn.var-04 > .inner > .btn.of-modal a[href]:hover::before,
.mod-btn.var-04 > .inner > .btn.of-modal a[role=button]:hover::before,
.mod-btn.var-04 > .inner > .btn.of-modal button[type]:hover::before,
.mod-btn > .inner > .btn.of-modal.var-04 a[href]:focus::before,
.mod-btn > .inner > .btn.of-modal.var-04 a[role=button]:focus::before,
.mod-btn > .inner > .btn.of-modal.var-04 button[type]:focus::before,
.mod-btn.var-04 > .inner > .btn.of-modal a[href]:focus::before,
.mod-btn.var-04 > .inner > .btn.of-modal a[role=button]:focus::before,
.mod-btn.var-04 > .inner > .btn.of-modal button[type]:focus::before {
  background-color: #c00;
}

[class*=mod-btn] > .inner > .btn.of-modal a[href]:hover,
[class*=mod-btn] > .inner > .btn.of-modal a[role=button]:hover,
[class*=mod-btn] > .inner > .btn.of-modal a[href]:focus,
[class*=mod-btn] > .inner > .btn.of-modal a[role=button]:focus {
  background-color: #f4f4f4;
}

.mod-btn > .inner > .btn.of-modal.var-02 a[href]:hover,
.mod-btn > .inner > .btn.of-modal.var-02 a[role=button]:hover,
.mod-btn.var-02 > .inner > .btn.of-modal a[href]:hover,
.mod-btn.var-02 > .inner > .btn.of-modal a[role=button]:hover,
.mod-btn > .inner > .btn.of-modal.var-02 a[href]:focus,
.mod-btn > .inner > .btn.of-modal.var-02 a[role=button]:focus,
.mod-btn.var-02 > .inner > .btn.of-modal a[href]:focus,
.mod-btn.var-02 > .inner > .btn.of-modal a[role=button]:focus {
  background-color: #f4f4f4;
}

.mod-btn > .inner > .btn.of-modal.var-03 a[hre]:hover,
.mod-btn > .inner > .btn.of-modal.var-03 a[role=button]:hover,
.mod-btn.var-03 > .inner > .btn.of-modal a[href]:hover,
.mod-btn.var-03 > .inner > .btn.of-modal a[role=button]:hover,
.mod-btn > .inner > .btn.of-modal.var-03 a[hre]:focus,
.mod-btn > .inner > .btn.of-modal.var-03 a[role=button]:focus,
.mod-btn.var-03 > .inner > .btn.of-modal a[href]:focus,
.mod-btn.var-03 > .inner > .btn.of-modal a[role=button]:focus {
  border-color: #222;
  background-color: #fff;
  color: #222;
}

.mod-btn > .inner > .btn.of-modal.var-04 a[href]:hover,
.mod-btn > .inner > .btn.of-modal.var-04 a[role=button]:hover,
.mod-btn.var-04 > .inner > .btn.of-modal a[href]:hover,
.mod-btn.var-04 > .inner > .btn.of-modal a[role=button]:hover,
.mod-btn > .inner > .btn.of-modal.var-04 a[href]:focus,
.mod-btn > .inner > .btn.of-modal.var-04 a[role=button]:focus,
.mod-btn.var-04 > .inner > .btn.of-modal a[href]:focus,
.mod-btn.var-04 > .inner > .btn.of-modal a[role=button]:focus {
  border-color: #c00;
  background-color: #fff;
  color: #c00;
}

[class*=mod-btn] > .inner > .btn[class*=of-icon-] a,
[class*=mod-btn] > .inner > .btn[class*=of-icon-] button[type] {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  padding-right: 18px;
  padding-left: 18px;
}

[class*=mod-btn] > .inner > .btn[class*=of-icon-] a::after,
[class*=mod-btn] > .inner > .btn[class*=of-icon-] button[type]::after {
  content: none;
}

[class*=mod-btn] > .inner > .btn[class*=of-icon-] a::before,
[class*=mod-btn] > .inner > .btn[class*=of-icon-] button[type]::before {
  content: "";
  display: block;
  position: static;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 30px;
  height: 30px;
  margin-right: 10px;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border: 0;
  background: no-repeat center;
  background-color: #222;
  -webkit-mask: no-repeat center;
          mask: no-repeat center;
}

.mod-btn > .inner > .btn[class*=of-icon-].var-03 a::before,
.mod-btn > .inner > .btn[class*=of-icon-].var-03 button[type]::before,
.mod-btn.var-03 > .inner > .btn[class*=of-icon-] a::before,
.mod-btn.var-03 > .inner > .btn[class*=of-icon-] button[type]::before {
  background-color: #fff;
}

.mod-btn > .inner > .btn[class*=of-icon-].var-03 a[href]:hover::before,
.mod-btn > .inner > .btn[class*=of-icon-].var-03 button[type]:hover::before,
.mod-btn.var-03 > .inner > .btn[class*=of-icon-] a[href]:hover::before,
.mod-btn.var-03 > .inner > .btn[class*=of-icon-] button[type]:hover::before,
.mod-btn > .inner > .btn[class*=of-icon-].var-03 a[href]:focus::before,
.mod-btn > .inner > .btn[class*=of-icon-].var-03 button[type]:focus::before,
.mod-btn.var-03 > .inner > .btn[class*=of-icon-] a[href]:focus::before,
.mod-btn.var-03 > .inner > .btn[class*=of-icon-] button[type]:focus::before {
  background-color: #222;
}

.mod-btn > .inner > .btn[class*=of-icon-].var-04 a::before,
.mod-btn > .inner > .btn[class*=of-icon-].var-04 button[type]::before,
.mod-btn.var-04 > .inner > .btn[class*=of-icon-] a::before,
.mod-btn.var-04 > .inner > .btn[class*=of-icon-] button[type]::before {
  background-color: #fff;
}

.mod-btn > .inner > .btn[class*=of-icon-].var-04 a[href]:hover::before,
.mod-btn > .inner > .btn[class*=of-icon-].var-04 button[type]:hover::before,
.mod-btn.var-04 > .inner > .btn[class*=of-icon-] a[href]:hover::before,
.mod-btn.var-04 > .inner > .btn[class*=of-icon-] button[type]:hover::before,
.mod-btn > .inner > .btn[class*=of-icon-].var-04 a[href]:focus::before,
.mod-btn > .inner > .btn[class*=of-icon-].var-04 button[type]:focus::before,
.mod-btn.var-04 > .inner > .btn[class*=of-icon-] a[href]:focus::before,
.mod-btn.var-04 > .inner > .btn[class*=of-icon-] button[type]:focus::before {
  background-color: #c00;
}

.mod-btn > .inner > .btn.of-icon-download a::before,
.mod-btn > .inner > .btn.of-icon-download button[type]::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGNsaXBQYXRoIGlkPSJhIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48L2NsaXBQYXRoPjxnIHN0eWxlPSJjbGlwLXBhdGg6dXJsKCNhKTtmaWxsOm5vbmU7c3Ryb2tlOiMyMjI7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS13aWR0aDoyIj48cGF0aCBkPSJtMjcuNzcxIDI2LjgxM2gyLjg1MmE2LjEgNi4xIDAgMSAwIDAtMTIuMTloLTEuMTQ2YTguMzE4IDguMzE4IDAgMCAwIC0xNi4xMjcgMi43MDd2LjE3NmE0LjY4NiA0LjY4NiAwIDAgMCAuMzUxIDkuMzUzaDQuMjExIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtOC4wNzUgLTguMDI4KSIvPjxwYXRoIGQ9Im0wIDEzLjIzNXYtMTMuMjM1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNC43OTQgMTUuNDc2KSIvPjxwYXRoIGQ9Im0yMS4yOSAzNi4xMSAzLjc2OSAzLjg5IDMuNzY5LTMuODk1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTAuMjY2IC0xMS4zNzcpIi8+PC9nPjwvc3ZnPg==");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGNsaXBQYXRoIGlkPSJhIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48L2NsaXBQYXRoPjxnIHN0eWxlPSJjbGlwLXBhdGg6dXJsKCNhKTtmaWxsOm5vbmU7c3Ryb2tlOiMyMjI7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS13aWR0aDoyIj48cGF0aCBkPSJtMjcuNzcxIDI2LjgxM2gyLjg1MmE2LjEgNi4xIDAgMSAwIDAtMTIuMTloLTEuMTQ2YTguMzE4IDguMzE4IDAgMCAwIC0xNi4xMjcgMi43MDd2LjE3NmE0LjY4NiA0LjY4NiAwIDAgMCAuMzUxIDkuMzUzaDQuMjExIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtOC4wNzUgLTguMDI4KSIvPjxwYXRoIGQ9Im0wIDEzLjIzNXYtMTMuMjM1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNC43OTQgMTUuNDc2KSIvPjxwYXRoIGQ9Im0yMS4yOSAzNi4xMSAzLjc2OSAzLjg5IDMuNzY5LTMuODk1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTAuMjY2IC0xMS4zNzcpIi8+PC9nPjwvc3ZnPg==");
}

.mod-btn > .inner > .btn.of-icon-catalog a::before,
.mod-btn > .inner > .btn.of-icon-catalog button[type]::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48ZyBzdHJva2U9IiMyMjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMC03LjUxOGE3LjcgNy43IDAgMCAxIDYuMi0zLjQ4MiA3LjU1OSA3LjU1OSAwIDAgMSA2LjE1MSAzLjQ4MnYxNy40MDdzLTEuODI3LTQuMTE0LTYuMTUxLTQuMTE0YTcuNSA3LjUgMCAwIDAgLTYuMiAyLjg0OHoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIuNDcgMTUuMzc5KSIvPjxwYXRoIGQ9Im0wLTcuNTE4YTcuNyA3LjcgMCAwIDEgNi4yLTMuNDgyIDcuNTU5IDcuNTU5IDAgMCAxIDYuMTUxIDMuNDgydjE2LjE0MWE3LjMzNyA3LjMzNyAwIDAgMCAtNi4xNTEtMi44NDhjLTQuMzE3IDAtNi4yIDQuMTE0LTYuMiA0LjExNHoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE0LjgyMyAxNS4zNzkpIi8+PC9nPjwvZz48L3N2Zz4=");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48ZyBzdHJva2U9IiMyMjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMC03LjUxOGE3LjcgNy43IDAgMCAxIDYuMi0zLjQ4MiA3LjU1OSA3LjU1OSAwIDAgMSA2LjE1MSAzLjQ4MnYxNy40MDdzLTEuODI3LTQuMTE0LTYuMTUxLTQuMTE0YTcuNSA3LjUgMCAwIDAgLTYuMiAyLjg0OHoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIuNDcgMTUuMzc5KSIvPjxwYXRoIGQ9Im0wLTcuNTE4YTcuNyA3LjcgMCAwIDEgNi4yLTMuNDgyIDcuNTU5IDcuNTU5IDAgMCAxIDYuMTUxIDMuNDgydjE2LjE0MWE3LjMzNyA3LjMzNyAwIDAgMCAtNi4xNTEtMi44NDhjLTQuMzE3IDAtNi4yIDQuMTE0LTYuMiA0LjExNHoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE0LjgyMyAxNS4zNzkpIi8+PC9nPjwvZz48L3N2Zz4=");
}

.mod-btn > .inner > .btn.of-icon-manual a::before,
.mod-btn > .inner > .btn.of-icon-manual button[type]::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48ZyBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Im0yOC4zMjIgMTV2MTEuMjVhMi41NjEgMi41NjEgMCAwIDEgLTIuNjE3IDIuNWgtMTMuMDg4YTIuNTYxIDIuNTYxIDAgMCAxIC0yLjYxNy0yLjV2LTE4Ljc1YTIuNTYxIDIuNTYxIDAgMCAxIDIuNjE3LTIuNWg5LjE2MSIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC00LjU3MiAtMS44NzUpIi8+PHBhdGggZD0ibTM0LjI1IDExLjI1aC00LjU0NGExLjcwNiAxLjcwNiAwIDAgMSAtMS43MDYtMS43MDZ2LTQuNTQ0IiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEwLjUgLTEuODc1KSIvPjxwYXRoIGQ9Im0yOCA1YzUuNTcgMCA2LjI1IDMuNjgyIDYuMjUgNi4yNSIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMC41IC0xLjg3NSkiLz48cGF0aCBkPSJtMTEgMTMuNWg3IiBzdHJva2U9IiMyMjIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0ibTExIDE3LjVoNyIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Im0xMSAyMS41aDciIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48L2c+PC9nPjwvc3ZnPg==");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48ZyBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Im0yOC4zMjIgMTV2MTEuMjVhMi41NjEgMi41NjEgMCAwIDEgLTIuNjE3IDIuNWgtMTMuMDg4YTIuNTYxIDIuNTYxIDAgMCAxIC0yLjYxNy0yLjV2LTE4Ljc1YTIuNTYxIDIuNTYxIDAgMCAxIDIuNjE3LTIuNWg5LjE2MSIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC00LjU3MiAtMS44NzUpIi8+PHBhdGggZD0ibTM0LjI1IDExLjI1aC00LjU0NGExLjcwNiAxLjcwNiAwIDAgMSAtMS43MDYtMS43MDZ2LTQuNTQ0IiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEwLjUgLTEuODc1KSIvPjxwYXRoIGQ9Im0yOCA1YzUuNTcgMCA2LjI1IDMuNjgyIDYuMjUgNi4yNSIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMC41IC0xLjg3NSkiLz48cGF0aCBkPSJtMTEgMTMuNWg3IiBzdHJva2U9IiMyMjIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0ibTExIDE3LjVoNyIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Im0xMSAyMS41aDciIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48L2c+PC9nPjwvc3ZnPg==");
}

.mod-btn > .inner > .btn.of-icon-software a::before,
.mod-btn > .inner > .btn.of-icon-software button[type]::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48ZyBzdHJva2U9IiMyMjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMTUgMTcuMDAydi0xMiIvPjxwYXRoIGQ9Im0yMS4yOSAzNi4xMSAzLjc2OSAzLjg5IDMuNzY5LTMuODk1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTAuMDU5IC0yMy4wODYpIi8+PHBhdGggZD0ibS0xNDMyLjkyMy0xNzE0MS4yMjV2MTBoMjB2LTEwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNDM3LjkyMyAxNzE1My4yMjYpIi8+PC9nPjwvZz48L3N2Zz4=");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48ZyBzdHJva2U9IiMyMjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMTUgMTcuMDAydi0xMiIvPjxwYXRoIGQ9Im0yMS4yOSAzNi4xMSAzLjc2OSAzLjg5IDMuNzY5LTMuODk1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTAuMDU5IC0yMy4wODYpIi8+PHBhdGggZD0ibS0xNDMyLjkyMy0xNzE0MS4yMjV2MTBoMjB2LTEwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNDM3LjkyMyAxNzE1My4yMjYpIi8+PC9nPjwvZz48L3N2Zz4=");
}

.mod-btn > .inner > .btn.of-icon-upload a::before,
.mod-btn > .inner > .btn.of-icon-upload button[type]::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im0wIDQuOGgxMS40bC00LjgtNC44IiB0cmFuc2Zvcm09Im1hdHJpeCgwIC0xIDEgMCAxMC4yMDEgMTguMjU4KSIvPjxwYXRoIGQ9Im00LjggMC00LjggNC44IiB0cmFuc2Zvcm09Im1hdHJpeCgwIC0xIDEgMCAxNSAxMS42NTkpIi8+PHBhdGggZD0ibS0zMzc2Ljc0IDkxNDguMjh2Ni42NmgxOS41NXYtNi42NiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzM4MS45NyAtOTEzMS44KSIvPjwvZz48L3N2Zz4=");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im0wIDQuOGgxMS40bC00LjgtNC44IiB0cmFuc2Zvcm09Im1hdHJpeCgwIC0xIDEgMCAxMC4yMDEgMTguMjU4KSIvPjxwYXRoIGQ9Im00LjggMC00LjggNC44IiB0cmFuc2Zvcm09Im1hdHJpeCgwIC0xIDEgMCAxNSAxMS42NTkpIi8+PHBhdGggZD0ibS0zMzc2Ljc0IDkxNDguMjh2Ni42NmgxOS41NXYtNi42NiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzM4MS45NyAtOTEzMS44KSIvPjwvZz48L3N2Zz4=");
}

.mod-btn-download {
  margin: 40px 0;
  text-align: center;
}

.mod-btn-download > .inner {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0;
}

.mod-btn-download > .inner > .hdg {
  margin: 0 0 32px;
  font-size: 2.2rem;
  font-weight: 700;
  text-align: center;
}

.mod-btn-download > .inner > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin: -20px 0 0;
}

.mod-btn-download > .inner > .list > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  min-width: 100%;
  max-width: 100%;
  padding: 20px 0 0;
}

.mod-btn-download > .inner > .list > li > .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 60px;
  padding: 14px 18px;
  overflow: hidden;
  -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  color: #222;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
}
.mod-btn-download > .inner > .list > li > .item[href]:focus, .mod-btn-download > .inner > .list > li > .item[href]:hover {
  background-color: #f4f4f4;
}

.mod-btn-download > .inner > .list > li > .item.is-disabled {
  opacity: 0.4;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.mod-btn-download > .inner > .list > li > .item.is-disabled,
.mod-btn-download > .inner > .list > li > .item.is-disabled:focus,
.mod-btn-download > .inner > .list > li > .item.is-disabled:hover {
  background-color: #f8f8f8;
}

.mod-btn-download > .inner > .list > li > .item > span:first-child:not(:last-child) {
  display: none;
}

.mod-btn-download > .inner > .list > li > .item > span:first-child:not(:last-child) img {
  display: none;
}

.mod-btn-download > .inner > .list > li > .item > span:last-child:not(:first-child) {
  margin: 0;
}

.mod-btn-download.align-left-wide > .inner > .list {
  -webkit-box-pack: start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.mod-btn-download.align-right-wide > .inner > .list {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}

.mod-btn-download[data-col=auto] > .inner > .list > li {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-btn-download[data-col="2"] > .inner > .list,
.mod-btn-download[data-col="3"] > .inner > .list,
.mod-btn-download[data-col="4"] > .inner > .list,
.mod-btn-download[data-col="5"] > .inner > .list,
.mod-btn-download[data-col="6"] > .inner > .list {
  margin-left: -20px;
}

.mod-btn-download[data-col="2"] > .inner > .list > li,
.mod-btn-download[data-col="3"] > .inner > .list > li,
.mod-btn-download[data-col="4"] > .inner > .list > li,
.mod-btn-download[data-col="5"] > .inner > .list > li,
.mod-btn-download[data-col="6"] > .inner > .list > li {
  padding-left: 20px;
}

.mod-btn-download[data-col=auto] > .inner > .list {
  margin-left: -20px;
}

.mod-btn-download[data-col=auto] > .inner > .list > li {
  padding-left: 20px;
}

.mod-btn-download[data-col="2"] > .inner > .list > li,
.mod-btn-download[data-col="3"] > .inner > .list > li,
.mod-btn-download[data-col="4"] > .inner > .list > li,
.mod-btn-download[data-col="5"] > .inner > .list > li,
.mod-btn-download[data-col="6"] > .inner > .list > li {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

@media screen and (min-width: 768px), print {
  .mod-btn-download {
    text-align: left;
  }
  .mod-btn-download > .inner {
    padding-top: 0;
    padding-bottom: 0;
  }
  .mod-btn-download > .inner + .inner {
    margin-top: -20px;
  }
  .mod-btn-download > .inner > .hdg {
    margin-bottom: 32px;
    font-size: 2.8rem;
    letter-spacing: 0.06em;
  }
  .mod-btn-download > .inner > .list > li > .item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 14px 18px;
    -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
    transition: color 0.2s, background-color 0.2s, border-color 0.2s;
    font-size: 1.6rem;
  }
  .mod-btn-download > .inner > .list > li > .item > span:first-child:not(:last-child) {
    -ms-flex-preferred-size: 42px;
        flex-basis: 42px;
    min-width: 42px;
    max-width: 42px;
    height: 42px;
  }
  .mod-btn-download > .inner > .list > li > .item > span:first-child:not(:last-child) img {
    max-width: 42px;
    max-height: 42px;
  }
  .mod-btn-download > .inner > .list > li > .item > span:last-child:not(:first-child) {
    position: relative;
    top: 0;
    margin: 0;
  }
  .mod-btn-download > .inner > .list > li > .item:focus,
  .mod-btn-download > .inner > .list > li > .item:hover {
    background-color: #f4f4f4;
  }
  .mod-btn-download.align-left-wide > .inner > .list {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .mod-btn-download.align-right-wide > .inner > .list {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .mod-btn-download[data-col-wide="2"] > .inner > .list,
  .mod-btn-download[data-col-wide="3"] > .inner > .list,
  .mod-btn-download[data-col-wide="4"] > .inner > .list,
  .mod-btn-download[data-col-wide="5"] > .inner > .list,
  .mod-btn-download[data-col-wide="6"] > .inner > .list,
  .mod-btn-download[data-col-wide=auto] > .inner > .list,
  .mod-btn-download[data-col="2"] > .inner > .list,
  .mod-btn-download[data-col="3"] > .inner > .list,
  .mod-btn-download[data-col="4"] > .inner > .list,
  .mod-btn-download[data-col="5"] > .inner > .list,
  .mod-btn-download[data-col="6"] > .inner > .list {
    margin-left: -20px;
  }
  .mod-btn-download[data-col-wide="2"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="3"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="4"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="5"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="6"] > .inner > .list > li,
  .mod-btn-download[data-col-wide=auto] > .inner > .list > li,
  .mod-btn-download[data-col="2"] > .inner > .list > li,
  .mod-btn-download[data-col="3"] > .inner > .list > li,
  .mod-btn-download[data-col="4"] > .inner > .list > li,
  .mod-btn-download[data-col="5"] > .inner > .list > li,
  .mod-btn-download[data-col="6"] > .inner > .list > li {
    padding-left: 20px;
  }
  .mod-btn-download[data-col="2"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="2"] > .inner > .list > li {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-btn-download[data-col="3"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="3"] > .inner > .list > li {
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    min-width: 33.3333%;
    max-width: 33.3333%;
  }
  .mod-btn-download[data-col="4"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="4"] > .inner > .list > li {
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-btn-download[data-col="5"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="5"] > .inner > .list > li {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-btn-download[data-col="6"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="6"] > .inner > .list > li {
    -ms-flex-preferred-size: 16.6667%;
        flex-basis: 16.6667%;
    min-width: 16.6667%;
    max-width: 16.6667%;
  }
  .mod-btn-download[data-col-wide=auto] > .inner > .list > li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-btn-download[data-col-wide] > .inner > .list {
    margin-top: -26px;
    margin-left: -26px;
  }
  .mod-btn-download[data-col] > .inner > .list > li,
  .mod-btn-download[data-col-wide] > .inner > .list > li {
    padding: 26px 0 0 26px;
  }
  .mod-btn-download[data-col-wide="2"] > .inner > .list,
  .mod-btn-download[data-col-wide="3"] > .inner > .list,
  .mod-btn-download[data-col-wide="4"] > .inner > .list,
  .mod-btn-download[data-col-wide="5"] > .inner > .list,
  .mod-btn-download[data-col-wide="6"] > .inner > .list,
  .mod-btn-download[data-col-wide=auto] > .inner > .list,
  .mod-btn-download[data-col="2"] > .inner > .list,
  .mod-btn-download[data-col="3"] > .inner > .list,
  .mod-btn-download[data-col="4"] > .inner > .list,
  .mod-btn-download[data-col="5"] > .inner > .list,
  .mod-btn-download[data-col="6"] > .inner > .list {
    margin-left: -26px;
  }
  .mod-btn-download[data-col-wide="2"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="3"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="4"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="5"] > .inner > .list > li,
  .mod-btn-download[data-col-wide="6"] > .inner > .list > li,
  .mod-btn-download[data-col-wide=auto] > .inner > .list > li,
  .mod-btn-download[data-col="2"] > .inner > .list > li,
  .mod-btn-download[data-col="3"] > .inner > .list > li,
  .mod-btn-download[data-col="4"] > .inner > .list > li,
  .mod-btn-download[data-col="5"] > .inner > .list > li,
  .mod-btn-download[data-col="6"] > .inner > .list > li {
    padding-left: 26px;
  }
}
.mod-btn-download[data-col] > .inner > .list > li.of-full {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

@media screen and (min-width: 768px), print {
  .mod-btn-download[data-col-wide] > .inner > .list > li.of-full,
  .mod-btn-download[data-col-wide] > .inner > .list > li.of-full-wide {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
}
.mod-btn-download > .inner > .list > li .item::before {
  content: "";
  display: block;
  position: static;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 30px;
  height: 30px;
  margin-right: 10px;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border: 0;
  background: no-repeat center;
  background-color: #222;
  -webkit-mask: no-repeat center;
          mask: no-repeat center;
}

.mod-btn-download > .inner > .list > li .item:not([class*=of-icon])::before {
  display: none;
}

.mod-btn-download > .inner > .list > li .item.of-icon-catalog::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48ZyBzdHJva2U9IiMyMjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMC03LjUxOGE3LjcgNy43IDAgMCAxIDYuMi0zLjQ4MiA3LjU1OSA3LjU1OSAwIDAgMSA2LjE1MSAzLjQ4MnYxNy40MDdzLTEuODI3LTQuMTE0LTYuMTUxLTQuMTE0YTcuNSA3LjUgMCAwIDAgLTYuMiAyLjg0OHoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIuNDcgMTUuMzc5KSIvPjxwYXRoIGQ9Im0wLTcuNTE4YTcuNyA3LjcgMCAwIDEgNi4yLTMuNDgyIDcuNTU5IDcuNTU5IDAgMCAxIDYuMTUxIDMuNDgydjE2LjE0MWE3LjMzNyA3LjMzNyAwIDAgMCAtNi4xNTEtMi44NDhjLTQuMzE3IDAtNi4yIDQuMTE0LTYuMiA0LjExNHoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE0LjgyMyAxNS4zNzkpIi8+PC9nPjwvZz48L3N2Zz4=");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48ZyBzdHJva2U9IiMyMjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMC03LjUxOGE3LjcgNy43IDAgMCAxIDYuMi0zLjQ4MiA3LjU1OSA3LjU1OSAwIDAgMSA2LjE1MSAzLjQ4MnYxNy40MDdzLTEuODI3LTQuMTE0LTYuMTUxLTQuMTE0YTcuNSA3LjUgMCAwIDAgLTYuMiAyLjg0OHoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIuNDcgMTUuMzc5KSIvPjxwYXRoIGQ9Im0wLTcuNTE4YTcuNyA3LjcgMCAwIDEgNi4yLTMuNDgyIDcuNTU5IDcuNTU5IDAgMCAxIDYuMTUxIDMuNDgydjE2LjE0MWE3LjMzNyA3LjMzNyAwIDAgMCAtNi4xNTEtMi44NDhjLTQuMzE3IDAtNi4yIDQuMTE0LTYuMiA0LjExNHoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE0LjgyMyAxNS4zNzkpIi8+PC9nPjwvZz48L3N2Zz4=");
}

.mod-btn-download > .inner > .list > li .item.of-icon-manual::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48ZyBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Im0yOC4zMjIgMTV2MTEuMjVhMi41NjEgMi41NjEgMCAwIDEgLTIuNjE3IDIuNWgtMTMuMDg4YTIuNTYxIDIuNTYxIDAgMCAxIC0yLjYxNy0yLjV2LTE4Ljc1YTIuNTYxIDIuNTYxIDAgMCAxIDIuNjE3LTIuNWg5LjE2MSIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC00LjU3MiAtMS44NzUpIi8+PHBhdGggZD0ibTM0LjI1IDExLjI1aC00LjU0NGExLjcwNiAxLjcwNiAwIDAgMSAtMS43MDYtMS43MDZ2LTQuNTQ0IiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEwLjUgLTEuODc1KSIvPjxwYXRoIGQ9Im0yOCA1YzUuNTcgMCA2LjI1IDMuNjgyIDYuMjUgNi4yNSIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMC41IC0xLjg3NSkiLz48cGF0aCBkPSJtMTEgMTMuNWg3IiBzdHJva2U9IiMyMjIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0ibTExIDE3LjVoNyIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Im0xMSAyMS41aDciIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48L2c+PC9nPjwvc3ZnPg==");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48ZyBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Im0yOC4zMjIgMTV2MTEuMjVhMi41NjEgMi41NjEgMCAwIDEgLTIuNjE3IDIuNWgtMTMuMDg4YTIuNTYxIDIuNTYxIDAgMCAxIC0yLjYxNy0yLjV2LTE4Ljc1YTIuNTYxIDIuNTYxIDAgMCAxIDIuNjE3LTIuNWg5LjE2MSIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC00LjU3MiAtMS44NzUpIi8+PHBhdGggZD0ibTM0LjI1IDExLjI1aC00LjU0NGExLjcwNiAxLjcwNiAwIDAgMSAtMS43MDYtMS43MDZ2LTQuNTQ0IiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEwLjUgLTEuODc1KSIvPjxwYXRoIGQ9Im0yOCA1YzUuNTcgMCA2LjI1IDMuNjgyIDYuMjUgNi4yNSIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMC41IC0xLjg3NSkiLz48cGF0aCBkPSJtMTEgMTMuNWg3IiBzdHJva2U9IiMyMjIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0ibTExIDE3LjVoNyIgc3Ryb2tlPSIjMjIyIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Im0xMSAyMS41aDciIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48L2c+PC9nPjwvc3ZnPg==");
}

.mod-btn-download > .inner > .list > li .item.of-icon-software::before {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48ZyBzdHJva2U9IiMyMjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMTUgMTcuMDAydi0xMiIvPjxwYXRoIGQ9Im0yMS4yOSAzNi4xMSAzLjc2OSAzLjg5IDMuNzY5LTMuODk1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTAuMDU5IC0yMy4wODYpIi8+PHBhdGggZD0ibS0xNDMyLjkyMy0xNzE0MS4yMjV2MTBoMjB2LTEwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNDM3LjkyMyAxNzE1My4yMjYpIi8+PC9nPjwvZz48L3N2Zz4=");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMwIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIj48cGF0aCBkPSJtMCAwaDMwdjMwaC0zMHoiLz48ZyBzdHJva2U9IiMyMjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMTUgMTcuMDAydi0xMiIvPjxwYXRoIGQ9Im0yMS4yOSAzNi4xMSAzLjc2OSAzLjg5IDMuNzY5LTMuODk1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTAuMDU5IC0yMy4wODYpIi8+PHBhdGggZD0ibS0xNDMyLjkyMy0xNzE0MS4yMjV2MTBoMjB2LTEwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNDM3LjkyMyAxNzE1My4yMjYpIi8+PC9nPjwvZz48L3N2Zz4=");
}

.mod-btn-nav {
  margin: 40px 0;
  padding: 28px 0 0;
  overflow: visible;
  border-top: 1px solid #dbdbdb;
}

.mod-btn-nav > .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (min-width: 576px), print {
  .mod-btn-nav > .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    width: 100%;
  }
}

.mod-btn-nav > .inner > .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
@media screen and (min-width: 576px), print {
  .mod-btn-nav > .inner > .btn {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    max-width: 50%;
  }
}

.mod-btn-nav a,
.mod-btn-nav button[type] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  height: auto;
  min-height: 60px;
  padding: 14px 18px;
  overflow: hidden;
  -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  color: #222;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
}

.mod-btn-nav a[href]:focus,
.mod-btn-nav a[href]:hover,
.mod-btn-nav button[type]:not(:disabled):focus,
.mod-btn-nav button[type]:not(:disabled):hover {
  background-color: #f4f4f4;
}

.mod-btn-nav a[href]:focus,
.mod-btn-nav a[href]:hover,
.mod-btn-nav button[type]:not(:disabled):focus,
.mod-btn-nav button[type]:not(:disabled):hover {
  background-color: #f4f4f4;
}

.mod-btn-nav .btn.back {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.mod-btn-nav .btn.next {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.mod-btn-nav .btn.next a,
.mod-btn-nav .btn.next button[type] {
  padding: 14px 40px;
}
@media screen and (min-width: 768px), print {
  .mod-btn-nav .btn.next a,
  .mod-btn-nav .btn.next button[type] {
    padding-left: 18px;
  }
}

.mod-btn-nav .btn.back a,
.mod-btn-nav .btn.back button[type] {
  padding: 14px 40px;
}
@media screen and (min-width: 768px), print {
  .mod-btn-nav .btn.back a,
  .mod-btn-nav .btn.back button[type] {
    padding-right: 18px;
  }
}

.mod-btn-nav a::before,
.mod-btn-nav button[type]::before,
.mod-btn-nav a::after,
.mod-btn-nav button[type]::after {
  content: none;
}

.mod-btn-nav .btn.next a::after,
.mod-btn-nav .btn.next button[type]::after,
.mod-btn-nav .btn.back a::after,
.mod-btn-nav .btn.back button[type]::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  width: 17px;
  height: 17px;
  margin: auto 0;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border: none;
  background-color: #c00;
  -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center center;
          mask: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center center;
}

.mod-btn-nav .btn.next a::after,
.mod-btn-nav .btn.next button[type]::after {
  right: 16px;
  left: auto;
}

.mod-btn-nav .btn.back a::after,
.mod-btn-nav .btn.back button[type]::after {
  right: auto;
  left: 16px;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

@media screen and (min-width: 768px), print {
  .mod-btn-nav a,
  .mod-btn-nav button[type] {
    width: auto;
    min-width: 0;
  }
}
.mod-lang-switch {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 10px 0;
}
.mod-lang-switch.align-left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.mod-lang-switch.align-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.mod-lang-switch.align-right {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.mod-lang-switch .lang-toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 6px;
  background-color: #fff;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
}
.mod-lang-switch .lang-toggle a {
  text-decoration: none;
}
.mod-lang-switch .lang-toggle__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 90px;
  height: 40px;
  -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  border: 1px solid #dbdbdb;
  background-color: #fff;
  color: #222;
  font-size: 1.4rem;
  font-weight: 700;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.mod-lang-switch .lang-toggle__item[data-is-current] {
  border-color: #c00;
  background-color: #c00;
  color: #fff;
}
.mod-lang-switch .lang-toggle__item[href]:hover, .mod-lang-switch .lang-toggle__item[href]:focus {
  background-color: #f4f4f4;
}
.mod-lang-switch .lang-toggle__item:first-child {
  border-radius: 6px 0 0 6px;
}
.mod-lang-switch .lang-toggle__item:last-child {
  border-radius: 0 6px 6px 0;
}

.mod-pager {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 20px auto 80px;
}
.mod-pager > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 300px;
  margin-left: -20px;
}
.mod-pager > .list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 20px;
  border-radius: 12px;
}
.mod-pager > .list li[data-first-item]::after, .mod-pager > .list li[data-last-item]::before {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 12px;
  height: 12px;
  background: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjQiIHZpZXdCb3g9IjAgMCAyMCA0IiB3aWR0aD0iMjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iIzVmNWY1ZiI+PGNpcmNsZSBjeD0iMTgiIGN5PSIyIiByPSIyIi8+PGNpcmNsZSBjeD0iMTAiIGN5PSIyIiByPSIyIi8+PGNpcmNsZSBjeD0iMiIgY3k9IjIiIHI9IjIiLz48L2c+PC9zdmc+") center left no-repeat;
  background-size: auto 4px;
}
.mod-pager > .list li[data-first-item]::after {
  content: "";
  right: -10px;
  margin-left: 0;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
}
.mod-pager > .list li[data-last-item]::before {
  content: "";
  left: -10px;
  margin-right: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.mod-pager > .list a {
  display: block;
  -webkit-transition: color 0.2s, background-color 0.2s, broder-color 0.2s;
  transition: color 0.2s, background-color 0.2s, broder-color 0.2s;
  border-radius: 12px;
  background-color: inherit;
  color: #707070;
  text-decoration: none;
}
.mod-pager > .list a:focus-visible {
  outline: none;
}
.mod-pager > .list a:focus-visible .pager-item {
  outline: 2px solid #222;
  outline-offset: 2px;
}
.mod-pager > .list a[href]:hover,
.mod-pager > .list a[href]:focus {
  background-color: #f4f4f4;
  color: #707070;
}
.mod-pager > .list a[data-is-current],
.mod-pager > .list a[data-is-current]:hover,
.mod-pager > .list a[data-is-current]:focus {
  -webkit-transition: none;
  transition: none;
  border-color: #c00;
  background-color: #c00;
  color: #fff;
  pointer-events: none;
}
.mod-pager .pager-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 44px;
  height: 46px;
  padding: 10px 4px;
  -webkit-transition: color 0.2s, background-color 0.2s, broder-color 0.2s;
  transition: color 0.2s, background-color 0.2s, broder-color 0.2s;
  border: 1px solid #dbdbdb;
  border-radius: 8px;
  background-color: inherit;
  color: inherit;
  font-family: "Roboto", sans-serif;
  font-size: 2rem;
  font-weight: 700;
}
.mod-pager [data-is-current] .pager-item {
  -webkit-transition: none;
  transition: none;
}
@media screen and (min-width: 768px), print {
  .mod-pager > .list li[data-first-item]::after, .mod-pager > .list li[data-last-item]::before {
    position: static;
    right: auto;
    left: auto;
    width: 44px;
    height: 46px;
    -webkit-transform: none;
            transform: none;
    background-position: center;
    background-size: auto 4px;
  }
  .mod-pager > .list li[data-first-item]::after {
    margin-left: 20px;
  }
  .mod-pager > .list li[data-last-item]::before {
    margin-right: 20px;
  }
}

/*! = Modules/List */
.mod-list {
  margin: 0 0 30px;
}

.mod-list > .list > li {
  margin-bottom: 0;
  line-height: 1.65;
}

.mod-list > .list > li + li {
  margin-top: 12px;
}

.mod-list > .list > li > :last-child {
  margin-bottom: 0;
}

.mod-list > .list > li > span:first-child,
.mod-list > .list > li > span ~ * {
  padding-left: 34px;
}

.mod-list > .list > li > span:first-child {
  display: block;
  position: relative;
}

.mod-list > .list > li > span:first-child + * {
  margin-top: 0;
}

.mod-list > .list > li > span:first-child::before {
  content: "";
  display: block;
  position: absolute;
  top: 0.6em;
  left: 10px;
  width: 10px;
  height: 10px;
  border-top: none;
  border-radius: 10px;
  background-color: #c00;
}

.mod-list.of-dot-small > .list > li > span:first-child::before {
  top: 0.7em;
  left: 12px;
  width: 6px;
  height: 6px;
}

:is(table) .mod-list > .list > li > span:first-child::before {
  top: 0.7em;
  left: 12px;
  width: 6px;
  height: 6px;
}

/* コンテンツカラム　汎用 */
.mod-list[data-col] > .list > li.of-full {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-list[data-col] > .list > li.of-fillin {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: auto;
  max-width: none;
}

.mod-list[data-col=auto] > .list > li {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-list.align-left > .list {
  -webkit-box-pack: start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.mod-list.align-right > .list {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}

.mod-list[data-col] > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.mod-list[data-col] > .list {
  margin-top: -12px;
}

.mod-list[data-col] > .list > li {
  margin-top: 0;
  padding-top: 12px;
}

.mod-list[data-col="2"] > .list,
.mod-list[data-col="3"] > .list,
.mod-list[data-col="4"] > .list,
.mod-list[data-col="5"] > .list,
.mod-list[data-col="6"] > .list {
  margin-left: -20px;
}

.mod-list[data-col="2"] > .list > li,
.mod-list[data-col="3"] > .list > li,
.mod-list[data-col="4"] > .list > li,
.mod-list[data-col="5"] > .list > li,
.mod-list[data-col="6"] > .list > li {
  padding-left: 20px;
}

.mod-list[data-col=auto] > .list {
  margin-left: -20px;
}

.mod-list[data-col=auto] > .list > li {
  padding-left: 20px;
}

.mod-list[data-col="2"] > .list > li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-list[data-col="3"] > .list > li {
  -ms-flex-preferred-size: 33.3333%;
      flex-basis: 33.3333%;
  min-width: 33.3333%;
  max-width: 33.3333%;
}

.mod-list[data-col="4"] > .list > li {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-list[data-col="5"] > .list > li {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-list[data-col="6"] > .list > li {
  -ms-flex-preferred-size: 16.6667%;
      flex-basis: 16.6667%;
  min-width: 16.6667%;
  max-width: 16.6667%;
}

@media screen and (min-width: 768px), print {
  .mod-list[data-col] > .list,
  .mod-list[data-col-wide] > .list {
    margin-top: -12px;
  }
  .mod-list[data-col] > .list > li,
  .mod-list[data-col-wide] > .list > li {
    padding-top: 12px;
  }
  .mod-list[data-col-wide] > .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .mod-list[data-col-wide="2"] > .list,
  .mod-list[data-col-wide="3"] > .list,
  .mod-list[data-col="2"] > .list,
  .mod-list[data-col="3"] > .list {
    margin-left: -20px;
  }
  .mod-list[data-col-wide="2"] > .list > li,
  .mod-list[data-col-wide="3"] > .list > li,
  .mod-list[data-col="2"] > .list > li,
  .mod-list[data-col="3"] > .list > li {
    padding-left: 20px;
  }
  .mod-list[data-col-wide="4"] > .list,
  .mod-list[data-col-wide="5"] > .list,
  .mod-list[data-col-wide="6"] > .list,
  .mod-list[data-col-wide=auto] > .list,
  .mod-list[data-col="4"] > .list,
  .mod-list[data-col="5"] > .list,
  .mod-list[data-col="6"] > .list {
    margin-left: -20px;
  }
  .mod-list[data-col-wide="4"] > .list > li,
  .mod-list[data-col-wide="5"] > .list > li,
  .mod-list[data-col-wide="6"] > .list > li,
  .mod-list[data-col-wide=auto] > .list > li,
  .mod-list[data-col="4"] > .list > li,
  .mod-list[data-col="5"] > .list > li,
  .mod-list[data-col="6"] > .list > li {
    padding-left: 20px;
  }
  .mod-list[data-col-wide="2"] > .list > li {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-list[data-col-wide="3"] > .list > li {
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    min-width: 33.3333%;
    max-width: 33.3333%;
  }
  .mod-list[data-col-wide="4"] > .list > li {
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-list[data-col-wide="5"] > .list > li {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-list[data-col-wide="6"] > .list > li {
    -ms-flex-preferred-size: 16.6667%;
        flex-basis: 16.6667%;
    min-width: 16.6667%;
    max-width: 16.6667%;
  }
  .mod-list[data-col-wide=auto] > .list > li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-list[data-col-wide="2"] > .list,
  .mod-list[data-col-wide="3"] > .list,
  .mod-list[data-col="2"] > .list,
  .mod-list[data-col="3"] > .list {
    margin-left: -26px;
  }
  .mod-list[data-col-wide="2"] > .list > li,
  .mod-list[data-col-wide="3"] > .list > li,
  .mod-list[data-col="2"] > .list > li,
  .mod-list[data-col="3"] > .list > li {
    padding-left: 26px;
  }
  .mod-list[data-col-wide="4"] > .list,
  .mod-list[data-col-wide="5"] > .list,
  .mod-list[data-col-wide="6"] > .list,
  .mod-list[data-col-wide=auto] > .list,
  .mod-list[data-col="4"] > .list,
  .mod-list[data-col="5"] > .list,
  .mod-list[data-col="6"] > .list {
    margin-left: -26px;
  }
  .mod-list[data-col-wide="4"] > .list > li,
  .mod-list[data-col-wide="5"] > .list > li,
  .mod-list[data-col-wide="6"] > .list > li,
  .mod-list[data-col-wide=auto] > .list > li,
  .mod-list[data-col="4"] > .list > li,
  .mod-list[data-col="5"] > .list > li,
  .mod-list[data-col="6"] > .list > li {
    padding-left: 26px;
  }
}
.mod-list-ordered {
  margin: 0 0 30px;
  counter-reset: mod-list-ordered;
}

.mod-list-ordered > ol.list,
.mod-list-ordered > ul.list {
  display: block;
}

.mod-list-ordered > ol.list > li,
.mod-list-ordered > ul.list > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  margin-bottom: 0;
  line-height: 1.65;
  counter-increment: mod-list-ordered;
}

.mod-list-ordered > ol.list > li + li,
.mod-list-ordered > ul.list > li + li {
  margin-top: 12px;
}

.mod-list-ordered > ol.list > li:last-child,
.mod-list-ordered > ul.list > li:last-child {
  margin-bottom: 0;
}

.mod-list-ordered > ol.list > li::before,
.mod-list-ordered > ul.list > li::before {
  content: "";
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 30px;
  color: #c00;
  font-family: "Roboto", sans-serif;
  font-size: 1.8rem;
  font-weight: 400;
  text-align: left;
  white-space: initial;
}

.mod-list-ordered > ol.list > li::before,
.mod-list-ordered > ul.list > li::before {
  content: counter(mod-list-ordered) ".";
}

.mod-list-ordered[data-auto-count-type=alphabet] > ol.list > li::before,
.mod-list-ordered[data-auto-count-type=alphabet] > ul.list > li::before {
  content: counter(mod-list-ordered, lower-alpha) ".";
}

.mod-list-ordered > ol.list > li > .symbol,
.mod-list-ordered > ul.list > li > .symbol {
  display: none;
}

.mod-list-ordered[data-list-symbol] > ol.list > li::before,
.mod-list-ordered[data-list-symbol] > ul.list > li::before {
  content: none;
}

.mod-list-ordered[data-list-symbol] > ol.list > li > .symbol,
.mod-list-ordered[data-list-symbol] > ul.list > li > .symbol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  top: 0.2em;
  left: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-item-align: start;
      align-self: flex-start;
  min-width: 30px;
  color: #c00;
  font-family: "Roboto", sans-serif;
  font-size: 1.8rem;
  font-weight: 400;
  text-align: left;
  white-space: initial;
}
.mod-list-ordered[data-list-symbol] > ol.list > li > .symbol > span,
.mod-list-ordered[data-list-symbol] > ul.list > li > .symbol > span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "Roboto", sans-serif;
}

.mod-list-ordered[data-list-symbol=circle] > ol.list > li > .symbol > span,
.mod-list-ordered[data-list-symbol=circle] > ul.list > li > .symbol > span {
  width: 24px;
  height: 24px;
  border: 1px solid #c00;
  border-radius: 24px;
  background: #fff;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 24px;
}

.mod-list-ordered > ol.list > li > .content,
.mod-list-ordered > ul.list > li > .content {
  display: block;
  padding: 0 0 0 4px;
  vertical-align: initial;
}

.mod-list-ordered > ol.list > li > .content > :first-child,
.mod-list-ordered > ul.list > li > .content > :first-child {
  margin-top: 0;
}

.mod-list-ordered > ol.list > li > .content > :last-child,
.mod-list-ordered > ul.list > li > .content > :last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 768px), print {
  .mod-list-ordered > ol.list > li > .content,
  .mod-list-ordered > ul.list > li > .content {
    padding-left: 4px;
  }
}
.mod-list-notice {
  margin-top: 0;
  margin-bottom: 30px;
}

.mod-list-notice > .list {
  display: table;
  width: 100%;
  font-size: 1.4rem;
}

.mod-list-notice > .list > li {
  display: table-row;
}

.mod-list-notice > .list > li > * {
  display: table-cell;
  padding: 0 0 4px;
  font-size: 1.4rem;
  line-height: 1.65;
  vertical-align: baseline;
}

.mod-list-notice > .list > li:last-child > * {
  padding-bottom: 0;
}

.mod-list-notice > .list > li > .symbol {
  min-width: 34px;
  padding-right: 4px;
  color: #767676;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  white-space: nowrap;
}

.mod-list-notice > .list > li > .content {
  width: 100%;
  color: #767676;
}

.mod-list-notice > .list > li > .content > :last-child {
  margin-bottom: 0;
}

.mod-list-notice > .list > li > .content > :first-child {
  margin-top: 0;
}

@media screen and (min-width: 768px), print {
  .mod-list-notice > .list > li > * {
    padding-bottom: 4px;
  }
  .mod-list-notice > .list > li:last-child > * {
    padding-bottom: 0;
  }
  .mod-list-notice > .list > li > .symbol {
    padding-right: 4px;
  }
}
.mod-list-hasSymbol02 {
  margin: 0 0 40px;
}

.mod-list-hasSymbol02 > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -20px 0 0 -20px;
}

.mod-list-hasSymbol02 > .list > *,
.mod-list-hasSymbol02 > .list .anker {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 20px 0 0 20px;
}

.mod-list-hasSymbol02 > .list > * > .content,
.mod-list-hasSymbol02 > .list > * > .symbol,
.mod-list-hasSymbol02 > .list .anker .content,
.mod-list-hasSymbol02 > .list .anker .symbol {
  background: #f4f4f4;
}

.mod-list-hasSymbol02 > .list > * > .symbol,
.mod-list-hasSymbol02 > .list .anker .symbol {
  -ms-flex-preferred-size: initial;
      flex-basis: initial;
  min-width: initial;
  max-width: initial;
  padding: 20px 14px 20px 20px;
  border-radius: 6px 0 0 6px;
}

.mod-list-hasSymbol02 > .list > * > .symbol img,
.mod-list-hasSymbol02 > .list > * > .symbol > span,
.mod-list-hasSymbol02 > .list .anker .symbol img,
.mod-list-hasSymbol02 > .list .anker .symbol > span {
  display: block;
  -ms-flex-preferred-size: 60px;
      flex-basis: 60px;
  width: 100%;
  min-width: 60px;
  max-width: 60px;
  height: auto;
}

.mod-list-hasSymbol02.of-small-symbol > .list > * > .symbol img,
.mod-list-hasSymbol02.of-small-symbol > .list > * > .symbol > span,
.mod-list-hasSymbol02.of-small-symbol > .list .anker .symbol img,
.mod-list-hasSymbol02.of-small-symbol > .list .anker .symbol > span {
  -ms-flex-preferred-size: 36px;
      flex-basis: 36px;
  min-width: 36px;
  max-width: 36px;
}

.mod-list-hasSymbol02 > .list > * > .symbol > span,
.mod-list-hasSymbol02 > .list .anker .symbol > span {
  display: block;
}

.mod-list-hasSymbol02 > .list > * > .content,
.mod-list-hasSymbol02 > .list .anker .content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  padding: 20px 20px 20px 0;
  border-radius: 0 6px 6px 0;
  line-height: 1.65;
}

.mod-list-hasSymbol02.of-content-middle > .list > * > .content,
.mod-list-hasSymbol02.of-content-middle > .list .anker .content {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mod-list-hasSymbol02 > .list > * > .content > span,
.mod-list-hasSymbol02 > .list .anker .content > span {
  font-size: 1.4rem;
}

.mod-list-hasSymbol02 > .list > * > .content > span > b,
.mod-list-hasSymbol02 > .list .anker .content > span > b {
  display: block;
  margin-bottom: 4px;
  font-size: 1.6rem;
  line-height: 1.375;
}

.mod-list-hasSymbol02 > .list > * > .content > :first-child,
.mod-list-hasSymbol02 > .list .anker .content > :first-child {
  margin-top: 0;
}

.mod-list-hasSymbol02 > .list > * > .content > :last-child,
.mod-list-hasSymbol02 > .list .anker .content > :last-child {
  margin-bottom: 0;
}

.mod-list-hasSymbol02 > .list > * > .content > span:first-child,
.mod-list-hasSymbol02 > .list .anker .content > span:first-child {
  display: block;
}

.mod-list-hasSymbol02 > .list > * > .content > span:not(:last-child) + *,
.mod-list-hasSymbol02 > .list .anker .content > span:not(:last-child) + * {
  margin-top: 6px;
}

.mod-list-hasSymbol02:not([data-col]) > .list > * {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  min-width: 100%;
  max-width: 100%;
}

.mod-list-hasSymbol02[data-col=auto] > .list > * {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-list-hasSymbol02.align-left > .list {
  -webkit-box-pack: start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.mod-list-hasSymbol02.align-right > .list {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}

.mod-list-hasSymbol02[data-col="1"] > .list > * {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  min-width: 100%;
  max-width: 100%;
}

.mod-list-hasSymbol02[data-col="2"] > .list > * {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-list-hasSymbol02[data-col="3"] > .list > * {
  -ms-flex-preferred-size: 33.3333%;
      flex-basis: 33.3333%;
  min-width: 33.3333%;
  max-width: 33.3333%;
}

.mod-list-hasSymbol02[data-col="4"] > .list > * {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-list-hasSymbol02[data-col="5"] > .list > * {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-list-hasSymbol02[data-col="6"] > .list > * {
  -ms-flex-preferred-size: 16.6667%;
      flex-basis: 16.6667%;
  min-width: 16.6667%;
  max-width: 16.6667%;
}

@media screen and (min-width: 768px), print {
  .mod-list-hasSymbol02 > .list {
    margin-top: -20px;
    margin-left: -20px;
  }
  .mod-list-hasSymbol02 > .list > * {
    padding-top: 20px;
    padding-left: 20px;
  }
  .mod-list-hasSymbol02 > .list > * > .symbol,
  .mod-list-hasSymbol02 > .list .anker .symbol {
    -ms-flex-preferred-size: initial;
        flex-basis: initial;
    min-width: initial;
    max-width: initial;
    padding: 30px 20px 30px 30px;
  }
  .mod-list-hasSymbol02 > .list > * > .symbol img,
  .mod-list-hasSymbol02 > .list > * > .symbol > span,
  .mod-list-hasSymbol02 > .list .anker .symbol img,
  .mod-list-hasSymbol02 > .list .anker .symbol > span {
    -ms-flex-preferred-size: 74px;
        flex-basis: 74px;
    min-width: 74px;
    max-width: 74px;
  }
  .mod-list-hasSymbol02.of-small-symbol > .list > * > .symbol img,
  .mod-list-hasSymbol02.of-small-symbol > .list > * > .symbol > span,
  .mod-list-hasSymbol02.of-small-symbol > .list .anker .symbol img,
  .mod-list-hasSymbol02.of-small-symbol > .list .anker .symbol > span {
    -ms-flex-preferred-size: 48px;
        flex-basis: 48px;
    min-width: 48px;
    max-width: 48px;
  }
  .mod-list-hasSymbol02 > .list > * > .symbol img {
    width: 100%;
    height: auto;
  }
  .mod-list-hasSymbol02 > .list > * > .content,
  .mod-list-hasSymbol02 > .list .anker .content {
    padding: 30px 30px 30px 0;
  }
  .mod-list-hasSymbol02 > .list > * + * {
    margin-top: 0;
  }
  .mod-list-hasSymbol02[data-col-wide=auto] > .list > * {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-list-hasSymbol02[data-col-wide="1"] > .list > * {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    min-width: 100%;
    max-width: 100%;
  }
  .mod-list-hasSymbol02[data-col-wide="2"] > .list > * {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-list-hasSymbol02[data-col-wide="3"] > .list > * {
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    min-width: 33.3333%;
    max-width: 33.3333%;
  }
  .mod-list-hasSymbol02[data-col-wide="4"] > .list > * {
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-list-hasSymbol02[data-col-wide="5"] > .list > * {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-list-hasSymbol02[data-col-wide="6"] > .list > * {
    -ms-flex-preferred-size: 16.6667%;
        flex-basis: 16.6667%;
    min-width: 16.6667%;
    max-width: 16.6667%;
  }
}
.mod-list-description-02 {
  margin: 0 0 40px;
}

.mod-list-description-02 > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  table-layout: fixed;
  border-top: 1px solid #dbdbdb;
}

.mod-list-description-02 > .list > div {
  display: block;
}

.mod-list-description-02 > .list > div > * {
  display: block;
  display: flow-root;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  padding: 0;
  border-bottom: none;
  vertical-align: initial;
}

.mod-list-description-02 > .list > div > dt {
  padding-top: 30px;
  padding-bottom: 16px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
}

.mod-list-description-02 > .list > div > dd {
  padding-bottom: 30px;
  padding-left: 0;
  border-bottom: 1px solid #dbdbdb;
  line-height: 1.65;
}

.mod-list-description-02 > .list > div > dd > :first-child {
  margin-top: 0;
}

.mod-list-description-02 > .list > div > dd > :last-child {
  margin-bottom: 0;
}

.mod-list-description-02 > .list > div > dd > span {
  display: block;
  margin-bottom: 8px;
}

@media screen and (min-width: 768px), print {
  .mod-list-description-02 > .list > div > * {
    padding: 0 20px;
  }
  .mod-list-description-02 > .list > div:first-child > * {
    padding-top: 0;
  }
  .mod-list-description-02 > .list > div:first-child > dt {
    padding-top: 30px;
    padding-bottom: 10px;
  }
  .mod-list-description-02 > .list > div:first-child > dd {
    padding-top: 0;
  }
  .mod-list-description-02 > .list > div > dt {
    padding-top: 40px;
    font-weight: 700;
  }
  .mod-list-description-02 > .list > div > dd {
    padding-right: 20px;
    padding-bottom: 40px;
    padding-left: 20px;
  }
}
.mod-list-description {
  margin: 0 0 40px;
}

.mod-list-description > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.mod-list-description > .list > div {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  min-width: 100%;
  max-width: 100%;
  margin-bottom: 0;
}

.mod-list-description > .list > div > dt {
  margin: 0 0 16px;
  padding: 0 0 12px;
  border-bottom: 1px solid #dbdbdb;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
}

.mod-list-description > .list > div > dd {
  line-height: 1.65;
}

.mod-list-description > .list > div > dd > :first-child {
  margin-top: 0;
}

.mod-list-description > .list > div > dd > :last-child {
  margin-bottom: 0;
}

.mod-list-description > .list > div > dd > span {
  display: block;
  margin-bottom: 8px;
}

.mod-list-description > .list > div > dd + dd {
  margin-top: 6px;
}

.mod-list-description > .list > div + div {
  padding: 40px 0 0;
}

.mod-list-description[data-col] > .list {
  margin-top: -40px;
}

.mod-list-description[data-col] > .list > div {
  padding-top: 40px;
}

.mod-list-description[data-col] > .list > div.of-fillin {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: auto;
  max-width: none;
}

.mod-list-description[data-col=auto] > .list {
  margin-left: -20px;
}

.mod-list-description[data-col=auto] > .list > div {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
  padding-left: 20px;
}

.mod-list-description.align-left > .list {
  -webkit-box-pack: start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.mod-list-description.align-right > .list {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}

.mod-list-description[data-col="2"] > .list,
.mod-list-description[data-col="3"] > .list,
.mod-list-description[data-col="4"] > .list,
.mod-list-description[data-col="5"] > .list,
.mod-list-description[data-col="6"] > .list {
  margin-left: -10px;
}

.mod-list-description[data-col="2"] > .list > div,
.mod-list-description[data-col="3"] > .list > div,
.mod-list-description[data-col="4"] > .list > div,
.mod-list-description[data-col="5"] > .list > div,
.mod-list-description[data-col="6"] > .list > div {
  padding-left: 10px;
}

.mod-list-description[data-col="2"] > .list > div {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-list-description[data-col="3"] > .list > div {
  -ms-flex-preferred-size: 33.3333%;
      flex-basis: 33.3333%;
  min-width: 33.3333%;
  max-width: 33.3333%;
}

.mod-list-description[data-col="4"] > .list > div {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-list-description[data-col="5"] > .list > div {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-list-description[data-col="6"] > .list > div {
  -ms-flex-preferred-size: 16.6667%;
      flex-basis: 16.6667%;
  min-width: 16.6667%;
  max-width: 16.6667%;
}

@media screen and (min-width: 768px), print {
  .mod-list-description {
    margin: 0 0 40px;
  }
  .mod-list-description > .list > div > dt {
    margin-bottom: 16px;
    padding-bottom: 12px;
    font-size: 2rem;
  }
  .mod-list-description[data-col-wide] > .list {
    margin-top: -40px;
  }
  .mod-list-description[data-col-wide] > .list > div {
    padding-top: 40px;
  }
  .mod-list-description[data-col-wide] > .list > div.of-full,
  .mod-list-description[data-col-wide] > .list > div.of-full-wide {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-list-description[data-col-wide] > .list > div.of-fillin,
  .mod-list-description[data-col-wide] > .list > div.of-fillin-wide {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    width: auto;
    max-width: none;
  }
  .mod-list-description[data-col-wide="2"] > .list,
  .mod-list-description[data-col-wide="3"] > .list,
  .mod-list-description[data-col-wide="4"] > .list,
  .mod-list-description[data-col-wide="5"] > .list,
  .mod-list-description[data-col-wide="6"] > .list,
  .mod-list-description[data-col-wide=auto] {
    margin-left: -20px;
  }
  .mod-list-description[data-col-wide="2"] > .list > div,
  .mod-list-description[data-col-wide="3"] > .list > div,
  .mod-list-description[data-col-wide="4"] > .list > div,
  .mod-list-description[data-col-wide="5"] > .list > div,
  .mod-list-description[data-col-wide="6"] > .list > div,
  .mod-list-description[data-col-wide=auto] > .list > div {
    padding-left: 20px;
  }
  .mod-list-description[data-col-wide="2"] > .list > div {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-list-description[data-col-wide="3"] > .list > div {
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    min-width: 33.3333%;
    max-width: 33.3333%;
  }
  .mod-list-description[data-col-wide="4"] > .list > div {
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-list-description[data-col-wide="5"] > .list > div {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-list-description[data-col-wide="6"] > .list > div {
    -ms-flex-preferred-size: 16.6667%;
        flex-basis: 16.6667%;
    min-width: 16.6667%;
    max-width: 16.6667%;
  }
  .mod-list-description[data-col-wide=auto] > .list > div {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-list-description[data-col-wide] > .list {
    margin-top: -40px;
  }
  .mod-list-description[data-col-wide] > .list > div {
    padding-top: 40px;
  }
  .mod-list-description[data-col-wide="2"] > .list,
  .mod-list-description[data-col-wide="3"] > .list,
  .mod-list-description[data-col-wide="4"] > .list,
  .mod-list-description[data-col-wide="5"] > .list,
  .mod-list-description[data-col-wide="6"] > .list,
  .mod-list-description[data-col-wide=auto] {
    margin-left: -26px;
  }
  .mod-list-description[data-col-wide="2"] > .list > div,
  .mod-list-description[data-col-wide="3"] > .list > div,
  .mod-list-description[data-col-wide="4"] > .list > div,
  .mod-list-description[data-col-wide="5"] > .list > div,
  .mod-list-description[data-col-wide="6"] > .list > div,
  .mod-list-description[data-col-wide=auto] > .list > div {
    padding-left: 26px;
  }
}
.mod-list-description > .list > div > dd > span {
  display: block;
  margin-bottom: 8px;
}

.mod-list-description > .list > div > dd > :first-child {
  margin-top: 0;
}

.mod-list-description > .list > div > dd > :last-child {
  margin-bottom: 0;
}

.mod-list-description > .list > div + div {
  padding: 40px 0 0;
}

@media screen and (min-width: 768px), print {
  .mod-list-description > .list > div + div {
    padding-top: 40px;
  }
}
.mod-list-description-03 {
  margin: 0 0 30px;
}

.mod-list-description-03 > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.mod-list-description-03 > .list > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  min-width: 100%;
  max-width: 100%;
  margin-top: 20px;
  margin-bottom: 20px;
}

.mod-list-description-03 > .list > div:first-child {
  margin-top: 0;
}

.mod-list-description-03 > .list > div > * {
  -webkit-box-flex: initial;
      -ms-flex: initial;
          flex: initial;
}

.mod-list-description-03 > .list > div > dt {
  width: 100%;
  margin: 0 0 16px;
  padding: 0 0 16px;
  border-bottom: 1px solid #dbdbdb;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
}

.mod-list-description-03 > .list > div > dd {
  -webkit-box-flex: initial;
      -ms-flex: initial;
          flex: initial;
  padding-left: 0;
  line-height: 1.65;
}

.mod-list-description-03 > .list > div > dd > :first-child {
  margin-top: 0;
}

.mod-list-description-03 > .list > div > dd > :last-child {
  margin-bottom: 0;
}

.mod-list-description-03 > .list > div > dd > span {
  display: block;
  margin-bottom: 8px;
}

@media screen and (min-width: 768px), print {
  .mod-list-description-03 > .list > div {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    width: 100%;
    margin-top: 0;
  }
  .mod-list-description-03 > .list > div > dt {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    width: 146px;
    min-width: 146px;
    margin: 0;
    padding: 0;
    border-bottom: none;
    font-size: 1.6rem;
    line-height: 1.65;
  }
  .mod-list-description-03 > .list > div > dd {
    -webkit-box-flex: 2;
        -ms-flex: 2 1 100%;
            flex: 2 1 100%;
    padding-left: 20px;
  }
}
.mod-list-news {
  margin: 0 0 40px;
  padding: 0;
}

.mod-list-news.of-list-bottom-line {
  margin-bottom: 0;
}
.mod-list-news.of-list-bottom-line > .list > li:last-child {
  margin-bottom: 16px;
  border-bottom: 1px solid #dbdbdb;
}
.mod-list-news.of-list-bottom-line > .list > li:last-child > .content {
  margin-bottom: 16px;
}

.mod-list-news + .mod-link {
  margin-top: 0;
}

.mod-list-news > .list > li + li {
  margin: 16px 0 0;
  padding: 16px 0 0;
  border-top: 1px solid #dbdbdb;
}

.mod-list-news > .list > li .state,
.mod-list-news > .list > li > .state {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 16px;
}

.mod-list-news > .list > li .state .date,
.mod-list-news > .list > li > .state .date {
  min-width: 0;
  color: #767676;
}

.mod-list-news > .list > li .state .date:not(:last-child),
.mod-list-news > .list > li > .state .date:not(:last-child) {
  margin-right: 10px;
}

.mod-list-news > .list > li .state .tag,
.mod-list-news > .list > li div > .state .tag,
.mod-list-news > .list > li > .state .tag,
.mod-list-news > .list > li > div > .state .tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 0;
  padding: 2px 10px;
  border: none;
  border-radius: 21px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
}

.mod-list-news > .list > li .content,
.mod-list-news > .list > li > .content {
  margin: 0;
}

.mod-list-news > .list > li .content > :first-child,
.mod-list-news > .list > li > .content > :first-child {
  margin-top: 0;
}

.mod-list-news > .list > li .content > :last-child,
.mod-list-news > .list > li > .content > :last-child {
  margin-bottom: 0;
}

.mod-list-news > .list > li .content > * + .list,
.mod-list-news > .list > li .content > * + .notice,
.mod-list-news > .list > li .content > * + .summary,
.mod-list-news > .list > li > .content > * + .list,
.mod-list-news > .list > li > .content > * + .notice,
.mod-list-news > .list > li > .content > * + .summary {
  margin: 16px 0;
}

.mod-list-news > .list > li .content .summary ~ [class^=mod-],
.mod-list-news > .list > li > .content .summary ~ [class^=mod-] {
  margin-bottom: 12px;
}

.mod-list-news > .list > li .content > .summary .mod-list-news > .list > li > .content > .summary {
  margin-bottom: 16px;
}

.mod-list-news > .list > li .content > .summary a,
.mod-list-news > .list > li > .content > .summary a {
  color: #222;
  text-decoration: none;
}

.mod-list-news > .list > li .content > dl.list > div > dt .mod-list-news > .list > li > .content > dl.list > div > dt {
  margin: 0 0 1px;
  font-weight: 700;
}

.mod-list-news > .list > li .content > dl.list > div > dd .mod-list-news > .list > li > .content > dl.list > div > dd {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 0 0 2px;
}

.mod-list-news > .list > li .content > dl.list > div > dd > span + span,
.mod-list-news > .list > li > .content > dl.list > div > dd > span + span {
  position: relative;
  margin: 0 0 0 6px;
  padding: 0 0 0 8px;
}

.mod-list-news > .list > li .content > dl.list > div > dd > span + span::before,
.mod-list-news > .list > li > .content > dl.list > div > dd > span + span::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  height: 1em;
  margin: auto 0;
  border-left: 1px solid #a0a0a0;
}

.mod-list-news > .list > li .content > * + .notice,
.mod-list-news > .list > li > .content > * + .notice {
  margin: 10px 0 20px;
}

.mod-list-news > .list > li .content > .notice > *,
.mod-list-news > .list > li > .content > .notice > * {
  display: table-cell;
}

.mod-list-news > .list > li .content > .notice > small .mod-list-news > .list > li > .content > .notice > small {
  width: 100%;
  padding: 0 0 0 7px;
}

.mod-list-news > .list > li .content > ul.list > li + li,
.mod-list-news > .list > li > .content > ul.list > li + li {
  margin-top: 4px;
}

.mod-list-news > .list > li .content > dl.list > div + div,
.mod-list-news > .list > li > .content > dl.list > div + div {
  margin-top: 4px;
}

@media screen and (min-width: 768px), print {
  .mod-list-news > .list > li {
    display: block;
    -ms-flex-wrap: initial;
        flex-wrap: initial;
    -webkit-box-align: initial;
        -ms-flex-align: initial;
            align-items: initial;
  }
  .mod-list-news > .list > li + li {
    margin-top: 16px;
    padding-top: 16px;
  }
  .mod-list-news > .list > li .state {
    -ms-flex-wrap: initial;
        flex-wrap: initial;
  }
  .mod-list-news > .list > li .state .date {
    margin-right: 10px;
  }
  .mod-list-news > .list > li .state .date:not(:last-child) {
    margin-right: 10px;
  }
  .mod-list-news > .list > li .state .tag {
    width: auto;
    margin: auto 0;
  }
  .mod-list-news > .list > li .content {
    margin-left: 0;
  }
  .mod-list-news > .list > li .content > * + .list,
  .mod-list-news > .list > li .content > * + .summary {
    margin: 10px 0;
  }
  .mod-list-news > .list > li .content > .summary a[href]:hover,
  .mod-list-news > .list > li > .content > .summary a[href]:hover {
    text-decoration: underline;
  }
  .mod-list-news > .list > li .content > * + dl.list {
    margin-top: 10px;
  }
  .mod-list-news > .list > li .content > dl.list > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .mod-list-news > .list > li .content > dl.list > div > dt {
    margin-right: 10px;
  }
  .mod-list-news > .list > li .content > dl.list > div > dd > span + span {
    margin-left: 20px;
    padding-left: 20px;
  }
  .mod-list-news > .list > li .content > .notice {
    margin-left: 0;
  }
  .mod-list-news > .list > li .content > .notice > small {
    padding-left: 3px;
  }
}
.mod-list-article {
  margin: 0 0 40px;
  padding: 0;
}
.mod-list-article__list {
  display: block;
}
.mod-list-article__item {
  display: -ms-grid;
  display: grid;
  position: relative;
  -ms-grid-columns: 1fr;
      -ms-grid-columns: 1fr;
          grid-template: auto/1fr;
          grid-template-areas: "head" "body" "article-image" "tags";
  padding-block: 28px;
  border-bottom: 1px solid #dbdbdb;
  gap: 12px;
}
@media screen and (min-width: 768px), print {
  .mod-list-article__item {
    -ms-grid-columns: 320px 30px auto;
        -ms-grid-columns: 320px 30px auto;
            grid-template: auto 1fr auto/320px auto;
            grid-template-areas: "article-image head" "article-image body" "article-image tags";
    padding-block: 28px;
    gap: 0 30px;
  }
}
.mod-list-article__head {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  grid-area: head;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  gap: 10px;
}
@media screen and (min-width: 768px), print {
  .mod-list-article__head {
    margin-bottom: 14px;
  }
}
.mod-list-article__body {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  display: -ms-grid;
  display: grid;
  grid-area: body;
  -ms-grid-rows: 1fr auto;
  grid-template-rows: 1fr auto;
  gap: 12px;
}
.mod-list-article .summary {
  color: #222;
  font-size: 1.6rem;
  line-height: 1.65;
}
.mod-list-article .summary a {
  color: #222;
  font-size: 1.6rem;
  line-height: 1.65;
  text-decoration: none;
}
.mod-list-article .summary a[href]::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: background 0.1s;
  transition: background 0.1s;
}
.mod-list-article .summary a[href]:focus-visible::after {
  background-color: rgba(0, 0, 0, 0.02);
}
@media (hover: hover) and (pointer: fine) {
  .mod-list-article .summary a[href]:hover {
    text-decoration: underline;
  }
  .mod-list-article .summary a[href]:hover::after {
    background-color: rgba(0, 0, 0, 0.02);
  }
}
.mod-list-article .sub-text {
  color: #6e6e6e;
  font-size: 1.4rem;
  line-height: 1.65;
}
.mod-list-article .tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 28px;
  padding: 2px 10px;
  border: 1px solid #c00;
  border-radius: 6px;
  background: #fff;
  color: #c00;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.2;
}
.mod-list-article .tag[href] {
  -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  .mod-list-article .tag[href]:hover {
    background: #c00;
    color: #fff;
  }
}
.mod-list-article .date {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  color: #767676;
  font-size: 1.6rem;
}
.mod-list-article .category {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 21px;
  padding: 2px 10px;
  border-radius: 40px;
  background-color: #f4f4f4;
  color: #222;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
}
.mod-list-article .article-image {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  display: -ms-grid;
  display: grid;
  justify-items: center;
  grid-area: article-image;
  width: 100%;
  max-width: 100%;
  height: auto;
}
.mod-list-article .article-image img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.mod-list-article .article-tags {
  -ms-grid-row: 7;
  -ms-grid-column: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 1;
  grid-area: tags;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
}
@media screen and (min-width: 768px), print {
  .mod-list-article .article-tags {
    margin-top: 14px;
  }
}

.mod-list-article + .mod-link {
  margin-top: 0;
}

.mod-list-faq .c-accordion .accordion-list .accordion-summary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  background-color: #f4f4f4;
}

.mod-list-faq .c-accordion .accordion-list .accordion-summary .mark-question {
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin: 0;
  margin-right: 8px;
  padding: 15px 0 15px 15px;
  background-color: transparent;
  color: #c00;
  font-family: "Roboto", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
}

.mod-list-faq.of-uniform-indent .c-accordion .accordion-list .accordion-summary .mark-question {
  min-width: 55px;
}

.mod-list-faq .c-accordion .accordion-list .accordion-summary .content {
  padding: 15px 48px 15px 0;
  line-height: 1.65;
}

.mod-list-faq .accordion-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  padding: 0;
}

.mod-list-faq .accordion-content::before {
  -webkit-box-flex: 1;
      -ms-flex: 1 1;
          flex: 1 1;
}

.mod-list-faq .accordion-content .mark-answer {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin: 0;
  margin-right: 8px;
  padding: 15px 0 15px 15px;
  background-color: transparent;
  color: #c00;
  font-family: "Roboto", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
}

.mod-list-faq.of-uniform-indent .accordion-content .mark-answer {
  min-width: 55px;
}

.mod-list-faq .accordion-content .accordion-innerWrap {
  -webkit-box-flex: 1;
      -ms-flex: 1 1;
          flex: 1 1;
  padding-left: 1em;
}

.mod-list-faq .accordion-content > .content {
  padding: 15px 15px 15px 0;
  line-height: 1.65;
}

.mod-list-faq .accordion-summary {
  background-color: transparent;
}

.mod-list-faq .c-accordion .accordion-list {
  margin-top: 20px;
  margin-bottom: 20px;
}

.mod-list-faq .c-accordion .accordion-list:first-child {
  margin-top: 0;
}

.mod-list-faq .c-accordion .accordion-list:last-child {
  margin-bottom: 40px;
}

.mod-list-faq .c-accordion .accordion-list + .accordion-list {
  border-top: 1px solid #dbdbdb;
}

.mod-list-faq .c-accordion .accordion-list .accordion-summary input[type=button] {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  background-color: #fff;
  color: transparent;
  text-align: left;
}

.mod-list-faq .c-accordion .accordion-summary::before {
  right: 15px;
}

.mod-list-faq .c-accordion .accordion-summary::after {
  content: none;
}

.mod-list-faq .c-accordion .accordion-content.is-active::before {
  content: none;
}

@media screen and (min-width: 768px), print {
  .mod-list-faq .c-accordion .accordion-list .accordion-summary .mark-question {
    padding: 20px 0 20px 20px;
  }
  .mod-list-faq .c-accordion .accordion-list .accordion-summary .content {
    padding: 20px 64px 20px 0;
  }
  .mod-list-faq .accordion-content .mark-answer {
    padding: 20px 0 20px 20px;
  }
  .mod-list-faq.of-uniform-indent .accordion-content .mark-answer {
    min-width: 60px;
  }
  .mod-list-faq .accordion-content > .content {
    padding: 20px 20px 20px 0;
    line-height: 1.65;
  }
  .mod-list-faq .c-accordion .accordion-summary::before {
    right: 20px;
  }
}
.mod-list-toc {
  display: block;
  margin: 0 calc(50% - 50vw) 30px;
  padding: 20px 20px 28px;
  background-color: #f4f4f4;
}
@media screen and (min-width: 768px), print {
  .mod-list-toc {
    margin-inline: auto;
    padding: 40px;
  }
}
:where(.mod-box, .mod-box-02) .mod-list-toc {
  margin: 0 auto;
  padding: 0;
  background-color: transparent;
}
@media screen and (min-width: 768px), print {
  :where(.mod-box, .mod-box-02) .mod-list-toc {
    margin-inline: auto;
    padding: 0;
  }
}
.mod-list-toc a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  color: #222;
  line-height: 1.65;
  text-decoration: none;
}
.mod-list-toc a[href] {
  text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
  .mod-list-toc a[href]:hover {
    color: #6e6e6e;
  }
}
.mod-list-toc li {
  color: #222;
  line-height: 1.65;
}
.mod-list-toc > ul {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
}
.mod-list-toc > * + ul {
  margin-top: -10px;
}
.mod-list-toc > ul > li {
  margin: 0;
  padding: 20px 0;
}
.mod-list-toc > ul > li + li {
  border-top: 1px solid #dbdbdb;
}
.mod-list-toc > ul > li:first-child {
  padding-top: 0;
}
.mod-list-toc > ul > li:last-child {
  padding-bottom: 12px;
}
.mod-list-toc > ul > li > a {
  padding: 0 0 0 40px;
}
.mod-list-toc > ul > li > a::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  margin: auto 0;
}
.mod-list-toc > ul > li > a::before {
  z-index: 0;
  top: 0;
  bottom: auto;
  left: 5px;
  width: 17px;
  height: 26.4px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  border-radius: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  line-height: 1.65;
}
.mod-list-toc > ul > li > a::before {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.mod-list-toc > :where(ul) ul {
  display: block;
  padding-top: 12px;
  padding-left: 40px;
}
.mod-list-toc > :where(ul) ul > li + li {
  margin-top: 12px;
}

.mod-tab-ui {
  position: relative;
  margin: 0 auto 40px;
  overflow: hidden;
}

.mod-tab-ui__menu-current {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 100;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 72px;
  padding: 12px 40px 12px 20px;
  overflow: hidden;
  border: 1px solid #dbdbdb;
  border-bottom: 2px solid #c00;
  border-radius: 8px 8px 0 0;
  background: #fff url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjEuNSI+PHBhdGggZD0ibTAgMCAuMDE2IDcuNTYxIiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyA2LjY0MyA5LjYwNikiLz48cGF0aCBkPSJtMCA3LjU2MS4wMTYtNy41NjEiIHRyYW5zZm9ybT0ibWF0cml4KC0uNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLS43MDcxMDcgMTIuMDEyIDE0Ljk1MikiLz48L2c+PC9zdmc+") no-repeat calc(100% - 13px) center;
  background-size: 24px;
  color: #222;
  font-size: 1.6rem;
}

.mod-tab-ui__dropdown-trigger {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: transparent;
}
.mod-tab-ui__dropdown-trigger:focus-visible {
  outline-offset: -3px;
}

.mod-tab-ui__current-view {
  display: -webkit-box;
  overflow: hidden;
  font-weight: 700;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.mod-tab-ui__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 2;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  overflow: hidden;
  border: 1px solid #dbdbdb;
  border-radius: 0;
  background: #fff;
}

.mod-tab-ui__list-item [role=tab] {
  border-top: 1px solid #dbdbdb;
}

.mod-tab-ui__button {
  width: 100%;
  height: 100%;
  padding: 10px 14px;
  border: none;
  background: #f4f4f4;
  font-size: 1.4rem;
  cursor: pointer;
}
.mod-tab-ui__button[aria-selected=true] {
  border-bottom: 2px solid #c00;
  background: #fff;
  font-weight: 700;
}
.mod-tab-ui__button:focus-visible {
  outline-offset: -4px;
}

.mod-tab-ui__panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  min-height: 240px;
  padding: 20px;
  border: 1px solid #dbdbdb;
  border-top: none;
}
.mod-tab-ui__panel[aria-hidden=true] {
  display: none;
}
.mod-tab-ui__panel[aria-hidden=false] {
  display: block;
}
.mod-tab-ui__panel:focus-visible {
  outline: #222 solid 2px;
  outline-offset: -4px;
}

.mod-tab-ui__panel-text {
  font-size: 1.6rem;
  line-height: 1.4;
}

@media screen and (max-width: 767px), print {
  .mod-tab-ui__button {
    text-align: left;
  }
  .mod-tab-ui__button[aria-selected=true] {
    display: none;
  }
  .mod-tab-ui__menu {
    visibility: hidden;
    position: absolute;
    z-index: -1;
    top: 71px;
    width: 1px;
    height: 1px;
    -webkit-transform: translateY(-3%);
            transform: translateY(-3%);
    -webkit-transition: opacity 0.2s, -webkit-transform 0.3s;
    transition: opacity 0.2s, -webkit-transform 0.3s;
    transition: transform 0.3s, opacity 0.2s;
    transition: transform 0.3s, opacity 0.2s, -webkit-transform 0.3s;
    opacity: 0;
  }
  .mod-tab-ui__menu.is-open {
    visibility: visible;
    z-index: 3;
    width: 100%;
    height: 100%;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  .mod-tab-ui__menu.is-open::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    left: 0;
    width: calc(100% - 2px);
    height: calc(100% - 72px);
    margin: auto;
    background: rgba(255, 255, 255, 0.7);
  }
}
@media screen and (min-width: 768px), print {
  .mod-tab-ui__menu-current {
    display: none;
  }
  .mod-tab-ui__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    border-radius: 8px 8px 0 0;
  }
  .mod-tab-ui__list-item {
    width: 100%;
  }
  .mod-tab-ui__list-item:not(:last-child) {
    border-right: 1px solid #dbdbdb;
  }
  .mod-tab-ui__list-item [role=tab] {
    border-top: none;
  }
  .mod-tab-ui__panel {
    padding: 40px;
  }
}
.mod-tags {
  display: block;
  margin: 0 0 10px;
}
.mod-tags .tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -8px;
  margin-left: -8px;
}
:where(.mod-list-description-02, .mod-general-search-result) .mod-tags .tags {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex-wrap: wrap !important;
      flex-wrap: wrap !important;
  gap: initial !important;
  -webkit-box-pack: initial !important;
      -ms-flex-pack: initial !important;
          justify-content: initial !important;
  max-width: initial !important;
  margin-top: -8px !important;
}
.mod-tags .tag {
  margin-top: 8px;
  margin-left: 8px;
}
:where(.mod-list-description-02, .mod-general-search-result) .mod-tags .tag {
  padding: initial !important;
  border: initial !important;
  border-radius: initial !important;
  background-color: transparent !important;
  color: initial !important;
  font-size: initial !important;
}
.mod-tags .tag span,
.mod-tags .tag a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 28px;
  padding: 4px 10px;
  border: 1px solid #c00;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}
.mod-tags .tag a[href] {
  -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  border: 1px solid #c00;
  border-radius: 6px;
  background: #fff;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  color: #c00;
  font-weight: bold;
  text-decoration: none;
}
.mod-tags .tag a[href]:hover {
  background: #c00;
  color: #fff;
}

/*! = Modules/Box */
.mod-box {
  margin: 0 0 30px;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff;
}

.mod-box > .inner {
  padding: 32px 20px;
}

.mod-box > .inner > .title {
  position: relative;
  margin: 0 0 16px;
  padding: 0;
  color: #333;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
}

.mod-box > .inner > .title::before {
  content: none;
  display: none;
}

.mod-box > .inner > .title + .content {
  padding-left: 0;
}

.mod-box.of-error > .inner > .title + .content {
  padding-left: 0;
}

.mod-box .mod-list-description {
  margin: 0;
}

.mod-box > .inner > .title strong,
.mod-box > .inner > .title strong,
.mod-box > .inner > .title b,
.mod-box > .inner > .title b {
  color: #333;
}

@media screen and (min-width: 768px), print {
  .mod-box > .inner {
    padding: 40px;
  }
  .mod-box > .inner > .title {
    margin-bottom: 16px;
    padding: 0;
    font-size: 2rem;
  }
  .mod-box .mod-list-description {
    margin: 0 -20px;
  }
}
.mod-box.of-important,
.mod-box.of-error {
  margin-top: 0;
  margin-bottom: 30px;
  border-width: 2px;
  border-color: #c00;
  background-color: #ffebeb;
}

.mod-box.of-important > .inner > .title,
.mod-box.of-error > .inner > .title {
  padding-left: 0;
  border-left: 0;
}

.mod-box.of-important > .inner > .title strong,
.mod-box.of-error > .inner > .title strong,
.mod-box.of-important > .inner > .title b,
.mod-box.of-error > .inner > .title b {
  color: #222;
}

.mod-box.of-important > .inner > .title::before,
.mod-box.of-error > .inner > .title::before {
  content: none;
  display: none;
}

.mod-box.of-important > .inner > .title + .content,
.mod-box.of-error > .inner > .title + .content {
  margin-top: 16px;
  margin-bottom: 0;
}

.mod-box.of-background {
  margin-top: 0;
  margin-bottom: 30px;
  border-color: #f7f7f7;
  background-color: #f7f7f7;
}

.mod-box.of-background > .inner > .title {
  padding-left: 0;
  border-left: 0;
}

.mod-box.of-background > .inner > .title::before {
  content: none;
  display: none;
}

.mod-box.of-background > .inner > .title + .content {
  margin-top: 16px;
  margin-bottom: 0;
}

.mod-box .mod-txt p {
  margin-top: 0;
  margin-bottom: 0;
}

.mod-box-product {
  position: relative;
  max-width: 1120px;
  margin: 0 0 40px;
}
.mod-box-product__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fit, 1fr);
  grid-template-rows: repeat(auto-fit, 1fr);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
}
@media screen and (min-width: 768px), print {
  .mod-box-product__inner {
    grid-template-columns: repeat(auto-fill, minmax(354px, 1fr));
    gap: 20px;
  }
}
@media screen and (min-width: 992px), print {
  .mod-box-product__inner {
    gap: 26px;
  }
}
.mod-box-product__inner > .item {
  display: contents;
}
.mod-box-product__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 20px 0 0;
  overflow: hidden;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff;
}

.mod-box-product-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0 18px;
}
.mod-box-product-header .hdg {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  width: 100%;
  padding-bottom: 12px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  text-align: left;
}

.mod-box-product-body {
  display: block;
  padding: 0 18px 20px;
}
.mod-box-product-body .product-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 10px;
}
.mod-box-product-body .product-link {
  display: block;
  position: relative;
  text-decoration: none;
}
.mod-box-product-body .product-link .category {
  margin-right: 8px;
}
@media screen and (min-width: 768px), print {
  .mod-box-product-body .product-link .category {
    margin-right: 16px;
  }
}
.mod-box-product-body .product-link .category span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 26px;
  padding: 4px 12px 5px;
  border-radius: 24px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.3;
  text-align: left;
  text-decoration: none;
}
.mod-box-product-body .product-link .link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: auto;
  padding: 0 0 0 28px;
  color: #222;
  font-size: 1.4rem;
  line-height: 1.65;
  text-decoration: none;
}
.mod-box-product-body .product-link .link::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  left: 0;
  width: 17px;
  height: 23.1px;
  margin: auto 0;
  border-radius: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  line-height: 1.65;
}
.mod-box-product-body .product-link .image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-bottom: 10px;
}
.mod-box-product-body .product-link .image .item {
  position: relative;
  overflow: hidden;
  aspect-ratio: 320/180;
}
.mod-box-product-body .product-link .image img:not(.image-icon) {
  display: block;
  position: absolute;
  width: 100%;
  max-width: 100%;
  height: 100%;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
}
.mod-box-product-body .product-link:hover .link {
  text-decoration: underline;
}
.mod-box-product-body .product-link:hover .image img:not(.image-icon) {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.mod-box-product-body .image-icon {
  display: block;
  position: absolute;
  z-index: 1;
  top: 10px;
  right: 0;
  width: 60px;
  height: 50px;
}
.mod-box-product-body .product-status {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 28px;
}
.mod-box-product-body .state {
  margin-right: auto;
  font-size: 1.4rem;
  font-weight: 700;
}
.mod-box-product-body .color {
  margin-left: auto;
}
.mod-box-product-body .color > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.mod-box-product-body .color > .list > li {
  margin-left: 10px;
}
.mod-box-product-body .color > .list > li .item {
  border: 1px solid #dbdbdb;
}
.mod-box-product-body .color > .list > li .item {
  display: block;
  width: 20px;
  height: 20px;
  -webkit-transition: border-color 0.2s;
  transition: border-color 0.2s;
  background: #f4f4f4;
}
.mod-box-product-body .color > .list > li .item span {
  position: absolute;
  z-index: -1;
  width: 0;
  height: 0;
  overflow: hidden;
}
.mod-box-product-body .color > .list > li:hover .item,
.mod-box-product-body .color > .list > li[aria-selected=true] .item {
  border: 2px solid #c00;
}
.mod-box-product-body .recommend {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 20px 0 0;
}
.mod-box-product-body .recommend .recommend-targets {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-bottom: -4px;
  margin-left: -4px;
}
.mod-box-product-body .recommend .recommend-target {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 4px;
  margin-left: 4px;
  padding: 3px 10px;
  border: 1px solid #dbdbdb;
  border-radius: 48px;
  background: #e2e2e2;
  color: #222;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
}
.mod-box-product-body .summary {
  margin-top: 10px;
  color: #222;
}
.mod-box-product-body .tag {
  margin-top: 12px;
  margin-bottom: 20px;
}
.mod-box-product-body .tag .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -4px;
  margin-left: -4px;
}
.mod-box-product-body .tag .list li {
  padding-top: 4px;
  padding-left: 4px;
}
.mod-box-product-body .tag .list li > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 6px;
  border: 1px solid #dbdbdb;
  background: #f4f4f4;
  color: #222;
  font-size: 1.2rem;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
}
.mod-box-product-body .spec {
  margin-top: 20px;
}
.mod-box-product-body .spec .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -4px;
  margin-left: -4px;
}
.mod-box-product-body .spec .list li {
  padding-top: 4px;
  padding-left: 4px;
}
.mod-box-product-body .spec .list li > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 46px;
}
.mod-box-product-body .spec .list li img {
  width: 100%;
  height: auto;
}
.mod-box-product-body .support {
  margin-top: 10px;
}
.mod-box-product-body .support .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -10px;
  margin-left: -10px;
}
.mod-box-product-body .support .list li {
  padding-top: 10px;
  padding-left: 10px;
}
.mod-box-product-body .support .list li > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.mod-box-product-body .review {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 10px;
}
.mod-box-product-body .review a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  color: #222;
  font-size: 1.6rem;
}
.mod-box-product-body .review a:hover {
  opacity: 0.7;
}
.mod-box-product-body .review-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  color: #0f6bff;
  font-size: 1.6rem;
  text-decoration: underline;
}
.mod-box-product-body .rating {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: 120px;
  height: 24px;
  font-size: 3rem;
  line-height: 1;
  white-space: nowrap;
}
.mod-box-product-body .rating .star-rating {
  position: relative;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  font-size: 2.2rem;
}
.mod-box-product-body .rating .star-rating::before, .mod-box-product-body .rating .star-rating::after {
  content: "☆☆☆☆☆";
  position: absolute;
  top: 0;
  left: 0;
  color: #f5c84d;
}
.mod-box-product-body .rating .star-rating::after {
  content: "★★★★★";
  overflow: hidden;
  color: #f5c84d;
}
.mod-box-product-body .rating .star-rating[data-rate="0"]::after {
  width: 0rem;
}
.mod-box-product-body .rating .star-rating[data-rate="0.1"]::after {
  width: 0.22rem;
}
.mod-box-product-body .rating .star-rating[data-rate="0.2"]::after {
  width: 0.44rem;
}
.mod-box-product-body .rating .star-rating[data-rate="0.3"]::after {
  width: 0.66rem;
}
.mod-box-product-body .rating .star-rating[data-rate="0.4"]::after {
  width: 0.88rem;
}
.mod-box-product-body .rating .star-rating[data-rate="0.5"]::after {
  width: 1.1rem;
}
.mod-box-product-body .rating .star-rating[data-rate="0.6"]::after {
  width: 1.32rem;
}
.mod-box-product-body .rating .star-rating[data-rate="0.7"]::after {
  width: 1.54rem;
}
.mod-box-product-body .rating .star-rating[data-rate="0.8"]::after {
  width: 1.76rem;
}
.mod-box-product-body .rating .star-rating[data-rate="0.9"]::after {
  width: 1.98rem;
}
.mod-box-product-body .rating .star-rating[data-rate="1"]::after {
  width: 2.2rem;
}
.mod-box-product-body .rating .star-rating[data-rate="1.1"]::after {
  width: 2.42rem;
}
.mod-box-product-body .rating .star-rating[data-rate="1.2"]::after {
  width: 2.64rem;
}
.mod-box-product-body .rating .star-rating[data-rate="1.3"]::after {
  width: 2.86rem;
}
.mod-box-product-body .rating .star-rating[data-rate="1.4"]::after {
  width: 3.08rem;
}
.mod-box-product-body .rating .star-rating[data-rate="1.5"]::after {
  width: 3.3rem;
}
.mod-box-product-body .rating .star-rating[data-rate="1.6"]::after {
  width: 3.52rem;
}
.mod-box-product-body .rating .star-rating[data-rate="1.7"]::after {
  width: 3.74rem;
}
.mod-box-product-body .rating .star-rating[data-rate="1.8"]::after {
  width: 3.96rem;
}
.mod-box-product-body .rating .star-rating[data-rate="1.9"]::after {
  width: 4.18rem;
}
.mod-box-product-body .rating .star-rating[data-rate="2"]::after {
  width: 4.4rem;
}
.mod-box-product-body .rating .star-rating[data-rate="2.1"]::after {
  width: 4.62rem;
}
.mod-box-product-body .rating .star-rating[data-rate="2.2"]::after {
  width: 4.84rem;
}
.mod-box-product-body .rating .star-rating[data-rate="2.3"]::after {
  width: 5.06rem;
}
.mod-box-product-body .rating .star-rating[data-rate="2.4"]::after {
  width: 5.28rem;
}
.mod-box-product-body .rating .star-rating[data-rate="2.5"]::after {
  width: 5.5rem;
}
.mod-box-product-body .rating .star-rating[data-rate="2.6"]::after {
  width: 5.72rem;
}
.mod-box-product-body .rating .star-rating[data-rate="2.7"]::after {
  width: 5.94rem;
}
.mod-box-product-body .rating .star-rating[data-rate="2.8"]::after {
  width: 6.16rem;
}
.mod-box-product-body .rating .star-rating[data-rate="2.9"]::after {
  width: 6.38rem;
}
.mod-box-product-body .rating .star-rating[data-rate="3"]::after {
  width: 6.6rem;
}
.mod-box-product-body .rating .star-rating[data-rate="3.1"]::after {
  width: 6.82rem;
}
.mod-box-product-body .rating .star-rating[data-rate="3.2"]::after {
  width: 7.04rem;
}
.mod-box-product-body .rating .star-rating[data-rate="3.3"]::after {
  width: 7.26rem;
}
.mod-box-product-body .rating .star-rating[data-rate="3.4"]::after {
  width: 7.48rem;
}
.mod-box-product-body .rating .star-rating[data-rate="3.5"]::after {
  width: 7.7rem;
}
.mod-box-product-body .rating .star-rating[data-rate="3.6"]::after {
  width: 7.92rem;
}
.mod-box-product-body .rating .star-rating[data-rate="3.7"]::after {
  width: 8.14rem;
}
.mod-box-product-body .rating .star-rating[data-rate="3.8"]::after {
  width: 8.36rem;
}
.mod-box-product-body .rating .star-rating[data-rate="3.9"]::after {
  width: 8.58rem;
}
.mod-box-product-body .rating .star-rating[data-rate="4"]::after {
  width: 8.8rem;
}
.mod-box-product-body .rating .star-rating[data-rate="4.1"]::after {
  width: 9.02rem;
}
.mod-box-product-body .rating .star-rating[data-rate="4.2"]::after {
  width: 9.24rem;
}
.mod-box-product-body .rating .star-rating[data-rate="4.3"]::after {
  width: 9.46rem;
}
.mod-box-product-body .rating .star-rating[data-rate="4.4"]::after {
  width: 9.68rem;
}
.mod-box-product-body .rating .star-rating[data-rate="4.5"]::after {
  width: 9.9rem;
}
.mod-box-product-body .rating .star-rating[data-rate="4.6"]::after {
  width: 10.12rem;
}
.mod-box-product-body .rating .star-rating[data-rate="4.7"]::after {
  width: 10.34rem;
}
.mod-box-product-body .rating .star-rating[data-rate="4.8"]::after {
  width: 10.56rem;
}
.mod-box-product-body .rating .star-rating[data-rate="4.9"]::after {
  width: 10.78rem;
}
.mod-box-product-body .rating .star-rating[data-rate="5"]::after {
  width: 11rem;
}
@media screen and (min-width: 992px), print {
  .mod-box-product-body .spec .list li > span {
    width: 50px;
  }
}

.mod-box-product-footer {
  margin-top: auto;
}
.mod-box-product-footer .product-link a {
  display: block;
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 40px;
  padding: 0;
  outline-offset: -4px;
  background-color: #e2e2e2;
  color: #222;
  font-size: 1.4rem;
  line-height: 40px;
  text-align: center;
  text-decoration: none;
}
.mod-box-product-footer .product-link a:hover {
  text-decoration: underline;
}
.mod-box-product-footer .product-link a::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  left: 20px;
  width: 18px;
  height: 26.4px;
  margin: auto 0;
  border-radius: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  line-height: 1.65;
}
.mod-box-product-footer .shop-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  min-height: 78px;
  padding: 12px 0 12px 18px;
  background: #222;
  color: #fff;
}
.mod-box-product-footer .shop-price {
  margin-block: auto;
  font-size: 1.1rem;
}
.mod-box-product-footer .shop-price > :not(.price) {
  margin-bottom: 4px;
}
.mod-box-product-footer .shop-price .price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-top: auto;
  font-size: 1.1rem;
  font-weight: 700;
}
.mod-box-product-footer .shop-price .price .unit {
  margin-left: 4px;
  font-size: 1.3rem;
}
.mod-box-product-footer .shop-price .price .num {
  font-family: "Roboto", sans-serif;
  font-size: 2rem;
}
.mod-box-product-footer .shop-price .price .note {
  margin-left: 4px;
  font-size: 1.3rem;
}
.mod-box-product-footer .btn-shop {
  min-width: 120px;
  margin-left: auto;
  border-left: 1px solid #fff;
}
.mod-box-product-footer .btn-shop a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: auto;
  min-height: 54px;
  padding: 0 18px 0 10px;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  outline-color: #fff;
  outline-offset: -4px;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
}
.mod-box-product-footer .btn-shop a:hover {
  opacity: 0.7;
}
.mod-box-product-footer .btn-shop a::before {
  content: "";
  display: block;
  position: static;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 30px;
  height: 30px;
  margin-right: 4px;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border: 0;
  background: no-repeat center;
  background-color: #fff;
  -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgdmlld0JveD0iMCAwIDMwIDMwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMzB2MzBoLTMweiIvPjxnIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMSAyaDE2bDIgMTNoLTIweiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNiA5Ljk2OSkiLz48cGF0aCBkPSJtLTExNjI2LjMtMzQ0OC4zYzAtLjAxLS4xLTQuNjMgNC40LTQuNjMgNC42IDAgNC4zIDQuNjMgNC4zIDQuNjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTE2MzcgMzQ1Ny40NCkiLz48L2c+PC9nPjwvc3ZnPg==") no-repeat center;
          mask: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgdmlld0JveD0iMCAwIDMwIDMwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMzB2MzBoLTMweiIvPjxnIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMSAyaDE2bDIgMTNoLTIweiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNiA5Ljk2OSkiLz48cGF0aCBkPSJtLTExNjI2LjMtMzQ0OC4zYzAtLjAxLS4xLTQuNjMgNC40LTQuNjMgNC42IDAgNC4zIDQuNjMgNC4zIDQuNjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTE2MzcgMzQ1Ny40NCkiLz48L2c+PC9nPjwvc3ZnPg==") no-repeat center;
}
@media screen and (min-width: 768px), print {
  .mod-box-product-footer .shop-price {
    font-size: 1.2rem;
  }
  .mod-box-product-footer .shop-price .price {
    font-size: 1.1rem;
  }
  .mod-box-product-footer .shop-price .price .unit {
    font-size: 1.3rem;
  }
  .mod-box-product-footer .shop-price .price .num {
    font-size: 2rem;
  }
  .mod-box-product-footer .shop-price .price .note {
    font-size: 1.3rem;
  }
  .mod-box-product-footer .btn-shop a {
    padding-left: 18px;
  }
}
@media screen and (min-width: 992px), print {
  .mod-box-product-footer .shop-price {
    font-size: 1.2rem;
  }
  .mod-box-product-footer .shop-price .price {
    font-size: 1.2rem;
  }
  .mod-box-product-footer .shop-price .price .unit {
    font-size: 1.6rem;
  }
  .mod-box-product-footer .shop-price .price .num {
    font-size: 2rem;
  }
  .mod-box-product-footer .shop-price .price .note {
    font-size: 1.4rem;
  }
  .mod-box-product-footer .btn-shop a {
    padding-left: 20px;
  }
}

.mod-box-reference {
  display: block;
  position: relative;
  margin: 0 0 30px;
  padding: 5px;
  overflow: hidden;
  border-radius: 6px;
  background-color: #e0c1c1;
}
.mod-box-reference::before, .mod-box-reference::after {
  content: "";
  display: block;
  position: absolute;
  width: 40px;
  height: 40px;
  background: #e0c1c1 no-repeat center;
  background-size: contain;
  inset: auto;
}
.mod-box-reference.of-grayscale {
  background-color: #dbdbdb;
}
.mod-box-reference.of-grayscale::before, .mod-box-reference.of-grayscale::after {
  background-color: #dbdbdb;
}
.mod-box-reference::before {
  top: 0;
  left: 0;
  border-radius: 6px 0 0 0;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCA0MCA0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMCAwaDQwdjQwaC00MHoiIGZpbGw9Im5vbmUiLz48cGF0aCBkPSJtMjMuODU2LTQzLjk2Yy00LjkyOCAyLjY4OC03LjQ0OCA2LjU1Mi03LjQ0OCAxMS44NzIgMCA0LjE0NCAxLjY4IDYuNSA0LjU5MiA2LjUuMDUuMDAyLjA5OS4wMDMuMTQ5LjAwMyAxLjk4NiAwIDMuNjIxLTEuNjM1IDMuNjIxLTMuNjIxIDAtLjEyLS4wMDYtLjIzOS0uMDE4LS4zNTguMDAxLS4wMzEuMDAxLS4wNjIuMDAxLS4wOTMgMC0xLjk1MS0xLjYwNS0zLjU1Ni0zLjU1Ni0zLjU1Ni0uMDY2IDAtLjEzMS4wMDEtLjE5Ny4wMDUtLjE4OC0uMDA5LS4zNzcuMDEtLjU2LjA1Ni4wNTYtMy42NCAxLjczNi01LjgyNCA1LjA0LTcuOXptLTEyLjMyIDBjLTQuOTI4IDIuNjg4LTcuNDQ4IDYuNTUyLTcuNDQ4IDExLjg3MiAwIDQuMTQ0IDEuNjggNi41IDQuNTkyIDYuNS4wNTMuMDAyLjEwNy4wMDMuMTYuMDAzIDIuMDA5IDAgMy42NjItMS42NTMgMy42NjItMy42NjIgMC0uMTA1LS4wMDUtLjIxMS0uMDE0LS4zMTcgMC0uMDE1IDAtLjAzMSAwLS4wNDYgMC0xLjk3NS0xLjYyNS0zLjYtMy42LTMuNi0uMDY5IDAtLjEzOS4wMDItLjIwOC4wMDYtLjE4OC0uMDA5LS4zNzcuMDEtLjU2LjA1Ni4wNTYtMy42NCAxLjczNi01LjgyNCA1LjA0LTcuOXoiIGZpbGw9IiNmZmYiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNS4yMTYgNTQuNzc2KSIvPjwvc3ZnPg==");
}
.mod-box-reference::after {
  right: 0;
  bottom: 0;
  border-radius: 0 0 6px 0;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCA0MCA0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMCAwaDQwdjQwaC00MHoiIGZpbGw9Im5vbmUiLz48cGF0aCBkPSJtNS43MTItMjUuNTkyYzQuOTI4LTIuNjg4IDcuNDQ4LTYuNTUyIDcuNDQ4LTExLjg3MiAwLTQuMTQ0LTEuNjgtNi41LTQuNTkyLTYuNS0uMDUtLjAwMi0uMDk5LS4wMDMtLjE0OS0uMDAzLTEuOTg2IDAtMy42MjEgMS42MzUtMy42MjEgMy42MjEgMCAuMTIuMDA2LjIzOS4wMTguMzU4LS4wMDEuMDMtLjAwMS4wNi0uMDAxLjA4OSAwIDEuOTUxIDEuNjA1IDMuNTU2IDMuNTU2IDMuNTU2LjA2NiAwIC4xMzEtLjAwMS4xOTctLjAwNS4xODguMDA5LjM3Ny0uMDEuNTYtLjA1Ni0uMDU2IDMuNjQtMS43MzYgNS44MjQtNS4wNCA3Ljl6bTEyLjMyIDBjNC45MjgtMi42ODggNy40NDgtNi41NTIgNy40NDgtMTEuODcyIDAtNC4xNDQtMS42OC02LjUtNC41OTItNi41LS4wNTMtLjAwMi0uMTA3LS4wMDMtLjE2LS4wMDMtMi4wMDkgMC0zLjY2MiAxLjY1My0zLjY2MiAzLjY2MiAwIC4xMDUuMDA1LjIxMS4wMTQuMzE3di4wNDZjMCAxLjk3NSAxLjYyNSAzLjYgMy42IDMuNi4wNjkgMCAuMTM5LS4wMDIuMjA4LS4wMDYuMTg4LjAwOS4zNzctLjAxLjU2LS4wNTYtLjA1NiAzLjY0LTEuNzM2IDUuODI0LTUuMDQgNy45eiIgZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJub256ZXJvIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1LjIxNiA1NC43NzYpIi8+PC9zdmc+");
}
.mod-box-reference > .inner {
  padding: calc(50px - 5px) calc(40px - 5px);
  border-radius: calc(6px / 2);
  background: #fff;
}
@media screen and (min-width: 768px), print {
  .mod-box-reference > .inner {
    padding: calc(50px - 5px);
  }
}
.mod-box-reference .reference-content {
  margin: 0;
  padding: 0;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.65;
}
.mod-box-reference .reference-source {
  display: block;
  margin-top: 20px;
  color: #767676;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.65;
  text-align: right;
}
.mod-box-reference .reference-source cite {
  font-style: normal;
}
.mod-box-reference .reference-source a {
  color: #0f6bff;
  text-decoration: none;
}
.mod-box-reference .reference-source a[href]:hover, .mod-box-reference .reference-source a[href]:focus {
  text-decoration: underline;
}
.mod-box-reference .cite-label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.mod-box-reference .cite-label::after {
  content: ":";
  display: block;
  padding: 0 0.1em;
}

/*! = Modules/Panel */
.mod-pnl-04 {
  margin: 0 0 40px;
}

.mod-pnl-04 > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: -20px;
  margin-left: -20px;
}

.mod-pnl-04 > .list > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-top: 20px;
  padding-left: 20px;
}
.mod-pnl-04 > .list > li + li {
  margin-top: 0;
}
.mod-pnl-04 > .list > li .tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -8px;
  margin-left: -8px;
  padding-top: 10px;
}
.mod-pnl-04 > .list > li .tag {
  margin-top: 8px;
  margin-left: 8px;
}
.mod-pnl-04 > .list > li .tag span,
.mod-pnl-04 > .list > li .tag a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 28px;
  padding: 4px 10px;
  border: 1px solid #c00;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}
.mod-pnl-04 > .list > li .tag a[href] {
  -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  border: 1px solid #c00;
  border-radius: 6px;
  background: #fff;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  color: #c00;
  font-weight: bold;
  text-decoration: none;
}
.mod-pnl-04 > .list > li .tag a[href]:hover {
  background: #c00;
  color: #fff;
}
.mod-pnl-04 > .list > li > .pnl, .mod-pnl-04 > .list > li > div .pnl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  overflow: hidden;
  color: #222;
  text-decoration: none;
}
.mod-pnl-04 > .list > li > .pnl > .category, .mod-pnl-04 > .list > li > .pnl .title, .mod-pnl-04 > .list > li > div .pnl > .category, .mod-pnl-04 > .list > li > div .pnl .title {
  position: static;
  top: 0;
  left: 0;
}
.mod-pnl-04 > .list > li > .pnl .title, .mod-pnl-04 > .list > li > div .pnl .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 1;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  width: 100%;
  height: auto;
  padding: 8px 0;
  background: transparent;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.44;
  text-align: left;
}
.title .title-name {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.44;
  text-align: left;
}
.mod-pnl-04 > .list > li > .pnl .title::before, .mod-pnl-04 > .list > li > div .pnl .title::before {
  content: "";
  z-index: 0;
  top: 0;
  bottom: auto;
  left: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 18px;
  height: 25.92px;
  margin-right: 4px;
  border-radius: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  line-height: 1.44;
}
.mod-pnl-04 > .list > li > .pnl:focus > .title, .mod-pnl-04 > .list > li > .pnl:hover > .title, .mod-pnl-04 > .list > li > div .pnl:focus > .title, .mod-pnl-04 > .list > li > div .pnl:hover > .title {
  background: transparent;
  text-decoration: underline;
}
.mod-pnl-04 > .list > li > .pnl > .image, .mod-pnl-04 > .list > li > div .pnl > .image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
  overflow: hidden;
  aspect-ratio: 360/222;
}
.mod-pnl-04 > .list > li .pnl > .image > span, .mod-pnl-04 > .list > li > div .pnl > .image > span {
  display: block;
  width: inherit;
  height: inherit;
  overflow: hidden;
}
.mod-pnl-04 > .list > li > .pnl > .image img, .mod-pnl-04 > .list > li > div .pnl > .image img {
  display: block;
  position: absolute;
  width: 100%;
  max-width: 100%;
  height: 100%;
  margin: auto;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
  -o-object-fit: contain;
     object-fit: contain;
  inset: 0;
}
.mod-pnl-04 > .list > li > .pnl:focus > .image img, .mod-pnl-04 > .list > li > .pnl:hover > .image img, .mod-pnl-04 > .list > li > div .pnl:focus > .image img, .mod-pnl-04 > .list > li > div .pnl:hover > .image img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.mod-pnl-04 > .list > li > .pnl > .description, .mod-pnl-04 > .list > li > div .pnl > .description {
  color: #767676;
  font-size: 1.6rem;
  line-height: 1.65;
}
.mod-pnl-04 > .list > li > .pnl > .description dl, .mod-pnl-04 > .list > li > div .pnl > .description dl {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 1fr;
  grid-template-columns: auto 1fr;
}
.mod-pnl-04 > .list > li > .pnl > .description dt, .mod-pnl-04 > .list > li > div .pnl > .description dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.mod-pnl-04 > .list > li > .pnl > .description dt::after, .mod-pnl-04 > .list > li > div .pnl > .description dt::after {
  content: "：";
  display: block;
  margin-left: auto;
}

@media screen and (min-width: 768px), print {
  .mod-pnl-04 {
    margin-bottom: 40px;
  }
  .mod-pnl-04 > .list {
    margin-top: -20px;
  }
  .mod-pnl-04 > .list > li {
    padding-top: 20px;
  }
  .mod-pnl-04 > .list > li + li {
    margin-top: 0;
  }
  .mod-pnl-04 > .list > li > .pnl .title, .mod-pnl-04 > .list > li > div .pnl .title {
    -webkit-transition: 0.2s background-color ease-out;
    transition: 0.2s background-color ease-out;
  }
}
.mod-pnl-04[data-col="2"] > .list,
.mod-pnl-04[data-col="3"] > .list,
.mod-pnl-04[data-col="4"] > .list,
.mod-pnl-04[data-col="5"] > .list,
.mod-pnl-04[data-col="6"] > .list {
  margin-left: -10px;
}

.mod-pnl-04[data-col="2"] > .list > li,
.mod-pnl-04[data-col="3"] > .list > li,
.mod-pnl-04[data-col="4"] > .list > li,
.mod-pnl-04[data-col="5"] > .list > li,
.mod-pnl-04[data-col="6"] > .list > li {
  padding-left: 10px;
}

.mod-pnl-04 > .list > li,
.mod-pnl-04[data-col="1"] > .list > li,
.mod-pnl-04[data-col="3"] > .list > li,
.mod-pnl-04[data-col="4"] > .list > li {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  min-width: 100%;
  max-width: 100%;
}

.mod-pnl-04[data-col="2"] > .list > li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-pnl-04[data-col=auto] > .list > li {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
  padding-left: 20px;
}

@media screen and (min-width: 768px), print {
  .mod-pnl-04[data-col-wide="2"] > .list,
  .mod-pnl-04[data-col-wide="3"] > .list,
  .mod-pnl-04[data-col-wide="4"] > .list,
  .mod-pnl-04[data-col="2"] > .list,
  .mod-pnl-04[data-col="3"] > .list,
  .mod-pnl-04[data-col="4"] > .list {
    margin-left: -20px;
  }
  .mod-pnl-04[data-col-wide="2"] > .list > li,
  .mod-pnl-04[data-col-wide="3"] > .list > li,
  .mod-pnl-04[data-col-wide="4"] > .list > li,
  .mod-pnl-04[data-col="2"] > .list > li,
  .mod-pnl-04[data-col="3"] > .list > li,
  .mod-pnl-04[data-col="4"] > .list > li {
    padding-left: 20px;
  }
  .mod-pnl-04[data-col-wide="1"] > .list > li {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    min-width: 100%;
    max-width: 100%;
  }
  .mod-pnl-04[data-col-wide="2"] > .list > li {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-pnl-04[data-col-wide="3"] > .list > li {
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    min-width: 33.3333%;
    max-width: 33.3333%;
  }
  .mod-pnl-04[data-col-wide="4"] > .list > li {
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-pnl-04[data-col-wide=auto] > .list > li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-pnl-04 > .list {
    margin-top: -26px;
  }
  .mod-pnl-04 > .list > li {
    padding-top: 26px;
  }
  .mod-pnl-04[data-col-wide="2"] > .list,
  .mod-pnl-04[data-col-wide="3"] > .list,
  .mod-pnl-04[data-col-wide="4"] > .list,
  .mod-pnl-04[data-col="2"] > .list,
  .mod-pnl-04[data-col="3"] > .list,
  .mod-pnl-04[data-col="4"] > .list {
    margin-left: -26px;
  }
  .mod-pnl-04[data-col-wide="2"] > .list > li,
  .mod-pnl-04[data-col-wide="3"] > .list > li,
  .mod-pnl-04[data-col-wide="4"] > .list > li,
  .mod-pnl-04[data-col="2"] > .list > li,
  .mod-pnl-04[data-col="3"] > .list > li,
  .mod-pnl-04[data-col="4"] > .list > li {
    padding-left: 26px;
  }
}
.mod-pnl-02 {
  margin: 0 0 40px;
}

.mod-pnl-02 > .list > li + * {
  margin-top: 20px;
  padding-top: 0;
  border-top: none;
}

.mod-pnl-02 > .list > li > .pnl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: inherit;
  text-decoration: none;
}

.mod-pnl-02 > .list > li > .pnl > .image {
  padding: 0;
}

.mod-pnl-02 > .list > li > .pnl > .image > span {
  width: auto;
}

.mod-pnl-02 > .list > li > .pnl > .image img {
  display: block;
  width: 80px;
  height: auto;
}

.mod-pnl-02 .pnl > .image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 80px;
  height: 80px;
  overflow: hidden;
}
.mod-pnl-02 .pnl > .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  max-width: 80px;
  height: auto;
  margin: 0 auto;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
}
.mod-pnl-02 .pnl:focus > .image img, .mod-pnl-02 .pnl:hover > .image img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

.mod-pnl-02 > .list > li > .pnl > .content {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding-left: 10px;
  line-height: 1.65;
}

.mod-pnl-02 > .list > li > .pnl > .content > :last-child {
  margin-bottom: 0;
}

.mod-pnl-02 > .list > li > .pnl > .content > .title {
  position: relative;
  padding: 0 0 0 24px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.44;
}

.mod-pnl-02 > .list > li > .pnl > .content > .title::after,
.mod-pnl-02 > .list > li > .pnl > .content > .title::before {
  content: "";
  display: block;
  position: absolute;
  margin: auto 0;
}

.mod-pnl-02 > .list > li > .pnl > .content > .title::before {
  content: "";
  z-index: 0;
  top: 0;
  bottom: auto;
  left: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 18px;
  height: 25.92px;
  margin-right: 4px;
  border-radius: 0;
  background: transparent url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  line-height: 1.44;
}

.mod-pnl-02 > .list > li > .pnl > .content > .title::after {
  content: none;
}

.mod-pnl-02 > .list > li > .pnl > .content > .description {
  margin: 6px 0 0;
  color: #767676;
  font-size: 1.6rem;
}

@media screen and (min-width: 768px), print {
  .mod-pnl-02 {
    margin-top: 0;
    margin-bottom: 40px;
  }
  .mod-pnl-02 > .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: -20px 0 0 -20px;
  }
  .mod-pnl-02 > .list > li {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
    margin: 0;
    padding: 20px 0 0 20px;
    border: 0;
  }
  .mod-pnl-02 > .list > li > .pnl > .image {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 100px;
    height: 100px;
    padding: 0;
    overflow: hidden;
  }
  .mod-pnl-02 > .list > li > .pnl > .image > span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .mod-pnl-02 > .list > li > .pnl > .image img {
    width: auto;
    max-width: 100px;
    height: auto;
    -webkit-transition: -webkit-transform 0.2s ease-out;
    transition: -webkit-transform 0.2s ease-out;
    transition: transform 0.2s ease-out;
    transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
  }
  .mod-pnl-02 > .list > li > .pnl > .content {
    padding-left: 20px;
  }
  .mod-pnl-02 > .list > li > .pnl > .content > .title::after {
    top: 0;
    left: 0;
    width: 18px;
    height: 25.92px;
  }
  .mod-pnl-02 > .list > li > .pnl > .content > .description {
    margin-top: 8px;
  }
  .mod-pnl-02 > .list > li > .pnl > .content > .title + .description {
    padding-left: 0;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-pnl-02 > .list {
    margin: -26px 0 0 -26px;
  }
  .mod-pnl-02 > .list > li {
    padding: 26px 0 0 26px;
  }
}
.mod-pnl-03 {
  margin: 0 0 40px;
}

.mod-pnl-03 > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -20px;
}

.mod-pnl-03 > .list > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 20px;
}

.mod-pnl-03 > .list > li > .pnl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  border: none;
  color: inherit;
  text-decoration: none;
}

.mod-pnl-03 > .list > li > .pnl:hover {
  text-decoration: none;
}

.mod-pnl-03 > .list > li > .pnl > .icon {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  grid-area: icon;
  background: #e2e2e2;
}

.mod-pnl-03 > .list > li > .pnl .title {
  grid-area: title;
  -webkit-box-flex: initial;
      -ms-flex-positive: initial;
          flex-grow: initial;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  padding: 8px 0 6px;
  background: transparent;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4444;
}

.mod-pnl-03 > .list > li > .pnl:hover .title {
  text-decoration: underline;
}

.mod-pnl-03 > .list > li > .pnl .title > span {
  display: block;
  position: relative;
  padding: 0 0 0 24px;
}

.mod-pnl-03 > .list > li > .pnl .title > span::after,
.mod-pnl-03 > .list > li > .pnl .title > span::before {
  content: "";
  display: block;
  position: absolute;
  margin: auto 0;
}

.mod-pnl-03 > .list > li > .pnl .title > span::before {
  content: "";
  z-index: 0;
  top: 0;
  bottom: auto;
  left: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 18px;
  height: 25.92px;
  margin-right: 4px;
  border-radius: 0;
  background: transparent url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  line-height: 1.44;
}

.mod-pnl-03 > .list > li > .pnl .title > span::after {
  content: none;
}

.mod-pnl-03 > .list > li > .pnl .description {
  grid-area: description;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  color: #767676;
  text-decoration: none;
}

.mod-pnl-03 > .list > li > .pnl > .image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  grid-area: image;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  width: auto;
  max-width: 100%;
  min-height: initial;
  padding: 0;
}

.mod-pnl-03 > .list > li > .pnl img {
  max-width: 100%;
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
}

.mod-pnl-03 > .list > li > .pnl:hover img {
  opacity: 1;
}

.mod-pnl-03 .pnl > .image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  overflow: hidden;
  aspect-ratio: 360/222;
}
.mod-pnl-03 .pnl > .image > span {
  display: block;
  width: inherit;
  height: inherit;
  overflow: hidden;
}
.mod-pnl-03 .pnl > .image img {
  display: block;
  position: absolute;
  width: 100%;
  max-width: 100%;
  height: 100%;
  margin: auto;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
  -o-object-fit: cover;
     object-fit: cover;
  inset: 0;
}
.mod-pnl-03 .pnl:focus > .image img, .mod-pnl-03 .pnl:hover > .image img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

.mod-pnl-03[data-col="2"] > .list,
.mod-pnl-03[data-col="3"] > .list,
.mod-pnl-03[data-col="4"] > .list,
.mod-pnl-03[data-col="5"] > .list,
.mod-pnl-03[data-col="6"] > .list {
  margin-left: -10px;
}

.mod-pnl-03[data-col="2"] > .list > li,
.mod-pnl-03[data-col="3"] > .list > li,
.mod-pnl-03[data-col="4"] > .list > li,
.mod-pnl-03[data-col="5"] > .list > li,
.mod-pnl-03[data-col="6"] > .list > li {
  padding-left: 10px;
}

.mod-pnl-03[data-col="1"] > .list > li {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  min-width: 100%;
  max-width: 100%;
}

.mod-pnl-03[data-col="2"] > .list > li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-pnl-03[data-col="3"] > .list > li {
  -ms-flex-preferred-size: 33.3333%;
      flex-basis: 33.3333%;
  min-width: 33.3333%;
  max-width: 33.3333%;
}

.mod-pnl-03[data-col="4"] > .list > li {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-pnl-03[data-col="5"] > .list > li {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-pnl-03[data-col="6"] > .list > li {
  -ms-flex-preferred-size: 16.6667%;
      flex-basis: 16.6667%;
  min-width: 16.6667%;
  max-width: 16.6667%;
}

.mod-pnl-03[data-col=auto] > .list {
  margin-left: -20px;
}

.mod-pnl-03[data-col=auto] > .list > li {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
  padding-left: 20px;
}

@media screen and (min-width: 768px), print {
  .mod-pnl-03 > .list > li {
    padding-top: 20px;
  }
  .mod-pnl-03 > .list > li > .pnl .description {
    text-decoration: none;
  }
  .mod-pnl-03 > .list > li > .pnl > .image {
    min-height: initial;
  }
  .mod-pnl-03 > .list > li > .pnl > .image img {
    max-width: 100%;
    height: auto;
  }
  .mod-pnl-03[data-col-wide="2"] > .list,
  .mod-pnl-03[data-col-wide="3"] > .list,
  .mod-pnl-03[data-col="2"] > .list,
  .mod-pnl-03[data-col="3"] > .list {
    margin-left: -20px;
  }
  .mod-pnl-03[data-col-wide="4"] > .list,
  .mod-pnl-03[data-col-wide="5"] > .list,
  .mod-pnl-03[data-col-wide="6"] > .list,
  .mod-pnl-03[data-col-wide=auto] > .list,
  .mod-pnl-03[data-col="4"] > .list,
  .mod-pnl-03[data-col="5"] > .list,
  .mod-pnl-03[data-col="6"] > .list {
    margin-left: -20px;
  }
  .mod-pnl-03[data-col-wide="2"] > .list > li,
  .mod-pnl-03[data-col-wide="3"] > .list > li,
  .mod-pnl-03[data-col="2"] > .list > li,
  .mod-pnl-03[data-col="3"] > .list > li {
    padding-left: 20px;
  }
  .mod-pnl-03[data-col-wide="4"] > .list > li,
  .mod-pnl-03[data-col-wide="5"] > .list > li,
  .mod-pnl-03[data-col-wide="6"] > .list > li,
  .mod-pnl-03[data-col-wide=auto] > .list > li,
  .mod-pnl-03[data-col="4"] > .list > li,
  .mod-pnl-03[data-col="5"] > .list > li,
  .mod-pnl-03[data-col="6"] > .list > li {
    padding-left: 20px;
  }
  .mod-pnl-03[data-col-wide="2"] > .list > li {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-pnl-03[data-col-wide="3"] > .list > li {
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    min-width: 33.3333%;
    max-width: 33.3333%;
  }
  .mod-pnl-03[data-col-wide="4"] > .list > li {
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-pnl-03[data-col-wide="5"] > .list > li {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-pnl-03[data-col-wide="6"] > .list > li {
    -ms-flex-preferred-size: 16.6667%;
        flex-basis: 16.6667%;
    min-width: 16.6667%;
    max-width: 16.6667%;
  }
  .mod-pnl-03[data-col-wide=auto] > .list > li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-pnl-03 > .list {
    margin-top: -26px;
  }
  .mod-pnl-03 > .list > li {
    padding-top: 26px;
  }
  .mod-pnl-03[data-col-wide="2"] > .list,
  .mod-pnl-03[data-col-wide="3"] > .list,
  .mod-pnl-03[data-col="2"] > .list,
  .mod-pnl-03[data-col="3"] > .list {
    margin-left: -26px;
  }
  .mod-pnl-03[data-col-wide="4"] > .list,
  .mod-pnl-03[data-col-wide="5"] > .list,
  .mod-pnl-03[data-col-wide="6"] > .list,
  .mod-pnl-03[data-col-wide=auto] > .list,
  .mod-pnl-03[data-col="4"] > .list,
  .mod-pnl-03[data-col="5"] > .list,
  .mod-pnl-03[data-col="6"] > .list {
    margin-left: -26px;
  }
  .mod-pnl-03[data-col-wide="2"] > .list > li,
  .mod-pnl-03[data-col-wide="3"] > .list > li,
  .mod-pnl-03[data-col="2"] > .list > li,
  .mod-pnl-03[data-col="3"] > .list > li {
    padding-left: 26px;
  }
  .mod-pnl-03[data-col-wide="4"] > .list > li,
  .mod-pnl-03[data-col-wide="5"] > .list > li,
  .mod-pnl-03[data-col-wide="6"] > .list > li,
  .mod-pnl-03[data-col-wide=auto] > .list > li,
  .mod-pnl-03[data-col="4"] > .list > li,
  .mod-pnl-03[data-col="5"] > .list > li,
  .mod-pnl-03[data-col="6"] > .list > li {
    padding-left: 26px;
  }
}
.mod-pnl-03.of-wide-horizontal > .list > li {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  min-width: 100%;
  max-width: 100%;
}
.mod-pnl-03.of-wide-horizontal[data-col="2"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="3"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="4"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="5"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="6"] > .list > li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  min-width: 50%;
  max-width: 50%;
}
@media screen and (min-width: 768px), print {
  .mod-pnl-03.of-wide-horizontal > .list > li > .pnl .title {
    padding-bottom: 12px;
  }
  .mod-pnl-03.of-wide-horizontal > .list > li > .pnl {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: minmax(0, var(--pnl-03-col-wide-horizontal-image-size)) 0 minmax(var(--pnl-03-col-wide-horizontal-content-min-width), 1fr);
        -ms-grid-columns: minmax(0, var(--pnl-03-col-wide-horizontal-image-size)) 0 minmax(var(--pnl-03-col-wide-horizontal-content-min-width), 1fr);
            grid-template: auto 1fr/minmax(0, var(--pnl-03-col-wide-horizontal-image-size)) minmax(var(--pnl-03-col-wide-horizontal-content-min-width), 1fr);
            grid-template-areas: "image title" "image description";
    gap: 0;
  }
  .mod-pnl-03.of-wide-horizontal > .list > li > .pnl .title {
    padding-top: 0;
    padding-left: 20px;
  }
  .mod-pnl-03.of-wide-horizontal > .list > li > .pnl .description {
    padding-left: 20px;
  }
  .mod-pnl-03.of-wide-horizontal > .list > li > .pnl .image {
    max-width: var(--pnl-03-col-wide-horizontal-image-size);
  }
  .mod-pnl-03.of-wide-horizontal > .list > li {
    --pnl-03-col-wide-horizontal-image-size: 360px;
    --pnl-03-col-wide-horizontal-content-min-width: 67%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    padding-top: 40px;
  }
  .mod-pnl-03.of-wide-horizontal[data-col="2"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="3"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="4"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="5"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="6"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="2"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="3"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="4"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="5"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="6"] > .list > li {
    --pnl-03-col-wide-horizontal-image-size: 265px;
    --pnl-03-col-wide-horizontal-content-min-width: 51%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-pnl-03.of-wide-horizontal > .list {
    margin-top: -40px;
  }
  .mod-pnl-03.of-wide-horizontal > .list > li {
    padding-top: 40px;
  }
  .mod-pnl-03.of-wide-horizontal[data-col="2"]:not([data-col-wide]) > .list, .mod-pnl-03.of-wide-horizontal[data-col="3"]:not([data-col-wide]) > .list, .mod-pnl-03.of-wide-horizontal[data-col="4"]:not([data-col-wide]) > .list, .mod-pnl-03.of-wide-horizontal[data-col="5"]:not([data-col-wide]) > .list, .mod-pnl-03.of-wide-horizontal[data-col="6"]:not([data-col-wide]) > .list, .mod-pnl-03.of-wide-horizontal[data-col-wide="2"] > .list, .mod-pnl-03.of-wide-horizontal[data-col-wide="3"] > .list, .mod-pnl-03.of-wide-horizontal[data-col-wide="4"] > .list, .mod-pnl-03.of-wide-horizontal[data-col-wide="5"] > .list, .mod-pnl-03.of-wide-horizontal[data-col-wide="6"] > .list {
    margin-top: -20px;
  }
  .mod-pnl-03.of-wide-horizontal[data-col="2"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="3"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="4"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="5"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="6"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="2"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="3"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="4"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="5"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="6"] > .list > li {
    padding-top: 20px;
  }
  .mod-pnl-03 > .list > li > .pnl .title {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .mod-pnl-03 > .list > li > .pnl .description {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .mod-pnl-03 > .list > li > .pnl > .image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-pnl-03.of-wide-horizontal[data-col="2"]:not([data-col-wide]) > .list, .mod-pnl-03.of-wide-horizontal[data-col="3"]:not([data-col-wide]) > .list, .mod-pnl-03.of-wide-horizontal[data-col="4"]:not([data-col-wide]) > .list, .mod-pnl-03.of-wide-horizontal[data-col="5"]:not([data-col-wide]) > .list, .mod-pnl-03.of-wide-horizontal[data-col="6"]:not([data-col-wide]) > .list, .mod-pnl-03.of-wide-horizontal[data-col-wide="2"] > .list, .mod-pnl-03.of-wide-horizontal[data-col-wide="3"] > .list, .mod-pnl-03.of-wide-horizontal[data-col-wide="4"] > .list, .mod-pnl-03.of-wide-horizontal[data-col-wide="5"] > .list, .mod-pnl-03.of-wide-horizontal[data-col-wide="6"] > .list {
    margin-top: -26px;
  }
  .mod-pnl-03.of-wide-horizontal[data-col="2"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="3"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="4"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="5"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col="6"]:not([data-col-wide]) > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="2"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="3"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="4"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="5"] > .list > li, .mod-pnl-03.of-wide-horizontal[data-col-wide="6"] > .list > li {
    padding-top: 26px;
  }
}

.mod-pnl-large {
  overflow: hidden;
}
.mod-pnl-large.of-dynamic {
  width: 100vw;
  margin: 0 calc(50% - 50vw) 40px;
}
.mod-pnl-large .pnl-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #222;
  color: #fff;
  text-decoration: none;
}
.mod-pnl-large .pnl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-decoration: none;
}
.mod-pnl-large .pnl::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  width: 100%;
  height: 100%;
}
.mod-pnl-large .pnl:focus-visible::after {
  outline: 2px solid #fff;
  outline-offset: -4px;
}
.mod-pnl-large .pnl:last-child {
  padding-bottom: 10px;
}
.mod-pnl-large .pnl .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 1;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: auto;
  padding: 30px;
  background: transparent;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
}
.mod-pnl-large .pnl .image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
  overflow: hidden;
}
.mod-pnl-large .pnl .image [hidden].of-wide {
  display: none;
}
.mod-pnl-large .pnl .image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 100%;
  height: 100%;
  margin: 0 auto;
  -webkit-transform: scale(1.01);
          transform: scale(1.01);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
  -o-object-fit: cover;
     object-fit: cover;
}
.mod-pnl-large .pnl:focus .image img,
.mod-pnl-large .pnl:hover .image img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.mod-pnl-large .tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: auto;
  padding: 0 20px 30px;
}
.mod-pnl-large .tag span,
.mod-pnl-large .tag a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 22px;
  padding: 2px 10px;
  border: 1px solid #c00;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}
.mod-pnl-large .tag a[href] {
  -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  border: 1px solid #c00;
  border-radius: 6px;
  background: #fff;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  color: #c00;
  font-weight: bold;
  text-decoration: none;
}
.mod-pnl-large .tag a[href]:hover {
  background: #c00;
  color: #fff;
}
.mod-pnl-large .tag a[href]:focus-visible {
  outline-color: #fff;
}
.mod-pnl-large.of-tags-clickable .pnl {
  position: relative;
}
.mod-pnl-large.of-tags-clickable .tags {
  position: relative;
  padding: 25px;
}
.mod-pnl-large.of-tags-clickable .tags::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: calc(100% + 80px);
  height: 1px;
  margin: auto;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: #707070;
}
@media screen and (min-width: 768px), print {
  .mod-pnl-large > .list > li .pnl .title {
    -webkit-transition: 0.2s background-color ease-out;
    transition: 0.2s background-color ease-out;
  }
  .mod-pnl-large .pnl:last-child {
    padding-bottom: 20px;
  }
  .mod-pnl-large .pnl .title {
    padding: 40px 40px 20px;
    font-size: 2rem;
    line-height: 1.65;
  }
  .mod-pnl-large .pnl .image [hidden].of-wide {
    display: block;
  }
  .mod-pnl-large .pnl .image [hidden].of-wide + img {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
  }
  .mod-pnl-large .tags {
    gap: 12px;
  }
  .mod-pnl-large .tag span,
  .mod-pnl-large .tag a {
    min-height: 26px;
    font-size: 1.4rem;
  }
}
.mod-pnl-large > .list, .mod-pnl-large[data-col="1"] > .list, .mod-pnl-large[data-col-wide="1"] > .list, .mod-pnl-large[data-col="2"] > .list, .mod-pnl-large[data-col-wide="2"] > .list, .mod-pnl-large[data-col="3"] > .list, .mod-pnl-large[data-col-wide="3"] > .list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[1];
  grid-template-columns: repeat(1, 1fr);
  gap: 1px;
  background: #707070;
}
.mod-pnl-large > .list::after {
  content: none;
  width: auto;
  height: auto;
  background-color: #222;
}
.mod-pnl-large > .list > li {
  height: 100%;
}
.mod-pnl-large .pnl .title, .mod-pnl-large[data-col="1"] .pnl .title, .mod-pnl-large[data-col-wide="1"] .pnl .title {
  padding: 20px 20px 10px;
}
.mod-pnl-large .pnl .image, .mod-pnl-large[data-col="1"] .pnl .image, .mod-pnl-large[data-col-wide="1"] .pnl .image {
  aspect-ratio: 375/420;
}
.mod-pnl-large.of-tags-clickable .pnl .title, .mod-pnl-large[data-col="1"].of-tags-clickable .pnl .title, .mod-pnl-large[data-col-wide="1"].of-tags-clickable .pnl .title {
  padding: 20px;
}
.mod-pnl-large.of-tags-clickable .tags, .mod-pnl-large[data-col="1"].of-tags-clickable .tags, .mod-pnl-large[data-col-wide="1"].of-tags-clickable .tags {
  padding: 20px;
}
.mod-pnl-large[data-col="2"] .pnl .title, .mod-pnl-large[data-col-wide="2"] .pnl .title, .mod-pnl-large[data-col="3"] .pnl .title, .mod-pnl-large[data-col-wide="3"] .pnl .title {
  padding: 30px 20px 20px;
}
.mod-pnl-large[data-col="2"] .tags, .mod-pnl-large[data-col-wide="2"] .tags, .mod-pnl-large[data-col="3"] .tags, .mod-pnl-large[data-col-wide="3"] .tags {
  padding: 0 20px 30px;
}
.mod-pnl-large[data-col="2"] .pnl .image, .mod-pnl-large[data-col-wide="2"] .pnl .image, .mod-pnl-large[data-col="3"] .pnl .image, .mod-pnl-large[data-col-wide="3"] .pnl .image {
  aspect-ratio: 600/380;
}
.mod-pnl-large[data-col="2"].of-tags-clickable .pnl .title, .mod-pnl-large[data-col-wide="2"].of-tags-clickable .pnl .title, .mod-pnl-large[data-col="3"].of-tags-clickable .pnl .title, .mod-pnl-large[data-col-wide="3"].of-tags-clickable .pnl .title {
  padding: 20px;
}
.mod-pnl-large[data-col="2"].of-tags-clickable .tags, .mod-pnl-large[data-col-wide="2"].of-tags-clickable .tags, .mod-pnl-large[data-col="3"].of-tags-clickable .tags, .mod-pnl-large[data-col-wide="3"].of-tags-clickable .tags {
  padding: 20px;
}
@media screen and (min-width: 768px), print {
  .mod-pnl-large > .list, .mod-pnl-large[data-col="1"] > .list, .mod-pnl-large[data-col-wide="1"] > .list {
    -ms-grid-columns: (1fr)[1];
    grid-template-columns: repeat(1, 1fr);
  }
  .mod-pnl-large .pnl .title, .mod-pnl-large[data-col="1"] .pnl .title, .mod-pnl-large[data-col-wide="1"] .pnl .title {
    padding: 40px 40px 20px;
    font-size: 2rem;
  }
  .mod-pnl-large .tags, .mod-pnl-large[data-col="1"] .tags, .mod-pnl-large[data-col-wide="1"] .tags {
    padding: 0 40px 40px;
  }
  .mod-pnl-large .pnl .image, .mod-pnl-large[data-col="1"] .pnl .image, .mod-pnl-large[data-col-wide="1"] .pnl .image {
    aspect-ratio: 1200/450;
  }
  .mod-pnl-large.of-tags-clickable .pnl .title, .mod-pnl-large[data-col="1"].of-tags-clickable .pnl .title, .mod-pnl-large[data-col-wide="1"].of-tags-clickable .pnl .title {
    padding: 25px;
  }
  .mod-pnl-large.of-tags-clickable .tags, .mod-pnl-large[data-col="1"].of-tags-clickable .tags, .mod-pnl-large[data-col-wide="1"].of-tags-clickable .tags {
    padding: 25px;
  }
  .mod-pnl-large[data-col="2"] > .list, .mod-pnl-large[data-col-wide="2"] > .list {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
  .mod-pnl-large[data-col="2"] > .list::after, .mod-pnl-large[data-col-wide="2"] > .list::after {
    content: "";
    width: calc(100% * 1);
  }
  .mod-pnl-large[data-col="2"] .pnl .title, .mod-pnl-large[data-col-wide="2"] .pnl .title {
    padding: 60px 40px 30px;
    font-size: 2rem;
  }
  .mod-pnl-large[data-col="2"] .tags, .mod-pnl-large[data-col-wide="2"] .tags {
    padding: 0 40px 60px;
  }
  .mod-pnl-large[data-col="2"].of-tags-clickable .pnl .title, .mod-pnl-large[data-col-wide="2"].of-tags-clickable .pnl .title {
    padding: 25px;
  }
  .mod-pnl-large[data-col="2"].of-tags-clickable .tags, .mod-pnl-large[data-col-wide="2"].of-tags-clickable .tags {
    padding: 25px;
  }
  .mod-pnl-large[data-col="3"] > .list, .mod-pnl-large[data-col-wide="3"] > .list {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
  }
  .mod-pnl-large[data-col="3"] > .list::after, .mod-pnl-large[data-col-wide="3"] > .list::after {
    content: "";
    width: calc(100% * 2);
  }
  .mod-pnl-large[data-col="3"] .pnl .title, .mod-pnl-large[data-col-wide="3"] .pnl .title {
    padding: 40px 30px 20px;
    font-size: 1.8rem;
  }
  .mod-pnl-large[data-col="3"] .tags, .mod-pnl-large[data-col-wide="3"] .tags {
    padding: 0 30px 50px;
  }
  .mod-pnl-large[data-col="3"].of-tags-clickable .pnl .title, .mod-pnl-large[data-col-wide="3"].of-tags-clickable .pnl .title {
    padding: 25px;
  }
  .mod-pnl-large[data-col="3"].of-tags-clickable .tags, .mod-pnl-large[data-col-wide="3"].of-tags-clickable .tags {
    padding: 25px;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-pnl-large .pnl .title, .mod-pnl-large[data-col="1"] .pnl .title, .mod-pnl-large[data-col-wide="1"] .pnl .title {
    padding: 40px 80px 20px;
  }
  .mod-pnl-large .tags, .mod-pnl-large[data-col="1"] .tags, .mod-pnl-large[data-col-wide="1"] .tags {
    padding: 0 80px 40px;
  }
  .mod-pnl-large .pnl .image, .mod-pnl-large[data-col="1"] .pnl .image, .mod-pnl-large[data-col-wide="1"] .pnl .image {
    aspect-ratio: 1200/450;
  }
  .mod-pnl-large[data-col="2"] .pnl .title, .mod-pnl-large[data-col-wide="2"] .pnl .title {
    padding: 60px 80px 30px;
  }
  .mod-pnl-large[data-col="2"] .tags, .mod-pnl-large[data-col-wide="2"] .tags {
    padding: 0 80px 60px;
  }
  .mod-pnl-large[data-col="3"] .pnl .title, .mod-pnl-large[data-col-wide="3"] .pnl .title {
    padding: 40px 40px 20px;
  }
  .mod-pnl-large[data-col="3"] .tags, .mod-pnl-large[data-col-wide="3"] .tags {
    padding: 0 40px 50px;
  }
}

.mod-pnl-large-float {
  margin: 0 -20px 40px;
}
.mod-pnl-large-float > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.mod-pnl-large-float > .list > li + li {
  margin-top: 20px;
}
.mod-pnl-large-float__card {
  position: relative;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  -ms-grid-row: 3;
  grid-row: 3/3;
  width: calc(100% - 40px);
  max-width: 526px;
  margin: -48px 0 0;
  padding: 30px 20px;
  background-color: #fff;
  -webkit-box-shadow: 10px 10px 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 10px 10px 20px 0 rgba(0, 0, 0, 0.1);
}
.mod-pnl-large-float__image {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  grid-row: 1/3;
  width: 100%;
  max-width: 820px;
  aspect-ratio: 820/507;
}
.mod-pnl-large-float__image img {
  width: 100%;
  height: auto;
  aspect-ratio: inherit;
}
.mod-pnl-large-float__item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -ms-grid-rows: 1fr;
  grid-template-rows: 1fr;
  width: 100%;
}
.mod-pnl-large-float__item:nth-of-type(odd) .mod-pnl-large-float__card {
  margin-right: auto;
  border-radius: 0 6px 6px 0;
}
.mod-pnl-large-float__item:nth-of-type(even) .mod-pnl-large-float__card {
  margin-left: auto;
  border-radius: 6px 0 0 6px;
}
.mod-pnl-large-float__title {
  margin-bottom: 10px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
}
.mod-pnl-large-float__description {
  margin-bottom: 20px;
  font-size: 1.6rem;
  line-height: 1.65;
}
.mod-pnl-large-float__link {
  display: inline-block;
  position: relative;
  padding-bottom: 10px;
  text-decoration: none;
}
.mod-pnl-large-float__link::before, .mod-pnl-large-float__link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  -webkit-transform-origin: right top;
          transform-origin: right top;
  background: #c00;
}
.mod-pnl-large-float__link::before {
  z-index: 1;
  width: calc(100% - 10px);
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  opacity: 1;
}
.mod-pnl-large-float__link::after {
  z-index: 2;
  width: 0;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transition: -webkit-transform 0.4s 0.2s;
  transition: -webkit-transform 0.4s 0.2s;
  transition: transform 0.4s 0.2s;
  transition: transform 0.4s 0.2s, -webkit-transform 0.4s 0.2s;
}
.mod-pnl-large-float__link > span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: auto;
  padding: 0 38px 0 0;
  color: #222;
  font-size: 1.4rem;
  line-height: 1.65;
  text-decoration: none;
}
.mod-pnl-large-float__link > span::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  right: 10px;
  width: 17px;
  height: 23.1px;
  margin: auto 0;
  -webkit-transition: right 0.3s;
  transition: right 0.3s;
  border-radius: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  line-height: 1.65;
}
.mod-pnl-large-float__link:hover::before {
  opacity: 0;
}
.mod-pnl-large-float__link:hover::after {
  width: 100%;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  -webkit-transform-origin: left top;
          transform-origin: left top;
}
.mod-pnl-large-float__link:hover > span::before {
  right: 0;
}
@media screen and (min-width: 768px), print {
  .mod-pnl-large-float {
    margin: 0 -20px 40px;
  }
  .mod-pnl-large-float > .list > li + li {
    margin-top: 40px;
  }
  .mod-pnl-large-float__item:nth-of-type(odd) .mod-pnl-large-float__image {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
  }
  .mod-pnl-large-float__item:nth-of-type(even) .mod-pnl-large-float__image {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    width: calc(100% - 40px);
  }
}
@media screen and (min-width: 992px), print {
  .mod-pnl-large-float {
    margin: 0 auto 40px;
  }
  .mod-pnl-large-float > .list > li + li {
    margin-top: 40px;
  }
  .mod-pnl-large-float__card {
    min-height: 325px;
    margin-top: 0;
    padding: 40px;
  }
  .mod-pnl-large-float__item:nth-of-type(odd) {
    padding-bottom: 30px;
  }
  .mod-pnl-large-float__item:nth-of-type(odd) .mod-pnl-large-float__card {
    border-radius: 6px;
  }
  .mod-pnl-large-float__item:nth-of-type(odd) .mod-pnl-large-float__card {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    margin-top: auto;
    margin-bottom: -30px;
  }
  .mod-pnl-large-float__item:nth-of-type(even) .mod-pnl-large-float__card {
    border-radius: 6px;
  }
  .mod-pnl-large-float__item:nth-of-type(even) .mod-pnl-large-float__card {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3;
    margin-top: auto;
    margin-bottom: auto;
  }
  .mod-pnl-large-float__title {
    margin-bottom: 10px;
    font-size: 2.8rem;
  }
  .mod-pnl-large-float__description {
    margin-bottom: 40px;
  }
}

.mod-pnl-large-slide {
  width: 100%;
  margin: 0 auto 40px;
  overflow: visible;
}
.mod-pnl-large-slide.of-hide-grandient .pnl-card::after, .mod-pnl-large-slide.of-banner .pnl-card::after {
  display: none;
}
.mod-pnl-large-slide.of-banner .pnl-card .title {
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  border: 0 !important;
  font-size: 1.8rem;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}
.mod-pnl-large-slide.of-banner .description {
  display: none;
}
.mod-pnl-large-slide.of-banner .tags {
  display: none;
}
.mod-pnl-large-slide .pnl-card {
  display: block;
  position: relative;
  z-index: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: transparent;
  color: #fff;
  text-decoration: none;
}
.mod-pnl-large-slide .pnl-card::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(0, 0, 0, 0)), to(rgb(0, 0, 0)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgb(0, 0, 0) 100%);
}
.mod-pnl-large-slide .pnl-card .image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: -1;
  overflow: hidden;
}
.mod-pnl-large-slide .pnl-card .image [hidden].of-wide {
  display: none;
}
.mod-pnl-large-slide .pnl-card .image img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  -webkit-transform: scale(1.01);
          transform: scale(1.01);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
}
.mod-pnl-large-slide .pnl-card:focus .image img,
.mod-pnl-large-slide .pnl-card:hover .image img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.mod-pnl-large-slide .pnl {
  display: -ms-grid;
  display: grid;
  position: absolute;
  z-index: 1;
  top: 0;
          grid-template-areas: "span" "tags" "title" "description";
  -ms-grid-rows: 1fr auto auto auto;
  grid-template-rows: 1fr auto auto auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  width: 100%;
  height: 100%;
  padding: 20px;
  text-decoration: none;
}
.mod-pnl-large-slide .pnl:focus-visible {
  outline-offset: -4px;
}
.mod-pnl-large-slide .pnl:focus-visible + .image img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.mod-pnl-large-slide .pnl::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.mod-pnl-large-slide .pnl:last-child {
  padding-bottom: 10px;
}
.mod-pnl-large-slide .pnl .title {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  display: block;
  z-index: 1;
  grid-area: title;
  width: 100%;
  height: auto;
  padding: 0;
  background: transparent;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.44;
  text-decoration: none;
}
.mod-pnl-large-slide .pnl .description {
  -ms-grid-row: 4;
  -ms-grid-column: 1;
  display: -ms-flexbox;
  display: flex;
  display: -webkit-box;
  z-index: 1;
  grid-area: description;
  width: 100%;
  height: auto;
  padding: 8px 0 0;
  overflow: hidden;
  background: transparent;
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0.03rem;
  line-height: 1.65;
  text-decoration: none;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.mod-pnl-large-slide .tags {
  -ms-grid-row: 7;
  -ms-grid-column: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  grid-area: tags;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  margin-top: auto;
  padding: 0 0 12px;
  gap: 8px 10px;
}
@media screen and (min-width: 768px), print{
  .mod-list-article__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .mod-list-article__body {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .mod-list-article .article-image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 5;
    -ms-grid-column: 1;
  }
  .mod-list-article .article-tags {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
  }
  .mod-pnl-large-slide .pnl .title {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .mod-pnl-large-slide .pnl .description {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .mod-pnl-large-slide .tags {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
  }
}
.mod-pnl-large-slide .tag span,
.mod-pnl-large-slide .tag a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 22px;
  padding: 2px 10px;
  border: 1px solid #c00;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}
.mod-pnl-large-slide .tag a[href] {
  -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  border: 1px solid #c00;
  border-radius: 6px;
  background: #fff;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  color: #c00;
  font-weight: bold;
  text-decoration: none;
}
.mod-pnl-large-slide .tag a[href]:hover {
  background: #c00;
  color: #fff;
}
@media screen and (min-width: 768px), print {
  .mod-pnl-large-slide > .list > li .pnl .title {
    -webkit-transition: 0.2s background-color ease-out;
    transition: 0.2s background-color ease-out;
  }
  .mod-pnl-large-slide .pnl-card::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(60%, rgba(0, 0, 0, 0)), to(rgb(0, 0, 0)));
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 60%, rgb(0, 0, 0) 100%);
  }
  .mod-pnl-large-slide .pnl-card .image [hidden].of-wide {
    display: block;
  }
  .mod-pnl-large-slide .pnl-card .image [hidden].of-wide + img {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
  }
  .mod-pnl-large-slide .pnl:last-child {
    padding-bottom: 20px;
  }
  .mod-pnl-large-slide .pnl .title {
    font-size: 2.4rem;
    line-height: 1.3;
  }
  .mod-pnl-large-slide .pnl .description {
    padding: 12px 0 0;
    font-size: 1.6rem;
    line-height: 1.65;
    -webkit-line-clamp: 1;
  }
  .mod-pnl-large-slide .tags {
    gap: 12px;
  }
  .mod-pnl-large-slide .tag span,
  .mod-pnl-large-slide .tag a {
    min-height: 26px;
    font-size: 1.4rem;
  }
}
.mod-pnl-large-slide > .list, .mod-pnl-large-slide[data-col="1"] > .list, .mod-pnl-large-slide[data-col-wide="1"] > .list, .mod-pnl-large-slide[data-col="2"] > .list, .mod-pnl-large-slide[data-col-wide="2"] > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -10px;
  margin-left: -10px;
}
.mod-pnl-large-slide > .list > li {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: auto;
  padding-top: 10px;
  padding-left: 10px;
}
.mod-pnl-large-slide > .list > div {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  padding-top: 10px;
  padding-left: 10px;
}
.mod-pnl-large-slide .pnl .title, .mod-pnl-large-slide[data-col="1"] .pnl .title, .mod-pnl-large-slide[data-col-wide="1"] .pnl .title {
  padding: 0;
}
.mod-pnl-large-slide .pnl .description, .mod-pnl-large-slide[data-col="1"] .pnl .description, .mod-pnl-large-slide[data-col-wide="1"] .pnl .description {
  padding: 8px 0 0;
}
.mod-pnl-large-slide .pnl .tags, .mod-pnl-large-slide[data-col="1"] .pnl .tags, .mod-pnl-large-slide[data-col-wide="1"] .pnl .tags {
  padding: 0 0 12px;
}
.mod-pnl-large-slide.of-tags-clickable .pnl .description, .mod-pnl-large-slide[data-col="1"].of-tags-clickable .pnl .description, .mod-pnl-large-slide[data-col-wide="1"].of-tags-clickable .pnl .description {
  padding: 8px 0 0;
}
.mod-pnl-large-slide[data-col="2"] .pnl-card::after, .mod-pnl-large-slide[data-col-wide="2"] .pnl-card::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(0, 0, 0, 0)), to(rgb(0, 0, 0)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgb(0, 0, 0) 100%);
}
.mod-pnl-large-slide[data-col="2"] .pnl .description, .mod-pnl-large-slide[data-col-wide="2"] .pnl .description {
  padding: 8px 0 0;
}
.mod-pnl-large-slide[data-col="2"] .pnl .tags, .mod-pnl-large-slide[data-col-wide="2"] .pnl .tags {
  padding: 0 0 12px;
}
.mod-pnl-large-slide[data-col="2"].of-tags-clickable .pnl .description, .mod-pnl-large-slide[data-col-wide="2"].of-tags-clickable .pnl .description {
  padding: 8px 0 0;
}
@media screen and (min-width: 768px), print {
  .mod-pnl-large-slide .pnl, .mod-pnl-large-slide[data-col="1"] .pnl, .mod-pnl-large-slide[data-col-wide="1"] .pnl {
    padding: 40px;
  }
  .mod-pnl-large-slide .pnl .title, .mod-pnl-large-slide[data-col="1"] .pnl .title, .mod-pnl-large-slide[data-col-wide="1"] .pnl .title {
    font-size: 2.4rem;
    line-height: 1.3;
  }
  .mod-pnl-large-slide .pnl .description, .mod-pnl-large-slide[data-col="1"] .pnl .description, .mod-pnl-large-slide[data-col-wide="1"] .pnl .description {
    padding: 12px 0 0;
    font-size: 1.6rem;
    line-height: 1.65;
    -webkit-line-clamp: 1;
  }
  .mod-pnl-large-slide .pnl .image, .mod-pnl-large-slide[data-col="1"] .pnl .image, .mod-pnl-large-slide[data-col-wide="1"] .pnl .image {
    aspect-ratio: 1200/450;
  }
  .mod-pnl-large-slide.of-tags-clickable .pnl .description, .mod-pnl-large-slide[data-col="1"].of-tags-clickable .pnl .description, .mod-pnl-large-slide[data-col-wide="1"].of-tags-clickable .pnl .description {
    padding: 12px 0 0;
  }
  .mod-pnl-large-slide[data-col="2"] .pnl-card::after, .mod-pnl-large-slide[data-col-wide="2"] .pnl-card::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(0, 0, 0, 0)), to(rgb(0, 0, 0)));
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgb(0, 0, 0) 100%);
  }
  .mod-pnl-large-slide[data-col="2"] .pnl, .mod-pnl-large-slide[data-col-wide="2"] .pnl {
    padding: 30px 40px;
  }
  .mod-pnl-large-slide[data-col="2"] > .list, .mod-pnl-large-slide[data-col-wide="2"] > .list {
    margin-top: -10px;
    margin-left: -10px;
  }
  .mod-pnl-large-slide[data-col="2"] > .list > li,
  .mod-pnl-large-slide[data-col="2"] > .list > div, .mod-pnl-large-slide[data-col-wide="2"] > .list > li,
  .mod-pnl-large-slide[data-col-wide="2"] > .list > div {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    padding-top: 10px;
    padding-left: 10px;
  }
  .mod-pnl-large-slide[data-col="2"] .pnl .title, .mod-pnl-large-slide[data-col-wide="2"] .pnl .title {
    font-size: 2.4rem;
  }
  .mod-pnl-large-slide[data-col="2"] .pnl .description, .mod-pnl-large-slide[data-col-wide="2"] .pnl .description {
    padding: 12px 0 0;
    font-size: 1.6rem;
    -webkit-line-clamp: 2;
  }
  .mod-pnl-large-slide[data-col="2"].of-tags-clickable .pnl .description, .mod-pnl-large-slide[data-col-wide="2"].of-tags-clickable .pnl .description {
    padding: 12px 0 0;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-pnl-large-slide > .list, .mod-pnl-large-slide[data-col="1"] > .list, .mod-pnl-large-slide[data-col-wide="1"] > .list {
    margin-top: -26px;
    margin-left: -26px;
  }
  .mod-pnl-large-slide > .list > li,
  .mod-pnl-large-slide > .list > div, .mod-pnl-large-slide[data-col="1"] > .list > li,
  .mod-pnl-large-slide[data-col="1"] > .list > div, .mod-pnl-large-slide[data-col-wide="1"] > .list > li,
  .mod-pnl-large-slide[data-col-wide="1"] > .list > div {
    padding-top: 26px;
    padding-left: 26px;
  }
  .mod-pnl-large-slide[data-col="2"] > .list, .mod-pnl-large-slide[data-col-wide="2"] > .list {
    margin-top: -26px;
    margin-left: -26px;
  }
  .mod-pnl-large-slide[data-col="2"] > .list > li,
  .mod-pnl-large-slide[data-col="2"] > .list > div, .mod-pnl-large-slide[data-col-wide="2"] > .list > li,
  .mod-pnl-large-slide[data-col-wide="2"] > .list > div {
    padding-top: 26px;
    padding-left: 26px;
  }
}

.mod-pnl-catalog {
  margin: 0 0 40px;
}

.mod-pnl-catalog > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -20px;
}

.mod-pnl-catalog > .list > li {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  padding-top: 20px;
}

.mod-pnl-catalog > .list > li > .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-grid-columns: initial;
  grid-template-columns: initial;
  -ms-grid-rows: initial;
  grid-template-rows: initial;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  padding: 30px 20px;
  -webkit-transition: -webkit-box-shadow 0.2s;
  transition: -webkit-box-shadow 0.2s;
  transition: box-shadow 0.2s;
  transition: box-shadow 0.2s, -webkit-box-shadow 0.2s;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background-color: #fff;
  color: inherit;
  text-decoration: none;
}

.mod-pnl-catalog > .list > li > .item > [data-catalog-type] {
  display: -ms-inline-grid;
  display: inline-grid;
  position: absolute;
  top: 0;
  left: 0;
  height: 30px;
  padding-inline: 8px;
  border-radius: 5px 0;
  background: #f4f4f4;
  color: #222;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
  isolation: isolate;
  place-items: center;
}
@media screen and (min-width: 768px), print {
  .mod-pnl-catalog > .list > li > .item > [data-catalog-type] {
    height: 40px;
    padding-inline: 11px;
    font-size: 1.4rem;
  }
}

@media (hover: hover) and (pointer: fine) {
  .mod-pnl-catalog > .list > li > .item:hover {
    -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  }
}
.mod-pnl-catalog > .list > li > .item > .title {
  grid-column: initial;
  grid-row: initial;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  margin: 0 0 20px;
}

.mod-pnl-catalog > .list > li > .item > .title > .tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 16px;
  font-size: 1.2rem;
}

.mod-pnl-catalog > .list > li > .item > .title > .tag:not(:empty) {
  padding-bottom: 4px;
}

.mod-pnl-catalog > .list > li > .item > .title > .tag > span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 51px;
  min-height: 21px;
  padding: 0 12px;
  border-radius: 20px;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
}

.mod-pnl-catalog > .list > li > .item > .title > .tag > span.of-new {
  background: #ffebeb;
  color: #c00;
  text-transform: uppercase;
}

.mod-pnl-catalog > .list > li > .item > .title > .name {
  display: block;
  position: relative;
  margin: 0;
  padding: 0;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
}

.mod-pnl-catalog > .list > li > .item > .title > .name[class*=of-icon-] > span {
  margin-right: 0.1em;
}

.mod-pnl-catalog > .list > li > .item > .title > .name::after,
.mod-pnl-catalog > .list > li > .item > .title > .name::before {
  content: none;
}

.mod-pnl-catalog > .list > li > .item > .title > .name::after {
  content: "";
  display: inline-block;
  position: static;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 20px;
  height: 1.5em;
  -webkit-transform: none;
          transform: none;
  border-radius: 0;
  background: no-repeat center left;
  background-size: 30px auto;
  line-height: 1.5;
  vertical-align: text-bottom;
}

.mod-pnl-catalog > .list > li > .item > .title > .name.of-icon-file::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMzAgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgzMHYyNGgtMzB6Ii8+PHBhdGggZD0ibS0yIDFoMjJ2MjJoLTIyeiIvPjxnIHN0cm9rZS13aWR0aD0iMS41Ij48cGF0aCBkPSJtMjMuMzUzIDEyLjYzdjguNTg0YzAgMS4wNDctLjg2MSAxLjkwOC0xLjkwOCAxLjkwOGgtOS41MzdjLTEuMDQ3IDAtMS45MDgtLjg2MS0xLjkwOC0xLjkwOHYtMTQuMzA2YzAtMS4wNDcuODYxLTEuOTA4IDEuOTA4LTEuOTA4aDYuNjc2IiBzdHJva2U9IiMyMjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC03LjIzMSAtMi4wMykiLz48cGF0aCBkPSJtMzIuNzY5IDkuNzY5aC0zLjQ2OWMtLjcxMyAwLTEuMy0uNTg3LTEuMy0xLjN2LTMuNDY5IiBzdHJva2U9IiMyMjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xNi42NDcgLTIuMDMpIi8+PHBhdGggZD0ibTI4IDVjMi42MTYgMCA0Ljc2OSAyLjE1MyA0Ljc2OSA0Ljc2OSIgc3Ryb2tlPSIjMjIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTYuNjQ3IC0yLjAzKSIvPjxwYXRoIGQ9Im0wIDBoNi42NjkiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNi4wNzggMTAuNzc4KSIvPjxwYXRoIGQ9Im0wIDBoNi42NjkiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNi4wNzggMTQuMDU1KSIvPjxwYXRoIGQ9Im0wIDBoNi42NjkiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNi4wNzggMTcuMzMyKSIvPjwvZz48L2c+PC9zdmc+");
}

.mod-pnl-catalog > .list > li > .item > .title > .name.of-icon-excel::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgdmlld0JveD0iMCAwIDMwIDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMzB2MjRoLTMweiIvPjxwYXRoIGQ9Im0xMyAyYzAtMS4xMDQtLjg5Ni0yLTItMmgtOWMtMS4xMDQgMC0yIC44OTYtMiAydjE0YzAgMS4xMDQuODk2IDIgMiAyaDljMS4xMDQgMCAyLS44OTYgMi0yeiIgc3Ryb2tlPSIjMDA3NzQwIiBzdHJva2Utd2lkdGg9IjEuNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMyAzKSIvPjxwYXRoIGQ9Im0wIDBoNi45MDUiIHN0cm9rZT0iIzAwNzc0MCIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIgc3Ryb2tlLXdpZHRoPSIxLjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYgMTQuNSkiLz48cGF0aCBkPSJtMCAwaDYuOTA1IiBzdHJva2U9IiMwMDc3NDAiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiIHN0cm9rZS13aWR0aD0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2IDE3LjUpIi8+PC9nPjxnIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCA1KSI+PHBhdGggZD0ibTEwLjgzMyA3LjVoLTguNjY2Yy0uOTE5IDAtMS42NjctLjY3My0xLjY2Ny0xLjV2LTRjMC0uODI3Ljc0OC0xLjUgMS42NjctMS41aDguNjY2Yy45MTkgMCAxLjY2Ny42NzMgMS42NjcgMS41djRjMCAuODI3LS43NDggMS41LTEuNjY3IDEuNXoiIGZpbGw9IiMwMDc3NDAiLz48cGF0aCBkPSJtMi4xNjcgMWMtLjY0NCAwLTEuMTY3LjQ0OS0xLjE2NyAxdjRjMCAuNTUxLjUyMyAxIDEuMTY3IDFoOC42NjZjLjY0NCAwIDEuMTY3LS40NDkgMS4xNjctMXYtNGMwLS41NTEtLjUyMy0xLTEuMTY3LTF6bTAtMWg4LjY2NmMxLjE5NyAwIDIuMTY3Ljg5NSAyLjE2NyAydjRjMCAxLjEwNS0uOTcgMi0yLjE2NyAyaC04LjY2NmMtMS4xOTcgMC0yLjE2Ny0uODk1LTIuMTY3LTJ2LTRjMC0xLjEwNS45Ny0yIDIuMTY3LTJ6IiBmaWxsPSIjZmZmIi8+PC9nPjxwYXRoIGQ9Im0uMDQ4IDBoLjc2NGwuMjU2LS41OGMuMDY4LS4xNTYuMTMyLS4zMTIuMi0uNWguMDE2Yy4wOC4xODQuMTQ4LjM0LjIyLjVsLjI4LjU4aC44bC0uODI0LTEuNS43NjgtMS40NzZoLS43NTZsLS4yMTYuNTMyYy0uMDYuMTQtLjEyNC4zLS4xOTIuNDg4aC0uMDE2Yy0uMDg0LS4xOTItLjE1Mi0uMzQ4LS4yMTYtLjQ4OGwtLjI0LS41MzJoLS43OTJsLjc2OCAxLjQ0NHptMy4xMjQgMGgxLjg3MnYtLjZoLTEuMTU2di0yLjM3NmgtLjcxNnptMy4zOC4wNTZjLjA0Ni4wMDYuMDkyLjAxLjEzOC4wMS41MjYgMCAuOTY3LS40MTYuOTk4LS45NDIuMDEyLS4zNzMtLjIzLS43MS0uNTg4LS44MTZsLS4zNzItLjE0OGMtLjI2NC0uMS0uNDUyLS4xNjgtLjQ1Mi0uMzMycy4xMzYtLjI0OC4zNTYtLjI0OGMuMjI0LjAwMy40NDEuMDgzLjYxMi4yMjhsLjM1Ni0uNDQ4Yy0uMjU5LS4yNTItLjYwNy0uMzkzLS45NjgtLjM5Mi0uMDM0LS4wMDQtLjA2OS0uMDA2LS4xMDQtLjAwNi0uNTA5IDAtLjkzOC4zOTgtLjk3Ni45MDYuMDA1LjM3MS4yNDcuNy42LjgxNmwuMzguMTZjLjI1Ni4xMDguNDIuMTY0LjQyLjMzNnMtLjEyNC4yNi0uMzg4LjI2Yy0uMjY4LS4wMTYtLjUyMy0uMTIyLS43MjQtLjNsLS40LjQ5MmMuMzA2LjI3My43MDIuNDI0IDEuMTEyLjQyNHoiIGZpbGw9IiNmZmYiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMi42MzEgMTAuNSkiLz48L3N2Zz4=");
}

.mod-pnl-catalog > .list > li > .item > .title > .name.of-icon-pdf::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgdmlld0JveD0iMCAwIDMwIDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Im0wIDBoMzB2MjRoLTMweiIvPjxwYXRoIGQ9Im0xMyAyYzAtMS4xMDQtLjg5Ni0yLTItMmgtOWMtMS4xMDQgMC0yIC44OTYtMiAydjE0YzAgMS4xMDQuODk2IDIgMiAyaDljMS4xMDQgMCAyLS44OTYgMi0yeiIgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjEuNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMyAzKSIvPjxwYXRoIGQ9Im0wIDBoNi45MDUiIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIgc3Ryb2tlLXdpZHRoPSIxLjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYgMTQuNSkiLz48cGF0aCBkPSJtMCAwaDYuOTA1IiBzdHJva2U9IiNjMDAiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiIHN0cm9rZS13aWR0aD0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2IDE3LjUpIi8+PC9nPjxnIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCA1KSI+PHBhdGggZD0ibTEwLjgzMyA3LjVoLTguNjY2Yy0uOTE5IDAtMS42NjctLjY3My0xLjY2Ny0xLjV2LTRjMC0uODI3Ljc0OC0xLjUgMS42NjctMS41aDguNjY2Yy45MTkgMCAxLjY2Ny42NzMgMS42NjcgMS41djRjMCAuODI3LS43NDggMS41LTEuNjY3IDEuNXoiIGZpbGw9IiNjMDAiLz48cGF0aCBkPSJtMi4xNjcgMWMtLjY0NCAwLTEuMTY3LjQ0OS0xLjE2NyAxdjRjMCAuNTUxLjUyMyAxIDEuMTY3IDFoOC42NjZjLjY0NCAwIDEuMTY3LS40NDkgMS4xNjctMXYtNGMwLS41NTEtLjUyMy0xLTEuMTY3LTF6bTAtMWg4LjY2NmMxLjE5NyAwIDIuMTY3Ljg5NSAyLjE2NyAydjRjMCAxLjEwNS0uOTcgMi0yLjE2NyAyaC04LjY2NmMtMS4xOTcgMC0yLjE2Ny0uODk1LTIuMTY3LTJ2LTRjMC0xLjEwNS45Ny0yIDIuMTY3LTJ6IiBmaWxsPSIjZmZmIi8+PC9nPjxwYXRoIGQ9Im0uMzY0IDBoLjU5MnYtMS4wNTJoLjRjLjYzNiAwIDEuMTQ0LS4zIDEuMTQ0LS45OCAwLS43LS41LS45MjgtMS4xNi0uOTI4aC0uOTc2em0uNTkyLTEuNTJ2LS45NzJoLjMzNmMuNDA4IDAgLjYyNC4xMTYuNjI0LjQ2cy0uMi41MTItLjYuNTEyem0yLjA3NiAxLjUyaC44NDRjLjAzOS4wMDMuMDc3LjAwNS4xMTYuMDA1LjcyOCAwIDEuMzI3LS41OTkgMS4zMjctMS4zMjcgMC0uMDU3LS4wMDQtLjExNC0uMDExLS4xNy4wMDctLjA1NC4wMS0uMTA4LjAxLS4xNjIgMC0uNzIxLS41OTQtMS4zMTYtMS4zMTYtMS4zMTYtLjA1MyAwLS4xMDYuMDA0LS4xNTguMDFoLS44MTJ6bS41OTItLjQ3NnYtMi4wMTJoLjE4NGMuNTUyIDAgLjkuMjcyLjkgMXMtLjM0OCAxLjAxMi0uOSAxLjAxMnptMi4yNjQuNDc2aC41OTJ2LTEuMmgxLjA1MnYtLjVoLTEuMDUydi0uNzcyaDEuMjMydi0uNDg4aC0xLjgyNHoiIGZpbGw9IiNmZmYiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMi40NjIgMTAuNSkiLz48L3N2Zz4=");
}

.mod-pnl-catalog > .list > li > .item > .title > .name.of-icon-zip::after {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAzMCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMCAwaDMwdjI0aC0zMHoiIGZpbGw9Im5vbmUiLz48ZyBmaWxsPSIjMjIyIiBmaWxsLXJ1bGU9Im5vbnplcm8iPjxwYXRoIGQ9Im0xMC45MjkgMGgtMTAuMDQ4Yy0uNDg0IDAtLjg4Mi4zOTgtLjg4Mi44ODIgMCAuNDgzLjM5OC44ODEuODgyLjg4MWg3LjkxOWwtMi43MjUgMi43MjVjLS4xNjUuMTY1LS4yNTguMzktLjI1OC42MjMgMCAuNDg0LjM5OC44ODIuODgyLjg4Mi4yMzMgMCAuNDU4LS4wOTMuNjIzLS4yNThsNC4yMzEtNC4yMzVjLjE2My0uMTY1LjI1NC0uMzg3LjI1NC0uNjE5IDAtLjQ4Mi0uMzk2LS44NzktLjg3OC0uODgxeiIgdHJhbnNmb3JtPSJtYXRyaXgoMCAxIC0xIDAgMTAuMzczIDMuOTQpIi8+PHBhdGggZD0ibS44ODEgMGMtLjQ4Mi4wMDItLjg3Ny4zOTktLjg3Ny44ODEgMCAuMjMyLjA5MS40NTQuMjU0LjYxOWw0LjIzMSA0LjIzYy4xNjIuMTQ4LjM3NC4yMy41OTQuMjMuNDgzIDAgLjg4MS0uMzk3Ljg4MS0uODgxIDAtLjIxOC0uMDgxLS40MjktLjIyOC0uNTkxbC00LjIzNi00LjIzYy0uMTY0LS4xNjQtLjM4Ny0uMjU3LS42MTktLjI1OHoiIHRyYW5zZm9ybT0ibWF0cml4KDAgMSAtMSAwIDE0LjYwMyA5Ljc1NykiLz48cGF0aCBkPSJtLTMzNTkuNjMgOTE1NC45MmgtMTcuMjNjLS40OSAwLS44OC0uNC0uODgtLjg5di01Ljg3YzAtLjQ4LjM5LS44OC44OC0uODguNDggMCAuODguNC44OC44OHY0Ljk5aDE1LjQ3di00Ljk5YzAtLjQ4LjQtLjg4Ljg4LS44OHMuODguNC44OC44OHY1Ljg3YzAgLjQ5LS40Ljg5LS44OC44OXoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMzNzcuNzQyIC05MTM0Ljg2MikiLz48L2c+PC9zdmc+");
}

.mod-pnl-catalog > .list > li > .item > .visual {
  grid-column: initial;
  grid-row: initial;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  height: 142px;
  margin: 0 auto 20px;
  padding: 0;
}

.mod-pnl-catalog > .list > li > .item > .visual span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  margin: auto;
  overflow: hidden;
}

.mod-pnl-catalog > .list > li > .item > .visual img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  margin: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.mod-pnl-catalog > .list > li > .item > .detail {
  grid-column: initial;
  grid-row: initial;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}

.mod-pnl-catalog > .list > li > .item > .detail > .list {
  display: table;
  width: 100%;
  border-top: 1px solid #dbdbdb;
}

.mod-pnl-catalog > .list > li > .item > .detail > .list > div {
  display: table-row;
}

.mod-pnl-catalog > .list > li > .item > .detail > .list > div > * {
  display: table-cell;
  padding: 10px 0;
  border-bottom: 1px solid #dbdbdb;
  font-size: 1.4rem;
  line-height: 1.5;
  vertical-align: top;
}

.mod-pnl-catalog > .list > li > .item > .detail > .list > div > dt {
  padding-right: 0;
  font-weight: 700;
  letter-spacing: normal;
  white-space: nowrap;
}

.mod-pnl-catalog[data-col="2"] > .list,
.mod-pnl-catalog[data-col="3"] > .list,
.mod-pnl-catalog[data-col="4"] > .list,
.mod-pnl-catalog[data-col="5"] > .list,
.mod-pnl-catalog[data-col="6"] > .list {
  margin-left: -26px;
}

.mod-pnl-catalog[data-col="2"] > .list > li,
.mod-pnl-catalog[data-col="3"] > .list > li,
.mod-pnl-catalog[data-col="4"] > .list > li,
.mod-pnl-catalog[data-col="5"] > .list > li,
.mod-pnl-catalog[data-col="6"] > .list > li {
  padding-left: 26px;
}

.mod-pnl-catalog[data-col="2"] > .list > li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-pnl-catalog[data-col="3"] > .list > li {
  -ms-flex-preferred-size: 33.3333%;
      flex-basis: 33.3333%;
  min-width: 33.3333%;
  max-width: 33.3333%;
}

.mod-pnl-catalog[data-col="4"] > .list > li {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-pnl-catalog[data-col="5"] > .list > li {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-pnl-catalog[data-col="6"] > .list > li {
  -ms-flex-preferred-size: 16.6667%;
      flex-basis: 16.6667%;
  min-width: 16.6667%;
  max-width: 16.6667%;
}

.mod-pnl-catalog[data-col=auto] > .list {
  margin-left: -20px;
}

.mod-pnl-catalog[data-col=auto] > .list > li {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
  padding-left: 20px;
}

@media screen and (min-width: 768px), print {
  .mod-pnl-catalog {
    margin: 0 0 40px;
  }
  .mod-pnl-catalog > .list > li {
    max-width: 50%;
  }
  .mod-pnl-catalog > .list > li > .item {
    padding: 50px 40px;
  }
  .mod-pnl-catalog > .list > li > .item > .title {
    margin-bottom: 20px;
  }
  .mod-pnl-catalog > .list > li > .item > .title > .tag > span {
    padding: 4px 8px;
  }
  .mod-pnl-catalog > .list > li > .item > .title > .tag:not(:empty) {
    padding-bottom: 10px;
  }
  .mod-pnl-catalog > .list > li > .item > .title > .name {
    font-size: 2rem;
    line-height: 1.3;
  }
  .mod-pnl-catalog > .list > li > .item > .title > .name .icn-pdf {
    margin-left: 8px;
  }
  .mod-pnl-catalog > .list > li > .item > .visual {
    max-width: 100%;
    height: 286px;
    max-height: 286px;
    margin-bottom: 40px;
  }
  .mod-pnl-catalog > .list > li > .item > .detail > .list > div > * {
    padding-top: 20px;
    padding-bottom: 20px;
    font-size: 1.6rem;
    line-height: 1.65;
  }
  .mod-pnl-catalog > .list > li > .item > .detail > .list > div > dt {
    padding-right: 20px;
  }
  .mod-pnl-catalog > .list > li > .item > .detail > .list > div > dd {
    width: 100%;
  }
  .mod-pnl-catalog[data-col-wide="2"] > .list,
  .mod-pnl-catalog[data-col-wide="3"] > .list,
  .mod-pnl-catalog[data-col="2"] > .list,
  .mod-pnl-catalog[data-col="3"] > .list {
    margin-top: -20px;
    margin-left: -20px;
  }
  .mod-pnl-catalog[data-col-wide="4"] > .list,
  .mod-pnl-catalog[data-col-wide="5"] > .list,
  .mod-pnl-catalog[data-col-wide="6"] > .list,
  .mod-pnl-catalog[data-col-wide=auto] > .list,
  .mod-pnl-catalog[data-col="4"] > .list,
  .mod-pnl-catalog[data-col="5"] > .list,
  .mod-pnl-catalog[data-col="6"] > .list {
    margin-top: -20px;
    margin-left: -20px;
  }
  .mod-pnl-catalog[data-col-wide="2"] > .list > li,
  .mod-pnl-catalog[data-col-wide="3"] > .list > li,
  .mod-pnl-catalog[data-col="2"] > .list > li,
  .mod-pnl-catalog[data-col="3"] > .list > li {
    padding-top: 20px;
    padding-left: 20px;
  }
  .mod-pnl-catalog[data-col-wide="4"] > .list > li,
  .mod-pnl-catalog[data-col-wide="5"] > .list > li,
  .mod-pnl-catalog[data-col-wide="6"] > .list > li,
  .mod-pnl-catalog[data-col-wide=auto] > .list > li,
  .mod-pnl-catalog[data-col="4"] > .list > li,
  .mod-pnl-catalog[data-col="5"] > .list > li,
  .mod-pnl-catalog[data-col="6"] > .list > li {
    padding-top: 20px;
    padding-left: 20px;
  }
  .mod-pnl-catalog[data-col-wide="2"] > .list > li {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-pnl-catalog[data-col-wide="3"] > .list > li {
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    min-width: 33.3333%;
    max-width: 33.3333%;
  }
  .mod-pnl-catalog[data-col-wide="4"] > .list > li {
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-pnl-catalog[data-col-wide="5"] > .list > li {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-pnl-catalog[data-col-wide="6"] > .list > li {
    -ms-flex-preferred-size: 16.6667%;
        flex-basis: 16.6667%;
    min-width: 16.6667%;
    max-width: 16.6667%;
  }
  .mod-pnl-catalog[data-col-wide=auto] > .list > li {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-pnl-catalog[data-col-wide="2"] > .list,
  .mod-pnl-catalog[data-col-wide="3"] > .list,
  .mod-pnl-catalog[data-col="2"] > .list,
  .mod-pnl-catalog[data-col="3"] > .list {
    margin-top: -26px;
    margin-left: -26px;
  }
  .mod-pnl-catalog[data-col-wide="4"] > .list,
  .mod-pnl-catalog[data-col-wide="5"] > .list,
  .mod-pnl-catalog[data-col-wide="6"] > .list,
  .mod-pnl-catalog[data-col-wide=auto] > .list,
  .mod-pnl-catalog[data-col="4"] > .list,
  .mod-pnl-catalog[data-col="5"] > .list,
  .mod-pnl-catalog[data-col="6"] > .list {
    margin-top: -26px;
    margin-left: -26px;
  }
  .mod-pnl-catalog[data-col-wide="2"] > .list > li,
  .mod-pnl-catalog[data-col-wide="3"] > .list > li,
  .mod-pnl-catalog[data-col="2"] > .list > li,
  .mod-pnl-catalog[data-col="3"] > .list > li {
    padding-top: 26px;
    padding-left: 26px;
  }
  .mod-pnl-catalog[data-col-wide="4"] > .list > li,
  .mod-pnl-catalog[data-col-wide="5"] > .list > li,
  .mod-pnl-catalog[data-col-wide="6"] > .list > li,
  .mod-pnl-catalog[data-col-wide=auto] > .list > li,
  .mod-pnl-catalog[data-col="4"] > .list > li,
  .mod-pnl-catalog[data-col="5"] > .list > li,
  .mod-pnl-catalog[data-col="6"] > .list > li {
    padding-top: 26px;
    padding-left: 26px;
  }
}
/*! = Modules/Media */
.media iframe {
  border: none;
}

.mod-media {
  margin: 20px auto 40px;
}

.mod-media > .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.mod-media > .inner > .caption {
  max-width: 100%;
  padding-top: 6px;
  font-size: 1.4rem;
  line-height: 1.65;
}

.mod-media > .inner > .caption a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 0 0 24px;
  padding-top: 0.15em;
  color: #767676;
  font-size: 1.4rem;
  line-height: 1.65;
  text-decoration: none;
}
.mod-media > .inner > .caption a:hover {
  text-decoration: underline;
}
.mod-media > .inner > .caption a:focus-visible {
  outline-offset: -2px;
}

.mod-media > .inner > .caption a::after,
.mod-media > .inner > .caption a::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  margin: auto 0;
}

.mod-media > .inner > .caption a::before {
  z-index: 0;
  top: 0;
  bottom: auto;
  left: 0;
  width: 24px;
  height: 26.4px;
  border-radius: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: 17px;
  line-height: 1.65;
}

.mod-media > .inner > .media {
  max-width: 100%;
  min-height: 0;
  text-align: center;
}

.mod-media > .inner > .media iframe,
.mod-media > .inner > .media img,
.mod-media > .inner > .media picture,
.mod-media > .inner > .media video {
  display: block;
  max-width: 100%;
  height: auto;
}

.mod-media > .inner > .media > a {
  display: block;
  position: relative;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  opacity: 1;
}
.mod-media > .inner > .media > a:focus-visible::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  margin: auto;
  border: #222 solid 2px;
  inset: 0;
}
.mod-media > .inner > .media > a:focus-visible {
  outline-offset: -2px;
}
@media (hover: hover) and (pointer: fine) {
  .mod-media > .inner > .media > a:hover {
    opacity: 0.7;
  }
}

.img-caption-center .caption {
  margin: 0 auto;
  text-align: center;
}
.img-caption-center .caption a {
  margin: 0 auto;
  text-align: left;
}

.img-caption-center .media {
  margin: 0 auto;
}

@media screen and (min-width: 768px), print {
  .mod-media > .inner {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .mod-media > .inner > .caption {
    padding-top: 12px;
  }
}
.mod-media-lyt {
  margin-top: 0;
  margin-bottom: 30px;
}

.mod-media-lyt > .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: -30px 0 0 -20px;
}

.mod-media-lyt > .inner > .content,
.mod-media-lyt > .inner > .media {
  padding: 30px 0 0 20px;
}

.mod-media-lyt > .inner > .content > :first-child,
.mod-media-lyt > .inner > .media > :first-child {
  margin-top: 0;
}

.mod-media-lyt > .inner > .content > :last-child,
.mod-media-lyt > .inner > .media > :last-child {
  margin-bottom: 0;
}

.mod-media-lyt > .inner > .content {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 100%;
}

.mod-media-lyt > .inner > .media {
  min-height: 0%;
  margin-right: auto;
  margin-left: auto;
}

.mod-media-lyt > .inner > .media > .mod-media {
  margin-top: 0;
  margin-left: 0;
}

.mod-media-lyt > .inner > .media > .mod-media > .inner > .media img {
  width: 100%;
}

.mod-media-lyt[data-fix-media-ratio]:not(.of-imageTop):not(.of-imageBottom) > .inner > .media {
  width: 100%;
}

.mod-media-lyt[data-fix-media-ratio]:not(.of-imageTop):not(.of-imageBottom) > .inner > .media > .mod-media > .inner > .media img {
  max-width: 100%;
}

.mod-media-lyt[data-fix-media-ratio]:not(.of-imageTop):not(.of-imageBottom)[data-fix-media-ratio="70"] > .inner > .media {
  min-width: 70%;
}

.mod-media-lyt[data-fix-media-ratio]:not(.of-imageTop):not(.of-imageBottom)[data-fix-media-ratio="60"] > .inner > .media {
  min-width: 60%;
}

.mod-media-lyt[data-fix-media-ratio]:not(.of-imageTop):not(.of-imageBottom)[data-fix-media-ratio="50"] > .inner > .media {
  min-width: 50%;
}

.mod-media-lyt[data-fix-media-ratio]:not(.of-imageTop):not(.of-imageBottom)[data-fix-media-ratio="40"] > .inner > .media {
  min-width: 40%;
}

.mod-media-lyt[data-fix-media-ratio]:not(.of-imageTop):not(.of-imageBottom)[data-fix-media-ratio="30"] > .inner > .media {
  min-width: 30%;
}

.mod-media-lyt.of-imageBottom > .inner > .media > .mod-media,
.mod-media-lyt.of-imageTop > .inner > .media > .mod-media {
  margin-top: 0;
}

.mod-media-lyt.of-imageBottom > .inner > .media > .mod-media > .inner > .media img,
.mod-media-lyt.of-imageTop > .inner > .media > .mod-media > .inner > .media img {
  max-width: 100%;
}

.mod-media-lyt.of-imageTop > .inner {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.mod-media-lyt.of-imageBottom > .inner {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}

.mod-media-lyt.of-imageRight > .inner {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.mod-media-lyt.align-middle > .inner {
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
}

.mod-media-lyt.align-bottom > .inner {
  -webkit-box-align: end !important;
      -ms-flex-align: end !important;
          align-items: flex-end !important;
}

.mod-media-lyt + .mod-btn {
  margin-top: 0;
}

.mod-media-lyt[class*=of-image] + .mod-btn {
  margin-top: 20px;
}

.mod-btn + .mod-media-lyt[class*=of-image] {
  margin-top: 56px;
}

.mod-media-lyt + .mod-box-productItems > .inner {
  margin-top: 0;
}

.mod-media-lyt.dy-media-lyt > .inner {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.mod-media-lyt.dy-media-lyt.of-imageTop > .inner {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}

.mod-media-lyt.dy-media-lyt.of-imageBottom > .inner {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.mod-media-lyt.dy-media-lyt.of-imageRight > .inner {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

.mod-media-lyt > .inner > .media > .mod-media > .inner > .caption {
  width: 100%;
}

@media screen and (max-width: 767px), print {
  .mod-media-lyt > .inner > .media {
    width: 100%;
  }
}
@media screen and (min-width: 768px), print {
  .mod-media-lyt.of-imageBottom-wide > .inner > .media > .mod-media,
  .mod-media-lyt.of-imageTop-wide > .inner > .media > .mod-media {
    margin-top: 0;
  }
  .mod-media-lyt[class*=of-image][class*=of-image] .mod-media {
    padding-right: 0;
    padding-left: 0;
  }
  .mod-media-lyt > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .mod-media-lyt.of-imageTop-wide > .inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .mod-media-lyt.of-imageBottom-wide > .inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .mod-media-lyt.of-imageRight-wide > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .mod-media-lyt.of-imageLeft-wide > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .mod-media-lyt[data-fix-media-ratio-wide]:not(.of-imageTop-wide):not(.of-imageBottom-wide) > .inner > .media > .mod-media > .inner > .media img {
    max-width: 100%;
  }
  .mod-media-lyt[data-fix-media-ratio-wide]:not(.of-imageTop-wide):not(.of-imageBottom-wide)[data-fix-media-ratio-wide="70"] > .inner > .media {
    min-width: 70%;
  }
  .mod-media-lyt[data-fix-media-ratio-wide]:not(.of-imageTop-wide):not(.of-imageBottom-wide)[data-fix-media-ratio-wide="60"] > .inner > .media {
    min-width: 60%;
  }
  .mod-media-lyt[data-fix-media-ratio-wide]:not(.of-imageTop-wide):not(.of-imageBottom-wide)[data-fix-media-ratio-wide="50"] > .inner > .media {
    min-width: 50%;
  }
  .mod-media-lyt[data-fix-media-ratio-wide]:not(.of-imageTop-wide):not(.of-imageBottom-wide)[data-fix-media-ratio-wide="40"] > .inner > .media {
    min-width: 40%;
  }
  .mod-media-lyt[data-fix-media-ratio-wide]:not(.of-imageTop-wide):not(.of-imageBottom-wide)[data-fix-media-ratio-wide="30"] > .inner > .media {
    min-width: 30%;
  }
  .mod-media-lyt:not([data-fix-media-ratio]):not(.of-imageTop-wide):not(.of-imageBottom-wide) > .inner > .media {
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    min-width: -webkit-min-content;
    min-width: -moz-min-content;
    min-width: min-content;
    max-width: 360px;
  }
  .mod-media-lyt > .inner > .media > .mod-media {
    margin-top: 4px;
  }
  .mod-media-lyt > .inner > .media > .mod-media > .inner > .media img {
    height: auto;
  }
  .mod-media-lyt.align-top-wide > .inner {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important;
  }
  .mod-media-lyt.align-middle-wide > .inner {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
  }
  .mod-media-lyt.align-bottom-wide > .inner {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important;
  }
  .mod-media-lyt > .inner > .media {
    -webkit-box-flex: 1;
        -ms-flex: auto;
            flex: auto;
  }
  .mod-media-lyt.dy-media-lyt.of-imageTop-wide > .inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .mod-media-lyt.dy-media-lyt.of-imageBottom-wide > .inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .mod-media-lyt.dy-media-lyt.of-imageRight-wide > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .mod-media-lyt.dy-media-lyt.of-imageLeft-wide > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
.mod-media-lyt.of-imageLeft-float > .inner,
.mod-media-lyt.of-imageRight-float > .inner {
  display: block;
  margin: 0;
}

.mod-media-lyt.of-imageLeft-float > .inner::after,
.mod-media-lyt.of-imageRight-float > .inner::after {
  content: "";
  display: block;
  clear: both;
  overflow: hidden;
}

.mod-media-lyt.of-imageLeft-float > .inner > .media,
.mod-media-lyt.of-imageRight-float > .inner > .media {
  display: block;
  min-width: auto;
  max-width: none;
  padding-left: 0;
}

.mod-media-lyt.of-imageLeft-float > .inner > .media {
  width: 100%;
  margin-right: 0;
  float: none;
}

.mod-media-lyt.of-imageRight-float > .inner > .media {
  width: 100%;
  margin-left: 0;
  float: none;
}

.mod-media-lyt.of-imageLeft-float .mod-media > .inner > .caption,
.mod-media-lyt.of-imageRight-float .mod-media > .inner > .caption {
  padding-bottom: 5px;
}

.mod-media-lyt.of-imageLeft-float > .inner > .content,
.mod-media-lyt.of-imageRight-float > .inner > .content {
  padding-left: 0;
}

.mod-media-lyt.of-imageLeft-float .mod-media > .inner > .caption,
.mod-media-lyt.of-imageRight-float .mod-media > .inner > .caption,
.mod-media-lyt.of-imageLeft-wide-float .mod-media > .inner > .caption,
.mod-media-lyt.of-imageRight-wide-float .mod-media > .inner > .caption {
  padding-bottom: 16px;
}

.mod-media-lyt.of-imageLeft > .inner,
.mod-media-lyt.of-imageRight > .inner,
.mod-media-lyt.of-imageLeft-wide-float > .inner,
.mod-media-lyt.of-imageRight-wide-float > .inner {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.mod-media-lyt.of-imageTop.of-imageLeft-wide-float > .inner,
.mod-media-lyt.of-imageTop.of-imageRight-wide-float > .inner {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.mod-media-lyt.of-imageBottom.of-imageLeft-wide-float > .inner,
.mod-media-lyt.of-imageBottom.of-imageRight-wide-float > .inner {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}

@media screen and (min-width: 768px), print {
  .mod-media-lyt.of-imageLeft-float > .inner > .media {
    margin-right: 20px;
  }
  .mod-media-lyt.of-imageRight-float > .inner > .media {
    margin-left: 20px;
  }
  .mod-media-lyt.of-imageLeft-wide-float > .inner,
  .mod-media-lyt.of-imageRight-wide-float > .inner {
    display: block;
    margin: -30px 0 0;
  }
  .mod-media-lyt.of-imageLeft > .inner,
  .mod-media-lyt.of-imageLeft-wide > .inner,
  .mod-media-lyt.of-imageLeft-wide-float > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .mod-media-lyt.of-imageRight > .inner,
  .mod-media-lyt.of-imageRight-wide > .inner,
  .mod-media-lyt.of-imageRight-wide-float > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .mod-media-lyt.of-imageLeft-wide-float > .inner::after,
  .mod-media-lyt.of-imageRight-wide-float > .inner::after {
    content: "";
    display: block;
    clear: both;
    overflow: hidden;
  }
  .mod-media-lyt.of-imageLeft-wide-float > .inner > .media,
  .mod-media-lyt.of-imageRight-wide-float > .inner > .media {
    display: block;
    width: auto;
    min-width: auto;
    max-width: none;
    padding-left: 0;
  }
  .mod-media-lyt.of-imageLeft-float > .inner > .media {
    margin-right: 20px;
    float: left;
  }
  .mod-media-lyt.of-imageLeft-wide-float > .inner > .media {
    margin-right: 20px;
    float: left;
  }
  .mod-media-lyt.of-imageRight-float > .inner > .media {
    margin-left: 20px;
    float: right;
  }
  .mod-media-lyt.of-imageRight-wide-float > .inner > .media {
    margin-left: 20px;
    float: right;
  }
  .mod-media-lyt.of-imageLeft-wide-float .mod-media > .inner > .caption,
  .mod-media-lyt.of-imageRight-wide-float .mod-media > .inner > .caption {
    padding-bottom: 5px;
  }
  .mod-media-lyt.of-imageLeft-wide-float > .inner > .content,
  .mod-media-lyt.of-imageRight-wide-float > .inner > .content {
    padding-left: 0;
  }
}
.mod-media-lyt.of-large-content > .inner {
  margin-top: -20px;
}

.mod-media-lyt.of-large-content > .inner > .content,
.mod-media-lyt.of-large-content > .inner > .media {
  padding-top: 20px;
}

@media screen and (min-width: 768px), print {
  .mod-media-lyt.of-large-content > .inner > .media {
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    min-width: 265px !important;
    max-width: 265px !important;
  }
}
.mod-media.of-badge {
  max-width: 100%;
  margin: 0 auto;
  text-align: center;
  --gatter-padding-y: 6px;
  --gatter-padding-x: 6px;
}
.mod-media.of-badge > .inner {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.mod-media.of-badge .media-figure {
  grid-auto-rows: -webkit-max-content;
  grid-auto-rows: max-content;
  gap: 0;
}
.mod-media.of-badge > .inner > .caption {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}
.mod-media.of-badge > .inner > .media, .mod-media.of-badge > .inner > .media-figure .media {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 100%;
  margin: auto;
}
.mod-media.of-badge > .inner > .media img, .mod-media.of-badge > .inner > .media-figure .media img {
  width: inherit;
  height: inherit;
}
.mod-media.of-badge > .inner > .media, .mod-media.of-badge > .inner > a[href].media, .mod-media.of-badge > .inner > .media-figure .media, .mod-media.of-badge > .inner > .media-figure a[href].media {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  overflow: hidden;
}
.mod-media.of-badge > .inner > .media img, .mod-media.of-badge > .inner > a[href].media img, .mod-media.of-badge > .inner > .media-figure .media img, .mod-media.of-badge > .inner > .media-figure a[href].media img {
  display: inline-block;
  position: relative;
  top: 50%;
  width: inherit;
  min-width: auto;
  max-width: 100%;
  height: inherit;
  min-height: auto;
  max-height: none;
  margin: auto;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  -o-object-fit: contain;
     object-fit: contain;
  translate: 0 -50%;
}
.mod-media.of-badge > .inner > a[href].media:hover img, .mod-media.of-badge > .inner > .media-figure a[href].media:hover img {
  -webkit-transform: none;
          transform: none;
  opacity: 0.7;
}
@media screen and (min-width: 576px), print {
  .mod-media.of-badge {
    --gatter-padding-y: 12px;
    --gatter-padding-x: 12px;
  }
}
.mod-media.of-badge > .inner .media-caption {
  margin-top: 0;
}
.mod-media.of-badge > .inner > .caption {
  margin-top: 0;
}
.mod-media.of-badge.of-padless {
  --gatter-padding-y: 0;
  --gatter-padding-x: 0;
}
.mod-media.of-badge.of-padless > .inner .media-caption {
  margin-top: 6px;
}
.mod-media.of-badge.of-padless > .inner > .caption {
  margin-top: 6px;
}
.mod-media.of-badge > .inner > .media, .mod-media.of-badge > .inner > a[href].media, .mod-media.of-badge > .inner > .media-figure .media, .mod-media.of-badge > .inner > .media-figure a[href].media {
  height: 54px;
  max-height: 100%;
}
@media screen and (min-width: 576px), print {
  .mod-media.of-badge > .inner > .media, .mod-media.of-badge > .inner > a[href].media, .mod-media.of-badge > .inner > .media-figure .media, .mod-media.of-badge > .inner > .media-figure a[href].media {
    height: 72px;
  }
}
@media screen and (min-width: 768px), print {
  .mod-media.of-badge > .inner > .media, .mod-media.of-badge > .inner > a[href].media, .mod-media.of-badge > .inner > .media-figure .media, .mod-media.of-badge > .inner > .media-figure a[href].media {
    height: 88px;
  }
}
.mod-media.of-badge > .inner > .media img, .mod-media.of-badge > .inner > a[href].media img, .mod-media.of-badge > .inner > .media-figure .media img, .mod-media.of-badge > .inner > .media-figure a[href].media img {
  padding: var(--gatter-padding-y) var(--gatter-padding-x);
}
.mod-media.of-badge.of-badge-large > .inner > .media, .mod-media.of-badge.of-badge-large > .inner > a[href].media, .mod-media.of-badge.of-badge-large > .inner > .media-figure .media, .mod-media.of-badge.of-badge-large > .inner > .media-figure a[href].media {
  height: 120px;
}

.mod-media.of-badge-play-store {
  max-width: 100%;
  margin: 0 auto;
  text-align: center;
  --gatter-padding-y: 6px;
  --gatter-padding-x: 6px;
  --badge-adjust-play-store-rate: 1.18;
}
.mod-media.of-badge-play-store > .inner {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.mod-media.of-badge-play-store .media-figure {
  grid-auto-rows: -webkit-max-content;
  grid-auto-rows: max-content;
}
.mod-media.of-badge-play-store > .inner > .caption {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}
.mod-media.of-badge-play-store > .inner > .media, .mod-media.of-badge-play-store > .inner > .media-figure .media {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 100%;
  margin: auto;
}
.mod-media.of-badge-play-store > .inner > .media img, .mod-media.of-badge-play-store > .inner > .media-figure .media img {
  width: inherit;
  height: inherit;
}
.mod-media.of-badge-play-store > .inner > .media, .mod-media.of-badge-play-store > .inner > a[href].media, .mod-media.of-badge-play-store > .inner > .media-figure .media, .mod-media.of-badge-play-store > .inner > .media-figure a[href].media {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  overflow: hidden;
}
.mod-media.of-badge-play-store > .inner > .media img, .mod-media.of-badge-play-store > .inner > a[href].media img, .mod-media.of-badge-play-store > .inner > .media-figure .media img, .mod-media.of-badge-play-store > .inner > .media-figure a[href].media img {
  display: inline-block;
  position: relative;
  top: 50%;
  width: inherit;
  min-width: auto;
  max-width: 100%;
  height: inherit;
  min-height: auto;
  max-height: none;
  margin: auto;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  -o-object-fit: contain;
     object-fit: contain;
  translate: 0 -50%;
}
.mod-media.of-badge-play-store > .inner > a[href].media:hover img, .mod-media.of-badge-play-store > .inner > .media-figure a[href].media:hover img {
  -webkit-transform: none;
          transform: none;
  opacity: 0.7;
}
@media screen and (min-width: 576px), print {
  .mod-media.of-badge-play-store {
    --gatter-padding-y: 12px;
    --gatter-padding-x: 12px;
    --badge-adjust-play-store-rate: 1.04;
  }
}
@media screen and (min-width: 768px), print {
  .mod-media.of-badge-play-store {
    --badge-adjust-play-store-rate: 1.08;
  }
}
.mod-media.of-badge-play-store > .inner .media-caption {
  margin-top: 0;
}
.mod-media.of-badge-play-store > .inner > .caption {
  margin-top: 0;
}
.mod-media.of-badge-play-store.of-padless {
  --gatter-padding-y: 0;
  --gatter-padding-x: 0;
  --badge-adjust-play-store-rate: 1.3;
}
.mod-media.of-badge-play-store.of-padless > .inner .media-caption {
  margin-top: 6px;
}
.mod-media.of-badge-play-store.of-padless > .inner > .caption {
  margin-top: 6px;
}
.mod-media.of-badge-play-store > .inner > .media, .mod-media.of-badge-play-store > .inner > a[href].media, .mod-media.of-badge-play-store > .inner > .media-figure .media, .mod-media.of-badge-play-store > .inner > .media-figure a[href].media {
  height: 54px;
  max-height: 100%;
}
@media screen and (min-width: 576px), print {
  .mod-media.of-badge-play-store > .inner > .media, .mod-media.of-badge-play-store > .inner > a[href].media, .mod-media.of-badge-play-store > .inner > .media-figure .media, .mod-media.of-badge-play-store > .inner > .media-figure a[href].media {
    height: 72px;
  }
}
@media screen and (min-width: 768px), print {
  .mod-media.of-badge-play-store > .inner > .media, .mod-media.of-badge-play-store > .inner > a[href].media, .mod-media.of-badge-play-store > .inner > .media-figure .media, .mod-media.of-badge-play-store > .inner > .media-figure a[href].media {
    height: 88px;
  }
}
.mod-media.of-badge-play-store > .inner > .media img, .mod-media.of-badge-play-store > .inner > a[href].media img, .mod-media.of-badge-play-store > .inner > .media-figure .media img, .mod-media.of-badge-play-store > .inner > .media-figure a[href].media img {
  height: calc((100% + var(--gatter-padding-y)) * var(--badge-adjust-play-store-rate));
  padding: var(--gatter-padding-y) var(--gatter-padding-x);
}
.mod-media.of-badge-play-store.of-badge-large > .inner > .media, .mod-media.of-badge-play-store.of-badge-large > .inner > a[href].media, .mod-media.of-badge-play-store.of-badge-large > .inner > .media-figure .media, .mod-media.of-badge-play-store.of-badge-large > .inner > .media-figure a[href].media {
  height: 120px;
}

.mod-media {
  display: block;
  max-width: 1120px;
  margin: auto;
  margin: 0 auto 40px;
  overflow: hidden;
}

.mod-media .media-figure {
  display: -ms-grid;
  display: grid;
  color: #767676;
}

.mod-media > .inner .media-img {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.mod-media > .inner > .media .media-caption,
.mod-media > .inner .media-caption {
  display: block;
  position: relative;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  max-width: 100%;
  margin-top: 6px;
  color: #222;
  font-size: 1.4rem;
  line-height: 1.65;
  text-align: left;
}

.mod-media > .inner > a.media .media-caption {
  padding: 0 0 0 24px;
  padding-top: 0.15em;
  color: #767676;
}
.mod-media > .inner > a.media .media-caption::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  bottom: auto;
  left: 0;
  width: 24px;
  height: 26.4px;
  margin: auto 0;
  border-radius: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: 17px;
  line-height: 1.65;
}

.mod-media > .inner > a.media {
  display: block;
  position: relative;
  margin: 0 auto;
  text-decoration: none;
}
.mod-media > .inner > a.media:focus-visible {
  outline: none;
}
.mod-media > .inner > a.media:focus-visible::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  margin: auto;
  border: #222 solid 2px;
  inset: 0;
}
.mod-media > .inner > a.media .media-caption {
  text-decoration: none;
}
.mod-media > .inner > a.media:hover .media-caption {
  text-decoration: underline;
}

.mod-media > .inner > a[href].media img {
  display: -ms-grid;
  display: grid;
  justify-items: center;
  width: auto;
  min-width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 100%;
  margin: auto;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
}

.mod-media > .inner > a[href].media:hover img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

.mod-media > .inner > .media [hidden].of-wide {
  display: none;
}

@media screen and (min-width: 768px), print {
  .mod-media > .inner > .media .media-caption {
    margin-top: 12px;
  }
  .mod-media > .inner > .media [hidden].of-wide {
    display: block;
  }
  .mod-media > .inner > .media [hidden].of-wide + img {
    position: absolute !important;
    width: 1px;
    min-width: 1px;
    height: 1px;
    min-height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
  }
}
.mod-media-embedVideo {
  width: 784px;
  max-width: 100%;
  margin: 20px auto 60px;
}

.mod-media-embedVideo.of-full {
  width: 100%;
}

.mod-media-embedVideo > .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod-media-embedVideo > .inner > .media {
  position: relative;
  width: 100%;
  max-width: 100%;
  min-height: 0%;
  padding: 0;
  overflow: hidden;
  text-align: center;
}

.mod-media-embedVideo[data-aspect="16:9"] > .inner > .media {
  padding-top: 56.25%;
}

.mod-media-embedVideo > .inner > .media iframe {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.mod-media-embedVideo > .inner > .caption {
  -ms-flex-item-align: start;
      align-self: flex-start;
  max-width: 100%;
  padding-top: 6px;
  color: #767676;
  font-size: 1.4rem;
  line-height: 1.65;
}

@media screen and (min-width: 768px), print {
  .mod-media-embedVideo > .inner > .caption {
    padding-top: 12px;
  }
}
.str-mainvisual-02 {
  margin-bottom: 40px;
}

.str-mainvisual-02.var-02 {
  background-color: #f4f4f4;
}

.str-mainvisual-02 .mod-media {
  display: block;
  max-width: 1120px;
  margin: auto;
  overflow: hidden;
  background-color: #f4f4f4;
}

.str-mainvisual-02 .mod-media > .inner {
  position: relative;
  width: auto;
  height: 100%;
  margin: 0 auto;
}

.str-mainvisual-02 a.media {
  display: block;
  position: relative;
  width: auto;
  margin: auto;
}

.str-mainvisual-02 .mod-media > .inner .media {
  display: block;
  margin: 0 auto;
}

.str-mainvisual-02 .mod-media > .inner img,
.str-mainvisual-02 a.media img {
  display: -ms-grid;
  display: grid;
  justify-items: center;
  width: auto;
  min-width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 100%;
  margin: auto;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
}

.str-mainvisual-02 a.media-link:hover img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

@media screen and (min-width: 768px), print {
  .str-mainvisual-02 > .inner > .slider {
    border-bottom: 0;
    background: initial;
  }
  .str-mainvisual-02 a.media-link {
    max-width: 1120px;
    margin: 0 auto;
  }
  .str-mainvisual-02 .mod-media > .inner img,
  .str-mainvisual-02 a.media img {
    max-height: 320px;
  }
}
.str-mainvisual {
  margin: 0 0 20px;
}

.str-mainvisual > .inner {
  margin: 0 auto;
}

.str-mainvisual > .inner > .image.of-wide {
  display: none;
}

.str-mainvisual > .inner > .image img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}

.str-mainvisual > .inner > .spec {
  margin: 20px 20px 0;
  font-size: 1.2rem;
}

.str-mainvisual > .inner > .spec > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 4px;
  margin: 0;
}

.str-mainvisual > .inner > .spec > .list > li {
  padding: 0;
  text-align: right;
}

.str-mainvisual > .inner > .spec > .list > li img {
  display: block;
}

.str-mainvisual > .inner > .spec > .list > li sup {
  top: 0;
  font-size: 100%;
}

@media screen and (min-width: 768px), print {
  .str-mainvisual > .inner > .image.of-wide {
    display: block;
  }
  .str-mainvisual > .inner > .image.of-wide + .image {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
  }
  .str-mainvisual > .inner > .spec {
    margin-right: 20px;
    margin-left: 20px;
  }
}
@media screen and (min-width: 992px), print {
  .str-mainvisual > .inner {
    max-width: 1120px;
  }
  .str-mainvisual > .inner > .spec {
    width: calc(100% - 80px);
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (min-width: 1120px), print {
  .str-mainvisual > .inner > .spec {
    width: 100%;
  }
}
.str-keyvisual-main-top {
  position: relative;
  margin-bottom: 40px;
}
.str-keyvisual-main-top::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 225px;
  background: rgba(0, 0, 0, 0.3);
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0)), color-stop(57%, rgba(0, 0, 0, 0.3)), to(rgba(0, 0, 0, 0.5)));
  background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 57%, rgba(0, 0, 0, 0.5) 100%);
}
@media screen and (min-width: 768px), print {
  .str-keyvisual-main-top::after {
    height: 204px;
  }
}
.str-keyvisual-main-top .container {
  display: -ms-grid;
  display: grid;
  width: 100%;
  height: 100%;
  max-height: 600px;
}
.str-keyvisual-main-top .container .keyvisual-content,
.str-keyvisual-main-top .container .keyvisual-bg,
.str-keyvisual-main-top .container .keyvisual-actions {
  -ms-grid-row: 1;
  grid-area: 1/-1;
}
.str-keyvisual-main-top .keyvisual-actions {
  display: block;
  z-index: 1;
  width: 100%;
  margin: auto auto 0;
}
@media screen and (min-width: 768px), print {
  .str-keyvisual-main-top .keyvisual-actions {
    width: auto;
    margin-right: 0;
    margin-bottom: 0;
  }
}
.str-keyvisual-main-top .keyvisual-link {
  text-decoration: none;
}
.str-keyvisual-main-top .keyvisual-link::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: transparent;
  pointer-events: auto;
}
.str-keyvisual-main-top .keyvisual-link .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 50px;
  padding: 12px 18px;
  overflow: hidden;
  -webkit-transition: color 0.2s, background 0.2s, -webkit-backdrop-filter 0.2s;
  transition: color 0.2s, background 0.2s, -webkit-backdrop-filter 0.2s;
  transition: color 0.2s, background 0.2s, backdrop-filter 0.2s;
  transition: color 0.2s, background 0.2s, backdrop-filter 0.2s, -webkit-backdrop-filter 0.2s;
  border: 2px solid #fff;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.2);
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}
.str-keyvisual-main-top .keyvisual-link:focus-visible .btn {
  outline: #222 solid 2px;
  outline-offset: 1px;
  background: #fff;
  color: #222;
  -webkit-backdrop-filter: initial;
          backdrop-filter: initial;
}
@media (hover: hover) and (pointer: fine) {
  .str-keyvisual-main-top .keyvisual-link:hover .btn {
    background: #fff;
    color: #222;
    -webkit-backdrop-filter: initial;
            backdrop-filter: initial;
  }
}
.str-keyvisual-main-top .keyvisual-content {
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  padding: 40px 20px 20px;
}
@media screen and (min-width: 768px), print {
  .str-keyvisual-main-top .keyvisual-content {
    padding: 50px 40px 40px;
  }
}
.str-keyvisual-main-top .keyvisual-bg {
  max-height: inherit;
  overflow: hidden;
}
.str-keyvisual-main-top .keyvisual-bg img {
  width: 100%;
  height: 100%;
  min-height: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.str-keyvisual-main-top .keyvisual-bg [hidden].of-wide {
  display: none;
}
@media screen and (min-width: 768px), print {
  .str-keyvisual-main-top .keyvisual-bg [hidden].of-wide {
    display: block;
  }
  .str-keyvisual-main-top .keyvisual-bg [hidden].of-wide + img {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
  }
}
.str-keyvisual-main-top .keyvisual-message {
  padding-bottom: 50px;
  color: #fff;
}
.str-keyvisual-main-top .keyvisual-message > .title {
  margin-bottom: 10px;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.3;
}
.str-keyvisual-main-top .keyvisual-message > .subtitle {
  font-size: 1.6rem;
  line-height: 1.5;
}
@media screen and (min-width: 768px), print {
  .str-keyvisual-main-top .keyvisual-message > .title {
    font-size: 4.4rem;
    line-height: 1.3;
  }
  .str-keyvisual-main-top .keyvisual-message > .subtitle {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}

@media screen and (min-width: 768px), print {
  .str-mainvisual-productTop {
    max-width: 1120px;
  }
  .str-mainvisual-productTop > .list {
    -ms-grid-columns: 2fr 1fr;
    grid-template-columns: 2fr 1fr;
    width: auto;
    height: auto;
    aspect-ratio: 1240/439;
  }
}
@media screen and (min-width: 768px) and (max-width: 1280px), print {
  .str-mainvisual-productTop > .list {
    height: auto;
  }
}
@media screen and (min-width: 1240px), print {
  .str-mainvisual-productTop > .list {
    width: 100%;
    height: auto;
  }
}
/*! = Modules/Support */
.inline-scroll {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto;
  max-width: 1200px;
  margin: 0 -20px;
  padding: 40px 20px;
  background-color: #f4f4f4;
}
.inline-scroll .inner-wrap {
  width: 100%;
  max-width: 100%;
  min-height: 484px;
  max-height: 484px;
  margin: auto;
  padding: 20px;
  overflow: auto;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background-color: #fff;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
}
@media screen and (min-width: 768px), print {
  .inline-scroll {
    margin: 0 -20px;
    padding: 40px;
  }
  .inline-scroll .inner-wrap {
    min-height: 280px;
    max-height: 280px;
    padding: 30px;
  }
}
@media screen and (min-width: 992px), print {
  .inline-scroll {
    margin: 0 -40px;
  }
}

/*! = Modules/Table */
[class^=mod-tbl].w-auto {
  max-width: none;
}

[class^=mod-tbl].of-scroll {
  margin-bottom: 10px;
}

[class^=mod-tbl] > .inner > table {
  font-size: 1.4rem;
}

[class^=mod-tbl].of-scroll > .inner[tabindex] {
  overflow: auto;
  overflow-y: clip !important;
  -webkit-overflow-scrolling: touch;
}

[class^=mod-tbl].of-scroll > .inner[tabindex] > table {
  width: 100%;
  min-width: 100%;
  max-width: 1120px;
  margin-bottom: 20px;
  table-layout: fixed;
}
@media screen and (max-width: 1199px), print {
  [class^=mod-tbl].of-scroll > .inner[tabindex] > table {
    min-width: 560px;
  }
}

[class^=mod-tbl] .mod-btn a {
  min-width: auto;
}

[class^=mod-tbl] .mod-txt {
  margin-bottom: 0;
}

[class^=mod-tbl] .mod-txt p {
  margin-bottom: 0;
}

/* あまりの数値は割る2したあとで%を足すことで割り出せる */
[class^=mod-tbl].of-scroll.of-tblmin-cell2 .inner table {
  min-width: calc(100% + 384px + 304px);
}

[class^=mod-tbl].of-scroll.of-tblmin-cell3 .inner table {
  min-width: calc(100% + 384px + 228px);
}

[class^=mod-tbl].of-scroll.of-tblmin-cell4 .inner table {
  min-width: calc(100% + 384px + 304px);
}

[class^=mod-tbl].of-scroll.of-tblmin-cell5 .inner table {
  min-width: calc(100% + 384px + 380px);
}

[class^=mod-tbl].of-scroll.of-tblmin-cell6 .inner table {
  min-width: calc(100% + 384px + 456px);
}

[class^=mod-tbl].of-scroll.of-tblmin-cell7 .inner table {
  min-width: calc(100% + 384px + 532px);
}

[class^=mod-tbl].of-scroll.of-tblmin-cell8 .inner table {
  min-width: calc(100% + 384px + 608px);
}

[class^=mod-tbl].of-scroll.of-tblmin-cell9 .inner table {
  min-width: calc(100% + 384px + 684px);
}

[class^=mod-tbl] .spec-list > b,
[class^=mod-tbl] .spec-list > strong {
  display: block;
  font-weight: bold;
}
[class^=mod-tbl] .spec-list dl > div {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0.5em 0;
  border-bottom: 1px solid #dbdbdb;
}
[class^=mod-tbl] .spec-list dl > div:last-child {
  margin-bottom: 0.8em;
  border-bottom: none;
}
[class^=mod-tbl] .spec-list dl > div dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
[class^=mod-tbl] .spec-list dl > div dt::after {
  content: "：";
  display: inline-block;
  margin-right: 0.5em;
  margin-left: auto;
}

.mod-tbl {
  width: auto;
  max-width: 1120px;
  margin: 0 auto 30px;
}

.mod-tbl > .inner > table {
  border-collapse: collapse;
}

.mod-tbl > .inner > table > caption {
  margin: 0 0 12px;
  color: #222;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px), print {
  .mod-tbl > .inner > table > caption {
    max-width: initial;
    margin-bottom: 12px;
  }
}

.mod-tbl > .inner > table colgroup > col {
  width: auto;
}

.mod-tbl table tr,
.mod-tbl .mod-tbl tr,
.mod-tbl .mod-tbl.var-02 > .inner > table tr {
  border: none;
}

.mod-tbl > .inner > table > tbody {
  background-color: #fff;
}

.mod-tbl > .inner > table tbody > tr > td,
.mod-tbl > .inner > table thead > tr > td,
.mod-tbl > .inner > table thead > tr > th,
.mod-tbl > .inner > table tbody > tr > th {
  padding: 15px 20px;
}

.mod-tbl > .inner > table > * > * > td,
.mod-tbl > .inner > table > * > * > th {
  border: 1px solid #c9a7a7;
  text-align: left;
  vertical-align: top;
}

.mod-tbl > .inner > table > thead > * > th,
.mod-tbl > .inner > table > thead > * > td {
  border-color: #c9a7a7;
  background-color: #771f1f;
  color: #fff;
}

.mod-tbl > .inner > table > * > * > td::before,
.mod-tbl > .inner > table > * > * > th::before {
  content: none;
}

.mod-tbl > .inner > table > tbody > tr > th {
  background-color: #e6c0c0;
}

.mod-tbl.of-grayscale > .inner > table > * > * > td,
.mod-tbl.of-grayscale > .inner > table > * > * > th {
  border-color: #b7b7b7;
}

.mod-tbl.of-grayscale > .inner > table > thead > * > th,
.mod-tbl.of-grayscale > .inner > table > thead > * > td {
  border-color: #b7b7b7;
  background-color: #7f7f7f;
  color: #fff;
}

.mod-tbl.of-grayscale > .inner > table > tbody > tr > th {
  background-color: #e0e0e0;
}

.mod-tbl > .inner > table > thead > * > th {
  vertical-align: top;
}

.mod-tbl > .inner > table > thead > tr > th .name {
  margin: 5px 0 10px;
}

.mod-tbl .mod-btn {
  margin-bottom: 0;
}

.mod-tbl > .inner > table > thead > * > th {
  vertical-align: top;
}

.mod-tbl > .inner > table > * > * > td,
.mod-tbl > .inner > table > * > * > th {
  padding: 15px 20px;
}

@media screen and (min-width: 768px), print {
  .mod-tbl > .inner > table > thead > tr > th .name {
    margin: 0 0 15px;
  }
}
.mod-tbl > .inner > table > thead {
  background: #771f1f;
}

.mod-tbl.of-grayscale > .inner > table > thead {
  background: #7f7f7f;
}

.mod-tbl > .inner > table > tbody {
  background: #fff;
}

.mod-tbl.of-grayscale > .inner > table > tbody {
  background: #fff;
}

.mod-tbl > .inner > table tbody > tr,
.mod-tbl > .inner > table thead > tr {
  border: none;
}

.mod-tbl > .inner > table tbody > tr > th,
.mod-tbl > .inner > table thead > tr > th {
  padding: 12px 20px;
  text-align: left;
}

.mod-tbl.of-th-left th,
.mod-tbl thead.of-th-left th,
.mod-tbl tbody.of-th-left th {
  text-align: left;
}

.mod-tbl.of-th-middle th,
.mod-tbl thead.of-th-middle th,
.mod-tbl tbody.of-th-middle th {
  vertical-align: middle;
}

.mod-tbl th {
  background-color: #fff;
}

.mod-tbl > .inner > table td .cell {
  display: contents;
}

.mod-tbl .mod-btn {
  margin-bottom: 0;
}

.mod-tbl img + .mod-btn {
  margin-top: 20px;
  margin-bottom: 0;
}

.mod-tbl.var-02 > .inner > table > tbody > tr:nth-child(even) {
  background-color: transparent;
}

.mod-tbl.var-02 > .inner > table > tbody > tr:nth-child(odd) th {
  background: #e6c0c0;
}

.mod-tbl.var-02.of-grayscale > .inner > table > tbody > tr:nth-child(odd) th {
  background: #e0e0e0;
}

.mod-tbl.var-02 > .inner > table > tbody tr:nth-child(even) td {
  background-color: rgba(230, 192, 192, 0.3);
}

.mod-tbl.var-02.of-grayscale > .inner > table tr:nth-child(even) td {
  background-color: rgba(224, 224, 224, 0.3);
}

.mod-tbl.var-04 > .inner > table thead > tr > th {
  padding: 6px 10px;
}

.mod-tbl.var-04 > .inner thead tr:not(.tbl-heading) th {
  background-color: #fff;
  font-weight: 400;
}

.mod-tbl.var-04 tbody tr:not(.tbl-heading):nth-child(2n+1) {
  border: none;
  background-color: #fff;
}

.mod-tbl.var-04 > .inner thead tr:not(.tbl-heading):nth-child(2n+1) th,
.mod-tbl.var-04 > .inner tbody tr:nth-child(2n+1) td {
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  vertical-align: bottom;
}

.mod-tbl.var-03 > .inner > table thead > tr > th {
  padding: 6px 10px;
}

.mod-tbl.var-04 > .inner > table > tbody > tr:nth-child(even) {
  background: #f4f4f4;
}

@media screen and (min-width: 768px), print {
  .mod-tbl:not(.of-scroll) {
    margin: 0 auto 20px;
  }
}
.mod-tbl.of-striped tr:nth-child(even) {
  background-color: transparent;
}

.mod-tbl.of-striped tbody tr:nth-child(even) td {
  background-color: rgba(230, 192, 192, 0.3);
}

.mod-tbl.of-striped.of-grayscale tbody tr:nth-child(even) td {
  background-color: rgba(224, 224, 224, 0.3);
}

.mod-tbl td.emphasis,
.mod-tbl th.emphasis,
.mod-tbl > .inner > table > * > * > td.emphasis,
.mod-tbl > .inner > table > * > * > th.emphasis {
  position: relative;
  z-index: 1;
  color: #222;
  font-weight: 700;
}
.mod-tbl td.emphasis::after,
.mod-tbl th.emphasis::after,
.mod-tbl > .inner > table > * > * > td.emphasis::after,
.mod-tbl > .inner > table > * > * > th.emphasis::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  outline: 1px solid #222;
}

.mod-tbl td.emphasis,
.mod-tbl th.emphasis,
.mod-tbl > .inner > table > * > * > td.emphasis,
.mod-tbl > .inner > table > * > * > th.emphasis {
  color: #771f1f;
}
.mod-tbl td.emphasis::after,
.mod-tbl th.emphasis::after,
.mod-tbl > .inner > table > * > * > td.emphasis::after,
.mod-tbl > .inner > table > * > * > th.emphasis::after {
  outline-color: #771f1f;
}

.mod-tbl.of-grayscale td.emphasis,
.mod-tbl.of-grayscale th.emphasis,
.mod-tbl.of-grayscale > .inner > table > * > * > td.emphasis,
.mod-tbl.of-grayscale > .inner > table > * > * > th.emphasis {
  color: #222;
}
.mod-tbl.of-grayscale td.emphasis::after,
.mod-tbl.of-grayscale th.emphasis::after,
.mod-tbl.of-grayscale > .inner > table > * > * > td.emphasis::after,
.mod-tbl.of-grayscale > .inner > table > * > * > th.emphasis::after {
  outline-color: #222;
}

.mod-tbl.of-vertical > .inner > table {
  width: auto;
  min-width: 100%;
  max-width: 1120px;
  margin-bottom: 10px;
  table-layout: fixed;
}

@media screen and (max-width: 767px), print {
  .mod-tbl.of-vertical > .inner > table {
    width: 100%;
    border: 1px solid #dbdbdb;
  }
  .mod-tbl.of-vertical col,
  .mod-tbl.of-vertical .w-5,
  .mod-tbl.of-vertical .w-10,
  .mod-tbl.of-vertical .w-15,
  .mod-tbl.of-vertical .w-20,
  .mod-tbl.of-vertical .w-25,
  .mod-tbl.of-vertical .w-30,
  .mod-tbl.of-vertical .w-35,
  .mod-tbl.of-vertical .w-40,
  .mod-tbl.of-vertical .w-45,
  .mod-tbl.of-vertical .w-50,
  .mod-tbl.of-vertical .w-55,
  .mod-tbl.of-vertical .w-60,
  .mod-tbl.of-vertical .w-65,
  .mod-tbl.of-vertical .w-70,
  .mod-tbl.of-vertical .w-75,
  .mod-tbl.of-vertical .w-80,
  .mod-tbl.of-vertical .w-85,
  .mod-tbl.of-vertical .w-90,
  .mod-tbl.of-vertical .w-95,
  .mod-tbl.of-vertical .w-100,
  .mod-tbl.of-vertical .w-16,
  .mod-tbl.of-vertical .w-33,
  .mod-tbl.of-vertical .w-66,
  .mod-tbl.of-vertical .w-83 {
    display: block;
  }
  .mod-tbl.of-vertical > .inner > table > tbody > tr > th,
  .mod-tbl.of-vertical > .inner > table > tbody > tr > td {
    display: block;
  }
  .mod-tbl.of-vertical > .inner > table > * > * > td,
  .mod-tbl.of-vertical > .inner > table > * > * > th {
    border: none;
  }
  .mod-tbl.of-vertical > .inner > table > * > * > th {
    margin-top: 0;
  }
  .mod-tbl.of-vertical > .inner > table > tbody > * > td ~ td {
    padding-top: 0;
  }
}
@media screen and (min-width: 768px), print {
  .mod-tbl.of-vertical col,
  .mod-tbl.of-vertical .w-5,
  .mod-tbl.of-vertical .w-10,
  .mod-tbl.of-vertical .w-15,
  .mod-tbl.of-vertical .w-20,
  .mod-tbl.of-vertical .w-25,
  .mod-tbl.of-vertical .w-30,
  .mod-tbl.of-vertical .w-35,
  .mod-tbl.of-vertical .w-40,
  .mod-tbl.of-vertical .w-45,
  .mod-tbl.of-vertical .w-50,
  .mod-tbl.of-vertical .w-55,
  .mod-tbl.of-vertical .w-60,
  .mod-tbl.of-vertical .w-65,
  .mod-tbl.of-vertical .w-70,
  .mod-tbl.of-vertical .w-75,
  .mod-tbl.of-vertical .w-80,
  .mod-tbl.of-vertical .w-85,
  .mod-tbl.of-vertical .w-90,
  .mod-tbl.of-vertical .w-95,
  .mod-tbl.of-vertical .w-100,
  .mod-tbl.of-vertical .w-16,
  .mod-tbl.of-vertical .w-33,
  .mod-tbl.of-vertical .w-66,
  .mod-tbl.of-vertical .w-83 {
    display: table-column !important;
  }
  .mod-tbl.of-vertical > .inner > table > tbody > tr > th,
  .mod-tbl.of-vertical > .inner > table > tbody > tr > td {
    display: table-cell !important;
  }
}
.mod-tbl [data-row-th-clone-cell] {
  display: none;
}

@media screen and (max-width: 767px), print {
  @supports (display: contents) {
    .mod-tbl:not(.of-scroll):not(.of-vertical) {
      margin-bottom: 30px;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) table {
      border-top: none;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) table thead th {
      border: none;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) table thead th:first-child:empty {
      display: none;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table colgroup > col {
      width: auto;
      min-width: auto;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table > thead > tr > th {
      border: none;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table > tbody > tr > th:first-child {
      display: none;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table thead > tr > td, .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table thead > tr > th + td {
      padding: 0;
      border: none;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tbody > tr:first-child > td:first-of-type {
      border-top: 1px solid #dbdbdb;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table thead + tbody > tr:first-child > td:first-of-type {
      border-top: none;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tbody > tr > td, .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tbody > tr > th + td {
      padding: 12px 20px;
      border-top: none;
      border-color: #dbdbdb;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tbody > tr:last-child > td:last-child {
      border-bottom: 1px solid #dbdbdb;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table > tbody td {
      background: #fff;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical).of-grayscale > .inner > table > tbody td {
      background: #fff;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table td[data-row-th]::before {
      content: none;
      display: none;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table td[data-row-th] [data-row-th-clone-cell] {
      display: block;
      margin: -12px -20px 12px;
      padding: 12px 20px;
      border-bottom: none;
      background-color: #e6c0c0;
      font-weight: 700;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical).of-grayscale > .inner > table td[data-row-th] [data-row-th-clone-cell] {
      background-color: #e0e0e0;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table td .cell {
      display: block;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table th {
      display: block;
      width: auto;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table td {
      display: block;
      width: auto;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table thead, .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tbody, .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tr {
      display: contents;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table {
      display: -ms-grid;
      display: grid;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table thead tr :nth-child(1) {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table thead tr :nth-child(2) {
      -webkit-box-ordinal-group: 4;
          -ms-flex-order: 3;
              order: 3;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table thead tr :nth-child(3) {
      -webkit-box-ordinal-group: 6;
          -ms-flex-order: 5;
              order: 5;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table thead tr :nth-child(4) {
      -webkit-box-ordinal-group: 8;
          -ms-flex-order: 7;
              order: 7;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table thead tr :nth-child(5) {
      -webkit-box-ordinal-group: 10;
          -ms-flex-order: 9;
              order: 9;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table thead tr :nth-child(6) {
      -webkit-box-ordinal-group: 12;
          -ms-flex-order: 11;
              order: 11;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table thead tr :nth-child(7) {
      -webkit-box-ordinal-group: 14;
          -ms-flex-order: 13;
              order: 13;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tbody tr :nth-child(1) {
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tbody tr :nth-child(2) {
      -webkit-box-ordinal-group: 5;
          -ms-flex-order: 4;
              order: 4;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tbody tr :nth-child(3) {
      -webkit-box-ordinal-group: 7;
          -ms-flex-order: 6;
              order: 6;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tbody tr :nth-child(4) {
      -webkit-box-ordinal-group: 9;
          -ms-flex-order: 8;
              order: 8;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tbody tr :nth-child(5) {
      -webkit-box-ordinal-group: 11;
          -ms-flex-order: 10;
              order: 10;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tbody tr :nth-child(6) {
      -webkit-box-ordinal-group: 13;
          -ms-flex-order: 12;
              order: 12;
    }
    .mod-tbl:not(.of-scroll):not(.of-vertical) > .inner > table tbody tr :nth-child(7) {
      -webkit-box-ordinal-group: 15;
          -ms-flex-order: 14;
              order: 14;
    }
  }
}
.mod-tbl-general {
  max-width: 1120px;
  margin: 0 auto 10px;
}

@media screen and (max-width: 575px), print {
  .mod-tbl-general.of-scroll > .inner[tabindex] > table {
    min-width: calc(575px - 40px);
  }
}

.mod-tbl-general > .inner > table {
  border-collapse: collapse;
}

.mod-tbl-general > .inner > table > caption {
  margin: 0 0 12px;
  color: #222;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px), print {
  .mod-tbl-general > .inner > table > caption {
    max-width: initial;
    margin-bottom: 12px;
  }
}

.mod-tbl-general > .inner > table colgroup > col {
  width: auto;
}

.mod-tbl-general > .inner > table > tbody {
  background-color: #fff;
}

.mod-tbl-general > .inner > table > * > * > td,
.mod-tbl-general > .inner > table > * > * > th {
  padding: 15px 20px;
  border: 1px solid #dbdbdb;
  text-align: left;
  vertical-align: top;
}

.mod-tbl-general > .inner > table > * > * > td::before,
.mod-tbl-general > .inner > table > * > * > th::before {
  content: none;
}

.mod-tbl-general > .inner > table > * > * > th {
  font-weight: 700;
}

.mod-tbl-general > .inner > table > * > * > td {
  font-weight: 400;
}

.mod-tbl-general > .inner > table > * > * > th > .mod-btn {
  font-weight: normal;
}

.mod-tbl-general.of-color > .inner > table > * > * > td,
.mod-tbl-general.of-color > .inner > table > * > * > th {
  border-color: #c9a7a7;
}

.mod-tbl-general.of-color > .inner > table > thead > * > th,
.mod-tbl-general.of-color > .inner > table > thead > * > td {
  border-color: #c9a7a7;
  background-color: #771f1f;
  color: #fff;
}

.mod-tbl-general.of-color > .inner > table > tbody > tr > th {
  background-color: #e6c0c0;
}

.mod-tbl-general.of-grayscale > .inner > table > * > * > td,
.mod-tbl-general.of-grayscale > .inner > table > * > * > th {
  border-color: #b7b7b7;
}

.mod-tbl-general.of-grayscale > .inner > table > thead > * > th,
.mod-tbl-general.of-grayscale > .inner > table > thead > * > td {
  border-color: #b7b7b7;
  background-color: #7f7f7f;
  color: #fff;
}

.mod-tbl-general.of-grayscale > .inner > table > tbody > tr > th {
  background-color: #e0e0e0;
}

.mod-tbl-general > .inner > table > thead > * > th {
  vertical-align: top;
}

.mod-tbl-general > .inner > table > thead > tr > th .name {
  margin: 5px 0 10px;
}

.mod-tbl-general .mod-btn {
  margin-bottom: 0;
}

.mod-tbl-general > .inner > table > thead > * > th {
  vertical-align: top;
}

@media screen and (min-width: 768px), print {
  .mod-tbl-general > .inner > table > * > * > td,
  .mod-tbl-general > .inner > table > * > * > th {
    padding: 15px 20px;
  }
  .mod-tbl-general > .inner > table > thead > tr > th .name {
    margin: 0 0 15px;
  }
}
.mod-tbl-general.of-striped tr:nth-child(even) {
  background-color: transparent;
}

.mod-tbl-general.of-striped.of-color tbody tr:nth-child(even) td {
  background-color: rgba(230, 192, 192, 0.3);
}

.mod-tbl-general.of-striped.of-grayscale tbody tr:nth-child(even) td {
  background-color: rgba(224, 224, 224, 0.3);
}

.mod-tbl-general td.emphasis,
.mod-tbl-general th.emphasis,
.mod-tbl-general > .inner > table > * > * > td.emphasis,
.mod-tbl-general > .inner > table > * > * > th.emphasis {
  position: relative;
  z-index: 1;
  color: #222;
  font-weight: 700;
}
.mod-tbl-general td.emphasis::after,
.mod-tbl-general th.emphasis::after,
.mod-tbl-general > .inner > table > * > * > td.emphasis::after,
.mod-tbl-general > .inner > table > * > * > th.emphasis::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  outline: 1px solid #222;
}

.mod-tbl-general.of-color td.emphasis,
.mod-tbl-general.of-color th.emphasis,
.mod-tbl-general.of-color > .inner > table > * > * > td.emphasis,
.mod-tbl-general.of-color > .inner > table > * > * > th.emphasis {
  color: #771f1f;
}
.mod-tbl-general.of-color td.emphasis::after,
.mod-tbl-general.of-color th.emphasis::after,
.mod-tbl-general.of-color > .inner > table > * > * > td.emphasis::after,
.mod-tbl-general.of-color > .inner > table > * > * > th.emphasis::after {
  outline-color: #771f1f;
}

.mod-tbl-general.of-grayscale td.emphasis,
.mod-tbl-general.of-grayscale th.emphasis,
.mod-tbl-general.of-grayscale > .inner > table > * > * > td.emphasis,
.mod-tbl-general.of-grayscale > .inner > table > * > * > th.emphasis {
  color: #222;
}
.mod-tbl-general.of-grayscale td.emphasis::after,
.mod-tbl-general.of-grayscale th.emphasis::after,
.mod-tbl-general.of-grayscale > .inner > table > * > * > td.emphasis::after,
.mod-tbl-general.of-grayscale > .inner > table > * > * > th.emphasis::after {
  outline-color: #222;
}

.mod-tbl-calendar > .inner[tabindex] {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.mod-tbl-calendar > .inner[tabindex] > table {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  margin-bottom: 20px;
  overflow-wrap: break-word;
  table-layout: auto;
  border-collapse: collapse;
}

.mod-tbl-calendar {
  margin: 0 auto 10px;
}

.mod-tbl-calendar .inner {
  margin: 0;
  overflow-x: auto;
}

.mod-tbl-calendar .inner table {
  min-width: 500px;
  border-collapse: collapse;
  font-size: 1.4rem;
}

.mod-tbl-calendar > .inner > table > caption {
  margin: 0 0 12px;
  color: #222;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px), print {
  .mod-tbl-calendar > .inner > table > caption {
    max-width: initial;
    margin-bottom: 12px;
  }
}

.mod-tbl-calendar > .inner > table > thead {
  background: #771f1f;
}

.mod-tbl-calendar.of-grayscale > .inner > table > thead {
  background: #7f7f7f;
}

.mod-tbl-calendar > .inner > table > tbody {
  background: #fff;
}

.mod-tbl-calendar .inner table td,
.mod-tbl-calendar .inner table th {
  border: 1px solid #e1e1e1;
}

.mod-tbl-calendar .inner table th {
  width: auto;
  background: #757575;
  color: initial;
  font-weight: 700;
}

.mod-tbl-calendar .inner table td {
  width: 58px;
  min-width: 58px;
  max-width: 58px;
  height: 50px;
  color: #333;
  text-align: center;
}

.mod-tbl-calendar .inner table thead th {
  border: 1px solid #771f1f;
  border-bottom: none;
  background-color: #771f1f;
  color: #fff;
  vertical-align: middle;
}

.mod-tbl-calendar.of-grayscale .inner table thead th {
  border-bottom: none;
  border-color: #7f7f7f;
  background-color: #7f7f7f;
}

.mod-tbl-calendar > .inner > table > thead > tr > th:first-child {
  border-left: 1px solid #771f1f;
}

.mod-tbl-calendar > .inner > table > thead > tr > th:first-child:empty {
  border-left: none;
}

.mod-tbl-calendar > .inner > table > thead > tr > th:not(:last-child) {
  border-right-color: #fff;
}

.mod-tbl-calendar > .inner > table > tbody > tr > th {
  border: 1px solid #dbdbdb;
  border-top: 1px solid #e6c0c0;
  border-right: none;
  border-bottom: none;
  border-left: none;
  background-color: #e6c0c0;
}

.mod-tbl-calendar.of-grayscale > .inner > table > tbody > tr > th {
  background-color: #e0e0e0;
}

.mod-tbl-calendar > .inner > table tbody > tr > td,
.mod-tbl-calendar > .inner > table thead > tr > td {
  border: 1px solid #dbdbdb;
  border-top: 1px solid #dbdbdb;
  color: #222;
  font-size: 1.6rem;
}

.mod-tbl-calendar > .inner > table tbody > tr > th + td,
.mod-tbl-calendar > .inner > table thead > tr > th + td {
  border: 1px solid #dbdbdb;
  color: #222;
  font-size: 1.6rem;
}

.mod-tbl-calendar > .inner > table tbody > tr + tr > th {
  border-top-color: #fff;
}

.mod-tbl-calendar > .inner > table thead + tbody > tr > th {
  border-top-color: #fff;
}

.mod-tbl-calendar > .inner > table tbody > tr:first-child > td {
  border-top: 1px solid #dbdbdb;
}

.mod-tbl-calendar > .inner > table thead + tbody > tr > th + td {
  border-top: 1px solid #dbdbdb;
}

.mod-tbl-calendar > .inner > table thead + tbody > tr:first-child > td,
.mod-tbl-calendar > .inner > table thead + tbody > tr:first-child > th + td {
  border-top: none;
}

.mod-tbl-calendar .inner table td.saturday {
  background: #e4f6ff;
}

.mod-tbl-calendar .inner table td.sunday {
  background: #fcefef;
}

.mod-tbl-calendar .inner table td.holiday {
  background: #f1f1f1;
}

.mod-tbl-calendar .inner table tr th:first-child {
  width: 97px;
  min-width: 97px;
}

.mod-tbl-calendar .inner table thead th {
  height: 44px;
}

@media screen and (min-width: 768px), print {
  .mod-tbl-calendar .inner {
    margin: 0;
  }
}
/*! = Modules/Form */
.input-error-message {
  display: block;
  width: 100%;
  margin-top: 10px;
  color: #c00;
}

.input-hint {
  display: block;
  width: 100%;
  margin-top: 12px;
}
@media screen and (min-width: 768px), print {
  .input-hint {
    margin-top: 16px;
  }
}

.input-grid-half-fill {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto;
  grid-template-columns: auto;
  gap: 20px;
}
.input-grid-half-fill > [data-input-grid-col]:not(:last-child) > .input-hint {
  margin-bottom: -8px;
}
@media screen and (min-width: 768px), print {
  .input-grid-half-fill {
    grid-template-columns: repeat(auto-fill, minmax(auto, calc(50% - 10px)));
  }
  .input-grid-half-fill > [data-input-grid-col]:not(:last-child) > .input-hint {
    margin-bottom: 0;
  }
}

.input-grid-triple-fill {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto;
  grid-template-columns: auto;
  gap: 15px;
}
.input-grid-triple-fill > [data-input-grid-col]:not(:last-child) > .input-hint {
  margin-bottom: -8px;
}
@media screen and (min-width: 768px), print {
  .input-grid-triple-fill {
    grid-template-columns: repeat(auto-fill, minmax(auto, calc(33.333% - 10px)));
  }
  .input-grid-triple-fill > [data-input-grid-col]:not(:last-child) > .input-hint {
    margin-bottom: 0;
  }
}

.input-birth {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 30% 30%;
  grid-template-columns: auto 30% 30%;
  gap: 8px;
}
@media screen and (min-width: 768px), print {
  .input-birth {
    -ms-grid-columns: 180px 130px 130px;
    grid-template-columns: 180px 130px 130px;
    gap: 20px;
  }
}

.mod-input-label {
  display: inline-block;
  position: relative;
  font-size: 1.6rem;
  font-weight: 700;
  vertical-align: text-top;
}
.mod-input-label .required {
  margin-left: 12px;
}
.mod-input-label .required > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 22px;
  padding: 3px 10px;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}

.mod-input-grid {
  display: block;
  margin: 0 0 40px;
}
.mod-input-grid fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.mod-input-grid-container {
  display: -ms-grid;
  display: grid;
}
.mod-input-grid-container.-gutter {
  gap: 16px;
}
@media screen and (min-width: 768px), print {
  .mod-input-grid-container.-gutter {
    gap: 20px;
  }
}

legend.mod-input-label + .mod-input-grid-container {
  margin-top: 10px;
}

.mod-text-field {
  --field-size: 335px;
  margin: 0 0 20px;
}
.mod-text-field.w-manual-size {
  max-width: var(--field-size, 335px);
}
.mod-text-field label + label {
  margin: 0;
}
.mod-text-field__field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.mod-text-field__label {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  vertical-align: text-top;
}
.mod-text-field__label .required {
  margin-left: 12px;
}
.mod-text-field__label .required > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 22px;
  padding: 3px 10px;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}
.mod-text-field__input {
  width: 100%;
  height: 50px;
  margin: 0 auto;
  padding: 13px 20px;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff;
  color: #222;
  font-size: 1.6rem;
}
.mod-text-field__input::-webkit-input-placeholder {
  color: #767676;
}
.mod-text-field__input::-moz-placeholder {
  color: #767676;
}
.mod-text-field__input:-ms-input-placeholder {
  color: #767676;
}
.mod-text-field__input::-ms-input-placeholder {
  color: #767676;
}
.mod-text-field__input::placeholder {
  color: #767676;
}
.mod-text-field__input.is-error, .mod-text-field__input:invalid {
  background-color: #ffebeb;
}
.mod-text-field__input:disabled {
  background-color: #f4f4f4;
  color: #767676;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.mod-text-field__label + * {
  margin-top: 10px;
}
.mod-text-field__action {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  max-width: var(--field-size);
  margin-top: 10px;
}
.mod-text-field.w-manual-size .mod-text-field__action {
  max-width: 100%;
}
.mod-text-field__action mod-text-field__input {
  margin-top: 0;
}
.mod-text-field__action > .mod-btn {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 12px;
}
@media screen and (min-width: 768px), print {
  .mod-text-field__action > .mod-btn {
    margin-left: 20px;
  }
}
.mod-text-field__action > .mod-btn .btn a,
.mod-text-field__action > .mod-btn .btn button {
  min-height: 0;
}

.mod-datepicker {
  margin: 0 0 20px;
}
.mod-datepicker label + label {
  margin: 0;
}
.mod-datepicker__field {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.mod-datepicker__label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 1.6rem;
  font-weight: 700;
  vertical-align: text-top;
}
.mod-datepicker__label .required {
  margin-left: 12px;
}
.mod-datepicker__label .required > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 22px;
  padding: 3px 10px;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}
.mod-datepicker__input {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 178px;
  height: 50px;
  margin: 0 auto;
  padding: 13px 20px;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMjcgMjciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgyN3YyN2gtMjd6Ii8+PGcgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im0xMS41NDUgMTBoLTQuNDM2Yy0uNjA4IDAtMS4xMDkuNTAxLTEuMTA5IDEuMTA5djE1LjUyNmMwIC42MDguNTAxIDEuMTA5IDEuMTA5IDEuMTA5aDE3Ljc0M2MuNjA4IDAgMS4xMDktLjUwMSAxLjEwOS0xLjEwOXYtMTUuNTI2YzAtLjYwOC0uNTAxLTEuMTA5LTEuMTA5LTEuMTA5aC0xLjEwOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIuNjczIC00LjQ1NSkiLz48cGF0aCBkPSJtOS4wMDEgMy4wMDF2NCIvPjxwYXRoIGQ9Im0xOC4wMDEgMy4wMDF2NCIvPjxwYXRoIGQ9Im0xMi4wMDEgNS4wMDFoNiIvPjxwYXRoIGQ9Im0xNy41IDI1LjY2MyAyLjc3MiAyLjc3MiA0LjQzNi00LjQzNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTcuNzk2IC0xMC42OTIpIi8+PC9nPjwvZz48L3N2Zz4=") no-repeat calc(100% - 10px) center;
  background-size: 27px;
  color: #222;
  font-size: 1.6rem;
  cursor: pointer;
}
.mod-datepicker__input::-webkit-input-placeholder {
  color: #767676;
}
.mod-datepicker__input::-moz-placeholder {
  color: #767676;
}
.mod-datepicker__input:-ms-input-placeholder {
  color: #767676;
}
.mod-datepicker__input::-ms-input-placeholder {
  color: #767676;
}
.mod-datepicker__input::placeholder {
  color: #767676;
}
.mod-datepicker__input.is-error, .mod-datepicker__input:invalid {
  background-color: #ffebeb;
}
.mod-datepicker__input:disabled {
  background-color: #f4f4f4;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMjcgMjciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgyN3YyN2gtMjd6Ii8+PGcgc3Ryb2tlPSIjNzY3Njc2IiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im0xMS41NDUgMTBoLTQuNDM2Yy0uNjA4IDAtMS4xMDkuNTAxLTEuMTA5IDEuMTA5djE1LjUyNmMwIC42MDguNTAxIDEuMTA5IDEuMTA5IDEuMTA5aDE3Ljc0M2MuNjA4IDAgMS4xMDktLjUwMSAxLjEwOS0xLjEwOXYtMTUuNTI2YzAtLjYwOC0uNTAxLTEuMTA5LTEuMTA5LTEuMTA5aC0xLjEwOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIuNjczIC00LjQ1NSkiLz48cGF0aCBkPSJtOS4wMDEgMy4wMDF2NCIvPjxwYXRoIGQ9Im0xOC4wMDEgMy4wMDF2NCIvPjxwYXRoIGQ9Im0xMi4wMDEgNS4wMDFoNiIvPjxwYXRoIGQ9Im0xNy41IDI1LjY2MyAyLjc3MiAyLjc3MiA0LjQzNi00LjQzNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTcuNzk2IC0xMC42OTIpIi8+PC9nPjwvZz48L3N2Zz4=");
  color: #767676;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.mod-datepicker__label + * {
  margin-top: 10px;
}
.mod-datepicker__range {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 400px;
}
.mod-datepicker__range > span {
  display: block;
  margin: auto 8px;
  color: #767676;
}
.mod-datepicker__range .mod-datepicker__input {
  width: 100%;
  padding: 13px 12px;
}
@media screen and (min-width: 768px), print {
  .mod-datepicker__range > span {
    margin: auto 16px;
  }
  .mod-datepicker__range .mod-datepicker__input {
    width: 100%;
    padding: 13px 20px;
  }
}
:where(.c-accordion) .mod-datepicker__range .mod-datepicker__input {
  background-position: calc(100% - 6px) center;
}
@media screen and (max-width: 374px), print {
  :where(.c-accordion) .mod-datepicker__range > span {
    margin: auto 4px;
    font-size: 1.2rem;
  }
}

:where(.air-datepicker-global-container) .air-datepicker {
  --adp-color: #222;
}
:where(.air-datepicker-global-container) .air-datepicker-body--day-name {
  --adp-day-name-color: var(--adp-color);
}

.mod-text-area {
  display: block;
  margin: 0 0 20px;
}
.mod-text-area label + label {
  margin: 0;
}
.mod-text-area__field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.mod-text-area__label {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  vertical-align: text-top;
}
.mod-text-area__label .required {
  margin-left: 12px;
}
.mod-text-area__label .required > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 22px;
  padding: 3px 10px;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}
.mod-text-area__input {
  display: block;
  width: 100%;
  height: auto;
  min-height: calc(24.25em + 13px * 2);
  margin: 0 auto;
  padding: 13px 20px;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff;
  color: #222;
  font-size: 1.6rem;
  line-height: 1.75;
  resize: vertical;
}
@media screen and (min-width: 768px), print {
  .mod-text-area__input {
    min-height: calc(6.75em + 13px * 2);
  }
}
.mod-text-area__input::-webkit-input-placeholder {
  color: #767676;
}
.mod-text-area__input::-moz-placeholder {
  color: #767676;
}
.mod-text-area__input:-ms-input-placeholder {
  color: #767676;
}
.mod-text-area__input::-ms-input-placeholder {
  color: #767676;
}
.mod-text-area__input::placeholder {
  color: #767676;
}
.mod-text-area__input.is-error, .mod-text-area__input:invalid {
  background-color: #ffebeb;
}
.mod-text-area__input:disabled {
  background-color: #f4f4f4;
  color: #767676;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.mod-text-area__label + * {
  margin-top: 10px;
}

.mod-pulldown-select {
  --field-size: 335px;
  margin: 0 0 20px;
}
.mod-pulldown-select.w-manual-size {
  max-width: var(--field-size, 335px);
}
.mod-pulldown-select label + label {
  margin: 0;
}
.mod-pulldown-select__field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.mod-pulldown-select__label {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  vertical-align: text-top;
}
.mod-pulldown-select__label .required {
  margin-left: 12px;
}
.mod-pulldown-select__label .required > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 22px;
  padding: 3px 10px;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}
.mod-pulldown-select__input {
  width: 100%;
  margin: 0 auto;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjEuNSI+PHBhdGggZD0ibTAgMCAuMDE2IDcuNTYxIiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyA2LjY0MyA5LjYwNikiLz48cGF0aCBkPSJtMCA3LjU2MS4wMTYtNy41NjEiIHRyYW5zZm9ybT0ibWF0cml4KC0uNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLS43MDcxMDcgMTIuMDEyIDE0Ljk1MikiLz48L2c+PC9zdmc+") no-repeat calc(100% - 13px) center;
  background-size: 24px;
  color: #222;
  font-size: 1.6rem;
}
.mod-pulldown-select__input select {
  width: 100%;
  height: 50px;
  padding: 13px 20px;
  padding-right: 40px;
  border: none;
  border-radius: inherit;
  outline: none;
  background: transparent;
  background-image: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #222;
  font-size: 1.6rem;
  text-overflow: ellipsis;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.mod-pulldown-select__input select::-ms-expand {
  display: none;
}
.mod-pulldown-select__input select:focus-visible {
  outline: 2px solid #222;
  outline-offset: 3px;
}
.mod-pulldown-select__input select:disabled {
  background-color: #f4f4f4;
  color: #767676;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.mod-pulldown-select__input.is-error {
  background-color: #ffebeb;
}
.mod-pulldown-select__label + * {
  margin-top: 10px;
}
.mod-pulldown-select__search {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  max-width: var(--field-size);
}
.mod-pulldown-select.w-manual-size .mod-pulldown-select__search {
  max-width: 100%;
}
.mod-pulldown-select__search mod-pulldown-select__input {
  margin-top: 0;
}
.mod-pulldown-select__search > .mod-btn {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 12px;
}
@media screen and (min-width: 768px), print {
  .mod-pulldown-select__search > .mod-btn {
    margin-left: 20px;
  }
}
.mod-pulldown-select__search > .mod-btn .btn a,
.mod-pulldown-select__search > .mod-btn .btn button {
  min-height: 0;
}

.mod-radio {
  margin: 0 0 20px;
}
.mod-radio legend {
  display: block;
}
.mod-radio fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.mod-radio input[type=radio] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  border: 0 !important;
  font-size: 1.8rem;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}
.mod-radio__legend {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 10px;
  font-size: 1.6rem;
  font-weight: 700;
}
.mod-radio__legend .required {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: -0.1em;
  margin-left: 12px;
}
.mod-radio__legend .required > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 22px;
  padding: 3px 10px;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}
.mod-radio__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px 20px;
  min-width: -webkit-min-content;
  min-width: -moz-min-content;
  min-width: min-content;
  max-width: 100%;
}
.mod-radio__items > li {
  display: inherit;
  list-style: none;
}
.mod-radio__items label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  -ms-flex-item-align: start;
      align-self: flex-start;
  margin: 0;
  padding-right: 12px;
  padding-left: 40px;
  line-height: 1.5;
  cursor: pointer;
}
.mod-radio__items > label + label {
  margin-top: 0;
}
.mod-radio .checked-line {
  display: none;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: calc(100% - 10px);
  height: 2px;
  margin: auto;
  background-color: #c00;
}
.mod-radio .symbol {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMTIgMjMuNWMtMy4wNzIgMC01Ljk2LTEuMTk2LTguMTMyLTMuMzY4cy0zLjM2OC01LjA2LTMuMzY4LTguMTMyIDEuMTk2LTUuOTYgMy4zNjgtOC4xMzIgNS4wNi0zLjM2OCA4LjEzMi0zLjM2OCA1Ljk2IDEuMTk2IDguMTMyIDMuMzY4IDMuMzY4IDUuMDYgMy4zNjggOC4xMzItMS4xOTYgNS45Ni0zLjM2OCA4LjEzMi01LjA2IDMuMzY4LTguMTMyIDMuMzY4eiIgZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJub256ZXJvIi8+PHBhdGggZD0ibTEyIDFjLTIuOTM4IDAtNS43MDEgMS4xNDQtNy43NzggMy4yMjItMi4wNzggMi4wNzctMy4yMjIgNC44NC0zLjIyMiA3Ljc3OHMxLjE0NCA1LjcwMSAzLjIyMiA3Ljc3OGMyLjA3NyAyLjA3OCA0Ljg0IDMuMjIyIDcuNzc4IDMuMjIyczUuNzAxLTEuMTQ0IDcuNzc4LTMuMjIyYzIuMDc4LTIuMDc3IDMuMjIyLTQuODQgMy4yMjItNy43NzhzLTEuMTQ0LTUuNzAxLTMuMjIyLTcuNzc4Yy0yLjA3Ny0yLjA3OC00Ljg0LTMuMjIyLTcuNzc4LTMuMjIybTAtMWM2LjYyNyAwIDEyIDUuMzczIDEyIDEycy01LjM3MyAxMi0xMiAxMi0xMi01LjM3My0xMi0xMiA1LjM3My0xMiAxMi0xMnoiIGZpbGw9IiNkYmRiZGIiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIGZpbGw9Im5vbmUiIHI9IjYiLz48L3N2Zz4=") no-repeat center;
  background-size: 24px;
}
.mod-radio.is-error input[type=radio] + .symbol {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMTIgMjMuNWMtMy4wNzIgMC01Ljk2LTEuMTk2LTguMTMyLTMuMzY4cy0zLjM2OC01LjA2LTMuMzY4LTguMTMyIDEuMTk2LTUuOTYgMy4zNjgtOC4xMzIgNS4wNi0zLjM2OCA4LjEzMi0zLjM2OCA1Ljk2IDEuMTk2IDguMTMyIDMuMzY4IDMuMzY4IDUuMDYgMy4zNjggOC4xMzItMS4xOTYgNS45Ni0zLjM2OCA4LjEzMi01LjA2IDMuMzY4LTguMTMyIDMuMzY4eiIgZmlsbD0iI2ZmZWJlYiIgZmlsbC1ydWxlPSJub256ZXJvIi8+PHBhdGggZD0ibTEyIDFjLTIuOTM4IDAtNS43MDEgMS4xNDQtNy43NzggMy4yMjItMi4wNzggMi4wNzctMy4yMjIgNC44NC0zLjIyMiA3Ljc3OHMxLjE0NCA1LjcwMSAzLjIyMiA3Ljc3OGMyLjA3NyAyLjA3OCA0Ljg0IDMuMjIyIDcuNzc4IDMuMjIyczUuNzAxLTEuMTQ0IDcuNzc4LTMuMjIyYzIuMDc4LTIuMDc3IDMuMjIyLTQuODQgMy4yMjItNy43NzhzLTEuMTQ0LTUuNzAxLTMuMjIyLTcuNzc4Yy0yLjA3Ny0yLjA3OC00Ljg0LTMuMjIyLTcuNzc4LTMuMjIybTAtMWM2LjYyNyAwIDEyIDUuMzczIDEyIDEycy01LjM3MyAxMi0xMiAxMi0xMi01LjM3My0xMi0xMiA1LjM3My0xMiAxMi0xMnoiIGZpbGw9IiNkYmRiZGIiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIGZpbGw9Im5vbmUiIHI9IjYiLz48L3N2Zz4=");
}
.mod-radio input[type=radio]:invalid + .symbol {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMTIgMjMuNWMtMy4wNzIgMC01Ljk2LTEuMTk2LTguMTMyLTMuMzY4cy0zLjM2OC01LjA2LTMuMzY4LTguMTMyIDEuMTk2LTUuOTYgMy4zNjgtOC4xMzIgNS4wNi0zLjM2OCA4LjEzMi0zLjM2OCA1Ljk2IDEuMTk2IDguMTMyIDMuMzY4IDMuMzY4IDUuMDYgMy4zNjggOC4xMzItMS4xOTYgNS45Ni0zLjM2OCA4LjEzMi01LjA2IDMuMzY4LTguMTMyIDMuMzY4eiIgZmlsbD0iI2ZmZWJlYiIgZmlsbC1ydWxlPSJub256ZXJvIi8+PHBhdGggZD0ibTEyIDFjLTIuOTM4IDAtNS43MDEgMS4xNDQtNy43NzggMy4yMjItMi4wNzggMi4wNzctMy4yMjIgNC44NC0zLjIyMiA3Ljc3OHMxLjE0NCA1LjcwMSAzLjIyMiA3Ljc3OGMyLjA3NyAyLjA3OCA0Ljg0IDMuMjIyIDcuNzc4IDMuMjIyczUuNzAxLTEuMTQ0IDcuNzc4LTMuMjIyYzIuMDc4LTIuMDc3IDMuMjIyLTQuODQgMy4yMjItNy43NzhzLTEuMTQ0LTUuNzAxLTMuMjIyLTcuNzc4Yy0yLjA3Ny0yLjA3OC00Ljg0LTMuMjIyLTcuNzc4LTMuMjIybTAtMWM2LjYyNyAwIDEyIDUuMzczIDEyIDEycy01LjM3MyAxMi0xMiAxMi0xMi01LjM3My0xMi0xMiA1LjM3My0xMiAxMi0xMnoiIGZpbGw9IiNkYmRiZGIiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIGZpbGw9Im5vbmUiIHI9IjYiLz48L3N2Zz4=");
}
.mod-radio input[type=radio]:checked + .symbol {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMTIgMjMuNWMtMy4wNzIgMC01Ljk2LTEuMTk2LTguMTMyLTMuMzY4cy0zLjM2OC01LjA2LTMuMzY4LTguMTMyIDEuMTk2LTUuOTYgMy4zNjgtOC4xMzIgNS4wNi0zLjM2OCA4LjEzMi0zLjM2OCA1Ljk2IDEuMTk2IDguMTMyIDMuMzY4IDMuMzY4IDUuMDYgMy4zNjggOC4xMzItMS4xOTYgNS45Ni0zLjM2OCA4LjEzMi01LjA2IDMuMzY4LTguMTMyIDMuMzY4eiIgZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJub256ZXJvIi8+PGcgZmlsbD0iI2MwMCI+PHBhdGggZD0ibTEyIDFjLTIuOTM4IDAtNS43MDEgMS4xNDQtNy43NzggMy4yMjItMi4wNzggMi4wNzctMy4yMjIgNC44NC0zLjIyMiA3Ljc3OHMxLjE0NCA1LjcwMSAzLjIyMiA3Ljc3OGMyLjA3NyAyLjA3OCA0Ljg0IDMuMjIyIDcuNzc4IDMuMjIyczUuNzAxLTEuMTQ0IDcuNzc4LTMuMjIyYzIuMDc4LTIuMDc3IDMuMjIyLTQuODQgMy4yMjItNy43NzhzLTEuMTQ0LTUuNzAxLTMuMjIyLTcuNzc4Yy0yLjA3Ny0yLjA3OC00Ljg0LTMuMjIyLTcuNzc4LTMuMjIybTAtMWM2LjYyNyAwIDEyIDUuMzczIDEyIDEycy01LjM3MyAxMi0xMiAxMi0xMi01LjM3My0xMi0xMiA1LjM3My0xMiAxMi0xMnoiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjYiLz48L2c+PC9zdmc+");
}
.mod-radio input[type=radio]:focus-visible + .symbol {
  border-radius: 24px;
  outline: 2px solid #222;
  outline-offset: 2px;
}
.mod-radio input[type=radio]:disabled + .symbol {
  opacity: 1;
  background-color: transparent;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMTIgMjMuNWMtMy4wNzIgMC01Ljk2LTEuMTk2LTguMTMyLTMuMzY4cy0zLjM2OC01LjA2LTMuMzY4LTguMTMyIDEuMTk2LTUuOTYgMy4zNjgtOC4xMzIgNS4wNi0zLjM2OCA4LjEzMi0zLjM2OCA1Ljk2IDEuMTk2IDguMTMyIDMuMzY4IDMuMzY4IDUuMDYgMy4zNjggOC4xMzItMS4xOTYgNS45Ni0zLjM2OCA4LjEzMi01LjA2IDMuMzY4LTguMTMyIDMuMzY4eiIgZmlsbD0iI0M3QzdDNyIgZmlsbC1ydWxlPSJub256ZXJvIi8+PHBhdGggZD0ibTEyIDFjLTIuOTM4IDAtNS43MDEgMS4xNDQtNy43NzggMy4yMjItMi4wNzggMi4wNzctMy4yMjIgNC44NC0zLjIyMiA3Ljc3OHMxLjE0NCA1LjcwMSAzLjIyMiA3Ljc3OGMyLjA3NyAyLjA3OCA0Ljg0IDMuMjIyIDcuNzc4IDMuMjIyczUuNzAxLTEuMTQ0IDcuNzc4LTMuMjIyYzIuMDc4LTIuMDc3IDMuMjIyLTQuODQgMy4yMjItNy43NzhzLTEuMTQ0LTUuNzAxLTMuMjIyLTcuNzc4Yy0yLjA3Ny0yLjA3OC00Ljg0LTMuMjIyLTcuNzc4LTMuMjIybTAtMWM2LjYyNyAwIDEyIDUuMzczIDEyIDEycy01LjM3MyAxMi0xMiAxMi0xMi01LjM3My0xMi0xMiA1LjM3My0xMiAxMi0xMnoiIGZpbGw9IiNkYmRiZGIiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIGZpbGw9Im5vbmUiIHI9IjYiLz48L3N2Zz4=");
  color: inherit;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.mod-radio input[type=radio]:checked:disabled + .symbol {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMTIgMjMuNWMtMy4wNzIgMC01Ljk2LTEuMTk2LTguMTMyLTMuMzY4cy0zLjM2OC01LjA2LTMuMzY4LTguMTMyIDEuMTk2LTUuOTYgMy4zNjgtOC4xMzIgNS4wNi0zLjM2OCA4LjEzMi0zLjM2OCA1Ljk2IDEuMTk2IDguMTMyIDMuMzY4IDMuMzY4IDUuMDYgMy4zNjggOC4xMzItMS4xOTYgNS45Ni0zLjM2OCA4LjEzMi01LjA2IDMuMzY4LTguMTMyIDMuMzY4eiIgZmlsbD0iI0M3QzdDNyIgZmlsbC1ydWxlPSJub256ZXJvIi8+PHBhdGggZD0ibTEyIDFjLTIuOTM4IDAtNS43MDEgMS4xNDQtNy43NzggMy4yMjItMi4wNzggMi4wNzctMy4yMjIgNC44NC0zLjIyMiA3Ljc3OHMxLjE0NCA1LjcwMSAzLjIyMiA3Ljc3OGMyLjA3NyAyLjA3OCA0Ljg0IDMuMjIyIDcuNzc4IDMuMjIyczUuNzAxLTEuMTQ0IDcuNzc4LTMuMjIyYzIuMDc4LTIuMDc3IDMuMjIyLTQuODQgMy4yMjItNy43NzhzLTEuMTQ0LTUuNzAxLTMuMjIyLTcuNzc4Yy0yLjA3Ny0yLjA3OC00Ljg0LTMuMjIyLTcuNzc4LTMuMjIybTAtMWM2LjYyNyAwIDEyIDUuMzczIDEyIDEycy01LjM3MyAxMi0xMiAxMi0xMi01LjM3My0xMi0xMiA1LjM3My0xMiAxMi0xMnoiIGZpbGw9IiNkYmRiZGIiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIGZpbGw9Im5vbmUiIHI9IjYiLz48L3N2Zz4=");
}
.mod-radio label.is-disabled {
  color: #767676;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.mod-radio.of-inline .mod-radio__items {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  gap: 16px 10px;
}
@media screen and (min-width: 768px), print {
  .mod-radio.of-inline .mod-radio__items label {
    padding-right: 0;
  }
}
@media screen and (min-width: 768px), print {
  .mod-radio.of-inline .mod-radio__items {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 16px 20px;
  }
}

.mod-radio-card {
  margin: 0 0 30px;
}
.mod-radio-card legend {
  display: block;
}
.mod-radio-card fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.mod-radio-card input[type=radio] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  border: 0 !important;
  font-size: 1.8rem;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}
.mod-radio-card__legend {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 10px;
  font-size: 1.6rem;
  font-weight: 700;
}
.mod-radio-card__legend .required {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: -0.1em;
  margin-left: 12px;
}
.mod-radio-card__legend .required > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 22px;
  padding: 3px 10px;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}
.mod-radio-card__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
}
.mod-radio-card__items > label + label {
  margin-top: 16px;
}
.mod-radio-card__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background-color: #fff;
}
.mod-radio-card__card + .mod-radio-card__card {
  margin-top: 12px;
}
.mod-radio-card .tap-area {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.mod-radio-card .symbol {
  display: block;
  position: absolute;
  top: 20px;
  bottom: auto;
  left: 20px;
  width: 24px;
  height: 24px;
  margin: auto;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMTIgMjMuNWMtMy4wNzIgMC01Ljk2LTEuMTk2LTguMTMyLTMuMzY4cy0zLjM2OC01LjA2LTMuMzY4LTguMTMyIDEuMTk2LTUuOTYgMy4zNjgtOC4xMzIgNS4wNi0zLjM2OCA4LjEzMi0zLjM2OCA1Ljk2IDEuMTk2IDguMTMyIDMuMzY4IDMuMzY4IDUuMDYgMy4zNjggOC4xMzItMS4xOTYgNS45Ni0zLjM2OCA4LjEzMi01LjA2IDMuMzY4LTguMTMyIDMuMzY4eiIgZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJub256ZXJvIi8+PHBhdGggZD0ibTEyIDFjLTIuOTM4IDAtNS43MDEgMS4xNDQtNy43NzggMy4yMjItMi4wNzggMi4wNzctMy4yMjIgNC44NC0zLjIyMiA3Ljc3OHMxLjE0NCA1LjcwMSAzLjIyMiA3Ljc3OGMyLjA3NyAyLjA3OCA0Ljg0IDMuMjIyIDcuNzc4IDMuMjIyczUuNzAxLTEuMTQ0IDcuNzc4LTMuMjIyYzIuMDc4LTIuMDc3IDMuMjIyLTQuODQgMy4yMjItNy43NzhzLTEuMTQ0LTUuNzAxLTMuMjIyLTcuNzc4Yy0yLjA3Ny0yLjA3OC00Ljg0LTMuMjIyLTcuNzc4LTMuMjIybTAtMWM2LjYyNyAwIDEyIDUuMzczIDEyIDEycy01LjM3MyAxMi0xMiAxMi0xMi01LjM3My0xMi0xMiA1LjM3My0xMiAxMi0xMnoiIGZpbGw9IiNkYmRiZGIiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIGZpbGw9Im5vbmUiIHI9IjYiLz48L3N2Zz4=") no-repeat center;
  background-size: 24px;
}
.mod-radio-card .checked-line {
  display: none;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: calc(100% - 10px);
  height: 2px;
  margin: auto;
  background-color: #c00;
}
.mod-radio-card input[type=radio]:checked + .symbol {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMTIgMjMuNWMtMy4wNzIgMC01Ljk2LTEuMTk2LTguMTMyLTMuMzY4cy0zLjM2OC01LjA2LTMuMzY4LTguMTMyIDEuMTk2LTUuOTYgMy4zNjgtOC4xMzIgNS4wNi0zLjM2OCA4LjEzMi0zLjM2OCA1Ljk2IDEuMTk2IDguMTMyIDMuMzY4IDMuMzY4IDUuMDYgMy4zNjggOC4xMzItMS4xOTYgNS45Ni0zLjM2OCA4LjEzMi01LjA2IDMuMzY4LTguMTMyIDMuMzY4eiIgZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJub256ZXJvIi8+PGcgZmlsbD0iI2MwMCI+PHBhdGggZD0ibTEyIDFjLTIuOTM4IDAtNS43MDEgMS4xNDQtNy43NzggMy4yMjItMi4wNzggMi4wNzctMy4yMjIgNC44NC0zLjIyMiA3Ljc3OHMxLjE0NCA1LjcwMSAzLjIyMiA3Ljc3OGMyLjA3NyAyLjA3OCA0Ljg0IDMuMjIyIDcuNzc4IDMuMjIyczUuNzAxLTEuMTQ0IDcuNzc4LTMuMjIyYzIuMDc4LTIuMDc3IDMuMjIyLTQuODQgMy4yMjItNy43NzhzLTEuMTQ0LTUuNzAxLTMuMjIyLTcuNzc4Yy0yLjA3Ny0yLjA3OC00Ljg0LTMuMjIyLTcuNzc4LTMuMjIybTAtMWM2LjYyNyAwIDEyIDUuMzczIDEyIDEycy01LjM3MyAxMi0xMiAxMi0xMi01LjM3My0xMi0xMiA1LjM3My0xMiAxMi0xMnoiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjYiLz48L2c+PC9zdmc+");
}
.mod-radio-card input[type=radio]:checked ~ .checked-line {
  display: block;
}
.mod-radio-card.is-error .mod-radio-card__card {
  background-color: #ffebeb;
}
.mod-radio-card input[type=radio]:focus-visible + .symbol {
  border-radius: 24px;
  outline: 2px solid #222;
  outline-offset: 2px;
}
.mod-radio-card input[type=radio]:disabled + .symbol {
  opacity: 1;
  background-color: transparent;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMTIgMjMuNWMtMy4wNzIgMC01Ljk2LTEuMTk2LTguMTMyLTMuMzY4cy0zLjM2OC01LjA2LTMuMzY4LTguMTMyIDEuMTk2LTUuOTYgMy4zNjgtOC4xMzIgNS4wNi0zLjM2OCA4LjEzMi0zLjM2OCA1Ljk2IDEuMTk2IDguMTMyIDMuMzY4IDMuMzY4IDUuMDYgMy4zNjggOC4xMzItMS4xOTYgNS45Ni0zLjM2OCA4LjEzMi01LjA2IDMuMzY4LTguMTMyIDMuMzY4eiIgZmlsbD0iI0M3QzdDNyIgZmlsbC1ydWxlPSJub256ZXJvIi8+PHBhdGggZD0ibTEyIDFjLTIuOTM4IDAtNS43MDEgMS4xNDQtNy43NzggMy4yMjItMi4wNzggMi4wNzctMy4yMjIgNC44NC0zLjIyMiA3Ljc3OHMxLjE0NCA1LjcwMSAzLjIyMiA3Ljc3OGMyLjA3NyAyLjA3OCA0Ljg0IDMuMjIyIDcuNzc4IDMuMjIyczUuNzAxLTEuMTQ0IDcuNzc4LTMuMjIyYzIuMDc4LTIuMDc3IDMuMjIyLTQuODQgMy4yMjItNy43NzhzLTEuMTQ0LTUuNzAxLTMuMjIyLTcuNzc4Yy0yLjA3Ny0yLjA3OC00Ljg0LTMuMjIyLTcuNzc4LTMuMjIybTAtMWM2LjYyNyAwIDEyIDUuMzczIDEyIDEycy01LjM3MyAxMi0xMiAxMi0xMi01LjM3My0xMi0xMiA1LjM3My0xMiAxMi0xMnoiIGZpbGw9IiNkYmRiZGIiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIGZpbGw9Im5vbmUiIHI9IjYiLz48L3N2Zz4=");
  color: inherit;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.mod-radio-card input[type=radio]:checked:disabled + .symbol {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMTIgMjMuNWMtMy4wNzIgMC01Ljk2LTEuMTk2LTguMTMyLTMuMzY4cy0zLjM2OC01LjA2LTMuMzY4LTguMTMyIDEuMTk2LTUuOTYgMy4zNjgtOC4xMzIgNS4wNi0zLjM2OCA4LjEzMi0zLjM2OCA1Ljk2IDEuMTk2IDguMTMyIDMuMzY4IDMuMzY4IDUuMDYgMy4zNjggOC4xMzItMS4xOTYgNS45Ni0zLjM2OCA4LjEzMi01LjA2IDMuMzY4LTguMTMyIDMuMzY4eiIgZmlsbD0iI0M3QzdDNyIgZmlsbC1ydWxlPSJub256ZXJvIi8+PHBhdGggZD0ibTEyIDFjLTIuOTM4IDAtNS43MDEgMS4xNDQtNy43NzggMy4yMjItMi4wNzggMi4wNzctMy4yMjIgNC44NC0zLjIyMiA3Ljc3OHMxLjE0NCA1LjcwMSAzLjIyMiA3Ljc3OGMyLjA3NyAyLjA3OCA0Ljg0IDMuMjIyIDcuNzc4IDMuMjIyczUuNzAxLTEuMTQ0IDcuNzc4LTMuMjIyYzIuMDc4LTIuMDc3IDMuMjIyLTQuODQgMy4yMjItNy43NzhzLTEuMTQ0LTUuNzAxLTMuMjIyLTcuNzc4Yy0yLjA3Ny0yLjA3OC00Ljg0LTMuMjIyLTcuNzc4LTMuMjIybTAtMWM2LjYyNyAwIDEyIDUuMzczIDEyIDEycy01LjM3MyAxMi0xMiAxMi0xMi01LjM3My0xMi0xMiA1LjM3My0xMiAxMi0xMnoiIGZpbGw9IiNkYmRiZGIiIGZpbGwtcnVsZT0ibm9uemVybyIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIGZpbGw9Im5vbmUiIHI9IjYiLz48L3N2Zz4=");
}
.mod-radio-card label.is-disabled ~ .item-content {
  background-color: #f4f4f4;
  color: #767676;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.mod-radio-card .item-content {
  display: block;
  padding: 20px 20px 20px 60px;
}
.mod-radio-card .item-content > [class*=mod-] {
  margin: 0 !important;
}
@media screen and (min-width: 768px), print {
  .mod-radio-card .symbol {
    top: 0;
    bottom: 0;
  }
  .mod-radio-card .item-content {
    display: block;
    padding: 30px 30px 30px 60px;
  }
}
.mod-radio-card .radio-card-detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
.mod-radio-card .radio-card-detail > .detail {
  padding-top: 10px;
}
.mod-radio-card .radio-card-detail > .detail > .detail-title {
  display: block;
  padding-bottom: 10px;
}
.mod-radio-card .radio-card-detail > .detail > p {
  font-size: 1.4rem;
}
@media screen and (min-width: 768px), print {
  .mod-radio-card .radio-card-detail {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .mod-radio-card .radio-card-detail > .detail {
    padding-top: 0;
    padding-left: 12px;
  }
  .mod-radio-card .radio-card-detail > .detail > p {
    font-size: 1.6rem;
  }
}

.mod-checkbox {
  margin: 0 0 20px;
}
.mod-checkbox legend {
  display: block;
}
.mod-checkbox fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.mod-checkbox input[type=checkbox] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  border: 0 !important;
  font-size: 1.8rem;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}
.mod-checkbox__legend {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 10px;
  font-size: 1.6rem;
  font-weight: 700;
}
.mod-checkbox__legend .required {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: -0.1em;
  margin-left: 12px;
}
.mod-checkbox__legend .required > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 22px;
  padding: 3px 10px;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}
.mod-checkbox__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px 20px;
  min-width: -webkit-min-content;
  min-width: -moz-min-content;
  min-width: min-content;
  max-width: 100%;
}
.mod-checkbox__items > li {
  display: inherit;
  list-style: none;
}
.mod-checkbox__items label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  -ms-flex-item-align: start;
      align-self: flex-start;
  margin: 0;
  padding-right: 12px;
  padding-left: 40px;
  line-height: 1.5;
  cursor: pointer;
}
.mod-checkbox__items > label + label {
  margin-top: 0;
}
.mod-checkbox .checked-line {
  display: none;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: calc(100% - 10px);
  height: 2px;
  margin: auto;
  background-color: #c00;
}
.mod-checkbox .symbol {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdmlld0JveD0iMCAwIDI0IDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Im0wIDBoMjR2MjRoLTI0eiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Im0uNS41aDIzdjIzaC0yM3oiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2RiZGJkYiIvPjwvc3ZnPg==") no-repeat center;
  background-size: 24px;
}
.mod-checkbox.is-error input[type=checkbox] + .symbol {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdmlld0JveD0iMCAwIDI0IDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Im0wIDBoMjR2MjRoLTI0eiIgZmlsbD0iI2ZmZWJlYiIgZmlsbC1ydWxlPSJub256ZXJvIi8+PHBhdGggZD0ibS41LjVoMjN2MjNoLTIzeiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZGJkYmRiIi8+PC9zdmc+");
}
.mod-checkbox input[type=checkbox]:invalid + .symbol {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdmlld0JveD0iMCAwIDI0IDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Im0wIDBoMjR2MjRoLTI0eiIgZmlsbD0iI2ZmZWJlYiIgZmlsbC1ydWxlPSJub256ZXJvIi8+PHBhdGggZD0ibS41LjVoMjN2MjNoLTIzeiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZGJkYmRiIi8+PC9zdmc+");
}
.mod-checkbox input[type=checkbox]:checked + .symbol {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdmlld0JveD0iMCAwIDI0IDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Im0wIDBoMjR2MjRoLTI0eiIgZmlsbD0iI2ZmZiIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2MwMCI+PHBhdGggZD0ibS41LjVoMjN2MjNoLTIzeiIvPjxwYXRoIGQ9Im0tMzI0MC44NSA5NjM1LjU4IDUuNSA1LjUgOC41My04LjUyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzI0NS44MyAtOTYyNC44MikiLz48L2c+PC9zdmc+");
}
.mod-checkbox input[type=checkbox]:focus-visible + .symbol {
  outline: 2px solid #222;
  outline-offset: 2px;
}
.mod-checkbox input[type=checkbox]:disabled + .symbol {
  opacity: 1;
  background-color: transparent;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdmlld0JveD0iMCAwIDI0IDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Im0wIDBoMjR2MjRoLTI0eiIgZmlsbD0iI0M3QzdDNyIvPjxwYXRoIGQ9Im0uNS41aDIzdjIzaC0yM3oiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2RiZGJkYiIvPjwvc3ZnPg==");
  color: inherit;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.mod-checkbox input[type=checkbox]:checked:disabled + .symbol {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdmlld0JveD0iMCAwIDI0IDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Im0wIDBoMjR2MjRoLTI0eiIgZmlsbD0iI0M3QzdDNyIvPjxwYXRoIGQ9Im0uNS41aDIzdjIzaC0yM3oiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2RiZGJkYiIvPjwvc3ZnPg==");
}
.mod-checkbox__other {
  max-width: 550px;
  margin-top: 20px;
}
.mod-checkbox:not(.of-filter) label.is-disabled {
  color: #767676;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.mod-checkbox.of-filter .mod-checkbox__items {
  display: -ms-grid;
  display: grid;
  gap: 10px 20px;
}
.mod-checkbox.of-filter .mod-checkbox__items label {
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  padding: 12px 24px 12px 60px;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
}
.mod-checkbox.of-filter .symbol {
  top: 0.8em;
  left: 20px;
  margin: auto 0;
}
.mod-checkbox.of-filter input[type=checkbox]:checked ~ .checked-line {
  display: block;
}
.mod-checkbox.of-filter label.is-disabled {
  background-color: #f4f4f4;
  color: #767676;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
@media screen and (min-width: 768px), print {
  .mod-checkbox.of-filter .mod-checkbox__items {
    display: -ms-inline-grid;
    display: inline-grid;
  }
  .mod-checkbox.of-filter[class*=w-] .mod-checkbox__items {
    display: -ms-grid;
    display: grid;
  }
}
.mod-checkbox.of-inline .mod-checkbox__items {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
}
.mod-checkbox.of-inline .mod-checkbox__items > label,
.mod-checkbox.of-inline .mod-checkbox__items > li {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
}
.mod-checkbox.of-inline .mod-checkbox__items > label + label {
  margin-top: 0;
}
@media screen and (min-width: 768px), print {
  .mod-checkbox.of-inline .mod-checkbox__items {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
}
.mod-checkbox.of-inline.of-filter .mod-checkbox__items {
  grid-template-columns: repeat(auto-fit, minmax(265px, 1fr));
  gap: 16px 20px;
}
.mod-checkbox.of-inline.of-filter .mod-checkbox__items > label,
.mod-checkbox.of-inline.of-filter .mod-checkbox__items > li {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (min-width: 768px), print {
  .mod-checkbox.of-inline:not(.of-filter) .mod-checkbox__items label {
    padding-right: 0;
  }
}

.mod-upload {
  margin: 0 auto 30px;
}
.mod-upload__preview {
  display: block;
  position: relative;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  background-color: #e2e2e2;
}
.mod-upload__preview::before {
  content: "";
  display: block;
  padding-top: 60%;
}
.mod-upload__preview img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.mod-upload__title {
  color: #222;
  font-weight: 700;
}
.mod-upload__container {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  margin-top: 10px;
  margin-right: auto;
}
.mod-upload__container.of-slim {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-flow: column-reverse;
          flex-flow: column-reverse;
  -webkit-box-align: inherit;
      -ms-flex-align: inherit;
          align-items: inherit;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.mod-upload__file-name {
  display: inline-block;
  margin-top: 16px;
  color: #767676;
  font-size: 1.4rem;
}
.mod-upload .mod-btn {
  margin-top: 20px;
  margin-bottom: 0;
}
.mod-upload .mod-upload__container.of-slim .mod-btn {
  margin-top: 0;
  margin-right: 20px;
}
.mod-upload .mod-upload__button {
  position: relative;
  width: 100%;
}
.mod-upload .mod-upload__button button {
  width: 100%;
  min-width: 266px;
}
.mod-upload.is-error .mod-upload__button button {
  background-color: #ffebeb;
}
.mod-upload__input[type=file] {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
@media screen and (min-width: 768px), print {
  .mod-upload {
    margin-right: 0;
    margin-left: 0;
  }
  .mod-upload__container {
    width: auto;
    max-width: inherit;
  }
  .mod-upload__container .mod-upload__button {
    width: auto;
  }
  .mod-upload__container .mod-upload__button button {
    min-width: 266px;
  }
  .mod-upload__container.of-slim {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

.mod-form-flow {
  display: block;
  margin: 0 0 30px;
}
.mod-form-flow .step-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.mod-form-flow .step {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto;
  min-width: initial;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  height: 70px;
  color: #222;
}
.mod-form-flow .step + .step {
  margin-left: -18px;
}
.mod-form-flow .step::before, .mod-form-flow .step::after {
  content: "";
  display: block;
  top: 0;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 22px;
  height: inherit;
  background-color: #f4f4f4;
  background-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: auto 100%;
          mask-size: auto 100%;
}
.mod-form-flow .step::before {
  margin-right: -1px;
  -webkit-mask-position: left center;
          mask-position: left center;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyMyA3MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMiA3NSAyMC0zNS0yMC0zNWgyMnY3MHoiIGZpbGw9IiNjMDAiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIgLTUpIi8+PC9zdmc+");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyMyA3MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMiA3NSAyMC0zNS0yMC0zNWgyMnY3MHoiIGZpbGw9IiNjMDAiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIgLTUpIi8+PC9zdmc+");
}
.mod-form-flow .step::after {
  margin-left: -1px;
  mask-position-x: right center;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyMiA3MSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtNCA3NWgtMXYtNzBoMWwyMCAzNXoiIGZpbGw9IiNjMDAiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTMgLTQuOTk5KSIvPjwvc3ZnPg==");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyMiA3MSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtNCA3NWgtMXYtNzBoMWwyMCAzNXoiIGZpbGw9IiNjMDAiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTMgLTQuOTk5KSIvPjwvc3ZnPg==");
}
.mod-form-flow .step a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: inherit;
  height: inherit;
  text-decoration: none;
}
.mod-form-flow .step a:focus {
  outline: none;
}
.mod-form-flow .step a:focus-visible {
  z-index: 2;
  -webkit-box-shadow: 0 0 0 2px #000;
          box-shadow: 0 0 0 2px #000;
}
.mod-form-flow .step a:focus-visible .num {
  text-decoration: none;
}
.mod-form-flow .step a:focus-visible .text {
  text-decoration: none;
}
.mod-form-flow .step a .num {
  text-decoration: none;
}
.mod-form-flow .step a .text {
  text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
  .mod-form-flow .step a:hover .num {
    text-decoration: none;
  }
  .mod-form-flow .step a:hover .text {
    text-decoration: none;
  }
}
.mod-form-flow .step-arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: inherit;
  padding: 0 0 0 10px;
  background-color: #f4f4f4;
}
.mod-form-flow .step.is-current,
.mod-form-flow .step[aria-current=step] {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  max-width: 100%;
}
.mod-form-flow .step.is-current .step-arrow,
.mod-form-flow .step[aria-current=step] .step-arrow {
  max-width: 100%;
  padding-right: 4px;
  padding-left: 10px;
  background-color: #c00;
}
.mod-form-flow .step.is-current::before, .mod-form-flow .step.is-current::after,
.mod-form-flow .step[aria-current=step]::before,
.mod-form-flow .step[aria-current=step]::after {
  background-color: #c00;
}
.mod-form-flow .step:first-child::before {
  content: none;
}
.mod-form-flow .step:first-child .step-arrow {
  padding-right: 0;
  padding-left: 14px;
  border-radius: 6px 0 0 6px;
}
.mod-form-flow .step:last-child {
  margin-left: -18px;
}
.mod-form-flow .step:last-child::after {
  content: none;
}
.mod-form-flow .step:last-child .step-arrow {
  padding-right: 10px;
  padding-left: 4px;
  border-radius: 0 6px 6px 0;
}
.mod-form-flow .step:last-child.is-current .step-arrow, .mod-form-flow .step:last-child[aria-current=step] .step-arrow {
  padding-left: 10px;
}
.mod-form-flow .step .step-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.mod-form-flow .step .num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 1;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 100%;
  background-color: #c00;
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
.mod-form-flow .step.is-current .num,
.mod-form-flow .step[aria-current=step] .num {
  background-color: #fff;
  color: #222;
}
.mod-form-flow .step .text {
  display: -webkit-box;
  position: relative;
  z-index: 1;
  width: 100%;
  margin-left: 10px;
  overflow: hidden;
  color: #222;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.2857;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.mod-form-flow .step.is-current .text,
.mod-form-flow .step[aria-current=step] .text {
  color: #fff;
  font-weight: 700;
}
.mod-form-flow .step b .text {
  font-weight: 700;
}
@media screen and (max-width: 1199px), print {
  .mod-form-flow .step:not(.is-current, [aria-current=step]) .text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(1px, 1px, 1px, 1px) !important; /* 1 */
    border: 0 !important;
    font-size: 1.8rem;
    white-space: nowrap !important; /* 3 */
    clip-path: inset(50%) !important; /* 2 */
  }
}
@media screen and (min-width: 768px), print {
  .mod-form-flow .step {
    width: 100%;
    max-width: 165px;
    height: 80px;
  }
  .mod-form-flow .step + .step {
    margin-left: -10px;
  }
  .mod-form-flow .step::before {
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyMiA4MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMjYgODBoLTIybDIwLTQwLTIwLTQwaDIyeiIgZmlsbD0iI2MwMCIgZmlsbC1ydWxlPSJub256ZXJvIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNCkiLz48L3N2Zz4=");
            mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyMiA4MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMjYgODBoLTIybDIwLTQwLTIwLTQwaDIyeiIgZmlsbD0iI2MwMCIgZmlsbC1ydWxlPSJub256ZXJvIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNCkiLz48L3N2Zz4=");
  }
  .mod-form-flow .step::after {
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyMSA4MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGNsaXBQYXRoIGlkPSJhIj48cGF0aCBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Im0xNDgxLTExNDBoMjF2ODBoLTIxeiIvPjwvY2xpcFBhdGg+PGcgY2xpcC1wYXRoPSJ1cmwoI2EpIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTQ4MSAxMTQwKSI+PHBhdGggZD0ibTAgMGgyNjVsMjAgNDAtMjAgNDBoLTI2NWwyMC00MHoiIGZpbGw9IiNjMDAiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTIxNyAtMTE0MCkiLz48L2c+PC9zdmc+");
            mask-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCAyMSA4MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGNsaXBQYXRoIGlkPSJhIj48cGF0aCBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Im0xNDgxLTExNDBoMjF2ODBoLTIxeiIvPjwvY2xpcFBhdGg+PGcgY2xpcC1wYXRoPSJ1cmwoI2EpIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTQ4MSAxMTQwKSI+PHBhdGggZD0ibTAgMGgyNjVsMjAgNDAtMjAgNDBoLTI2NWwyMC00MHoiIGZpbGw9IiNjMDAiIGZpbGwtcnVsZT0ibm9uemVybyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTIxNyAtMTE0MCkiLz48L2c+PC9zdmc+");
  }
  .mod-form-flow .step-arrow {
    padding: 12px;
  }
  .mod-form-flow .step.is-current,
  .mod-form-flow .step[aria-current=step] {
    max-width: 100%;
  }
  .mod-form-flow .step.is-current .step-arrow,
  .mod-form-flow .step[aria-current=step] .step-arrow {
    padding-right: 10px;
    padding-left: 16px;
  }
  .mod-form-flow .step:first-child .step-arrow {
    padding-right: 12px;
    padding-left: 12px;
  }
  .mod-form-flow .step:last-child .step-arrow {
    padding-right: 24px;
    padding-left: 20px;
  }
  .mod-form-flow .step:last-child.is-current .step-arrow, .mod-form-flow .step:last-child[aria-current=step] .step-arrow {
    padding-right: 24px;
    padding-left: 16px;
  }
  .mod-form-flow .step .text {
    overflow: hidden;
    font-size: 1.6rem;
    line-height: 1.375;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-form-flow .step {
    position: relative;
    max-width: initial;
    margin-left: 0;
    padding: 0;
  }
  .mod-form-flow .step + .step {
    margin-left: 0;
  }
  .mod-form-flow .step:first-child {
    max-width: initial;
  }
  .mod-form-flow .step:last-child {
    max-width: initial;
  }
  .mod-form-flow .step.is-current,
  .mod-form-flow .step[aria-current=step] {
    max-width: initial;
  }
  .mod-form-flow .step:first-child .step-arrow {
    padding-right: 44px;
    padding-left: 30px;
  }
  .mod-form-flow .step:last-child .step-arrow {
    padding-right: 24px;
    padding-left: 24px;
  }
}

.mod-submit {
  position: relative;
}
.mod-submit .submit-btn button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto;
  min-width: 220px;
  max-width: 100%;
  height: auto;
  min-height: 60px;
  padding: 14px 18px;
  overflow: hidden;
  -webkit-transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  border: 1px solid #c00;
  border-radius: 6px;
  background-color: #c00;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  color: #222;
  color: #fff;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
}
.mod-submit .submit-btn button:disabled {
  opacity: 0.4;
  cursor: default;
}
.mod-submit .submit-btn button:not(:disabled):focus,
.mod-submit .submit-btn button:not(:disabled):hover {
  border-color: #c00;
  background-color: #fff;
  color: #c00;
}
.mod-submit .submit-lyt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto 40px;
}
.mod-submit .submit-lyt > * + * {
  margin-top: 20px;
  margin-bottom: 0;
}
@media screen and (min-width: 768px), print {
  .mod-submit .submit-lyt {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .mod-submit .submit-lyt > * {
    margin-top: 0;
  }
  .mod-submit .submit-lyt > * + * {
    margin-left: 20px;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-submit .submit-lyt > * + * {
    margin-left: 26px;
  }
}

.mod-postcode {
  margin: 0 0 20px;
}
.mod-postcode label + label {
  margin: 0;
}
.mod-postcode__field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.mod-postcode__label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 1.6rem;
  font-weight: 700;
  vertical-align: text-top;
}
.mod-postcode__label .required {
  margin-left: 12px;
}
.mod-postcode__label .required > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 22px;
  padding: 3px 10px;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}
.mod-postcode__input-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  max-width: 492px;
  margin: 10px 0 0;
}
.mod-postcode__input-wrap .mod-btn {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 100%;
  margin-top: 10px;
  margin-bottom: 0;
}
.mod-postcode__input-wrap .mod-btn > .inner > .btn {
  width: 100%;
}
.mod-postcode__input-wrap .mod-btn .btn button,
.mod-postcode__input-wrap .mod-btn .btn a {
  width: 100% !important;
  min-height: 0;
}
.mod-postcode__input {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}
.mod-postcode__input > span {
  display: block;
  margin: auto 7px;
  color: #767676;
}
.mod-postcode__input input[type=text] {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  height: 50px;
  margin: 0;
  padding: 13px 12px;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff;
  background-size: 27px;
  color: #222;
  font-size: 1.6rem;
}
.mod-postcode__input input[type=text]::-webkit-input-placeholder {
  color: #767676;
}
.mod-postcode__input input[type=text]::-moz-placeholder {
  color: #767676;
}
.mod-postcode__input input[type=text]:-ms-input-placeholder {
  color: #767676;
}
.mod-postcode__input input[type=text]::-ms-input-placeholder {
  color: #767676;
}
.mod-postcode__input input[type=text]::placeholder {
  color: #767676;
}
.mod-postcode__input input[type=text].is-error, .mod-postcode__input input[type=text]:invalid {
  background-color: #ffebeb;
}
@media screen and (min-width: 768px), print {
  .mod-postcode__input-wrap {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .mod-postcode__input-wrap .mod-btn {
    width: auto;
    margin-top: 0;
    margin-left: 20px;
  }
  .mod-postcode__input input[type=text] {
    width: 100%;
    padding: 13px 20px;
  }
}

/*! = Modules/Layout */
.mod-lyt-product-info {
  margin: 0 auto 40px;
}
.mod-lyt-product-info__container {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -ms-grid-rows: 1fr;
  grid-template-rows: 1fr;
  gap: 40px 20px;
}
@media screen and (min-width: 768px), print {
  .mod-lyt-product-info__container {
    -ms-grid-columns: minmax(280px, 1fr) minmax(auto, 645px);
    grid-template-columns: minmax(280px, 1fr) minmax(auto, 645px);
  }
}
@media screen and (min-width: 1200px), print {
  .mod-lyt-product-info__container {
    -ms-grid-columns: minmax(auto, 455px) minmax(auto, 645px);
    grid-template-columns: minmax(auto, 455px) minmax(auto, 645px);
  }
}
.mod-lyt-product-info__container + * {
  margin-top: 40px;
}
.mod-lyt-product-info__detail {
  position: relative;
  max-width: 1120px;
  margin: 0;
}
.mod-lyt-product-info__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fit, 1fr);
  grid-template-rows: repeat(auto-fit, 1fr);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
}
@media screen and (min-width: 768px), print {
  .mod-lyt-product-info__inner {
    grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
    gap: 40px 20px;
  }
}
.mod-lyt-product-info__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 20px 0 0;
  overflow: hidden;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff;
}

.mod-product-info-table__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.mod-product-info-table__header .hdg {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  width: 100%;
  padding-bottom: 12px;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.3;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-table__header .hdg {
    font-size: 2.6rem;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-product-info-table__header .hdg {
    font-size: 3.4rem;
  }
}
.mod-product-info-table__header .name {
  font-family: "Roboto", sans-serif;
}
.mod-product-info-table .product-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  padding: 20px 10px 0;
  border-top: 1px solid #dbdbdb;
  border-bottom: 1px solid #dbdbdb;
}
.mod-product-info-table .product-info__item {
  margin-bottom: 20px;
}
.mod-product-info-table .product-info__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 20px;
  margin-bottom: 8px;
  font-size: 1.6rem;
  font-weight: 700;
}
.mod-product-info-table .product-info__color {
  display: block;
  width: 20px;
  height: 20px;
  margin-right: 20px;
  -webkit-transition: border-color 0.2s;
  transition: border-color 0.2s;
  border: 1px solid #dbdbdb;
  background: #f4f4f4;
}
.mod-product-info-table .product-info__color.selected {
  border: 2px solid #c00;
}
.mod-product-info-table .product-info__data {
  margin-right: 30px;
}
.mod-product-info-table .product-info__data dt,
.mod-product-info-table .product-info__data dd {
  display: table-cell;
  color: #222;
  font-size: 1.4rem;
  line-height: 1.65;
}
.mod-product-info-table .product-info__data dt {
  position: relative;
  width: auto;
  min-width: 96px;
  padding-right: 1em;
}
.mod-product-info-table .product-info__data dt::after {
  content: ":";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  width: 1em;
  height: 1em;
  text-align: center;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-table .product-info {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 20px 20px 0;
  }
  .mod-product-info-table .product-info__data:not(:last-child) {
    margin-bottom: 4px;
  }
  .mod-product-info-table .product-info__data dt,
  .mod-product-info-table .product-info__data dd {
    font-size: 1.6rem;
  }
}
.mod-product-info-table .product-summary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 20px 10px;
  border-top: 1px solid #dbdbdb;
  border-bottom: 1px solid #dbdbdb;
}
.mod-product-info-table .product-summary__title {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 20px;
  margin-bottom: 8px;
  font-size: 1.6rem;
  font-weight: 700;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-table .product-summary {
    padding: 20px;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-product-info-table .product-summary {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.mod-product-info-table .product-info + .product-summary {
  border-top: none;
}
.mod-product-info-table .product-other {
  margin: 26px 0 0;
}
.mod-product-info-table .value-price-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  min-height: 80px;
  margin: -6px 0 30px;
  padding: 15px;
  border-radius: 6px;
  background: #f4f4f4;
}
.mod-product-info-table .value-price-box .value {
  font-size: 1.4rem;
  font-weight: 700;
}
.mod-product-info-table .value-price-box .price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.mod-product-info-table .value-price-box .price .unit {
  margin-left: 4px;
  font-size: 1.4rem;
}
.mod-product-info-table .value-price-box .price .num {
  margin-bottom: -0.2em;
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
}
.mod-product-info-table .value-price-box .price .note {
  font-size: 1.4rem;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-table .value-price-box {
    margin-bottom: 20px;
  }
  .mod-product-info-table .value-price-box .value {
    font-size: 1.6rem;
  }
}
.mod-product-info-table .tag {
  margin-top: 16px;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-table .tag {
    margin-top: 20px;
  }
}
.mod-product-info-table .tag .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -10px;
  margin-left: -10px;
}
.mod-product-info-table .tag .list li {
  padding-top: 10px;
  padding-left: 10px;
}
.mod-product-info-table .tag .list li > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 6px;
  border: 1px solid #dbdbdb;
  background: #f4f4f4;
  color: #222;
  font-size: 1.2rem;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
}
.mod-product-info-table .spec {
  margin-top: 16px;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-table .spec {
    margin-top: 20px;
  }
}
.mod-product-info-table .spec .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -8px;
  margin-left: -8px;
}
.mod-product-info-table .spec .list li {
  padding-top: 8px;
  padding-left: 8px;
  line-height: 1;
}
.mod-product-info-table .spec .list li > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 60px;
  height: 60px;
}
.mod-product-info-table .spec .list li img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-table .spec .list {
    margin-top: -10px;
    margin-left: -10px;
  }
  .mod-product-info-table .spec .list li {
    padding-top: 10px;
    padding-left: 10px;
  }
}
.mod-product-info-table .support {
  margin-top: 16px;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-table .support {
    margin-top: 20px;
  }
}
.mod-product-info-table .support .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -10px;
  margin-left: -10px;
}
.mod-product-info-table .support .list li {
  padding-top: 10px;
  padding-left: 10px;
  line-height: 1;
}
.mod-product-info-table .support .list li > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.mod-product-info-table .review {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 20px;
}
@media screen and (max-width: 767px), print {
  .mod-product-info-table .review {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    min-height: 44px;
    border-radius: 6px;
    background: #f4f4f4;
  }
}
.mod-product-info-table .review a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  color: #0f6bff;
}
.mod-product-info-table .review a:hover {
  opacity: 0.7;
}
.mod-product-info-table .review-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  text-decoration: underline;
}
.mod-product-info-table .rating {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: 120px;
  height: 24px;
  color: #e2e2e2;
  font-size: 3rem;
  line-height: 1;
  white-space: nowrap;
}
.mod-product-info-table .rating .star-rating {
  position: relative;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  font-size: 2.2rem;
}
.mod-product-info-table .rating .star-rating::before, .mod-product-info-table .rating .star-rating::after {
  content: "☆☆☆☆☆";
  position: absolute;
  top: 0;
  left: 0;
  color: #f5c84d;
}
.mod-product-info-table .rating .star-rating::after {
  content: "★★★★★";
  overflow: hidden;
  color: #f5c84d;
}
.mod-product-info-table .rating .star-rating[data-rate="0"]::after {
  width: 0rem;
}
.mod-product-info-table .rating .star-rating[data-rate="0.1"]::after {
  width: 0.22rem;
}
.mod-product-info-table .rating .star-rating[data-rate="0.2"]::after {
  width: 0.44rem;
}
.mod-product-info-table .rating .star-rating[data-rate="0.3"]::after {
  width: 0.66rem;
}
.mod-product-info-table .rating .star-rating[data-rate="0.4"]::after {
  width: 0.88rem;
}
.mod-product-info-table .rating .star-rating[data-rate="0.5"]::after {
  width: 1.1rem;
}
.mod-product-info-table .rating .star-rating[data-rate="0.6"]::after {
  width: 1.32rem;
}
.mod-product-info-table .rating .star-rating[data-rate="0.7"]::after {
  width: 1.54rem;
}
.mod-product-info-table .rating .star-rating[data-rate="0.8"]::after {
  width: 1.76rem;
}
.mod-product-info-table .rating .star-rating[data-rate="0.9"]::after {
  width: 1.98rem;
}
.mod-product-info-table .rating .star-rating[data-rate="1"]::after {
  width: 2.2rem;
}
.mod-product-info-table .rating .star-rating[data-rate="1.1"]::after {
  width: 2.42rem;
}
.mod-product-info-table .rating .star-rating[data-rate="1.2"]::after {
  width: 2.64rem;
}
.mod-product-info-table .rating .star-rating[data-rate="1.3"]::after {
  width: 2.86rem;
}
.mod-product-info-table .rating .star-rating[data-rate="1.4"]::after {
  width: 3.08rem;
}
.mod-product-info-table .rating .star-rating[data-rate="1.5"]::after {
  width: 3.3rem;
}
.mod-product-info-table .rating .star-rating[data-rate="1.6"]::after {
  width: 3.52rem;
}
.mod-product-info-table .rating .star-rating[data-rate="1.7"]::after {
  width: 3.74rem;
}
.mod-product-info-table .rating .star-rating[data-rate="1.8"]::after {
  width: 3.96rem;
}
.mod-product-info-table .rating .star-rating[data-rate="1.9"]::after {
  width: 4.18rem;
}
.mod-product-info-table .rating .star-rating[data-rate="2"]::after {
  width: 4.4rem;
}
.mod-product-info-table .rating .star-rating[data-rate="2.1"]::after {
  width: 4.62rem;
}
.mod-product-info-table .rating .star-rating[data-rate="2.2"]::after {
  width: 4.84rem;
}
.mod-product-info-table .rating .star-rating[data-rate="2.3"]::after {
  width: 5.06rem;
}
.mod-product-info-table .rating .star-rating[data-rate="2.4"]::after {
  width: 5.28rem;
}
.mod-product-info-table .rating .star-rating[data-rate="2.5"]::after {
  width: 5.5rem;
}
.mod-product-info-table .rating .star-rating[data-rate="2.6"]::after {
  width: 5.72rem;
}
.mod-product-info-table .rating .star-rating[data-rate="2.7"]::after {
  width: 5.94rem;
}
.mod-product-info-table .rating .star-rating[data-rate="2.8"]::after {
  width: 6.16rem;
}
.mod-product-info-table .rating .star-rating[data-rate="2.9"]::after {
  width: 6.38rem;
}
.mod-product-info-table .rating .star-rating[data-rate="3"]::after {
  width: 6.6rem;
}
.mod-product-info-table .rating .star-rating[data-rate="3.1"]::after {
  width: 6.82rem;
}
.mod-product-info-table .rating .star-rating[data-rate="3.2"]::after {
  width: 7.04rem;
}
.mod-product-info-table .rating .star-rating[data-rate="3.3"]::after {
  width: 7.26rem;
}
.mod-product-info-table .rating .star-rating[data-rate="3.4"]::after {
  width: 7.48rem;
}
.mod-product-info-table .rating .star-rating[data-rate="3.5"]::after {
  width: 7.7rem;
}
.mod-product-info-table .rating .star-rating[data-rate="3.6"]::after {
  width: 7.92rem;
}
.mod-product-info-table .rating .star-rating[data-rate="3.7"]::after {
  width: 8.14rem;
}
.mod-product-info-table .rating .star-rating[data-rate="3.8"]::after {
  width: 8.36rem;
}
.mod-product-info-table .rating .star-rating[data-rate="3.9"]::after {
  width: 8.58rem;
}
.mod-product-info-table .rating .star-rating[data-rate="4"]::after {
  width: 8.8rem;
}
.mod-product-info-table .rating .star-rating[data-rate="4.1"]::after {
  width: 9.02rem;
}
.mod-product-info-table .rating .star-rating[data-rate="4.2"]::after {
  width: 9.24rem;
}
.mod-product-info-table .rating .star-rating[data-rate="4.3"]::after {
  width: 9.46rem;
}
.mod-product-info-table .rating .star-rating[data-rate="4.4"]::after {
  width: 9.68rem;
}
.mod-product-info-table .rating .star-rating[data-rate="4.5"]::after {
  width: 9.9rem;
}
.mod-product-info-table .rating .star-rating[data-rate="4.6"]::after {
  width: 10.12rem;
}
.mod-product-info-table .rating .star-rating[data-rate="4.7"]::after {
  width: 10.34rem;
}
.mod-product-info-table .rating .star-rating[data-rate="4.8"]::after {
  width: 10.56rem;
}
.mod-product-info-table .rating .star-rating[data-rate="4.9"]::after {
  width: 10.78rem;
}
.mod-product-info-table .rating .star-rating[data-rate="5"]::after {
  width: 11rem;
}
.mod-product-info-table .mod-product-store-card__price {
  margin-top: 20px;
}

.mod-product-info-store {
  padding: 20px;
  border-radius: 6px;
  background: #f4f4f4;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-store {
    padding: 40px;
  }
}
* + .mod-product-info-store {
  margin-top: 30px;
}
.mod-product-info-store__header {
  padding-bottom: 10px;
  border-bottom: 1px solid #dbdbdb;
}
.mod-product-info-store__title {
  font-size: 2rem;
}
.mod-product-info-store__body {
  margin: 20px 0 16px;
}
.mod-product-info-store__body .shop-value {
  grid-area: store-name;
  margin-bottom: 4px;
  font-size: 1.2rem;
}
.mod-product-info-store__body .tag {
  grid-area: store-tag;
}
.mod-product-info-store__body .price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  grid-area: store-price;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 16px;
  margin-left: auto;
}
.mod-product-info-store__body .price .unit {
  margin-left: 4px;
  font-size: 1.4rem;
}
.mod-product-info-store__body .price .num {
  margin-bottom: -0.2em;
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
}
.mod-product-info-store__body .price .note {
  font-size: 1.4rem;
}
.mod-product-info-store__body .mod-btn {
  grid-area: store-button;
  margin-bottom: 0;
  margin-left: auto;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-store__body {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 20px minmax(280px, auto);
        -ms-grid-columns: 1fr 20px minmax(280px, auto);
            grid-template: auto auto/1fr minmax(280px, auto);
            grid-template-areas: "store-name store-price" "store-tag store-button";
    margin-bottom: 20px;
    gap: 20px;
  }
  .mod-product-info-store__body:not(:has(.shop-value)) {
            grid-template-areas: "store-tag store-price" "store-tag .";
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    row-gap: 0;
  }
  .mod-product-info-store__body .shop-value {
    margin-bottom: 0;
    font-size: 1.6rem;
  }
  .mod-product-info-store__body .price {
    margin-bottom: 0;
  }
  .mod-product-info-store__body .price .unit {
    font-size: 1.6rem;
  }
  .mod-product-info-store__body .price .num {
    font-size: 2.6rem;
  }
  .mod-product-info-store__body .price .note {
    font-size: 1.6rem;
  }
  .mod-product-info-store__body .shop-value {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .mod-product-info-store__body .tag {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .mod-product-info-store__body:not(:has(.shop-value)) > .tag {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .mod-product-info-store__body .price {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .mod-product-info-store__body:not(:has(.shop-value)) > .price {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .mod-product-info-store__body .mod-btn {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
.mod-product-info-store__footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
  padding-top: 16px;
  border-top: 1px solid #dbdbdb;
}
.mod-product-info-store__footer .mod-btn {
  margin-bottom: 0;
  margin-left: auto;
}
.mod-product-info-store__footer .note {
  font-size: 1.4rem;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-store__footer {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 20px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-top: 20px;
  }
  .mod-product-info-store__footer .note {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-product-info-store__footer {
    gap: 60px;
  }
}
.mod-product-info-store .tag {
  margin-top: 0;
  margin-bottom: 16px;
}
.mod-product-info-store .tag .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -5px;
  margin-left: -5px;
}
.mod-product-info-store .tag .list li {
  padding-top: 5px;
  padding-left: 5px;
}
.mod-product-info-store .tag .list li > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 27px;
  padding: 5px;
  border: 1px solid #dbdbdb;
  background: #fff;
  color: #222;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-store .tag {
    margin-bottom: 0;
  }
  .mod-product-info-store .tag .list {
    margin-top: -10px;
    margin-left: -10px;
  }
  .mod-product-info-store .tag .list li {
    padding-top: 10px;
    padding-left: 10px;
  }
  .mod-product-info-store .tag .list li > span {
    min-height: 30px;
    font-size: 1.2rem;
  }
}

.mod-lyt-product-info-list {
  margin: 0 0 40px;
}
.mod-lyt-product-info-list__container {
  display: -ms-grid;
  display: grid;
  gap: 20px;
}
@media screen and (min-width: 768px), print {
  .mod-lyt-product-info-list__container {
    grid-template-columns: repeat(auto-fit, minmax(520px, 1fr));
  }
}

.mod-product-info-card {
  padding: 20px;
  border-radius: 6px;
  background: #f4f4f4;
}
.mod-product-info-card__header {
  padding-bottom: 10px;
}
.mod-product-info-card__header .hdg {
  font-size: 1.6rem;
  font-weight: 700;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-card__header {
    padding-bottom: 0;
  }
  .mod-product-info-card__header .hdg {
    font-size: 2rem;
  }
}
.mod-product-info-card__picture {
  width: 100%;
  margin: 0 auto auto 0;
  border: 1px solid #dbdbdb;
}
.mod-product-info-card__picture img {
  width: 100%;
  height: auto;
}
.mod-product-info-card__tag {
  padding-bottom: 10px;
}
.mod-product-info-card__tag .tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -8px;
  margin-left: -8px;
}
.mod-product-info-card__tag .tag {
  margin-top: 8px;
  margin-left: 8px;
}
.mod-product-info-card__tag .tag span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 28px;
  padding: 4px 10px;
  border: 1px solid #c00;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-card__tag {
    padding-top: 15px;
    padding-bottom: 0;
  }
}
.mod-product-info-card__actions {
  padding-top: 20px;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-card__actions {
    padding-top: 10px;
  }
}
.mod-product-info-card__actions .mod-btn {
  margin-top: 0;
  margin-bottom: 0;
}
.mod-product-info-card .mod-btn.btn--thin > .inner {
  margin-top: -10px;
  margin-left: -10px;
}
.mod-product-info-card .mod-btn.btn--thin .btn a {
  min-height: 44px;
  margin: 10px 0 0 10px;
  padding: 4px;
}
.mod-product-info-card__content {
  display: -ms-grid;
  display: grid;
  gap: 0;
}
.mod-product-info-card__tag {
  -ms-grid-row: 2;
  -ms-grid-row-span: 2;
  grid-row: 2/4;
}
@media screen and (min-width: 768px), print {
  .mod-product-info-card__content {
    -ms-grid-columns: 43.5% auto;
    grid-template-columns: 43.5% auto;
    -ms-grid-rows: -webkit-min-content auto -webkit-max-content;
    -ms-grid-rows: min-content auto max-content;
    grid-template-rows: -webkit-min-content auto -webkit-max-content;
    grid-template-rows: min-content auto max-content;
    height: 100%;
    gap: 15px;
  }
  .mod-product-info-card__header {
    grid-column: 1/-1;
    -ms-grid-row: 1;
    grid-row: 1/1;
  }
  .mod-product-info-card__picture {
    -ms-grid-column: 1;
    grid-column: 1/1;
    grid-row: 2/-1;
    width: auto;
  }
  .mod-product-info-card__tag {
    -ms-grid-column: 2;
    grid-column: 2/2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
  }
  .mod-product-info-card__actions {
    -ms-grid-column: 2;
    grid-column: 2/2;
    -ms-grid-row: 3;
    grid-row: 3/3;
    -ms-grid-row-align: end;
        align-self: end;
  }
}

.mod-lyt-product-store-card {
  margin: 0 0 40px;
}
.mod-lyt-product-store-card__container {
  display: -ms-grid;
  display: grid;
  gap: 20px;
}
@media screen and (min-width: 768px), print {
  .mod-lyt-product-store-card__container {
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  }
}
@media screen and (min-width: 992px), print {
  .mod-lyt-product-store-card__container {
    grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
  }
}

.mod-product-store-card {
  padding: 20px;
  border-radius: 6px;
  background: #f4f4f4;
}
.mod-product-store-card__header {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 2px solid #dbdbdb;
}
.mod-product-store-card__header .hdg {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
}
@media screen and (min-width: 768px), print {
  .mod-product-store-card__header .hdg {
    font-size: 2.4rem;
  }
}
.mod-product-store-card__color {
  margin-bottom: 14px;
}
.mod-product-store-card__color .color-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.mod-product-store-card__color .color {
  display: block;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  border: 1px solid #dbdbdb;
  background: #f4f4f4;
}
.mod-product-store-card__picture {
  width: 100%;
  height: auto;
  margin-bottom: 20px;
  border: 1px solid #dbdbdb;
}
.mod-product-store-card__picture img {
  aspect-ratio: 720/450;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
.mod-product-store-card__price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 15px;
}
.mod-product-store-card__price .shop-value {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  margin-right: 24px;
  margin-bottom: 6px;
  font-size: 1.2rem;
}
.mod-product-store-card__price .price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.mod-product-store-card__price .price .unit {
  margin-left: 4px;
  font-size: 1.4rem;
}
.mod-product-store-card__price .price .num {
  margin-bottom: -0.2em;
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
}
.mod-product-store-card__price .price .note {
  font-size: 1.4rem;
}
@media screen and (min-width: 768px), print {
  .mod-product-store-card__price {
    margin-bottom: 20px;
  }
  .mod-product-store-card__price .shop-value {
    font-size: 1.4rem;
  }
  .mod-product-store-card__price .price .num {
    font-size: 2.6rem;
  }
  .mod-product-store-card__price .price .unit {
    font-size: 1.6rem;
  }
  .mod-product-store-card__price .price .note {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1200px), print {
  .mod-product-store-card__price {
    margin-bottom: 20px;
  }
  .mod-product-store-card__price .price {
    margin-top: -0.3em;
  }
  .mod-product-store-card__price .shop-value {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    margin-bottom: 0;
  }
}
.mod-product-store-card__tag {
  margin-bottom: 20px;
}
.mod-product-store-card__tag .tag .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -5px;
  margin-left: -5px;
}
.mod-product-store-card__tag .tag .list li {
  padding-top: 5px;
  padding-left: 5px;
}
.mod-product-store-card__tag .tag .list li > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 27px;
  padding: 5px;
  border: 1px solid #dbdbdb;
  background: #fff;
  color: #222;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
}
@media screen and (min-width: 768px), print {
  .mod-product-store-card__tag .tag .list {
    margin-top: -10px;
    margin-left: -10px;
  }
  .mod-product-store-card__tag .tag .list li {
    padding-top: 10px;
    padding-left: 10px;
  }
  .mod-product-store-card__tag .tag .list li > span {
    min-height: 30px;
    font-size: 1.2rem;
  }
}
.mod-product-store-card__actions .mod-btn {
  margin-top: 0;
  margin-bottom: 0;
}
.mod-product-store-card .mod-btn.btn--thin > .inner {
  margin-top: -10px;
  margin-left: -10px;
}
.mod-product-store-card .mod-btn.btn--thin .btn a {
  min-height: 44px;
  margin: 10px 0 0 10px;
  padding: 4px;
}
.mod-product-store-card__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  height: 100%;
}
.mod-product-store-card__header {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.mod-product-store-card__color {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.mod-product-store-card__picture {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.mod-product-store-card__tag {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.mod-product-store-card__actions {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 100%;
  margin-top: auto;
}

/*! = Modules/GeneralSearch */
.c-accordion .accordion-container > .mod-general-filter {
  margin-bottom: 0;
}

.mod-general-search {
  margin: 0 auto 20px;
}
.mod-general-search + .result {
  margin-bottom: 20px;
}
.mod-general-search .c-accordion .accordion-list:first-child {
  margin-top: 0;
}
.mod-general-search .c-accordion .accordion-list:last-child {
  margin-bottom: 0;
}
.mod-general-search__content {
  padding: 30px 15px;
}
.mod-general-search__actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px;
  background: #f4f4f4;
}
.mod-general-search__actions.of-horizontal {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
}
.mod-general-search__actions.of-horizontal .mod-btn {
  margin-left: auto;
}
.mod-general-search__actions .mod-general-search-result {
  margin-top: 0;
}
.mod-general-search__actions .mod-btn[data-col] {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  min-width: 200px;
  white-space: nowrap;
}
@media screen and (min-width: 768px), print {
  .mod-general-search__content {
    padding: 30px 20px;
  }
  .mod-general-search__actions {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .mod-general-search__actions .mod-general-search-result {
    -webkit-box-align: self-start;
        -ms-flex-align: self-start;
            align-items: self-start;
    margin-right: auto;
  }
  .mod-general-search__actions .mod-btn {
    margin-left: auto;
  }
}

.mod-general-search-form__item {
  padding: 30px 0 0;
}
.mod-general-search-form__item:first-child {
  padding-top: 0;
}
.mod-general-search-form__label {
  display: block;
  margin-bottom: 16px;
  padding-bottom: 10px;
  border-bottom: 1px solid #dbdbdb;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.56;
}
.mod-general-search-form__sub-label {
  display: block;
  margin-bottom: 16px;
}
.mod-general-search-form dd ~ dd {
  margin-top: 20px;
}
.mod-general-search-form dd > :last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 768px), print {
  .mod-general-search-form__label {
    font-size: 2rem;
    line-height: 1.4;
  }
  .mod-general-search-form__sub-label {
    margin-bottom: 12px;
  }
  .mod-general-search-form dd ~ dd {
    margin-top: 16px;
  }
}

.mod-general-search-result {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto;
  margin: 0 auto 40px;
}
.mod-general-search-result .result {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 26px;
}
.mod-general-search-result .value {
  margin-left: 0;
  color: #c00;
  font-family: "Roboto", sans-serif;
  font-size: 2.8rem;
  font-weight: 700;
}
.mod-general-search-result .unit {
  margin-left: 0.4em;
}
.mod-general-search-result .output > :not(.mod-pnl-04, .mod-box-product) .tags,
.mod-general-search-result .output > .tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 930px;
  margin: 20px auto;
}
.mod-general-search-result .output > :not(.mod-pnl-04, .mod-box-product) .tag,
.mod-general-search-result .output > .tags .tag {
  padding: 6px 5px 7px;
  border: 1px solid #dbdbdb;
  color: #767676;
  font-size: 1.2rem;
}
@media screen and (min-width: 768px), print {
  .mod-general-search-result .value {
    margin-left: 1em;
  }
}

.mod-general-filter {
  margin: 0 auto 40px;
}
.mod-general-filter__content {
  padding: 0 0 20px;
}
.mod-general-filter__content > :last-child {
  margin-bottom: 0;
}
.mod-general-filter__result {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto;
  margin-top: 0;
}
.mod-general-filter__result .result {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 26px;
}
.mod-general-filter__result .value {
  margin-left: 0;
  color: #c00;
  font-family: "Roboto", sans-serif;
  font-size: 2.8rem;
  font-weight: 700;
}
.mod-general-filter__result .unit {
  margin-left: 0.4em;
}
.mod-general-filter__result .tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 930px;
  margin-top: 20px;
}
.mod-general-filter__result .tag {
  padding: 6px 5px 7px;
  border: 1px solid #dbdbdb;
  color: #767676;
  font-size: 1.2rem;
}
@media screen and (min-width: 768px), print {
  .mod-general-filter__result {
    -webkit-box-align: self-start;
        -ms-flex-align: self-start;
            align-items: self-start;
    margin-right: auto;
  }
  .mod-general-filter__result .value {
    margin-left: 1em;
  }
}
.mod-general-filter__actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px;
  border-radius: 6px;
  background: #f4f4f4;
  gap: 10px;
}
.mod-general-filter__actions.of-horizontal {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
}
.mod-general-filter__actions.of-horizontal .mod-btn {
  margin-left: auto;
}
.mod-general-filter__actions .mod-btn[data-col] {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  min-width: 200px;
  white-space: nowrap;
}
@media screen and (min-width: 768px), print {
  .mod-general-filter__content {
    padding-bottom: 30px;
  }
  .mod-general-filter__actions {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .mod-general-filter__actions .mod-btn {
    margin-left: auto;
  }
}

.mod-checkbox-tag {
  margin: 0 0 20px;
}
.mod-checkbox-tag legend {
  display: block;
}
.mod-checkbox-tag fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.mod-checkbox-tag input[type=checkbox] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  border: 0 !important;
  font-size: 1.8rem;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}
.mod-checkbox-tag__legend {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 20px;
  font-size: 1.8rem;
  font-weight: 700;
}
@media screen and (min-width: 768px), print {
  .mod-checkbox-tag__legend {
    font-size: 2rem;
  }
}
.mod-checkbox-tag__legend .required {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: -0.1em;
  margin-left: 12px;
}
.mod-checkbox-tag__legend .required > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 22px;
  padding: 3px 10px;
  border-radius: 48px;
  background: #c00;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}
.mod-checkbox-tag__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  gap: 10px;
  min-width: -webkit-min-content;
  min-width: -moz-min-content;
  min-width: min-content;
  max-width: 100%;
}
.mod-checkbox-tag__items label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  -ms-flex-item-align: start;
      align-self: flex-start;
  margin: 0;
  line-height: 1.5;
  cursor: pointer;
}
.mod-checkbox-tag__items > label + label,
.mod-checkbox-tag__items > li + li {
  margin-top: 0;
}
.mod-checkbox-tag__items .tag {
  padding: 8px 20px;
  background-color: #fff;
  color: #767676;
}
.mod-checkbox-tag__items .tag {
  padding: 4px 20px;
  border: 2px solid #dbdbdb;
  border-radius: 48px;
  background-color: #fff;
  color: #767676;
  font-size: 1.4rem;
  line-height: 24px;
}
@media (hover: hover) and (pointer: fine) {
  .mod-checkbox-tag__items .tag:hover {
    background-color: #f4f4f4;
  }
}
.mod-checkbox-tag__items input[type=checkbox]:focus-visible + .tag {
  outline: 2px solid #222;
  outline-offset: 2px;
}
.mod-checkbox-tag__items input[type=checkbox]:checked + .tag {
  border-color: #c00;
  background-color: #c00;
  color: #fff;
  font-weight: 700;
}

/*! = Modules/JavaScript - Gallery */
.mod-tab-galley {
  margin: 40px 0;
}

.mod-tab-galley .gallery-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 800px;
  margin: 0 auto;
}

.mod-tab-galley .gallery-thumbnail {
  overflow: hidden;
}

.mod-tab-galley .gallery-thumbnail > .list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
  -ms-flex-wrap: initial;
      flex-wrap: initial;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  margin-bottom: 0;
  margin-left: 0;
  gap: 10px;
}

.mod-tab-galley .gallery-thumbnail > .list > .thumbnail {
  position: relative;
  -ms-flex-preferred-size: initial;
      flex-basis: initial;
  min-width: initial;
  max-width: initial;
  margin-bottom: 0;
  padding-left: 0;
  overflow: hidden;
  border-radius: 6px;
  text-align: left;
  cursor: pointer;
}

.mod-tab-galley .gallery-thumbnail > .list > .thumbnail:not([role=tab]) {
  display: block;
  margin-bottom: 0;
  padding: 0;
  -webkit-transition: none;
  transition: none;
  border: none;
  border-radius: 6px;
  background-color: transparent;
  line-height: initial;
}

.mod-tab-galley .gallery-thumbnail > .list > .thumbnail span::before,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail a::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  -webkit-transition: border-color 0.3s, opacity 0.3s ease-out;
  transition: border-color 0.3s, opacity 0.3s ease-out;
  border: 1px solid #dedede;
  border-radius: inherit;
  opacity: 1;
  background: transparent;
}

.mod-tab-galley .gallery-thumbnail > .list > .thumbnail span,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail > a {
  display: block;
  position: relative;
  width: 100%;
  min-width: initial;
  border-radius: 6px;
}

.mod-tab-galley .gallery-thumbnail > .list > .thumbnail span::after,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail > a::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
  opacity: 0;
  background-color: rgba(0, 0, 0, 0.2);
}

.mod-tab-galley .gallery-overview .item img,
.mod-tab-galley .gallery-thumbnail .thumbnail img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  border-radius: 6px;
  vertical-align: top;
}

.mod-tab-galley .gallery-overview > .item {
  position: relative;
  border-radius: 6px;
}

.mod-tab-galley .gallery-overview > .item::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
}

.mod-tab-galley .gallery-thumbnail > .list > .thumbnail span:active::before,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail span:focus::before,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail span:hover::before,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail > a:active::before,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail > a:focus::before,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail > a:hover::before {
  opacity: 1;
}

.mod-tab-galley .gallery-thumbnail > .list > .thumbnail span:active::after,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail span:focus::after,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail span:hover::after,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail > a:active::after,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail > a:focus::after,
.mod-tab-galley .gallery-thumbnail > .list > .thumbnail > a:hover::after {
  opacity: 1;
}

@media screen and (min-width: 768px), print {
  .mod-tab-galley .gallery-thumbnail {
    padding: 0;
  }
  .mod-tab-galley .gallery-thumbnail > .list {
    grid-template-columns: repeat(auto-fill, minmax(152px, 1fr));
    margin-left: 0;
  }
  .mod-tab-galley[data-small-thumbnail] .gallery-thumbnail > .list {
    grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
  }
  .mod-tab-galley .gallery-thumbnail > .list > .thumbnail {
    -ms-flex-preferred-size: initial;
        flex-basis: initial;
    min-width: initial;
    max-width: initial;
    padding-left: 0;
  }
  .mod-tab-galley .gallery-thumbnail > .list > .thumbnail span,
  .mod-tab-galley .gallery-thumbnail > .list > .thumbnail > a {
    min-width: initial;
  }
  .mod-tab-galley .gallery-overview {
    min-height: 0.1%;
    margin-top: 20px;
  }
  .mod-tab-galley .gallery-overview > .item {
    margin-bottom: 10px;
  }
  .mod-tab-galley .gallery-overview .item,
  .mod-tab-galley .gallery-thumbnail .thumbnail {
    text-align: center;
  }
  .mod-tab-galley .gallery-overview .item img,
  .mod-tab-galley .gallery-thumbnail .thumbnail img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    vertical-align: top;
  }
}
.mod-tab-gallery {
  margin: 0 0 40px;
}

.mod-tab-gallery .gallery-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 800px;
  margin: 0 auto;
}

.mod-tab-gallery .gallery-thumbnail {
  overflow: hidden;
}

.mod-tab-gallery .gallery-thumbnail > .list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
  -ms-flex-wrap: initial;
      flex-wrap: initial;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  margin-bottom: 0;
  margin-left: 0;
  gap: 10px;
}

.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail {
  position: relative;
  -ms-flex-preferred-size: initial;
      flex-basis: initial;
  min-width: initial;
  max-width: initial;
  margin-bottom: 0;
  padding-left: 0;
  overflow: hidden;
  border-radius: 6px;
  text-align: left;
  cursor: pointer;
}

.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail:not([role=tab]) {
  display: block;
  margin-bottom: 0;
  padding: 0;
  -webkit-transition: none;
  transition: none;
  border: none;
  border-radius: 6px;
  background-color: transparent;
  line-height: initial;
}

.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail span::before,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail a::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  -webkit-transition: border-color 0.3s, opacity 0.3s ease-out;
  transition: border-color 0.3s, opacity 0.3s ease-out;
  border: 1px solid #dedede;
  border-radius: inherit;
  opacity: 1;
  background: transparent;
}

.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail span,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail > a {
  display: block;
  position: relative;
  width: 100%;
  min-width: initial;
  border-radius: 6px;
}

.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail span::after,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail > a::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
  opacity: 0;
  background-color: rgba(0, 0, 0, 0.2);
}

.mod-tab-gallery .gallery-overview .item img,
.mod-tab-gallery .gallery-thumbnail .thumbnail img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  border-radius: 6px;
  vertical-align: top;
}

.mod-tab-gallery .gallery-overview > .item {
  position: relative;
  border-radius: 6px;
}

.mod-tab-gallery .gallery-overview > .item::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
}

.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail span:active::before,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail span:focus::before,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail span:hover::before,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail > a:active::before,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail > a:focus::before,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail > a:hover::before {
  opacity: 1;
}

.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail span:active::after,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail span:focus::after,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail span:hover::after,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail > a:active::after,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail > a:focus::after,
.mod-tab-gallery .gallery-thumbnail > .list > .thumbnail > a:hover::after {
  opacity: 1;
}

@media screen and (min-width: 768px), print {
  .mod-tab-gallery .gallery-thumbnail {
    padding: 0;
  }
  .mod-tab-gallery .gallery-thumbnail > .list {
    grid-template-columns: repeat(auto-fill, minmax(152px, 1fr));
    margin-left: 0;
  }
  .mod-tab-gallery[data-small-thumbnail] .gallery-thumbnail > .list {
    grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
  }
  .mod-tab-gallery .gallery-thumbnail > .list > .thumbnail {
    -ms-flex-preferred-size: initial;
        flex-basis: initial;
    min-width: initial;
    max-width: initial;
    padding-left: 0;
  }
  .mod-tab-gallery .gallery-thumbnail > .list > .thumbnail span,
  .mod-tab-gallery .gallery-thumbnail > .list > .thumbnail > a {
    min-width: initial;
  }
  .mod-tab-gallery .gallery-overview {
    min-height: 0.1%;
    margin-top: 20px;
  }
  .mod-tab-gallery .gallery-overview > .item {
    margin-bottom: 10px;
  }
  .mod-tab-gallery .gallery-overview .item,
  .mod-tab-gallery .gallery-thumbnail .thumbnail {
    text-align: center;
  }
  .mod-tab-gallery .gallery-overview .item img,
  .mod-tab-gallery .gallery-thumbnail .thumbnail img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    vertical-align: top;
  }
}
/*! = Modules/JavaScript - Carousel */
:root {
  --swiper-theme-color: #c00;
  --swiper-pagination-bullet-horizontal-gap: 10px;
  --swiper-pagination-bullet-inactive-color: #959595;
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-bullet-size: 12px;
}

.mod-carousel-ref {
  --mod-carousel-ref-offset-side-padding: 12%;
  --mod-carousel-ref-offset-md-side-padding: 12%;
  position: relative;
  overflow: visible;
}
.mod-carousel-ref.of-dynamic {
  padding: 0 20px;
  overflow: hidden;
}
@media screen and (min-width: 768px), print {
  .mod-carousel-ref.of-dynamic {
    padding: 0 20px;
  }
}
@media screen and (min-width: 992px), print {
  .mod-carousel-ref.of-dynamic {
    padding: 0 40px;
  }
}
.mod-carousel-ref.of-dynamic .mod-carousel-ref__inner {
  max-width: 1120px;
  margin: 0 auto;
}
.mod-carousel-ref [data-carousel-slides] {
  width: 100%;
  margin: 0 auto;
  padding-bottom: 40px;
  overflow: visible;
}
.mod-carousel-ref [data-carousel-slides] .list > li {
  margin-top: 0;
  padding-top: 0;
}
.mod-carousel-ref [data-carousel-slides]:not(.swiper-initialized) {
  padding-bottom: 16px !important;
  overflow-x: scroll !important;
}
.mod-carousel-ref [data-carousel-slides] .list {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  margin: 0;
}
.mod-carousel-ref.of-dynamic [data-carousel-slides] {
  margin-left: -10px;
  padding-right: 0;
}
.mod-carousel-ref.of-dynamic [data-carousel-slides] .list > li {
  padding-left: 0;
}
.mod-carousel-ref.of-dynamic [data-carousel-slides]:not(:last-child) {
  margin-right: 10px;
}
@media screen and (min-width: 768px), print {
  .mod-carousel-ref.of-dynamic [data-carousel-slides] {
    margin-left: 0;
    padding-right: 0;
  }
  .mod-carousel-ref.of-dynamic [data-carousel-slides][data-dynamic-carousel=true] .list > li {
    padding-left: 0;
  }
  .mod-carousel-ref.of-dynamic [data-carousel-slides][data-dynamic-carousel=true] .list > li:not(:last-child) {
    margin-right: 10px;
  }
  .mod-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="2"][data-dynamic-carousel=true] .list > li {
    padding-left: 0;
  }
  .mod-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="2"][data-dynamic-carousel=true] .list > li:not(:last-child) {
    margin-right: 10px;
  }
}

.js-carousel-ref .swiper-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: initial;
      -ms-flex-align: initial;
          align-items: initial;
  -webkit-box-pack: initial;
      -ms-flex-pack: initial;
          justify-content: initial;
  width: 100%;
  height: 100%;
}
.js-carousel-ref .swiper-slide {
  height: auto;
  margin-top: 0;
}
.js-carousel-ref .swiper-initialized .swiper-slide {
  -webkit-box-flex: 0 !important;
      -ms-flex: 0 0 auto !important;
          flex: 0 0 auto !important;
  width: 100%;
  min-width: auto !important;
  max-width: none !important;
}
.js-carousel-ref .swiper-initialized .swiper-slide:focus-visible {
  outline-offset: -2px;
}
@media screen and (min-width: 1200px), print {
  .js-carousel-ref .swiper-initialized .swiper-slide {
    -webkit-transition: opacity 0.4s ease;
    transition: opacity 0.4s ease;
    opacity: 1;
  }
  .js-carousel-ref .swiper-initialized .swiper-slide:not(.swiper-slide-visible) {
    opacity: 1;
  }
}
.js-carousel-ref .swiper-slide-invisible-blank {
  visibility: visible;
  padding-top: 0;
}
.js-carousel-ref .swiper-slide-invisible-blank::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}
.js-carousel-ref .swiper-controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  bottom: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  max-width: 1160px;
  height: 40px;
  margin-top: 30px;
}
@media screen and (min-width: 768px), print {
  .js-carousel-ref .swiper-controls {
    width: 100%;
  }
}
.js-carousel-ref .swiper-controls[data-carousel-controls-lock] {
  display: none;
}
.js-carousel-ref .swiper-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: static;
  right: 0;
  left: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: auto;
  height: 40px;
  padding: 0 30px;
}
@media screen and (min-width: 768px), print {
  .js-carousel-ref .swiper-pagination {
    padding: 0 40px;
  }
}
.js-carousel-ref .swiper-pagination > [class^=swiper-pagination] {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.js-carousel-ref[data-autoplay] .swiper-pagination {
  padding-right: 20px;
}
@media screen and (min-width: 768px), print {
  .js-carousel-ref[data-autoplay] .swiper-pagination {
    padding-right: 15px;
  }
}
.js-carousel-ref .swiper-pagination-fraction {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 8px 0;
  font-size: 2rem;
  line-height: 1;
}
.js-carousel-ref .swiper-pagination-fraction .swiper-pagination-current {
  min-width: 2em;
  margin: 0;
  font-size: 2rem;
}
.js-carousel-ref .swiper-pagination-fraction .swiper-pagination-total {
  min-width: 2em;
  margin: 0;
  font-size: 2rem;
}
.js-carousel-ref .swiper-pagination-bullets .swiper-pagination-bullet {
  border: 2px solid var(--swiper-pagination-bullet-inactive-color);
  background-color: transparent;
}
.js-carousel-ref .swiper-pagination-bullets .swiper-pagination-bullet-active {
  border-color: var(--swiper-theme-color);
  background-color: var(--swiper-theme-color);
}
.js-carousel-ref [data-carousel-prev],
.js-carousel-ref [data-carousel-next] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 36px;
  height: 36px;
  margin: 0;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
  border: none;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
}
@media (hover: hover) and (pointer: fine) {
  .js-carousel-ref [data-carousel-prev]:hover,
  .js-carousel-ref [data-carousel-next]:hover {
    background-color: #f4f4f4;
  }
}
@media screen and (min-width: 768px), print {
  .js-carousel-ref [data-carousel-prev],
  .js-carousel-ref [data-carousel-next] {
    width: 40px;
    height: 40px;
  }
}
.js-carousel-ref [data-carousel-prev]::after,
.js-carousel-ref [data-carousel-next]::after {
  content: none;
}
.js-carousel-ref [data-carousel-prev]::before,
.js-carousel-ref [data-carousel-next]::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: no-repeat center;
  background-size: 36px;
}
@media screen and (min-width: 768px), print {
  .js-carousel-ref [data-carousel-prev]::before,
  .js-carousel-ref [data-carousel-next]::before {
    background-size: 40px;
  }
}
.js-carousel-ref [data-carousel-next]::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgNDAgNDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgdHJhbnNmb3JtPSJtYXRyaXgoLTEgMCAwIC0xIDQwIDQwKSI+PHBhdGggZD0ibTQwIDZjMC0zLjMxMS0yLjY4OS02LTYtNmgtMjhjLTMuMzExIDAtNiAyLjY4OS02IDZ2MjhjMCAzLjMxMSAyLjY4OSA2IDYgNmgyOGMzLjMxMSAwIDYtMi42ODkgNi02eiIvPjxnIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMCAxMS4zMTQuMDEtMTEuMzE0IiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyAxNC45OTYgMTkuOTkyKSIvPjxwYXRoIGQ9Im0wIDAgLjAxIDExLjMxMyIgdHJhbnNmb3JtPSJtYXRyaXgoLjcwNzEwNyAuNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgMjIuOTk2IDEyLjAwOCkiLz48L2c+PC9nPjwvc3ZnPg==");
}
.js-carousel-ref [data-carousel-prev]::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgNDAgNDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTQwIDZjMC0zLjMxMS0yLjY4OS02LTYtNmgtMjhjLTMuMzExIDAtNiAyLjY4OS02IDZ2MjhjMCAzLjMxMSAyLjY4OSA2IDYgNmgyOGMzLjMxMSAwIDYtMi42ODkgNi02eiIvPjxnIHN0cm9rZT0iI2MwMCIgc3Ryb2tlLXdpZHRoPSIyIj48cGF0aCBkPSJtMCAxMS4zMTQuMDEtMTEuMzE0IiB0cmFuc2Zvcm09Im1hdHJpeCguNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgLjcwNzEwNyAxNC45OTYgMTkuOTkyKSIvPjxwYXRoIGQ9Im0wIDAgLjAxIDExLjMxMyIgdHJhbnNmb3JtPSJtYXRyaXgoLjcwNzEwNyAuNzA3MTA3IC0uNzA3MTA3IC43MDcxMDcgMjIuOTk2IDEyLjAwOCkiLz48L2c+PC9nPjwvc3ZnPg==");
}

.js-carousel-ref:not(.of-dynamic) [data-carousel-slides] {
  margin-left: 0;
  padding-right: var(--mod-carousel-ref-offset-side-padding, 12%);
  overflow: hidden;
}
.js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="2"], .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="3"], .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="4"] {
  margin-left: 0;
}
.js-carousel-ref:not(.of-dynamic) [data-carousel-slides] .swiper-slide, .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="2"] .swiper-slide, .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="3"] .swiper-slide, .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="4"] .swiper-slide {
  padding-left: 0;
}
.js-carousel-ref:not(.of-dynamic) [data-carousel-slides] .swiper-slide:not(:last-child), .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="2"] .swiper-slide:not(:last-child), .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="3"] .swiper-slide:not(:last-child), .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="4"] .swiper-slide:not(:last-child) {
  margin-right: 20px;
}
.js-carousel-ref:not(.of-dynamic) [data-carousel-slides] .swiper-controls {
  width: calc(100% + var(--mod-carousel-ref-offset-side-padding, 12%));
}
@media screen and (min-width: 768px), print {
  .js-carousel-ref:not(.of-dynamic) [data-carousel-slides], .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="2"], .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="3"], .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="4"] {
    margin-left: 0;
    padding-right: var(--mod-carousel-ref-offset-md-side-padding, 12%);
  }
  .js-carousel-ref:not(.of-dynamic) [data-carousel-slides] .swiper-slide, .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="2"] .swiper-slide, .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="3"] .swiper-slide, .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="4"] .swiper-slide {
    padding-left: 0;
  }
  .js-carousel-ref:not(.of-dynamic) [data-carousel-slides] .swiper-slide:not(:last-child), .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="2"] .swiper-slide:not(:last-child), .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="3"] .swiper-slide:not(:last-child), .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="4"] .swiper-slide:not(:last-child) {
    margin-right: 20px;
  }
  .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="2"] .swiper-slide {
    width: calc((100% - 20px * 1) / 2);
  }
  .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="3"] .swiper-slide {
    width: calc((100% - 20px * 2) / 3);
  }
  .js-carousel-ref:not(.of-dynamic) [data-carousel-slides][data-col-wide="4"] .swiper-slide {
    width: calc((100% - 20px * 3) / 4);
  }
  .js-carousel-ref:not(.of-dynamic) [data-carousel-slides] .swiper-controls {
    width: calc(100% + var(--mod-carousel-ref-offset-md-side-padding, 12%));
  }
}

.js-carousel-ref.of-dynamic [data-carousel-slides] {
  margin-left: 0;
}
.js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="2"], .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="3"], .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="4"] {
  margin-left: 0;
}
.js-carousel-ref.of-dynamic [data-carousel-slides] .swiper-slide, .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="2"] .swiper-slide, .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="3"] .swiper-slide, .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="4"] .swiper-slide {
  padding-left: 0;
}
.js-carousel-ref.of-dynamic [data-carousel-slides] .swiper-slide:not(:last-child), .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="2"] .swiper-slide:not(:last-child), .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="3"] .swiper-slide:not(:last-child), .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="4"] .swiper-slide:not(:last-child) {
  margin-right: 10px;
}
@media screen and (min-width: 768px), print {
  .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="2"] .swiper-slide {
    width: calc((100% - 10px * 1) / 2);
  }
  .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="3"] .swiper-slide {
    width: calc((100% - 10px * 2) / 3);
  }
  .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="4"] .swiper-slide {
    width: calc((100% - 10px * 3) / 4);
  }
}
@media screen and (min-width: 992px), print {
  .js-carousel-ref.of-dynamic [data-carousel-slides] .swiper-slide:not(:last-child), .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="2"] .swiper-slide:not(:last-child), .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="3"] .swiper-slide:not(:last-child), .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="4"] .swiper-slide:not(:last-child) {
    margin-right: 20px;
  }
  .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="2"] .swiper-slide {
    width: calc((100% - 20px * 1) / 2);
  }
  .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="3"] .swiper-slide {
    width: calc((100% - 20px * 2) / 3);
  }
  .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="4"] .swiper-slide {
    width: calc((100% - 20px * 3) / 4);
  }
}
@media screen and (min-width: 1200px), print {
  .js-carousel-ref.of-dynamic [data-carousel-slides] .swiper-slide:not(:last-child), .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="2"] .swiper-slide:not(:last-child), .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="3"] .swiper-slide:not(:last-child), .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="4"] .swiper-slide:not(:last-child) {
    margin-right: 26px;
  }
  .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="2"] .swiper-slide {
    width: calc((100% - 26px * 1) / 2);
  }
  .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="3"] .swiper-slide {
    width: calc((100% - 26px * 2) / 3);
  }
  .js-carousel-ref.of-dynamic [data-carousel-slides][data-col-wide="4"] .swiper-slide {
    width: calc((100% - 26px * 3) / 4);
  }
}

.progress-circle {
  display: -ms-grid;
  display: grid;
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 40px;
  height: 40px;
  margin: 0 30px 0 0;
  -webkit-transform: scale(0.9);
          transform: scale(0.9);
  -webkit-transform-origin: center;
          transform-origin: center;
  border-radius: 60px;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  place-items: center;
}
@media screen and (min-width: 768px), print {
  .progress-circle {
    width: 40px;
    height: 40px;
    margin: 0 45px 0 0;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.swiper-pagination-lock ~ .progress-circle {
  display: none;
}
.progress-circle__svg-circle {
  display: block;
  position: relative;
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: 1/1;
  width: inherit;
  height: inherit;
  margin: auto;
  overflow: visible;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  inset: 0;
}
.progress-circle__circle-base {
  fill: #dbdbdb;
}
.progress-circle__progress {
  position: relative;
  stroke-width: 50;
  stroke-dasharray: 0, 157;
  fill: #dbdbdb;
}
.progress-circle .a-progress-circle {
  stroke: #c00;
}
@-webkit-keyframes a-progress-circle {
  50%, 100% {
    stroke-dasharray: 157, 157, 0, 0;
  }
}
@keyframes a-progress-circle {
  50%, 100% {
    stroke-dasharray: 157, 157, 0, 0;
  }
}
.progress-circle__play, .progress-circle__pause {
  position: relative;
  z-index: -1;
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: 1/1;
  width: 36px;
  height: 36px;
  margin: auto;
  border-radius: 60px;
  background: transparent center no-repeat;
  background-size: contain;
}
.progress-circle__play:focus-visible, .progress-circle__pause:focus-visible {
  outline-offset: 4px;
}
.progress-circle__play {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCA0MCA0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsLXJ1bGU9Im5vbnplcm8iPjxwYXRoIGQ9Im0yMCAwYzEwLjk3MiAwIDIwIDkuMDI4IDIwIDIwcy05LjAyOCAyMC0yMCAyMC0yMC05LjAyOC0yMC0yMCA5LjAyOC0yMCAyMC0yMHoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJtNi4xMDYgMS43ODljLjE2OS0uMzM4LjUxNi0uNTUzLjg5NS0uNTUzLjM3OCAwIC43MjUuMjE1Ljg5NC41NTNsNS4zODIgMTAuNzY0Yy4wNjkuMTM5LjEwNS4yOTIuMTA1LjQ0NyAwIC41NDktLjQ1MSAxLTEgMWgtMTAuNzY0Yy0uNTQ4IDAtLjk5OS0uNDUyLS45OTktMSAwLS4xNTUuMDM2LS4zMDguMTA1LS40NDd6IiBmaWxsPSIjYzAwIiB0cmFuc2Zvcm09Im1hdHJpeCgwIDEgLTEgMCAyOSAxMykiLz48L2c+PC9zdmc+");
}
.progress-circle__pause {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCA0MCA0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtNDAgMjBjMC0xMS4wMzgtOC45NjItMjAtMjAtMjBzLTIwIDguOTYyLTIwIDIwIDguOTYyIDIwIDIwIDIwIDIwLTguOTYyIDIwLTIweiIgZmlsbD0iI2ZmZiIvPjxnIGZpbGw9IiNjMDAiPjxwYXRoIGQ9Im0xOCAxMy41YzAtLjgyOC0uNjcyLTEuNS0xLjUtMS41cy0xLjUuNjcyLTEuNSAxLjV2MTNjMCAuODI4LjY3MiAxLjUgMS41IDEuNXMxLjUtLjY3MiAxLjUtMS41eiIvPjxwYXRoIGQ9Im0yNSAxMy41YzAtLjgyOC0uNjcyLTEuNS0xLjUtMS41cy0xLjUuNjcyLTEuNSAxLjV2MTNjMCAuODI4LjY3MiAxLjUgMS41IDEuNXMxLjUtLjY3MiAxLjUtMS41eiIvPjwvZz48L3N2Zz4=");
}
[data-carousel-progress=pause] .progress-circle__play {
  z-index: 1;
}
[data-carousel-progress=play] .progress-circle__pause {
  z-index: 1;
}

.mod-sticky-buttons {
  --mod-sticky-buttons-icon-size: 34px;
  --mod-sticky-buttons-icon-button-size: 54px;
  --mod-sticky-buttons-trigger-size: 48px;
  --mod-sticky-buttons-skin-default: #f4f4f4;
  --mod-sticky-buttons-skin-default-line: #dbdbdb;
  --mod-sticky-buttons-skin-default-hover: #e2e2e2;
  --mod-sticky-buttons-skin-default-text: #222;
  --mod-sticky-buttons-skin-primary: #df0000;
  --mod-sticky-buttons-skin-primary-line: #df0000;
  --mod-sticky-buttons-skin-primary-hover: #ea5c5c;
  --mod-sticky-buttons-skin-primary-text: #fff;
  display: none;
}
.mod-sticky-buttons[data-initialized=true] {
  display: block;
}
.mod-sticky-buttons__menu-toggle {
  display: block;
  position: absolute;
  z-index: 201;
  right: 0;
  bottom: calc(-1 * var(--mod-sticky-buttons-trigger-size) - 10px);
  width: var(--mod-sticky-buttons-trigger-size);
  height: var(--mod-sticky-buttons-trigger-size);
  -webkit-transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #df0000;
  border-radius: 6px 0 0 6px;
  background-color: #df0000;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  color: #fff;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.mod-sticky-buttons__menu-toggle::-webkit-details-marker {
  display: none;
}
@media screen and (min-width: 992px), print {
  .mod-sticky-buttons__menu-toggle {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border-width: 0;
    white-space: nowrap;
  }
}
.mod-sticky-buttons__details.is-opened .mod-sticky-buttons__menu-toggle {
  background-color: #fff;
  color: #df0000;
}
.mod-sticky-buttons__toggle-icon {
  display: block;
  position: absolute;
  width: var(--mod-sticky-buttons-icon-size);
  height: var(--mod-sticky-buttons-icon-size);
  margin: auto;
  color: inherit;
  inset: 0;
}
.mod-sticky-buttons__details:not(.is-opened) .mod-sticky-buttons__toggle-icon .menu-open {
  display: block;
}
.mod-sticky-buttons__details.is-opened .mod-sticky-buttons__toggle-icon .menu-open {
  display: none;
}
.mod-sticky-buttons__details:not(.is-opened) .mod-sticky-buttons__toggle-icon .menu-close {
  display: none;
}
.mod-sticky-buttons__details.is-opened .mod-sticky-buttons__toggle-icon .menu-close {
  display: block;
}
.mod-sticky-buttons__toggle-label {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  border: 0 !important;
  font-size: 1.8rem;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}
.mod-sticky-buttons__details {
  display: block;
  position: fixed;
  z-index: 201;
  right: 0;
  bottom: var(--mod-sticky-buttons-trigger-size);
  margin: auto;
  margin-bottom: calc(var(--mod-sticky-buttons-trigger-size) + 10px);
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  -webkit-animation: show-sticky-menu 0.2s forwards;
          animation: show-sticky-menu 0.2s forwards;
  opacity: 1;
}
@media screen and (min-width: 992px), print {
  .mod-sticky-buttons__details {
    bottom: 0;
    margin-bottom: 60px;
    -webkit-transform: translateX(calc(100% - var(--mod-sticky-buttons-icon-button-size)));
            transform: translateX(calc(100% - var(--mod-sticky-buttons-icon-button-size)));
  }
  .mod-sticky-buttons__details.is-expanded {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 992px) and (hover: hover) and (pointer: fine), print and (hover: hover) and (pointer: fine) {
  .mod-sticky-buttons__details:hover {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.mod-sticky-buttons.is-hidden .mod-sticky-buttons__details {
  -webkit-animation: hide-sticky-menu 0.2s forwards;
          animation: hide-sticky-menu 0.2s forwards;
}
@-webkit-keyframes show-sticky-menu {
  0% {
    visibility: hidden;
    right: calc(-1 * var(--mod-sticky-buttons-trigger-size));
    opacity: 0;
  }
  100% {
    visibility: visible;
    right: 0;
    opacity: 1;
  }
}
@keyframes show-sticky-menu {
  0% {
    visibility: hidden;
    right: calc(-1 * var(--mod-sticky-buttons-trigger-size));
    opacity: 0;
  }
  100% {
    visibility: visible;
    right: 0;
    opacity: 1;
  }
}
@-webkit-keyframes hide-sticky-menu {
  0% {
    visibility: visible;
    right: 0;
    opacity: 1;
  }
  100% {
    visibility: hidden;
    right: calc(-1 * var(--mod-sticky-buttons-trigger-size));
    opacity: 0;
  }
}
@keyframes hide-sticky-menu {
  0% {
    visibility: visible;
    right: 0;
    opacity: 1;
  }
  100% {
    visibility: hidden;
    right: calc(-1 * var(--mod-sticky-buttons-trigger-size));
    opacity: 0;
  }
}
.mod-sticky-buttons__list {
  display: block;
  position: relative;
}
.mod-sticky-buttons__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 2;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  min-width: 160px;
  max-width: 320px;
  height: auto;
  min-height: var(--mod-sticky-buttons-icon-button-size);
  margin-top: -1px;
  padding-right: 20px;
  padding-left: var(--mod-sticky-buttons-icon-button-size);
  -webkit-transition: background-color 0.2s, color 0.2s;
  transition: background-color 0.2s, color 0.2s;
  border: 1px solid var(--mod-sticky-buttons-skin-default-line);
  border-right: none;
  background-color: var(--mod-sticky-buttons-skin-default);
  color: var(--mod-sticky-buttons-skin-default-text);
  font-size: 1.4rem;
  font-weight: 500;
  text-decoration: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.mod-sticky-buttons__button:focus-visible {
  outline-offset: -3px;
}
@media (hover: hover) and (pointer: fine) {
  .mod-sticky-buttons__button:hover {
    background-color: var(--mod-sticky-buttons-skin-default-hover);
  }
}
.mod-sticky-buttons__button[data-skin=primary] {
  z-index: 1;
  border-color: var(--mod-sticky-buttons-skin-primary-line);
  background-color: var(--mod-sticky-buttons-skin-primary);
  color: var(--mod-sticky-buttons-skin-primary-text);
}
@media (hover: hover) and (pointer: fine) {
  .mod-sticky-buttons__button[data-skin=primary]:hover {
    background-color: var(--mod-sticky-buttons-skin-primary-hover);
  }
}
.mod-sticky-buttons__icon {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: var(--mod-sticky-buttons-icon-size);
  height: var(--mod-sticky-buttons-icon-size);
  margin: 10px;
  color: inherit;
}
.mod-sticky-buttons__icon svg {
  stroke: currentcolor;
  fill: currentcolor;
}
.mod-sticky-buttons__label {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mod-sticky-buttons__item {
  display: block;
  position: relative;
}
.mod-sticky-buttons__item:first-child .mod-sticky-buttons__button {
  border-radius: 6px 0 0;
}
.mod-sticky-buttons__item:last-child .mod-sticky-buttons__button {
  border-radius: 0 0 0 6px;
}
.mod-sticky-buttons__item:first-child:last-child .mod-sticky-buttons__button {
  border-radius: 6px 0 0 6px;
}

/*! = Modules/MyPageOnly */
.mypage-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.str-outer > .str-inner .mypage-container {
  margin-right: -20px;
  margin-left: -20px;
}
.str-outer > .str-inner .mypage-container.of-outline {
  margin-right: auto;
  margin-left: auto;
}
.mypage-container__inner {
  width: 100%;
  max-width: 1120px;
  margin: auto;
  padding: 40px 20px;
  background-color: #f4f4f4;
}
.mypage-container.of-outline {
  margin: 20px auto;
}
.mypage-container.of-outline .mypage-container__inner {
  max-width: 1120px;
  padding: 20px;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background-color: #fff;
}
@media screen and (min-width: 992px), print {
  .str-outer > .str-inner .mypage-container {
    margin-right: -40px;
    margin-left: -40px;
  }
  .mypage-container__inner {
    padding: 40px;
  }
  .mypage-container.of-outline {
    margin: 40px auto;
  }
  .mypage-container.of-outline .mypage-container__inner {
    padding: 40px;
  }
}

.mypage-container ~ .mypage-container {
  margin-top: 20px;
}
@media screen and (min-width: 992px), print {
  .mypage-container ~ .mypage-container {
    margin-top: 40px;
  }
}

.mod-mypage-desc-links .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  margin-top: -20px;
  margin-left: -20px;
}
.mod-mypage-desc-links .item {
  padding-top: 20px;
  padding-left: 20px;
}
.mod-mypage-desc-links .card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  padding: 20px 52px 20px 20px;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background-color: #fff;
  -webkit-box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.1);
  text-decoration: none;
}
.mod-mypage-desc-links .card[href]:focus, .mod-mypage-desc-links .card[href]:hover {
  background-color: #f4f4f4;
}
.mod-mypage-desc-links .card::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: 0;
  right: 20px;
  bottom: 0;
  width: 17px;
  height: 26.4px;
  margin: auto 0;
  border-radius: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  line-height: 1.65;
}
.mod-mypage-desc-links .card-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 4px;
  color: #222;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.65;
}
.mod-mypage-desc-links .card-content p {
  color: #222;
  font-size: 1.4rem;
  line-height: 1.65;
}
@media screen and (min-width: 768px), print {
  .mod-mypage-desc-links .card {
    padding: 30px 52px 30px 30px;
  }
  .mod-mypage-desc-links .card-title {
    margin-bottom: 8px;
    font-size: 1.8rem;
  }
  .mod-mypage-desc-links .card-content p {
    font-size: 1.6rem;
  }
}

.mod-mypage-user-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 20px;
  gap: 10px;
}
.mod-mypage-user-info__service {
  margin-top: 20px;
}
.mod-mypage-user-info__service-name {
  color: #222;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.46;
}
.mod-mypage-user-info__service-expired {
  margin-top: 8px;
  color: #222;
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 1.65;
}
.mod-mypage-user-info__code {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-left: auto;
  color: #222;
}
@media (hover: hover) and (pointer: fine) {
  .mod-mypage-user-info__code:hover .mod-mypage-user-info__code-image {
    opacity: 0.7;
  }
  .mod-mypage-user-info__code:hover .mod-mypage-user-info__code-text {
    text-decoration: underline;
  }
}
.mod-mypage-user-info__code-image {
  display: block;
  margin-left: auto;
  aspect-ratio: 75/75;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.mod-mypage-user-info__code-text {
  position: relative;
  margin-top: 10px;
  padding-left: 34px;
  color: #222;
  color: #222;
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 1.65;
}
.mod-mypage-user-info__code-text::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 17px;
  height: 26.4px;
  margin: auto 0;
  border-radius: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiB2aWV3Qm94PSIwIDAgMTcgMTciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgxN3YxN2gtMTd6Ii8+PGcgc3Ryb2tlPSIjYzAwIj48cGF0aCBkPSJtMTMuNSA4LjVoLTExIi8+PHBhdGggZD0ibTE0LjUgOC40OTktNS42OTUtNS42NSIvPjxwYXRoIGQ9Im0xNC41IDguNS01LjY5NSA1LjY1Ii8+PC9nPjwvZz48L3N2Zz4=") no-repeat center;
  background-size: contain;
  line-height: 1.65;
}
@media screen and (min-width: 768px), print {
  .mod-mypage-user-info {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 20px;
  }
  .mod-mypage-user-info__code-text {
    margin-top: 20px;
  }
}

.mod-mypage-card-list > .list {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fit, 1fr);
  grid-template-rows: repeat(auto-fit, 1fr);
  gap: 20px;
}
@media screen and (min-width: 768px), print {
  .mod-mypage-card-list > .list {
    grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
  }
}
.mod-mypage-card-list .card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 30px;
  border-radius: 6px;
  outline: 1px solid #dbdbdb;
  background-color: #fff;
}
.mod-mypage-card-list .card .expiration {
  margin-top: auto;
  margin-left: auto;
  padding-top: 20px;
  font-size: 1.4rem;
}
.mod-mypage-card-list .card .expiration strong {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #c00;
  font-weight: 400;
}
.mod-mypage-card-list .card .expiration strong::before {
  content: "";
  display: block;
  position: static;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 20px;
  height: 20px;
  margin-top: 0;
  margin-right: 8px;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border: 0;
  background: no-repeat center;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjIwIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSIxMCIgY3k9IjEwIiBmaWxsPSIjYzAwIiByPSIxMCIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjMiPjxwYXRoIGQ9Im0wIC43OTF2NC43MzIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwIDQuNSkiLz48cGF0aCBkPSJtMCAwdi41MzkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwIDE0LjUpIi8+PC9nPjwvc3ZnPg==");
}
.mod-mypage-card-list .card-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2rem;
  font-weight: 700;
}
.mod-mypage-card-list .card-title::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 40px;
  height: 40px;
  margin-right: 8px;
  background: no-repeat center;
  background-size: 40px;
}
.mod-mypage-card-list .card-title[data-icon=point]::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMjUgMjUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgyNXYyNWgtMjV6Ii8+PGcgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjIiPjxjaXJjbGUgY3g9IjEyLjUiIGN5PSIxMi41IiByPSI5LjUiLz48cGF0aCBkPSJtLTE2OTAwLjQtMjA3NzJ2LTcuN2gzYzEgMCAxLjkuOSAxLjkgMS45IDAgMS4xLS45IDItMS45IDJoLS4zIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNjkxMSAyMDc4OC43KSIvPjwvZz48L2c+PC9zdmc+");
}
.mod-mypage-card-list .card-title[data-icon=coupon]::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMjUgMjUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgyNXYyNWgtMjV6Ii8+PGcgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Im0xOSAxNGgtMThjLS41NDkgMC0xLS40NTEtMS0xdi0zLjcxNGMuMTEyLjAzMS4yMjguMDQ3LjM0NS4wNDcuOTU1IDAgMS43MjQtMS4wNDYgMS43MjQtMi4zMzNzLS43NjktMi4zMzMtMS43MjQtMi4zMzNjLS4xMTcgMC0uMjMzLjAxNS0uMzQ1LjA0NnYtMy43MTNjMC0uNTQ5LjQ1MS0xIDEtMWgxOGMuNTQ5IDAgMSAuNDUxIDEgMXYzLjcxM2MtLjExMi0uMDMxLS4yMjgtLjA0Ny0uMzQ1LS4wNDctLjk1MSAwLTEuNzI0IDEuMDQ3LTEuNzI0IDIuMzM0cy43NzQgMi4zMzMgMS43MjQgMi4zMzNjLjExNyAwIC4yMzMtLjAxNi4zNDUtLjA0N3YzLjcxNGMwIC41NDktLjQ1MSAxLTEgMXoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIuNSA1LjQ5OSkiLz48cGF0aCBkPSJtMTYuNDkyIDEyLjUwMnYuMDMxIiBzdHJva2UtbGluZWpvaW49Im1pdGVyIi8+PHBhdGggZD0ibTE2LjQ5MiAxNi4zMjR2LjAzMSIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIvPjxwYXRoIGQ9Im0xNi40OTIgOC42ODF2LjAzMSIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIvPjwvZz48L2c+PC9zdmc+");
}
.mod-mypage-card-list .card-title[data-icon=mairu]::before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgMjUgMjUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTAgMGgyNXYyNWgtMjV6Ii8+PGcgc3Ryb2tlPSIjYzAwIiBzdHJva2Utd2lkdGg9IjIiPjxlbGxpcHNlIGN4PSIxMi41IiBjeT0iNy43OTgiIHJ4PSI4IiByeT0iNC41Ii8+PHBhdGggZD0ibTI4Ljc4NyAyMi40Yy0xLjMyOCAxLjUyMS00LjM2MyAyLjU4My03Ljg5NCAyLjU4M3MtNi41MzctMS4wNTUtNy44OTMtMi41NjEiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC04LjUgLTcuOSkiLz48cGF0aCBkPSJtMjguNzg3IDMwLjRjLTEuMzI4IDEuNTIxLTQuMzYzIDIuNTgzLTcuODk0IDIuNTgzcy02LjUzNy0xLjA1NS03Ljg5My0yLjU2MSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTguNSAtMTEuMjgxKSIvPjwvZz48L2c+PC9zdmc+");
}
.mod-mypage-card-list .card-content .view {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 80px;
  margin: 20px auto;
  padding: 25px 8px 15px;
  background: #f4f4f4;
}
.mod-mypage-card-list .card-content .view-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.mod-mypage-card-list .card-content .rank {
  display: block;
  width: 60px;
  height: 60px;
  margin-right: 10px;
  aspect-ratio: 1/1;
  -webkit-transform: translateY(0.3em);
          transform: translateY(0.3em);
}
.mod-mypage-card-list .card-content .num {
  font-family: "Roboto", sans-serif;
  font-size: 3rem;
  font-weight: 700;
}
.mod-mypage-card-list .card-content .unit {
  display: block;
  margin-bottom: 0.3em;
  margin-left: 8px;
  font-size: 2rem;
}
.mod-mypage-card-list .card-content .num {
  font-family: "Roboto", sans-serif;
  font-size: 3rem;
  font-weight: 700;
}
.mod-mypage-card-list .card-content .detail-list li {
  margin-top: -6px;
}
.mod-mypage-card-list .card-content .detail-list li {
  font-size: 1.4rem;
}
.mod-mypage-card-list .card-content .detail-list li + li {
  margin-top: 4px;
}
.mod-mypage-card-list .card-content > .mod-link {
  margin-top: 20px;
  margin-bottom: 0;
}
.mod-mypage-card-list .card-content > .mod-list-notice {
  margin-top: 5px;
  margin-bottom: 0;
}
@media screen and (min-width: 768px), print {
  .mod-mypage-card-list .detail-list + .mod-link {
    margin-top: 15px;
  }
  .mod-mypage-card-list .card-content > .mod-link {
    margin-bottom: 10px;
  }
  .mod-mypage-card-list .card-content > .mod-list-notice {
    margin-bottom: 0;
  }
}

.mod-product-info__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 30px;
}
.mod-product-info__header .mod-btn {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 20px;
}
.mod-product-info__header .mod-btn .btn button,
.mod-product-info__header .mod-btn .btn a {
  min-height: 0;
}

.mod-product-info__title {
  margin-top: -5px;
  font-size: 2rem;
  font-weight: 700;
}

.mod-product-info__input {
  margin-top: 20px;
}
.mod-product-info__input:first-child {
  margin-top: 0;
}

.mod-product-info__list {
  margin-top: 30px;
}
.mod-product-info__list:first-child {
  margin-top: 0;
}
.mod-product-info__list > .item + .item {
  margin-top: 30px;
}
.mod-product-info__list dt,
.mod-product-info__list dd {
  font-size: 1.6rem;
}
.mod-product-info__list dt {
  font-weight: 700;
}
.mod-product-info__list dd {
  margin-top: 10px;
}
.mod-product-info__list .info-text-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mod-product-info__list .info-text-btn .mod-btn {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 12px;
}
@media screen and (min-width: 768px), print {
  .mod-product-info__list .info-text-btn .mod-btn {
    margin-left: 20px;
  }
}
.mod-product-info__list .info-text-btn .mod-btn .btn button,
.mod-product-info__list .info-text-btn .mod-btn .btn a {
  min-height: 0;
}
.mod-product-info__list .info-text-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.mod-product-info__list .info-text-link .mod-link {
  margin-left: 20px;
}
.mod-product-info__list .info-btn-list .mod-btn {
  margin-top: 0;
  margin-bottom: 0;
}
.mod-product-info__list .info-btn-list .mod-btn .inner {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}
.mod-product-info__list .info-btn-list .mod-btn .btn a,
.mod-product-info__list .info-btn-list .mod-btn .btn button {
  width: 100%;
  min-height: 84px;
}
@media screen and (min-width: 768px), print {
  .mod-product-info__list .mod-product-info__header {
    margin-bottom: 40px;
  }
  .mod-product-info__list .mod-product-info__title {
    margin-top: 0;
    font-size: 2.4rem;
  }
}

.mod-mypage-desc-card .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  margin-top: -20px;
  margin-left: -20px;
}
.mod-mypage-desc-card .list > li {
  padding-top: 20px;
  padding-left: 20px;
}
.mod-mypage-desc-card .card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  padding: 20px;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background-color: #fff;
  text-decoration: none;
}
.mod-mypage-desc-card .card.is-error {
  background-color: #ffebeb;
}
.mod-mypage-desc-card .card-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 4px;
  color: #222;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.65;
}
.mod-mypage-desc-card .item-name {
  font-size: 1.8rem;
}
.mod-mypage-desc-card .error-message {
  color: #c00;
  font-size: 1.4rem;
}
.mod-mypage-desc-card .card-content p {
  color: #222;
  font-size: 1.4rem;
  line-height: 1.65;
}
.mod-mypage-desc-card .price-unit {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  font-size: 2rem;
  font-weight: 700;
}
.mod-mypage-desc-card .price-unit > .unit {
  margin-bottom: 0.16em;
  margin-left: 0.3em;
  font-size: 1.4rem;
  font-weight: 400;
}
.mod-mypage-desc-card .num-unit {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  font-size: 2rem;
  font-weight: 700;
}
.mod-mypage-desc-card .num-unit > .unit {
  margin-bottom: 0.16em;
  margin-left: 0.3em;
  font-size: 1.4rem;
  font-weight: 400;
}
.mod-mypage-desc-card .item-detail {
  margin-top: 8px;
}
.mod-mypage-desc-card .item-detail dt,
.mod-mypage-desc-card .item-detail dd {
  color: #222;
  font-size: 1.4rem;
}
.mod-mypage-desc-card .item-detail > .cell {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.mod-mypage-desc-card .item-detail > .cell + .cell {
  margin-top: 8px;
}
.mod-mypage-desc-card .item-detail dt {
  position: relative;
  width: auto;
  padding-right: 1em;
}
.mod-mypage-desc-card .item-detail dt::after {
  content: ":";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  width: 1em;
  height: 1em;
  text-align: center;
}
.mod-mypage-desc-card .detail-list {
  margin: 12px 0;
}
.mod-mypage-desc-card .detail-list > div {
  display: table;
}
.mod-mypage-desc-card .detail-list > div + div {
  margin-top: 2px;
}
.mod-mypage-desc-card .detail-list dt,
.mod-mypage-desc-card .detail-list dd {
  display: table-cell;
  color: #767676;
  font-size: 1.4rem;
}
.mod-mypage-desc-card .detail-list dt {
  position: relative;
  width: auto;
  min-width: 70px;
  padding-right: 1em;
}
.mod-mypage-desc-card .detail-list dt::after {
  content: ":";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  width: 1em;
  height: 1em;
  text-align: center;
}
.mod-mypage-desc-card .detail-list li + li {
  margin-top: 4px;
}
.mod-mypage-desc-card > .mod-btn:last-child {
  margin-top: 20px;
  margin-bottom: 0;
}
@media screen and (min-width: 768px), print {
  .mod-mypage-desc-card .card {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 30px;
  }
  .mod-mypage-desc-card .card-title {
    margin-bottom: 8px;
    font-size: 1.8rem;
  }
  .mod-mypage-desc-card .item-name {
    font-size: 2.2rem;
  }
  .mod-mypage-desc-card .error-message {
    margin-top: 12px;
    font-size: 1.6rem;
  }
  .mod-mypage-desc-card .card-content {
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .mod-mypage-desc-card .card-content p {
    font-size: 1.6rem;
  }
  .mod-mypage-desc-card .item-detail > .cell {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .mod-mypage-desc-card .item-detail dt,
  .mod-mypage-desc-card .item-detail dd {
    font-size: 1.6rem;
  }
  .mod-mypage-desc-card .item-detail dt {
    margin-bottom: 0.2em;
    padding-right: 0.3em;
  }
  .mod-mypage-desc-card .item-detail dt::after {
    display: inline-block;
    position: static;
  }
  .mod-mypage-desc-card .price-unit {
    font-size: 2.6rem;
  }
  .mod-mypage-desc-card .price-unit > .unit {
    font-size: 1.6rem;
  }
  .mod-mypage-desc-card .num-unit {
    font-size: 1.6rem;
  }
  .mod-mypage-desc-card .num-unit > .unit {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px) !important;
    border: 0 !important;
    white-space: nowrap !important;
    clip-path: inset(50%) !important;
  }
}

.mod-mypage-price-table .price-table {
  margin: 30px 0;
}
.mod-mypage-price-table .price-card {
  width: 100%;
  padding: 30px 20px;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background: #fff;
}
.mod-mypage-price-table .price-card:not(:last-child) {
  margin-bottom: 20px;
}
.mod-mypage-price-table .product-price-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  font-weight: 700;
}
.mod-mypage-price-table .product-price-item dt {
  max-width: 70%;
  color: #767676;
  font-size: 1.6rem;
}
.mod-mypage-price-table .product-price-item dd {
  margin-left: auto;
  color: #767676;
  font-size: 1.4rem;
}
.mod-mypage-price-table .product-price-item + .product-price-item {
  margin-top: 20px;
}
.mod-mypage-price-table .option-product-price {
  margin-top: 20px;
}
.mod-mypage-price-table .product-price .product-price-item.product-name {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.mod-mypage-price-table .product-price .product-price-item.product-name dt {
  max-width: none;
  padding-bottom: 10px;
  border-bottom: 1px solid #dbdbdb;
}
.mod-mypage-price-table .product-price .product-price-item.product-name dd {
  margin-left: 0;
  padding: 20px 0 0 85px;
}
.mod-mypage-price-table .price-unit {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  color: #222;
  font-size: 1.8rem;
  font-weight: 700;
}
.mod-mypage-price-table .price-unit > .unit {
  margin-bottom: 0.16em;
  margin-left: 0.3em;
  font-size: 1.4rem;
  font-weight: 400;
}
.mod-mypage-price-table .num-unit {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  color: #222;
  font-size: 1.8rem;
  font-weight: 700;
}
.mod-mypage-price-table .num-unit > .unit {
  margin-bottom: 0.16em;
  margin-left: 0.3em;
  font-size: 1.4rem;
  font-weight: 400;
}
.mod-mypage-price-table .total-unit {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  color: #222;
  font-size: 2rem;
  font-weight: 700;
}
.mod-mypage-price-table .total-unit > .unit {
  margin-bottom: 0.16em;
  margin-left: 0.3em;
  font-size: 1.6rem;
  font-weight: 700;
}
.mod-mypage-price-table .price-table__total {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 10px;
  padding: 20px 0;
  border-bottom: 1px solid #dbdbdb;
  font-size: 1.6rem;
  font-weight: 700;
}
@media screen and (min-width: 768px), print {
  .mod-mypage-price-table .price-table {
    margin: 40px 0;
  }
  .mod-mypage-price-table .price-card {
    padding: 24px 40px;
  }
  .mod-mypage-price-table .product-price {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .mod-mypage-price-table .product-price-item,
  .mod-mypage-price-table .option-price-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .mod-mypage-price-table .product-price-item dt,
  .mod-mypage-price-table .option-price-item dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: none;
    margin-bottom: 20px;
    padding-right: 0;
    padding-bottom: 10px;
    border-bottom: 1px solid #dbdbdb;
    text-align: right;
  }
  .mod-mypage-price-table .product-price-item dd,
  .mod-mypage-price-table .option-price-item dd {
    height: 100%;
    margin-bottom: 0;
    margin-left: 0;
  }
  .mod-mypage-price-table .product-price-item dt,
  .mod-mypage-price-table .product-price-item dd,
  .mod-mypage-price-table .option-price-item dt,
  .mod-mypage-price-table .option-price-item dd {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 1.6rem;
  }
  .mod-mypage-price-table .product-price .product-price-item.product-name {
    width: 70%;
  }
  .mod-mypage-price-table .product-price .product-price-item.product-name dd {
    padding-top: 0;
    padding-left: 0;
  }
  .mod-mypage-price-table .product-price .product-price-item:nth-child(2) {
    width: 120px;
  }
  .mod-mypage-price-table .product-price .product-price-item:nth-child(2) dt,
  .mod-mypage-price-table .product-price .product-price-item:nth-child(2) dd {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .mod-mypage-price-table .product-price .product-price-item:nth-child(3) {
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: calc(30% - 120px);
    white-space: nowrap;
  }
  .mod-mypage-price-table .product-price .product-price-item:nth-child(3) dt,
  .mod-mypage-price-table .product-price .product-price-item:nth-child(3) dd {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .mod-mypage-price-table .product-price-item + .product-price-item {
    margin-top: 0;
  }
  .mod-mypage-price-table .option-product-price .product-price-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .mod-mypage-price-table .option-product-price .product-price-item dt {
    width: 70%;
    max-width: 70%;
    margin-bottom: 0;
    padding: 0;
    border: none;
    text-align: left;
  }
  .mod-mypage-price-table .option-product-price .product-price-item dd {
    -ms-flex-item-align: end;
        align-self: flex-end;
  }
  .mod-mypage-price-table .price-unit {
    font-size: 2rem;
  }
  .mod-mypage-price-table .price-unit > .unit {
    font-size: 1.6rem;
    font-weight: 700;
  }
  .mod-mypage-price-table .num-unit {
    font-size: 2rem;
  }
  .mod-mypage-price-table .num-unit > .unit {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px) !important;
    border: 0 !important;
    font-size: 1.6rem;
    font-weight: 700;
    white-space: nowrap !important;
    clip-path: inset(50%) !important;
  }
  .mod-mypage-price-table .total-unit {
    font-size: 2rem;
  }
  .mod-mypage-price-table .total-unit > .unit {
    font-size: 1.6rem;
  }
  .mod-mypage-price-table .price-table__total {
    padding-right: 20px;
    padding-left: 20px;
    font-size: 2rem;
  }
}

.mod-mypage-mairu-info-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
}
.mod-mypage-mairu-info-box > * + * {
  margin-top: 20px;
}
.mod-mypage-mairu-info-box .info-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
.mod-mypage-mairu-info-box .image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 335px;
  margin: auto;
}
.mod-mypage-mairu-info-box .image img {
  width: 100%;
  height: auto;
}
.mod-mypage-mairu-info-box .info {
  width: 100%;
  margin-top: 20px;
  margin-bottom: -20px;
}
.mod-mypage-mairu-info-box .info-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 8px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.35;
}
.mod-mypage-mairu-info-box .info-title .value {
  margin-left: auto;
}
.mod-mypage-mairu-info-box .info-summary {
  margin-top: 28px;
}
.mod-mypage-mairu-info-box .info-summary .text-between {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.mod-mypage-mairu-info-box .info-summary .text-goal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-top: 8px;
}
.mod-mypage-mairu-info-box .info-summary .text-goal .num {
  display: inline-block;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.35;
}
.mod-mypage-mairu-info-box .info-summary .text-goal .suffix {
  display: block;
  margin-bottom: 0.2em;
  margin-left: 8px;
}
.mod-mypage-mairu-info-box .info .detail-list {
  margin-top: 24px;
}
.mod-mypage-mairu-info-box .card .detail-list {
  margin-top: 16px;
}
.mod-mypage-mairu-info-box .detail-list li {
  margin-top: -6px;
}
.mod-mypage-mairu-info-box .detail-list li {
  font-size: 1.4rem;
}
.mod-mypage-mairu-info-box .detail-list li + li {
  margin-top: 4px;
}
.mod-mypage-mairu-info-box .info > .mod-list-notice {
  margin-top: 8px;
}
.mod-mypage-mairu-info-box .card {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  padding: 30px;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background-color: #fff;
}
.mod-mypage-mairu-info-box .card-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2rem;
  font-weight: 700;
}
.mod-mypage-mairu-info-box .card-content .expiration {
  margin-top: 12px;
  font-size: 1.4rem;
}
.mod-mypage-mairu-info-box .card-content .expiration strong {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #c00;
  font-weight: 400;
}
.mod-mypage-mairu-info-box .card-content .expiration strong::before {
  content: "";
  display: block;
  position: static;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 20px;
  height: 20px;
  margin-top: 0;
  margin-right: 8px;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border: 0;
  background: no-repeat center;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjIwIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSIxMCIgY3k9IjEwIiBmaWxsPSIjYzAwIiByPSIxMCIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjMiPjxwYXRoIGQ9Im0wIC43OTF2NC43MzIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwIDQuNSkiLz48cGF0aCBkPSJtMCAwdi41MzkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwIDE0LjUpIi8+PC9nPjwvc3ZnPg==");
}
.mod-mypage-mairu-info-box .card-content .view {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 80px;
  margin: 8px auto;
  padding: 25px 20px 15px;
  background: #f4f4f4;
}
.mod-mypage-mairu-info-box .card-content .num {
  font-family: "Roboto", sans-serif;
  font-size: 3rem;
  font-weight: 700;
}
.mod-mypage-mairu-info-box .card-content .unit {
  display: block;
  margin-bottom: 0.3em;
  margin-left: 8px;
  font-size: 2rem;
}
.mod-mypage-mairu-info-box .card-content .num {
  font-family: "Roboto", sans-serif;
  font-size: 3rem;
  font-weight: 700;
}
.mod-mypage-mairu-info-box .card-content .detail-list li {
  margin-top: -6px;
}
.mod-mypage-mairu-info-box .card-content .detail-list li {
  font-size: 1.4rem;
}
.mod-mypage-mairu-info-box .card-content .detail-list li + li {
  margin-top: 4px;
}
.mod-mypage-mairu-info-box .card-content > .mod-link {
  margin-top: 20px;
  margin-bottom: 0;
}
.mod-mypage-mairu-info-box .card-content > .mod-list-notice {
  margin-top: 5px;
  margin-bottom: 0;
}
@media screen and (min-width: 768px), print {
  .mod-mypage-mairu-info-box {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .mod-mypage-mairu-info-box > * + * {
    margin-top: 0;
    margin-left: 30px;
  }
  .mod-mypage-mairu-info-box .image {
    max-width: 240px;
    margin-top: 0;
    margin-left: 0;
  }
  .mod-mypage-mairu-info-box .info-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-flow: column-reverse wrap;
            flex-flow: column-reverse wrap;
  }
  .mod-mypage-mairu-info-box .info-title {
    font-size: 2rem;
  }
  .mod-mypage-mairu-info-box .info-title .value {
    margin-left: 10px;
  }
  .mod-mypage-mairu-info-box .info-summary .text-between {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .mod-mypage-mairu-info-box .card {
    max-width: 336px;
  }
}
@media screen and (min-width: 992px), print {
  .mod-mypage-mairu-info-box .info {
    margin-top: 0;
    margin-left: 25px;
  }
  .mod-mypage-mairu-info-box .info-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse nowrap;
            flex-flow: row-reverse nowrap;
  }
}

.mod-mypage-mairu-cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.mod-mypage-mairu-cards .card + .card {
  margin-top: 20px;
}
.mod-mypage-mairu-cards .card {
  width: 100%;
  height: 100%;
  padding: 30px;
  border: 1px solid #dbdbdb;
  border-radius: 6px;
  background-color: #fff;
}
.mod-mypage-mairu-cards .card-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2rem;
  font-weight: 700;
}
.mod-mypage-mairu-cards .card-content .expiration {
  margin-top: 12px;
  font-size: 1.4rem;
}
.mod-mypage-mairu-cards .card-content .expiration strong {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #c00;
  font-weight: 400;
}
.mod-mypage-mairu-cards .card-content .expiration strong::before {
  content: "";
  display: block;
  position: static;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 20px;
  height: 20px;
  margin-top: 0;
  margin-right: 8px;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  border: 0;
  background: no-repeat center;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjIwIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSIxMCIgY3k9IjEwIiBmaWxsPSIjYzAwIiByPSIxMCIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjMiPjxwYXRoIGQ9Im0wIC43OTF2NC43MzIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwIDQuNSkiLz48cGF0aCBkPSJtMCAwdi41MzkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwIDE0LjUpIi8+PC9nPjwvc3ZnPg==");
}
.mod-mypage-mairu-cards .card-content .view {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 80px;
  margin: 8px auto;
  padding: 25px 20px 15px;
  background: #f4f4f4;
}
.mod-mypage-mairu-cards .card-content .num {
  font-family: "Roboto", sans-serif;
  font-size: 3rem;
  font-weight: 700;
}
.mod-mypage-mairu-cards .card-content .prefix-unit {
  display: block;
  margin-right: 6px;
  margin-bottom: 0.3em;
  font-size: 2rem;
}
.mod-mypage-mairu-cards .card-content .unit {
  display: block;
  margin-bottom: 0.3em;
  margin-left: 8px;
  font-size: 2rem;
}
.mod-mypage-mairu-cards .card-content .detail-list li {
  margin-top: -6px;
}
.mod-mypage-mairu-cards .card-content .detail-list li {
  font-size: 1.4rem;
}
.mod-mypage-mairu-cards .card-content .detail-list li + li {
  margin-top: 4px;
}
.mod-mypage-mairu-cards .card-content > .mod-link {
  margin-top: 20px;
  margin-bottom: 0;
}
.mod-mypage-mairu-cards .card-content > .mod-list-notice {
  margin-top: 5px;
  margin-bottom: 0;
}
@media screen and (min-width: 768px), print {
  .mod-mypage-mairu-cards {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .mod-mypage-mairu-cards .card + .card {
    margin-top: 0;
    margin-left: 20px;
  }
  .mod-mypage-mairu-cards .card {
    width: 50%;
  }
}

.mod-point-exchange-list > .item + .item {
  margin-top: 30px;
}
.mod-point-exchange-list dt,
.mod-point-exchange-list dd {
  font-size: 1.6rem;
}
.mod-point-exchange-list dt {
  font-weight: 700;
}
.mod-point-exchange-list .mairu-unit {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-top: 4px;
  font-size: 2rem;
  font-weight: 700;
  font-weight: "Roboto", sans-serif;
}
.mod-point-exchange-list .mairu-unit > .unit {
  margin-bottom: 0.16em;
  margin-left: 0.8em;
  font-size: 1.4rem;
  font-weight: "Noto Sans JP", sans-serif;
  font-weight: 400;
}
.mod-point-exchange-list .exchange-rate {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 8px;
}
.mod-point-exchange-list .exchange-rate img {
  display: block;
  margin-right: 20px;
}
.mod-point-exchange-list .exchange-rate .rate {
  font-size: 1.4rem;
}
.mod-point-exchange-list .exchange-pt-search {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  max-width: 536px;
}
.mod-point-exchange-list .exchange-pt-search > * + * {
  margin-left: 12px;
}
.mod-point-exchange-list .exchange-pt-search .mod-pulldown-select {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  margin-bottom: 0;
}
.mod-point-exchange-list .exchange-pt-search .mod-btn {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin-top: 0;
  margin-bottom: -10px;
}
.mod-point-exchange-list .exchange-pt-search .mod-btn .btn a,
.mod-point-exchange-list .exchange-pt-search .mod-btn .btn button {
  min-height: 0;
}
@media screen and (min-width: 768px), print {
  .mod-point-exchange-list .exchange-pt-search > * + * {
    margin-left: 20px;
  }
}

/*! = ModulesAdjustStyles */
.str-outer.of-comparison {
  overflow: visible;
  overflow-x: clip;
}

.mod-conversion {
  padding-bottom: 0;
}
.mod-conversion .filter-bottom {
  position: sticky;
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}
.mod-conversion .conversion-list > .inner {
  padding: 14px;
}
.mod-conversion .conversion-thumbnail-list .image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.mod-conversion .conversion-btn .mod-btn > .inner {
  margin: 0;
}
