@charset "UTF-8";
/* stylelint-disable no-duplicate-selectors */
/* ==========================================================================
   Custom-property color
   ========================================================================== */
:root {
  /* basic color */
  --color-primary-mid: #009644;
  --color-black: #000;
  --color-gray: #555;
  --color-white: #fff;
  --color-alert: #f60;
  --color-warning: #f00;
  --color-accent: #039eec;
  --color-link: #039eec;
  --color-medical: #739aff;
  --color-care-medical: #f9a11e;
  --color-childcare: #ff8095;
  --color-senior-housing: #4bc2ba;
  --color-handicap-person: #6fc600;
  --color-youtube: #da1725;
  --color-facebook: #3b5998;
  --color-important: #ff6b6f;
  --color-disable: #999;
  --color-neutral-darken: #333;
  --color-neutral-darker: #444;
  --color-neutral-mid: #777;
  --color-neutral-lighter: #999;
  --color-neutral-lightest: #e4e4e4;
  --color-category-orange: #fbc356;
  --color-category-pink: #f99;
  --color-category-turquoise: #46d0c8;
  --color-category-blue: #738ac7;
  --color-category-green: #55ac00;
  --color-table-circle: #e79090;
  --color-table-triangle: #ffb547;
  --color-bg-container: #fafaf2;
  --color-txt-weak: #9f9f8e;
  /* alpha color(primary) */
  --color-primary-alpha-0: rgba(0, 170, 0, 0);
  --color-primary-alpha-50: rgba(0, 170, 0, 0.05);
  --color-primary-alpha-100: rgba(0, 170, 0, 0.1);
  --color-primary-alpha-150: rgba(0, 170, 0, 0.15);
  --color-primary-alpha-200: rgba(0, 170, 0, 0.2);
  --color-primary-alpha-250: rgba(0, 170, 0, 0.25);
  --color-primary-alpha-300: rgba(0, 170, 0, 0.3);
  --color-primary-alpha-350: rgba(0, 170, 0, 0.35);
  --color-primary-alpha-400: rgba(0, 170, 0, 0.4);
  --color-primary-alpha-450: rgba(0, 170, 0, 0.45);
  --color-primary-alpha-500: rgba(0, 170, 0, 0.5);
  --color-primary-alpha-550: rgba(0, 170, 0, 0.55);
  --color-primary-alpha-600: rgba(0, 170, 0, 0.6);
  --color-primary-alpha-650: rgba(0, 170, 0, 0.65);
  --color-primary-alpha-700: rgba(0, 170, 0, 0.7);
  --color-primary-alpha-750: rgba(0, 170, 0, 0.75);
  --color-primary-alpha-800: rgba(0, 170, 0, 0.8);
  --color-primary-alpha-850: rgba(0, 170, 0, 0.85);
  --color-primary-alpha-900: rgba(0, 170, 0, 0.9);
  --color-primary-alpha-950: rgba(0, 170, 0, 0.95);
  --color-primary-alpha-1000: rgba(0, 170, 0, 1);
  /* alpha color(black) */
  --color-black-alpha-0: rgba(0, 0, 0, 0);
  --color-black-alpha-50: rgba(0, 0, 0, 0.05);
  --color-black-alpha-100: rgba(0, 0, 0, 0.1);
  --color-black-alpha-150: rgba(0, 0, 0, 0.15);
  --color-black-alpha-200: rgba(0, 0, 0, 0.2);
  --color-black-alpha-250: rgba(0, 0, 0, 0.25);
  --color-black-alpha-300: rgba(0, 0, 0, 0.3);
  --color-black-alpha-350: rgba(0, 0, 0, 0.35);
  --color-black-alpha-400: rgba(0, 0, 0, 0.4);
  --color-black-alpha-450: rgba(0, 0, 0, 0.45);
  --color-black-alpha-500: rgba(0, 0, 0, 0.5);
  --color-black-alpha-550: rgba(0, 0, 0, 0.55);
  --color-black-alpha-600: rgba(0, 0, 0, 0.6);
  --color-black-alpha-650: rgba(0, 0, 0, 0.65);
  --color-black-alpha-700: rgba(0, 0, 0, 0.7);
  --color-black-alpha-750: rgba(0, 0, 0, 0.75);
  --color-black-alpha-800: rgba(0, 0, 0, 0.8);
  --color-black-alpha-850: rgba(0, 0, 0, 0.85);
  --color-black-alpha-900: rgba(0, 0, 0, 0.9);
  --color-black-alpha-950: rgba(0, 0, 0, 0.95);
  --color-black-alpha-1000: rgba(0, 0, 0, 1);
  /* alpha color(gray) */
  --color-gray-alpha-0: rgba(85, 85, 85, 0);
  --color-gray-alpha-50: rgba(85, 85, 85, 0.05);
  --color-gray-alpha-100: rgba(85, 85, 85, 0.1);
  --color-gray-alpha-150: rgba(85, 85, 85, 0.15);
  --color-gray-alpha-200: rgba(85, 85, 85, 0.2);
  --color-gray-alpha-250: rgba(85, 85, 85, 0.25);
  --color-gray-alpha-300: rgba(85, 85, 85, 0.3);
  --color-gray-alpha-350: rgba(85, 85, 85, 0.35);
  --color-gray-alpha-400: rgba(85, 85, 85, 0.4);
  --color-gray-alpha-450: rgba(85, 85, 85, 0.45);
  --color-gray-alpha-500: rgba(85, 85, 85, 0.5);
  --color-gray-alpha-550: rgba(85, 85, 85, 0.55);
  --color-gray-alpha-600: rgba(85, 85, 85, 0.6);
  --color-gray-alpha-650: rgba(85, 85, 85, 0.65);
  --color-gray-alpha-700: rgba(85, 85, 85, 0.7);
  --color-gray-alpha-750: rgba(85, 85, 85, 0.75);
  --color-gray-alpha-800: rgba(85, 85, 85, 0.8);
  --color-gray-alpha-850: rgba(85, 85, 85, 0.85);
  --color-gray-alpha-900: rgba(85, 85, 85, 0.9);
  --color-gray-alpha-950: rgba(85, 85, 85, 0.95);
  --color-gray-alpha-1000: rgba(85, 85, 85, 1);
}

