@charset "UTF-8";
@-webkit-keyframes slide-in-left {
  0% {
    -webkit-transform: translateX(20px);
            transform: translateX(20px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
@keyframes slide-in-left {
  0% {
    -webkit-transform: translateX(20px);
            transform: translateX(20px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}

@-webkit-keyframes slide-in-right {
  0% {
    -webkit-transform: translateX(-20px);
            transform: translateX(-20px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slide-in-right {
  0% {
    -webkit-transform: translateX(-20px);
            transform: translateX(-20px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}

/* ============================================================================
 * Vendor
 * ========================================================================= */
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: .67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  /* 1 */
  overflow: visible;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  /* 1 */
  text-decoration: underline;
  text-decoration: underline dotted;
  border-bottom: none;
  /* 2 */
  -webkit-text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
  position: relative;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: .35em .75em .625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  /* 3 */
  white-space: normal;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  /* 1 */
  outline-offset: -2px;
  -webkit-appearance: textfield;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  /* 1 */
  font: inherit;
  -webkit-appearance: button;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

html[data-is-scrolling="true"] .nav-local > .inner {
  will-change: position;
}

/* ============================================================================
 * Default Styles
 * ========================================================================= */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

html[data-scroll-disabled="true"] > body {
  position: fixed;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

html[data-script-enabled="true"][data-use-keyboard="false"] :focus {
  outline: 0;
}

body {
  font-size: 1.4rem;
  color: #333;
  background: #fff;
  position: relative;
  min-width: 320px;
  margin: 0 auto;
  padding: 0;
}

main {
  display: block;
}

a:hover {
  text-decoration: none;
  color: #808080;
}

a:focus {
  outline: 1px dashed #333;
  outline: -webkit-focus-ring-color auto 5px;
}

a[target="_blank"][href^="http"]:not([rel~="noopener"]),
a[target="_blank"][href^="http"]:not([rel~="noreferrer"]) {
  background: #f00 !important;
  opacity: .8 !important;
}

[id^="anc-"] {
  margin-top: -50px;
  padding-top: 50px;
}

[id^="anc-"][id*=" "],
[id^="anc-"][id*="　"] {
  background: #f00 !important;
}

[class^="site-"],
[class^="str-"],
[class^="nav-"],
[class^="mod-"],
[class^="comp-"],
[class^="func-"] {
  font: 14px/1.7 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

[class^="site-"] a:link,
[class^="site-"] a:visited,
[class^="site-"] a:active,
[class^="site-"] a:focus,
[class^="str-"] a:link,
[class^="str-"] a:visited,
[class^="str-"] a:active,
[class^="str-"] a:focus,
[class^="nav-"] a:link,
[class^="nav-"] a:visited,
[class^="nav-"] a:active,
[class^="nav-"] a:focus,
[class^="mod-"] a:link,
[class^="mod-"] a:visited,
[class^="mod-"] a:active,
[class^="mod-"] a:focus,
[class^="comp-"] a:link,
[class^="comp-"] a:visited,
[class^="comp-"] a:active,
[class^="comp-"] a:focus,
[class^="func-"] a:link,
[class^="func-"] a:visited,
[class^="func-"] a:active,
[class^="func-"] a:focus {
  text-decoration: underline;
}

[class^="site-"] a:not([href]),
[class^="str-"] a:not([href]),
[class^="nav-"] a:not([href]),
[class^="mod-"] a:not([href]),
[class^="comp-"] a:not([href]),
[class^="func-"] a:not([href]) {
  cursor: text;
}

[class^="site-"] a[role="button"],
[class^="str-"] a[role="button"],
[class^="nav-"] a[role="button"],
[class^="mod-"] a[role="button"],
[class^="comp-"] a[role="button"],
[class^="func-"] a[role="button"] {
  cursor: default;
}

[class^="site-"] a img,
[class^="str-"] a img,
[class^="nav-"] a img,
[class^="mod-"] a img,
[class^="comp-"] a img,
[class^="func-"] a img {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

[class^="site-"] a img.icn-_blank,
[class^="site-"] a img.icn-pdf,
[class^="str-"] a img.icn-_blank,
[class^="str-"] a img.icn-pdf,
[class^="nav-"] a img.icn-_blank,
[class^="nav-"] a img.icn-pdf,
[class^="mod-"] a img.icn-_blank,
[class^="mod-"] a img.icn-pdf,
[class^="comp-"] a img.icn-_blank,
[class^="comp-"] a img.icn-pdf,
[class^="func-"] a img.icn-_blank,
[class^="func-"] a img.icn-pdf {
  vertical-align: baseline;
  position: relative;
  top: 1px;
  margin: 0 3px 0 4px;
}

[class^="site-"] small,
[class^="str-"] small,
[class^="nav-"] small,
[class^="mod-"] small,
[class^="comp-"] small,
[class^="func-"] small {
  font-size: 100%;
}

[class^="site-"] h1,
[class^="site-"] h2,
[class^="site-"] h3,
[class^="site-"] h4,
[class^="site-"] h5,
[class^="site-"] h6,
[class^="str-"] h1,
[class^="str-"] h2,
[class^="str-"] h3,
[class^="str-"] h4,
[class^="str-"] h5,
[class^="str-"] h6,
[class^="nav-"] h1,
[class^="nav-"] h2,
[class^="nav-"] h3,
[class^="nav-"] h4,
[class^="nav-"] h5,
[class^="nav-"] h6,
[class^="mod-"] h1,
[class^="mod-"] h2,
[class^="mod-"] h3,
[class^="mod-"] h4,
[class^="mod-"] h5,
[class^="mod-"] h6,
[class^="comp-"] h1,
[class^="comp-"] h2,
[class^="comp-"] h3,
[class^="comp-"] h4,
[class^="comp-"] h5,
[class^="comp-"] h6,
[class^="func-"] h1,
[class^="func-"] h2,
[class^="func-"] h3,
[class^="func-"] h4,
[class^="func-"] h5,
[class^="func-"] h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

[class^="site-"] em,
[class^="str-"] em,
[class^="nav-"] em,
[class^="mod-"] em,
[class^="comp-"] em,
[class^="func-"] em {
  font-weight: bold;
  font-style: normal;
}

[class^="site-"] dfn,
[class^="str-"] dfn,
[class^="nav-"] dfn,
[class^="mod-"] dfn,
[class^="comp-"] dfn,
[class^="func-"] dfn {
  font-style: normal;
}

[class^="site-"] button,
[class^="str-"] button,
[class^="nav-"] button,
[class^="mod-"] button,
[class^="comp-"] button,
[class^="func-"] button {
  font-family: inherit;
  line-height: inherit;
  background: transparent;
  padding: 0;
  border: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  text-shadow: none;
}

[class^="site-"] input,
[class^="site-"] textarea,
[class^="site-"] select,
[class^="site-"] button,
[class^="site-"] [role="button"],
[class^="str-"] input,
[class^="str-"] textarea,
[class^="str-"] select,
[class^="str-"] button,
[class^="str-"] [role="button"],
[class^="nav-"] input,
[class^="nav-"] textarea,
[class^="nav-"] select,
[class^="nav-"] button,
[class^="nav-"] [role="button"],
[class^="mod-"] input,
[class^="mod-"] textarea,
[class^="mod-"] select,
[class^="mod-"] button,
[class^="mod-"] [role="button"],
[class^="comp-"] input,
[class^="comp-"] textarea,
[class^="comp-"] select,
[class^="comp-"] button,
[class^="comp-"] [role="button"],
[class^="func-"] input,
[class^="func-"] textarea,
[class^="func-"] select,
[class^="func-"] button,
[class^="func-"] [role="button"] {
  max-width: 100%;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
}

[class^="site-"] ::-moz-focus-inner,
[class^="str-"] ::-moz-focus-inner,
[class^="nav-"] ::-moz-focus-inner,
[class^="mod-"] ::-moz-focus-inner,
[class^="comp-"] ::-moz-focus-inner,
[class^="func-"] ::-moz-focus-inner {
  padding: 0;
  border: 0;
}

[class^="site-"] select::-ms-expand,
[class^="str-"] select::-ms-expand,
[class^="nav-"] select::-ms-expand,
[class^="mod-"] select::-ms-expand,
[class^="comp-"] select::-ms-expand,
[class^="func-"] select::-ms-expand {
  display: none;
}

[class^="site-"] figure,
[class^="str-"] figure,
[class^="nav-"] figure,
[class^="mod-"] figure,
[class^="comp-"] figure,
[class^="func-"] figure {
  margin: 0;
}

[class^="site-"] ul,
[class^="site-"] ol,
[class^="site-"] dl,
[class^="site-"] dt,
[class^="site-"] dd,
[class^="site-"] li,
[class^="str-"] ul,
[class^="str-"] ol,
[class^="str-"] dl,
[class^="str-"] dt,
[class^="str-"] dd,
[class^="str-"] li,
[class^="nav-"] ul,
[class^="nav-"] ol,
[class^="nav-"] dl,
[class^="nav-"] dt,
[class^="nav-"] dd,
[class^="nav-"] li,
[class^="mod-"] ul,
[class^="mod-"] ol,
[class^="mod-"] dl,
[class^="mod-"] dt,
[class^="mod-"] dd,
[class^="mod-"] li,
[class^="comp-"] ul,
[class^="comp-"] ol,
[class^="comp-"] dl,
[class^="comp-"] dt,
[class^="comp-"] dd,
[class^="comp-"] li,
[class^="func-"] ul,
[class^="func-"] ol,
[class^="func-"] dl,
[class^="func-"] dt,
[class^="func-"] dd,
[class^="func-"] li {
  margin: 0;
  padding: 0;
}

[class^="site-"] li,
[class^="str-"] li,
[class^="nav-"] li,
[class^="mod-"] li,
[class^="comp-"] li,
[class^="func-"] li {
  list-style: none;
}

[class^="site-"],
[class^="str-"],
[class^="nav-"],
[class^="comp-"] {
  text-align: left;
}

/* ============================================================================
 * site-*, str-* 全ページ共通で登場するパーツ、構造
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .str-breadcrumb パンくずリスト
 * ------------------------------------------------------------------------- */
.str-breadcrumb {
  line-height: 1.7;
  display: none;
  padding: 0 16px;
}

.str-breadcrumb > .inner {
  font-size: 1.1rem;
  text-align: left;
  max-width: 960px;
  margin: 0 auto;
  padding: 21px 0;
}

.str-breadcrumb > .inner > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -16px 0 0 -16px;
}

.str-breadcrumb > .inner > .list > li {
  position: relative;
  padding: 16px 0 0 16px;
}

.str-breadcrumb > .inner > .list > li:not(:first-child)::before {
  line-height: 1.7;
  position: absolute;
  top: 15px;
  left: 4px;
  content: ">";
}

.str-breadcrumb a {
  text-decoration: none;
  color: #1391ce;
}

.str-breadcrumb a:visited {
  text-decoration: none;
  color: #005e99;
}

.str-breadcrumb a:hover {
  text-decoration: underline;
}

.str-breadcrumb a:not([href])[aria-current="page"] {
  text-decoration: none;
  color: inherit;
}

/* ----------------------------------------------------------------------------
 * .str-mainvisual メインビジュアル
 * ------------------------------------------------------------------------- */
.str-mainvisual {
  background: #ddd center center no-repeat;
  background-size: cover;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 54px;
}

.str-mainvisual::after {
  display: block;
  min-height: 100px;
  content: "";
}

.str-mainvisual > .inner {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 12px;
}

.str-mainvisual > .inner > .content {
  width: 100%;
  padding: 0 0 10px;
}

.str-mainvisual > .inner > .content > .hdg {
  font-size: 3rem;
  font-weight: bold;
  color: #fff;
}

.str-mainvisual > .inner > .content > .hdg span {
  font-size: 1.8rem;
  display: block;
}

.str-mainvisual > .inner > .content > .hdg span + strong {
  font-size: 3rem;
}

.str-mainvisual > .inner > .control > * + * {
  margin-top: 5px;
}

.str-mainvisual > .inner > .control > .favorite,
.str-mainvisual > .inner > .control > .compare {
  text-align: right;
}

.str-mainvisual > .inner > .control > .favorite a,
.str-mainvisual > .inner > .control > .compare a {
  text-decoration: none;
  letter-spacing: -1px;
  white-space: nowrap;
  color: #333;
  background: #fefefe;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 8px 12px 8px 6px;
  border: 1px solid #505050;
}

.str-mainvisual > .inner > .control > .favorite a > span > .length,
.str-mainvisual > .inner > .control > .compare a > span > .length {
  font-weight: normal;
  line-height: 1;
  color: #fff;
  background: #9fd038;
  display: inline-block;
  margin: 0 2px 0 0;
  padding: 2px 11px;
  border-radius: 8px;
}

.str-mainvisual > .inner > .control > .favorite a > span + span,
.str-mainvisual > .inner > .control > .compare a > span + span {
  margin: 0 0 0 auto;
}

.str-mainvisual > .inner > .control > .favorite + .favorite,
.str-mainvisual > .inner > .control > .favorite + .compare,
.str-mainvisual > .inner > .control > .compare + .favorite,
.str-mainvisual > .inner > .control > .compare + .compare {
  margin-top: 5px;
}

.str-mainvisual > .inner > .control > .favorite a {
  min-width: 245px;
  padding-left: 33px;
}

.str-mainvisual > .inner > .control > .favorite a::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -71px -140px;
  background-size: 180px 153px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 13px;
  display: block;
  width: 12px;
  height: 12px;
  margin: auto 0;
  content: "";
}

.str-mainvisual > .inner > .control > .compare a {
  min-width: 245px;
  padding-left: 34px;
}

.str-mainvisual > .inner > .control > .compare a::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -120.5px -116px;
  background-size: 180px 153px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  display: block;
  width: 17px;
  height: 13px;
  margin: auto 0;
  content: "";
}

.str-mainvisual > .inner > .control > .compare:only-child a {
  min-width: 210px;
}

.str-mainvisual + * {
  margin-top: 0;
}

/* ----------------------------------------------------------------------------
 * .str-pageTitle ページタイトル
 * ------------------------------------------------------------------------- */
.str-pageTitle {
  margin: 0 0 23px;
  padding: 2px 12px 0;
}

.str-pageTitle > .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
}

.str-pageTitle > .inner > .content {
  padding: 16px 0 16px;
}

.str-pageTitle > .inner > .content > .hdg {
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.5;
  padding: 6px 0 5px;
}

.str-pageTitle > .inner > .content > .label {
  font-size: 1rem;
  line-height: 1;
  vertical-align: top;
  color: #fff;
  background: #9cc715;
  position: relative;
  display: inline-block;
  padding: 3px 4px;
}

.str-pageTitle > .inner > .content > .label::before {
  position: absolute;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 100%;
  display: block;
  width: 0;
  height: 0;
  margin: auto 0;
  content: "";
  border: 1px solid transparent;
  border-width: 8px 7px;
  border-left-color: #9cc715;
}

.str-pageTitle > .inner > .control {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.str-pageTitle > .inner > .control > .favorite {
  font-size: 1rem;
  text-align: right;
}

.str-pageTitle > .inner > .control > .favorite a {
  text-decoration: none;
  letter-spacing: -1px;
  white-space: nowrap;
  color: #333;
  background: #fefefe;
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  min-width: 165px;
  padding: 8px 6px 8px 35px;
  border: 1px solid #505050;
  border-radius: 6px;
}

.str-pageTitle > .inner > .control > .favorite a::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -105px -140px;
  background-size: 180px 153px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 13px;
  display: block;
  width: 12px;
  height: 10.5px;
  margin: auto 0;
  content: "";
}

.str-pageTitle > .inner > .control > .favorite a > span + span {
  font-weight: bold;
  margin: 0 0 0 23px;
}

/* ============================================================================
 * site-header 共通ヘッダ
 * ========================================================================= */
body > header:first-child {
  padding-top: 0 !important;
}

/* ============================================================================
 * str-* 主にメインコンテンツエリアで登場する構造
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .str-invisible アクセシビリティ上存在したほうがいいが、デザイン上非表示にしても問題ないコンテンツ
 * ------------------------------------------------------------------------- */
.str-invisible {
  position: absolute;
  z-index: -1;
  overflow: hidden;
  width: 0;
  height: 0;
}

/* ----------------------------------------------------------------------------
 * .str-outer*, .str-inner 共通差分CSS
 * ------------------------------------------------------------------------- */
[class^="str-outer"].var-02,
[class^="str-outer"].var-03,
.str-inner.var-02,
.str-inner.var-03 {
  margin-top: 60px;
  margin-bottom: 40px;
  padding-top: 24px;
  padding-bottom: 22px;
}

[class^="str-outer"].var-02,
.str-inner.var-02 {
  background: #f0f1f2;
}

[class^="str-outer"].var-03,
.str-inner.var-03 {
  background: #e3eecc;
}

/* ----------------------------------------------------------------------------
 * .str-outer* 左右の余白を管理するストラクチャ（子要素には.str-inner以外を受け入れない）
 * ------------------------------------------------------------------------- */
[class^="str-outer"] {
  padding: 0 12px;
}

[class^="str-outer"]:last-child {
  margin-bottom: 130px;
}

[class^="str-outer"].var-02 > .str-inner:first-child > *:first-child,
[class^="str-outer"].var-03 > .str-inner:first-child > *:first-child {
  margin-top: 0;
}

[class^="str-outer"].var-02 > .str-inner:last-child > *:last-child,
[class^="str-outer"].var-03 > .str-inner:last-child > *:last-child {
  margin-bottom: 0;
}

[class^="str-outer"].var-02 > .str-inner.var-02,
[class^="str-outer"].var-02 > .str-inner.var-03,
[class^="str-outer"].var-03 > .str-inner.var-02,
[class^="str-outer"].var-03 > .str-inner.var-03 {
  background: red !important;
}

/* ------------------------------------
 * .str-outer-full 全幅コンテンツエリア
 * --------------------------------- */
.str-outer-full {
  padding: 0;
}

.str-outer-full .str-inner {
  max-width: none;
}

/* ----------------------------------------------------------------------------
 * .str-inner モジュールを受け入れるストラクチャ
 * ------------------------------------------------------------------------- */
.str-inner {
  max-width: 960px;
  margin: 0 auto;
}

.str-inner.var-02,
.str-inner.var-03 {
  padding-right: 12px;
  padding-left: 12px;
}

.str-inner.var-02 > *:first-child,
.str-inner.var-03 > *:first-child {
  margin-top: 0;
}

.str-inner.var-02 > *:last-child,
.str-inner.var-03 > *:last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------------------
 * .str-pnl 導線ストラクチャ
 * ------------------------------------------------------------------------- */
.str-pnl {
  background: #f5f9ec;
  padding: 61px 12px 60px;
}

.str-pnl[data-col] > .str-inner > .wrap > .col.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.str-pnl[data-col] > .str-inner > .wrap > .col.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.str-pnl[data-col="auto"] > .str-inner > .wrap > .col {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.str-pnl[data-col="2"] > .str-inner > .wrap > .col {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.str-pnl[data-col="3"] > .str-inner > .wrap > .col {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.str-pnl[data-col="4"] > .str-inner > .wrap > .col {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.str-pnl[data-col="5"] > .str-inner > .wrap > .col {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.str-pnl[data-col="6"] > .str-inner > .wrap > .col {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.str-pnl > .str-inner {
  overflow: hidden;
}

.str-pnl > .str-inner > .wrap {
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: calc(100% + 1px);
  margin: -1px 0 0 -1px;
  padding: 0;
}

.str-pnl > .str-inner > .wrap > .col {
  font-size: 1.4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
}

.str-pnl > .str-inner > .wrap > .col > .pnl {
  text-decoration: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 100%;
  padding: 1px 0 0 1px;
}

.str-pnl > .str-inner > .wrap > .col > .pnl > .img {
  text-align: center;
  min-height: calc(0%);
}

.str-pnl > .str-inner > .wrap > .col > .pnl > .img img {
  width: 100%;
}

.str-pnl > .str-inner > .wrap > .col > .pnl > .txt {
  position: relative;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 0 45px 0 31px;
}

.str-pnl > .str-inner > .wrap > .col > a.pnl > .txt::before,
.str-pnl > .str-inner > .wrap > .col > a.pnl > .txt::after {
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  display: block;
  margin: auto 0;
  content: "";
}

.str-pnl > .str-inner > .wrap > .col > a.pnl > .txt::before {
  background: #31b552;
  right: 0;
  width: 18px;
  height: 18px;
}

.str-pnl > .str-inner > .wrap > .col > a.pnl > .txt::after {
  right: 7px;
  width: 6px;
  height: 6px;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 1px solid #fff;
  border-width: 1px 1px 0 0;
}

.str-pnl > .str-inner > .wrap > .col p {
  line-height: 1.42857;
  margin: 19px 0 20px;
}

.str-pnl > .str-inner > .wrap > .col p b {
  display: block;
  margin: 19px 0 6px;
}

.str-pnl.var-02 > .str-inner > .wrap > .col > a.pnl > .txt {
  padding: 0 31px;
}

.str-pnl.var-02 > .str-inner > .wrap > .col > a.pnl > .txt::before,
.str-pnl.var-02 > .str-inner > .wrap > .col > a.pnl > .txt::after {
  display: none;
}

.str-pnl.var-02 > .str-inner > .wrap > .col > a.pnl > .txt p b.title::after {
  position: relative;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 0 2px 3px;
  content: "";
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: solid #31b552;
  border-width: 2px 2px 0 0;
}

/* ----------------------------------------------------------------------------
 * .str-replaceNavigationWithMainvisual ローカルナビとメインビジュアルを置き換えるストラクチャ
 * ------------------------------------------------------------------------- */
.str-replaceNavigationWithMainvisual {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  margin: 0 0 54px;
}

.str-replaceNavigationWithMainvisual > * {
  min-height: calc(0%);
  margin: 0;
}

/* ----------------------------------------------------------------------------
 * .str-box-contact お問い合わせボックス
 * ------------------------------------------------------------------------- */
.str-box-contact {
  margin: 60px 0;
  padding: 0 12px;
}

.str-box-contact .wrap {
  text-align: center;
  background: #f0f1f2;
  width: auto;
  padding: 31px 12px 39px;
}

.str-box-contact .hdg {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 0 4px;
}

.str-box-contact .tel {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 17px 0 10px;
}

.str-box-contact .tel > p {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.str-box-contact .tel .title {
  display: block;
}

.str-box-contact .tel .freedial {
  margin: 0 6px 0 0;
}

.str-box-contact .tel .freedial img {
  vertical-align: middle;
  width: auto;
  height: 26px;
}

.str-box-contact .tel .number {
  font-size: 2rem;
  letter-spacing: 1.6px;
}

.str-box-contact .time {
  font-size: 1rem;
}

/* ============================================================================
 * nav-* ナビゲーションコンポーネント
 * ========================================================================= */
/* ============================================================================
 * _main メインコンテンツエリアのナビゲーション
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .nav-local ローカルナビ
 * ------------------------------------------------------------------------- */
.nav-local a,
.nav-local b {
  font-size: 1.2rem;
  text-decoration: none;
  text-align: left;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 16px;
}

.nav-local a br,
.nav-local b br {
  display: none;
}

.nav-local a {
  position: relative;
}

.nav-local a:link,
.nav-local a:visited,
.nav-local a:active,
.nav-local a:focus {
  text-decoration: none;
}

.nav-local a:focus {
  outline: 1px dotted #fff;
  outline: -webkit-focus-ring-color auto 5px;
}

.nav-local a > span::after {
  position: absolute;
  top: 0;
  right: 22px;
  bottom: 0;
  display: block;
  width: 8px;
  height: 8px;
  margin: auto 0;
  content: "";
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: solid #13449d;
  border-width: 2px 2px 0 0;
}

.nav-local b {
  font-weight: normal;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
}

.nav-local > .inner {
  background: #fff;
  position: relative;
}

.nav-local > .inner > .hdg {
  font-size: 1.2rem;
  line-height: 40px;
  text-align: center;
  color: #fff;
  background: #13449d url("/reform/shared/img/nav/local-icn.png") no-repeat right -40px;
  background-size: 25px 80px;
  display: block;
}

.nav-local > .inner > .list {
  text-align: left;
  max-width: 960px;
  margin: 0 auto;
  -webkit-box-shadow: 0 3px 6px #999;
          box-shadow: 0 3px 6px #999;
}

.nav-local > .inner > .list li {
  margin: -1px 0 0;
  border: solid #eaeaea 1px;
}

.nav-local > .inner > .list li:first-child {
  border-top-width: 2px;
}

.nav-local > .inner > .list li a::after,
.nav-local > .inner > .list li b::after {
  display: block;
  min-height: 36px;
  content: "";
}

.nav-local > .inner > .list li a .break-word,
.nav-local > .inner > .list li b .break-word {
  display: inline-block;
}

.nav-local > .inner > .list li:last-child a span {
  border: 0;
}

.nav-local > .inner > .list li > .list li {
  border-right: 0;
  border-bottom: solid #eaeaea 1px;
  border-left: 0;
}

.nav-local > .inner > .list li > .list li a {
  padding: 0 16px 0 32px;
}

.nav-local > .inner > .list li > .list li:last-child {
  border-bottom: 0;
}

html[data-script-enabled="true"] .nav-local > .inner > .hdg:not([aria-expanded="true"]) {
  background-image: url("/reform/shared/img/nav/local-icn.png");
  background-position-y: 0;
  background-size: 25px 80px;
}

html[data-script-enabled="true"] .nav-local > .inner > .hdg:not([aria-expanded="true"]) + .list {
  display: none;
}

html[data-script-enabled="true"] .nav-local > .inner > .list {
  background: #fff;
  position: absolute;
  z-index: 1;
  top: 100%;
  right: 0;
  left: 0;
  overflow: auto;
  width: 100%;
  max-height: calc(100vh - 128px);
  -webkit-transition: .2s height ease-out;
  -o-transition: .2s height ease-out;
  transition: .2s height ease-out;
  -webkit-overflow-scrolling: touch;
}

html[data-script-enabled="true"] .nav-local > .inner > .list > li > b {
  position: relative;
  padding-right: 5px;
  cursor: default;
}

html[data-script-enabled="true"] .nav-local > .inner > .list > li > b + .list {
  display: none;
  overflow: hidden;
  -webkit-transition: .2s height ease-out;
  -o-transition: .2s height ease-out;
  transition: .2s height ease-out;
}

html[data-script-enabled="true"] .nav-local > .inner > .list > li > b span:not(.break-word) {
  display: block;
  cursor: inherit;
}

html[data-script-enabled="true"] .nav-local > .inner > .list > li > b span:not(.break-word)::before,
html[data-script-enabled="true"] .nav-local > .inner > .list > li > b span:not(.break-word)::after {
  background: #13449d;
  position: absolute;
  top: 0;
  right: 17px;
  bottom: 0;
  display: block;
  width: 16px;
  height: 2px;
  margin: auto 0;
  content: "";
}

html[data-script-enabled="true"] .nav-local > .inner > .list > li > b span:not(.break-word)::after {
  -webkit-transition: .2s transform ease-out;
  -o-transition: .2s transform ease-out;
  transition: .2s transform ease-out;
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}

html[data-script-enabled="true"] .nav-local > .inner > .list > li > b[aria-expanded="true"] + .list {
  display: block;
}

html[data-script-enabled="true"] .nav-local > .inner > .list > li > b[aria-expanded="true"] > span {
  font-weight: bold;
  color: #13449d;
}

html[data-script-enabled="true"] .nav-local > .inner > .list > li > b[aria-expanded="true"] > span::after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}

/* ----------------------------------------------------------------------------
 * .nav-local-02 ローカルナビ02
 * ------------------------------------------------------------------------- */
.nav-local-02 {
  margin: 0 0 79px;
}

.nav-local-02[data-col] > .inner > .list > li.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.nav-local-02[data-col] > .inner > .list > li.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.nav-local-02[data-col="auto"] > .inner > .list > li {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.nav-local-02[data-col="2"] > .inner > .list > li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.nav-local-02[data-col="3"] > .inner > .list > li {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.nav-local-02[data-col="4"] > .inner > .list > li {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.nav-local-02[data-col="5"] > .inner > .list > li {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.nav-local-02[data-col="6"] > .inner > .list > li {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.nav-local-02 > .inner {
  font-size: 1.4rem;
  background: #f0f1f2;
  padding: 20px;
  border-radius: 6px;
}

.nav-local-02 > .inner > .hdg {
  font-size: 1.8rem;
  font-weight: bold;
  overflow: hidden;
  margin: 0 0 20px;
}

.nav-local-02 > .inner > .list > li {
  margin: 0;
}

.nav-local-02 > .inner > .list > li + li {
  margin-top: 2px;
}

.nav-local-02 > .inner > .list a {
  text-decoration: none;
  text-align: center;
  background: #fff;
  display: block;
  padding: 15px;
}

.nav-local-02 > .inner > .list a:not([href])[aria-current="page"] {
  font-weight: bold;
  color: #fff;
  background: #9fd038;
}

.nav-local-02[data-col] > .inner > .list > li {
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
}

/* ----------------------------------------------------------------------------
 * .nav-toc 目次
 * ------------------------------------------------------------------------- */
.nav-toc {
  font-size: 1.6rem;
  background: #f0f1f2;
  max-width: 500px;
  margin: 0 0 60px;
  padding: 25px 29px 17px;
}

.nav-toc ol.list > li > a {
  text-decoration: none;
  display: table;
}

.nav-toc ol.list > li > a::before {
  text-align: right;
  padding: 0 6px 0 0;
}

.nav-toc ol.list > li > a::before,
.nav-toc ol.list > li > a > span {
  display: table-cell;
}

.nav-toc ol ol.list {
  margin: 4px 0 0 0;
}

.nav-toc ol ol.list > li:not(:last-child) > a {
  margin: 0 0 3px;
}

.nav-toc > ol.list {
  counter-reset: nav-toc-1;
}

.nav-toc > ol.list > li > a {
  margin-bottom: 4px;
}

.nav-toc > ol.list > li > a::before {
  font-weight: bold;
  content: counter(nav-toc-1) ".";
  counter-increment: nav-toc-1;
}

.nav-toc > ol.list > li > *:first-child {
  font-weight: bold;
}

.nav-toc > ol.list > li > ol.list {
  margin-bottom: 7px;
  margin-left: 15px;
  counter-reset: nav-toc-2;
}

.nav-toc > ol.list > li > ol.list > li > a::before {
  content: counter(nav-toc-1) "-" counter(nav-toc-2) ".";
  counter-increment: nav-toc-2;
}

.nav-toc > ol.list > li > ol.list > li > ol.list {
  margin-top: 3px;
  margin-bottom: 3px;
  margin-left: 30px;
  counter-reset: nav-toc-3;
}

.nav-toc > ol.list > li > ol.list > li > ol.list > li > a::before {
  content: counter(nav-toc-1) "-" counter(nav-toc-2) "-" counter(nav-toc-3) ".";
  counter-increment: nav-toc-3;
}

/* ============================================================================
 * _side サイドナビ
 * ========================================================================= */
/* ============================================================================
 * _module
 * ========================================================================= */
[class^="mod-"][id^="anc-"] {
  background: #f00 !important;
}

.mod-hdg-al3type2.of-hasBtn > .btn button,
.mod-btn-addFavorite > .btn button,
.mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-favoriteBtn .func-btn {
  font-size: 1rem;
  background: #fff;
  position: relative;
  display: block;
  padding: 3px 7px 3px 25px;
  border: 1px solid #aaa;
  border-radius: 3px;
}

.mod-hdg-al3type2.of-hasBtn > .btn button::before,
.mod-btn-addFavorite > .btn button::before,
.mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-favoriteBtn .func-btn::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -88px -140px;
  background-size: 180px 153px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 7px;
  display: block;
  width: 12px;
  height: 10.5px;
  margin: auto 0;
  content: "";
}

.mod-hdg-al3type2.of-hasBtn > .btn button[data-is-favorited="true"]::before,
.mod-btn-addFavorite > .btn button[data-is-favorited="true"]::before,
.mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-favoriteBtn .func-btn[data-is-favorited="true"]::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -105px -140px;
  background-size: 180px 153px;
  width: 12px;
  height: 10.5px;
}

.mod-box-reformPoint > .inner > .title,
.mod-media-beforeAfter > .inner > * > .box > .title {
  font-weight: bold;
}

.mod-box-reformPoint > .inner > .title > span,
.mod-media-beforeAfter > .inner > * > .box > .title > span {
  background: transparent url("/reform/shared/img/bg/dotline.png") 3px bottom repeat-x;
  background-size: 6px 3px;
  position: relative;
}

.mod-box-reformPoint > .inner > .title > span::before,
.mod-media-beforeAfter > .inner > * > .box > .title > span::before {
  position: absolute;
  display: block;
  content: "";
}

/* ============================================================================
 * _txt modules
 * ========================================================================= */
[class^="mod-txt"] > p,
[class^="mod-txt"] > pre {
  font-family: inherit;
  margin: 0;
}

[class^="mod-txt"] > p a {
  text-decoration: underline;
  color: #414141;
}

[class^="mod-txt"] > p a:hover,
[class^="mod-txt"] > p a:focus {
  color: #808080;
}

[class^="mod-txt"] > p a.var-02 {
  color: #ff5757;
}

[class^="mod-txt"] strong {
  color: #ff5757;
}

[class^="mod-txt"] pre {
  white-space: pre-wrap;
}

/* ----------------------------------------------------------------------------
 * .mod-txt
 * ------------------------------------------------------------------------- */
.mod-txt {
  margin: 22px 0 30px;
}

.mod-txt > p b.lede {
  font-size: 1.6rem;
  display: block;
  margin: 0 0 8px;
}

.mod-txt pre {
  white-space: pre-wrap;
}

.mod-txt + .mod-txt {
  margin-top: -16px;
}

/* ----------------------------------------------------------------------------
 * .mod-txt-introduction
 * ------------------------------------------------------------------------- */
.mod-txt-introduction {
  font-size: 2rem;
  margin: 0 0 70px;
}

/* ============================================================================
 * _hdg modules
 * ========================================================================= */
[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;
}

/* ----------------------------------------------------------------------------
 * .mod-hdg 汎用見出し
 * ------------------------------------------------------------------------- */
.mod-hdg {
  font-size: 1.8rem;
  font-weight: bold;
  overflow: hidden;
  margin: 0 0 20px;
}

.mod-hdg > * > span > span.label {
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  background: #9fd038;
  position: relative;
  top: -2px;
  display: inline-block;
  margin: 0 0 0 11px;
  padding: 5px 16px;
}

/* ----------------------------------------------------------------------------
 * .mod-hdg-al2 見出しレベル2（A）
 * ------------------------------------------------------------------------- */
[class^="mod-hdg-al"] {
  font-weight: bold;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

[class^="mod-hdg-al"] > * {
  width: 100%;
}

[class^="mod-hdg-al"] > * > * {
  display: block;
}

[class^="mod-hdg-al"] > * > * + * {
  margin-top: 3px;
}

[class^="mod-hdg-al"] > * > span:not(:last-child) {
  font-weight: normal;
}

[class^="mod-hdg-al"] > * > strong {
  font-weight: bold;
  color: inherit;
}

/* ------------------------------------
 * .mod-hdg-al2 見出しレベル2（A）
 * --------------------------------- */
.mod-hdg-al2 {
  font-size: 2.2rem;
  margin: 60px 0 40px;
}

.mod-hdg-al2 > * > span:not(:last-child) {
  font-size: 1.8rem;
}

/* ------------------------------------
 * .mod-hdg-al3 見出しレベル3（A）
 * --------------------------------- */
.mod-hdg-al3 {
  font-size: 1.8rem;
  margin: 60px 0 30px;
}

.mod-hdg-al3 > *:last-child {
  padding-bottom: 4px;
  border-bottom: 4px solid #505050;
}

/* ----------------------------------------------------------------------------
 * .mod-hdg-al3type2 見出しレベル3（B 434のデザインで登場したパーツ）
 * ------------------------------------------------------------------------- */
.mod-hdg-al3type2 {
  font-size: 1.5rem;
  margin: 30px 0 13px;
}

.mod-hdg-al3type2 > *:last-child {
  padding-bottom: 2px;
  border-bottom: 2px solid #9cc715;
}

.mod-hdg-al3type2.of-hasBtn {
  margin-bottom: 0;
}

.mod-hdg-al3type2.of-hasBtn > *:first-child {
  padding-bottom: 2px;
  border-bottom: 2px solid #9cc715;
}

.mod-hdg-al3type2.of-hasBtn > *:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.mod-hdg-al3type2.of-hasBtn > .btn {
  overflow: hidden;
  margin-top: 13px;
}

.mod-hdg-al3type2.of-hasBtn > .btn button {
  float: right;
}

/* ------------------------------------
 * .mod-hdg-al4 見出しレベル4（A）
 * --------------------------------- */
.mod-hdg-al4 {
  font-size: 1.6rem;
  margin: 40px 0 30px;
}

.mod-hdg-al4 > *:last-child {
  padding-bottom: 9px;
  border-bottom: 2px solid #505050;
}

.mod-hdg-al4.var-02 > *:last-child {
  border-bottom-color: #9cc715;
}

/* ------------------------------------
 * .mod-hdg-al5 見出しレベル5（A）
 * --------------------------------- */
.mod-hdg-al5 {
  font-size: 1.6rem;
  margin: 40px 0 30px;
}

.mod-hdg-al5 > *:last-child {
  padding-bottom: 9px;
  border-bottom: 1px solid #ccc;
}

/* ----------------------------------------------------------------------------
 * .mod-hdg-bl2 見出しレベル2（B）
 * ------------------------------------------------------------------------- */
.mod-hdg-bl2 {
  font-size: 2.6rem;
  font-weight: bold;
  margin: 60px 0 40px;
}

/* ----------------------------------------------------------------------------
 * .mod-hdg-bl3 見出しレベル3（B）
 * ------------------------------------------------------------------------- */
.mod-hdg-bl3 {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: left;
  margin: 40px 0 30px;
  padding: 5px 0 5px 12px;
  border-left: 6px solid #505050;
}

/* ----------------------------------------------------------------------------
 * .mod-hdg-bl3type2 見出しレベル3（B 434のデザインで登場したパーツ）
 * ------------------------------------------------------------------------- */
.mod-hdg-bl3type2 {
  font-size: 1.4rem;
  font-weight: bold;
  margin: 0 0 27px;
  padding: 11px 0 0 0;
}

.mod-hdg-bl3type2 > * span {
  position: relative;
  padding: 0 0 0 10px;
}

.mod-hdg-bl3type2 > * span::before {
  background: #9cc715;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 4px;
  height: 80%;
  margin: auto 0;
  content: "";
}

/* ----------------------------------------------------------------------------
 * .mod-hdg-bl4 見出しレベル4（B）
 * ------------------------------------------------------------------------- */
.mod-hdg-bl4 {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 40px 0 30px;
  padding: 0 0 9px;
  border-bottom: 2px solid #505050;
}

/* ----------------------------------------------------------------------------
 * .mod-hdg-bl5 見出しレベル5（B）
 * ------------------------------------------------------------------------- */
.mod-hdg-bl5 {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 40px 0 30px;
  padding: 0 0 9px;
  border-bottom: 1px solid #ccc;
}

/* ----------------------------------------------------------------------------
 * .mod-hdg-balloon 吹き出しつき見出し
 * ------------------------------------------------------------------------- */
.mod-hdg-balloon {
  margin: 30px 0 20px;
}

.mod-hdg-balloon > *:first-child {
  font-size: 1.2rem;
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.mod-hdg-balloon > *:first-child span {
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 70px;
  min-height: 70px;
  border-radius: 200px;
}

.mod-hdg-balloon > .content {
  background: #f5f9ec;
  position: relative;
  z-index: 0;
  clear: both;
  margin: -30px 0 0 0;
  padding: 33px 23px 15px;
  border-radius: 6px;
}

.mod-hdg-balloon > .content > *:first-child {
  margin-top: 0;
}

.mod-hdg-balloon > .content > *:last-child {
  margin-bottom: 0;
}

.mod-hdg-balloon.of-before > *:first-child span {
  background: #e6e6e6;
}

.mod-hdg-balloon.of-after > *:first-child span {
  color: #fff;
  background: #505050;
}

/* ----------------------------------------------------------------------------
 * .mod-hdg-checkmark チェックマークつき見出し
 * ------------------------------------------------------------------------- */
.mod-hdg-checkmark {
  margin: 40px 0 30px;
}

.mod-hdg-checkmark > *:first-child {
  font-size: 1.8rem;
}

.mod-hdg-checkmark > *:first-child > span {
  font-weight: bold;
  position: relative;
  display: block;
  padding-left: 34px;
}

.mod-hdg-checkmark > *:first-child > span::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -68px -82px;
  background-size: 180px 153px;
  position: absolute;
  top: 3px;
  left: 0;
  display: block;
  width: 29px;
  height: 25px;
  content: "";
}

/* ============================================================================
 * _btn modules
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * 共通スタイル
 * ------------------------------------------------------------------------- */
.mod-btn,
.mod-btn-02,
.mod-btn-03 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 50px 0 80px;
}

.mod-btn[data-col] > .btn.of-full,
.mod-btn-02[data-col] > .btn.of-full,
.mod-btn-03[data-col] > .btn.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-btn[data-col] > .btn.of-fillIn,
.mod-btn-02[data-col] > .btn.of-fillIn,
.mod-btn-03[data-col] > .btn.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-btn[data-col="auto"] > .btn,
.mod-btn-02[data-col="auto"] > .btn,
.mod-btn-03[data-col="auto"] > .btn {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-btn[data-col="2"] > .btn,
.mod-btn-02[data-col="2"] > .btn,
.mod-btn-03[data-col="2"] > .btn {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-btn[data-col="3"] > .btn,
.mod-btn-02[data-col="3"] > .btn,
.mod-btn-03[data-col="3"] > .btn {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-btn[data-col="4"] > .btn,
.mod-btn-02[data-col="4"] > .btn,
.mod-btn-03[data-col="4"] > .btn {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-btn[data-col="5"] > .btn,
.mod-btn-02[data-col="5"] > .btn,
.mod-btn-03[data-col="5"] > .btn {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-btn[data-col="6"] > .btn,
.mod-btn-02[data-col="6"] > .btn,
.mod-btn-03[data-col="6"] > .btn {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-btn a,
.mod-btn button[type],
.mod-btn-02 a,
.mod-btn-02 button[type],
.mod-btn-03 a,
.mod-btn-03 button[type] {
  font-size: 1.6rem;
  line-height: 1;
  text-align: center;
  vertical-align: middle;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mod-btn a:focus,
.mod-btn button[type]:focus,
.mod-btn-02 a:focus,
.mod-btn-02 button[type]:focus,
.mod-btn-03 a:focus,
.mod-btn-03 button[type]:focus {
  outline: 1px dashed #333;
  outline: -webkit-focus-ring-color auto 5px;
}

.mod-btn a:link,
.mod-btn a:visited,
.mod-btn a:active,
.mod-btn a:focus,
.mod-btn-02 a:link,
.mod-btn-02 a:visited,
.mod-btn-02 a:active,
.mod-btn-02 a:focus,
.mod-btn-03 a:link,
.mod-btn-03 a:visited,
.mod-btn-03 a:active,
.mod-btn-03 a:focus {
  text-decoration: none;
}

.mod-btn a:not([href]):not([role="button"]),
.mod-btn a[role="button"][aria-disabled="true"],
.mod-btn button:disabled,
.mod-btn-02 a:not([href]):not([role="button"]),
.mod-btn-02 a[role="button"][aria-disabled="true"],
.mod-btn-02 button:disabled,
.mod-btn-03 a:not([href]):not([role="button"]),
.mod-btn-03 a[role="button"][aria-disabled="true"],
.mod-btn-03 button:disabled {
  opacity: .4;
}

.mod-btn > .btn,
.mod-btn-02 > .btn,
.mod-btn-03 > .btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}

.mod-btn > .btn > span:first-child,
.mod-btn-02 > .btn > span:first-child,
.mod-btn-03 > .btn > span:first-child {
  padding-right: 12px;
}

.mod-btn > .btn.of-full,
.mod-btn-02 > .btn.of-full,
.mod-btn-03 > .btn.of-full {
  width: 100%;
  max-width: 100%;
}

.mod-btn > .btn.of-full a,
.mod-btn > .btn.of-full button[type],
.mod-btn-02 > .btn.of-full a,
.mod-btn-02 > .btn.of-full button[type],
.mod-btn-03 > .btn.of-full a,
.mod-btn-03 > .btn.of-full button[type] {
  width: 100%;
}

.mod-btn:not([data-col]) > .btn + .btn,
.mod-btn-02:not([data-col]) > .btn + .btn,
.mod-btn-03:not([data-col]) > .btn + .btn {
  margin-top: 20px;
}

.mod-btn:not([data-col]).align-left,
.mod-btn-02:not([data-col]).align-left,
.mod-btn-03:not([data-col]).align-left {
  -webkit-box-align: start !important;
  -webkit-align-items: flex-start !important;
      -ms-flex-align: start !important;
          align-items: flex-start !important;
  -webkit-box-pack: start !important;
  -webkit-justify-content: flex-start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.mod-btn:not([data-col]).align-left > .btn,
.mod-btn-02:not([data-col]).align-left > .btn,
.mod-btn-03:not([data-col]).align-left > .btn {
  -webkit-box-pack: start !important;
  -webkit-justify-content: flex-start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.mod-btn:not([data-col]).align-right,
.mod-btn-02:not([data-col]).align-right,
.mod-btn-03:not([data-col]).align-right {
  -webkit-box-align: end !important;
  -webkit-align-items: flex-end !important;
      -ms-flex-align: end !important;
          align-items: flex-end !important;
  -webkit-box-pack: end !important;
  -webkit-justify-content: flex-end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}

.mod-btn:not([data-col]).align-right > .btn,
.mod-btn-02:not([data-col]).align-right > .btn,
.mod-btn-03:not([data-col]).align-right > .btn {
  -webkit-box-pack: end !important;
  -webkit-justify-content: flex-end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}

.mod-btn[data-col],
.mod-btn-02[data-col],
.mod-btn-03[data-col] {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin-top: -24px;
  margin-left: -24px;
}

.mod-btn[data-col] > .btn,
.mod-btn-02[data-col] > .btn,
.mod-btn-03[data-col] > .btn {
  padding: 24px 0 0 24px;
}

.mod-btn[data-col] > .btn:not(:last-child),
.mod-btn-02[data-col] > .btn:not(:last-child),
.mod-btn-03[data-col] > .btn:not(:last-child) {
  margin: 0;
}

.mod-btn[data-col] > .btn.of-full,
.mod-btn-02[data-col] > .btn.of-full,
.mod-btn-03[data-col] > .btn.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
}

.mod-btn[data-col] > .btn a,
.mod-btn[data-col] > .btn button[type],
.mod-btn-02[data-col] > .btn a,
.mod-btn-02[data-col] > .btn button[type],
.mod-btn-03[data-col] > .btn a,
.mod-btn-03[data-col] > .btn button[type] {
  min-width: 0;
}

.mod-btn[data-col][data-col="1"] > .btn a,
.mod-btn[data-col][data-col="1"] > .btn button[type],
.mod-btn-02[data-col][data-col="1"] > .btn a,
.mod-btn-02[data-col][data-col="1"] > .btn button[type],
.mod-btn-03[data-col][data-col="1"] > .btn a,
.mod-btn-03[data-col][data-col="1"] > .btn button[type] {
  width: 100%;
}

.mod-btn[data-col].align-left,
.mod-btn-02[data-col].align-left,
.mod-btn-03[data-col].align-left {
  -webkit-box-pack: start !important;
  -webkit-justify-content: flex-start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.mod-btn[data-col].align-left > .btn,
.mod-btn-02[data-col].align-left > .btn,
.mod-btn-03[data-col].align-left > .btn {
  -webkit-box-pack: start !important;
  -webkit-justify-content: flex-start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.mod-btn[data-col].align-right,
.mod-btn-02[data-col].align-right,
.mod-btn-03[data-col].align-right {
  -webkit-box-pack: end !important;
  -webkit-justify-content: flex-end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}

.mod-btn[data-col].align-right > .btn,
.mod-btn-02[data-col].align-right > .btn,
.mod-btn-03[data-col].align-right > .btn {
  -webkit-box-pack: start !important;
  -webkit-justify-content: flex-start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.mod-btn[data-col="auto"] > .btn a,
.mod-btn[data-col="auto"] > .btn button[type],
.mod-btn-02[data-col="auto"] > .btn a,
.mod-btn-02[data-col="auto"] > .btn button[type],
.mod-btn-03[data-col="auto"] > .btn a,
.mod-btn-03[data-col="auto"] > .btn button[type] {
  width: auto;
}

/* ----------------------------------------------------------------------------
 * .mod-btn 汎用ボタン
 * ------------------------------------------------------------------------- */
.mod-btn > .btn.var-02 > button[type] {
  font-size: 1.4rem;
  background: #43af35;
  width: 208px;
  padding: 9px 27px 7px;
  border-radius: 4px;
}

.mod-btn > .btn.var-02 > button[type]::after {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  border-width: 5px 0 5px 10px;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
}

.mod-btn a[href],
.mod-btn a:not([href]),
.mod-btn button[type] {
  font-weight: bold;
  color: #fff;
  background: #505050;
  width: 280px;
  max-width: 100%;
  padding: 16px 27px;
}

.mod-btn a[href]::after,
.mod-btn a:not([href])::after,
.mod-btn button[type]::after {
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  display: block;
  width: 6px;
  height: 6px;
  margin: auto 0;
  content: "";
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 1px solid #fff;
  border-width: 1px 1px 0 0;
}

.mod-btn[data-col="auto"] > .btn a,
.mod-btn[data-col="auto"] > .btn button[type] {
  min-width: 200px;
}

/* ----------------------------------------------------------------------------
 * .mod-btn-02 低優先ボタン
 * ------------------------------------------------------------------------- */
.mod-btn-02 > .btn a[href],
.mod-btn-02 > .btn a:not([href]),
.mod-btn-02 > .btn button[type] {
  font-size: 1.4rem;
  background: transparent;
  position: relative;
  padding: 11px 27px 10px 11px;
  border: 1px solid #505050;
}

.mod-btn-02 > .btn a[href]::before,
.mod-btn-02 > .btn a[href]::after,
.mod-btn-02 > .btn a:not([href])::before,
.mod-btn-02 > .btn a:not([href])::after,
.mod-btn-02 > .btn button[type]::before,
.mod-btn-02 > .btn button[type]::after {
  position: absolute;
  top: 0;
  bottom: 0;
  display: block;
  width: 6px;
  height: 6px;
  margin: auto 0;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 1px solid #505050;
}

.mod-btn-02 > .btn a[href]::after,
.mod-btn-02 > .btn a:not([href])::after,
.mod-btn-02 > .btn button[type]::after {
  right: 10px;
  content: "";
  border-width: 1px 1px 0 0;
}

.mod-btn-02 > .btn.of-simple > a,
.mod-btn-02 > .btn.of-simple > button {
  padding-right: 11px;
}

.mod-btn-02 > .btn.of-simple > a::after,
.mod-btn-02 > .btn.of-simple > button::after {
  display: none;
}

.mod-btn-02 > .btn.of-delete > a,
.mod-btn-02 > .btn.of-delete > button {
  padding-right: 11px;
  padding-left: 32px;
}

.mod-btn-02 > .btn.of-delete > a::before,
.mod-btn-02 > .btn.of-delete > a::after,
.mod-btn-02 > .btn.of-delete > button::before,
.mod-btn-02 > .btn.of-delete > button::after {
  background: #505050;
  left: 10px;
  display: block;
  width: 15px;
  height: 1px;
  content: "";
  border: 0;
}

.mod-btn-02 > .btn.of-delete > a::after,
.mod-btn-02 > .btn.of-delete > button::after {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.mod-btn-02 > .btn.of-return > a,
.mod-btn-02 > .btn.of-return > button {
  padding-right: 11px;
  padding-left: 27px;
}

.mod-btn-02 > .btn.of-return > a::before,
.mod-btn-02 > .btn.of-return > button::before {
  left: 10px;
  content: "";
  border-width: 0 0 1px 1px;
}

.mod-btn-02 > .btn.of-return > a::after,
.mod-btn-02 > .btn.of-return > button::after {
  display: none;
}

/* ----------------------------------------------------------------------------
 * .mod-btn-03 ボタン
 * ------------------------------------------------------------------------- */
.mod-btn-03 {
  margin: 15px 0 17px;
}

.mod-btn-03 > .btn > a,
.mod-btn-03 > .btn > button {
  font-size: 1.2rem;
  line-height: 1.58333;
  text-align: left;
  position: relative;
  padding: 9px 37px 8px 11px;
  border: 1px solid #aaa;
  border-radius: 6px;
}

.mod-btn-03 > .btn > a::after,
.mod-btn-03 > .btn > button::after {
  position: absolute;
  top: 0;
  right: 12px;
  bottom: 4px;
  width: 11px;
  height: 11px;
  margin: auto 0;
  content: "";
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 2px solid #9cc715;
  border-width: 0 2px 2px 0;
}

.mod-btn-addFavorite > .btn {
  overflow: hidden;
}

.mod-btn-addFavorite > .btn button {
  float: right;
}

/* ============================================================================
 * _link modules
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .mod-link
 * ------------------------------------------------------------------------- */
.mod-link {
  margin: 0 0 30px;
}

.mod-link > a {
  display: inline-block;
}

.mod-link > a:link,
.mod-link > a:visited,
.mod-link > a:active,
.mod-link > a:focus {
  text-decoration: none;
}

.mod-link > a::after {
  position: relative;
  top: 0;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 5px 0 6px;
  content: "";
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 2px solid #30b653;
  border-width: 2px 2px 0 0;
}

.mod-link > a[href^="#anc-"]::after {
  top: -3px;
  margin-left: 8px;
  border-width: 0 2px 2px 0;
}

/* ----------------------------------------------------------------------------
 * .mod-link-02
 * ------------------------------------------------------------------------- */
.mod-link-02 {
  font-size: 1.3rem;
  margin: 0 0 17px;
}

.mod-link-02 a {
  position: relative;
  padding-right: 17px;
}

.mod-link-02 a::after {
  position: absolute;
  top: 1px;
  right: -7px;
  bottom: 0;
  display: block;
  width: 0;
  height: 0;
  margin: auto 0;
  content: "";
  border: 1px solid transparent;
  border-width: 6px 8px;
  border-left-color: #43af35;
}

/* ----------------------------------------------------------------------------
 * .mod-link-list リンクリスト
 * ------------------------------------------------------------------------- */
.mod-link-list {
  margin: 0 0 30px;
}

.mod-link-list[data-col] > .list > li.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-link-list[data-col] > .list > li.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-link-list[data-col="auto"] > .list > li {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-link-list[data-col="2"] > .list > li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-link-list[data-col="3"] > .list > li {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-link-list[data-col="4"] > .list > li {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-link-list[data-col="5"] > .list > li {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-link-list[data-col="6"] > .list > li {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-link-list > .list > li > a {
  display: inline-block;
}

.mod-link-list > .list > li > a:link,
.mod-link-list > .list > li > a:visited,
.mod-link-list > .list > li > a:active,
.mod-link-list > .list > li > a:focus {
  text-decoration: none;
}

.mod-link-list > .list > li > a::after {
  position: relative;
  top: 0;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 5px 0 6px;
  content: "";
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 2px solid #30b653;
  border-width: 2px 2px 0 0;
}

.mod-link-list > .list > li > a[href^="#anc-"]::after {
  top: -3px;
  margin-left: 8px;
  border-width: 0 2px 2px 0;
}

.mod-link-list[data-col] > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -7px 0 0 -14px;
}

.mod-link-list[data-col] > .list > li {
  padding: 7px 0 0 14px;
}

/* ----------------------------------------------------------------------------
 * .mod-link-list02 リンクリスト
 * ------------------------------------------------------------------------- */
.mod-link-list02 {
  margin: 0 0 30px;
}

.mod-link-list02[data-col] > .list > li.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-link-list02[data-col] > .list > li.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-link-list02[data-col="auto"] > .list > li {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-link-list02[data-col="2"] > .list > li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-link-list02[data-col="3"] > .list > li {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-link-list02[data-col="4"] > .list > li {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-link-list02[data-col="5"] > .list > li {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-link-list02[data-col="6"] > .list > li {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-link-list02 > .list {
  margin: -15px 0 0 -14px;
}

.mod-link-list02 > .list > li {
  padding: 15px 0 0 14px;
}

.mod-link-list02 > .list > li > a {
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  background: #fff;
  position: relative;
  display: block;
  padding: 10px 0;
  border: 1px solid #000;
  border-radius: 5px;
}

.mod-link-list02 > .list > li > a::after {
  position: absolute;
  top: 0;
  right: 4px;
  bottom: 0;
  display: block;
  width: 0;
  height: 0;
  margin: auto 0;
  content: "";
  border: 1px solid transparent;
  border-width: 5px 7px;
  border-left-color: #43af35;
}

.mod-link-list02[data-col] > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

/* ----------------------------------------------------------------------------
 * .mod-link-anchor ページ内リンク
 * ------------------------------------------------------------------------- */
.mod-link-anchor {
  margin: 0 0 30px;
}

.mod-link-anchor[data-col] > .list > li.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-link-anchor[data-col] > .list > li.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-link-anchor[data-col="auto"] > .list > li {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-link-anchor[data-col="2"] > .list > li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-link-anchor[data-col="3"] > .list > li {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-link-anchor[data-col="4"] > .list > li {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-link-anchor[data-col="5"] > .list > li {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-link-anchor[data-col="6"] > .list > li {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-link-anchor > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -1px 0 0 -1px;
}

.mod-link-anchor > .list > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  padding: 1px 0 0 1px;
}

.mod-link-anchor > .list > li::after {
  display: block;
  min-height: 60px;
  content: "";
}

.mod-link-anchor > .list > li > a {
  background: #f0f1f2;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  padding: 5px 23px 5px 14px;
}

.mod-link-anchor > .list > li > a::before,
.mod-link-anchor > .list > li > a::after {
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  display: block;
  margin: auto 0;
  content: "";
}

.mod-link-anchor > .list > li > a::before {
  background: #31b552;
  right: 0;
  width: 18px;
  height: 18px;
}

.mod-link-anchor > .list > li > a::after {
  right: 6px;
  width: 6px;
  height: 6px;
  -webkit-transform: rotate(45deg) translate(-1px, -1px);
      -ms-transform: rotate(45deg) translate(-1px, -1px);
          transform: rotate(45deg) translate(-1px, -1px);
  border: 1px solid #fff;
  border-width: 0 1px 1px 0;
}

.mod-link-anchor > .list > li > a:link,
.mod-link-anchor > .list > li > a:visited,
.mod-link-anchor > .list > li > a:active,
.mod-link-anchor > .list > li > a:focus {
  text-decoration: none;
}

html[data-use-keyboard="true"] .mod-link-anchor > .list > li > a:focus {
  outline: 1px dashed #333;
  outline: -webkit-focus-ring-color auto 5px;
}

.mod-link-anchor.align-center > .list {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/* ----------------------------------------------------------------------------
 * .mod-link-tab タブリンク（汎用タブウィジェット）
 * ------------------------------------------------------------------------- */
.mod-link-tab {
  margin: 0 0 47px;
}

.mod-link-tab[data-col] > .tab-list > li.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-link-tab[data-col] > .tab-list > li.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-link-tab[data-col="auto"] > .tab-list > li {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-link-tab[data-col="2"] > .tab-list > li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-link-tab[data-col="3"] > .tab-list > li {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-link-tab[data-col="4"] > .tab-list > li {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-link-tab[data-col="5"] > .tab-list > li {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-link-tab[data-col="6"] > .tab-list > li {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-link-tab > .tab-list {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -2px 0 0 -3px;
  padding: 0 0 2px;
}

.mod-link-tab > .tab-list a {
  text-decoration: none;
}

.mod-link-tab > .tab-list::after {
  position: absolute;
  bottom: 0;
  left: 3px;
  width: 100%;
  content: "";
  border-bottom: 2px solid #aaa;
}

.mod-link-tab > .tab-list > li {
  font-size: 1.2rem;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-basis: 33.3333%;
      -ms-flex-preferred-size: 33.3333%;
          flex-basis: 33.3333%;
  min-width: 33.3333%;
  max-width: 33.3333%;
  padding: 2px 0 0 3px;
}

.mod-link-tab > .tab-list > li > * {
  line-height: 1.16667;
  letter-spacing: .3px;
  color: #000;
  background: #eee;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 36px;
  padding: 2px 10px;
  border-radius: 8px 8px 0 0;
}

.mod-link-tab > .tab-list > li > * span {
  display: inline-block;
}

.mod-link-tab > .tab-list > li:focus {
  outline: 0;
}

html[data-use-keyboard="true"] .mod-link-tab > .tab-list > li:focus > * {
  outline: 1px dashed #333;
  outline: -webkit-focus-ring-color auto 5px;
}

.mod-link-tab > .tab-list > li[aria-selected="true"] > *,
.mod-link-tab > .tab-list > li a[aria-current="page"] {
  font-weight: bold;
  background: #9cc715;
}

.mod-link-tab > .tab-panel {
  margin: 13px 0 0;
}

.mod-link-tab > .tab-panel > *:first-child {
  margin-top: 0;
}

.mod-link-tab > .tab-panel > *:last-child {
  margin-bottom: 0;
}

html:not([data-script-enabled="true"]) .mod-link-tab > .tab-panel > .str-invisible {
  font-size: 1.6rem;
  font-weight: bold;
  position: static;
  width: auto;
  height: auto;
  margin: 0 0 25px;
}

.mod-link-tab > .tab-panel > .str-invisible:first-child + * {
  margin-top: 0;
}

.mod-link-tab:not(.js-tab) + .mod-other-detailUtility {
  margin-top: -28px;
}

/* ----------------------------------------------------------------------------
 * .mod-link-bnrList バナーリスト
 * ------------------------------------------------------------------------- */
.mod-link-bnrList {
  margin: 0 0 8px;
}

.mod-link-bnrList.align-center > .list {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mod-link-bnrList.align-right > .list {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.mod-link-bnrList > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: calc(100% + 9px);
  margin: -9px 0 0;
  -webkit-transform: translateX(-9px);
      -ms-transform: translateX(-9px);
          transform: translateX(-9px);
}

.mod-link-bnrList > .list > li {
  display: table;
  width: calc(100% - 9px);
  margin: 9px 0 0 9px;
  table-layout: fixed;
}

.mod-link-bnrList > .list > li > * {
  vertical-align: top;
  display: table-cell;
}

.mod-link-bnrList > .list > li > * img {
  display: block;
  max-width: 100%;
}

/* ----------------------------------------------------------------------------
 * .mod-link-step ステップリンクリスト
 * ------------------------------------------------------------------------- */
.mod-link-step {
  margin: 40px 0 30px;
}

.mod-link-step > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: -10px 0 0 -2px;
}

.mod-link-step > .list > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  min-width: 119px;
  height: 110px;
  padding: 10px 0 0 2px;
}

.mod-link-step > .list > li > .wrap {
  font-size: 1.4rem;
  line-height: 1.57143;
  text-decoration: none;
  text-align: center;
  color: #333;
  background: #f0f1f2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  padding: 16px 0 0;
}

.mod-link-step > .list > li > .wrap > span:first-child {
  font-size: 1.6rem;
  letter-spacing: 1px;
  margin: 0 0 1px;
}

.mod-link-step > .list > li > .wrap:not([href])[aria-current="page"] {
  font-weight: bold;
  color: #fff;
  background: #9fd038;
}

/* ============================================================================
 * _list modules
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .mod-list
 * ------------------------------------------------------------------------- */
.mod-list {
  margin: 0 0 47px;
}

.mod-list > .list > li {
  position: relative;
  padding: 0 0 0 14px;
}

.mod-list > .list > li > *:first-child {
  margin-top: 0;
}

.mod-list > .list > li > *:last-child {
  margin-bottom: 0;
}

.mod-list > .list > li > span,
.mod-list > .list > li > strong {
  font-size: 1.6rem;
  line-height: 1.375;
  display: block;
}

.mod-list > .list > li > span + *,
.mod-list > .list > li > strong + * {
  margin-top: 8px;
}

.mod-list > .list > li > [class^="mod-"]:not([class^="mod-list"]):last-child {
  margin-bottom: 8px;
}

.mod-list > .list > li::before {
  background: #505050;
  position: absolute;
  top: 8px;
  left: 0;
  display: block;
  width: 4px;
  height: 4px;
  content: "";
}

.mod-list > .list > li + li {
  margin-top: 8px;
}

.mod-list > .list > li.of-error::before {
  background: #ff5757;
}

.mod-list > .list > li.of-error > strong {
  font-weight: bold;
  color: #ff5757;
}

/* ----------------------------------------------------------------------------
 * .mod-list-notice 注釈リスト
 * ------------------------------------------------------------------------- */
.mod-list-notice {
  margin: 0 0 24px;
}

.mod-list-notice > .list {
  font-size: 1.4rem;
  display: table;
  width: 100%;
}

.mod-list-notice > .list > li {
  display: table-row;
}

.mod-list-notice > .list > li > * {
  vertical-align: baseline;
  display: table-cell;
  padding: 0 0 1px;
}

.mod-list-notice > .list > li > .symbol {
  padding-right: 3px;
}

.mod-list-notice > .list > li > .content {
  width: 100%;
}

.mod-list-notice > .list > li > .content > *:first-child {
  margin-top: 0;
}

.mod-list-notice > .list > li > .content > *:last-child {
  margin-bottom: 0;
}

.mod-list-notice > .list > li > .content > small {
  display: block;
}

.mod-list-notice.align-right {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.mod-list-notice.align-right > .list {
  text-align: left;
  float: right;
  width: auto;
}

.mod-list-notice.align-right > .list > li > .content {
  width: auto;
}

/* ----------------------------------------------------------------------------
 * .mod-list-hasSymbol 任意のシンボルを持つ非順序リスト
 * ------------------------------------------------------------------------- */
.mod-list-hasSymbol {
  margin: 0 0 90px;
}

.mod-list-hasSymbol > .list {
  display: table;
}

.mod-list-hasSymbol > .list > li {
  display: table-row;
}

.mod-list-hasSymbol > .list > li > * {
  font-size: 1.6rem;
  line-height: 1.375;
  vertical-align: top;
  display: table-cell;
}

.mod-list-hasSymbol > .list > li > .symbol {
  white-space: pre;
  padding: 0 3px 0 0;
}

.mod-list-hasSymbol > .list > li > .content {
  width: 100%;
}

.mod-list-hasSymbol > .list > li > .content > *:first-child {
  margin-top: 0;
}

.mod-list-hasSymbol > .list > li > .content > *:last-child {
  margin-bottom: 0;
}

.mod-list-hasSymbol > .list > li > .content > span:first-child {
  display: block;
}

.mod-list-hasSymbol > .list > li > .content > span:not(:last-child) + * {
  margin-top: 6px;
}

.mod-list-hasSymbol > .list > li + li > .symbol,
.mod-list-hasSymbol > .list > li + li > .content {
  padding-top: 8px;
}

/* ----------------------------------------------------------------------------
 * .mod-list-description 記述リスト
 * ------------------------------------------------------------------------- */
.mod-list-description {
  margin: 0 0 24px;
}

.mod-list-description > .list {
  display: table;
}

.mod-list-description > .list > div {
  display: table-row;
}

.mod-list-description > .list > div > dt {
  font-weight: bold;
  display: table-cell;
  padding: 0 15px 0 0;
}

.mod-list-description > .list > div > dt dfn {
  font-weight: bold;
  font-style: normal;
}

.mod-list-description > .list > div > dd {
  display: table-cell;
}

.mod-list-description > .list > div > dd > *:first-child {
  margin-top: 0;
}

.mod-list-description > .list > div > dd > *:last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------------------
 * .mod-list-step ステップリスト
 * ------------------------------------------------------------------------- */
.mod-list-step {
  margin: 40px 0 30px;
}

.mod-list-step[data-col] > .list > li.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-list-step[data-col] > .list > li.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-list-step[data-col="auto"] > .list > li {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-list-step[data-col="2"] > .list > li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-list-step[data-col="3"] > .list > li {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-list-step[data-col="4"] > .list > li {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-list-step[data-col="5"] > .list > li {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-list-step[data-col="6"] > .list > li {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-list-step[data-col="7"] > .list > li {
  -webkit-flex-basis: 14.28571%;
      -ms-flex-preferred-size: 14.28571%;
          flex-basis: 14.28571%;
  width: 14.28571%;
  min-width: 14.28571%;
  max-width: 14.28571%;
}

.mod-list-step[data-col="8"] > .list > li {
  -webkit-flex-basis: 12.5%;
      -ms-flex-preferred-size: 12.5%;
          flex-basis: 12.5%;
  width: 12.5%;
  min-width: 12.5%;
  max-width: 12.5%;
}

.mod-list-step > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: -10px 0 0 0;
}

.mod-list-step > .list > li {
  position: relative;
  z-index: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  min-width: 118px;
  padding: 10px 9px 0 0;
}

.mod-list-step > .list > li::before,
.mod-list-step > .list > li::after {
  position: absolute;
  top: 10px;
  display: block;
  content: "";
}

.mod-list-step > .list > li::before {
  background: #f0f1f3;
  z-index: -1;
  left: 0;
  width: calc(100% - 18px);
  height: 100px;
}

.mod-list-step > .list > li::after {
  z-index: -2;
  right: 0;
  border: 50px solid transparent;
  border-width: 50px 0 50px 18px;
  border-left-color: #f0f1f3;
}

.mod-list-step > .list > li > .wrap {
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100px;
  padding: 15px 0 0;
}

.mod-list-step > .list > li > .wrap > span {
  display: block;
  width: 100%;
}

.mod-list-step > .list > li > .wrap + .txt {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.mod-list-step > .list > li > .txt {
  font-size: 1.2rem;
  word-break: break-all;
  max-width: 100%;
  margin: 5px 0 0;
  padding: 0 0 0 9px;
}

.mod-list-step > .list > li > .txt .link::after {
  position: relative;
  top: -1;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 2px 0 3px;
  content: "";
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 2px solid #30b653;
  border-width: 2px 2px 0 0;
}

.mod-list-step > .list > li.of-last > .wrap {
  color: #fff;
  background: #9fd038;
}

.mod-list-step > .list > li.of-last::before,
.mod-list-step > .list > li.of-last::after {
  display: none;
}

.mod-list-step.var-02 > .list > li {
  line-height: 1.57143;
  color: #b2b2b2;
  min-width: 108px;
}

.mod-list-step.var-02 > .list > li::before {
  width: calc(100% - 20px);
  height: 96px;
}

.mod-list-step.var-02 > .list > li::after {
  border-width: 48px 0 48px 20px;
}

.mod-list-step.var-02 > .list > li[aria-current="true"] {
  color: #333;
}

.mod-list-step.var-02 > .list > li[aria-current="true"]::before {
  background: #bfe56e;
}

.mod-list-step.var-02 > .list > li[aria-current="true"]::after {
  border-left-color: #bfe56e;
}

.mod-list-step.var-02 > .list > li > .wrap {
  height: 90px;
  padding-top: 17px;
}

.mod-list-step.var-02 > .list > li.of-img {
  font-weight: bold;
  color: #333;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 163px;
  min-width: 163px;
  height: 106px;
  margin: 0 0 0 -20px;
}

.mod-list-step.var-02 > .list > li.of-img > .wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: auto;
  min-width: 100%;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.mod-list-step.var-02 > .list > li.of-img::before,
.mod-list-step.var-02 > .list > li.of-img::after {
  display: none;
}

.mod-list-step.var-02:not([data-col]) li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  max-width: 50%;
}

/* ----------------------------------------------------------------------------
 * .mod-list-handlingNumber 取り扱い台数リスト
 * ------------------------------------------------------------------------- */
.mod-list-handlingNumber.of-vertical > .list {
  display: block;
}

.mod-list-handlingNumber.of-vertical > .list > div::after {
  display: none;
}

.mod-list-handlingNumber > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.mod-list-handlingNumber > .list > div {
  line-height: 1.85714;
  vertical-align: bottom;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod-list-handlingNumber > .list > div > dd {
  font-size: 1.8rem;
  font-weight: bold;
  padding: 0 0 0 5px;
}

.mod-list-handlingNumber > .list > div > dd > .unit {
  font-size: 1.4rem;
  font-weight: normal;
}

.mod-list-handlingNumber > .list > div:not(:last-child)::after {
  padding: 0 5px;
  content: "/";
}

/* ----------------------------------------------------------------------------
 * .mod-list-tag 検索結果リストA
 * ------------------------------------------------------------------------- */
.mod-list-tag > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -10px 0 0 -5px;
}

.mod-list-tag > .list > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 10px 0 0 5px;
}

.mod-list-tag > .list > li > * {
  font-size: 1.2rem;
  padding: 1px 15px;
  border: 1px solid #505050;
  border-radius: 20px;
}

/* ----------------------------------------------------------------------------
 * .mod-list-searchExample 事例検索結果リスト
 * ------------------------------------------------------------------------- */
.mod-list-searchExample {
  max-width: 960px;
  margin: 35px auto 80px;
}

.mod-list-searchExample > .list > li {
  background: #fff;
  position: relative;
  padding: 0;
  padding: 12px 12px 42px 12px;
}

.mod-list-searchExample > .list > li > .summary {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod-list-searchExample > .list > li > .summary > *:not(.mainvisual) {
  width: 100%;
}

.mod-list-searchExample > .list > li > .summary > .part > .list {
  background: #f0f1f2;
  border: 1px solid #ccc;
}

.mod-list-searchExample > .list > li > .summary > .hdg {
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.33333;
  top: -2px;
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}

.mod-list-searchExample > .list > li > .summary > .hdg .new {
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
  color: #000;
  background: #b9e03e;
  position: absolute;
  z-index: 1;
  top: 40px;
  right: 206px;
  left: 0;
  width: 30px;
  margin: 0 auto;
}

.mod-list-searchExample > .list > li > .summary > .hdg .new > span::after {
  background: inherit;
  position: absolute;
  bottom: -5px;
  left: 0;
  display: block;
  width: 0;
  height: 0;
  content: "";
  border-width: 0 8px 5px 0;
  border-style: solid;
  border-color: transparent #b9e03e transparent transparent;
}

.mod-list-searchExample > .list > li > .summary > .hdg a {
  text-decoration: none;
}

.mod-list-searchExample > .list > li > .summary > .hdg a::before {
  background: #fff;
  position: absolute;
  z-index: 1;
  top: 12px;
  right: 0;
  left: 0;
  width: 225px;
  height: 225px;
  margin: 0 auto;
  content: "";
  opacity: 0;
}

.mod-list-searchExample > .list > li > .summary > .hdg .title::after {
  position: relative;
  top: -1px;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 5px 0 6px;
  content: "";
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 2px solid #414141;
  border-width: 2px 2px 0 0;
}

.mod-list-searchExample > .list > li > .summary > .hdg .tag {
  position: absolute;
  z-index: 100;
  top: 30px;
  right: 0;
  left: 0;
  overflow: visible;
  width: 0;
  height: 0;
  margin: 0 auto;
}

.mod-list-searchExample > .list > li > .summary > .hdg .tag img {
  width: 48px;
  max-width: none;
  height: 61px;
  margin: 0 0 0 80px;
}

.mod-list-searchExample > .list > li > .summary > .hdg .func-btn {
  font-size: 0;
  color: transparent;
  background: transparent;
  position: absolute;
  z-index: 1;
  right: 16px;
  bottom: 7px;
  padding: 0;
  border: none;
  border-radius: 0;
}

.mod-list-searchExample > .list > li > .summary > .hdg .func-btn::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: 0 -116px;
  background-size: 180px 153px;
  display: block;
  width: 22px;
  height: 19px;
  content: "";
}

.mod-list-searchExample > .list > li > .summary > .hdg .func-btn::after {
  pointer-events: none;
  background: url(/reform/shared/img/icn/favorite_add_balloon_sp.png);
  position: absolute;
  right: -12px;
  bottom: -45px;
  display: block;
  width: 77px;
  height: 44px;
  content: "";
  opacity: 0;
}

.mod-list-searchExample > .list > li > .summary > .hdg .func-btn:hover::after,
.mod-list-searchExample > .list > li > .summary > .hdg .func-btn:focus::after {
  pointer-events: auto;
  opacity: 1;
}

.mod-list-searchExample > .list > li > .summary > .hdg .func-btn[data-is-favorited="true"]::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -27px -116px;
  background-size: 180px 153px;
  width: 22px;
  height: 19px;
}

.mod-list-searchExample > .list > li > .summary > .hdg .func-btn[data-is-favorited="true"]::after {
  background: url(/reform/shared/img/icn/favorite_remove_balloon_pc.png);
  right: -17px;
  bottom: -52px;
  width: 97px;
  height: 54px;
}

.mod-list-searchExample > .list > li > .summary > .tag {
  display: none;
  margin: 0 0 11px;
}

.mod-list-searchExample > .list > li > .summary > .tag > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -2px 0 0 -2px;
}

.mod-list-searchExample > .list > li > .summary > .tag > .list > li {
  font-size: 1.2rem;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 2px 0 0 2px;
}

.mod-list-searchExample > .list > li > .summary > .tag > .list > li.of-2line {
  font-size: 1.1rem;
  line-height: 1.27273;
}

.mod-list-searchExample > .list > li > .summary > .tag > .list > li > b {
  font-weight: inherit;
  letter-spacing: -.9px;
  text-align: center;
  color: #505050;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 20px;
  padding: 2px 17px;
  border: 1px solid #505050;
}

.mod-list-searchExample > .list > li > .summary > .shop {
  font-size: 1.3rem;
  font-weight: bold;
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4;
  margin: 10px 0 15px;
}

.mod-list-searchExample > .list > li > .summary > .shop > p {
  position: relative;
}

.mod-list-searchExample > .list > li > .summary > .shop > p img {
  position: absolute;
  top: 8px;
  left: 0;
  display: none;
}

.mod-list-searchExample > .list > li > .summary > .shop > p > span {
  display: block;
}

.mod-list-searchExample > .list > li > .summary > .caption {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
}

.mod-list-searchExample > .list > li > .summary > .caption .tag {
  padding: 10px 0 0;
}

.mod-list-searchExample > .list > li > .summary > .caption .tag > b {
  font-size: 1.2rem;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  color: #31b552;
  display: inline-block;
  min-width: 80px;
  min-width: 0;
  padding: 5px 10px;
  padding: 3px;
  border: 1px solid #31b552;
}

.mod-list-searchExample > .list > li > .summary > .caption .price {
  font-size: 1.8rem;
  line-height: 1.5;
  text-align: right;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 8px 0 0 20px;
}

.mod-list-searchExample > .list > li > .summary > .caption .price .unit {
  font-size: 1.2rem;
}

.mod-list-searchExample > .list > li > .summary > .mainvisual {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
  margin: 0 0 20px;
}

.mod-list-searchExample > .list > li > .summary > .mainvisual > .img {
  position: relative;
  width: 225px;
  height: 225px;
}

.mod-list-searchExample > .list > li > .summary > .mainvisual > .img img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  margin: auto;
}

.mod-list-searchExample > .list > li > .summary > .part {
  overflow: auto;
  -webkit-box-ordinal-group: 6;
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5;
  -webkit-overflow-scrolling: touch;
}

.mod-list-searchExample > .list > li > .summary > .part > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 14px;
}

.mod-list-searchExample > .list > li > .summary > .part > .list > li {
  min-width: 33%;
  max-width: 34%;
  padding: 14px 0 0 14px;
}

.mod-list-searchExample > .list > li > .summary > .part > .list > li:first-child {
  padding: 0;
}

.mod-list-searchExample > .list > li > .summary > .part > .list > li:nth-child(2),
.mod-list-searchExample > .list > li > .summary > .part > .list > li:nth-child(3) {
  padding-top: 0;
}

.mod-list-searchExample > .list > li > .summary > .part > .list > li > .item {
  text-decoration: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  max-width: 142px;
}

.mod-list-searchExample > .list > li > .summary > .part > .list > li > .item .caption {
  text-align: center;
  padding: 3px 1px 0;
}

.mod-list-searchExample > .list > li > .summary > .part > .list > li > .item .caption .name {
  font-size: 1rem;
  font-weight: bold;
  word-break: break-all;
  position: relative;
  padding: 3px 0 0 0;
}

.mod-list-searchExample > .list > li > .summary > .part > .list > li > .item .caption .name::after {
  top: 4px;
  right: -1px;
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0 4px;
  content: "";
  border-width: 5px 0 5px 8px;
  border-style: solid;
  border-color: transparent transparent transparent #30b653;
}

.mod-list-searchExample > .list > li > .summary > .part > .list > li > .item .caption .price {
  font-size: 1rem;
  text-align: center;
  white-space: nowrap;
  display: block;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.mod-list-searchExample > .list > li > .summary > .part > .list > li > .item .caption .price > span:first-child {
  font-size: 1.3rem;
  letter-spacing: .3px;
}

.mod-list-searchExample > .list > li > .summary > .part > .list > li > .item .img {
  position: relative;
  max-width: 120px;
  height: 120px;
}

.mod-list-searchExample > .list > li > .summary > .part > .list > li > .item .img img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  margin: auto;
}

.mod-list-searchExample > .list > li > .description {
  font-size: 1.3rem;
  line-height: 1.5;
  margin: 17px 2px 0;
}

.mod-list-searchExample > .list > li + li {
  margin-top: 10px;
}

/* ----------------------------------------------------------------------------
 * .mod-list-searchExample02 事例検索結果リスト02
 * ------------------------------------------------------------------------- */
.mod-list-searchExample02 {
  margin: 0 0 80px;
}

.mod-list-searchExample02[data-col] > .list > li.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-list-searchExample02[data-col] > .list > li.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-list-searchExample02[data-col="auto"] > .list > li {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-list-searchExample02[data-col="2"] > .list > li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-list-searchExample02[data-col="3"] > .list > li {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-list-searchExample02[data-col="4"] > .list > li {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-list-searchExample02[data-col="5"] > .list > li {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-list-searchExample02[data-col="6"] > .list > li {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-list-searchExample02 > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -4px 0 0 -4px;
}

.mod-list-searchExample02 > .list > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  padding: 4px 0 0 4px;
}

.mod-list-searchExample02 > .list > li > .inner {
  background: #f0f1f2;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  width: 100%;
}

.mod-list-searchExample02 > .list > li > .inner > .summary {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 100%;
  padding: 13px 15px 17px;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .hdg {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.625;
  margin: 0 0 7px;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .hdg .pickup {
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
  background: #505050;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  padding: 3px 9px;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .hdg .pickup::before,
.mod-list-searchExample02 > .list > li > .inner > .summary > .hdg .pickup::after {
  position: absolute;
  top: 100%;
  display: block;
  content: "";
  border: solid transparent;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .hdg .pickup::before {
  left: 0;
  border-width: 0 0 7px 35px;
  border-left-color: #505050;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .hdg .pickup::after {
  right: 0;
  border-width: 0 35px 7px 0;
  border-right-color: #505050;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .hdg a {
  line-height: inherit;
  text-decoration: none;
  color: inherit;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .hdg a::before {
  background: #fff;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  padding: 100% 0 0;
  content: "";
  opacity: 0;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .hdg .tag {
  font-size: 1rem;
  white-space: nowrap;
  color: #666;
  background: #ffe63b;
  padding: 4px 3px;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .prop > .status {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: -5px 0 6px -5px;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .prop > .status > * {
  padding: 5px 0 0 5px;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .prop > .status .price {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: right;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .prop > .status .price .unit {
  font-size: 1.6rem;
  font-weight: normal;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .prop > .status .tag span {
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  color: #31b552;
  position: relative;
  top: 1px;
  display: inline-block;
  min-width: 80px;
  padding: 5px 10px;
  border: 1px solid #31b552;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .prop > .category {
  margin: 0 0 6px;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .prop > .category > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -2px 0 0 -2px;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .prop > .category > .list > li {
  font-size: 1.2rem;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 2px 0 0 2px;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .prop > .category > .list > li.of-2line {
  font-size: 1.1rem;
  line-height: 1.27273;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .prop > .category > .list > li > b {
  font-weight: inherit;
  letter-spacing: -.9px;
  text-align: center;
  color: #505050;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 20px;
  padding: 2px 17px;
  border: 1px solid #505050;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .shop {
  font-size: 1.3rem;
  font-weight: bold;
  margin: 0 0 8px;
  padding: 0 0 6px;
  border-bottom: 1px solid #ccc;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .shop p {
  position: relative;
  padding: 0 0 0 23px;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .shop p img {
  position: absolute;
  top: 5px;
  left: 1px;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .description {
  display: none;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .note {
  font-size: 1.3rem;
  line-height: 1.53846;
  margin: 0 -3px 0;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .note dt {
  font-weight: bold;
  margin: 0 0 2px;
}

.mod-list-searchExample02 > .list > li > .inner > .summary > .note dd pre {
  font-family: inherit;
  font-size: 100%;
  white-space: pre-wrap;
}

.mod-list-searchExample02 > .list > li > .inner > .mainvisual {
  position: relative;
  max-width: 100%;
}

.mod-list-searchExample02 > .list > li > .inner > .mainvisual > .img {
  background: #ccc;
  position: relative;
  padding: 100% 0 0;
}

.mod-list-searchExample02 > .list > li > .inner > .mainvisual > .img img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  margin: auto;
}

.mod-list-searchExample02 > .list > li > .inner > .mainvisual .func-btn {
  font-size: 1.1rem;
  line-height: 1.45455;
  white-space: nowrap;
  color: #fff;
  background: rgba(0, 0, 0, 0.15);
  position: absolute;
  z-index: 2;
  top: 4px;
  right: 5px;
  padding: 2px 4px 1px 20px;
  border: 1px solid #fff;
  border-radius: 2px;
}

.mod-list-searchExample02 > .list > li > .inner > .mainvisual .func-btn::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -169px 0;
  background-size: 180px 153px;
  position: absolute;
  top: 4px;
  left: 6px;
  display: block;
  width: 11px;
  height: 11px;
  content: "";
}

.mod-list-searchExample02 > .list > li > .inner > .mainvisual .func-btn[data-is-favorited="true"]::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -37px -140px;
  background-size: 180px 153px;
  width: 12px;
  height: 12px;
}

.mod-list-searchExample02[data-layout="grid"] > .list > li > .inner > .summary > .shop:last-child,
.mod-list-searchExample02[data-layout="grid"] > .list > li > .inner > .summary > .shop:nth-last-child(2) {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

.mod-list-searchExample02[data-layout="list"] > .list > li {
  -webkit-flex-basis: 100% !important;
      -ms-flex-preferred-size: 100% !important;
          flex-basis: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary {
  padding: 15px 20px 14px;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .hdg {
  font-size: 1.8rem;
  margin-bottom: 11px;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .hdg .title {
  position: relative;
  z-index: 1;
  margin-right: 5px;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .hdg .tag {
  position: relative;
  top: -3px;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .hdg a::before {
  height: 250px;
  padding: 0;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .prop {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: -39px 0 0 -39px;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .prop > * {
  padding: 39px 0 0 39px;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .prop > .status {
  margin: -20px 0 0 -20px;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .prop > .status > * {
  padding: 20px 0 0 20px;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .prop > .status .price {
  font-size: 2.6rem;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .prop > .category {
  margin-bottom: 0;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .prop > .category > .list {
  position: relative;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .prop > .category > .list::before {
  background: #ccc;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -19px;
  display: block;
  width: 1px;
  height: calc(100% + 3px);
  margin: auto 0;
  content: "";
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .shop {
  font-size: 1.6rem;
  margin: 11px 0 9px;
  padding-bottom: 11px;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .shop p {
  padding-left: 26px;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .shop p img {
  top: 7px;
  left: 0;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .description {
  font-size: 1.3rem;
  display: block;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .note {
  margin: 7px 2px 0;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .note dd pre {
  white-space: normal;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .mainvisual {
  min-width: 250px;
}

.mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .mainvisual > .img {
  height: 250px;
  padding: 0;
}

/* ----------------------------------------------------------------------------
 * .mod-list-searchExample03 事例検索結果リスト03
 * ------------------------------------------------------------------------- */
.mod-list-searchExample03 {
  max-width: 960px;
  margin: 0 auto 80px;
}

.mod-list-searchExample03[data-col] > .list > li.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-list-searchExample03[data-col] > .list > li.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-list-searchExample03[data-col="auto"] > .list > li {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-list-searchExample03[data-col="2"] > .list > li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-list-searchExample03[data-col="3"] > .list > li {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-list-searchExample03[data-col="4"] > .list > li {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-list-searchExample03[data-col="5"] > .list > li {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-list-searchExample03[data-col="6"] > .list > li {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-list-searchExample03 > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -4px 0 0 -4px;
}

.mod-list-searchExample03 > .list > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  padding: 4px 0 0 4px;
}

.mod-list-searchExample03 > .list > li > .inner {
  background: #f0f1f2;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  width: 100%;
}

.mod-list-searchExample03 > .list > li > .inner > .summary {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 100%;
  padding: 13px 15px 17px;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .hdg {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.625;
  margin: 0 0 7px;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .hdg .pickup {
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
  background: #505050;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  padding: 3px 9px;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .hdg .pickup::before,
.mod-list-searchExample03 > .list > li > .inner > .summary > .hdg .pickup::after {
  position: absolute;
  top: 100%;
  display: block;
  content: "";
  border: solid transparent;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .hdg .pickup::before {
  left: 0;
  border-width: 0 0 7px 35px;
  border-left-color: #505050;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .hdg .pickup::after {
  right: 0;
  border-width: 0 35px 7px 0;
  border-right-color: #505050;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .hdg a {
  line-height: inherit;
  text-decoration: none;
  color: inherit;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .hdg a::before {
  background: #fff;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  padding: 100% 0 0;
  content: "";
  opacity: 0;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .hdg .tag {
  font-size: 1rem;
  white-space: nowrap;
  color: #666;
  background: #ffe63b;
  padding: 4px 3px;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .prop > .status {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: -5px 0 6px -5px;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .prop > .status > * {
  padding: 5px 0 0 5px;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .prop > .status .price {
  font-size: 3rem;
  line-height: 1.2;
  text-align: right;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .prop > .status .price .unit {
  font-size: 1.6rem;
  font-weight: normal;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .prop > .status .tag span {
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  color: #31b552;
  position: relative;
  top: 1px;
  display: inline-block;
  min-width: 80px;
  padding: 5px 10px;
  border: 1px solid #31b552;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .prop > .category {
  margin: 0 0 6px;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .prop > .category > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -2px 0 0 -2px;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .prop > .category > .list > li {
  font-size: 1.2rem;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 2px 0 0 2px;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .prop > .category > .list > li.of-2line {
  font-size: 1.1rem;
  line-height: 1.27273;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .prop > .category > .list > li > b {
  font-weight: inherit;
  letter-spacing: -.9px;
  text-align: center;
  color: #505050;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 20px;
  padding: 2px 17px;
  border: 1px solid #505050;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .shop {
  font-size: 1.3rem;
  font-weight: bold;
  margin: 0 0 8px;
  padding: 0 0 6px;
  border-bottom: 1px solid #ccc;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .shop p {
  position: relative;
  padding: 0 0 0 23px;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .shop p img {
  position: absolute;
  top: 5px;
  left: 1px;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .description {
  display: none;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .note {
  font-size: 1.3rem;
  line-height: 1.53846;
  margin: 0 -3px 0;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .note dt {
  font-weight: bold;
  margin: 0 0 2px;
}

.mod-list-searchExample03 > .list > li > .inner > .summary > .note dd pre {
  font-family: inherit;
  font-size: 100%;
  white-space: pre-wrap;
}

.mod-list-searchExample03 > .list > li > .inner > .mainvisual {
  max-width: 100%;
}

.mod-list-searchExample03 > .list > li > .inner > .mainvisual > .img {
  position: relative;
  padding: 100% 0 0;
}

.mod-list-searchExample03 > .list > li > .inner > .mainvisual > .img img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  margin: auto;
}

.mod-list-searchExample03 > .list > li > .inner > .mainvisual .func-btn {
  font-size: 1.1rem;
  line-height: 1.45455;
  white-space: nowrap;
  color: #fff;
  background: rgba(0, 0, 0, 0.15);
  position: absolute;
  z-index: 2;
  right: 5px;
  bottom: 0;
  padding: 2px 4px 1px 20px;
  border: 1px solid #fff;
  border-radius: 2px;
}

.mod-list-searchExample03 > .list > li > .inner > .mainvisual .func-btn::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -169px 0;
  background-size: 180px 153px;
  position: absolute;
  top: 4px;
  left: 6px;
  display: block;
  width: 11px;
  height: 11px;
  content: "";
}

.mod-list-searchExample03 > .list > li > .inner > .mainvisual .func-btn[data-is-favorited="true"]::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -37px -140px;
  background-size: 180px 153px;
  width: 12px;
  height: 12px;
}

.mod-list-searchExample03[data-layout="grid"] > .list {
  margin: 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li {
  padding: 0;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li:nth-of-type(odd) .inner {
  border-right: 1px solid #ccc;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li:last-child > .inner,
.mod-list-searchExample03[data-layout="grid"] > .list > li:nth-last-child(2):nth-child(odd) > .inner {
  border-bottom: 0;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner {
  background: #fff;
  padding: 12px 20px 35px;
  border-bottom: 1px solid #ccc;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary {
  padding: 13px 0 0;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .hdg {
  font-size: 1.2rem;
  color: #000;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .hdg .new {
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
  color: #000;
  background: #b9e03e;
  position: absolute;
  z-index: 1;
  top: 12px;
  left: 12px;
  width: 30px;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .hdg .new > span::after {
  background: inherit;
  position: absolute;
  bottom: -5px;
  left: 0;
  display: block;
  width: 0;
  height: 0;
  content: "";
  border-width: 0 8px 5px 0;
  border-style: solid;
  border-color: transparent #b9e03e transparent transparent;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .hdg .tag {
  background: none;
  position: absolute;
  z-index: 1;
  top: 10px;
  right: 25px;
  padding: 0;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .hdg a::before {
  top: 12px;
  right: 0;
  width: calc(100% - 40px);
  margin: 0 auto;
  padding-top: calc(100% - 40px);
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .status {
  margin-bottom: 5px;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .status > .tag {
  padding-top: 0;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .status > .tag > span {
  font-size: 1rem;
  min-width: 0;
  padding: 3px;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .status > .price {
  font-size: 1.4rem;
  font-weight: normal;
  color: #000;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .status > .price .unit {
  font-size: 1rem;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .category > .list {
  margin: -3px 0 0 -3px;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .category > .list > li {
  font-size: 1rem;
  padding: 3px 0 0 3px;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .category > .list > li > b {
  color: #000;
  padding: 3px;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .shop {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .shop > p {
  font-size: 1.1rem;
  font-weight: normal;
  color: #000;
  padding-left: 0;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .shop:last-child,
.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .shop:nth-last-child(2) {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .note {
  margin-top: 8px;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner .mainvisual {
  position: static;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner .mainvisual .func-btn {
  font-size: 0;
  color: transparent;
  background: transparent;
  top: auto;
  right: 19px;
  bottom: 10px;
  padding: 0;
  border: none;
  border-radius: 0;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner .mainvisual .func-btn::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: 0 -116px;
  background-size: 180px 153px;
  position: static;
  width: 22px;
  height: 19px;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner .mainvisual .func-btn::after {
  pointer-events: none;
  background: url(/reform/shared/img/icn/favorite_add_balloon_sp.png);
  position: absolute;
  right: -12px;
  bottom: -45px;
  display: block;
  width: 77px;
  height: 44px;
  content: "";
  opacity: 0;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner .mainvisual .func-btn:hover::after,
.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner .mainvisual .func-btn:focus::after {
  pointer-events: auto;
  opacity: 1;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner .mainvisual .func-btn[data-is-favorited="true"]::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -27px -116px;
  background-size: 180px 153px;
  width: 22px;
  height: 19px;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner .mainvisual .func-btn[data-is-favorited="true"]::after {
  background: url(/reform/shared/img/icn/favorite_remove_balloon_sp.png);
  width: 88px;
  height: 45px;
}

.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner .mainvisual .func-btn[data-is-favorited="true"]:hover::after,
.mod-list-searchExample03[data-layout="grid"] > .list > li > .inner .mainvisual .func-btn[data-is-favorited="true"]:focus::after {
  pointer-events: auto;
  opacity: 1;
}

.mod-list-searchExample03[data-layout="grid"] .mainvisual .func-btn {
  right: 19px;
  bottom: 10px;
}

.mod-list-searchExample03[data-layout="grid"] .mainvisual .func-btn::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: 0 -116px;
  background-size: 180px 153px;
  width: 22px;
  height: 19px;
}

.mod-list-searchExample03[data-layout="grid"] .mainvisual .func-btn::after {
  background: url(/reform/shared/img/icn/favorite_add_balloon_pc.png);
}

.mod-list-searchExample03[data-layout="list"] {
  background: #f6f6f6;
}

.mod-list-searchExample03[data-layout="list"] > .list {
  margin: -6px 0 0 -4px;
}

.mod-list-searchExample03[data-layout="list"] > .list > li {
  background: #fff;
  -webkit-flex-basis: 100% !important;
      -ms-flex-preferred-size: 100% !important;
          flex-basis: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  margin: 6px 0 0 4px;
  padding: 20px;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

.mod-list-searchExample03[data-layout="list"] > .list > li:first-of-type {
  margin-top: 0;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner {
  background: #fff;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary {
  padding: 18px 0 14px;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .hdg {
  font-size: 1.4rem;
  margin-bottom: 11px;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .hdg .title {
  position: relative;
  z-index: 1;
  margin-right: 5px;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .hdg a::before {
  height: 250px;
  padding: 0;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .hdg .tag {
  background: transparent;
  position: absolute;
  z-index: 1;
  top: -21px;
  right: -14px;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary .new {
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
  color: #000;
  background: #b9e03e;
  position: absolute;
  z-index: 1;
  top: 0;
  left: -8px;
  width: 30px;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary .new > span::after {
  background: inherit;
  position: absolute;
  bottom: -5px;
  left: 0;
  display: block;
  width: 0;
  height: 0;
  content: "";
  border-width: 0 8px 5px 0;
  border-style: solid;
  border-color: transparent #b9e03e transparent transparent;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .status {
  font-size: 0;
  margin: 0;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .status > * {
  padding: 0;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .status .tag span {
  font-size: 1.1rem;
  font-weight: normal;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  color: #31b552;
  display: inline-block;
  min-width: 63px;
  padding: 2px 3px 1px;
  border: 1px solid #31b552;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .status .price {
  font-size: 1.8rem;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .status .price .unit {
  font-size: 1.2rem;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .category {
  margin-top: 6px;
  margin-bottom: 0;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .category > .list {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .category > .list > li {
  font-size: 1.1rem;
  line-height: 1;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .category > .list > li b {
  font-weight: inherit;
  letter-spacing: -.9px;
  text-align: center;
  color: #505050;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 16px;
  padding: 2px 3px 1px;
  border: 1px solid #505050;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .shop {
  display: none;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .description {
  font-size: 1.3rem;
  display: block;
  margin: 12px 0 0;
  padding: 10px 0 0;
  border-top: 1px dotted #aaa;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .description dt {
  font-weight: bold;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .note {
  margin: 7px 2px 0;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .note dd pre {
  white-space: normal;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual {
  min-width: 250px;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual > .img {
  height: 250px;
  padding: 0;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn {
  font-size: 0;
  color: transparent;
  background: transparent;
  bottom: -10px;
  padding: 0;
  border: none;
  border-radius: 0;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: 0 -116px;
  background-size: 180px 153px;
  position: static;
  width: 22px;
  height: 19px;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn::after {
  pointer-events: none;
  background: url(/reform/shared/img/icn/favorite_add_balloon_sp.png);
  position: absolute;
  right: -12px;
  bottom: -45px;
  display: block;
  width: 77px;
  height: 44px;
  content: "";
  opacity: 0;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn:hover::after,
.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn:focus::after {
  pointer-events: auto;
  opacity: 1;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn[data-is-favorited="true"]::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -27px -116px;
  background-size: 180px 153px;
  width: 22px;
  height: 19px;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn[data-is-favorited="true"]::after {
  background: url(/reform/shared/img/icn/favorite_remove_balloon_sp.png);
  width: 88px;
  height: 45px;
}

.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn[data-is-favorited="true"]:hover::after,
.mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn[data-is-favorited="true"]:focus::after {
  pointer-events: auto;
  opacity: 1;
}

/* ============================================================================
 * _tbl modules
 * ========================================================================= */
[class^="mod-tbl"].of-scroll[tabindex] {
  overflow: auto;
}

[class^="mod-tbl"].of-scroll[tabindex] > table {
  width: 960px;
  table-layout: fixed;
}

[class^="mod-tbl"] > table {
  margin: 0 0 1px;
}

[class^="mod-tbl"] > table > * > * > * > *:first-child {
  margin-top: 0;
}

[class^="mod-tbl"] > table > * > * > * > *:last-child {
  margin-bottom: 0;
}

[class^="mod-tbl"] > table > * > * > *.of-noWrap {
  white-space: nowrap;
}

[class^="mod-tbl"] > table > * > * > *.of-borderBottomDotted {
  border-bottom-style: dotted;
}

[class^="mod-tbl"] > table > * > * > *.of-borderTopDotted {
  border-top-style: dotted;
}

[class^="mod-tbl"] > table > * > * > *.of-borderLeftDotted {
  border-left-style: dotted;
}

[class^="mod-tbl"] > table > * > * > *.of-borderRightDotted {
  border-right-style: dotted;
}

[class^="mod-tbl"] > table > * > * > * > .module > * {
  display: inline-block;
}

[class^="mod-tbl"] > table > * > * > * > .module:first-child > * {
  margin-top: 0;
}

[class^="mod-tbl"] > table > * > * > * > .module:last-child > * {
  margin-bottom: 0;
}

[class^="mod-tbl"] > table > * > * > * > pre {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  white-space: pre-wrap;
}

[class^="mod-tbl"] > table > * > * > * > .tag > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -2px 0 0 -2px;
}

[class^="mod-tbl"] > table > * > * > * > .tag > .list > li {
  font-size: 1.2rem;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 2px 0 0 2px;
}

[class^="mod-tbl"] > table > * > * > * > .tag > .list > li.of-2line {
  font-size: 1.1rem;
  line-height: 1.27273;
}

[class^="mod-tbl"] > table > * > * > * > .tag > .list > li > b {
  font-weight: inherit;
  letter-spacing: -.9px;
  text-align: center;
  color: #505050;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 30px;
  padding: 2px 17px;
  border: 1px solid #505050;
}

[class^="mod-tbl"] > table > * > * > * > .tag + * {
  margin-top: 5px;
}

[class^="mod-tbl"] > table > * > * > * > .lyt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: -10px 0 0 -25px;
}

[class^="mod-tbl"] > table > * > * > * > .lyt > .col {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 10px 0 0 25px;
}

[class^="mod-tbl"] > table > * > * > * > .lyt > .col > *:first-child {
  margin-top: 0;
}

[class^="mod-tbl"] > table > * > * > * > .lyt > .col > *:last-child {
  margin-bottom: 0;
}

[class^="mod-tbl"] > table > * > * > * > .lyt > .col > .detail > a,
[class^="mod-tbl"] > table > * > * > * > .lyt > .col > .detail > button {
  font-size: 1.2rem;
  text-decoration: none;
  position: relative;
  min-width: 64px;
  min-height: 29px;
  padding: 3px 18px;
  border: 1px solid #000;
  border-radius: 3px;
}

[class^="mod-tbl"] > table > * > * > * > .lyt > .col > .detail > a::after,
[class^="mod-tbl"] > table > * > * > * > .lyt > .col > .detail > button::after {
  position: absolute;
  top: 0;
  right: 1px;
  bottom: 0;
  display: block;
  width: 0;
  height: 0;
  margin: auto 0;
  content: "";
  border: 1px solid transparent;
  border-width: 4px 5px;
  border-left-color: #43af35;
}

[class^="mod-tbl"] > table > * > * > * > .lyt > .col > .detail > a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

[class^="mod-tbl"] > table > * > * > * > .lyt.align-left {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

[class^="mod-tbl"] > table > * > * > * > .lyt.align-left > .col {
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
}

[class^="mod-tbl"] > table > * > * > * > .specification {
  display: table;
}

[class^="mod-tbl"] > table > * > * > * > .specification > div {
  display: table-row;
}

[class^="mod-tbl"] > table > * > * > * > .specification > div > * {
  vertical-align: top;
  display: table-cell;
}

[class^="mod-tbl"] > table > * > * > * > .specification > div dt {
  white-space: nowrap;
}

[class^="mod-tbl"] > table > * > * > * > .specification > div dt::after {
  content: "：";
}

[class^="mod-tbl"] > table > * > * > *.of-hasUnit {
  font-size: 1.8rem;
  font-weight: bold;
}

[class^="mod-tbl"] > table > * > * > *.of-hasUnit .unit {
  font-size: 1.2rem;
}

[class^="mod-tbl"] [class^="mod-"] {
  text-align: left;
}

[class^="mod-tbl"] [class^="mod-list"] > .list > li > * {
  font-size: inherit;
}

/* ----------------------------------------------------------------------------
 * .mod-tbl
 * ------------------------------------------------------------------------- */
.mod-tbl {
  margin: 0 0 30px;
}

.mod-tbl > table {
  font-size: 1.4rem;
  width: 100%;
}

.mod-tbl > table > caption {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: left;
  margin: 0 0 9px;
}

.mod-tbl > table colgroup col:first-child:not(:last-child) {
  width: 133px;
}

.mod-tbl > table > tbody > tr > th,
.mod-tbl > table > tbody > tr > td,
.mod-tbl > table > tfoot > tr > th,
.mod-tbl > table > tfoot > tr > td {
  line-height: 1.5;
  vertical-align: middle;
  border-top: 1px solid #ccc;
}

.mod-tbl > table > tbody > tr > th,
.mod-tbl > table > tfoot > tr > th {
  font-weight: bold;
  text-align: center;
  background: #f0f1f2;
  padding: 10px;
}

.mod-tbl > table > tbody > tr > td,
.mod-tbl > table > tfoot > tr > td {
  padding: 10px 20px 11px 27px;
}

.mod-tbl > table > tbody > tr > td > .feature,
.mod-tbl > table > tfoot > tr > td > .feature {
  font-weight: bold;
}

.mod-tbl > table > tbody > tr > td > .feature > .list,
.mod-tbl > table > tfoot > tr > td > .feature > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -2px 0 0 -2px;
}

.mod-tbl > table > tbody > tr > td > .feature > .list > li,
.mod-tbl > table > tfoot > tr > td > .feature > .list > li {
  font-size: 1.2rem;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 2px 0 0 2px;
}

.mod-tbl > table > tbody > tr > td > .feature > .list > li.of-2line,
.mod-tbl > table > tfoot > tr > td > .feature > .list > li.of-2line {
  font-size: 1.1rem;
  line-height: 1.27273;
}

.mod-tbl > table > tbody > tr > td > .feature > .list > li > b,
.mod-tbl > table > tfoot > tr > td > .feature > .list > li > b {
  font-weight: inherit;
  letter-spacing: -.9px;
  text-align: center;
  color: #fff;
  background: #9fd038;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 30px;
  padding: 2px 17px;
}

.mod-tbl > table > tbody > tr > td > .feature li,
.mod-tbl > table > tfoot > tr > td > .feature li {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  max-width: 25%;
}

.mod-tbl > table > tbody > tr > td > .feature + *,
.mod-tbl > table > tfoot > tr > td > .feature + * {
  margin-top: 5px;
}

.mod-tbl > table > tbody > tr > td > .tag > .list,
.mod-tbl > table > tfoot > tr > td > .tag > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -2px 0 0 -2px;
}

.mod-tbl > table > tbody > tr > td > .tag > .list > li,
.mod-tbl > table > tfoot > tr > td > .tag > .list > li {
  font-size: 1.2rem;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 2px 0 0 2px;
}

.mod-tbl > table > tbody > tr > td > .tag > .list > li.of-2line,
.mod-tbl > table > tfoot > tr > td > .tag > .list > li.of-2line {
  font-size: 1.1rem;
  line-height: 1.27273;
}

.mod-tbl > table > tbody > tr > td > .tag > .list > li > b,
.mod-tbl > table > tfoot > tr > td > .tag > .list > li > b {
  font-weight: inherit;
  letter-spacing: -.9px;
  text-align: center;
  color: #505050;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 30px;
  padding: 2px 17px;
  border: 1px solid #505050;
}

.mod-tbl > table > tbody > tr > td > .tag + *,
.mod-tbl > table > tfoot > tr > td > .tag + * {
  margin-top: 5px;
}

.mod-tbl > table > tbody > tr > td.of-count,
.mod-tbl > table > tfoot > tr > td.of-count {
  font-size: 2.4rem;
  font-weight: bold;
}

.mod-tbl > table > tbody > tr > td.of-count .unit,
.mod-tbl > table > tfoot > tr > td.of-count .unit {
  font-size: 1.4rem;
}

.mod-tbl > table > tbody > tr:last-child > th,
.mod-tbl > table > tbody > tr:last-child > td,
.mod-tbl > table > tfoot > tr:last-child > th,
.mod-tbl > table > tfoot > tr:last-child > td {
  border-bottom: 1px solid #ccc;
}

/* ----------------------------------------------------------------------------
 * .mod-tbl-02
 * ------------------------------------------------------------------------- */
.mod-tbl-02 {
  margin: 0 0 30px;
}

.mod-tbl-02:not(.of-scroll) > table {
  display: block;
}

.mod-tbl-02:not(.of-scroll) > table > * {
  display: block;
}

.mod-tbl-02:not(.of-scroll) > table > * > * {
  display: block;
}

.mod-tbl-02:not(.of-scroll) > table > * > * > * {
  display: block;
}

.mod-tbl-02.of-scroll > table {
  border: 0;
}

.mod-tbl-02.of-scroll > table > tbody > tr > td {
  padding-left: 30px;
  border-left-width: 10px;
}

.mod-tbl-02.of-scroll > table > tbody > tr:last-child > th,
.mod-tbl-02.of-scroll > table > tbody > tr:last-child > td {
  border-bottom: 1px solid #ccc;
}

.mod-tbl-02 > table {
  font-size: 1.4rem;
  width: 100%;
  border-bottom: 1px solid #ccc;
}

.mod-tbl-02 > table > caption {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: left;
  margin: 0 0 9px;
}

.mod-tbl-02 > table > colgroup col:first-child:not(:last-child) {
  width: 150px;
}

.mod-tbl-02 > table > tbody > tr > th,
.mod-tbl-02 > table > tbody > tr > td,
.mod-tbl-02 > table > tfoot > tr > th,
.mod-tbl-02 > table > tfoot > tr > td {
  vertical-align: middle;
  padding: 8px 10px;
  border-top: 1px solid #ccc;
}

.mod-tbl-02 > table > tbody > tr > th,
.mod-tbl-02 > table > tfoot > tr > th {
  font-weight: bold;
  text-align: left;
}

.mod-tbl-02 > table > tbody > tr > td,
.mod-tbl-02 > table > tfoot > tr > td {
  padding: 15px 20px 15px 20px;
  border-left: 0 solid #fff;
}

/* ----------------------------------------------------------------------------
 * .mod-tbl-03
 * ------------------------------------------------------------------------- */
.mod-tbl-03 {
  margin: 0 0 30px;
}

.mod-tbl-03 > table {
  width: 100%;
  table-layout: fixed;
  border-spacing: 0;
  border-collapse: collapse;
}

.mod-tbl-03 > table > caption {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: left;
  margin: 0 0 9px;
}

.mod-tbl-03 > table > thead > tr > td:first-child:empty {
  border-top-color: transparent;
  border-left-color: transparent;
}

.mod-tbl-03 > table > thead th,
.mod-tbl-03 > table > thead td {
  padding-top: 11px;
  padding-bottom: 11px;
}

.mod-tbl-03 > table th,
.mod-tbl-03 > table td {
  text-align: center;
  vertical-align: middle;
  padding: 12px 8px;
  border: 1px solid #b3b3b3;
}

.mod-tbl-03 > table th {
  font-weight: bold;
  background: #e3eecc;
}

/* ----------------------------------------------------------------------------
 * .mod-tbl-04
 * ------------------------------------------------------------------------- */
.mod-tbl-04 {
  margin: 0 0 15px;
}

.mod-tbl-04 > table {
  font-size: 1.4rem;
  width: 100%;
  border-bottom: 1px dotted #adadad;
}

.mod-tbl-04 > table > caption {
  font-size: 1.4rem;
  font-weight: bold;
  text-align: left;
  margin: 0 0 3px;
}

.mod-tbl-04 > table > tbody > tr > th,
.mod-tbl-04 > table > tbody > tr > td,
.mod-tbl-04 > table > tfoot > tr > th,
.mod-tbl-04 > table > tfoot > tr > td {
  font-size: 1.3rem;
  vertical-align: middle;
  padding: 10px 10px 8px 0;
  border-top: 1px dotted #adadad;
}

.mod-tbl-04 > table > tbody > tr > th,
.mod-tbl-04 > table > tfoot > tr > th {
  font-weight: bold;
  text-align: left;
  width: 128px;
}

/* ----------------------------------------------------------------------------
 * .mod-tbl-05
 * ------------------------------------------------------------------------- */
.mod-tbl-05 {
  min-width: 210px;
}

.mod-tbl-05 > table {
  font-size: 1.3rem;
  min-width: 100%;
}

.mod-tbl-05 > table > caption {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: left;
  margin-bottom: 5px;
  padding: 0 0 5px;
  border-bottom: 2px solid #9cc715;
}

.mod-tbl-05 > table > tbody > tr > th,
.mod-tbl-05 > table > tbody > tr > td {
  padding: 14px 0 13px;
  border-bottom: 1px dotted #cecece;
}

.mod-tbl-05 > table > tbody > tr > th {
  padding-right: 20px;
}

.mod-tbl-05 > table > tbody > tr:last-child > th,
.mod-tbl-05 > table > tbody > tr:last-child > td {
  padding-bottom: 14px;
  border-bottom: 1px solid #ccc;
}

.mod-tbl-05 > table > tfoot > tr > th,
.mod-tbl-05 > table > tfoot > tr > td {
  padding: 10px 0 20px;
}

.mod-tbl-05 > table > tfoot > tr > th {
  font-weight: bold;
  padding-right: 20px;
}

/* ----------------------------------------------------------------------------
 * .mod-tbl-compare 検討リスト比較用テーブル
 * ------------------------------------------------------------------------- */
.mod-tbl-compare {
  overflow: auto;
  margin: 0 0 30px;
}

.mod-tbl-compare[data-compare-list-length="5"] > table > colgroup > col ~ col {
  width: 200px;
}

.mod-tbl-compare > table {
  width: 960px;
  table-layout: fixed;
  border-spacing: 0;
  border-collapse: collapse;
}

.mod-tbl-compare > table > colgroup > col:first-child {
  width: 130px;
}

.mod-tbl-compare > table th,
.mod-tbl-compare > table td {
  padding: 14px 8px;
  border: 1px solid #b3b3b3;
}

.mod-tbl-compare > table th {
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
  background: #e3eecc;
}

.mod-tbl-compare > table td > *:first-child {
  margin-top: 0;
}

.mod-tbl-compare > table td > *:last-child {
  margin-bottom: 0;
}

.mod-tbl-compare > table td.photo {
  text-align: center;
  padding: 3px;
}

.mod-tbl-compare > table td.photo img {
  max-width: 100%;
}

.mod-tbl-compare > table td.count {
  font-weight: bold;
  text-align: center;
}

.mod-tbl-compare > table td.count span:first-child {
  font-size: 2.4rem;
}

.mod-tbl-compare > table td.scope {
  padding: 3px;
}

.mod-tbl-compare > table td.scope > .list {
  font-size: 1.2rem;
}

.mod-tbl-compare > table td.scope > .list > li {
  margin: 0 0 3px;
}

.mod-tbl-compare > table td.scope > .list > li:last-child {
  margin-bottom: 0;
}

.mod-tbl-compare > table td.scope > .list > li span {
  text-align: center;
  color: #fff;
  background: #505050;
  display: block;
}

.mod-tbl-compare > table td.scope > .list > li[aria-hidden="true"] {
  display: none;
}

.mod-tbl-compare > table td.scope > .list > li[hidden][aria-hidden="true"] {
  display: list-item;
}

.mod-tbl-compare > table td.scope > .list > li[hidden][aria-hidden="true"] span {
  color: #999;
  background: #e6e6e6;
}

/* ============================================================================
 * _box modules
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .mod-box 汎用ボックス
 * ------------------------------------------------------------------------- */
.mod-box {
  background: #f5f9ec;
  margin: 0 0 33px;
  border-radius: 6px;
}

.mod-box > .content {
  padding: 14px 27px;
}

.mod-box > .content > *:first-child {
  margin-top: 0;
}

.mod-box > .content > *:last-child {
  margin-bottom: 0;
}

.mod-box > .content + .content {
  margin: 6px 0 0;
  padding-top: 20px;
  border-top: 1px solid #ccc;
}

.mod-box.var-02 {
  background: #fff;
}

.mod-box.var-03 {
  background: #f0f1f2;
}

/* ----------------------------------------------------------------------------
 * .mod-box-02 汎用ボックス02
 * ------------------------------------------------------------------------- */
.mod-box-02 {
  background: #f0f1f2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 30px;
  padding: 30px 20px;
  border-radius: 6px;
}

.mod-box-02 > .hdg {
  font-size: 3rem;
  text-align: center;
  max-width: 100%;
  margin: 0 0 12px;
}

.mod-box-02 > .content {
  max-width: 100%;
}

.mod-box-02 > .content > *:first-child {
  margin-top: 0;
}

.mod-box-02 > .content > *:last-child {
  margin-bottom: 0;
}

.mod-box-02.align-left {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

/* ----------------------------------------------------------------------------
 * .mod-box-description 詳細説明用ボックス
 * ------------------------------------------------------------------------- */
.mod-box-description {
  margin: 0 0 40px;
}

.mod-box-description[data-col] > .inner > .col.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-box-description[data-col] > .inner > .col.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-box-description[data-col="auto"] > .inner > .col {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-box-description[data-col="2"] > .inner > .col {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-box-description[data-col="3"] > .inner > .col {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-box-description[data-col="4"] > .inner > .col {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-box-description[data-col="5"] > .inner > .col {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-box-description[data-col="6"] > .inner > .col {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-box-description > .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -9px 0 0 -4px;
}

.mod-box-description > .inner > .col {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  padding: 9px 0 0 4px;
}

.mod-box-description > .inner > .col > .box {
  background: #f0f1f2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
}

.mod-box-description > .inner > .col > .box > .head {
  text-align: center;
  background: #e3eecc;
  padding: 7px 7px 6px;
}

.mod-box-description > .inner > .col > .box > .head > .hdg {
  font-size: 1.6rem;
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mod-box-description > .inner > .col > .box > .head > .hdg.of-2row::after {
  display: block;
  min-height: 54px;
  content: "";
}

.mod-box-description > .inner > .col > .box > .head > .hdg > .label {
  font-size: 1.2rem;
  line-height: 1.66667;
  background: #fff;
  position: relative;
  top: -2px;
  display: inline-block;
  margin: 0 14px 0 0;
  padding: 2px 7px;
}

.mod-box-description > .inner > .col > .box > .media > span {
  display: block;
}

.mod-box-description > .inner > .col > .box > .media > span img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

.mod-box-description > .inner > .col > .box > .media + .media {
  padding-top: 2px;
}

.mod-box-description > .inner > .col > .box > .content {
  margin: 0 20px;
  padding: 20px 0;
}

.mod-box-description > .inner > .col > .box > .content > *:first-child {
  margin-top: 0;
}

.mod-box-description > .inner > .col > .box > .content > *:last-child {
  margin-bottom: 0;
}

.mod-box-description > .inner > .col > .box > .content + .content {
  border-top: 1px solid #ccc;
}

.mod-box-description > .inner > .col > .box > .foot {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 0 0 30px;
}

.mod-box-description > .inner > .col > .box > .foot > *:first-child {
  margin-top: 0;
}

.mod-box-description > .inner > .col > .box > .foot > *:last-child {
  margin-bottom: 0;
}

.mod-box-description.var-02 > .inner {
  margin: -20px 0 0 -14px;
}

.mod-box-description.var-02 > .inner > .col {
  padding: 20px 0 0 14px;
}

.mod-box-description.var-02 > .inner > .col > .box {
  background: #f5f9ec;
  overflow: hidden;
  border-radius: 6px;
}

.mod-box-description.var-02 > .inner > .col > .box > .head {
  background: #bfe56e;
  padding-top: 10px;
  padding-bottom: 10px;
}

.mod-box-description.var-02 > .inner > .col > .box > .head > .hdg {
  font-size: 1.8rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.mod-box-description.var-02 > .inner > .col > .box > .head > .hdg span {
  font-size: 1.3rem;
  line-height: 1;
  padding: 5px 0 0;
}

/* ----------------------------------------------------------------------------
 * .mod-box-contact お問い合わせ先ボックス
 * ------------------------------------------------------------------------- */
.mod-box-contact {
  margin: 0 0 33px;
}

.mod-box-contact > .inner > div + div {
  margin-top: 4px;
}

.mod-box-contact > .inner > div > dt {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  background: #e3eecc;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 12px 10px 11px;
}

.mod-box-contact > .inner > div > dt span {
  position: relative;
  display: block;
  padding: 0 50px;
}

.mod-box-contact > .inner > div > dt span img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  display: block;
  margin: auto 15px auto 0;
}

.mod-box-contact > .inner > div > dd {
  background: #f0f1f2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 20px;
}

.mod-box-contact > .inner > div > dd > *:first-child {
  margin-top: 0;
}

.mod-box-contact > .inner > div > dd > *:last-child {
  margin-bottom: 0;
}

.mod-box-contact > .inner > div > dd > * {
  max-width: 100%;
}

.mod-box-contact > .inner > div.of-tel > dd {
  padding-bottom: 10px;
}

.mod-box-contact > .inner > div.of-tel > dd > .tel {
  font-size: 2rem;
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  margin: 0 0 15px;
}

.mod-box-contact > .inner > div.of-tel > dd > .tel a {
  text-decoration: none;
}

.mod-box-contact > .inner > div.of-web > dd {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

/* ----------------------------------------------------------------------------
 * .mod-box-shop 施工店情報ボックス
 * ------------------------------------------------------------------------- */
.mod-box-shop {
  background: #f8fcec;
  margin: 0 0 30px;
  border: 1px solid #9cc715;
}

.mod-box-shop > .title {
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  margin: 24px 0 0;
}

.mod-box-shop > .title > .inner {
  position: relative;
}

.mod-box-shop > .title > .inner::before,
.mod-box-shop > .title > .inner::after {
  position: absolute;
  top: 5px;
  display: block;
  height: 40px;
  content: "";
  border-left: 1px dashed #000;
}

.mod-box-shop > .title > .inner::before {
  top: 5px;
  left: -24px;
  -webkit-transform: rotate(-26deg);
      -ms-transform: rotate(-26deg);
          transform: rotate(-26deg);
}

.mod-box-shop > .title > .inner::after {
  right: -16px;
  -webkit-transform: rotate(26deg);
      -ms-transform: rotate(26deg);
          transform: rotate(26deg);
}

.mod-box-shop > .inner {
  padding: 19px;
}

.mod-box-shop > .inner > .name {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.44444;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

.mod-box-shop > .inner > .name + .content {
  margin: 10px 0 0;
}

.mod-box-shop > .inner > .content > *:first-child {
  margin-top: 0;
}

.mod-box-shop > .inner > .content > *:last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------------------
 * .mod-box-shop02 施工店情報ボックス
 * ------------------------------------------------------------------------- */
.mod-box-shop02 {
  background: #fff;
  margin: 0 0 30px;
  padding: 27px 20px 26px;
}

.mod-box-shop02 > .title {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.3;
  background: transparent url("/reform/shared/img/bg/dotline.png") 3px bottom repeat-x;
  background-size: 6px 3px;
  margin: 0 0 21px;
  padding: 0 1px 7px;
}

.mod-box-shop02 > .title > .inner {
  position: relative;
  padding: 0 0 0 36px;
}

.mod-box-shop02 > .title > .inner::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -102px -82px;
  background-size: 180px 153px;
  position: absolute;
  bottom: 2px;
  left: 0;
  display: block;
  width: 31px;
  height: 23px;
  content: "";
}

.mod-box-shop02 > .inner > .name {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.44444;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

.mod-box-shop02 > .inner > .name + .content {
  margin: 10px 0 0;
}

.mod-box-shop02 > .inner > .content > *:first-child {
  margin-top: 0;
}

.mod-box-shop02 > .inner > .content > *:last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------------------
 * .mod-box-showRoom ショールームのご案内ボックス
 * ------------------------------------------------------------------------- */
.mod-box-showRoom {
  background: #f0f1f2;
  margin: 0 0 60px;
  padding: 20px;
}

.mod-box-showRoom > .hdg {
  font-size: 3rem;
  font-weight: bold;
  overflow: hidden;
  margin: 0 0 20px;
}

.mod-box-showRoom > .body {
  margin: 0 0 10px;
}

.mod-box-showRoom > .body > .detail > .content {
  margin: 10px 0;
}

.mod-box-showRoom > .body > .detail > .content > *:first-child {
  margin-top: 0;
}

.mod-box-showRoom > .body > .detail > .content > *:last-child {
  margin-bottom: 0;
}

.mod-box-showRoom > .body > .detail > .nearest {
  background: #fff;
  margin-bottom: 20px;
  padding: 15px 20px;
}

.mod-box-showRoom > .body > .detail > .nearest > .txt {
  font-weight: bold;
  margin-bottom: 10px;
}

.mod-box-showRoom > .body > .detail > .nearest > .content > *:first-child {
  margin-top: 0;
}

.mod-box-showRoom > .body > .detail > .nearest > .content > *:last-child {
  margin-bottom: 0;
}

.mod-box-showRoom > .body > .map {
  text-align: center;
}

.mod-box-showRoom > .foot {
  text-align: center;
}

.mod-box-showRoom > .foot > .content > *:first-child {
  margin-top: 0;
}

.mod-box-showRoom > .foot > .content > *:last-child {
  margin-bottom: 0;
}

.mod-box-showRoom > .foot > .content > .mod-btn {
  margin-top: 0;
}

.mod-box-showRoom > .foot > .content > .mod-btn > .btn + .btn {
  margin-top: 5px;
}

/* ----------------------------------------------------------------------------
 * .mod-box-cost コスト表示ボックス
 * ------------------------------------------------------------------------- */
.mod-box-cost {
  margin: 0 0 10px;
}

.mod-box-cost > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.mod-box-cost > .list > div {
  background: #f0f1f2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 20px;
}

.mod-box-cost > .list > div dt {
  padding: 0 20px 0 0;
}

.mod-box-cost > .list > div dd {
  font-size: 1.6rem;
  line-height: 1.2;
  display: block;
}

.mod-box-cost > .list > div dd > .num {
  font-size: 3rem;
  font-weight: bold;
}

.mod-box-cost > .list > div + div {
  margin: 0 0 0 4px;
}

/* ----------------------------------------------------------------------------
 * .mod-box-reformPoint リフォームポイント表示ボックス
 * ------------------------------------------------------------------------- */
.mod-box-reformPoint > .inner {
  background: #f6f6f6;
  padding: 20px 17px;
  border: 1px dashed #9cc715;
  border-radius: 5px;
}

.mod-box-reformPoint > .inner > .title {
  font-size: 1.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 0 17px;
}

.mod-box-reformPoint > .inner > .title > span {
  margin: 0 0 0 31px;
  padding: 0 1px 3px;
}

.mod-box-reformPoint > .inner > .title > span::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -82px 0;
  background-size: 180px 153px;
  top: -5px;
  left: -33px;
  width: 25px;
  height: 37px;
}

.mod-box-reformPoint > .inner > .content {
  font-size: 1.3rem;
  line-height: 1.84615;
}

.mod-box-reformPoint > .inner > .content > *:first-child {
  margin-top: 0;
}

.mod-box-reformPoint > .inner > .content > *:last-child {
  margin-bottom: 0;
}

.mod-box-usersVoice {
  margin: 55px 0 14px;
}

.mod-box-usersVoice > .inner {
  font-size: 1.4rem;
  line-height: 1.71429;
  letter-spacing: .5px;
  background: #f8fcec;
  padding: 9px 17px 17px;
  border: 1px solid #9cc715;
  border-radius: 6px;
}

.mod-box-usersVoice > .inner > .title {
  text-align: center;
  margin: -34px 0 9px;
}

/* ============================================================================
 * _pnl modules
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .mod-pnl 汎用パネル
 * ------------------------------------------------------------------------- */
.mod-pnl {
  text-align: left;
  margin: 50px 0 100px;
}

.mod-pnl[data-col] > .inner > .col.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-pnl[data-col] > .inner > .col.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-pnl[data-col="auto"] > .inner > .col {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-pnl[data-col="1"] > .inner > .col {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
}

.mod-pnl[data-col="2"] > .inner > .col {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-pnl[data-col="3"] > .inner > .col {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-pnl[data-col="4"] > .inner > .col {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-pnl[data-col="5"] > .inner > .col {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-pnl[data-col="6"] > .inner > .col {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-pnl > .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -1px 0 0 -1px;
}

.mod-pnl > .inner > .col {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  padding: 1px 0 0 1px;
}

.mod-pnl > .inner > .col > .pnl {
  text-decoration: none;
  color: inherit;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  width: 100%;
}

.mod-pnl > .inner > .col > .pnl:focus {
  outline: 1px dotted #333;
  outline: -webkit-focus-ring-color auto 5px;
}

.mod-pnl > .inner > .col > .pnl > * {
  min-height: calc(0%);
}

.mod-pnl > .inner > .col > .pnl > .summary {
  position: relative;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 12px 20px 12px 20px;
}

.mod-pnl > .inner > .col > .pnl > .summary > .title {
  font-size: 1.4rem;
  font-weight: bold;
  padding: 0 5px 0 0;
}

.mod-pnl > .inner > .col > .pnl > .summary > .title > b {
  position: relative;
  display: block;
}

.mod-pnl > .inner > .col > .pnl > .summary > .title > span {
  font-weight: normal;
}

.mod-pnl > .inner > .col > .pnl > .summary > .title:not(:last-child) {
  font-size: 1.8rem;
  letter-spacing: -.3px;
  padding: 1px;
}

.mod-pnl > .inner > .col > .pnl > .summary > .title + .description {
  margin: 12px 0 0;
  padding-top: 13px;
  border-top: 1px solid #ccc;
}

.mod-pnl > .inner > .col > .pnl > .summary > .description {
  padding: 0 5px 0 0;
}

.mod-pnl > .inner > .col > .pnl > .summary > .description p + p {
  margin-top: 4px;
}

.mod-pnl > .inner > .col > .pnl > .summary > .description p > .item {
  line-height: 1.21429;
  display: block;
}

.mod-pnl > .inner > .col > .pnl > .summary > .description p > .cost {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.2;
  display: block;
}

.mod-pnl > .inner > .col > .pnl > .summary > .description p > .cost > .num {
  font-size: 3rem;
  font-weight: bold;
}

.mod-pnl > .inner > .col > .pnl > .img {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mod-pnl > .inner > .col > .pnl > .img span {
  display: block;
  width: 100%;
}

.mod-pnl > .inner > .col > .pnl > .img img {
  width: 100%;
  max-width: 100%;
  opacity: 1;
}

.mod-pnl > .inner > .col > .pnl.of-video > .summary > .title > b {
  padding-left: 25px;
}

.mod-pnl > .inner > .col > .pnl.of-video > .summary > .title > b::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -146px -59.5px;
  background-size: 180px 153px;
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  left: 0;
  display: block;
  width: 17px;
  height: 17px;
  margin: auto 0;
  content: "";
}

.mod-pnl.var-02 > .inner {
  margin-top: 0;
}

.mod-pnl.var-02 > .inner > .col {
  padding-top: 0;
}

.mod-pnl.var-02 > .inner > .col > .pnl > .img {
  display: block;
  overflow: hidden;
}

.mod-pnl.var-02 > .inner > .col > .pnl > .img > span {
  position: relative;
  display: block;
  padding: 70.2194% 0 0;
}

.mod-pnl.var-02 > .inner > .col > .pnl > .img > span img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.mod-pnl.var-02 > .inner > .col > .pnl > .img > span img[data-orientation="square"],
.mod-pnl.var-02 > .inner > .col > .pnl > .img > span img[data-orientation="portrait"] {
  width: 100%;
  height: auto;
  max-height: none;
}

.mod-pnl.var-02 > .inner > .col > .pnl > .img > span img[data-orientation="landscape"] {
  width: auto;
  max-width: none;
  height: 100%;
}

.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl > .summary > .title::before,
.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl > .summary > .title::after {
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  display: block;
  margin: auto 0;
  content: "";
}

.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl > .summary > .title::before {
  background: #31b552;
  right: 0;
  width: 18px;
  height: 18px;
}

.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl > .summary > .title::after {
  right: 7px;
  width: 6px;
  height: 6px;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 1px solid #fff;
  border-width: 1px 1px 0 0;
}

.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl[href^="#anc-"] > .summary > .title::before,
.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl[href^="#anc-"] > .summary > .title::after {
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  display: block;
  margin: auto 0;
  content: "";
}

.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl[href^="#anc-"] > .summary > .title::before {
  background: #31b552;
  right: 0;
  width: 18px;
  height: 18px;
}

.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl[href^="#anc-"] > .summary > .title::after {
  right: 6px;
  width: 6px;
  height: 6px;
  -webkit-transform: rotate(45deg) translate(-1px, -1px);
      -ms-transform: rotate(45deg) translate(-1px, -1px);
          transform: rotate(45deg) translate(-1px, -1px);
  border: 1px solid #fff;
  border-width: 0 1px 1px 0;
}

.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl[target="_blank"] > .summary > .title {
  padding-right: 0;
}

.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl[target="_blank"] > .summary > .title b {
  padding-right: 27px;
}

.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl[target="_blank"] > .summary > .title::before,
.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl[target="_blank"] > .summary > .title::after {
  display: none;
}

.mod-pnl:not(.of-mayHaveMultipleLinks) .inner > .col > .pnl[target="_blank"] > .summary > .title .icn-_blank {
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto 0;
}

.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 100%;
}

.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  width: calc(100% + 45px);
  margin: 0 -25px 0 -20px;
}

.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description > .list > li {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 100%;
  padding: 0 25px;
}

.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description > .list > li > a {
  text-decoration: none;
  display: block;
  width: 100%;
}

.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description > .list > li > a::before,
.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description > .list > li > a::after {
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  display: block;
  margin: auto 0;
  content: "";
}

.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description > .list > li > a::before {
  background: #31b552;
  right: 0;
  width: 18px;
  height: 18px;
}

.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description > .list > li > a::after {
  right: 7px;
  width: 6px;
  height: 6px;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 1px solid #fff;
  border-width: 1px 1px 0 0;
}

.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description > .list > li > a[href^="#anc-"]::before,
.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description > .list > li > a[href^="#anc-"]::after {
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  display: block;
  margin: auto 0;
  content: "";
}

.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description > .list > li > a[href^="#anc-"]::before {
  background: #31b552;
  right: 0;
  width: 18px;
  height: 18px;
}

.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description > .list > li > a[href^="#anc-"]::after {
  right: 6px;
  width: 6px;
  height: 6px;
  -webkit-transform: rotate(45deg) translate(-1px, -1px);
      -ms-transform: rotate(45deg) translate(-1px, -1px);
          transform: rotate(45deg) translate(-1px, -1px);
  border: 1px solid #fff;
  border-width: 0 1px 1px 0;
}

.mod-pnl.of-mayHaveMultipleLinks .inner > .col > .pnl > .summary > .description > .list > li + li {
  margin-top: 13px;
  padding-top: 13px;
  border-top: 1px solid #fff;
}

.mod-pnl.of-examplePages > .inner > .col > .pnl {
  overflow: visible;
}

.mod-pnl.of-examplePages > .inner > .col > .pnl > .summary {
  background: #fff;
  padding: 7px 26px 5px 7px;
  border: 1px solid #ccc;
  border-width: 0 0 1px 1px;
}

.mod-pnl.of-examplePages > .inner > .col > .pnl > .summary > .title {
  font-size: 1.1rem;
}

.mod-pnl.of-examplePages > .inner > .col > .pnl > .summary > .title::before {
  display: none;
}

.mod-pnl.of-examplePages > .inner > .col > .pnl > .summary > .title::after {
  position: absolute;
  top: 1px;
  right: 3px;
  bottom: 0;
  width: 0;
  height: 0;
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  border: 1px solid transparent;
  border-width: 6px 8px;
  border-left-color: #43af35;
}

.mod-pnl.of-examplePages[data-col="2"] > .inner > .col:nth-child(even) > .pnl > .summary {
  margin-left: -1px;
  border-right-width: 1px;
}

.mod-pnl.of-examplePages[data-col="2"] > .inner > .col:nth-child(odd):last-child > .pnl > .summary {
  border-right-width: 1px;
}

/* ----------------------------------------------------------------------------
 * .mod-pnl-example 事例一覧パネル
 * ------------------------------------------------------------------------- */
.mod-pnl-example {
  margin: 0 0 80px;
}

.mod-pnl-example[data-col] > .inner > .col.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-pnl-example[data-col] > .inner > .col.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-pnl-example[data-col="auto"] > .inner > .col {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-pnl-example[data-col="2"] > .inner > .col {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-pnl-example[data-col="3"] > .inner > .col {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-pnl-example[data-col="4"] > .inner > .col {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-pnl-example[data-col="5"] > .inner > .col {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-pnl-example[data-col="6"] > .inner > .col {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-pnl-example > .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: auto;
  margin: -4px 0 0 -4px;
}

.mod-pnl-example > .inner > .col {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  margin-bottom: 0;
  padding: 4px 0 0 4px;
}

.mod-pnl-example > .inner > .row {
  width: 100%;
}

html[data-script-enabled="true"] .mod-pnl-example.js-pnl-lyt > .inner {
  position: relative;
  display: block;
  margin: -4px 0 0 -4px;
}

html[data-script-enabled="true"] .mod-pnl-example.js-pnl-lyt > .inner .col {
  min-width: 0;
  max-width: none;
  padding: 4px 0 0 4px;
  -webkit-transition: .5s top ease-out, .5s left ease-out, .5s width ease-out;
  -o-transition: .5s top ease-out, .5s left ease-out, .5s width ease-out;
  transition: .5s top ease-out, .5s left ease-out, .5s width ease-out;
}

.mod-pnl-example.js-pnl-lyt.is-layouted > .inner .col {
  position: absolute;
}

.mod-pnl-example > .inner .col {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 4px;
}

.mod-pnl-example > .inner .col > .pnl {
  text-decoration: none;
  color: inherit;
  position: relative;
  z-index: 1;
  overflow: hidden;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.mod-pnl-example > .inner .col > .pnl:focus {
  outline: 1px dotted #333;
  outline: -webkit-focus-ring-color auto 5px;
}

.mod-pnl-example > .inner .col > .pnl > .summary {
  font-size: 1.4rem;
  font-weight: bold;
  color: #fff;
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 15px;
}

.mod-pnl-example > .inner .col > .pnl > .summary > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -4px 0 0 -4px;
}

.mod-pnl-example > .inner .col > .pnl > .summary > .list > li {
  font-size: 1.2rem;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 4px 0 0 4px;
}

.mod-pnl-example > .inner .col > .pnl > .summary > .list > li.of-2line {
  font-size: 1.1rem;
  line-height: 1.27273;
}

.mod-pnl-example > .inner .col > .pnl > .summary > .list > li > b {
  font-weight: inherit;
  letter-spacing: -.9px;
  text-align: center;
  color: #fff;
  background: transparent;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 20px;
  padding: 2px 17px;
  border: 1px solid #fff;
}

.mod-pnl-example > .inner .col > .pnl > .summary > .list > li.of-contest > b {
  font-size: 1rem;
  white-space: nowrap;
  color: #666;
  background: #ffe63b;
  padding: 4px 3px;
  border-color: #ffe63b;
}

.mod-pnl-example > .inner .col > .pnl > .summary p {
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  margin: 0 0 10px;
}

.mod-pnl-example > .inner .col > .pnl > .summary::after {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(99%, #030303), to(black));
  background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #030303 99%, black 100%);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #030303 99%, black 100%);
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 130px;
  content: "";
  opacity: .75;
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#000000',GradientType=0 );
}

.mod-pnl-example > .inner .col > .pnl > .img {
  padding: 100% 0 0;
}

.mod-pnl-example > .inner .col > .pnl > .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.mod-pnl-example > .inner .col > .pnl > .img img[data-orientation="square"] {
  min-width: 100%;
  min-height: 100%;
}

.mod-pnl-example > .inner .col > .pnl > .img img[data-orientation="landscape"] {
  width: auto;
  max-width: none;
  height: 100%;
}

.mod-pnl-example > .inner .col > .pnl > .img img[data-orientation="portrait"] {
  width: 100%;
  height: auto;
  max-height: none;
}

.mod-pnl-example > .inner .col > .pnl > .img img[data-orientation="squere"] {
  min-width: 100%;
  min-height: 100%;
}

.mod-pnl-example .func-btn {
  font-size: 1.1rem;
  line-height: 1.45455;
  white-space: nowrap;
  color: #fff;
  background: rgba(0, 0, 0, 0.15);
  position: absolute;
  z-index: 3;
  top: 8px;
  right: 5px;
  padding: 2px 4px 1px 20px;
  border: 1px solid #fff;
  border-radius: 2px;
}

.mod-pnl-example .func-btn::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -169px 0;
  background-size: 180px 153px;
  position: absolute;
  top: 4px;
  left: 6px;
  display: block;
  width: 11px;
  height: 11px;
  content: "";
}

.mod-pnl-example .func-btn[data-is-favorited="true"]::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -37px -140px;
  background-size: 180px 153px;
  width: 12px;
  height: 12px;
}

/* ============================================================================
 * _lyt modules
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .mod-lyt 汎用レイアウト
 * ------------------------------------------------------------------------- */
.mod-lyt {
  margin: 0 0 60px;
}

.mod-lyt[data-col] > .inner > .col.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-lyt[data-col] > .inner > .col.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-lyt[data-col="auto"] > .inner > .col {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-lyt[data-col="2"] > .inner > .col {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-lyt[data-col="3"] > .inner > .col {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-lyt[data-col="4"] > .inner > .col {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-lyt[data-col="5"] > .inner > .col {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-lyt[data-col="6"] > .inner > .col {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-lyt > .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -10px 0 0 -10px;
}

.mod-lyt > .inner > .col {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  padding: 10px 0 0 10px;
}

.mod-lyt > .inner > .col > *:first-child {
  margin-top: 0;
}

.mod-lyt > .inner > .col > *:last-child {
  margin-bottom: 0;
}

.mod-lyt.of-narrow > .inner {
  margin-top: -4px;
  margin-left: -4px;
}

.mod-lyt.of-narrow > .inner > .col {
  padding-top: 4px;
  padding-left: 4px;
}

.mod-lyt.var-02 > .inner > .col {
  position: relative;
  padding-right: 20px;
  padding-left: 30px;
}

.mod-lyt.var-02 > .inner > .col::before {
  background: #ccc;
  position: absolute;
  top: 10px;
  left: 6px;
  display: none;
  width: 1px;
  height: calc(100% - 10px);
  content: "";
}

.mod-lyt.var-02.of-narrow > .inner > .col {
  padding-left: 24px;
}

.mod-lyt.var-02.of-narrow > .inner > .col::before {
  top: 4px;
  height: calc(100% - 4px);
}

.mod-lyt.var-02[data-col="2"] > .inner > .col:not(:nth-child(2n+1))::before {
  display: block;
}

.mod-lyt.var-02[data-col="3"] > .inner > .col:not(:nth-child(3n+1))::before {
  display: block;
}

.mod-lyt.var-02[data-col="4"] > .inner > .col:not(:nth-child(4n+1))::before {
  display: block;
}

.mod-lyt.var-02[data-col="4"] > .inner > .col:not(:nth-child(4n+1))::before {
  display: block;
}

.mod-lyt.var-02[data-col="5"] > .inner > .col:not(:nth-child(5n+1))::before {
  display: block;
}

.mod-lyt.var-02[data-col="6"] > .inner > .col:not(:nth-child(6n+1))::before {
  display: block;
}

.mod-lyt.align-center > .inner {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mod-lyt.align-right > .inner {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

/* ----------------------------------------------------------------------------
 * .mod-lyt-exampleDetail 事例詳細用レイアウト
 * ------------------------------------------------------------------------- */
.mod-lyt-exampleDetail {
  margin: 0 0 18px;
}

.mod-lyt-exampleDetail > .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod-lyt-exampleDetail > .inner > .media {
  margin: 0 -12px 25px;
}

.mod-lyt-exampleDetail > .inner > .media > .wrap {
  padding: 0;
}

.mod-lyt-exampleDetail > .inner > .media > .wrap::after {
  display: none;
}

.mod-lyt-exampleDetail > .inner > .media > .wrap img {
  display: block;
  width: 100%;
}

.mod-lyt-exampleDetail > .inner > .media > .thums {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: 100%;
  margin: 20px 0 0;
}

.mod-lyt-exampleDetail > .inner > .media > .thums > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  max-width: 100%;
  margin: -10px 0 0 -10px;
}

.mod-lyt-exampleDetail > .inner > .media > .thums > .list > li {
  position: relative;
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  min-width: 25%;
  max-width: 25%;
  padding: 10px 0 0 10px;
}

.mod-lyt-exampleDetail > .inner > .media > .thums > .list > li a {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  padding: 100% 0 0;
}

html[data-script-enabled="true"] .mod-lyt-exampleDetail > .inner > .media > .thums > .list > li a::before {
  background: rgba(255, 255, 255, 0.5);
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  -webkit-transition: .2s opacity ease-out;
  -o-transition: .2s opacity ease-out;
  transition: .2s opacity ease-out;
  opacity: 1;
}

html[data-script-enabled="true"] .mod-lyt-exampleDetail > .inner > .media > .thums > .list > li a.is-current::before {
  opacity: 0;
}

.mod-lyt-exampleDetail > .inner > .media > .thums > .list > li img {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  opacity: 1;
}

.mod-lyt-exampleDetail > .inner > .media > .thums > .list > li img[data-orientation="square"] {
  min-width: 100%;
  min-height: 100%;
}

.mod-lyt-exampleDetail > .inner > .media > .thums > .list > li img[data-orientation="landscape"] {
  width: auto;
  max-width: none;
  height: 100%;
}

.mod-lyt-exampleDetail > .inner > .media > .thums > .list > li img[data-orientation="portrait"] {
  width: 100%;
  height: auto;
  max-height: none;
}

.mod-lyt-exampleDetail > .inner > .content {
  width: 100%;
}

.mod-lyt-exampleDetail > .inner > .content > *:first-child {
  margin-top: 0;
}

.mod-lyt-exampleDetail > .inner > .content > *:last-child {
  margin-bottom: 0;
}

.mod-lyt-exampleDetail.var-02 > .inner > .media {
  width: 100%;
  margin-right: 0;
  margin-left: 0;
}

.mod-lyt-exampleDetail.var-02 > .inner > .media > .wrap {
  margin: 0 -12px;
}

.mod-lyt-exampleDetail.var-02 > .inner > .media > .wrap > span {
  height: 50vh;
}

/* ----------------------------------------------------------------------------
 * .mod-lyt-reformFlowGrid 工事の流れ
 * ------------------------------------------------------------------------- */
.mod-lyt-reformFlowGrid {
  margin: 0 0 30px;
}

.mod-lyt-reformFlowGrid > *:first-child {
  display: none;
}

.mod-lyt-reformFlowGrid > .inner:not([id]) {
  background: red;
}

.mod-lyt-reformFlowGrid > .inner > .row {
  margin-bottom: 10px;
}

.mod-lyt-reformFlowGrid > .inner > .row > .day {
  font-weight: bold;
  color: #fff;
  background-color: #333;
  margin: 30px 0 5px;
  padding: 5px 10px;
}

.mod-lyt-reformFlowGrid > .inner > .row > .day + .summary {
  margin-top: 0;
}

.mod-lyt-reformFlowGrid > .inner > .row > .summary {
  background-color: #e3eecc;
  margin: 10px 0 0;
  padding: 10px;
}

.mod-lyt-reformFlowGrid > .inner > .row > .summary > .hdg {
  font-size: 1.6rem;
  font-weight: bold;
}

.mod-lyt-reformFlowGrid > .inner > .row > .summary > .hdg strong {
  font-size: 2.2rem;
  display: block;
}

.mod-lyt-reformFlowGrid > .inner > .row > .summary.of-before {
  background-color: #f0f1f2;
  margin-bottom: 0;
}

.mod-lyt-reformFlowGrid > .inner > .row > .summary.of-before > .hdg {
  margin-bottom: 20px;
}

.mod-lyt-reformFlowGrid > .inner > .row > .media img {
  width: 100%;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail {
  background-color: #f0f1f2;
  padding: 20px;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .state {
  margin-bottom: 15px;
  padding-bottom: 20px;
  border-bottom: solid 1px #ccc;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .state > .hdg {
  font-weight: bold;
  margin-bottom: 10px;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .state > .tag > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -2px 0 0 -2px;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .state > .tag > .list > li {
  padding: 2px 0 0 2px;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > div {
  width: 35%;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > div:nth-child(even) {
  width: 74%;
  margin-left: 1%;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > div > dt {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > div > dd {
  background-color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 60px;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > div > dd span {
  white-space: nowrap;
  position: relative;
  display: block;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > div > dd span > span {
  position: absolute;
  z-index: -1;
  overflow: hidden;
  width: 0;
  height: 0;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > div > dd span > sup {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 100%;
  margin: 0 0 0 3px;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > div > dd span.enabled {
  width: 16px;
  height: 16px;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > div > dd span.enabled::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  border: solid 1px #6a6a6a;
  border-radius: 50%;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > div > dd span.disabled {
  width: 10px;
  height: 10px;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > div > dd span.disabled::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1px;
  height: 100%;
  content: "";
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  border: solid 1px #6a6a6a;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > div > dd span.disabled::after {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1px;
  height: 100%;
  content: "";
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: solid 1px #6a6a6a;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .content {
  padding: 20px 0 0;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .content > *:first-child {
  margin-top: 0;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .content > *:last-child {
  margin-bottom: 0;
}

.mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > *.js-adjust-height-item {
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
}

.mod-lyt-reformFlowGrid > .inner > .row > *:first-child {
  margin-top: 0;
}

/* ============================================================================
 * _form フォーム関連モジュール
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * %form-label フォームラベル
 * ------------------------------------------------------------------------- */
.mod-form-txt > label,
.mod-form-select > label,
.mod-form-split > legend,
.mod-form-fieldset > .inner > .group > .label {
  font-size: 1.6rem;
  color: #333;
  position: relative;
  display: inline-block;
}

.mod-form-txt > label > .required,
.mod-form-select > label > .required,
.mod-form-split > legend > .required,
.mod-form-fieldset > .inner > .group > .label > .required {
  font-size: 1.2rem;
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  text-align: center;
  vertical-align: middle;
  color: #ff5757;
  background: transparent;
  position: relative;
  top: -2px;
  display: inline-block;
  margin: 0 0 0 5px;
  padding: 5px 5px 4px 5px;
  border: 1px solid #ff5757;
}

.mod-form-txt > label ~ .note,
.mod-form-select > label ~ .note,
.mod-form-split > legend ~ .note,
.mod-form-fieldset > .inner > .group > .label ~ .note {
  margin-left: 16px;
}

.mod-form-txt > label .func-img,
.mod-form-select > label .func-img,
.mod-form-split > legend .func-img,
.mod-form-fieldset > .inner > .group > .label .func-img {
  vertical-align: text-top;
  position: relative;
  display: inline-block;
  margin: 0 0 0 8px;
}

/* ----------------------------------------------------------------------------
 * %form-note フォーム説明・注釈テキスト
 * ------------------------------------------------------------------------- */
.mod-form-txt > p,
.mod-form-choiceImage > p,
.mod-form-select > p,
.mod-form-split > p {
  font-size: 1.4rem;
  margin: 0 0 7px;
}

.mod-form-txt > p.of-invalid,
.mod-form-choiceImage > p.of-invalid,
.mod-form-select > p.of-invalid,
.mod-form-split > p.of-invalid {
  color: #d30e38;
}

.mod-form-txt > p.of-notice,
.mod-form-choiceImage > p.of-notice,
.mod-form-select > p.of-notice,
.mod-form-split > p.of-notice {
  font-size: 1.2rem;
  display: table;
}

.mod-form-txt > p.of-notice > *,
.mod-form-choiceImage > p.of-notice > *,
.mod-form-select > p.of-notice > *,
.mod-form-split > p.of-notice > * {
  display: table-cell;
}

.mod-form-txt > p.of-notice > span,
.mod-form-choiceImage > p.of-notice > span,
.mod-form-select > p.of-notice > span,
.mod-form-split > p.of-notice > span {
  padding: 0 4px 0 0;
}

.mod-form-txt > p + p,
.mod-form-choiceImage > p + p,
.mod-form-select > p + p,
.mod-form-split > p + p {
  margin-top: -8px;
}

/* ----------------------------------------------------------------------------
 * %form-txt テキストフィールド
 * ------------------------------------------------------------------------- */
.mod-form-select > .inner > select,
.mod-form-txt > input,
.mod-form-txt > textarea {
  font-size: 1.6rem;
  line-height: 1.15;
  display: block;
  min-height: 38px;
  /* for IE11 */
  padding: 11px 14px 9px;
  border: 1px solid #ccc;
}

.mod-form-select > .inner > select[aria-invalid="true"],
.mod-form-txt > input[aria-invalid="true"],
.mod-form-txt > textarea[aria-invalid="true"] {
  background: #ffc0cb;
  border-color: #d30e38;
}

.mod-form-select > .inner > select:focus,
.mod-form-txt > input:focus,
.mod-form-txt > textarea:focus {
  outline: 0;
  -webkit-box-shadow: 0 0 0 2px #b2c4ff;
          box-shadow: 0 0 0 2px #b2c4ff;
}

.mod-form-select > .inner > select[readonly],
.mod-form-txt > input[readonly],
.mod-form-txt > textarea[readonly] {
  padding-right: 0;
  padding-left: 0;
  border: 0;
}

.mod-form-select > .inner > select:not(:last-child),
.mod-form-txt > input:not(:last-child),
.mod-form-txt > textarea:not(:last-child) {
  margin: 0 0 4px;
}

/* ----------------------------------------------------------------------------
 * %form-select セレクトボックス
 * ------------------------------------------------------------------------- */
.mod-form-select > .inner {
  background: #fff;
  position: relative;
  z-index: 1;
  max-width: 221px;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.mod-form-select > .inner > select {
  background: transparent;
  position: relative;
  width: 100%;
  padding-right: 40px;
  border: 0;
  border-radius: 4px;
}

.mod-form-select > .inner > select:disabled {
  background: #e6e6e6;
  z-index: 2;
  opacity: .8;
}

.mod-form-select > .inner::before,
.mod-form-select > .inner::after {
  position: absolute;
  display: block;
  content: "";
}

.mod-form-select > .inner::before {
  z-index: -2;
  top: 0;
  right: 0;
  bottom: 0;
  width: 34px;
  margin: auto 0;
}

.mod-form-select > .inner::after {
  pointer-events: none;
  position: absolute;
  top: calc(50% - 3px);
  right: 13px;
  display: block;
  border: solid transparent;
  border-width: 6px 5px;
  border-top-color: #505050;
}

/* ----------------------------------------------------------------------------
 * .mod-form-txt テキストフィールド
 * ------------------------------------------------------------------------- */
.mod-form-txt {
  margin: 0 0 24px;
}

.mod-form-txt > label {
  margin: 0 0 5px;
}

.mod-form-txt + .mod-form-txt {
  margin-top: -13px;
}

.mod-form-txt > input,
.mod-form-txt > textarea {
  width: 100%;
}

.mod-form-txt > textarea {
  max-width: calc(100% - 2px);
  min-height: 136px;
}

/* ----------------------------------------------------------------------------
 * .mod-form-checkbox チェックボックス
 * ------------------------------------------------------------------------- */
.mod-form-checkbox {
  margin: 0 0 32px;
  padding: 0;
  border: 0;
}

.mod-form-checkbox[data-col] > .list > li.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-form-checkbox[data-col] > .list > li.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-form-checkbox[data-col="auto"] > .list > li {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-form-checkbox[data-col="2"] > .list > li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-form-checkbox[data-col="3"] > .list > li {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-form-checkbox[data-col="4"] > .list > li {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-form-checkbox[data-col="5"] > .list > li {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-form-checkbox[data-col="6"] > .list > li {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-form-checkbox[data-col] > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -8px 0 0 -38px;
}

.mod-form-checkbox[data-col] > .list > li {
  padding: 8px 0 0 38px;
}

.mod-form-checkbox label {
  font-size: 1.6rem;
  position: relative;
  display: inline-block;
  min-height: 28px;
  padding: 0 0 0 29px;
}

.mod-form-checkbox label img {
  vertical-align: text-top;
  position: relative;
  display: inline-block;
  margin: 0 0 0 8px;
}

.mod-form-checkbox label span::before,
.mod-form-checkbox label span::after {
  position: absolute;
  z-index: 0;
  display: block;
  content: "";
}

.mod-form-checkbox label span::before {
  background: #fff;
  top: .1875em;
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #ccc;
}

.mod-form-checkbox label span::after {
  top: .25em;
  left: 6px;
  width: 9px;
  height: 14px;
  -webkit-transition: .2s opacity ease-out;
  -o-transition: .2s opacity ease-out;
  transition: .2s opacity ease-out;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 3px solid #505050;
  border-width: 0 3px 3px 0;
  opacity: 0;
}

.mod-form-checkbox label input[type="checkbox"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  opacity: 0;
}

.mod-form-checkbox label input[type="checkbox"]:disabled + span {
  color: #999;
}

.mod-form-checkbox label input[type="checkbox"]:disabled + span::before {
  background: #f5f5f5;
}

.mod-form-checkbox label input[type="checkbox"]:checked + span {
  font-weight: bold;
}

.mod-form-checkbox label input[type="checkbox"]:checked + span::after {
  opacity: 1;
}

.mod-form-checkbox label input[type="checkbox"]:focus + span::before {
  outline: 1px dashed #333;
  outline: -webkit-focus-ring-color auto 5px;
}

/* ----------------------------------------------------------------------------
 * .mod-form-radio ラジオボタン
 * ------------------------------------------------------------------------- */
.mod-form-radio {
  margin: 0 0 32px;
  padding: 0;
  border: 0;
}

.mod-form-radio[data-col] > .list > li.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-form-radio[data-col] > .list > li.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-form-radio[data-col="auto"] > .list > li {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-form-radio[data-col="2"] > .list > li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-form-radio[data-col="3"] > .list > li {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-form-radio[data-col="4"] > .list > li {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-form-radio[data-col="5"] > .list > li {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-form-radio[data-col="6"] > .list > li {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-form-radio[data-col] > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -8px 0 0 -38px;
}

.mod-form-radio[data-col] > .list > li {
  padding: 8px 0 0 38px;
}

.mod-form-radio label {
  font-size: 1.6rem;
  position: relative;
  display: inline-block;
  padding: 0 0 0 29px;
}

.mod-form-radio label span::before,
.mod-form-radio label span::after {
  position: absolute;
  z-index: 0;
  display: block;
  content: "";
}

.mod-form-radio label span::before {
  background: #fff;
  top: .125em;
  left: 0;
  width: 22px;
  height: 22px;
  border: 1px solid #ccc;
  border-radius: 44px;
}

.mod-form-radio label span::after {
  background: #505050;
  top: calc(.125em + 5px);
  left: 5px;
  width: 12px;
  height: 12px;
  -webkit-transition: .2s opacity ease-out;
  -o-transition: .2s opacity ease-out;
  transition: .2s opacity ease-out;
  border-radius: 24px;
  opacity: 0;
}

.mod-form-radio label input[type="radio"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  opacity: 0;
}

.mod-form-radio label input[type="radio"]:checked + span::after {
  opacity: 1;
}

.mod-form-radio label input[type="radio"]:disabled + span {
  color: #999;
}

.mod-form-radio label input[type="radio"]:disabled + span::before {
  background: #f5f5f5;
}

.mod-form-radio label input[type="radio"]:focus + span::before {
  outline: 1px dashed #333;
  outline: -webkit-focus-ring-color auto 5px;
}

/* ----------------------------------------------------------------------------
 * .mod-form-choiceImage  画像選択（チェックボックス、ラジオボタン）
 * ------------------------------------------------------------------------- */
.mod-form-choiceImage {
  margin: 0 0 32px;
  padding: 12px 0 0;
  border: 0;
}

.mod-form-choiceImage[data-col] > .list > li.of-full {
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  width: 100%;
  max-width: 100%;
}

.mod-form-choiceImage[data-col] > .list > li.of-fillIn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  max-width: none;
}

.mod-form-choiceImage[data-col="auto"] > .list > li {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  width: auto;
  min-width: 0;
  max-width: none;
}

.mod-form-choiceImage[data-col="2"] > .list > li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  width: 50%;
  min-width: 50%;
  max-width: 50%;
}

.mod-form-choiceImage[data-col="3"] > .list > li {
  -webkit-flex-basis: 33.33333%;
      -ms-flex-preferred-size: 33.33333%;
          flex-basis: 33.33333%;
  width: 33.33333%;
  min-width: 33.33333%;
  max-width: 33.33333%;
}

.mod-form-choiceImage[data-col="4"] > .list > li {
  -webkit-flex-basis: 25%;
      -ms-flex-preferred-size: 25%;
          flex-basis: 25%;
  width: 25%;
  min-width: 25%;
  max-width: 25%;
}

.mod-form-choiceImage[data-col="5"] > .list > li {
  -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
          flex-basis: 20%;
  width: 20%;
  min-width: 20%;
  max-width: 20%;
}

.mod-form-choiceImage[data-col="6"] > .list > li {
  -webkit-flex-basis: 16.66667%;
      -ms-flex-preferred-size: 16.66667%;
          flex-basis: 16.66667%;
  width: 16.66667%;
  min-width: 16.66667%;
  max-width: 16.66667%;
}

.mod-form-choiceImage[data-col] > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -18px 0 0 -20px;
}

.mod-form-choiceImage[data-col] > .list > li {
  padding: 18px 0 0 20px;
}

.mod-form-choiceImage[data-col="auto"] > .list {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mod-form-choiceImage > legend {
  font-size: 1.6rem;
  float: left;
  margin: 0 30px 0 0;
}

.mod-form-choiceImage > p {
  margin-top: 4px;
}

.mod-form-choiceImage > .list {
  clear: both;
}

.mod-form-choiceImage > .list > li {
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mod-form-choiceImage > .list > li > label {
  font-size: 1.6rem;
  position: relative;
}

.mod-form-choiceImage > .list > li > label > .item {
  font-size: 1.4rem;
  text-align: center;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}

.mod-form-choiceImage > .list > li > label > .item.align-left {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.mod-form-choiceImage > .list > li > label > .item > .label {
  margin: 5px 0 0;
}

.mod-form-choiceImage > .list > li > label > .item > .label .func-img {
  vertical-align: text-top;
  position: relative;
  display: inline-block;
  margin: 0 0 0 8px;
}

.mod-form-choiceImage > .list > li > label > .item > .img {
  -webkit-transition: .2s border ease-out;
  -o-transition: .2s border ease-out;
  transition: .2s border ease-out;
  border: 2px solid transparent;
}

.mod-form-choiceImage > .list > li > label > .item > .img img {
  display: block;
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"],
.mod-form-choiceImage > .list > li > label input[type="radio"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  opacity: 0;
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"] + .item > .label,
.mod-form-choiceImage > .list > li > label input[type="radio"] + .item > .label {
  position: relative;
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"] + .item > .label::before,
.mod-form-choiceImage > .list > li > label input[type="checkbox"] + .item > .label .txt::before,
.mod-form-choiceImage > .list > li > label input[type="radio"] + .item > .label::before,
.mod-form-choiceImage > .list > li > label input[type="radio"] + .item > .label .txt::before {
  position: relative;
  display: inline-block;
  content: "";
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"]:checked + .item,
.mod-form-choiceImage > .list > li > label input[type="radio"]:checked + .item {
  font-weight: bold;
  color: #30b653;
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"]:checked + .item > .img,
.mod-form-choiceImage > .list > li > label input[type="radio"]:checked + .item > .img {
  border-color: #30b653;
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"]:focus + .item > .img img,
.mod-form-choiceImage > .list > li > label input[type="radio"]:focus + .item > .img img {
  outline: 1px dashed #333;
  outline: -webkit-focus-ring-color auto 5px;
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"]:disabled + .item,
.mod-form-choiceImage > .list > li > label input[type="radio"]:disabled + .item {
  color: #999;
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"]:disabled + .item > .label::before,
.mod-form-choiceImage > .list > li > label input[type="radio"]:disabled + .item > .label::before {
  background: #f5f5f5;
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"]:disabled:checked + .item > .img,
.mod-form-choiceImage > .list > li > label input[type="radio"]:disabled:checked + .item > .img {
  border-color: #999;
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"] + .item > .label {
  padding-right: 10px;
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"] + .item > .label::before {
  background: #fff;
  z-index: 0;
  top: 5px;
  width: 20px;
  height: 20px;
  margin: 0 9px 0 0;
  border: 1px solid #ccc;
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"] + .item > .label .txt::before {
  z-index: 1;
  width: 9px;
  height: 14px;
  margin: 0 15px 0 -24px;
  -webkit-transition: .2s opacity ease-out;
  -o-transition: .2s opacity ease-out;
  transition: .2s opacity ease-out;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 3px solid #505050;
  border-width: 0 3px 3px 0;
  opacity: 0;
}

.mod-form-choiceImage > .list > li > label input[type="checkbox"]:checked + .item > .label .txt::before {
  opacity: 1;
}

.mod-form-choiceImage > .list > li > label input[type="radio"] + .item > .label {
  padding-right: 11px;
}

.mod-form-choiceImage > .list > li > label input[type="radio"] + .item > .label::before {
  background: #fff;
  top: 5px;
  width: 22px;
  height: 22px;
  border: 1px solid #ccc;
  border-radius: 44px;
}

.mod-form-choiceImage > .list > li > label input[type="radio"] + .item > .label .txt::before {
  background: #505050;
  width: 12px;
  height: 12px;
  margin: 0 10px 0 -17px;
  -webkit-transition: .2s opacity ease-out;
  -o-transition: .2s opacity ease-out;
  transition: .2s opacity ease-out;
  border-radius: 24px;
  opacity: 0;
}

.mod-form-choiceImage > .list > li > label input[type="radio"]:checked + .item > .label .txt::before {
  opacity: 1;
}

/* ----------------------------------------------------------------------------
 * .mod-form-select セレクトボックス
 * ------------------------------------------------------------------------- */
.mod-form-select {
  margin: 0 0 32px;
  padding: 0;
  border: 0;
}

.mod-form-select > label ~ .select {
  margin: 10px 0 0;
}

/* ----------------------------------------------------------------------------
 * .mod-form-split 複数の入力項目
 * ------------------------------------------------------------------------- */
.mod-form-split {
  margin: 0 0 32px;
  padding: 0;
  border: 0;
}

.mod-form-split > legend ~ .lyt {
  margin: 10px 0 0;
}

.mod-form-split > .lyt {
  font-size: 1.7rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod-form-split > .lyt > .joint {
  white-space: nowrap;
  margin: 0 8px;
}

.mod-form-split > .lyt > .joint:first-child {
  margin-left: 0;
}

.mod-form-split > .lyt > div > *:first-child {
  margin-top: 0;
}

.mod-form-split > .lyt > div > *:last-child {
  margin-bottom: 0;
}

.mod-form-split > .lyt > div:not(.joint) + div:not(.joint) {
  margin: 0 0 0 8px;
}

.mod-form-split[data-type^="name"] > .lyt > .joint {
  -webkit-flex-basis: 36px;
      -ms-flex-preferred-size: 36px;
          flex-basis: 36px;
  min-width: 36px;
  max-width: 36px;
}

.mod-form-split .mod-form-txt {
  width: 100%;
  max-width: 70px;
}

/* ----------------------------------------------------------------------------
 * .mod-form-fieldset フィールドセット
 * ------------------------------------------------------------------------- */
.mod-form-fieldset {
  margin: 0 0 40px;
  border: solid #ddd;
  border-width: 0;
}

.mod-form-fieldset + [class^="mod-form"] {
  border-top: 1px solid #ccc;
}

.mod-form-fieldset + [class^="mod-form"]:not(.mod-form-fieldset) {
  margin-top: -44px;
  padding-top: 12px;
}

.mod-form-fieldset + [class^="mod-form"].mod-form-fieldset {
  margin-top: -40px;
}

.mod-form-fieldset + .mod-btn {
  margin-top: -30px;
}

.mod-form-fieldset > .inner {
  padding: 20px 0 20px;
}

.mod-form-fieldset > .inner > .group {
  display: flow-root;
  padding: 0;
  border: 0;
}

html[data-browser-trident="true"] .mod-form-fieldset > .inner > .group {
  display: block;
}

.mod-form-fieldset > .inner > .group::after {
  display: block;
  clear: both;
  content: "";
}

.mod-form-fieldset > .inner > .group > .label {
  top: 6px;
  margin: 0 0 17px;
  padding: 0 41px 0 0;
}

.mod-form-fieldset > .inner > .group > .label > .required {
  position: absolute;
  top: 3px;
  right: 0;
}

.mod-form-fieldset > .inner > .group > .content > *:first-child {
  margin-top: 0;
}

.mod-form-fieldset > .inner > .group > .content > *:last-child {
  margin-bottom: 0;
}

.mod-form-fieldset > .inner > .group > .content > .mod-form-checkbox:first-child {
  margin-top: 5px;
}

.mod-form-fieldset > .inner > div.group > legend {
  background: #f00;
}

.mod-form-fieldset > .inner > fieldset.group > label {
  background: #f00;
}

.mod-form-fieldset.var-02 > .inner > .group > .label {
  font-size: 1.8rem;
  font-weight: bold;
  float: none;
  overflow: hidden;
  width: auto;
  margin: 0 0 20px;
}

.mod-form-fieldset.var-02 > .inner > .group > .label .required {
  font-size: 1.2rem;
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  text-align: center;
  vertical-align: middle;
  color: #ff5757;
  background: transparent;
  position: relative;
  top: -2px;
  display: inline-block;
  margin: 0 0 0 5px;
  padding: 5px 5px 4px 5px;
  border: 1px solid #ff5757;
}

.mod-form-fieldset.var-02 > .inner > .group > .label ~ .content {
  float: none;
  width: auto;
  padding-left: 0;
}

/* ----------------------------------------------------------------------------
 * .mod-form-searchControl 検索画面用UI
 * ------------------------------------------------------------------------- */
.mod-form-searchControl > .inner > .current {
  font-size: 1.4rem;
  font-weight: bold;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.mod-form-searchControl > .inner > .current > p {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mod-form-searchControl > .inner > .current .length {
  font-size: 2rem;
  font-weight: bold;
  margin: 0 1px 1px 10px;
}

.mod-form-searchControl > .inner > .current .unit {
  font-size: 1.4rem;
  font-weight: bold;
  margin-right: 5px;
}

.mod-form-searchControl > .inner > .current .count {
  font-size: 2rem;
  font-weight: bold;
  margin: 0 0 1px 6px;
}

.mod-form-searchControl > .inner > .pager {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin: 15px 0;
}

.mod-form-searchControl > .inner > .pager ul {
  margin: -5px 0 0 -5px;
}

.mod-form-searchControl > .inner > .pager li {
  padding: 5px 0 0 5px;
}

.mod-form-searchControl > .inner > .pager a {
  text-decoration: none;
  text-align: center;
  color: #333;
  display: block;
  min-width: 35px;
  padding: 1px 0 2px;
  border: 1px solid transparent;
}

.mod-form-searchControl > .inner > .pager a[href] {
  background: #fff;
  border-color: #aaa;
}

.mod-form-searchControl > .inner > .pager a:focus {
  outline: 1px dashed #333;
  outline: -webkit-focus-ring-color auto 5px;
}

.mod-form-searchControl > .inner > .pager a[aria-current="page"]:not([href]) {
  font-weight: bold;
  color: #fff;
  background: #aaa;
}

.mod-form-searchControl > .inner > .pager > .list {
  font-size: 1.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mod-form-searchControl > .inner > .pager > .list > .prev {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}

.mod-form-searchControl > .inner > .pager > .list > .prev a {
  min-width: 60px;
}

.mod-form-searchControl > .inner > .pager > .list > .next {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
}

.mod-form-searchControl > .inner > .pager > .list > .next a {
  min-width: 60px;
}

.mod-form-searchControl > .inner > .pager > .list > .page {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}

.mod-form-searchControl > .inner > .pager > .list > .page > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.mod-form-searchControl > .inner > .pager > .list > .page > .list > .of-jump:last-child,
.mod-form-searchControl > .inner > .pager > .list > .page > .list > .of-jump:first-child {
  position: relative;
}

.mod-form-searchControl > .inner > .pager > .list > .page > .list > .of-jump:last-child::before,
.mod-form-searchControl > .inner > .pager > .list > .page > .list > .of-jump:first-child::before {
  font-size: 1.4rem;
  color: #666;
  position: absolute;
  top: 0;
  bottom: 0;
  display: block;
  margin: auto 0;
  padding: 11px 0 0;
  content: "…";
}

.mod-form-searchControl > .inner > .pager > .list > .page > .list > .of-jump:last-child {
  padding-left: 21px;
}

.mod-form-searchControl > .inner > .pager > .list > .page > .list > .of-jump:last-child::before {
  left: 4px;
}

.mod-form-searchControl > .inner > .pager > .list > .page > .list > .of-jump:first-child {
  padding-right: 20px;
}

.mod-form-searchControl > .inner > .pager > .list > .page > .list > .of-jump:first-child::before {
  right: 0;
}

.mod-form-searchControl > .inner > .layout {
  font-size: 1.3rem;
  line-height: 1.7;
  background: #eaeaea;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  clear: both;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 12px -12px 0;
  padding: 8px 12px 13px;
  border-top: 1px solid #fff;
}

.mod-form-searchControl > .inner > .layout > .list {
  font-size: 1.2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.mod-form-searchControl > .inner > .layout > .list > div > dt {
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 3px;
}

.mod-form-searchControl > .inner > .layout > .list > div > dd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.mod-form-searchControl > .inner > .layout > .list > div > dd > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: -5px 0 0 -5px;
}

.mod-form-searchControl > .inner > .layout > .list > div > dd > .list > li {
  position: relative;
  padding: 5px 0 0 5px;
}

.mod-form-searchControl > .inner > .layout > .list > .sort:not(:last-child) {
  margin: 0 35px 0 0;
}

.mod-form-searchControl > .inner > .layout > .list > .sort a {
  font-family: inherit;
  font-weight: bold;
  line-height: 1.7;
  text-decoration: none;
  color: #000;
  background: #fff;
  display: block;
  padding: 5px 6px 4px;
  border: 1px solid #aaa;
}

.mod-form-searchControl > .inner > .layout > .list > .sort a[aria-current="page"] {
  font-weight: normal;
  color: #fff;
  background: #aaa;
}

.mod-form-searchControl > .inner > .layout > .list > .adjust > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.mod-form-searchControl > .inner > .layout > .list > .adjust a {
  background: #f0f1f2;
  display: block;
  width: 31px;
  height: 31px;
  border: 1px solid #aaa;
}

.mod-form-searchControl > .inner > .layout > .list > .adjust a span {
  position: absolute;
  z-index: -1;
  overflow: hidden;
  width: 0;
  height: 0;
}

.mod-form-searchControl > .inner > .layout > .list > .adjust a[aria-current="page"] {
  background: #505050;
}

.mod-form-searchControl > .inner > .layout > .list > .adjust a:not([href]) {
  cursor: default;
}

.mod-form-searchControl > .inner > .layout > .list > .adjust a[data-value="grid"]::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: 0 -82px;
  background-size: 180px 153px;
  display: block;
  width: 29px;
  height: 29px;
  content: "";
}

.mod-form-searchControl > .inner > .layout > .list > .adjust a[data-value="grid"][aria-current="page"]::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -112px 0;
  background-size: 180px 153px;
  width: 29px;
  height: 29px;
}

.mod-form-searchControl > .inner > .layout > .list > .adjust a[data-value="list"]::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -112px -34px;
  background-size: 180px 153px;
  display: block;
  width: 29px;
  height: 29px;
  content: "";
}

.mod-form-searchControl > .inner > .layout > .list > .adjust a[data-value="list"][aria-current="page"]::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -34px -82px;
  background-size: 180px 153px;
  width: 29px;
  height: 29px;
}

.mod-form-searchControl > .inner > .layout > .list > .adjust a:focus {
  outline: 1px dashed #333;
  outline: -webkit-focus-ring-color auto 5px;
}

.mod-form-searchControl > .inner > .layout > .adjust {
  float: right;
  -webkit-flex-basis: 72px;
      -ms-flex-preferred-size: 72px;
          flex-basis: 72px;
  max-width: 72px;
  margin: 0 0 10px 32px;
}

.mod-form-searchControl > .inner > .sort {
  font-size: 1.4rem;
  line-height: 1.7;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  clear: both;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 17px 0 26px;
}

.mod-form-searchControl > .inner > .sort a {
  font-family: inherit;
  font-size: 1.4rem;
  line-height: 1.7;
  display: block;
}

.mod-form-searchControl > .inner > .sort a[aria-current="page"] {
  font-weight: bold;
}

.mod-form-searchControl > .inner > .sort > .list > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.mod-form-searchControl > .inner > .sort > .list > div > dt {
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod-form-searchControl > .inner > .sort > .list > div > dt::after {
  content: "：";
}

.mod-form-searchControl > .inner > .sort > .list > div > dd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.mod-form-searchControl > .inner > .sort > .list > div > dd .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: -14px 0 0 -14px;
}

.mod-form-searchControl > .inner > .sort > .list > div > dd .list > li {
  position: relative;
  padding: 14px 0 0 14px;
}

.mod-form-searchControl > .inner > .sort > .list > div > dd .list > li:first-child ~ li::before {
  font-size: 1.4rem;
  background: #5d5d5d;
  position: absolute;
  top: 19px;
  left: 6px;
  width: 1px;
  height: 14px;
  content: "";
}

.mod-form-searchControl a {
  text-decoration: none;
}

/* ============================================================================
 * _media [class^="mod-media"]
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .mod-media
 * ------------------------------------------------------------------------- */
.mod-media {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 0 30px;
}

.mod-media > .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  max-width: 100%;
  min-height: calc(0%);
}

.mod-media > .inner > .media {
  width: 100%;
  min-height: calc(0%);
}

.mod-media > .inner > .media > img,
.mod-media > .inner > .media > iframe,
.mod-media > .inner > .media > video,
.mod-media > .inner > .media > picture {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

.mod-media > .inner > .caption {
  font-size: 1.3rem;
  width: 100%;
  margin: 5px 0 0;
}

.mod-media > .inner > .caption > *:first-child {
  margin-top: 0;
}

.mod-media > .inner > .caption > *:last-child {
  margin-bottom: 0;
}

.mod-media > .inner > .caption.of-spaceBetween {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.mod-media > .inner > .caption.of-spaceBetween > *:last-child {
  text-align: right;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.mod-media.align-left {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.mod-media.align-right {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

/* ----------------------------------------------------------------------------
 * .mod-media-lyt
 * ------------------------------------------------------------------------- */
.mod-media-lyt {
  margin: 40px 0 60px;
}

.mod-media-lyt > .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: -22px 0 0 -22px;
}

.mod-media-lyt > .inner > .content,
.mod-media-lyt > .inner > .media {
  width: 100%;
}

.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 {
  padding: 22px 0 0 22px;
}

.mod-media-lyt > .inner > .media {
  min-height: calc(0%);
  padding: 22px 0 0 22px;
}

.mod-media-lyt.of-reverse > .inner {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

/* ----------------------------------------------------------------------------
 * .mod-media-beforeAfter
 * ------------------------------------------------------------------------- */
.mod-media-beforeAfter {
  margin: 15px 0 31px;
}

.mod-hdg-al3type2:not(.of-hasBtn) + .mod-media-beforeAfter {
  margin-top: 30px;
}

.mod-media-beforeAfter > .inner > * + * {
  margin: 43px 0 0;
}

.mod-media-beforeAfter > .inner > * > .media {
  position: relative;
  border: 1px solid #aaa;
}

.mod-media-beforeAfter > .inner > * > .media > .label {
  font-size: 1.2rem;
  font-weight: bold;
  background: #e3f5aa;
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 75px;
  height: 75px;
  margin: -23px 0 0 16px;
  border-radius: 180px;
}

.mod-media-beforeAfter > .inner > * > .media > .label::before {
  position: absolute;
  z-index: 0;
  display: block;
  content: "";
}

.mod-media-beforeAfter > .inner > * > .media img {
  display: block;
  max-width: 100%;
  margin: 0 auto;
}

.mod-media-beforeAfter > .inner > * > .media > .content > *:first-child {
  margin-top: 0;
}

.mod-media-beforeAfter > .inner > * > .media > .content > *:last-child {
  margin-bottom: 0;
}

.mod-media-beforeAfter > .inner > * > .box {
  line-height: 1.61538;
  background: #f6f6f6;
  padding: 17px 19px;
}

.mod-media-beforeAfter > .inner > * > .box > .title {
  font-size: 1.5rem;
  margin: 0 0 14px;
}

.mod-media-beforeAfter > .inner > * > .box > .title > span {
  margin-left: 28px;
  padding: 0 1px 5px;
}

.mod-media-beforeAfter > .inner > * > .box > .title > span::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -146px 0;
  background-size: 180px 153px;
  top: -2px;
  left: -27px;
  width: 18px;
  height: 27px;
}

.mod-media-beforeAfter > .inner > .before > * > .label::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -169px -16px;
  background-size: 180px 153px;
  top: 22px;
  right: 5px;
  width: 11px;
  height: 11px;
}

.mod-media-beforeAfter > .inner > .after > * > .label::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -146px -81.5px;
  background-size: 180px 153px;
  top: 20px;
  right: 8px;
  width: 15px;
  height: 18px;
}

.mod-media-beforeAfter > .inner > .after > *::before {
  position: absolute;
  z-index: 0;
  right: 0;
  bottom: 100%;
  left: 0;
  width: 0;
  height: 0;
  margin: 0 auto -1px;
  content: "";
  border: solid transparent;
  border-width: 19px 15px;
  border-top-color: #505050;
}

.mod-media-beforeAfter.var-02 > .inner > *,
.mod-media-beforeAfter.var-03 > .inner > * {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.mod-media-beforeAfter.var-02 > .inner > * > .media,
.mod-media-beforeAfter.var-03 > .inner > * > .media {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.mod-media-beforeAfter.var-02 > .inner > * > .media > .content > *:first-child,
.mod-media-beforeAfter.var-03 > .inner > * > .media > .content > *:first-child {
  margin-top: 0;
}

.mod-media-beforeAfter.var-02 > .inner > * > .media > .content > *:last-child,
.mod-media-beforeAfter.var-03 > .inner > * > .media > .content > *:last-child {
  margin-bottom: 0;
}

.mod-media-beforeAfter.var-02 > .inner > * > .media {
  padding: 19px;
}

.mod-media-beforeAfter.of-labelType02 {
  margin-top: 121px;
}

.mod-media-beforeAfter.of-labelType02 > .inner > * > .media > .label {
  height: 33px;
  margin: -33px 0 0 -1px;
  border-radius: 5px 5px 0 0;
}

.mod-media-beforeAfter + .mod-media-beforeAfter.of-box {
  margin-top: -11px;
}

.mod-media-beforeAfter.of-box > .inner > * + * {
  margin-top: 12px;
}

/* ============================================================================
 * _other modules
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .mod-other-detailUtility 詳細画面用ユーティリティ
 * ------------------------------------------------------------------------- */
.mod-other-detailUtility {
  margin: 0 0 13px;
  border-top: 1px solid transparent;
}

.mod-other-detailUtility > .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: -13px 0 0 -10px;
}

.mod-other-detailUtility > .inner > * {
  padding: 13px 0 0 10px;
}

.mod-other-detailUtility > .inner > .label {
  font-size: 1.2rem;
  font-weight: bold;
  margin-top: 2px;
}

.mod-other-detailUtility > .inner > .label > p {
  position: relative;
}

.mod-other-detailUtility > .inner > .label > p::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -82px -42px;
  background-size: 180px 153px;
  position: absolute;
  z-index: 1;
  top: -3px;
  left: 7px;
  display: block;
  width: 24.5px;
  height: 32px;
  content: "";
}

.mod-other-detailUtility > .inner > .label > p > b {
  color: #000;
  background: #efe07a;
  position: relative;
  display: inline-block;
  padding: 1px 9px 2px 39px;
}

.mod-other-detailUtility > .inner > .btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

html[data-script-enabled="true"] .mod-other-detailUtility > .inner > .btn {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  min-height: 33px;
}

html[data-script-enabled="true"] .mod-other-detailUtility > .inner > .btn template ~ * {
  display: none;
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] {
  font-size: 1.1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: -4px 0 0 -4px;
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] > li {
  padding: 4px 0 0 4px;
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] a,
.mod-other-detailUtility > .inner > .btn > [class$="list"] button {
  font-size: 1rem;
  position: relative;
  display: inline-block;
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] a,
.mod-other-detailUtility > .inner > .btn > [class$="list"] button {
  text-decoration: none;
  text-align: center;
  padding: 4px 8px 5px;
  border: 1px solid #aaa;
  border-radius: 3px;
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] a[href$=".pdf"],
.mod-other-detailUtility > .inner > .btn > [class$="list"] button[href$=".pdf"] {
  font-weight: normal;
  color: #505050;
  background: #fff;
  padding: 3px 8px 3px 25px;
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] a[href$=".pdf"].pdf-link-02,
.mod-other-detailUtility > .inner > .btn > [class$="list"] button[href$=".pdf"].pdf-link-02 {
  color: #fff;
  background: #505050;
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] a[href$=".pdf"] .icn-pdf,
.mod-other-detailUtility > .inner > .btn > [class$="list"] button[href$=".pdf"] .icn-pdf {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 8px;
  margin: auto 0;
  -webkit-transform: translateY(1px);
      -ms-transform: translateY(1px);
          transform: translateY(1px);
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] button {
  background: #fff;
  padding: 3px 6px;
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] button::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 6px;
  margin: auto 0;
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-compareBtn .func-btn {
  padding-left: 27px;
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-compareBtn .func-btn::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -120.5px -116px;
  background-size: 180px 153px;
  position: absolute;
  left: 6px;
  display: block;
  width: 17px;
  height: 13px;
  content: "";
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-printBtn .func-btn {
  padding-left: 24px;
}

.mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-printBtn .func-btn::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -54px -140px;
  background-size: 180px 153px;
  position: absolute;
  display: block;
  width: 12px;
  height: 12px;
  content: "";
}

.mod-other-detailUtility > .inner > .btn dl.func-list > dt {
  font-size: 1.4rem;
  margin: 0 5px 0 0;
}

.mod-other-detailUtility > .inner > .btn dl.func-list > dt,
.mod-other-detailUtility > .inner > .btn dl.func-list dd {
  padding: 4px 0 0 4px;
}

.mod-other-detailUtility > .inner > .btn dl.func-list button {
  background-color: #fff;
  border: 1px solid #505050;
  border-radius: 0;
}

.mod-other-detailUtility > .inner > .btn dl.func-list .js-require-compareBtn .func-btn,
.mod-other-detailUtility > .inner > .btn dl.func-list .js-require-printBtn .func-btn {
  font-size: 1.4rem;
  min-width: 129px;
  padding: 3px 15px 4px;
}

.mod-other-detailUtility > .inner > .btn dl.func-list .js-require-compareBtn .func-btn {
  padding-left: 27px;
}

.mod-other-detailUtility > .inner > .btn dl.func-list .js-require-printBtn .func-btn {
  padding-left: 30px;
}

/* ============================================================================
 * _widget modules
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .js-carousel 共通スタイル
 * ------------------------------------------------------------------------- */
html[data-script-enabled="true"] .js-carousel > * {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

html[data-script-enabled="true"] .js-carousel.is-ready > * {
  -webkit-transition: .3s transform ease-out;
  -o-transition: .3s transform ease-out;
  transition: .3s transform ease-out;
}

html[data-script-enabled="true"] .js-carousel.is-dragging > * {
  -webkit-transition: none !important;
  -o-transition: none !important;
  transition: none !important;
}

.js-carousel img {
  pointer-events: none;
}

/* ----------------------------------------------------------------------------
 * .js-tgl 共通スタイル
 * ------------------------------------------------------------------------- */
html[data-script-enabled="true"] .js-tgl > summary.tgl-hook {
  display: list-item;
  list-style: none;
}

html[data-script-enabled="true"] .js-tgl > summary.tgl-hook::-webkit-details-marker {
  display: none;
}

html[data-script-enabled="true"] .js-tgl > .tgl-hook {
  display: block;
  cursor: default;
}

html[data-script-enabled="true"] .js-tgl > .tgl-panel {
  overflow: hidden;
  padding: 0 !important;
  -webkit-transition: .2s height ease-out;
  -o-transition: .2s height ease-out;
  transition: .2s height ease-out;
}

html[data-script-enabled="true"] .js-tgl:not([open]) .tgl-panel {
  display: none;
}

html[data-script-enabled="true"] .js-tgl:not([open]) .tgl-panel > *:first-child {
  margin-top: 0;
}

html[data-script-enabled="true"] .js-tgl:not([open]) .tgl-panel > *:last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------------------
 * .js-tab 共通スタイル
 * ------------------------------------------------------------------------- */
html[data-script-enabled="true"] .js-tab [role="tab"] {
  cursor: default;
}

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"] .js-tab .tab-panel[aria-hidden="true"] {
  display: none;
}

/* ----------------------------------------------------------------------------
 * .js-accordion 共通スタイル
 * ------------------------------------------------------------------------- */
.js-accordion .accordion-panel {
  overflow: hidden;
  padding: 0 !important;
}

html[data-script-enabled="true"] .js-accordion .accordion-panel {
  display: none;
  -webkit-transition: .3s height ease-out;
  -o-transition: .3s height ease-out;
  transition: .3s height ease-out;
}

html[data-script-enabled="true"] .js-accordion .accordion-panel[role="region"]:not([hidden]) {
  display: block;
}

/* ----------------------------------------------------------------------------
 * .mod-carousel
 * ------------------------------------------------------------------------- */
.mod-carousel {
  overflow: hidden;
}

.mod-carousel .func-dot-wrapper > [role="tablist"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.mod-carousel .func-dot-wrapper > [role="tablist"] > li {
  padding: 10px;
}

.mod-carousel .func-dot-wrapper [aria-selected="true"] {
  font-weight: bold;
}

/* ----------------------------------------------------------------------------
 * .mod-tgl-faq
 * ------------------------------------------------------------------------- */
.mod-tgl-faq {
  margin: 0 0 34px;
}

html[data-script-enabled="true"] .mod-tgl-faq.js-tgl > .tgl-hook {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  cursor: default;
}

html[data-script-enabled="true"] .mod-tgl-faq.js-tgl > .tgl-hook::before,
html[data-script-enabled="true"] .mod-tgl-faq.js-tgl > .tgl-hook::after {
  background: #30b653;
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  display: block;
  width: 20px;
  height: 2px;
  margin: auto 0;
  content: "";
  -webkit-transition: .2s transform ease-out;
  -o-transition: .2s transform ease-out;
  transition: .2s transform ease-out;
}

html[data-script-enabled="true"] .mod-tgl-faq.js-tgl > .tgl-hook::after {
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

html[data-script-enabled="true"] .mod-tgl-faq.js-tgl > .tgl-hook[aria-expanded="true"]::after {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
}

.mod-tgl-faq > .tgl-hook {
  font-size: 1.8rem;
  background: #f0f1f2;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 0;
  padding: 10px 45px 10px 19px;
}

.mod-tgl-faq > .tgl-hook > .symbol {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: .75;
  color: #30b552;
  display: block;
  margin: 6px 18px 0 0;
}

.mod-tgl-faq > .tgl-hook > .txt {
  font-weight: bold;
  margin: 0;
}

.mod-tgl-faq > .tgl-panel > .inner {
  position: relative;
}

.mod-tgl-faq > .tgl-panel > .inner > .symbol {
  font-size: 2.4rem;
  font-weight: bold;
  color: #30b552;
  position: absolute;
  top: 10px;
  left: 19px;
  display: block;
}

.mod-tgl-faq > .tgl-panel > .inner > .content {
  padding: 14px 0 26px 62px;
}

.mod-tgl-faq > .tgl-panel > .inner > .content > *:first-child {
  margin-top: 0;
}

.mod-tgl-faq > .tgl-panel > .inner > .content > *:last-child {
  margin-bottom: 0;
}

.mod-tgl-faq + .mod-tgl-faq {
  margin-top: -24px;
}

/* ----------------------------------------------------------------------------
 * .mod-accordion-faq
 * ------------------------------------------------------------------------- */
.mod-accordion-faq {
  margin: 0 0 34px;
}

html[data-script-enabled="true"] .mod-accordion-faq.js-accordion > .list > div > dt {
  cursor: default;
}

html[data-script-enabled="true"] .mod-accordion-faq.js-accordion > .list > div > dt::before,
html[data-script-enabled="true"] .mod-accordion-faq.js-accordion > .list > div > dt::after {
  background: #30b653;
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  display: block;
  width: 20px;
  height: 2px;
  margin: auto 0;
  content: "";
  -webkit-transition: .2s transform ease-out;
  -o-transition: .2s transform ease-out;
  transition: .2s transform ease-out;
}

html[data-script-enabled="true"] .mod-accordion-faq.js-accordion > .list > div > dt::after {
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

html[data-script-enabled="true"] .mod-accordion-faq.js-accordion > .list > div > dt[aria-expanded="true"]::after {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
}

.mod-accordion-faq > .list > div + div {
  margin-top: 10px;
}

.mod-accordion-faq > .list > div > dt {
  font-size: 1.8rem;
  background: #f0f1f2;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 10px 45px 10px 19px;
}

.mod-accordion-faq > .list > div > dt > .symbol {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: .75;
  color: #30b552;
  display: block;
  margin: 6px 18px 0 0;
}

.mod-accordion-faq > .list > div > dt > .txt {
  font-weight: bold;
  margin: 0;
}

.mod-accordion-faq > .list > div > dd {
  position: relative;
}

.mod-accordion-faq > .list > div > dd > .symbol {
  font-size: 2.4rem;
  font-weight: bold;
  color: #30b552;
  position: absolute;
  top: 10px;
  left: 19px;
  display: block;
}

.mod-accordion-faq > .list > div > dd > .content {
  padding: 14px 0 26px 62px;
}

.mod-accordion-faq > .list > div > dd > .content > *:first-child {
  margin-top: 0;
}

.mod-accordion-faq > .list > div > dd > .content > *:last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------------------
 * モーダル共通スタイル .func-modal
 * ------------------------------------------------------------------------- */
html[data-script-enabled="true"] .func-modal {
  background: rgba(0, 0, 0, 0.6);
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  display: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 0 10px;
  -webkit-transition: .2s opacity ease-out;
  -o-transition: .2s opacity ease-out;
  transition: .2s opacity ease-out;
  opacity: 0;
}

html[data-script-enabled="true"] .func-modal[aria-expanded="true"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: 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 {
  max-width: 100%;
  padding: 20px;
}

html[data-script-enabled="true"] .func-modal > .modal-wrapper > .modal-close,
html[data-script-enabled="true"] .func-modal > .modal-wrapper > .modal-inner {
  max-width: 1040px;
}

html[data-script-enabled="true"] .func-modal > .modal-wrapper > .modal-close {
  line-height: 2.375;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 100%;
}

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: 22px;
  height: 17px;
}

html[data-script-enabled="true"] .func-modal > .modal-wrapper > .modal-close > button span {
  position: absolute;
  z-index: -1;
  display: block;
  overflow: hidden;
  width: 0;
  height: 0;
}

html[data-script-enabled="true"] .func-modal > .modal-wrapper > .modal-close > button::before,
html[data-script-enabled="true"] .func-modal > .modal-wrapper > .modal-close > button::after {
  background: #ccc;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  display: block;
  overflow: hidden;
  width: 21px;
  height: 1px;
  margin: auto 0;
  content: "";
}

html[data-script-enabled="true"] .func-modal > .modal-wrapper > .modal-close > button::before {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

html[data-script-enabled="true"] .func-modal > .modal-wrapper > .modal-close > button::after {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

html[data-script-enabled="true"] .func-modal > .modal-wrapper > .modal-inner {
  background: #fff;
  overflow: auto;
  max-height: calc(100vh - 128px);
  -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"] .func-modal > .modal-wrapper > .modal-inner .mod-modal-content {
  padding: 25px;
}

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;
}

.func-modal.is-fading {
  will-change: opacity, background, position;
}

/* ----------------------------------------------------------------------------
 * モーダルコンテンツ .mod-modal-content
 * ------------------------------------------------------------------------- */
.mod-modal-content {
  text-align: left;
  margin: 0 0 40px;
}

.mod-modal-content > *:first-child {
  margin-top: 0;
}

.mod-modal-content > *:last-child {
  margin-bottom: 0;
}

html[data-script-enabled="true"] .mod-modal-content {
  display: none;
  margin: 0;
}

html[data-script-enabled="true"] .func-modal .mod-modal-content {
  display: block;
}

.mod-modal-content > .content > *:first-child {
  margin-top: 0;
}

.mod-modal-content > .content > *:last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------------------
 * .mod-tgl-searchSetting 検索条件の設定・変更用トグル
 * ------------------------------------------------------------------------- */
.mod-tgl-searchSetting {
  margin: 0 0 30px;
}

.mod-tgl-searchSetting > .tgl-hook {
  font-size: 1.3rem;
  font-weight: bold;
  text-align: left;
  background: #fff;
  position: relative;
  padding: 12px 60px;
  border: 1px solid #ccc;
}

html[data-script-enabled="true"] .mod-tgl-searchSetting > .tgl-hook::before,
html[data-script-enabled="true"] .mod-tgl-searchSetting > .tgl-hook::after {
  background: #000;
  position: absolute;
  z-index: 0;
  top: 0;
  right: 20px;
  bottom: 0;
  display: block;
  width: 15px;
  height: 2px;
  margin: auto 0;
  content: "";
  -webkit-transition: .2s transform ease-out;
  -o-transition: .2s transform ease-out;
  transition: .2s transform ease-out;
}

html[data-script-enabled="true"] .mod-tgl-searchSetting > .tgl-hook::after {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}

html[data-script-enabled="true"] .mod-tgl-searchSetting > .tgl-hook[aria-expanded="true"]::after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}

.mod-tgl-searchSetting > .tgl-panel {
  background: #f8fcec;
  margin-top: -2px;
  border: 1px solid #ccc;
}

.mod-tgl-searchSetting > .tgl-panel > .inner {
  padding: 8px 15px 30px;
}

.mod-tgl-searchSetting > .tgl-panel > .inner > *:first-child {
  margin-top: 0;
}

.mod-tgl-searchSetting > .tgl-panel > .inner > *:last-child {
  margin-bottom: 0;
}

.mod-tgl-searchSetting.var-02 {
  position: relative;
}

.mod-tgl-searchSetting.var-02 > .tgl-panel > .inner {
  padding: 0 15px 30px;
}

.mod-tgl-searchSetting.var-02 > .tgl-hook {
  background-color: #fff;
  padding: 0;
  border: 1px solid #ccc;
  -webkit-box-shadow: 0 5px 0 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 0 0 rgba(0, 0, 0, 0.1);
}

.mod-tgl-searchSetting.var-02 > .tgl-hook > span {
  display: block;
  padding: 8px 60px;
}

.mod-tgl-searchSetting.var-02 > .tgl-hook > span::before {
  background: url(/reform/shared/img/icn/scope.png);
  background-size: contain;
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 15px;
  display: block;
  width: 34px;
  height: 31px;
  content: "";
}

.mod-tgl-searchSetting.var-02 > .tgl-panel {
  background: #f8fcec;
  position: relative;
  z-index: 1;
  border: 1px solid #ccc;
  -webkit-box-shadow: 0 5px 0 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 0 0 rgba(0, 0, 0, 0.1);
}

.mod-tgl-searchSetting.var-02 .mod-form-select > .inner {
  max-width: 170px;
  border: 1px solid #aaa;
  border-radius: 4px;
}

.mod-tgl-searchSetting.var-02 .mod-form-select > .inner > select {
  font-size: 1.2rem;
  min-height: 30px;
  padding: 11px 14px 9px;
  border-radius: 4px;
}

.mod-tgl-searchSetting.var-02 .mod-form-select > .inner::after {
  border-top-color: #43af35;
}

.mod-tgl-searchSetting.var-02 .mod-form-fieldset > .inner {
  padding: 10px 0 12px;
}

.mod-tgl-searchSetting.var-02 .mod-form-fieldset > .inner > .group > .label {
  font-size: 1.2rem;
  font-weight: bold;
  margin: 0 0 11px;
  padding: 0 49px 0 0;
}

.mod-tgl-searchSetting.var-02 .mod-form-fieldset > .inner > .group > .label > .required {
  font-size: 1.1rem;
  color: #fff;
  background: #e60012;
  padding: 2px 4px;
  border: none;
}

.mod-tgl-searchSetting.var-02 .mod-form-fieldset .inner::after {
  border-top-color: #43af35;
}

.mod-tgl-searchSetting.var-02 .mod-form-fieldset.var-02 {
  margin: -27px 0 0;
}

.mod-tgl-searchSetting.var-02 .mod-form-fieldset.var-02 > .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0;
}

.mod-tgl-searchSetting.var-02 .mod-form-fieldset.var-02 > .inner > .current {
  font-size: 1.5rem;
}

.mod-tgl-searchSetting.var-02 .mod-form-fieldset.var-02 > .inner > .current .label,
.mod-tgl-searchSetting.var-02 .mod-form-fieldset.var-02 > .inner > .current .unit {
  font-size: 1.2rem;
}

.mod-tgl-searchSetting.var-02 .mod-form-fieldset.var-02 > .inner .mod-btn {
  margin: 0;
}

.mod-tgl-searchSetting.var-02 .mod-form-fieldset + [class^="mod-form"] {
  border-top: 1px dotted #aaa;
}

.mod-tgl-searchSetting.var-02 .mod-form-fieldset + [class^="mod-form"]:last-of-type {
  border-top: none;
}

.mod-tgl-searchSetting.var-02 .mod-form-checkbox label,
.mod-tgl-searchSetting.var-02 .mod-form-radio label {
  font-size: 1.2rem;
}

.mod-tgl-searchSetting.var-02 .mod-form-checkbox label {
  font-size: 1.2rem;
}

.mod-tgl-searchSetting.var-02 .mod-form-txt > input {
  min-height: 30px;
  padding: 4px 14px 6px;
}

.mod-tgl-searchSetting.var-02 .mod-form-txt > input::-webkit-input-placeholder {
  font-size: 1.2rem;
}

.mod-tgl-searchSetting.var-02 .mod-form-txt > input::-ms-input-placeholder {
  font-size: 1.2rem;
}

.mod-tgl-searchSetting.var-02 .mod-form-txt > input::-moz-placeholder {
  font-size: 1.2rem;
}

.mod-tgl-searchSetting.var-02 .mod-form-txt > input:-ms-input-placeholder {
  font-size: 1.2rem;
}

.mod-tgl-searchSetting.var-02 .mod-form-txt > input::placeholder {
  font-size: 1.2rem;
}

/* ----------------------------------------------------------------------------
 * .mod-map 日本地図
 * ------------------------------------------------------------------------- */
.mod-map {
  margin: 0 0 40px;
}

/* ----------------------------------------------------------------------------
 * .mod-gmap GoogleMap
 * ------------------------------------------------------------------------- */
.mod-gmap {
  margin: 0 0 40px;
}

.mod-gmap > .wrap {
  display: block;
  width: 100%;
  height: 400px;
  max-height: 50vh;
  margin: 0 0 20px;
  padding: 0;
}

.mod-gmap > .wrap [target="_blank"] {
  background: transparent !important;
  opacity: 1 !important;
}

.mod-gmap > .wrap > .map {
  width: 100% !important;
  height: 100% !important;
}

.mod-gmap .func-infoWindow {
  text-align: center;
  max-height: 100%;
}

.mod-gmap .func-infoWindow img {
  max-width: 100px;
  height: auto;
}

.mod-gmap .func-infoWindow img + span {
  display: block;
}

/* ----------------------------------------------------------------------------
 * [class^="mos-form"] .js-tooltip, [class^="mod-form"] func-tooltip
 * フォーム関連モジュール内のツールチップ
 * ------------------------------------------------------------------------- */
[class^="mod-form"] .js-tooltip-help {
  font-weight: normal;
  color: #505050;
}

html[data-script-enabled="true"] [class^="mod-form"] .js-tooltip-help {
  display: none;
}

html[data-script-enabled="true"] .func-tooltip {
  font-size: 1.4rem;
  text-align: left;
  background: #fff;
  position: fixed;
  z-index: 1000;
  display: none;
  overflow: auto;
  width: 235px;
  max-width: calc(100vw - 20px);
  max-height: calc(100vh - 20px);
  padding: 12px;
  border: 2px solid #505050;
}

html[data-script-enabled="true"] .func-tooltip[aria-hidden="false"] {
  display: block;
}

/* ----------------------------------------------------------------------------
 * .mod-graph 棒グラフ
 * ------------------------------------------------------------------------- */
.mod-graph {
  position: relative;
  z-index: 0;
  overflow: hidden;
  margin: 0 0 30px;
}

.mod-graph table {
  border-spacing: 0;
  border-collapse: collapse;
}

.mod-graph table tbody th {
  line-height: 1.5;
}

.mod-graph table .check {
  margin: 0 0 0 5px;
}

.mod-graph table .check::before {
  content: "（";
}

.mod-graph table .check::after {
  content: "）";
}

html[data-script-enabled="true"] .mod-graph.js-graph {
  font-size: 12px;
  padding: 0 16px 0 0;
}

html[data-script-enabled="true"] .mod-graph.js-graph table {
  width: 100%;
}

html[data-script-enabled="true"] .mod-graph.js-graph table thead {
  font-size: 14px;
  line-height: 1.28571;
  position: absolute;
  overflow: hidden;
  width: 0;
  height: 0;
}

html[data-script-enabled="true"] .mod-graph.js-graph table tbody td {
  position: relative;
}

html[data-script-enabled="true"] .mod-graph.js-graph table tbody td > span {
  text-decoration: none;
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

html[data-script-enabled="true"] .mod-graph.js-graph table tbody td > span span {
  white-space: nowrap;
}

html[data-script-enabled="true"] .mod-graph.js-graph table tbody td > span .check {
  background: #9fd038;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: .5s width ease-out;
  -o-transition: .5s width ease-out;
  transition: .5s width ease-out;
}

html[data-script-enabled="true"] .mod-graph.js-graph table tbody td > span .check::before,
html[data-script-enabled="true"] .mod-graph.js-graph table tbody td > span .check::after {
  display: none;
}

html[data-script-enabled="true"] .mod-graph.js-graph table tbody td > span .check span {
  color: transparent;
  position: absolute;
  z-index: -1;
  display: block;
  overflow: hidden;
  width: 0;
  height: 0;
}

html[data-script-enabled="true"] .mod-graph.js-graph > table tbody th {
  text-align: center;
  word-break: break-all;
  width: 60px;
  padding: 5px 2px 10px;
  border-right: 1px solid #999;
}

html[data-script-enabled="true"] .mod-graph.js-graph > table tbody td {
  padding: 5px 0 10px;
  border-right: 1px solid #999;
}

html[data-script-enabled="true"] .mod-graph.js-graph > table tbody td > span {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

html[data-script-enabled="true"] .mod-graph.js-graph > table tbody td > span .check {
  min-height: 30px;
  max-height: 30px;
  margin: 0 5px 0 0;
}

html[data-script-enabled="true"] .mod-graph.js-graph > table tbody td > span .check:not(.is-ready) {
  width: 0 !important;
}

html[data-script-enabled="true"] .mod-graph.js-graph > table tbody tr:last-child td {
  padding-bottom: 21px;
  border-bottom: 1px solid #999;
}

html:not([data-script-enabled="true"]) .mod-graph.js-graph table {
  border: 1px solid #999;
}

html:not([data-script-enabled="true"]) .mod-graph.js-graph table th,
html:not([data-script-enabled="true"]) .mod-graph.js-graph table td {
  vertical-align: middle;
  padding: 10px;
  border: 1px solid #ccc;
}

html:not([data-script-enabled="true"]) .mod-graph.js-graph table thead th {
  font-weight: bold;
}

html:not([data-script-enabled="true"]) .mod-graph.js-graph table tbody th {
  text-align: left;
}

.mod-graph .func-scale {
  font-size: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 6px -6px 0 57px;
}

.mod-graph .func-scale div {
  position: relative;
}

.mod-graph .func-scale div:not(:first-child):not(:last-child)::before {
  background: #ccc;
  position: absolute;
  z-index: 0;
  right: 0;
  bottom: 100%;
  left: 0;
  display: block;
  width: 1px;
  height: 100vh;
  margin: 0 auto 6px;
  content: "";
}

.mod-graph .func-table {
  display: none;
}

/* ----------------------------------------------------------------------------
 * .mod-readmore もっと見る
 * ------------------------------------------------------------------------- */
.mod-readmore {
  margin: 0 0 40px;
}

html[data-script-enabled="true"] .mod-readmore:not(.is-ready) .js-readmore-item {
  display: none;
}

.mod-readmore::after {
  display: block;
  clear: both;
  content: "";
}

.mod-readmore > .func-btn {
  font-size: 1.4rem;
  background: #f0f1f2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  float: right;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 34px;
  padding: 0 10px;
}

.mod-readmore > .func-btn::after {
  position: relative;
  top: 0;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 0 0 11px;
  content: "";
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 2px solid #30b653;
  border-width: 0 2px 2px 0;
}

.mod-readmore > .func-btn[aria-expanded="true"]::after {
  top: 3px;
  border-width: 2px 0 0 2px;
}

.mod-readmore.align-left > .func-btn {
  float: left;
}

/* ----------------------------------------------------------------------------
 * .mod-readmore-02 もっと見る2
 * ------------------------------------------------------------------------- */
div.mod-readmore-02 {
  margin: 20px 0 40px;
}

div.mod-readmore-02 .func-btn {
  font-weight: bold;
  text-align: center;
  width: 100%;
  padding: 9px 10px 10px 20px;
  border: 1px solid #505050;
}

div.mod-readmore-02 .func-btn::after {
  position: relative;
  top: 3px;
  left: 8px;
  display: inline-block;
  content: "";
  border: solid transparent;
  border-width: 5px;
  border-top-color: #505050;
}

html[data-script-enabled="true"] .js-readmore-02-item[hidden] {
  display: none !important;
}

/* ----------------------------------------------------------------------------
 * .js-toFixedByScroll 追従
 * ------------------------------------------------------------------------- */
.js-toFixedByScroll.is-fixed > * {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
}

/* ============================================================================
 * _adjust classes
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .align-* 文字揃え
 * ------------------------------------------------------------------------- */
/* ------------------------------------
 * .align-left 左揃え強制
 * --------------------------------- */
.align-left {
  text-align: left !important;
}

/* ------------------------------------
 * .align-center 中央揃え強制
 * --------------------------------- */
.align-center {
  text-align: center !important;
}

/* ------------------------------------
 * .align-right 右揃え強制
 * --------------------------------- */
.align-right {
  text-align: right !important;
}

/* ------------------------------------
 * .align-top 上揃え強制
 * --------------------------------- */
.align-top {
  vertical-align: top !important;
}

/* ------------------------------------
 * .align-middle 中揃え強制
 * --------------------------------- */
.align-middle {
  vertical-align: middle !important;
}

/* ------------------------------------
 * .align-bottom 下揃え強制
 * --------------------------------- */
.align-bottom {
  vertical-align: bottom !important;
}

/* ----------------------------------------------------------------------------
 * .fz-smaller font-size: 77.77751%; 18 → 14
 * ------------------------------------------------------------------------- */
.fz-smaller {
  font-size: 77.77751% !important;
}

/* ----------------------------------------------------------------------------
 * .fz-larger font-size: 138.4612%; 14 → 18
 * ------------------------------------------------------------------------- */
.fz-larger {
  font-size: 138.4612% !important;
}

/* ----------------------------------------------------------------------------
 * .mb-*
 * ------------------------------------------------------------------------- */
.mb-0 {
  margin-bottom: 0 !important;
}

.mb-0 + * {
  margin-top: 0;
}

.mb-2 {
  margin-bottom: 2px !important;
}

.mb-2 + * {
  margin-top: 0;
}

.mb-4 {
  margin-bottom: 4px !important;
}

.mb-4 + * {
  margin-top: 0;
}

.mb-6 {
  margin-bottom: 6px !important;
}

.mb-6 + * {
  margin-top: 0;
}

.mb-8 {
  margin-bottom: 8px !important;
}

.mb-8 + * {
  margin-top: 0;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mb-10 + * {
  margin-top: 0;
}

.mb-12 {
  margin-bottom: 12px !important;
}

.mb-12 + * {
  margin-top: 0;
}

.mb-14 {
  margin-bottom: 14px !important;
}

.mb-14 + * {
  margin-top: 0;
}

.mb-16 {
  margin-bottom: 16px !important;
}

.mb-16 + * {
  margin-top: 0;
}

.mb-18 {
  margin-bottom: 18px !important;
}

.mb-18 + * {
  margin-top: 0;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mb-20 + * {
  margin-top: 0;
}

.mb-22 {
  margin-bottom: 22px !important;
}

.mb-22 + * {
  margin-top: 0;
}

.mb-24 {
  margin-bottom: 24px !important;
}

.mb-24 + * {
  margin-top: 0;
}

.mb-26 {
  margin-bottom: 26px !important;
}

.mb-26 + * {
  margin-top: 0;
}

.mb-28 {
  margin-bottom: 28px !important;
}

.mb-28 + * {
  margin-top: 0;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.mb-30 + * {
  margin-top: 0;
}

.mb-32 {
  margin-bottom: 32px !important;
}

.mb-32 + * {
  margin-top: 0;
}

.mb-34 {
  margin-bottom: 34px !important;
}

.mb-34 + * {
  margin-top: 0;
}

.mb-36 {
  margin-bottom: 36px !important;
}

.mb-36 + * {
  margin-top: 0;
}

.mb-38 {
  margin-bottom: 38px !important;
}

.mb-38 + * {
  margin-top: 0;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.mb-40 + * {
  margin-top: 0;
}

.mb-42 {
  margin-bottom: 42px !important;
}

.mb-42 + * {
  margin-top: 0;
}

.mb-44 {
  margin-bottom: 44px !important;
}

.mb-44 + * {
  margin-top: 0;
}

.mb-46 {
  margin-bottom: 46px !important;
}

.mb-46 + * {
  margin-top: 0;
}

.mb-48 {
  margin-bottom: 48px !important;
}

.mb-48 + * {
  margin-top: 0;
}

.mb-50 {
  margin-bottom: 50px !important;
}

.mb-50 + * {
  margin-top: 0;
}

.mb-52 {
  margin-bottom: 52px !important;
}

.mb-52 + * {
  margin-top: 0;
}

.mb-54 {
  margin-bottom: 54px !important;
}

.mb-54 + * {
  margin-top: 0;
}

.mb-56 {
  margin-bottom: 56px !important;
}

.mb-56 + * {
  margin-top: 0;
}

.mb-58 {
  margin-bottom: 58px !important;
}

.mb-58 + * {
  margin-top: 0;
}

.mb-60 {
  margin-bottom: 60px !important;
}

.mb-60 + * {
  margin-top: 0;
}

.mb-62 {
  margin-bottom: 62px !important;
}

.mb-62 + * {
  margin-top: 0;
}

.mb-64 {
  margin-bottom: 64px !important;
}

.mb-64 + * {
  margin-top: 0;
}

.mb-66 {
  margin-bottom: 66px !important;
}

.mb-66 + * {
  margin-top: 0;
}

.mb-68 {
  margin-bottom: 68px !important;
}

.mb-68 + * {
  margin-top: 0;
}

.mb-70 {
  margin-bottom: 70px !important;
}

.mb-70 + * {
  margin-top: 0;
}

.mb-72 {
  margin-bottom: 72px !important;
}

.mb-72 + * {
  margin-top: 0;
}

.mb-74 {
  margin-bottom: 74px !important;
}

.mb-74 + * {
  margin-top: 0;
}

.mb-76 {
  margin-bottom: 76px !important;
}

.mb-76 + * {
  margin-top: 0;
}

.mb-78 {
  margin-bottom: 78px !important;
}

.mb-78 + * {
  margin-top: 0;
}

.mb-80 {
  margin-bottom: 80px !important;
}

.mb-80 + * {
  margin-top: 0;
}

.mb-82 {
  margin-bottom: 82px !important;
}

.mb-82 + * {
  margin-top: 0;
}

.mb-84 {
  margin-bottom: 84px !important;
}

.mb-84 + * {
  margin-top: 0;
}

.mb-86 {
  margin-bottom: 86px !important;
}

.mb-86 + * {
  margin-top: 0;
}

.mb-88 {
  margin-bottom: 88px !important;
}

.mb-88 + * {
  margin-top: 0;
}

.mb-90 {
  margin-bottom: 90px !important;
}

.mb-90 + * {
  margin-top: 0;
}

.mb-92 {
  margin-bottom: 92px !important;
}

.mb-92 + * {
  margin-top: 0;
}

.mb-94 {
  margin-bottom: 94px !important;
}

.mb-94 + * {
  margin-top: 0;
}

.mb-96 {
  margin-bottom: 96px !important;
}

.mb-96 + * {
  margin-top: 0;
}

.mb-98 {
  margin-bottom: 98px !important;
}

.mb-98 + * {
  margin-top: 0;
}

.mb-100 {
  margin-bottom: 100px !important;
}

.mb-100 + * {
  margin-top: 0;
}

/* ----------------------------------------------------------------------------
 * .mt-*
 * ------------------------------------------------------------------------- */
.mt-0 {
  margin-top: 0 !important;
}

.mt-2 {
  margin-top: 2px !important;
}

.mt-4 {
  margin-top: 4px !important;
}

.mt-6 {
  margin-top: 6px !important;
}

.mt-8 {
  margin-top: 8px !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mt-12 {
  margin-top: 12px !important;
}

.mt-14 {
  margin-top: 14px !important;
}

.mt-16 {
  margin-top: 16px !important;
}

.mt-18 {
  margin-top: 18px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mt-22 {
  margin-top: 22px !important;
}

.mt-24 {
  margin-top: 24px !important;
}

.mt-26 {
  margin-top: 26px !important;
}

.mt-28 {
  margin-top: 28px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

.mt-32 {
  margin-top: 32px !important;
}

.mt-34 {
  margin-top: 34px !important;
}

.mt-36 {
  margin-top: 36px !important;
}

.mt-38 {
  margin-top: 38px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mt-42 {
  margin-top: 42px !important;
}

.mt-44 {
  margin-top: 44px !important;
}

.mt-46 {
  margin-top: 46px !important;
}

.mt-48 {
  margin-top: 48px !important;
}

.mt-50 {
  margin-top: 50px !important;
}

.mt-52 {
  margin-top: 52px !important;
}

.mt-54 {
  margin-top: 54px !important;
}

.mt-56 {
  margin-top: 56px !important;
}

.mt-58 {
  margin-top: 58px !important;
}

.mt-60 {
  margin-top: 60px !important;
}

.mt-62 {
  margin-top: 62px !important;
}

.mt-64 {
  margin-top: 64px !important;
}

.mt-66 {
  margin-top: 66px !important;
}

.mt-68 {
  margin-top: 68px !important;
}

.mt-70 {
  margin-top: 70px !important;
}

.mt-72 {
  margin-top: 72px !important;
}

.mt-74 {
  margin-top: 74px !important;
}

.mt-76 {
  margin-top: 76px !important;
}

.mt-78 {
  margin-top: 78px !important;
}

.mt-80 {
  margin-top: 80px !important;
}

.mt-82 {
  margin-top: 82px !important;
}

.mt-84 {
  margin-top: 84px !important;
}

.mt-86 {
  margin-top: 86px !important;
}

.mt-88 {
  margin-top: 88px !important;
}

.mt-90 {
  margin-top: 90px !important;
}

.mt-92 {
  margin-top: 92px !important;
}

.mt-94 {
  margin-top: 94px !important;
}

.mt-96 {
  margin-top: 96px !important;
}

.mt-98 {
  margin-top: 98px !important;
}

.mt-100 {
  margin-top: 100px !important;
}

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

.pt-2 {
  padding-top: 2px !important;
}

.pt-4 {
  padding-top: 4px !important;
}

.pt-6 {
  padding-top: 6px !important;
}

.pt-8 {
  padding-top: 8px !important;
}

.pt-10 {
  padding-top: 10px !important;
}

.pt-12 {
  padding-top: 12px !important;
}

.pt-14 {
  padding-top: 14px !important;
}

.pt-16 {
  padding-top: 16px !important;
}

.pt-18 {
  padding-top: 18px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pt-22 {
  padding-top: 22px !important;
}

.pt-24 {
  padding-top: 24px !important;
}

.pt-26 {
  padding-top: 26px !important;
}

.pt-28 {
  padding-top: 28px !important;
}

.pt-30 {
  padding-top: 30px !important;
}

.pt-32 {
  padding-top: 32px !important;
}

.pt-34 {
  padding-top: 34px !important;
}

.pt-36 {
  padding-top: 36px !important;
}

.pt-38 {
  padding-top: 38px !important;
}

.pt-40 {
  padding-top: 40px !important;
}

.pt-42 {
  padding-top: 42px !important;
}

.pt-44 {
  padding-top: 44px !important;
}

.pt-46 {
  padding-top: 46px !important;
}

.pt-48 {
  padding-top: 48px !important;
}

.pt-50 {
  padding-top: 50px !important;
}

.pt-52 {
  padding-top: 52px !important;
}

.pt-54 {
  padding-top: 54px !important;
}

.pt-56 {
  padding-top: 56px !important;
}

.pt-58 {
  padding-top: 58px !important;
}

.pt-60 {
  padding-top: 60px !important;
}

.pt-62 {
  padding-top: 62px !important;
}

.pt-64 {
  padding-top: 64px !important;
}

.pt-66 {
  padding-top: 66px !important;
}

.pt-68 {
  padding-top: 68px !important;
}

.pt-70 {
  padding-top: 70px !important;
}

.pt-72 {
  padding-top: 72px !important;
}

.pt-74 {
  padding-top: 74px !important;
}

.pt-76 {
  padding-top: 76px !important;
}

.pt-78 {
  padding-top: 78px !important;
}

.pt-80 {
  padding-top: 80px !important;
}

.pt-82 {
  padding-top: 82px !important;
}

.pt-84 {
  padding-top: 84px !important;
}

.pt-86 {
  padding-top: 86px !important;
}

.pt-88 {
  padding-top: 88px !important;
}

.pt-90 {
  padding-top: 90px !important;
}

.pt-92 {
  padding-top: 92px !important;
}

.pt-94 {
  padding-top: 94px !important;
}

.pt-96 {
  padding-top: 96px !important;
}

.pt-98 {
  padding-top: 98px !important;
}

.pt-100 {
  padding-top: 100px !important;
}

/* ----------------------------------------------------------------------------
 * .pb-*
 * ------------------------------------------------------------------------- */
.pb-0 {
  padding-bottom: 0 !important;
}

/* ----------------------------------------------------------------------------
 * .w-*
 * ------------------------------------------------------------------------- */
.w-5 {
  width: 5% !important;
}

.w-10 {
  width: 10% !important;
}

.w-15 {
  width: 15% !important;
}

.w-20 {
  width: 20% !important;
}

.w-25 {
  width: 25% !important;
}

.w-30 {
  width: 30% !important;
}

.w-35 {
  width: 35% !important;
}

.w-40 {
  width: 40% !important;
}

.w-45 {
  width: 45% !important;
}

.w-50 {
  width: 50% !important;
}

.w-55 {
  width: 55% !important;
}

.w-60 {
  width: 60% !important;
}

.w-65 {
  width: 65% !important;
}

.w-70 {
  width: 70% !important;
}

.w-75 {
  width: 75% !important;
}

.w-80 {
  width: 80% !important;
}

.w-85 {
  width: 85% !important;
}

.w-90 {
  width: 90% !important;
}

.w-95 {
  width: 95% !important;
}

.w-100 {
  width: 100% !important;
}

.w-16 {
  width: 16.6666% !important;
}

.w-33 {
  width: 33.3333% !important;
}

.w-66 {
  width: 66.6666% !important;
}

.w-83 {
  width: 83.3333% !important;
}

/* ----------------------------------------------------------------------------
 * .pc-*
 * ------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------
 * .sp-*
 * ------------------------------------------------------------------------- */
/* ============================================================================
 * _form component
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .comp-box-contact コンタクト用コンポーネント
 * ------------------------------------------------------------------------- */
.comp-box-contact {
  margin: 0 0 40px;
}

.comp-box-contact > .title {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  background: #e3eecc;
  padding: 14px 14px 15px;
}

.comp-box-contact > .inner {
  background: #f0f1f2;
  padding: 31px 12px 23px;
}

.comp-box-contact > .inner > * {
  position: relative;
}

.comp-box-contact > .inner > * + * {
  margin-top: 20px;
}

.comp-box-contact > .inner > * > .lyt > .lede {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 0 0 5px;
}

.comp-box-contact > .inner > * > .lyt > .lede + * {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.comp-box-contact > .inner > .form .mod-link {
  text-align: center;
  margin: 7px 0 0;
}

.comp-box-contact > .inner > .tel .number {
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
}

.comp-box-contact > .inner > .tel .number a {
  text-decoration: none;
}

.comp-box-contact > .inner > .tel .time {
  text-align: center;
}

.comp-box-contact .mod-btn {
  margin-top: 0;
  margin-bottom: 0;
}

.comp-box-contact .mod-btn a {
  width: 100%;
}

.comp-box-contact .mod-link {
  font-size: 1.2rem;
}

/* ============================================================================
 * _form component
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .comp-form-singleTextFieldWithSubmit 1つのテキストフィールドと送信ボタン
 * ------------------------------------------------------------------------- */
.comp-form-singleTextFieldWithSubmit {
  margin: 0 0 24px;
}

.comp-form-singleTextFieldWithSubmit > .inner {
  margin: -10px 0 0 -10px;
}

.comp-form-singleTextFieldWithSubmit > .inner > * {
  margin: 0;
  padding: 10px 0 0 10px;
}

.comp-form-singleTextFieldWithSubmit .mod-form-txt > input {
  min-height: 48px;
  padding: 15px 14px 13px;
}

.comp-form-singleTextFieldWithSubmit .mod-btn button {
  font-weight: normal;
}

.comp-form-singleTextFieldWithSubmit .mod-btn button::after {
  display: none;
}

/* ----------------------------------------------------------------------------
 * .comp-form-selectedAreaControl 市区町村の選択
 * ------------------------------------------------------------------------- */
.comp-form-selectedAreaControl {
  margin: 10px 0;
}

.comp-form-selectedAreaControl > .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: -15px 0 0 -20px;
}

.comp-form-selectedAreaControl > .inner > * {
  padding: 15px 0 0 20px;
}

.comp-form-selectedAreaControl > .inner > * > *:first-child {
  margin-top: 0;
}

.comp-form-selectedAreaControl > .inner > * > *:last-child {
  margin-bottom: 0;
}

.comp-form-selectedAreaControl > .inner .btn > a {
  font-size: 1.3rem;
  text-decoration: none;
  color: #505050;
  display: inline-block;
  padding: 0 9px 1px;
  border: 1px solid #505050;
}

.comp-form-selectedAreaControl .mod-form-select > .inner > select {
  font-size: 1.3rem;
  min-height: 25px;
  padding-top: 6px;
  padding-bottom: 5px;
}

.comp-form-selectedAreaControl output {
  font-weight: bold;
}

.comp-form-selectedAreaControl .mod-modal-content {
  background: #fff;
  margin-top: 20px;
  padding: 0 20px;
}

/* ----------------------------------------------------------------------------
 * .comp-form-search 事例検索フォームコンポーネント
 * ------------------------------------------------------------------------- */
.comp-form-search {
  margin: 0 0 40px;
}

.comp-form-search > .inner {
  background: #f5f9ec;
  border-radius: 8px;
}

.comp-form-search > .inner > .content {
  padding: 12px 30px 28px;
}

.comp-form-search > .inner > .content > *:first-child {
  margin-top: 0;
}

.comp-form-search > .inner > .content > *:last-child {
  margin-bottom: 0;
}

.comp-form-search > .inner > .content > .mod-form-checkbox:first-child {
  margin-bottom: 0;
  padding: 26px 0 15px;
}

.comp-form-search > .inner > .content > .mod-form-fieldset:last-child > .inner {
  padding-bottom: 0;
}

.comp-form-search > .inner > .content + .content {
  padding-top: 20px;
  border-top: 1px solid #ccc;
}

.comp-form-search > .inner > .scale-or-part > .room > .logo,
.comp-form-search > .inner > .scale-or-part > .home > .logo {
  text-align: center;
  padding: 12px;
}

.comp-form-search > .inner > .scale-or-part > .room > .content,
.comp-form-search > .inner > .scale-or-part > .home > .content {
  padding: 12px;
}

.comp-form-search > .inner > .scale-or-part > .room > .content > *:first-child,
.comp-form-search > .inner > .scale-or-part > .home > .content > *:first-child {
  margin-top: 0;
}

.comp-form-search > .inner > .scale-or-part > .room > .content > *:last-child,
.comp-form-search > .inner > .scale-or-part > .home > .content > *:last-child {
  margin-bottom: 0;
}

.comp-form-search > .inner > .scale-or-part > .room > .content .label-lyt,
.comp-form-search > .inner > .scale-or-part > .home > .content .label-lyt {
  display: table;
}

.comp-form-search > .inner > .scale-or-part > .room > .content .label-lyt > .row,
.comp-form-search > .inner > .scale-or-part > .home > .content .label-lyt > .row {
  display: table-row;
}

.comp-form-search > .inner > .scale-or-part > .room > .content .label-lyt > .row > *,
.comp-form-search > .inner > .scale-or-part > .home > .content .label-lyt > .row > * {
  vertical-align: middle;
  display: table-cell;
}

.comp-form-search > .inner > .scale-or-part > .room > .content .label-lyt > .row > .label,
.comp-form-search > .inner > .scale-or-part > .home > .content .label-lyt > .row > .label {
  font-size: 1.6rem;
}

.comp-form-search > .inner > .scale-or-part > .room > .content .label-lyt > .row > .input,
.comp-form-search > .inner > .scale-or-part > .home > .content .label-lyt > .row > .input {
  padding: 0 0 0 10px;
}

.comp-form-search > .inner > .scale-or-part > .room > .content .label-lyt > .row > .input > *:first-child,
.comp-form-search > .inner > .scale-or-part > .home > .content .label-lyt > .row > .input > *:first-child {
  margin-top: 0;
}

.comp-form-search > .inner > .scale-or-part > .room > .content .label-lyt > .row > .input > *:last-child,
.comp-form-search > .inner > .scale-or-part > .home > .content .label-lyt > .row > .input > *:last-child {
  margin-bottom: 0;
}

.comp-form-search > .inner > .scale-or-part > .room > .content .mod-form-radio,
.comp-form-search > .inner > .scale-or-part > .home > .content .mod-form-radio {
  margin: 2px 0 20px;
}

.comp-form-search > .inner > .scale-or-part > .room > .content .mod-form-fieldset:last-child > .inner,
.comp-form-search > .inner > .scale-or-part > .home > .content .mod-form-fieldset:last-child > .inner {
  padding-bottom: 0;
}

.comp-form-search > .inner > .scale-or-part > .room {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.comp-form-search > .inner > .scale-or-part > .home {
  margin: 20px 0 0;
  padding-top: 20px;
  border-top: 1px solid #ccc;
}

.comp-form-search > .inner > .submit {
  padding: 30px 12px;
  border-top: 1px solid #ccc;
}

.comp-form-search > .inner > .submit > *:first-child {
  margin-top: 0;
}

.comp-form-search > .inner > .submit > *:last-child {
  margin-bottom: 0;
}

.comp-form-search > .inner > .submit > .result {
  font-size: 1.6rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.comp-form-search > .inner > .submit > .result .count {
  font-size: 2.4rem;
  font-weight: bold;
  display: inline-block;
  margin: 0 0 0 3px;
}

.comp-form-search > .inner > .submit > .result .unit {
  font-size: 1.4rem;
}

.comp-form-search > .inner > .submit > .mod-btn {
  margin-top: 0;
  padding: 0 20px;
}

.comp-form-search > .inner > .submit::after {
  display: block;
  content: "";
}

/* ----------------------------------------------------------------------------
 * .comp-form-shopSearchControl お店検索専用フォームコンポーネント
 * ------------------------------------------------------------------------- */
.comp-form-shopSearchControl {
  margin: 0 0 30px;
  border-bottom: 1px solid transparent;
}

.comp-form-shopSearchControl::after {
  display: block;
  clear: both;
  content: "";
}

.comp-form-shopSearchControl > .mod-form-searchControl:first-child {
  margin-right: 10px;
}

.comp-form-shopSearchControl .mod-tgl-searchSetting > .tgl-panel > .inner {
  padding: 0;
}

.comp-form-shopSearchControl > .mod-gmap {
  clear: both;
  width: 100%;
  margin: 0;
}

.comp-form-shopSearchControl > .pager > *:first-child,
.comp-form-shopSearchControl > .result > *:first-child,
.comp-form-shopSearchControl > .contact > *:first-child {
  margin-top: 0;
}

.comp-form-shopSearchControl > .pager > *:last-child,
.comp-form-shopSearchControl > .result > *:last-child,
.comp-form-shopSearchControl > .contact > *:last-child {
  margin-bottom: 0;
}

.comp-form-shopSearchControl > .pager {
  max-width: 100%;
  margin-bottom: 30px;
}

.comp-form-shopSearchControl > .result {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  clear: both;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.comp-form-shopSearchControl > .contact {
  width: 100%;
  max-width: 460px;
  margin: 0 0 20px;
}

.comp-form-shopSearchControl > .contact > .inner {
  background: #e3eecc;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 20px 19px 16px;
  border-radius: 4px;
}

.comp-form-shopSearchControl > .contact > .inner::after {
  position: absolute;
  top: 100%;
  left: 22px;
  display: block;
  content: "";
  border: solid transparent;
  border-width: 11px 6px;
  border-top-color: #e3eecc;
}

.comp-form-shopSearchControl > .contact > .inner * {
  margin-bottom: 0;
}

.comp-form-shopSearchControl > .contact > .inner > .lede {
  font-weight: bold;
  padding: 10px 18px 0 0;
}

.comp-form-shopSearchControl > .contact > .inner > .btn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.comp-form-shopSearchControl > .contact > .inner > .btn button {
  font-size: 1.6rem;
  text-align: center;
  color: #fff;
  background: #505050;
  width: 100%;
  margin: 0 0 2px;
  padding: 8px 8px 7px;
}

.comp-form-shopSearchControl + * {
  clear: both;
}

/* ----------------------------------------------------------------------------
 * .comp-form-filterControl フィルタコントロールコンポーネント
 * ------------------------------------------------------------------------- */
.comp-form-filterControl {
  margin: 0 0 20px;
}

.comp-form-filterControl > .inner > .hdg {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 20px;
}

.comp-form-filterControl > .inner > .hdg .mod-hdg {
  margin: 0;
}

.comp-form-filterControl > .inner > .hdg .mod-btn-02 {
  margin: 0 0 0 19px;
}

.comp-form-filterControl > .inner > .form > .row {
  position: relative;
  padding: 0;
}

.comp-form-filterControl > .inner > .form > .row > legend {
  font-weight: bold;
}

.comp-form-filterControl > .inner > .form > .row > .content {
  margin: 0 0 15px;
  padding: 15px 10px;
  border-bottom: 1px solid #ccc;
}

.comp-form-filterControl > .inner > .form > .row > .content > *:first-child {
  margin-top: 0;
}

.comp-form-filterControl > .inner > .form > .row > .content > *:last-child {
  margin-bottom: 0;
}

.comp-form-filterControl > .inner > .content {
  padding: 8px 0;
  border: solid #ccc;
  border-width: 1px 0;
}

.comp-form-filterControl > .inner > .content > *:first-child {
  margin-top: 0;
}

.comp-form-filterControl > .inner > .content > *:last-child {
  margin-bottom: 0;
}

.comp-form-filterControl > .inner > .mod-btn {
  margin-top: 40px;
}

.comp-form-filterControl .mod-btn-02 {
  margin: 0 0 0 19px;
}

/* ----------------------------------------------------------------------------
 * .comp-form-choiceShop お店選択
 * ------------------------------------------------------------------------- */
.comp-form-choiceShop {
  margin: 0 0 80px;
}

.comp-form-choiceShop > .inner > .item {
  background: #f0f1f2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.comp-form-choiceShop > .inner > .item + .item {
  margin-top: 4px;
}

.comp-form-choiceShop > .inner > .item > .head {
  position: relative;
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
  padding: 22px 20px 16px;
}

.comp-form-choiceShop > .inner > .item > .head::after {
  position: absolute;
  bottom: 0;
  left: 20px;
  display: block;
  width: calc(100% - 40px);
  content: "";
  border-bottom: 1px solid #ccc;
}

.comp-form-choiceShop > .inner > .item > .head .address {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin: 0 0 10px;
}

.comp-form-choiceShop > .inner > .item > .head .address .shopname {
  font-size: 2.4rem;
  font-weight: bold;
  margin: 0 0 4px;
}

.comp-form-choiceShop > .inner > .item > .head .address .shopname a {
  text-decoration: none;
}

.comp-form-choiceShop > .inner > .item > .head .address .shopname a::after {
  position: relative;
  top: -4px;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 5px 0 6px;
  content: "";
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 2px solid #30b653;
  border-width: 2px 2px 0 0;
}

.comp-form-choiceShop > .inner > .item > .head .tel .number {
  font-size: 2rem;
  font-weight: bold;
  display: block;
  margin: 0 0 -4px;
}

.comp-form-choiceShop > .inner > .item > .checkbox {
  background: #e3eecc;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}

.comp-form-choiceShop > .inner > .item > .checkbox input {
  position: absolute;
  z-index: -1;
  width: 0;
  height: 0;
}

.comp-form-choiceShop > .inner > .item > .checkbox > label {
  display: block;
  padding: 10px;
}

.comp-form-choiceShop > .inner > .item > .checkbox > label span {
  position: relative;
  display: block;
  padding: 0 0 0 30px;
  cursor: default;
}

.comp-form-choiceShop > .inner > .item > .checkbox > label span::before,
.comp-form-choiceShop > .inner > .item > .checkbox > label span::after {
  position: absolute;
  z-index: 0;
  display: block;
  content: "";
}

.comp-form-choiceShop > .inner > .item > .checkbox > label span::before {
  background: #fff;
  top: 3px;
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #ccc;
}

.comp-form-choiceShop > .inner > .item > .checkbox > label span::after {
  top: 4px;
  left: 6px;
  width: 9px;
  height: 14px;
  -webkit-transition: .2s opacity ease-out;
  -o-transition: .2s opacity ease-out;
  transition: .2s opacity ease-out;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  border: 3px solid #505050;
  border-width: 0 3px 3px 0;
  opacity: 0;
}

.comp-form-choiceShop > .inner > .item > .checkbox > label input:checked + span::after {
  opacity: 1;
}

.comp-form-choiceShop > .inner > .item > .body {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
  padding: 24px 20px;
}

.comp-form-choiceShop > .inner > .item > .body > *:first-child {
  margin-top: 0;
}

.comp-form-choiceShop > .inner > .item > .body > *:last-child {
  margin-bottom: 0;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .img {
  text-align: center;
  margin: 0 0 10px;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .lede {
  font-size: 2rem;
  line-height: 1.4;
  margin: 0 0 23px;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support {
  margin: 0 0 15px;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support > div dt {
  margin: 0 16px 0 0;
  padding: 0 13px 0 0;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support > div dd > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -2px 0 0 -2px;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support > div dd > .list > li {
  font-size: 1.2rem;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 2px 0 0 2px;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support > div dd > .list > li.of-2line {
  font-size: 1.1rem;
  line-height: 1.27273;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support > div dd > .list > li > b {
  font-weight: inherit;
  letter-spacing: -.9px;
  text-align: center;
  color: #505050;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 24px;
  padding: 2px 17px;
  border: 1px solid #505050;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support > div dd .list > li {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support > div dd .list > li:only-child {
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .feature {
  font-weight: bold;
  margin: 0 0 10px;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .feature > .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -2px 0 0 -2px;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .feature > .list > li {
  font-size: 1.2rem;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 2px 0 0 2px;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .feature > .list > li.of-2line {
  font-size: 1.1rem;
  line-height: 1.27273;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .feature > .list > li > b {
  font-weight: inherit;
  letter-spacing: -.9px;
  text-align: center;
  color: #fff;
  background: #9fd038;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 30px;
  padding: 2px;
}

.comp-form-choiceShop > .inner > .item > .body > .description > .summary > .feature li {
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  max-width: 50%;
}

.comp-form-choiceShop > .inner > .item > .foot {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4;
  padding: 22px 20px;
  border-top: 1px solid #ccc;
  -ms-grid-row: 3;
  grid-row: 3;
}

.comp-form-choiceShop > .inner > .item > .foot > * > *:first-child {
  margin-top: 0;
}

.comp-form-choiceShop > .inner > .item > .foot > * > *:last-child {
  margin-bottom: 0;
}

.comp-form-choiceShop > .inner > .item > .foot > .utility {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0 0 0 -4px;
}

.comp-form-choiceShop > .inner > .item > .foot > .utility .btn {
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 10px 0 0 4px;
}

.comp-form-choiceShop > .inner > .item > .foot > .utility .btn a,
.comp-form-choiceShop > .inner > .item > .foot > .utility .btn button {
  font-weight: bold;
}

.comp-form-choiceShop > .inner > .item > .foot > .utility .btn a {
  text-decoration: none;
  color: #fff;
  background: #505050;
  padding: 9px 22px 8px;
}

.comp-form-choiceShop > .inner > .item > .foot > .utility .btn .func-btn {
  color: #505050;
  position: relative;
  padding: 8px 20px 7px 27px;
  border: 1px solid #505050;
}

.comp-form-choiceShop > .inner > .item > .foot > .utility .btn .func-btn::before {
  background-image: url(/reform/shared/img/sprite.png);
  background-position: -120.5px -116px;
  background-size: 180px 153px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 8px;
  display: block;
  width: 17px;
  height: 13px;
  margin: auto 0;
  content: "";
}

.comp-form-choiceShop .mod-btn a,
.comp-form-choiceShop .mod-btn button {
  width: auto;
}

.comp-form-choiceShop .mod-tgl-searchSetting .tgl-hook {
  background: #d9d9d9;
}

.comp-form-choiceShop .mod-tgl-searchSetting .tgl-panel > .inner {
  padding: 21px 0;
}

/* ============================================================================
 * _lyt component
 * ========================================================================= */
/* ----------------------------------------------------------------------------
 * .comp-lyt-compareBtn 検討リストのボタンをレイアウトするためだけのルールセット
 * ------------------------------------------------------------------------- */
.comp-lyt-compareBtn {
  margin: -16px 0 80px -32px;
}

.comp-lyt-compareBtn > .col {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 16px 0 0 32px;
}

.comp-lyt-compareBtn > .col > *:first-child {
  margin-top: 0;
}

.comp-lyt-compareBtn > .col > *:last-child {
  margin-bottom: 0;
}

.comp-lyt-compareBtn > .col > .mod-btn,
.comp-lyt-compareBtn > .col > .mod-btn-02 {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.comp-lyt-compareBtn > .col > .mod-btn > .btn,
.comp-lyt-compareBtn > .col > .mod-btn-02 > .btn {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.comp-lyt-compareBtn a {
  width: 100%;
}

[class^="mod-"] .break-word,
[class^="comp-"] .break-word {
  display: inline-block;
}

@media screen and (min-width: 500px), print {
  .mod-list-searchExample02[data-layout="list"] > .list > li > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

@media screen and (min-width: 580px), print {
  .mod-list-searchExample03 > .list > li > .inner > .summary > .hdg a::before {
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
  }
  .mod-list-searchExample03 > .list > li > .inner > .summary > .hdg a:hover::before,
  .mod-list-searchExample03 > .list > li > .inner > .summary > .hdg a:focus::before {
    opacity: .2;
  }
  .mod-list-searchExample03[data-layout="list"] > .list {
    margin: 0;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li {
    margin: 5px 0 0;
    padding: 19px 24px 10px 19px;
    border: 1px solid #ccc;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary {
    width: calc(100% - 188px);
    padding: 0 0 40px 20px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .hdg {
    font-size: 1.6rem;
    margin-bottom: 14px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .hdg a::before {
    width: 188px;
    height: 188px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .hdg .tag {
    top: -16px;
    right: auto;
    left: 150px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .category {
    margin: 0;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .status {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .status .tag span {
    padding: 4px 6px 3px 7px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .status > .price {
    font-size: 2rem;
    margin: 0 0 0 22px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .status > .price .unit {
    font-size: 1.3rem;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .category {
    margin: 0 0 0 28px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .prop > .category > .list li b {
    padding: 5px 12px 4px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .description {
    margin: 9px 0 0;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    min-width: inherit;
    max-width: 188px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .img {
    width: 100%;
    height: 188px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .img img {
    position: static;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn {
    bottom: 7px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn::before {
    background-image: url(/reform/shared/img/sprite.png);
    background-position: -285px -232px;
    background-size: auto;
    width: 30px;
    height: 26px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn::after {
    background: url(/reform/shared/img/icn/favorite_add_balloon_pc.png);
    right: -12px;
    bottom: -56px;
    width: 87px;
    height: 54px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn[data-is-favorited="true"]::before {
    background-image: url(/reform/shared/img/sprite.png);
    background-position: 0 -280px;
    background-size: auto;
    width: 30px;
    height: 26px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn[data-is-favorited="true"]::after {
    background: url(/reform/shared/img/icn/favorite_remove_balloon_pc.png);
    width: 97px;
    height: 54px;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn[data-is-favorited="true"]:hover::after,
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .mainvisual .func-btn[data-is-favorited="true"]:focus::after {
    pointer-events: auto;
    opacity: 1;
  }
}

@media screen and (min-width: 768px), print {
  a {
    -webkit-transition: .2s color ease-out;
    -o-transition: .2s color ease-out;
    transition: .2s color ease-out;
  }
  [class^="site-"] a img,
  [class^="str-"] a img,
  [class^="nav-"] a img,
  [class^="mod-"] a img,
  [class^="comp-"] a img,
  [class^="func-"] a img {
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
  }
  [class^="site-"] a:hover img,
  [class^="site-"] a:focus img,
  [class^="str-"] a:hover img,
  [class^="str-"] a:focus img,
  [class^="nav-"] a:hover img,
  [class^="nav-"] a:focus img,
  [class^="mod-"] a:hover img,
  [class^="mod-"] a:focus img,
  [class^="comp-"] a:hover img,
  [class^="comp-"] a:focus img,
  [class^="func-"] a:hover img,
  [class^="func-"] a:focus img {
    opacity: .7;
  }
  .str-breadcrumb {
    display: block;
  }
  .str-mainvisual {
    padding-top: 0;
    padding-bottom: 0;
  }
  .str-mainvisual::after {
    min-height: 12.5vw;
  }
  .str-mainvisual > .inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .str-pageTitle {
    margin-bottom: 44px;
  }
  .str-pageTitle > .inner {
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .str-pageTitle > .inner .content {
    padding-top: 40px;
    padding-bottom: 0;
  }
  .str-pageTitle > .inner .content > .hdg {
    font-size: 2.8rem;
    line-height: 1.21429;
  }
  .str-pageTitle > .inner .content > .label {
    font-size: 1.3rem;
    font-weight: bold;
    padding: 6px 1px 5px 7px;
  }
  .str-pageTitle > .inner .content > .label::before {
    border-width: 12px 13px;
  }
  .str-pageTitle > .inner .control {
    margin-left: 20px;
    padding-top: 24px;
  }
  .str-pageTitle > .inner .control .favorite > a {
    font-size: 1.3rem;
    letter-spacing: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    min-width: 254px;
    padding: 15px 24px 15px 57px;
  }
  .str-pageTitle > .inner .control .favorite > a::before {
    background-image: url(/reform/shared/img/sprite.png);
    background-position: -210px -280px;
    background-size: auto;
    left: 19px;
    width: 24px;
    height: 21px;
  }
  body > header:first-child {
    padding-top: 30px !important;
  }
  .str-pnl[data-col-pc] > .str-inner > .wrap > .col.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .str-pnl[data-col-pc] > .str-inner > .wrap > .col.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .str-pnl[data-col-pc="auto"] > .str-inner > .wrap > .col {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .str-pnl[data-col-pc="2"] > .str-inner > .wrap > .col {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .str-pnl[data-col-pc="3"] > .str-inner > .wrap > .col {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .str-pnl[data-col-pc="4"] > .str-inner > .wrap > .col {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .str-pnl[data-col-pc="5"] > .str-inner > .wrap > .col {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .str-pnl[data-col-pc="6"] > .str-inner > .wrap > .col {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .str-pnl > .str-inner > .wrap > .col.of-vertical-pc {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
  }
  .str-pnl > .str-inner > .wrap > .col.of-vertical-pc > .pnl {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .str-pnl > .str-inner > .wrap > .col.of-vertical-pc > .pnl > .txt {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .str-pnl > .str-inner > .wrap > .col.of-vertical-pc p {
    margin-top: 0;
    margin-bottom: 0;
  }
  .str-pnl > .str-inner > .wrap > .col.of-vertical-pc p b {
    margin-top: 0;
  }
  .str-replaceNavigationWithMainvisual {
    display: block;
  }
  .str-box-contact .wrap {
    font-size: 1.6rem;
  }
  .str-box-contact .hdg {
    font-size: 2.2rem;
  }
  .str-box-contact .tel {
    font-size: 2rem;
    margin-bottom: 1px;
  }
  .str-box-contact .tel .title {
    margin: 0 22px 0 0;
  }
  .str-box-contact .tel .freedial img {
    height: auto;
  }
  .str-box-contact .tel .number {
    font-size: 2.8rem;
  }
  .str-box-contact .time {
    font-size: 1.4rem;
    padding: 0 15px 0 0;
  }
  .nav-local a,
  .nav-local b {
    font-size: 1.4rem;
    color: #fff;
    padding: 10px 0;
  }
  .nav-local a:hover,
  .nav-local a:focus,
  .nav-local b:hover,
  .nav-local b:focus {
    background: #414141;
  }
  .nav-local a span:not(.break-word),
  .nav-local b span:not(.break-word) {
    color: #fff;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .nav-local a {
    border-bottom: 1px solid #6a6b6c;
  }
  .nav-local a > span::after {
    display: none;
  }
  .nav-local > .inner > .hdg {
    pointer-events: none;
    position: absolute;
    z-index: -1;
    overflow: hidden;
    width: 0;
    height: 0;
  }
  .nav-local > .inner > .list {
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  html:not([data-script-enabled="true"]) .nav-local > .inner > .list {
    background: #414141;
  }
  .nav-local > .inner > .list > li {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    margin-top: 0;
    -webkit-transition: .1s all ease-in-out;
    -o-transition: .1s all ease-in-out;
    transition: .1s all ease-in-out;
    border: 0;
  }
  html[data-browser-trident="true"] .nav-local > .inner > .list > li {
    width: 100%;
  }
  .nav-local > .inner > .list > li > a {
    padding: 10px;
  }
  .nav-local > .inner > .list > li:last-child > a::before,
  .nav-local > .inner > .list > li:last-child > b::before {
    width: 100%;
    border-right: 1px solid #6a6b6c;
  }
  .nav-local > .inner > .list > li > .list {
    background: #414141;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  .nav-local > .inner > .list > li > .list li {
    border: 0;
  }
  .nav-local > .inner > .list > li > .list li a {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding: 9px 0 8px 22px;
    padding-left: 16px;
    border-bottom: 1px solid #6b6b6b;
  }
  .nav-local > .inner > .list > li > .list li a::after {
    display: none;
  }
  .nav-local > .inner > .list > li > .list li a span {
    text-align: left;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    border: 0;
  }
  .nav-local > .inner > .list > li > .list li:last-child a {
    border-bottom: 0;
  }
  html[data-script-enabled="true"] .nav-local > .inner {
    background: #505050;
    overflow: visible;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .hdg:not([aria-expanded="false"]) + .list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list {
    background: transparent;
    position: static;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li > b {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 18px 0 16px;
    cursor: default;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li > b[aria-expanded="true"] {
    background: #414141;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li > b span:not(.break-word) {
    font-weight: normal;
    color: #fff;
    position: relative;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li > b span:not(.break-word)::before,
  html[data-script-enabled="true"] .nav-local > .inner > .list > li > b span:not(.break-word)::after {
    display: none;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li > b::after {
    background: transparent;
    position: relative;
    display: block;
    min-width: 8px;
    min-height: 8px;
    margin: 0 0 0 9px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    border: solid #fff;
    border-width: 0 2px 2px 0;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li[aria-current="true"] > a {
    background: #fff;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li[aria-current="true"] > a::before {
    left: -1px;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li[aria-current="true"] > a span {
    font-weight: bold;
    color: #13449d;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li[aria-current="true"] > b {
    background: #fff;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li[aria-current="true"] > b::before {
    left: -1px;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li[aria-current="true"] > b span:not(.break-word) {
    font-weight: bold;
    color: #13449d;
    padding-right: 6px;
    padding-left: 0;
    border: 0;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li[aria-current="true"] > b::after {
    border-color: #13449d;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li:last-child[aria-current="true"] > a,
  html[data-script-enabled="true"] .nav-local > .inner > .list > li:last-child[aria-current="true"] > b {
    background: #fff;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list > li:last-child[aria-current="true"] > a::before,
  html[data-script-enabled="true"] .nav-local > .inner > .list > li:last-child[aria-current="true"] > b::before {
    width: calc(100% + 2px);
  }
  html[data-script-enabled="true"] .nav-local a,
  html[data-script-enabled="true"] .nav-local b {
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  html[data-script-enabled="true"] .nav-local a span:not(.break-word),
  html[data-script-enabled="true"] .nav-local b span:not(.break-word) {
    text-align: center;
  }
  html[data-script-enabled="true"] .nav-local a br,
  html[data-script-enabled="true"] .nav-local b br {
    display: block;
  }
  html[data-script-enabled="true"] .nav-local a::before,
  html[data-script-enabled="true"] .nav-local b::before {
    background: transparent;
    position: absolute;
    top: 10px;
    left: 0;
    display: block;
    width: 1px;
    height: calc(100% - 20px);
    content: "";
    border-left: 1px solid #6a6b6c;
  }
  html[data-script-enabled="true"] .nav-local a {
    border-bottom: 0;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list {
    overflow: visible;
  }
  html[data-script-enabled="true"] .nav-local > .inner > .list li > .list {
    position: absolute;
    z-index: 1;
    top: 100%;
    right: 0;
    display: none;
    min-width: 300px;
  }
  .nav-local-02[data-col-pc] > .inner > .list > li.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .nav-local-02[data-col-pc] > .inner > .list > li.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .nav-local-02[data-col-pc="auto"] > .inner > .list > li {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .nav-local-02[data-col-pc="2"] > .inner > .list > li {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .nav-local-02[data-col-pc="3"] > .inner > .list > li {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .nav-local-02[data-col-pc="4"] > .inner > .list > li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .nav-local-02[data-col-pc="5"] > .inner > .list > li {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .nav-local-02[data-col-pc="6"] > .inner > .list > li {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .nav-local-02 > .inner > .list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: -2px 0 0 -2px;
  }
  .nav-local-02 > .inner > .list > li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    min-width: 25%;
    padding: 2px 0 0 2px;
  }
  .nav-local-02 > .inner > .list > li.of-full {
    max-width: none;
  }
  .nav-local-02 > .inner > .list > li a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
  }
  .nav-local-02 > .inner > .list > li + li {
    margin-top: 0;
  }
  .nav-local-02[data-col] > .inner > .list > li,
  .nav-local-02[data-col-pc] > .inner > .list > li {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
  .nav-toc a:hover > span,
  .nav-toc a:focus > span {
    text-decoration: underline;
  }
  .mod-hdg-al3type2.of-hasBtn > .btn button,
  .mod-btn-addFavorite > .btn button,
  .mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-favoriteBtn .func-btn {
    font-size: 1.2rem;
    padding: 7px 12px 5px 34px;
  }
  .mod-hdg-al3type2.of-hasBtn > .btn button::before,
  .mod-btn-addFavorite > .btn button::before,
  .mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-favoriteBtn .func-btn::before {
    background-image: url(/reform/shared/img/sprite.png);
    background-position: -338px -64px;
    background-size: auto;
    left: 10px;
    width: 16px;
    height: 14px;
  }
  .mod-hdg-al3type2.of-hasBtn > .btn button[data-is-favorited="true"]::before,
  .mod-btn-addFavorite > .btn button[data-is-favorited="true"]::before,
  .mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-favoriteBtn .func-btn[data-is-favorited="true"]::before {
    background-image: url(/reform/shared/img/sprite.png);
    background-position: -338px -88px;
    background-size: auto;
    width: 16px;
    height: 14px;
  }
  .mod-hdg-al2 {
    font-size: 3rem;
  }
  .mod-hdg-al3type2 {
    font-size: 2.2rem;
    text-align: left;
    margin-top: 63px;
    margin-bottom: 30px;
  }
  .mod-btn-addFavorite + .mod-hdg-al3type2 {
    margin-top: 41px;
  }
  .mod-hdg-al3type2.of-hasBtn {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-top: 30px;
    margin-bottom: 43px;
    padding-bottom: 2px;
    border-bottom: 2px solid #9cc715;
  }
  .mod-hdg-al3type2.of-hasBtn > *:first-child {
    padding-bottom: 0;
    border-bottom: 0;
  }
  .mod-hdg-al3type2.of-hasBtn > .btn {
    margin-top: -5px;
  }
  .mod-hdg-bl3type2 {
    font-size: 1.7rem;
    margin-bottom: 39px;
    padding-top: 8px;
  }
  .mod-hdg-bl3type2 > * span {
    padding-left: 12px;
  }
  .mod-hdg-balloon {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .mod-hdg-balloon > *:first-child {
    font-size: 1.4rem;
  }
  .mod-hdg-balloon > *:first-child span {
    min-width: 89px;
    min-height: 89px;
  }
  .mod-hdg-balloon > .content {
    margin-top: 7px;
    margin-left: 36px;
    padding-top: 15px;
    border-top-left-radius: 0;
  }
  .mod-hdg-balloon > .content::before {
    position: absolute;
    top: 0;
    right: 100%;
    content: "";
    border: solid transparent;
    border-width: 0 24px 17px 24px;
    border-right-color: #f5f9ec;
  }
  .mod-btn a[href],
  .mod-btn button[type]:not(:disabled),
  .mod-btn-02 a[href],
  .mod-btn-02 button[type]:not(:disabled),
  .mod-btn-03 a[href],
  .mod-btn-03 button[type]:not(:disabled) {
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
  }
  .mod-btn a[href]:hover,
  .mod-btn a[href]:focus,
  .mod-btn button[type]:not(:disabled):hover,
  .mod-btn button[type]:not(:disabled):focus,
  .mod-btn-02 a[href]:hover,
  .mod-btn-02 a[href]:focus,
  .mod-btn-02 button[type]:not(:disabled):hover,
  .mod-btn-02 button[type]:not(:disabled):focus,
  .mod-btn-03 a[href]:hover,
  .mod-btn-03 a[href]:focus,
  .mod-btn-03 button[type]:not(:disabled):hover,
  .mod-btn-03 button[type]:not(:disabled):focus {
    opacity: .7;
  }
  .mod-btn[data-col-pc],
  .mod-btn-02[data-col-pc],
  .mod-btn-03[data-col-pc] {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    margin-top: -24px;
    margin-left: -24px;
  }
  .mod-btn[data-col-pc] > .btn,
  .mod-btn-02[data-col-pc] > .btn,
  .mod-btn-03[data-col-pc] > .btn {
    padding: 24px 0 0 24px;
  }
  .mod-btn[data-col-pc] > .btn:not(:last-child),
  .mod-btn-02[data-col-pc] > .btn:not(:last-child),
  .mod-btn-03[data-col-pc] > .btn:not(:last-child) {
    margin: 0;
  }
  .mod-btn[data-col-pc] > .btn a,
  .mod-btn[data-col-pc] > .btn button[type],
  .mod-btn-02[data-col-pc] > .btn a,
  .mod-btn-02[data-col-pc] > .btn button[type],
  .mod-btn-03[data-col-pc] > .btn a,
  .mod-btn-03[data-col-pc] > .btn button[type] {
    min-width: 0;
  }
  .mod-btn[data-col-pc="auto"] > .btn a,
  .mod-btn[data-col-pc="auto"] > .btn button[type],
  .mod-btn-02[data-col-pc="auto"] > .btn a,
  .mod-btn-02[data-col-pc="auto"] > .btn button[type],
  .mod-btn-03[data-col-pc="auto"] > .btn a,
  .mod-btn-03[data-col-pc="auto"] > .btn button[type] {
    width: auto;
  }
  .mod-btn[data-col-pc="1"] > .btn a,
  .mod-btn[data-col-pc="1"] > .btn button[type],
  .mod-btn-02[data-col-pc="1"] > .btn a,
  .mod-btn-02[data-col-pc="1"] > .btn button[type],
  .mod-btn-03[data-col-pc="1"] > .btn a,
  .mod-btn-03[data-col-pc="1"] > .btn button[type] {
    width: 100%;
  }
  .mod-btn > .btn.of-full a,
  .mod-btn > .btn.of-full button[type],
  .mod-btn-02 > .btn.of-full a,
  .mod-btn-02 > .btn.of-full button[type],
  .mod-btn-03 > .btn.of-full a,
  .mod-btn-03 > .btn.of-full button[type] {
    width: 100%;
  }
  .mod-btn:not([data-col]) > .btn + .btn,
  .mod-btn-02:not([data-col]) > .btn + .btn,
  .mod-btn-03:not([data-col]) > .btn + .btn {
    margin-top: 0;
  }
  .mod-btn:not([data-col]):not([data-col-pc]) > .btn + .btn,
  .mod-btn-02:not([data-col]):not([data-col-pc]) > .btn + .btn,
  .mod-btn-03:not([data-col]):not([data-col-pc]) > .btn + .btn {
    margin-top: 20px;
  }
  .mod-btn:not([data-col-pc]).align-left-pc,
  .mod-btn-02:not([data-col-pc]).align-left-pc,
  .mod-btn-03:not([data-col-pc]).align-left-pc {
    -webkit-box-align: start !important;
    -webkit-align-items: flex-start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important;
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .mod-btn:not([data-col-pc]).align-left-pc > .btn,
  .mod-btn-02:not([data-col-pc]).align-left-pc > .btn,
  .mod-btn-03:not([data-col-pc]).align-left-pc > .btn {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .mod-btn:not([data-col-pc]).align-right-pc,
  .mod-btn-02:not([data-col-pc]).align-right-pc,
  .mod-btn-03:not([data-col-pc]).align-right-pc {
    -webkit-box-align: end !important;
    -webkit-align-items: flex-end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important;
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .mod-btn:not([data-col-pc]).align-right-pc > .btn,
  .mod-btn-02:not([data-col-pc]).align-right-pc > .btn,
  .mod-btn-03:not([data-col-pc]).align-right-pc > .btn {
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .mod-btn[data-col-pc].align-left-pc,
  .mod-btn-02[data-col-pc].align-left-pc,
  .mod-btn-03[data-col-pc].align-left-pc {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .mod-btn[data-col-pc].align-left-pc > .btn,
  .mod-btn-02[data-col-pc].align-left-pc > .btn,
  .mod-btn-03[data-col-pc].align-left-pc > .btn {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .mod-btn[data-col-pc].align-right-pc,
  .mod-btn-02[data-col-pc].align-right-pc,
  .mod-btn-03[data-col-pc].align-right-pc {
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .mod-btn[data-col-pc].align-right-pc > .btn,
  .mod-btn-02[data-col-pc].align-right-pc > .btn,
  .mod-btn-03[data-col-pc].align-right-pc > .btn {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .mod-btn[data-col-pc] > .btn.of-full,
  .mod-btn-02[data-col-pc] > .btn.of-full,
  .mod-btn-03[data-col-pc] > .btn.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-btn[data-col-pc] > .btn.of-fillIn,
  .mod-btn-02[data-col-pc] > .btn.of-fillIn,
  .mod-btn-03[data-col-pc] > .btn.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-btn[data-col-pc="auto"] > .btn,
  .mod-btn-02[data-col-pc="auto"] > .btn,
  .mod-btn-03[data-col-pc="auto"] > .btn {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-btn[data-col-pc="2"] > .btn,
  .mod-btn-02[data-col-pc="2"] > .btn,
  .mod-btn-03[data-col-pc="2"] > .btn {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-btn[data-col-pc="3"] > .btn,
  .mod-btn-02[data-col-pc="3"] > .btn,
  .mod-btn-03[data-col-pc="3"] > .btn {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-btn[data-col-pc="4"] > .btn,
  .mod-btn-02[data-col-pc="4"] > .btn,
  .mod-btn-03[data-col-pc="4"] > .btn {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-btn[data-col-pc="5"] > .btn,
  .mod-btn-02[data-col-pc="5"] > .btn,
  .mod-btn-03[data-col-pc="5"] > .btn {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-btn[data-col-pc="6"] > .btn,
  .mod-btn-02[data-col-pc="6"] > .btn,
  .mod-btn-03[data-col-pc="6"] > .btn {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-btn[data-col-pc="auto"] > .btn a,
  .mod-btn[data-col-pc="auto"] > .btn button[type] {
    min-width: 235px;
  }
  .mod-btn > .btn.var-02 > button[type] {
    font-size: 1.6rem;
    width: 251px;
    padding: 18px 27px 15px;
  }
  .mod-btn-02 > .btn a[href]:hover,
  .mod-btn-02 > .btn a:not([href]):hover,
  .mod-btn-02 > .btn button[type]:hover {
    color: inherit;
  }
  .mod-link-list[data-col-pc] > .list > li.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-link-list[data-col-pc] > .list > li.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-link-list[data-col-pc="auto"] > .list > li {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-link-list[data-col-pc="2"] > .list > li {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-link-list[data-col-pc="3"] > .list > li {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-link-list[data-col-pc="4"] > .list > li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-link-list[data-col-pc="5"] > .list > li {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-link-list[data-col-pc="6"] > .list > li {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-link-list[data-col-pc] > .list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: -7px 0 0 -26px;
  }
  .mod-link-list[data-col-pc] > .list > li {
    padding: 7px 0 0 26px;
  }
  .mod-link-list02[data-col-pc] > .list > li.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-link-list02[data-col-pc] > .list > li.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-link-list02[data-col-pc="auto"] > .list > li {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-link-list02[data-col-pc="2"] > .list > li {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-link-list02[data-col-pc="3"] > .list > li {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-link-list02[data-col-pc="4"] > .list > li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-link-list02[data-col-pc="5"] > .list > li {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-link-list02[data-col-pc="6"] > .list > li {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-link-list02[data-col-pc] {
    max-width: 695px;
    margin-right: auto;
    margin-left: auto;
  }
  .mod-link-list02[data-col-pc] > .list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: -7px 0 0 -12px;
  }
  .mod-link-list02[data-col-pc] > .list > li {
    padding: 7px 0 0 12px;
  }
  .mod-link-list02[data-col-pc] > .list > li a {
    padding: 15px 0 16px;
  }
  .mod-link-anchor[data-col-pc] > .list > li.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-link-anchor[data-col-pc] > .list > li.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-link-anchor[data-col-pc="auto"] > .list > li {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-link-anchor[data-col-pc="2"] > .list > li {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-link-anchor[data-col-pc="3"] > .list > li {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-link-anchor[data-col-pc="4"] > .list > li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-link-anchor[data-col-pc="5"] > .list > li {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-link-anchor[data-col-pc="6"] > .list > li {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-link-anchor > .list > li > a {
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
  }
  .mod-link-anchor > .list > li > a:hover,
  .mod-link-anchor > .list > li > a:focus {
    opacity: .7;
  }
  .mod-link-tab[data-col-pc] > .tab-list > li.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-link-tab[data-col-pc] > .tab-list > li.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-link-tab[data-col-pc="auto"] > .tab-list > li {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-link-tab[data-col-pc="2"] > .tab-list > li {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-link-tab[data-col-pc="3"] > .tab-list > li {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-link-tab[data-col-pc="4"] > .tab-list > li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-link-tab[data-col-pc="5"] > .tab-list > li {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-link-tab[data-col-pc="6"] > .tab-list > li {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-link-tab > .tab-list {
    padding-bottom: 2px;
  }
  .mod-link-tab > .tab-list::after {
    border-bottom-width: 2px;
  }
  .mod-link-tab > .tab-list > li {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  .mod-link-tab > .tab-list > li > * {
    font-size: 1.4rem;
    line-height: 1.16667;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    min-height: 46px;
    padding-top: 8px;
    padding-bottom: 5px;
  }
  .mod-link-tab > .tab-list > li[tabindex] span {
    -webkit-transition: .2s background ease-out;
    -o-transition: .2s background ease-out;
    transition: .2s background ease-out;
  }
  .mod-link-tab > .tab-list > li[tabindex]:not([aria-selected="true"]):hover span {
    background: #f7f7f7;
  }
  .mod-link-tab > .tab-panel {
    margin-top: 60px;
  }
  html:not([data-script-enabled="true"]) .mod-link-tab > .tab-panel > .str-invisible {
    margin: 0 0 45px;
  }
  .mod-link-tab > .tab-panel > .str-invisible:first-child + * {
    margin-top: 0;
  }
  .mod-link-tab > .tab-panel > .str-invisible:first-child + .mod-other-detailUtility {
    margin-top: -26px;
  }
  .mod-link-tab > .tab-panel > .mod-other-detailUtility:first-child {
    margin-top: -26px;
  }
  .mod-link-step > .list > li > a[href] {
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
  }
  .mod-link-step > .list > li > a[href]:hover,
  .mod-link-step > .list > li > a[href]:focus {
    opacity: .7;
  }
  .mod-list-step[data-col-pc] > .list > li.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-list-step[data-col-pc] > .list > li.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-list-step[data-col-pc="auto"] > .list > li {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-list-step[data-col-pc="2"] > .list > li {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-list-step[data-col-pc="3"] > .list > li {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-list-step[data-col-pc="4"] > .list > li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-list-step[data-col-pc="5"] > .list > li {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-list-step[data-col-pc="6"] > .list > li {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-list-step[data-col-pc="7"] > .list > li {
    -webkit-flex-basis: 14.28571%;
        -ms-flex-preferred-size: 14.28571%;
            flex-basis: 14.28571%;
    width: 14.28571%;
    min-width: 14.28571%;
    max-width: 14.28571%;
  }
  .mod-list-step[data-col-pc="8"] > .list > li {
    -webkit-flex-basis: 12.5%;
        -ms-flex-preferred-size: 12.5%;
            flex-basis: 12.5%;
    width: 12.5%;
    min-width: 12.5%;
    max-width: 12.5%;
  }
  .mod-list-step.var-02:not([data-col-pc]) li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    max-width: 25%;
  }
  .mod-list-searchExample {
    margin-bottom: 1px;
  }
  .mod-list-searchExample > .list > li + li {
    margin-top: 9px;
  }
  .mod-list-searchExample > .list > li > .summary {
    display: -ms-grid;
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-grid-columns: 245px 1fr;
    grid-template-columns: 245px 1fr;
    -ms-grid-rows: auto auto auto 1fr;
    grid-template-rows: auto auto auto 1fr;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg {
    padding: 1px 0 0 3px;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2 / 3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1 / 2;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg > .new {
    font-size: 1rem;
    top: 26px;
    right: auto;
    left: 12px;
    width: 42px;
    padding: 2px 0;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg .tag {
    position: absolute;
    z-index: 100;
    top: 6px;
    right: auto;
    left: 127px;
  }
  .mod-list-searchExample > .list > li > .summary > .mainvisual {
    margin-bottom: 0;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1 / 2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    grid-row: 1 / 4;
  }
  .mod-list-searchExample > .list > li > .summary > .caption {
    margin: 18px 0 0;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1 / 2;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    grid-row: 4 / 5;
  }
  .mod-list-searchExample > .list > li > .summary > .caption .tag,
  .mod-list-searchExample > .list > li > .summary > .caption .price {
    padding: 0;
  }
  .mod-list-searchExample > .list > li > .summary > .caption .price {
    margin-left: 20px;
  }
  .mod-list-searchExample > .list > li > .summary > .shop {
    margin: 21px 0 11px 3px;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2 / 3;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2 / 3;
  }
  .mod-list-searchExample > .list > li > .summary > .part {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2 / 3;
    -ms-grid-row: 3;
    -ms-grid-row-span: 2;
    grid-row: 3 / 5;
  }
  .mod-list-searchExample > .list > li > .summary > .part > .list {
    padding: 11px 14px 4px;
  }
  .mod-list-searchExample > .list > li > .summary .caption .price {
    text-align: left;
  }
  .mod-list-searchExample > .list > li .description {
    line-height: 1.69231;
    margin: 8px 0 0;
  }
  .mod-list-searchExample > .list {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .mod-list-searchExample > .list > li {
    padding: 20px 19px 47px 18px;
    border: 1px solid #ccc;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg {
    font-size: 1.6rem;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg > a::before {
    top: 20px;
    right: auto;
    left: 18px;
    margin: 0;
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg > a > .title {
    padding-left: 0;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg > a > .title::after {
    left: 0;
    -webkit-transition: .2s left ease-out;
    -o-transition: .2s left ease-out;
    transition: .2s left ease-out;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg > a:hover::before,
  .mod-list-searchExample > .list > li > .summary > .hdg > a:focus::before {
    opacity: .2;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg > a:hover > .title::after,
  .mod-list-searchExample > .list > li > .summary > .hdg > a:focus > .title::after {
    left: 2px;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg .func-btn {
    right: 20px;
    bottom: 12px;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg .func-btn::before {
    background-image: url(/reform/shared/img/sprite.png);
    background-position: -285px -232px;
    background-size: auto;
    width: 30px;
    height: 26px;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg .func-btn[data-is-favorited="true"]::before {
    background-image: url(/reform/shared/img/sprite.png);
    background-position: 0 -280px;
    background-size: auto;
    width: 30px;
    height: 26px;
  }
  .mod-list-searchExample > .list > li > .summary > .hdg .func-btn[data-is-favorited="true"]::after {
    background: url(/reform/shared/img/icn/favorite_remove_balloon_pc.png);
    right: -14px;
    bottom: -55px;
    width: 97px;
    height: 54px;
  }
  .mod-list-searchExample > .list > li > .summary > .part > .list {
    background: #fff;
  }
  .mod-list-searchExample > .list > li > .summary > .part > .list > li {
    min-width: 20%;
    max-width: 20%;
    padding-top: 0;
  }
  .mod-list-searchExample > .list > li > .summary > .part > .list > li > a .name::after {
    -webkit-transition: .2s right ease-out;
    -o-transition: .2s right ease-out;
    transition: .2s right ease-out;
  }
  .mod-list-searchExample > .list > li > .summary > .part > .list > li > a:hover .caption .name::after,
  .mod-list-searchExample > .list > li > .summary > .part > .list > li > a:focus .caption .name::after {
    right: -3px;
  }
  .mod-list-searchExample > .list > li > .summary > .part > .list > li > .item > .caption > .name {
    font-size: 1.2rem;
  }
  .mod-list-searchExample > .list > li > .summary > .part > .list > li > .item > .caption > .price {
    font-size: 1.1rem;
    text-align: center;
  }
  .mod-list-searchExample > .list > li > .summary > .part > .list > li > .item > .caption > .price > span:first-child {
    font-size: 1.5rem;
  }
  .mod-list-searchExample > .list > li > .summary .caption .tag > b {
    font-size: 1.1rem;
    vertical-align: bottom;
    min-width: 70px;
    padding: 4px 6px 3px;
  }
  .mod-list-searchExample > .list > li > .summary .caption .price {
    font-size: 2rem;
  }
  .mod-list-searchExample > .list > li > .summary .caption .price .unit {
    font-size: 1.3rem;
  }
  .mod-list-searchExample02[data-col-pc] > .list > li.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-list-searchExample02[data-col-pc] > .list > li.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-list-searchExample02[data-col-pc="auto"] > .list > li {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-list-searchExample02[data-col-pc="2"] > .list > li {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-list-searchExample02[data-col-pc="3"] > .list > li {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-list-searchExample02[data-col-pc="4"] > .list > li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-list-searchExample02[data-col-pc="5"] > .list > li {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-list-searchExample02[data-col-pc="6"] > .list > li {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-list-searchExample02 > .list > li > .inner > .summary > .hdg a::before {
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
  }
  .mod-list-searchExample02 > .list > li > .inner > .summary > .hdg a:hover::before,
  .mod-list-searchExample02 > .list > li > .inner > .summary > .hdg a:focus::before {
    opacity: .2;
  }
  .mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .hdg a::before {
    width: 250px;
  }
  .mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .prop > .status {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .mod-list-searchExample02[data-layout="list"] > .list > li > .inner > .summary > .prop > .status > .price {
    white-space: nowrap;
  }
  .mod-list-searchExample03[data-col-pc] > .list > li.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-list-searchExample03[data-col-pc] > .list > li.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-list-searchExample03[data-col-pc="auto"] > .list > li {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-list-searchExample03[data-col-pc="2"] > .list > li {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-list-searchExample03[data-col-pc="3"] > .list > li {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-list-searchExample03[data-col-pc="4"] > .list > li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-list-searchExample03[data-col-pc="5"] > .list > li {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-list-searchExample03[data-col-pc="6"] > .list > li {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list {
    margin: -10px 0 0 -7px;
    border: 0;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li {
    padding: 10px 0 0 7px;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner {
    padding: 20px 18px 45px 20px;
    border: 1px solid #ccc;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary {
    padding-top: 15px;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .hdg {
    font-size: 1.4rem;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .hdg .new {
    font-size: 1rem;
    top: 9px;
    left: -6px;
    width: 42px;
    padding: 2px 0;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .hdg .new > span::after {
    bottom: -4px;
    border-width: 0 5px 4px 0;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .hdg .tag {
    right: 15px;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .hdg .tag > img {
    width: 56px;
    height: 71px;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .hdg a::before {
    top: 20px;
    width: calc(100% - 38px);
    padding-top: calc(100% - 38px);
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .status {
    margin-bottom: 6px;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .status > .tag > span {
    font-size: 1.1rem;
    min-width: 70px;
    padding: 3px 8px;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .status > .price {
    font-size: 2rem;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .status > .price .unit {
    font-size: 1.3rem;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .category {
    margin-bottom: 10px;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .category > .list {
    margin: -5px 0 0 -5px;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .category > .list > li {
    font-size: 1.1rem;
    padding: 5px 0 0 5px;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .prop > .category > .list > li > b {
    padding: 6px 6px 4px;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li > .inner > .summary > .shop > p {
    font-size: 1.3rem;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li:nth-of-type(odd) .inner {
    border-right: 1px solid #ccc;
  }
  .mod-list-searchExample03[data-layout="grid"] > .list > li:last-child > .inner,
  .mod-list-searchExample03[data-layout="grid"] > .list > li:nth-last-child(2):nth-child(odd) > .inner {
    border-bottom: 1px solid #ccc;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .hdg .new {
    font-size: 1rem;
    top: -10px;
    left: -25px;
    width: 42px;
    padding: 2px 0;
  }
  .mod-list-searchExample03[data-layout="list"] > .list > li > .inner > .summary > .hdg .new > span::after {
    bottom: -4px;
    border-width: 0 5px 4px 0;
  }
  .mod-tbl-02:not(.of-scroll) > table {
    display: table;
    border: 0;
  }
  .mod-tbl-02:not(.of-scroll) > table > caption {
    display: table-caption;
  }
  .mod-tbl-02:not(.of-scroll) > table > colgroup {
    display: table-column-group;
  }
  .mod-tbl-02:not(.of-scroll) > table > colgroup > col {
    display: table-column;
  }
  .mod-tbl-02:not(.of-scroll) > table > thead {
    display: table-header-group;
  }
  .mod-tbl-02:not(.of-scroll) > table > tbody {
    display: table-row-group;
  }
  .mod-tbl-02:not(.of-scroll) > table > tfoot {
    display: table-footer-group;
  }
  .mod-tbl-02:not(.of-scroll) > table > * > * {
    display: table-row;
  }
  .mod-tbl-02:not(.of-scroll) > table > * > * > * {
    display: table-cell;
  }
  .mod-tbl-02 > table {
    table-layout: fixed;
  }
  .mod-tbl-02 > table > tbody > tr > td {
    padding-left: 30px;
    border-left-width: 10px;
  }
  .mod-tbl-02 > table > tbody > tr:last-child > th,
  .mod-tbl-02 > table > tbody > tr:last-child > td {
    border-bottom: 1px solid #ccc;
  }
  .mod-tbl-03 > table > colgroup > col:first-child {
    width: 240px;
  }
  .mod-tbl-04 > table > caption {
    font-size: 1.6rem;
    margin-bottom: 1px;
  }
  .mod-tbl-04 > table > tbody > tr:last-child > th,
  .mod-tbl-04 > table > tbody > tr:last-child > td {
    border-bottom: 1px solid #ccc;
  }
  .mod-tbl-05 > table {
    font-size: 1.3rem;
  }
  .mod-tbl-05 > table > caption {
    font-size: 1.8rem;
    margin-bottom: 3px;
    padding-bottom: 3px;
  }
  .mod-tbl-05 > table > tbody > tr > th,
  .mod-tbl-05 > table > tbody > tr > td {
    letter-spacing: 1px;
    padding-bottom: 11px;
  }
  .mod-tbl-05 > table > tbody > tr:last-child > th,
  .mod-tbl-05 > table > tbody > tr:last-child > td {
    padding-bottom: 13px;
    border-bottom-width: 2px;
  }
  .mod-tbl-05 > table > tfoot > tr > th,
  .mod-tbl-05 > table > tfoot > tr > td {
    font-size: 1.4rem;
    padding-top: 12px;
  }
  .mod-box-description[data-col-pc] > .inner > .col.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-box-description[data-col-pc] > .inner > .col.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-box-description[data-col-pc="auto"] > .inner > .col {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-box-description[data-col-pc="2"] > .inner > .col {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-box-description[data-col-pc="3"] > .inner > .col {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-box-description[data-col-pc="4"] > .inner > .col {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-box-description[data-col-pc="5"] > .inner > .col {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-box-description[data-col-pc="6"] > .inner > .col {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-box-description > .inner > .col > .box > .head > .hdg.of-2row-pc::after {
    display: block;
    min-height: 54px;
    content: "";
  }
  .mod-box-contact > .inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: -4px 0 -4px;
  }
  .mod-box-contact > .inner > div {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    max-width: 50%;
    min-height: 50%;
    margin: 0;
    padding: 4px 0 0 4px;
  }
  .mod-box-contact > .inner > div > dd {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  .mod-box-contact > .inner > div + div {
    margin-top: 0;
  }
  .mod-box-shop {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 45px;
  }
  .mod-box-shop > .title {
    font-size: 1.8rem;
    width: 201px;
    margin: 0;
    padding: 1px 0 0 12px;
  }
  .mod-box-shop > .title > .inner::before {
    top: 6px;
    left: -26px;
  }
  .mod-box-shop > .title > .inner::after {
    right: -19px;
  }
  .mod-box-shop > .inner {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    padding: 27px 23px 29px 19px;
  }
  .mod-box-shop > .inner > .name {
    margin-bottom: 11px;
  }
  .mod-box-shop02 {
    padding-top: 41px;
    padding-right: 40px;
    padding-left: 40px;
  }
  .mod-box-shop02 > .title {
    font-size: 2.2rem;
    background: transparent;
    margin-bottom: 28px;
    padding-bottom: 10px;
    border-bottom: 1px dotted #a0c91e;
  }
  .mod-box-shop02 > .title > .inner {
    padding-left: 49px;
  }
  .mod-box-shop02 > .title > .inner::before {
    background-image: url(/reform/shared/img/sprite.png);
    background-position: -108px -232px;
    background-size: auto;
    position: absolute;
    bottom: 3px;
    display: block;
    width: 41px;
    height: 30px;
    content: "";
  }
  .mod-box-showRoom > .hdg {
    margin-bottom: 10px;
  }
  .mod-box-showRoom > .body {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 20px -40px;
  }
  .mod-box-showRoom > .body > * {
    padding: 0 0 0 40px;
  }
  .mod-box-showRoom > .body > .detail {
    width: 100%;
  }
  .mod-box-showRoom > .body > .detail > .nearest {
    margin-bottom: 0;
  }
  .mod-box-showRoom > .body > .map img {
    max-width: none;
  }
  .mod-box-showRoom > .foot > .content > .mod-btn > .btn {
    padding-top: 0;
  }
  .mod-box-showRoom > .foot > .content > .mod-btn > .btn + .btn {
    margin-top: 0;
  }
  .mod-box-reformPoint {
    margin-bottom: 63px;
  }
  .mod-box-reformPoint > .inner {
    padding: 28px 40px 31px;
  }
  .mod-box-reformPoint > .inner > .title {
    font-size: 1.7rem;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-bottom: 22px;
  }
  .mod-box-reformPoint > .inner > .title span {
    margin-left: 37px;
  }
  .mod-box-reformPoint > .inner > .title span::before {
    background-image: url(/reform/shared/img/sprite.png);
    background-position: -292px -64px;
    background-size: auto;
    top: -7px;
    left: -39px;
    width: 30px;
    height: 45px;
  }
  .mod-box-usersVoice {
    margin-top: 90px;
    margin-bottom: 18px;
  }
  .mod-box-usersVoice > .inner {
    letter-spacing: .12px;
    padding: 14px 39px 37px;
  }
  .mod-box-usersVoice > .inner > .title {
    margin-top: -49px;
    margin-bottom: 14px;
  }
  .mod-box-usersVoice > .inner > .title img {
    width: 214px;
    height: 59px;
  }
  .mod-pnl[data-col-pc] > .inner > .col.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-pnl[data-col-pc] > .inner > .col.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-pnl[data-col-pc="auto"] > .inner > .col {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-pnl[data-col-pc="1"] > .inner > .col {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
  }
  .mod-pnl[data-col-pc="2"] > .inner > .col {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-pnl[data-col-pc="3"] > .inner > .col {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-pnl[data-col-pc="4"] > .inner > .col {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-pnl[data-col-pc="5"] > .inner > .col {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-pnl[data-col-pc="6"] > .inner > .col {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-pnl:not(.of-mayHaveMultipleLinks) > .inner > .col > .pnl {
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
  }
  .mod-pnl:not(.of-mayHaveMultipleLinks) > .inner > .col > .pnl:hover {
    opacity: .7;
  }
  .mod-pnl.of-vertical-pc > .inner > .col > .pnl {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .mod-pnl.of-vertical-pc > .inner > .col > .pnl > .summary {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .mod-pnl.of-vertical-pc > .inner > .col > .pnl > .summary > * {
    width: 100%;
  }
  .mod-pnl.of-vertical-pc > .inner > .col > .pnl > .img img {
    width: auto;
    max-width: none;
  }
  .mod-pnl.of-examplePages > .inner > .col > .pnl > .summary {
    padding: 11px 27px 11px 15px;
  }
  .mod-pnl.of-examplePages > .inner > .col > .pnl > .summary > .title {
    font-size: 1.4rem;
  }
  .mod-pnl.of-examplePages > .inner > .col > .pnl > .summary > .title::after {
    right: 11px;
    border-width: 5px 7px;
  }
  .mod-pnl.of-examplePages[data-col-pc="3"] > .inner > .col:nth-child(odd):last-child > .pnl > .summary {
    border-width: 0 0 1px;
  }
  .mod-pnl.of-examplePages[data-col-pc="3"] > .inner > .col:not(:nth-child(3n + 1)) > .pnl > .summary,
  .mod-pnl.of-examplePages[data-col-pc="3"] > .inner > .col:not(:nth-child(3n + 1)):last-child > .pnl > .summary {
    margin-left: -1px;
    border-right-width: 1px;
  }
  .mod-pnl.of-examplePages[data-col-pc="3"] > .inner > .col:nth-child(3n + 1):last-child > .pnl > .summary,
  .mod-pnl.of-examplePages[data-col-pc="3"] > .inner > .col:nth-child(3n + 1) + .col:last-child > .pnl > .summary {
    border-right-width: 1px;
  }
  .mod-pnl-example[data-col-pc] > .inner > .col.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-pnl-example[data-col-pc] > .inner > .col.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-pnl-example[data-col-pc="auto"] > .inner > .col {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-pnl-example[data-col-pc="2"] > .inner > .col {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-pnl-example[data-col-pc="3"] > .inner > .col {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-pnl-example[data-col-pc="4"] > .inner > .col {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-pnl-example[data-col-pc="5"] > .inner > .col {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-pnl-example[data-col-pc="6"] > .inner > .col {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row {
    display: -ms-grid;
    display: grid;
    width: calc(100% + 4px);
    margin: 0 0 0 -4px;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row > .col {
    margin: 4px 0 0 4px;
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row > .col:nth-child(1) {
    -ms-grid-column: 1;
    grid-column: 1;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row > .col:nth-child(2) {
    -ms-grid-column: 2;
    grid-column: 2;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row > .col:nth-child(3) {
    -ms-grid-column: 3;
    grid-column: 3;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row > .col:nth-child(4) {
    -ms-grid-column: 4;
    grid-column: 4;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x1"] {
    -ms-grid-columns: .5fr .5fr;
    grid-template-columns: .5fr .5fr;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x1"] > .col > .pnl > .summary {
    font-size: 1.8rem;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="3:"] {
    -ms-grid-columns: .333333fr .333333fr .333333fr;
    grid-template-columns: .333333fr .333333fr .333333fr;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="4:"] {
    -ms-grid-columns: .25fr .25fr .25fr .25fr;
    grid-template-columns: .25fr .25fr .25fr .25fr;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x4"] {
    -ms-grid-columns: .5fr .25fr .25fr;
    grid-template-columns: .5fr .25fr .25fr;
    -ms-grid-rows: .5fr .5fr;
    grid-template-rows: .5fr .5fr;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x4"] > .col:nth-child(1) {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    grid-row: 1 / -1;
    -ms-grid-row-span: 2;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x4"] > .col:nth-child(1) > .pnl > .summary {
    font-size: 1.8rem;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x4"] > .col:nth-child(2),
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x4"] > .col:nth-child(3) {
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x4"] > .col:nth-child(4),
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x4"] > .col:nth-child(5) {
    -ms-grid-row: 2;
    grid-row: 2;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x4"] > .col:nth-child(2),
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x4"] > .col:nth-child(4) {
    -ms-grid-column: 2;
    grid-column: 2;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x4"] > .col:nth-child(3),
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:1x4"] > .col:nth-child(5) {
    -ms-grid-column: 3;
    grid-column: 3;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:4x1"] {
    -ms-grid-columns: .25fr .25fr .5fr;
    grid-template-columns: .25fr .25fr .5fr;
    -ms-grid-rows: .5fr .5fr;
    grid-template-rows: .5fr .5fr;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:4x1"] > .col:last-child {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 1;
    grid-row: 1 / -1;
    -ms-grid-row-span: 2;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:4x1"] > .col:last-child > .pnl > .summary {
    font-size: 1.8rem;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:4x1"] > .col:nth-child(1),
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:4x1"] > .col:nth-child(2) {
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:4x1"] > .col:nth-child(3),
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:4x1"] > .col:nth-child(4) {
    -ms-grid-row: 2;
    grid-row: 2;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:4x1"] > .col:nth-child(1),
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:4x1"] > .col:nth-child(3) {
    -ms-grid-column: 1;
    grid-column: 1;
  }
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:4x1"] > .col:nth-child(2),
  .mod-pnl-example:not(.js-pnl-lyt):not([data-col]) > .inner > .row[data-layout-pc^="2:4x1"] > .col:nth-child(4) {
    -ms-grid-column: 2;
    grid-column: 2;
  }
  .mod-pnl-example.js-pnl-lyt > .inner .col {
    max-width: 50%;
  }
  .mod-pnl-example[data-col-pc] > .inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    width: auto;
    margin: -4px 0 0 -4px;
  }
  .mod-pnl-example[data-col-pc] > .inner > .col {
    margin-bottom: 0;
    padding: 4px 0 0 4px;
  }
  .mod-lyt[data-col-pc] > .inner > .col.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-lyt[data-col-pc] > .inner > .col.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-lyt[data-col-pc="auto"] > .inner > .col {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-lyt[data-col-pc="2"] > .inner > .col {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-lyt[data-col-pc="3"] > .inner > .col {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-lyt[data-col-pc="4"] > .inner > .col {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-lyt[data-col-pc="5"] > .inner > .col {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-lyt[data-col-pc="6"] > .inner > .col {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-lyt.var-02[data-col-pc] > .inner > .col::before {
    display: none;
  }
  .mod-lyt.var-02[data-col-pc="2"] > .inner > .col:not(:nth-child(2n+1))::before {
    display: block;
  }
  .mod-lyt.var-02[data-col-pc="3"] > .inner > .col:not(:nth-child(3n+1))::before {
    display: block;
  }
  .mod-lyt.var-02[data-col-pc="4"] > .inner > .col:not(:nth-child(4n+1))::before {
    display: block;
  }
  .mod-lyt.var-02[data-col-pc="4"] > .inner > .col:not(:nth-child(4n+1))::before {
    display: block;
  }
  .mod-lyt.var-02[data-col-pc="5"] > .inner > .col:not(:nth-child(5n+1))::before {
    display: block;
  }
  .mod-lyt.var-02[data-col-pc="6"] > .inner > .col:not(:nth-child(6n+1))::before {
    display: block;
  }
  .mod-lyt-exampleDetail {
    margin-bottom: 46px;
  }
  .mod-lyt-exampleDetail > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .mod-lyt-exampleDetail > .inner > .content {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: 44%;
        -ms-flex-preferred-size: 44%;
            flex-basis: 44%;
    max-width: 420px;
    padding: 0 0 0 32px;
  }
  .mod-lyt-exampleDetail > .inner > .media {
    overflow: hidden;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: 56%;
        -ms-flex-preferred-size: 56%;
            flex-basis: 56%;
    max-width: 540px;
    margin: 7px 0 0;
  }
  .mod-lyt-exampleDetail > .inner > .media > .wrap {
    position: relative;
    width: 100%;
    height: auto;
    padding: 75% 0 0;
  }
  .mod-lyt-exampleDetail > .inner > .media > .wrap > span {
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
  }
  .mod-lyt-exampleDetail > .inner > .media > .wrap > span img {
    position: absolute;
    top: 0;
    left: 50%;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
  .mod-lyt-exampleDetail.var-02 > .inner > .content {
    -webkit-flex-basis: 51.05%;
        -ms-flex-preferred-size: 51.05%;
            flex-basis: 51.05%;
    max-width: 490px;
  }
  .mod-lyt-exampleDetail.var-02 > .inner > .media {
    -webkit-flex-basis: 48.95%;
        -ms-flex-preferred-size: 48.95%;
            flex-basis: 48.95%;
    max-width: 470px;
  }
  .mod-lyt-exampleDetail.var-02 > .inner > .media > .wrap {
    margin: 0;
    padding-top: calc(100% - 2px);
  }
  .mod-lyt-exampleDetail.var-02 > .inner > .media > .wrap > span {
    height: auto;
  }
  .mod-lyt-exampleDetail.var-02 > .inner > .media > .wrap > span img {
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .mod-lyt-reformFlowGrid > .inner > .row {
    position: relative;
    display: -ms-grid;
    display: grid;
    width: calc(100% + 4px);
    -webkit-transform: translate(-4px, -4px);
        -ms-transform: translate(-4px, -4px);
            transform: translate(-4px, -4px);
    -ms-grid-columns: 25% 25% 25% 25%;
    grid-template-columns: 25% 25% 25% 25%;
    -ms-grid-rows: auto auto auto auto auto;
    grid-template-rows: auto auto auto auto auto;
  }
  .mod-lyt-reformFlowGrid > .inner > .row > div {
    margin: 4px 0 0 4px !important;
  }
  .mod-lyt-reformFlowGrid > .inner > .row > .day {
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .mod-lyt-reformFlowGrid > .inner > .row > .summary {
    -ms-grid-row: 2;
    grid-row: 2;
  }
  .mod-lyt-reformFlowGrid > .inner > .row > .media {
    -ms-grid-row: 3;
    grid-row: 3;
  }
  .mod-lyt-reformFlowGrid > .inner > .row > .detail {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -ms-grid-row: 4;
    grid-row: 4;
  }
  .mod-lyt-reformFlowGrid > .inner > .row > .detail > .col {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
  .mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .state {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  .mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data {
    max-width: 197px;
  }
  .mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > .content {
    padding: 20px 0 0;
  }
  .mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > .content > *:first-child {
    margin-top: 0;
  }
  .mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > .data > .content > *:last-child {
    margin-bottom: 0;
  }
  .mod-lyt-reformFlowGrid > .inner > .row > .detail > .col > *.js-adjust-height-item {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
  .mod-lyt-reformFlowGrid > .inner > .row + .row {
    margin-top: 80px;
  }
  .mod-form-checkbox[data-col-pc] > .list > li.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-form-checkbox[data-col-pc] > .list > li.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-form-checkbox[data-col-pc="auto"] > .list > li {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-form-checkbox[data-col-pc="2"] > .list > li {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-form-checkbox[data-col-pc="3"] > .list > li {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-form-checkbox[data-col-pc="4"] > .list > li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-form-checkbox[data-col-pc="5"] > .list > li {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-form-checkbox[data-col-pc="6"] > .list > li {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-form-checkbox[data-col-pc] > .list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: -8px 0 0 -38px;
  }
  .mod-form-checkbox[data-col-pc] > .list > li {
    padding: 8px 0 0 38px;
  }
  .mod-form-radio[data-col-pc] > .list > li.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-form-radio[data-col-pc] > .list > li.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-form-radio[data-col-pc="auto"] > .list > li {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-form-radio[data-col-pc="2"] > .list > li {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-form-radio[data-col-pc="3"] > .list > li {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-form-radio[data-col-pc="4"] > .list > li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-form-radio[data-col-pc="5"] > .list > li {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-form-radio[data-col-pc="6"] > .list > li {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-form-radio[data-col-pc] > .list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: -8px 0 0 -38px;
  }
  .mod-form-radio[data-col-pc] > .list > li {
    padding: 8px 0 0 38px;
  }
  .mod-form-choiceImage[data-col-pc] > .list > li.of-full {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    width: 100%;
    max-width: 100%;
  }
  .mod-form-choiceImage[data-col-pc] > .list > li.of-fillIn {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    max-width: none;
  }
  .mod-form-choiceImage[data-col-pc="auto"] > .list > li {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    width: auto;
    min-width: 0;
    max-width: none;
  }
  .mod-form-choiceImage[data-col-pc="2"] > .list > li {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    width: 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .mod-form-choiceImage[data-col-pc="3"] > .list > li {
    -webkit-flex-basis: 33.33333%;
        -ms-flex-preferred-size: 33.33333%;
            flex-basis: 33.33333%;
    width: 33.33333%;
    min-width: 33.33333%;
    max-width: 33.33333%;
  }
  .mod-form-choiceImage[data-col-pc="4"] > .list > li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    width: 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .mod-form-choiceImage[data-col-pc="5"] > .list > li {
    -webkit-flex-basis: 20%;
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
    width: 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .mod-form-choiceImage[data-col-pc="6"] > .list > li {
    -webkit-flex-basis: 16.66667%;
        -ms-flex-preferred-size: 16.66667%;
            flex-basis: 16.66667%;
    width: 16.66667%;
    min-width: 16.66667%;
    max-width: 16.66667%;
  }
  .mod-form-choiceImage[data-col="auto"] > .list {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .mod-form-choiceImage[data-col-pc="auto"] > .list {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .mod-form-fieldset > .inner > .group > .label {
    float: left;
    width: 16.6%;
    margin-bottom: 0;
    padding-left: 0;
  }
  .mod-form-fieldset > .inner > .group > .content {
    float: right;
    width: 83.4%;
    padding: 0 0 0 21px;
  }
  .mod-form-fieldset.var-03 > .inner > .group > .label {
    width: 113px;
    padding: 0 10px 0 0;
  }
  .mod-form-fieldset.var-03 > .inner > .group > .label > .required {
    position: relative;
    top: -1px;
  }
  .mod-form-fieldset.var-03 > .inner > .group > .label + .content {
    width: calc(100% - 113px);
    padding-left: 0;
  }
  .mod-form-searchControl > .inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .mod-form-searchControl > .inner > .current > p {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .mod-form-searchControl > .inner > .pager {
    margin: 0 0 20px;
  }
  .mod-form-searchControl > .inner > .pager + .layout {
    margin-top: -20px;
  }
  .mod-form-searchControl > .inner > .pager:not(:first-child) {
    -webkit-flex-basis: 453px;
        -ms-flex-preferred-size: 453px;
            flex-basis: 453px;
    max-width: 453px;
  }
  .mod-form-searchControl > .inner > .pager > .list {
    font-size: 1.8rem;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .mod-form-searchControl > .inner > .pager a[href] {
    -webkit-transition: .2s background ease-out;
    -o-transition: .2s background ease-out;
    transition: .2s background ease-out;
  }
  .mod-form-searchControl > .inner > .pager a[href]:hover {
    background: #f7f7f7;
  }
  .mod-form-searchControl > .inner > .layout {
    background: transparent;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin: 0;
    padding-top: 12px;
    padding-right: 0;
    padding-bottom: 14px;
    border-top: 0;
  }
  .mod-form-searchControl > .inner > .layout > .list {
    font-size: 1.3rem;
  }
  .mod-form-searchControl > .inner > .layout > .list > div {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .mod-form-searchControl > .inner > .layout > .list > div > dt {
    margin-right: 12px;
    margin-bottom: 0;
  }
  .mod-form-searchControl > .inner > .layout > .list > .sort a {
    padding: 3px 11px 3px 10px;
  }
  .mod-form-searchControl > .inner > .layout .adjust a[href] {
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
  }
  .mod-form-searchControl > .inner > .layout .adjust a[href]:hover {
    opacity: .7;
  }
  .mod-media-lyt > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .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 > .media {
    width: auto;
  }
  .mod-media-lyt.of-reverse > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .mod-media-lyt.of-reverse-pc > .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .mod-media-lyt.of-reverse-pc > .inner > .media > .mod-media {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .mod-media-lyt.align-middle > .inner {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .mod-media-lyt.align-bottom > .inner {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .mod-media-lyt .mod-media > .inner img {
    max-width: none;
  }
  .mod-media-beforeAfter:not(.of-noBreak) > .inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 0 0 -64px;
  }
  .mod-media-beforeAfter:not(.of-noBreak) > .inner > * {
    margin: 0;
    padding: 0 0 0 64px;
  }
  .mod-media-beforeAfter:not(.of-noBreak) > .inner > .before {
    width: 100%;
    max-width: 439px;
  }
  .mod-media-beforeAfter:not(.of-noBreak) > .inner > .after {
    width: 100%;
    max-width: 579px;
  }
  .mod-media-beforeAfter:not(.of-noBreak) > .inner > .after > .media::before {
    top: 0;
    right: 100%;
    bottom: 0;
    left: auto;
    margin: auto 1px auto 0;
    border: solid transparent;
    border-width: 14px 18px;
    border-left-color: #505050;
  }
  .mod-media-beforeAfter:not(.of-noBreak)[data-layout-pc="1:1"] > .inner > .before,
  .mod-media-beforeAfter:not(.of-noBreak)[data-layout-pc="1:1"] > .inner > .after {
    max-width: 50%;
  }
  .mod-media-beforeAfter:not(.of-noBreak)[data-layout-pc="1:2"] > .inner > .before {
    max-width: 33.3333%;
  }
  .mod-media-beforeAfter:not(.of-noBreak)[data-layout-pc="1:2"] > .inner > .after {
    max-width: 66.6666%;
  }
  .mod-media-beforeAfter.of-box {
    margin-top: 31px;
  }
  .mod-media-beforeAfter + .mod-media-beforeAfter.of-box {
    margin-top: -2px;
  }
  .mod-other-detailUtility {
    margin-bottom: 15px;
  }
  .mod-other-detailUtility > .inner > .label {
    font-size: 1.3rem;
    margin-top: 8px;
  }
  .mod-other-detailUtility > .inner > .label > p::before {
    top: -2px;
    left: 8px;
  }
  .mod-other-detailUtility > .inner > .label > p > b {
    padding: 2px 14px 1px 41px;
  }
  .mod-other-detailUtility > .inner > .btn > [class$="list"] {
    margin-left: -5px;
  }
  .mod-other-detailUtility > .inner > .btn > [class$="list"] > li {
    font-size: 1.2rem;
    letter-spacing: .5px;
    margin: 0 8px 0 0;
    padding-left: 5px;
  }
  .mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-favoriteBtn .func-btn,
  .mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-printBtn .func-btn {
    font-size: 1.2rem;
    min-width: 129px;
    padding: 6px 9px 5px 34px;
  }
  .mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-favoriteBtn .func-btn {
    padding-right: 12px;
  }
  .mod-other-detailUtility > .inner > .btn > [class$="list"] .js-require-printBtn .func-btn::before {
    background-image: url(/reform/shared/img/sprite.png);
    background-position: -100.5px -116px;
    background-size: 180px 153px;
    left: 10px;
    width: 15px;
    height: 15px;
  }
  .mod-other-detailUtility > .inner > .btn > [class$="list"] a,
  .mod-other-detailUtility > .inner > .btn > [class$="list"] button {
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
  }
  .mod-other-detailUtility > .inner > .btn > [class$="list"] a:hover,
  .mod-other-detailUtility > .inner > .btn > [class$="list"] a:focus,
  .mod-other-detailUtility > .inner > .btn > [class$="list"] button:hover,
  .mod-other-detailUtility > .inner > .btn > [class$="list"] button:focus {
    opacity: .7;
  }
  html[data-script-enabled="true"] .js-tgl > .tgl-hook {
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
  }
  html[data-script-enabled="true"] .js-tgl > .tgl-hook:hover {
    opacity: .7;
  }
  .mod-tgl-faq.js-tgl > .tgl-hook:hover {
    background: #f7f7f7;
  }
  .mod-accordion-faq.js-accordion > .list > div > dt:hover {
    background: #f7f7f7;
  }
  html[data-script-enabled="true"] .func-modal > .modal-wrapper > .modal-inner {
    min-width: 500px;
  }
  html[data-script-enabled="true"] .func-modal > .modal-wrapper > .modal-inner .mod-modal-content {
    padding: 50px;
  }
  .mod-tgl-searchSetting > .tgl-hook {
    font-size: 1.9rem;
  }
  .mod-tgl-searchSetting > .tgl-panel > .inner {
    padding-right: 30px;
    padding-left: 30px;
  }
  .mod-tgl-searchSetting.var-02 > .tgl-hook > span {
    padding: 13px 60px 10px 75px;
  }
  .mod-tgl-searchSetting.var-02 > .tgl-hook > span::before {
    left: 12px;
    width: 48px;
    height: 44px;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-select > .inner {
    max-width: 251px;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-select > .inner > select {
    font-size: 1.4rem;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-fieldset > .inner {
    padding: 22px 0 20px;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-fieldset > .inner > .group > .label {
    font-size: 1.4rem;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-fieldset > .inner > .group > .label > .required {
    font-size: 1.4rem;
    top: 0;
    padding: 5px 9px;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-fieldset.var-02 {
    text-align: center;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-fieldset.var-02 > .inner {
    position: relative;
    display: inline-block;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-fieldset.var-02 > .inner > .current {
    font-size: 2rem;
    position: absolute;
    top: 50%;
    left: -95px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .mod-tgl-searchSetting.var-02 .mod-form-fieldset.var-02 > .inner > .current .label,
  .mod-tgl-searchSetting.var-02 .mod-form-fieldset.var-02 > .inner > .current .unit {
    font-size: 1.4rem;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-fieldset.var-02 > .inner .mod-btn {
    margin: 0 0 0 24px;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-checkbox label,
  .mod-tgl-searchSetting.var-02 .mod-form-radio label {
    font-size: 1.4rem;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-txt > input {
    padding: 10px 14px 9px;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-txt > input::-webkit-input-placeholder {
    font-size: 1.4rem;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-txt > input::-ms-input-placeholder {
    font-size: 1.4rem;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-txt > input::-moz-placeholder {
    font-size: 1.4rem;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-txt > input:-ms-input-placeholder {
    font-size: 1.4rem;
  }
  .mod-tgl-searchSetting.var-02 .mod-form-txt > input::placeholder {
    font-size: 1.4rem;
  }
  .mod-graph.js-graph {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph {
    margin-top: -50px;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph > table {
    display: none;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-scale {
    font-size: 14px;
    text-align: right;
    position: relative;
    top: 38px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    height: 324px;
    margin: 0;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-scale div {
    padding: 0 12px 0 11px;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-scale div:not(:first-child)::before {
    background: #ccc;
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: 0;
    left: 100%;
    display: block;
    width: 100vw;
    height: 1px;
    margin: auto 0;
    content: "";
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table {
    display: block;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table > div {
    overflow: hidden;
    padding-top: 50px;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table {
    table-layout: fixed;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table thead {
    position: static;
    display: table-footer-group;
    width: auto;
    height: auto;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table thead th {
    text-align: center;
    word-break: break-all;
    padding: 11px 10px 0;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td {
    text-align: center;
    vertical-align: bottom;
    height: 300px;
    padding: 0;
    border: 0;
    border-bottom: 1px solid #999;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td:first-child {
    border-left: 1px solid #999;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100%;
    margin: 0 20px;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span > span:first-child {
    height: 23px;
    margin: 0 0 5px;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check {
    position: relative;
    width: 50px !important;
    min-height: auto;
    max-height: none;
    margin: 0;
    -webkit-transition: .5s height ease-out, .2s background ease-out;
    -o-transition: .5s height ease-out, .2s background ease-out;
    transition: .5s height ease-out, .2s background ease-out;
    outline: 0;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check::before,
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check::after {
    position: absolute;
    z-index: 1;
    right: 0;
    bottom: 100%;
    left: 0;
    display: block;
    width: 0;
    content: "";
    border: solid transparent;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check::before {
    z-index: 3;
    margin: 0 auto 34px;
    border-width: 3px 5px 0 5px;
    border-top-color: #fff;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check::after {
    z-index: 2;
    margin: 0 auto 33px;
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
    border-width: 4px 6px 0 6px;
    border-top-color: #000;
    opacity: 0;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check span {
    font-weight: bold;
    text-align: center;
    pointer-events: none;
    color: #414141;
    background: #fff;
    z-index: 1;
    bottom: 100%;
    left: 50%;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 110px;
    height: 40px;
    margin: 0 0 36px;
    padding: 0 20px;
    -webkit-transition: .2s opacity ease-out;
    -o-transition: .2s opacity ease-out;
    transition: .2s opacity ease-out;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    border: 1px solid #414141;
    border-radius: 4px;
    opacity: 0;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check span::after {
    position: relative;
    top: 0;
    display: inline-block;
    min-width: 10px;
    height: 10px;
    margin: 0 0 0 3px;
    content: "";
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    border: 2px solid #30b653;
    border-width: 2px 2px 0 0;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check:hover,
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check:focus {
    background: #30b552;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check:hover::after,
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check:focus::after {
    opacity: 1;
  }
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check:hover span,
  html[data-script-enabled="true"] .mod-graph.js-graph .func-table table tbody td > span .check:focus span {
    pointer-events: auto;
    opacity: 1;
  }
  .mt-0-pc {
    margin-top: 0 !important;
  }
  .mt-2-pc {
    margin-top: 2px !important;
  }
  .mt-4-pc {
    margin-top: 4px !important;
  }
  .mt-6-pc {
    margin-top: 6px !important;
  }
  .mt-8-pc {
    margin-top: 8px !important;
  }
  .mt-10-pc {
    margin-top: 10px !important;
  }
  .mt-12-pc {
    margin-top: 12px !important;
  }
  .mt-14-pc {
    margin-top: 14px !important;
  }
  .mt-16-pc {
    margin-top: 16px !important;
  }
  .mt-18-pc {
    margin-top: 18px !important;
  }
  .mt-20-pc {
    margin-top: 20px !important;
  }
  .mt-22-pc {
    margin-top: 22px !important;
  }
  .mt-24-pc {
    margin-top: 24px !important;
  }
  .mt-26-pc {
    margin-top: 26px !important;
  }
  .mt-28-pc {
    margin-top: 28px !important;
  }
  .mt-30-pc {
    margin-top: 30px !important;
  }
  .mt-32-pc {
    margin-top: 32px !important;
  }
  .mt-34-pc {
    margin-top: 34px !important;
  }
  .mt-36-pc {
    margin-top: 36px !important;
  }
  .mt-38-pc {
    margin-top: 38px !important;
  }
  .mt-40-pc {
    margin-top: 40px !important;
  }
  .mt-42-pc {
    margin-top: 42px !important;
  }
  .mt-44-pc {
    margin-top: 44px !important;
  }
  .mt-46-pc {
    margin-top: 46px !important;
  }
  .mt-48-pc {
    margin-top: 48px !important;
  }
  .mt-50-pc {
    margin-top: 50px !important;
  }
  .mt-52-pc {
    margin-top: 52px !important;
  }
  .mt-54-pc {
    margin-top: 54px !important;
  }
  .mt-56-pc {
    margin-top: 56px !important;
  }
  .mt-58-pc {
    margin-top: 58px !important;
  }
  .mt-60-pc {
    margin-top: 60px !important;
  }
  .mt-62-pc {
    margin-top: 62px !important;
  }
  .mt-64-pc {
    margin-top: 64px !important;
  }
  .mt-66-pc {
    margin-top: 66px !important;
  }
  .mt-68-pc {
    margin-top: 68px !important;
  }
  .mt-70-pc {
    margin-top: 70px !important;
  }
  .mt-72-pc {
    margin-top: 72px !important;
  }
  .mt-74-pc {
    margin-top: 74px !important;
  }
  .mt-76-pc {
    margin-top: 76px !important;
  }
  .mt-78-pc {
    margin-top: 78px !important;
  }
  .mt-80-pc {
    margin-top: 80px !important;
  }
  .mt-82-pc {
    margin-top: 82px !important;
  }
  .mt-84-pc {
    margin-top: 84px !important;
  }
  .mt-86-pc {
    margin-top: 86px !important;
  }
  .mt-88-pc {
    margin-top: 88px !important;
  }
  .mt-90-pc {
    margin-top: 90px !important;
  }
  .mt-92-pc {
    margin-top: 92px !important;
  }
  .mt-94-pc {
    margin-top: 94px !important;
  }
  .mt-96-pc {
    margin-top: 96px !important;
  }
  .mt-98-pc {
    margin-top: 98px !important;
  }
  .mt-100-pc {
    margin-top: 100px !important;
  }
  .pt-0-pc {
    padding-top: 0 !important;
  }
  .pt-2-pc {
    padding-top: 2px !important;
  }
  .pt-4-pc {
    padding-top: 4px !important;
  }
  .pt-6-pc {
    padding-top: 6px !important;
  }
  .pt-8-pc {
    padding-top: 8px !important;
  }
  .pt-10-pc {
    padding-top: 10px !important;
  }
  .pt-12-pc {
    padding-top: 12px !important;
  }
  .pt-14-pc {
    padding-top: 14px !important;
  }
  .pt-16-pc {
    padding-top: 16px !important;
  }
  .pt-18-pc {
    padding-top: 18px !important;
  }
  .pt-20-pc {
    padding-top: 20px !important;
  }
  .pt-22-pc {
    padding-top: 22px !important;
  }
  .pt-24-pc {
    padding-top: 24px !important;
  }
  .pt-26-pc {
    padding-top: 26px !important;
  }
  .pt-28-pc {
    padding-top: 28px !important;
  }
  .pt-30-pc {
    padding-top: 30px !important;
  }
  .pt-32-pc {
    padding-top: 32px !important;
  }
  .pt-34-pc {
    padding-top: 34px !important;
  }
  .pt-36-pc {
    padding-top: 36px !important;
  }
  .pt-38-pc {
    padding-top: 38px !important;
  }
  .pt-40-pc {
    padding-top: 40px !important;
  }
  .pt-42-pc {
    padding-top: 42px !important;
  }
  .pt-44-pc {
    padding-top: 44px !important;
  }
  .pt-46-pc {
    padding-top: 46px !important;
  }
  .pt-48-pc {
    padding-top: 48px !important;
  }
  .pt-50-pc {
    padding-top: 50px !important;
  }
  .pt-52-pc {
    padding-top: 52px !important;
  }
  .pt-54-pc {
    padding-top: 54px !important;
  }
  .pt-56-pc {
    padding-top: 56px !important;
  }
  .pt-58-pc {
    padding-top: 58px !important;
  }
  .pt-60-pc {
    padding-top: 60px !important;
  }
  .pt-62-pc {
    padding-top: 62px !important;
  }
  .pt-64-pc {
    padding-top: 64px !important;
  }
  .pt-66-pc {
    padding-top: 66px !important;
  }
  .pt-68-pc {
    padding-top: 68px !important;
  }
  .pt-70-pc {
    padding-top: 70px !important;
  }
  .pt-72-pc {
    padding-top: 72px !important;
  }
  .pt-74-pc {
    padding-top: 74px !important;
  }
  .pt-76-pc {
    padding-top: 76px !important;
  }
  .pt-78-pc {
    padding-top: 78px !important;
  }
  .pt-80-pc {
    padding-top: 80px !important;
  }
  .pt-82-pc {
    padding-top: 82px !important;
  }
  .pt-84-pc {
    padding-top: 84px !important;
  }
  .pt-86-pc {
    padding-top: 86px !important;
  }
  .pt-88-pc {
    padding-top: 88px !important;
  }
  .pt-90-pc {
    padding-top: 90px !important;
  }
  .pt-92-pc {
    padding-top: 92px !important;
  }
  .pt-94-pc {
    padding-top: 94px !important;
  }
  .pt-96-pc {
    padding-top: 96px !important;
  }
  .pt-98-pc {
    padding-top: 98px !important;
  }
  .pt-100-pc {
    padding-top: 100px !important;
  }
  .pb-0-pc {
    padding-bottom: 0 !important;
  }
  .pc-hide {
    display: none !important;
  }
  .comp-box-contact > .inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding-right: 39px;
    padding-left: 39px;
  }
  .comp-box-contact > .inner > * {
    margin: 0;
  }
  .comp-box-contact > .inner > *:not(:last-child) {
    padding-right: 41px;
  }
  .comp-box-contact > .inner > *:not(:first-child) {
    padding-left: 41px;
  }
  .comp-box-contact > .inner > *:not(:first-child)::before {
    background: #ccc;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    display: block;
    width: 1px;
    height: 100%;
    margin: auto 0;
    content: "";
  }
  .comp-box-contact > .inner > * > .lyt {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .comp-box-contact > .inner > * > .lyt > .lede {
    margin-bottom: 0;
  }
  .comp-box-contact > .inner > .form {
    -webkit-flex-basis: 56%;
        -ms-flex-preferred-size: 56%;
            flex-basis: 56%;
    min-width: 56%;
    max-width: 56%;
  }
  .comp-box-contact > .inner > .form > .lyt > .lede {
    padding-right: 20px;
  }
  .comp-box-contact > .inner > .form .mod-link {
    padding-left: 100px;
  }
  .comp-box-contact > .inner > .tel {
    -webkit-flex-basis: 44%;
        -ms-flex-preferred-size: 44%;
            flex-basis: 44%;
    min-width: 44%;
    max-width: 44%;
  }
  .comp-box-contact > .inner > .tel .number {
    text-align: right;
  }
  .comp-form-singleTextFieldWithSubmit > .inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .comp-form-singleTextFieldWithSubmit .mod-btn {
    width: 140px;
  }
  .comp-form-search > .inner > .scale-or-part {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 30px 0 19px;
  }
  .comp-form-search > .inner > .scale-or-part > .room,
  .comp-form-search > .inner > .scale-or-part > .home {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
  }
  .comp-form-search > .inner > .scale-or-part > .room > .logo,
  .comp-form-search > .inner > .scale-or-part > .home > .logo {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    min-width: 200px;
    max-width: 200px;
  }
  .comp-form-search > .inner > .scale-or-part > .room > .logo img,
  .comp-form-search > .inner > .scale-or-part > .home > .logo img {
    min-width: 100px;
  }
  .comp-form-search > .inner > .scale-or-part > .room > .content,
  .comp-form-search > .inner > .scale-or-part > .home > .content {
    max-width: calc(100% - 200px);
    padding: 0 33px 0 0;
  }
  .comp-form-search > .inner > .scale-or-part > .room {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  .comp-form-search > .inner > .scale-or-part > .home {
    -webkit-flex-basis: 62%;
        -ms-flex-preferred-size: 62%;
            flex-basis: 62%;
    max-width: 62%;
    margin-top: 0;
    border-top: 0;
    border-left: 1px solid #ccc;
  }
  .comp-form-search > .inner > .submit {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 30px 0;
  }
  .comp-form-search > .inner > .submit > .result,
  .comp-form-search > .inner > .submit > .mod-btn,
  .comp-form-search > .inner > .submit::after {
    -webkit-flex-basis: 33.3333%;
        -ms-flex-preferred-size: 33.3333%;
            flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .comp-form-shopSearchControl > .pager {
    float: right;
  }
  .comp-form-shopSearchControl > .contact {
    float: left;
  }
  .comp-form-filterControl > .inner > .hdg {
    margin-bottom: 40px;
  }
  .comp-form-filterControl > .inner > .form > .row > legend {
    text-align: center;
    position: absolute;
    top: 50%;
    left: 0;
    float: left;
    width: 140px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .comp-form-filterControl > .inner > .form > .row > .content {
    margin: 0 0 0 150px;
    padding: 15px 20px;
    border: 0;
    border-top: 1px solid #ccc;
  }
  .comp-form-filterControl > .inner > .form > .row > .content::before,
  .comp-form-filterControl > .inner > .form > .row > .content::after {
    background: #ccc;
    position: absolute;
    left: 0;
    display: block;
    width: 140px;
    height: 1px;
  }
  .comp-form-filterControl > .inner > .form > .row > .content::before {
    top: 0;
    content: "";
  }
  .comp-form-filterControl > .inner > .form > .row:last-child > .content {
    border-bottom: 1px solid #ccc;
  }
  .comp-form-filterControl > .inner > .form > .row:last-child > .content::after {
    bottom: 0;
    content: "";
  }
  .comp-form-choiceShop > .inner > .item {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 60px 1fr;
    grid-template-columns: 60px 1fr;
    -ms-grid-rows: auto auto auto;
    grid-template-rows: auto auto auto;
  }
  .comp-form-choiceShop > .inner > .item > .head,
  .comp-form-choiceShop > .inner > .item > .body,
  .comp-form-choiceShop > .inner > .item > .foot {
    -ms-grid-column: 2;
    grid-column: 2;
  }
  .comp-form-choiceShop > .inner > .item > .head {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .comp-form-choiceShop > .inner > .item > .head .address {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    margin-bottom: 0;
  }
  .comp-form-choiceShop > .inner > .item > .head .tel {
    text-align: right;
    white-space: nowrap;
  }
  .comp-form-choiceShop > .inner > .item > .checkbox {
    background: #e3eecc;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    grid-row: 1 / -1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 4;
    -ms-grid-column: 1;
    grid-column: 1;
  }
  .comp-form-choiceShop > .inner > .item > .checkbox label {
    text-align: center;
    width: 100%;
    padding: 30px 0 0;
  }
  .comp-form-choiceShop > .inner > .item > .checkbox label span {
    -ms-writing-mode: tb-rl;
    white-space: nowrap;
    display: inline-block;
    padding: 30px 0 0;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
  }
  .comp-form-choiceShop > .inner > .item > .checkbox label span::before,
  .comp-form-choiceShop > .inner > .item > .checkbox label span::after {
    right: 0;
    left: 0;
    margin: 0 auto;
  }
  .comp-form-choiceShop > .inner > .item > .checkbox label span::before {
    top: 0;
  }
  html[data-browser-trident="true"] .comp-form-choiceShop > .inner > .item > .checkbox label span::before {
    left: 2px;
  }
  .comp-form-choiceShop > .inner > .item > .checkbox label span::after {
    top: 2px;
  }
  html[data-browser-trident="true"] .comp-form-choiceShop > .inner > .item > .checkbox label span::after {
    top: 0;
    left: 8px;
  }
  .comp-form-choiceShop > .inner > .item > .body {
    -ms-grid-row: 2;
    grid-row: 2;
  }
  .comp-form-choiceShop > .inner > .item > .body > .description {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .comp-form-choiceShop > .inner > .item > .body > .description > .img {
    -webkit-flex-basis: 240px;
        -ms-flex-preferred-size: 240px;
            flex-basis: 240px;
    min-width: 240px;
    max-width: 240px;
    margin-bottom: 0;
    padding: 2px 0 0;
  }
  .comp-form-choiceShop > .inner > .item > .body > .description > .summary {
    width: calc(100% - 240px);
    padding: 0 0 0 30px;
  }
  .comp-form-choiceShop > .inner > .item > .body > .description > .summary > .feature li {
    -webkit-flex-basis: 25%;
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
    max-width: 25%;
  }
  .comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support > div {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support > div > dt {
    white-space: nowrap;
    border-right: 1px solid #ccc;
  }
  .comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support > div > dd {
    width: 100%;
  }
  .comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support > div > dd .list > li {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  .comp-form-choiceShop > .inner > .item > .body > .description > .summary > .support > div > dd .list > li:only-child {
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
  .comp-form-choiceShop > .inner > .item > .foot {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: -10px 0 0 -4px;
    -ms-grid-row: 3;
    grid-row: 3;
  }
  .comp-form-choiceShop > .inner > .item > .foot > * {
    padding: 10px 0 0 4px;
  }
  .comp-form-choiceShop > .inner > .item > .foot > .utility {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-top: -4px;
  }
  .comp-form-choiceShop > .inner > .item > .foot > .utility > .btn {
    padding-top: 4px;
  }
  .comp-form-choiceShop .mod-tbl-02 {
    margin-top: 18px;
  }
  .comp-form-choiceShop .mod-tbl-02 > table > tbody > tr > td {
    padding-right: 5px;
    padding-left: 5px;
    border-left-color: #f0f1f2;
  }
  .comp-lyt-compareBtn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .comp-lyt-compareBtn > .col:first-child {
    width: calc(100% - 420px);
  }
}

@media screen and (min-width: 940px), print {
  .mod-list-step.var-02:not([data-col-pc]) li {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
    max-width: none;
  }
}

@media screen and (min-width: 1200px), print {
  .str-mainvisual::after {
    min-height: 150px;
  }
}

@media screen and (max-width: 769px) {
  .sp-hide {
    display: none !important;
  }
}

@media print {
  .comp-form-choiceShop > .inner > .item > .checkbox {
    display: block;
  }
  .comp-form-choiceShop > .inner > .item > .checkbox input {
    display: none;
  }
  body > header,
  body > footer,
  [class^="nav-"],
  [class^="site-header"],
  [class^="site-footer"],
  #f-btn,
  #sns {
    position: static !important;
    display: none !important;
  }
  .js-adjust-height-item {
    height: auto !important;
  }
}