/* ==========================================================================
   Custom-property easing
   ========================================================================== */
:root {
  /* easing timing function (https://www.npmjs.com/package/easings-css) */
  --ease-in-sine: cubic-bezier(0.47, 0, 0.745, 0.715);
  --ease-out-sine: cubic-bezier(0.39, 0.575, 0.565, 1);
  --ease-in-out-sine: cubic-bezier(0.445, 0.05, 0.55, 0.95);
  --ease-in-quad: cubic-bezier(0.55, 0.085, 0.68, 0.53);
  --ease-out-quad: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --ease-in-out-quad: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  --ease-in-cubic: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  --ease-out-cubic: cubic-bezier(0.215, 0.61, 0.355, 1);
  --ease-in-out-cubic: cubic-bezier(0.645, 0.045, 0.355, 1);
  --ease-in-quart: cubic-bezier(0.895, 0.03, 0.685, 0.22);
  --ease-out-quart: cubic-bezier(0.165, 0.84, 0.44, 1);
  --ease-in-out-quart: cubic-bezier(0.77, 0, 0.175, 1);
  --ease-in-quint: cubic-bezier(0.755, 0.05, 0.855, 0.06);
  --ease-out-quint: cubic-bezier(0.23, 1, 0.32, 1);
  --ease-in-out-quint: cubic-bezier(0.86, 0, 0.07, 1);
  --ease-in-expo: cubic-bezier(0.95, 0.05, 0.795, 0.035);
  --ease-out-expo: cubic-bezier(0.19, 1, 0.22, 1);
  --ease-in-out-expo: cubic-bezier(1, 0, 0, 1);
  --ease-in-circ: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  --ease-out-circ: cubic-bezier(0.075, 0.82, 0.165, 1);
  --ease-in-out-circ: cubic-bezier(0.785, 0.135, 0.15, 0.86);
  --ease-in-back: cubic-bezier(0.6, -0.28, 0.735, 0.045);
  --ease-out-back: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  --ease-out-back-original: cubic-bezier(0.18, 0.89, 0.47, 1.43);
  --ease-out-back-original-2: cubic-bezier(0.14, 1.03, 0.49, 2.57);
  --ease-in-out-back: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  --ease-out-circular: cubic-bezier(0.08, 0.82, 0.17, 1);
}

/* ==========================================================================
   Custom-property font
   ========================================================================== */
:root {
  /* font-family */
  --font-l: FP-HiraginoUDSansFStdN-W3;
  --font-r: FP-HiraginoUDSansFStdN-W3;
  --font-m: FP-HiraginoUDSansFStdN-W4;
  --font-db: FP-HiraginoUDSansFStdN-W5;
  --font-b: FP-HiraginoUDSansFStdN-W6;
  --font-uc-r: UDKakugoC80Pro-R;
  --font-uc-m: UDKakugoC80Pro-M;
  --font-uc-db: UDKakugoC80Pro-DB;
  --font-uc-b: UDKakugoC80Pro-B;
  --font-t-r: TsukuARdGothicStd-R;
  --font-t-m: TsukuARdGothicStd-M;
  --font-t-d: TsukuARdGothicStd-D;
  --font-t-b: TsukuARdGothicStd-B;
  --font-en: 'Roboto', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Meiryo', 'メイリオ', 'Yu Gothic', '游ゴシック', 'YuGothic', '游ゴシック体', sans-serif;
  --font-system: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Meiryo', 'メイリオ', 'Yu Gothic', '游ゴシック', 'YuGothic', '游ゴシック体', sans-serif;
}

:root {
  /* letter-spacing */
  --ls-normal: 0;
  --ls-narrower: 0.02em;
  --ls-narrow: 0.03em;
  --ls-wide: 0.06em;
  --ls-wider: 0.1em;
  --ls-widest: 0.15em;
}

:root {
  /* line-height */
  --lh-none: 1;
  --lh-tight: 1.2727272727;
  --lh-snug: 1.2941176471;
  --lh-snug-100: 1.4285714286;
  --lh-normal: 1.67;
  --lh-relaxed: 1.75;
  --lh-extra-relaxed: 1.875;
  --lh-loose: 2;
  --lh-extra-loose: 2.375;
}

/* ==========================================================================
   Custom-property z-index
   ========================================================================== */
:root {
  /* z-index */
  --z-0: 0;
  --z-10: 10;
  --z-20: 20;
  --z-30: 30;
  --z-40: 40;
  --z-50: 50;
  --z-60: 60;
  --z-70: 70;
  --z-80: 80;
  --z-90: 90;
}

/* stylelint-enable no-duplicate-selectors */
/* ==========================================================================
   Font-face base
   ========================================================================== */
@font-face {
  font-weight: normal;
  font-family: icomoon;
  font-style: normal;
  src: url("/assets/fonts/icon_blank/icomoon.eot?kcz3xd");
  src: url("/assets/fonts/icon_blank/icomoon.eot?kcz3xd#iefix") format("embedded-opentype"), url("/assets/fonts/icon_blank/icomoon.ttf?kcz3xd") format("truetype"), url("/assets/fonts/icon_blank/icomoon.woff?kcz3xd") format("woff"), url("/assets/fonts/icon_blank/icomoon.svg?kcz3xd#icomoon") format("svg");
  font-display: block;
}
/* ==========================================================================
   Foundation base
   ========================================================================== */
/* selection */
::-moz-selection {
  color: #000;
  background-color: rgba(0, 0, 0, 0.1);
}
::selection {
  color: #000;
  background-color: rgba(0, 0, 0, 0.1);
}

/* html */
html {
  height: 100%;
  background-color: #fff;
}

/* body */
body {
  height: 100%;
  padding: 0;
  margin: 0;
  font-family: var(--font-r);
  font-size: 0.84375rem;
  font-kerning: normal;
  line-height: 1.7777777778;
  color: #555;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-break: loose;
  text-rendering: geometricprecision;
}
@media (min-width: 48em) {
  body {
    font-size: 0.875rem;
  }
}
@media (min-width: 80em) {
  body {
    font-size: 0.9375rem;
    line-height: 1.8666666667;
  }
}
body.-body-scroll-lock {
  padding-right: var(--scrollbar-width);
  overflow: hidden;
}

/* main */
main {
  flex-grow: 1;
  width: 100%;
  height: auto;
}

/* ul */
ul {
  margin-top: 1.25rem;
  margin-left: 1em;
  list-style-type: none;
}
ul li + li {
  margin-top: var(--list-margin);
}

@media (min-width: 48em) {
  ul.--two {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-row-gap: 0.1875rem;
    row-gap: 0.1875rem;
    grid-column-gap: 1.875rem;
    -moz-column-gap: 1.875rem;
         column-gap: 1.875rem;
    align-items: flex-start;
  }
}

@media (min-width: 48em) {
  ul.--three {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-row-gap: 0.1875rem;
    row-gap: 0.1875rem;
    grid-column-gap: 1.875rem;
    -moz-column-gap: 1.875rem;
         column-gap: 1.875rem;
    align-items: flex-start;
  }
}
@media (min-width: 90em) {
  ul.--three {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (min-width: 48em) {
  ul.--three li {
    margin-right: 1.25rem;
  }
}

ul.no-disc {
  margin-left: 0;
  list-style: none;
}
ul.no-disc li::before {
  display: none;
}

ul.--emphasis {
  margin-top: 1.875rem;
}
ul.--emphasis > li {
  font-family: var(--font-db);
  font-weight: 600;
}
ul.--emphasis > li::before {
  color: currentcolor;
  content: "●";
}
ul.--emphasis > li p {
  margin-top: 0.9375rem;
}
ul.--emphasis > li > * {
  font-family: var(--font-r);
  font-weight: 400;
}
ul.--emphasis > li dl {
  margin-top: 0.9375rem;
}
ul.--emphasis > li + li {
  margin-top: 1.875rem;
}

/* li */
main li {
  position: relative;
}
main li::before {
  display: inline-block;
  width: 1em;
  margin-left: -1em;
  content: "・";
}

/* ol */
ol {
  margin-top: 1.25rem;
  margin-left: 1.3em;
  list-style-type: decimal;
}
ol:not(.footnote) > li::before {
  display: none;
}
ol li + li {
  margin-top: var(--list-margin);
}

ol.no-disc {
  margin-left: 0;
  list-style: none;
}
ol.no-disc li::before {
  display: none;
}

/* a */
a {
  display: inline;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  cursor: pointer;
  transition: color 200ms var(--ease-out-cubic);
}
main a[href$=".png"]::after, main a[href$=".gif"]::after, main a[href$=".jpg"]::after, main a[href$=".jpeg"]::after {
  display: none;
}
main a[href$=".pdf"]::after {
  content: none !important;
}
main a[target=_blank]::after {
  display: inline-block;
  margin: 0;
  font-family: icomoon;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-indent: 3px;
  text-transform: none;
  content: " \e901";
}
main a.no-icon[target=_blank]::after {
  display: none;
}
main a.c-btn[target=_blank]::after {
  line-height: 1.25rem;
}
@media (min-width: 48em) {
  main a.c-btn[target=_blank]::after {
    line-height: 1.375rem;
  }
}
@media (min-width: 80em) {
  main a.c-btn[target=_blank]::after {
    line-height: 1.5rem;
  }
}
a:hover {
  color: var(--theme-color);
}
a:focus {
  outline: 0.125rem dashed var(--color-link);
  outline-offset: 0.1875rem;
}
.js-focus-visible a:focus:not(.focus-visible) {
  outline: none;
}

/* button */
button {
  display: block;
}
button:focus {
  outline: 0.125rem dashed var(--color-link);
  outline-offset: 0.1875rem;
}
.js-focus-visible button:focus:not(.focus-visible) {
  outline: none;
}
button:focus {
  outline: 1px dotted currentcolor;
}
button:focus-visible {
  background: transparent;
  outline: 2px dashed currentcolor;
}

/* h1, h2, h3, h4 */
h1.--icon,
h2.--icon,
h3.--icon,
h4.--icon {
  display: flex;
  -moz-column-gap: 0.4em;
       column-gap: 0.4em;
  align-items: center;
  padding-left: 0;
  margin-left: -0.1em;
}
h1.--icon::before,
h2.--icon::before,
h3.--icon::before,
h4.--icon::before {
  display: none;
}
h1.--icon i,
h2.--icon i,
h3.--icon i,
h4.--icon i {
  margin-bottom: auto;
}
h1.--no-before,
h2.--no-before,
h3.--no-before,
h4.--no-before {
  padding-left: 0;
}
h1.--no-before::before,
h2.--no-before::before,
h3.--no-before::before,
h4.--no-before::before {
  display: none;
}

/* h1 */
h1 {
  font-family: var(--font-uc-r);
  font-size: 1.5625rem;
  font-feature-settings: "palt";
  line-height: var(--lh-tight);
}
@media (min-width: 48em) {
  h1 {
    font-size: 2rem;
  }
}
@media (min-width: 80em) {
  h1 {
    font-size: 2.25rem;
  }
}
@media (min-width: 90em) {
  h1 {
    font-size: 2.5rem;
  }
}

/* h2 */
h2 {
  position: relative;
  padding-left: 1.25rem;
  margin-top: 2.5rem;
  font-family: var(--font-uc-r);
  font-size: 1.25rem;
  font-feature-settings: "palt";
  line-height: var(--lh-normal);
  color: var(--theme-color);
}
@media (min-width: 48em) {
  h2 {
    padding-left: 1.5625rem;
    margin-top: 3.75rem;
    font-size: 1.5rem;
  }
}
@media (min-width: 80em) {
  h2 {
    padding-left: 1.625rem;
    margin-top: 5rem;
    font-size: 1.75rem;
  }
}
h2::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.3125rem;
  height: 80%;
  content: "";
  background-color: var(--theme-color, currentColor);
  border-radius: 100vh;
  transform: translateY(-50%);
}
h2.--xs {
  margin-top: 1.25rem;
  font-size: 1.0625rem;
}
@media (min-width: 48em) {
  h2.--xs {
    margin-top: 2rem;
    font-size: 1.25rem;
  }
}
@media (min-width: 80em) {
  h2.--xs {
    margin-top: 3rem;
    font-size: 1.375rem;
  }
}
h2.--sm {
  margin-top: 2rem;
  font-size: 1.125rem;
}
@media (min-width: 48em) {
  h2.--sm {
    margin-top: 3rem;
    font-size: 1.375rem;
  }
}
@media (min-width: 80em) {
  h2.--sm {
    margin-top: 4.5rem;
    font-size: 1.5rem;
  }
}

/* h3 */
h3 {
  position: relative;
  padding-left: 2em;
  margin-top: 1.875rem;
  margin-left: 0.25rem;
  font-family: var(--font-uc-r);
  font-size: 1rem;
  font-feature-settings: "palt";
}
@media (min-width: 48em) {
  h3 {
    margin-top: 2.1875rem;
    font-size: 1.125rem;
  }
}
@media (min-width: 80em) {
  h3 {
    margin-top: 2.5rem;
    font-size: 1.25rem;
  }
}
h3::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1.75em;
  content: "";
  background-color: var(--theme-color, currentColor);
  border-radius: 0.5em/0.875em;
  transform: rotate(45deg);
}
h3.--xs {
  font-size: 0.875rem;
}
@media (min-width: 48em) {
  h3.--xs {
    font-size: 0.9375rem;
  }
}
@media (min-width: 80em) {
  h3.--xs {
    font-size: 1rem;
  }
}
h3.--sm {
  font-size: 0.9375rem;
}
@media (min-width: 48em) {
  h3.--sm {
    font-size: 1rem;
  }
}
@media (min-width: 80em) {
  h3.--sm {
    font-size: 1.0625rem;
  }
}

h4 {
  margin-top: 2.5rem;
  font-family: var(--font-uc-r);
  font-size: 0.9375rem;
  font-feature-settings: "palt";
}
@media (min-width: 48em) {
  h4 {
    margin-top: 2.8125rem;
    font-size: 1rem;
  }
}
@media (min-width: 80em) {
  h4 {
    margin-top: 3.125rem;
    font-size: 1.0625rem;
  }
}
h4.--xs {
  font-size: 0.84375rem;
}
@media (min-width: 48em) {
  h4.--xs {
    font-size: 0.875rem;
  }
}
@media (min-width: 80em) {
  h4.--xs {
    font-size: 0.9375rem;
  }
}
h4.--sm {
  font-size: 0.875rem;
}
@media (min-width: 48em) {
  h4.--sm {
    font-size: 0.9375rem;
  }
}
@media (min-width: 80em) {
  h4.--sm {
    font-size: 1rem;
  }
}

/* p */
p {
  margin-top: 1.25rem;
  letter-spacing: 0.02em;
}
h2 + p {
  margin-top: 2.5rem;
}
h1 + p {
  margin-top: 2.5rem;
}
@media (min-width: 48em) {
  h1 + p {
    margin-top: 3.75rem;
  }
}
@media (min-width: 80em) {
  h1 + p {
    margin-top: 5rem;
  }
}
.l-inner > p:first-child {
  margin-top: 0;
}

abbr[title],
dfn[title] {
  text-decoration: none;
  border: 0;
}

menu {
  padding: 0;
  margin: 0;
}

b,
strong {
  font-family: var(--font-db);
}

img,
iframe:not([title=reCAPTCHA]) {
  display: block;
  width: 100%;
  height: auto;
}

hr {
  height: 0;
  margin: 3.75rem 0;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
@media (min-width: 48em) {
  hr {
    margin: 4.375rem 0;
  }
}
@media (min-width: 80em) {
  hr {
    margin: 5rem 0;
  }
}
hr.--xs {
  margin: 1.25rem 0;
}
@media (min-width: 48em) {
  hr.--xs {
    margin: 1.875rem 0;
  }
}
@media (min-width: 80em) {
  hr.--xs {
    margin: 2.5rem 0;
  }
}
hr.--sm {
  margin: 2.5rem 0;
}
@media (min-width: 48em) {
  hr.--sm {
    margin: 3.125rem 0;
  }
}
@media (min-width: 80em) {
  hr.--sm {
    margin: 3.75rem 0;
  }
}
hr.--lg {
  margin: 4.375rem 0;
}
@media (min-width: 48em) {
  hr.--lg {
    margin: 5rem 0;
  }
}
@media (min-width: 80em) {
  hr.--lg {
    margin: 5.625rem 0;
  }
}
hr.--none {
  margin-block: 0;
}
hr.--unvisible {
  border-color: rgba(0, 0, 0, 0);
}

/* description */
dl {
  margin-top: var(--dl-mt, 1.75rem);
  border-top: 0.0625rem solid var(--color-black-alpha-100);
  border-bottom: 0.0625rem solid var(--color-black-alpha-100);
  /* divでグループ化あり */
  /* divでグループ化なし */
  /* faq */
}
@media (min-width: 48em) {
  dl {
    margin-top: var(--dl-mt, 2rem);
  }
}
@media (min-width: 80em) {
  dl {
    margin-top: var(--dl-mt, 2.25rem);
  }
}
dl.no-last-border {
  border-bottom: 0;
}
dl > div {
  display: grid;
  grid-template-columns: var(--dl-gtc, 3fr 9fr);
  grid-row-gap: var(--dl-rgap);
  row-gap: var(--dl-rgap);
  grid-column-gap: var(--dl-cgap, 1rem);
  -moz-column-gap: var(--dl-cgap, 1rem);
       column-gap: var(--dl-cgap, 1rem);
  padding-top: var(--dl-pt, 0.75rem);
  padding-bottom: var(--dl-pb, 0.75rem);
}
@media (min-width: 48em) {
  dl > div {
    grid-template-columns: var(--dl-gtc, 3fr 9fr);
    -moz-column-gap: var(--dl-cgap, 1.875rem);
         column-gap: var(--dl-cgap, 1.875rem);
    padding-top: var(--dl-pt, 1rem);
    padding-bottom: var(--dl-pb, 1rem);
  }
}
@media (min-width: 80em) {
  dl > div {
    grid-template-columns: var(--dl-gtc, 2fr 10fr);
    padding-top: var(--dl-pt, 1.25rem);
    padding-bottom: var(--dl-pb, 1.25rem);
  }
}
dl > div + div {
  border-top: 0.0625rem solid var(--color-black-alpha-100);
}
dl > div > dt,
dl > div > dd {
  font-size: 0.8125rem;
  line-height: var(--lh-extra-relaxed);
}
@media (min-width: 48em) {
  dl > div > dt,
dl > div > dd {
    font-size: 0.875rem;
  }
}
@media (min-width: 80em) {
  dl > div > dt,
dl > div > dd {
    font-size: 0.9375rem;
  }
}
dl > div > dt {
  font-family: var(--dt-font, var(--font-db));
  font-weight: var(--dt-weight, 700);
  font-feature-settings: "palt";
}
dl > div > dd {
  font-feature-settings: "palt";
  letter-spacing: var(--ls-narrow);
}
dl > div > dd > span {
  display: block;
}
dl ul,
dl ol {
  margin-top: var(--list-margin-top, 0);
}
dl ul li + li,
dl ol li + li {
  margin-top: var(--list-margin, 0);
}
dl > dt {
  font-family: var(--font-db);
  font-weight: 700;
}
dl > dt:nth-of-type(n + 2) {
  margin-top: 1.25rem;
}
dl > dd {
  font-feature-settings: "palt";
  letter-spacing: var(--ls-narrow);
}
dl.faq {
  margin-top: 1.875rem;
  border-top: 0;
  border-bottom: 0;
}
dl.faq dt {
  position: relative;
  gap: 0.66666em;
  padding-left: 2.66666em;
}
dl.faq dt:nth-of-type(n + 2) {
  margin-top: 1.875rem;
}
dl.faq dt::before {
  position: absolute;
  top: 1.2em;
  left: 0;
  width: 2em;
  height: 0.0625rem;
  content: "";
  background-color: currentcolor;
}
dl.faq dd {
  margin-top: 0.625rem;
  margin-left: 2.66666em;
}

/* table */
table {
  width: 100%;
  margin-top: 1.25rem;
  border-collapse: collapse;
  background-color: var(--color-white);
  border-top: 0.0625rem solid var(--color-black-alpha-100);
  border-bottom: 0.0625rem solid var(--color-black-alpha-100);
}
table [data-icon=icon_circle] {
  color: var(--color-table-circle);
}
table [data-icon=icon_triangle] {
  color: var(--color-table-triangle);
}
table sup {
  color: #555;
}

tbody th {
  font-family: var(--font-db);
  font-size: 0.6875rem;
  border-left: 0;
}
@media (min-width: 33.75em) {
  tbody th {
    width: 12.5rem;
    font-size: 0.75rem;
  }
}
@media (min-width: 48em) {
  tbody th {
    font-size: 0.8125rem;
  }
}

tbody td {
  min-width: 1.5625rem;
  margin-inline: auto;
  text-align: center;
  border-right: 0;
}
@media (min-width: 48em) {
  tbody td {
    min-width: 2.5rem;
  }
}
tbody td i {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

tbody :is(th, td) {
  display: table-cell;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  letter-spacing: var(--ls-normal);
  vertical-align: middle;
  border-top: 0.0625rem solid var(--color-black-alpha-100);
}

thead th {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  font-family: var(--font-db);
  font-size: 0.6875rem;
  text-align: center;
}
@media (min-width: 33.75em) {
  thead th {
    font-size: 0.75rem;
  }
}
@media (min-width: 48em) {
  thead th {
    font-size: 0.875rem;
  }
}
thead th:first-of-type {
  font-family: var(--font-r);
  font-weight: 400;
  text-align: left;
}

/* i */
i {
  position: relative;
  display: var(--icon-display, inline-block);
  width: 1.6em;
  height: 1.6em;
  color: inherit;
  vertical-align: baseline;
  fill: currentcolor;
  stroke: currentcolor;
  stroke-width: 1.5;
}
i.--sm {
  width: 1.33333em;
  height: 1.33333em;
}
i.--lg {
  width: 1.86666em;
  height: 1.86666em;
}
i.--xl {
  width: 2.13333em;
  height: 2.13333em;
}
i svg {
  width: inherit;
  height: inherit;
  vertical-align: inherit;
  fill: inherit;
  stroke: inherit;
  stroke-width: inherit;
}
i .svg-line {
  fill: none;
  stroke: currentcolor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  stroke-width: inherit;
}
i .svg-line-round {
  fill: none;
  stroke: inherit;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  stroke-width: inherit;
}
i .svg-line-dash-round {
  fill: none;
  stroke: inherit;
  stroke-dasharray: 1.25, 1.25;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  stroke-width: inherit;
}
i .svg-line-fill {
  fill: currentcolor;
  stroke: currentcolor;
  stroke-linecap: round;
  stroke-miterlimit: 10;
  stroke-width: inherit;
}
i .svg-line-edge {
  fill: none;
  stroke: currentcolor;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  stroke-width: inherit;
}
i .svg-fill-only {
  fill: currentcolor;
  stroke: none;
}
i .svg-fill-none {
  fill: none !important;
}
table.--icon-bold i {
  stroke-width: 2;
}
@media (min-width: 48em) {
  table.--icon-bold i {
    stroke-width: 2.25;
  }
}
@media (min-width: 80em) {
  table.--icon-bold i {
    stroke-width: 2.5;
  }
}

sup {
  position: absolute;
  top: 0.7em;
  right: -0.7em;
  font-size: 60%;
  font-style: normal;
}
@media (min-width: 33.75em) {
  sup {
    font-size: 75%;
  }
}
@media (min-width: 48em) {
  sup {
    right: -0.85em;
  }
}
@media (min-width: 80em) {
  sup {
    right: -1em;
  }
}

.svg-mask {
  position: absolute;
  width: 0;
  height: 0;
}

/* ==========================================================================
   Keyframes base
   ========================================================================== */
/* stylelint-disable plugin/stylelint-bem-namics */
/* kv */
@keyframes show-image {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes hide-image {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes show-translate-image {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(-30px, 0, 0);
  }
}
@keyframes hide-translate-image {
  0% {
    transform: translate3d(-30px, 0, 0);
  }
  100% {
    transform: translate3d(-60px, 0, 0);
  }
}
/* chevron icon */
@keyframes circle-move-right {
  from {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(5px, 2px);
  }
  to {
    transform: translate(10px, 0);
  }
}
@keyframes circle-move-left {
  0% {
    transform: translate(10px, 0);
  }
  50% {
    transform: translate(5px, 2px);
  }
  100% {
    transform: translate(0, 0);
  }
}
/* swipe animation */
@keyframes swipe-animation {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform: translateX(-16px);
    opacity: 0;
  }
}
/* news (wordpress) */
@keyframes arrow-move-down {
  0% {
    top: 50%;
  }
  50% {
    top: 55%;
  }
  100% {
    top: 50%;
  }
}
/* stylelint-enable plugin/stylelint-bem-namics */